File: amide.xml

package info (click to toggle)
amide 1.0.6-8
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 8,928 kB
  • sloc: ansic: 51,916; cpp: 2,332; xml: 1,995; makefile: 674; sh: 129
file content (2121 lines) | stat: -rw-r--r-- 78,102 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY app "AMIDE">
<!ENTITY date "Feb 2013">
<!ENTITY appversion "1.0.5">
<!ENTITY manrevision "0.3.1">
<!ENTITY legal          SYSTEM "legal.xml">
]>

<article id="index" lang="en">
  <articleinfo>
    <title>The <application>&app;</application> User's Manual V&manrevision;</title>
    
    <abstract role="description">
      <para> AMIDE stands for Amide's a Medical Image Data Examiner.
	This program is a tool for viewing and analyzing volumetric
	medical imaging data sets, and has been designed from the
	ground up with support for multi-modality imaging.
      </para>
    </abstract>

    <copyright><year>2000-2017</year> <holder>Andy Loening</holder></copyright>
    <!--- translators should put additional copyright entries -->

    <authorgroup>
      <author role="maintainer"> <!-- not everybody needs maintainer -->
	<firstname>Andy</firstname> <surname>Loening</surname>
	<affiliation>
	  <!-- <orgname> </orgname> -->
	  <address>
	    <email>loening at alum dot mit dot edu</email>
	  </address>
	</affiliation>
      </author>

      <othercredit role="translator">
        <firstname>Pablo</firstname>
        <surname>Sau</surname>
        <affiliation>
          <orgname>CDMEDICS PACS WEB (http://cdmedicpacsweb.sourceforge.net)</orgname>
          <address> 
            <email>pablosau at users dot sourceforge dot net</email> 
          </address>
        </affiliation>
        <contrib>Spanish translation</contrib>
      </othercredit>
    </authorgroup>

    <releaseinfo>
      This is release &manrevision; of the &app; User's Manual.
    </releaseinfo>

    <revhistory>
      <revision>
	<revnumber>AMIDE Manual V0.3</revnumber>
	<date>2003-06-09</date>
	<revdescription>
	  <para role="author">Andy Loening</para>
	</revdescription>
      </revision>
    </revhistory>
    
    <xi:include href="legal.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

  </articleinfo>

  <indexterm>
    <primary>&app;</primary>
  </indexterm>




<!-- ###################################### -->
<sect1 id="introduction">
  <title>Introduction</title>

<sect2><title>Licensing</title>

  <para>AMIDE is released under the terms of the <ulink type="http"
  url="http://www.gnu.org/copyleft/gpl.html">GNU General Public
  Library (GPL).</ulink></para>

  <para>The text of the license is fairly verbose.  A quick summary
  follows:
  </para>

  <orderedlist>
   <listitem>
    <para>
     You are free to run the program, for any purpose.  Please note
     that, although the GPL makes no restrictions on use of the
     program, your government probably does.  For instance, in the
     United States, AMIDE is not FDA approved and cannot be used
     clinically.
    </para>
   </listitem>
   <listitem>
    <para>
     You are free to study the source code of the program, and adapt
     it to your needs.
    </para>
   </listitem>
   <listitem>
    <para>
     You are free to redistribute the program.
    </para>
   </listitem>
   <listitem>
    <para>
     You are free to release modified versions of the program, as long
     as you also redistribute the source code to the modified program,
     and you label your modified version of the program appropriately.
    </para>
   </listitem>
  </orderedlist> 




</sect2>

<sect2><title>Availability of Source Code</title>

  <para> The source code for AMIDE is readily available from the
  <ulink type="http" url="http://amide.sourceforge.net">AMIDE web
  site</ulink>.
  </para>

</sect2>


<sect2><title>Supported Platforms</title>

  <para> In addition to source code, binary versions of AMIDE along
  with installation instructions can be found for several systems on
  the <ulink type="http" url="http://amide.sourceforge.net">AMIDE web
  site</ulink>.  The currently supported systems are Linux/i386,
  Microsoft Windows, and Macintosh OS X (achieved through the use of
  the <ulink type="http"
  url="http://fink.sourceforge.net">fink</ulink> add-on packages).
  </para>

</sect2>

  
<sect2><title>Contact Information</title>

    <para> Questions and bug reports can be addressed to the AMIDE
    users list <email> amide-users@lists.sourceforge.net</email>.
    Information on joining the list and/or viewing archived messages
    can be found <ulink type="http"
    url="http://sourceforge.net/mail/?group_id=9464">here</ulink>.
    </para> 

</sect2>
</sect1>

<!-- ###################################### -->
<sect1 id="basics">
  <title>AMIDE Basics</title>

  <para> As the use of AMIDE is bound to be completely intuitive only
    to the one who wrote the program (i.e. me), this section provides
    a brief overview of operating within the program.  It assumes you
    already have a data set loaded in.  For instructions on getting a
    data set into AMIDE, see <xref linkend="importing_data_sets" />
  </para>
  




  <sect2><title>A Quick Theory of Operations</title>

   <sect3><title>AMIDE Objects</title>

    <para>AMIDE can work with and display a large number of objects
    simultaneous (limited only be available memory).  The object types
    current implemented in AMIDE are as follows:

    <variablelist>
 
      <varlistentry><term>Data Set</term>
      <listitem>
       <para>A data set object
       contains the raw information from a medical imaging study,
       along with the corresponding parameters needed for interpreting
       that information (thresholds, colormaps, etc.).
       </para>
      </listitem>
      </varlistentry>

      <varlistentry><term>ROI</term>
      <listitem>
       <para>A region of interest
       object defines a volume of space over which statistics can be
       calculated.  All ROI's in AMIDE are volumetric.  Currently,
       AMIDE implements ellipsoid, cylinderical, rectangular, and
       isocontour based ROI geometries.
       </para>
      </listitem>
      </varlistentry>

      <varlistentry><term>Fiducial Mark</term>
      <listitem>
       <para>A very simple
       object, fiducial marks encode only the location of a reference
       point in space, and are used for rigid body alignment.
       </para>
      </listitem>
      </varlistentry>

      <varlistentry><term>Study</term>
      <listitem>
       <para>Each AMIDE session has
       a single study object, which is used for grouping together a
       number of related data sets, ROI's, and fiducial marks.
       </para>
      </listitem>
      </varlistentry>

     </variablelist>


    </para>
   </sect3>

   <sect3><title>Object Tree</title> 


   <figure id="studytree-fig">
    <title>Study Tree</title>
    <screenshot>
     <mediaobject>
      <imageobject>
       <imagedata fileref="figures/study_tree.png" format="PNG"/>
      </imageobject>
      <textobject>
       <phrase>An example of a study's tree structure within AMIDE.
       The two data sets (FDG PET and microCT) and 1 ROI (bladder) are
       children of the study object (m2862).  The remaining ROI's are
       children of the data sets.</phrase>
      </textobject>
     </mediaobject>
    </screenshot>
   </figure>



    <para> In order to facilitate working with a large number of
     objects simultaneously, AMIDE conceptually groups all objects
     into a tree hierarchy, with the study object as the root of the
     tree (see <xref linkend="studytree-fig" />).  Data set objects
     will generally be primary branches off of the study object, while
     ROI's can be branches off of the study object or off of
     individual data sets.  Why is this important?  Because the
     structure of the tree determines how movements are mapped within
     the program.  If a data set is moved relative to the rest of the
     study, the ROI's that are branches from that data set object will
     be correspondingly moved, so that they will maintain the correct
     orientation and position with respect to the data set that is
     their parent.</para>
   </sect3>

   <sect3><title>Real World Units</title>

    <para>An important thing to realize when working with AMIDE is
    that the program will try to abstract away the underlying digital
    format of the data as much as possible.  When you listen to
    digital audio, the CD player automatically converts the series of
    0's and 1's encoded on the compact disc into an analog format so
    that you don't have to worry about the underlying digital format.
    Similarly, AMIDE presents the digital data to you in analog form.
    When ever possible, units are given in terms of real world units
    (e.g. mm's, seconds), and most operations are not constrained by
    the discrete nature of the underlying data.  For example, data in
    AMIDE is viewed in terms of "slices", not fixed image planes.
    These slices can be taken from the data set at arbitary angles,
    and can be of any thickness (they are not constrained to be
    integer multiples of the underlying voxel size).  You may be used
    to looking at medical images in terms of voxels and integers, but
    remember that the object or subject scanned is an item in the real
    world, and AMIDE tries to recreate this "analog signal" for you.
    </para>

    <para> The only place the abstraction starts to break down is when
    dealing with dynamic data sets.  Einstein understood time to be a
    "special" dimension, and AMIDE agrees.  The reason for this, is
    that trying to represent dynamic data as anything but separate
    frames of data becomes overly complex from a computational
    standpoint, primarily because dynamic data is generally not
    equally spaced.  While moving 1 voxel in the x, y, or z directions
    will always move you a constant unit of measurement (say 0.4 mm)
    in the appropriate direction, moving 1 voxel in the t direction
    may move you 30 seconds or 30 minutes in time, depending on what
    frame you're looking at.  Because of this, AMIDE deals with
    dynamic data in terms of frames, although it should always tell
    you the time that those frames correspond to. </para>

   </sect3>


  </sect2>









  <sect2><title>Components of the Display</title>

   <figure id="mainwindow-fig">
    <title>AMIDE Main Window</title>
    <screenshot>
     <mediaobject>
      <imageobject>
       <imagedata fileref="figures/amide_main_window.png" format="PNG"/>
      </imageobject>
      <textobject>
       <phrase>A diagram pointing out the salient features of the main window</phrase>
      </textobject>
     </mediaobject>
    </screenshot>
   </figure>


   <sect3><title>Context Sensitive Help</title>

      <para> Located in the lower left corner of the window, the
      context sensitive help window shows what different mouse buttons
      and key strokes can accomplish given the current cursor
      position. Note that mouse buttons are labelled in UNIX fashion.
      Buttons 1, 2, and 3 correspond to the left, middle, and right
      mouse buttons, respectively.  Under Macintosh OS X, the middle
      and right buttons are emulated by pressing the option key or the
      open apple key, respectively, while pressing the mouse
      button.</para>

   </sect3>



   <sect3><title>Tree View of Study Data</title>

    <para> Located on the left side of the window is a tree listing of
    all the objects in the study.  The tree structure shows how
    movements will be propogated to other objects in the study.  For
    instance, if a data set is rotated, all of its children will be
    correspondingly rotated. </para>

    <para> Objects in the tree can be selected for display by left
    clicking on the name of the object.  Middle clicking on a data set
    will make that data set the "active" data set.  The "active" data
    set is designated by being highlights, and when a function is
    chosen that can logically apply to only one data set
    (e.g. filtering), the active data set is the one chosen. </para>

    <para> Object modification dialog boxes can be brought up by right
    clicking on the corresponding object.  ROI's can be added by right
    clicking on the blank area of the tree, or shift-right clicking on
    one of the objects.  These functions are further described in
    <xref linkend="data_sets" /> and <xref linkend="rois" />.</para>
   </sect3>
    

   <sect3><title>Orthogonal Views</title>
    
    <para> Most of the main window display consists of the orthogonal
    views used for visually displaying the data sets being studied.
    Data is usually presented as three orthogonal slices taken from
    the data sets, but the user can choose to display fewer of these
    views if desired by using the view selector (described below in
    <xref linkend="view_selector" />).  The three views shown are the
    transverse, coronal, and sagittal planes.  Note that the views may
    be incorrectly labeled for you.  This could be because the data in
    the file you imported was not in the order that AMIDE expected it
    to be in.  It could also be because you want to use the
    transverse/coronal/sagittal terminology differently then the
    program does (e.g. a coronal section of a rat brain is not the
    same as a coronal section of a rat). </para>


    <para> Below the views are sliders for adjusting where in the data
    set the slices are being taken from.  The location can also be
    changed by directly clicking on any of the canvases.  The
    appropriate mouse clicks are as follows</para>


   <variablelist> 

    <varlistentry><term>Left Mouse Button</term>
     <listitem>
      <para>Changes the location in the data set that the slices are
      taken from, without changing the thickness of the slices.</para>
    </listitem>
    </varlistentry>

    <varlistentry><term>Middle Mouse Button</term>
    <listitem>
     <para>Change the
     location in the data set that the slices are taken from, along
     with setting the thickness of the slices to the minimum
     reasonable. </para>
    </listitem>
    </varlistentry>

    <varlistentry><term>Right Mouse Button</term>
    <listitem>
     <para>Clicking an
     dragging with this button changes the thickness of the slices
     without changing the location.  The thickness of the viewed
     slices can also be altered by adjusting the slice thickness
     setting spin button (see <xref linkend="slice_thickness_setting"
     />).</para>
    </listitem>
    </varlistentry>

  
    <varlistentry><term>Other</term>
    <listitem>
     <para>Additional functionality of the mouse buttons for
     manipulating data sets and ROI's is explained in <xref
     linkend="data_sets" /> and <xref linkend="rois" /></para>
    </listitem>
    </varlistentry>

   </variablelist>

   </sect3>

   
   <sect3 id="view_selector"><title>View Selector</title>
    
    <para>Which of the three orthogonal views are shown can be
    selected by using these toggle buttons.  By default, all three
    views are shown. </para>

   </sect3>


   <sect3><title>Linked Viewing</title>
    
    <para>In addition to the three orthogonal views, AMIDE can display
    mutiple sets of these orthogonal views, all looking at the same
    point ("linked") in three dimension space.  This is most often
    used for looking at fusion images of two data sets, with one set
    of views used for the first data set, the next set of views used
    for the second data set, and the third set of views used for the
    fusion of the two data sets.  </para>

   </sect3>


   <sect3 id="threshold_dialog"><title>Thresholding Tool</title>
    
    <para> This button on the toolbar will pop-up a thresholding and
    colormap selection dialog for the currently active data set.  In
    the dialog, the maximum and minimum thresholding levels can be
    changed by either directly typing in the values (in absolute or
    percentage units), or by using sliders on the color bar.  The
    color scale can be changed using the corresponding drop-down menu.
    A log normalized histogram is shown to give an idea of the
    distribution of the data set's value.  Finally, the thresholding
    type can be changed.  The thresholding type determines how the
    maximum and minimum threshold values are applied to the data set,
    and are:
    </para>

	<variablelist> 

		<varlistentry><term>Per Slice</term>
		<listitem><para>The max and min threshold values will
		be applied in proportion to the max and min values in
		the current slice of data</para></listitem>
		</varlistentry>

		<varlistentry><term>Per Frame</term>
		<listitem><para>The max and min threshold values will
		be applied in proportion to the max and min values in
		the current frame of the data set</para></listitem>
		</varlistentry>

		<varlistentry><term>Interpolate Between Frames</term>
		<listitem><para>This threshold mode only makes sense
		for dynamic studies.  In this mode, two sets of max
		and min threshold values are specified, along with
		which frame of data each of these sets corresponds to.
		For data frames before and including the first
		reference frame, the first set of threshold values are
		used.  For data frames after and including the second
		reference frame, the second set of threshold values
		are used.  For data frames between the two reference
		frames, the max and min threshold values are derived
		by interpolating (as a function of time) between the
		two sets of thresholding values.</para></listitem>
		</varlistentry>

		<varlistentry><term>Global</term>
		<listitem><para>The max and min threshold values will
		be applied in proportion to the max and min values in
		the entire data set</para></listitem>
		</varlistentry>

	</variablelist>

    <para> If the data set's modality is set to CT, buttons will be
    shown for applying bone and soft tissue windows as the thresholds.
    </para>

   </sect3>



   <sect3><title>Zoom Selector</title>
    
    <para>This specifies how much to enlarge the views.  AMIDE tries
    to make an educated guess about how large the display of the data
    should be, by using the smallest voxel dimension from the data set
    with the largest voxels to correspond to a displayed pixel.  Zoom
    can be used in addition to that guesswork.</para>

   </sect3>



   <sect3 id="slice_thickness_setting"><title>Slice Thickness Setting</title>
    
    <para> Thickness specifies how deep the slices displayed on the
    views are.  The minimum slice thickness is determined by the
    smallest voxel dimension of any of the data sets in the study.
    </para>

   </sect3>



   <sect3 id="frame-dialog"><title>Frame Selector</title>
    
    <para>This button pops up a dialog for picking which frames of
    data to show from a dynamic data set. A frame (i.e. time period)
    to display can be selected by clicking on a list element.
    Multiple frames can be selected by holding down the shift key and
    selecting additional frames.  Note, that for each data set
    selected for view, at least one frame from that data set will be
    displayed.  If the choosen time period does not encompass a frame
    from that data set, the closest appropriate frame will be
    choosen.</para>

   </sect3>


   <sect3 id="gate-dialog"><title>Gate Selector</title>
    
    <para>This button pops up a dialog for picking which gates of data
    to show from a gated data set. A gate to display can be selected
    by clicking on a list element.  Multiple gates can be selected by
    holding down the shift key and selecting additional frames.  Note
    that by using the entries, a span of gates can be choosen that
    loops around (e.g. gates 8, 0, and 1).</para>

   </sect3>


   <sect3><title>Target Selector</title>
    
    <para>The target cross hairs are generally only displayed when one
     of the mouse buttons is depressed.  With this toggle button, you
     can tell the program that you want the target cross hairs left on
     the views.</para>

   </sect3>


   <sect3 id="interpolation"><title>Interpolation</title>
    
    <para>Interpolation refers to the method whereby AMIDE extracts
     data from the original medical imaging data set in order for it
     to be viewed on the screen.  The interpolation selection button
     lets the user specify what type of interpolation to use when
     generating slices from the active data set.  Nearest neighbor is
     faster, while tri-linear interpolation produces better looking
     (smoother) images with the penalty of being ~8x slower.
    </para>
   </sect3>

   <sect3 id="slab_rendering"><title>Rendering</title>

    <para>Three rendering methods are available, MPR (multiplanar
    reformation), MIP (maximum intensity projection), and MINIP
    (minimum intensity projection). These rendering algorithms are
    utilized to combine data in the depth direction of the slice
    and/or over multiple frames of data. As such, the effects are most
    noticeable when the view thickness of the slices is increased
    and/or several frames of data are being combined. For MPR, each
    displayed pixel corresponds to the weighted average of the
    underlying data. For MIP and MINIP, each displayed pixel
    corresponds to the maximum or minimum value of the underlying data,
    respectively.
    </para>

   </sect3>


   <sect3><title>Fusion/Overlay Selector</title>
    
    <para>By default, AMIDE displays multiple data sets as fused
    images.  With the fused/overlay selector, you can tell AMIDE that
    you want the active data set to simply be overlayed on the other
    data sets, rather than fused.</para>

   </sect3>

  <sect3 id="preferences-dialog"><title>Preferences Dialog Box</title>
    <para>
      Underneath the edit menu is the preferences menu item.  This
      will pop-up a dialog box that allows you to change preferences
      as to how things in AMIDE are displayed.  The preferences will
      be saved in a configuration file for use by future AMIDE
      sessions (note: saved preferences are not currently supported on MS
      Windows).
    </para>

    <variablelist>

    <varlistentry><term>ROI/View Preferences</term> 
     <listitem><para>
      Here are several preferences for changing how ROI's are the view
      canvas are drawn, more thoroughly described in <xref
      linkend="study-dialog" />.  Note that these preferences are only
      used when a new study is created.  To change these preferences
      for an existing study, you need to use the study modification
     </para></listitem>
    </varlistentry>

    <varlistentry><term>Threshold Windows</term> 
     <listitem><para> 
      The window preferences are more throughly described in <xref
      linkend="data-set-dialog" />.  Note that these preferences are
      only used for new data sets. To change the window levels for an
      existing data set, use the data set modification dialog.
     </para></listitem>
    </varlistentry>

    <varlistentry><term>Default Colortable Preferences</term>
      <listitem> <para>
        The program uses the specified color tables by default on a
        newly imported data set.
      </para></listitem>
    </varlistentry>
    
    <varlistentry><term>Misc. Preferences</term>
      <listitem> 

       <para> The "Send Warning Messages to Console" option does
       exactly that.  This is useful if enough warning messages are
       popping up that they're becoming annoying. </para>

       <para> With the "Don't Prompt for 'Save Changes' on Exit"
       option, you can tell the program to not prompt you to save
       changes done on the study when exiting an AMIDE session.
       </para>

       <para> The "Which Default Directory" controls which directory
       the file chooser dialog (used for save/import/open operations)
       will use as it's default location. "None" will cause the file
       chooser to show a list of recent locations as
       default. "Specified Directory" will cause the file chooser to
       utilize the directory specified as the default
       directory. "Working Directory" will utilize the directory from
       which the AMIDE program was executed as the default directory -
       this is most useful if you're often envoking AMIDE from the
       command line.
       </para>

     </listitem>
    </varlistentry>

    </variablelist>

  </sect3>


</sect2>

</sect1>

<!-- ###################################### -->
<sect1 id="file_handling">
  <title>Importing Data and Saving Studies</title>


<sect2 id="importing_data_sets"><title>Importation of Data Sets</title>

 <para> AMIDE uses its own format (described below: <xref
  linkend="xif-files" />) for saving data between session.  To get new
  data into AMIDE, it needs to be imported (located under the file
  menu).  You can either let AMIDE try to guess the file format (which
  works for most data types) or tell AMIDE explicitly which format the
  file to be imported is suppose to be in.  Importing of all data
  types except for raw data is done using Erik Nolf's <ulink
  type="http" url="http://xmedcon.sourceforge.net">(X)medcon</ulink>
  medical imaging conversion library.</para>

  <sect3><title>Raw Data Files</title>

    <para> AMIDE will generally attempt to load any file ending in
    ".dat" or ".raw" as a raw data file.  The user will be prompted
    for the dimensions of the study, the offset of the data in the
    file, and the data format of the data in the file.  Both big
    endian, little endian, and PDP endian files can be loaded (endian
    refers to the order in which bytes are arranged in memory).</para>

    <para> The following data formats are supported: 8 bit signed or
    unsigned integer, 16 bit signed or unsigned integer, 32 bit signed
    or unsigned integer, 32 bit IEEE floating point, 64 bit IEEE
    floating point, and ASCII data. </para>

  </sect3>

  <sect3><title>ECAT Files</title>

   <para> Static and dynamic ECAT 6.4 and 7.2 files are supported
    through (X)MedCon.  AMIDE will generally try to load any file
    ending in ".img" as ECAT 6.4, and any file ending in ".v" as ECAT
    7.  Please note that ECAT 6.4 files are very difficult to
    autodetect, so if the file does not end in .img, you will probably
    have to tell AMIDE explicitly to import the file as ECAT
    6.4.</para>

  <para> Although not compiled in by default, AMIDE can be configured
    to use the z_matrix_7/libecat library for handling ECAT files
    instead of (X)MedCon. </para>

 </sect3>


 <sect3><title>DICOM Files</title>
  
  <para> DICOM 3.0 is supported through (X)MedCon, which actually uses
    a slightly modified version of Tony Voet's VT-DICOM library.  The
    level of support for DICOM 3.0 is entirely determined by
    (X)MedCon/VT-DICOM.
  </para>

  <para> DICOM data is often distributed as a series of single slice
   data files.  To read these into AMIDE as a single data set, you
   will need to stack these slices into a single, volumetric file.
   Notes on how to do this can be found at <ulink type="http"
   url="http://xmedcon.sourceforge.net/faq/stack.html">the (X)medcon
   website</ulink>.</para>
  
 </sect3>


 <sect3><title>Concorde microPET files</title>
  
  <para> Concorde format files are generated by the Concorde company's
  series of microPET scanners.  It's a two file format (a data file
  and a header file), with the header in easily read ASCII format.
  Please note that you will need to tell AMIDE to open the header file
  (.img.hdr), not the raw data file (.img).</para>

 </sect3>

 <sect3><title>Acr/Nema 2.0, Analyze (SPM), InterFile3.3, Gif87a/89a</title>

  <para> A variety of additional file formats are supported through
    (X)MedCon, including: Acr/Nema 2.0, Analyze (SPM), InterFile3.3,
    and Gif87a/89a.  For more information, please see the (X)MedCon
    documentation, or the corresponding <ulink type="http"
    url="http://xmedcon.sourceforge.net"> webpage
    (http://xmedcon.sf.net) </ulink>. </para>
  
  
 </sect3>
  

</sect2>


<sect2 id="xif-files"><title>XIF Files</title>

 <para> AMIDE saves studies in an extensible XML based format called
  XIF (Xml Image Format).  This format can be stored as either a
  single file (flat file format XIF) or as a XIF directory.  The flat
  file format is the default, and simplifies file moving and handling.</para>

  <para> The directory format on the other hand allows easy access to the raw
  study data external to the AMIDE program, and will be of interest to
  developers.  The directory format can be utilized via the "Save as
  XIF Directory" and "Open XIF Directory" menu items under the File
  menu. </para>

 <para> In any case, these files or directories will
  characteristically end with ".xif", and are treated identically
  within the AMIDE program.</para>

 <sect3><title>Opening Studies</title>
  
  <para> From the main window, select "File->Open", and a file
    selection widget will open up.  Select an XIF filename in the
    right column, and then hit the "OK" button (or double click on the
    filename). </para>

 </sect3>

 <sect3><title>Saving Studies</title>

  <para> To save a study, from the study window select "File->Save As"
    and a file selection dialog will appear.  Look at the "selection:"
    line near the bottom of the window, if this is the desired XIF
    filename, hit "OK" and the file will be saved.  If this is not the
    desired XIF filename, select or enter in the correct XIF study,
    and hit the "OK" button. </para>

  <para> Note that the original data set files are no longer needed by
    AMIDE, as all the information AMIDE needs is saved inside the .XIF
    file.  You should however still archive the original data files,
    as AMIDE only reads in and stores the information from the header
    that it needs (which is generally not all the information enclosed
    within the header).
  </para>

 </sect3>


 <sect3><title>XIF Directory Format</title>

  <para> Although admittedly annoying from a data transfer standpoint,
    using a directory structure for saving study information has the
    decisive advantage of making the saved information easily
    accessible using standard command-line utilities and text-based
    tools. </para>

  <para> Each XIF directory contains a file called "study_*.xml" which
    contains the basic study parameters.  Additional files can also be
    found in the XIF directory, such as ROI_*.xml files which contain
    ROI's, and data-set_*.xml files and their corresponding
    data-set_*_raw-data files, which contain the image data set
    parameters and the raw data respectively.  The raw data file
    format is arbitrary (double/float/int, 64/32/16/8 bit, little or
    big endian, per plane/per frame/single scale factor), and is
    determined by the format of the originally imported data. </para>
 </sect3>

 <sect3><title>XIF Flat File Format</title>

  <para> The flat file format is basically a concatenation of the
  information enclosed within the directory format.  It is not meant
  to be editable or developer friendly.  Instead, it allows easy
  management of studies for casual users.  If you wish to access the
  information in a XIF flat file external to AMIDE, you'll be much
  better off resaving the data as in XIF directory format.</para>

  <para> The format is as follows: The first 64 bytes of the file
  contain a magic string for format identification.  The next 16 bytes
  contain 2 64bit unsigned little endian integers, the first one being
  the location of the study xml data within the file, and the second
  integer being the size of this xml data.  Within the study xml data,
  is encased the information as to where in the file the children's
  xml data is.  And within the children's xml data, is enclosed the
  location information of the raw data and subchildren.
  </para>

 </sect3>

</sect2>



<sect2><title>Exporting a View to JPEG/PNG</title>

  <para> To export one of the views (transverse/coronal/sagittal) to
    an external image file, select "File->Export View->[view]" from
    the menu.  The saved data format by default is jpeg. If the saved
    filename ends in ".png", the saved data format will be PNG.

  </para>

</sect2>
</sect1>





<!-- ###################################### -->
<sect1 id="data_sets">
  <title>Manipulating Medical Data Sets </title>

<para> After being loaded in, medical images can be manipulated in a
  variety of ways with AMIDE.  An important point to remember is that
  AMIDE deals with all data sets as 3 or 4 dimensional data sets.
  While 2D slices extracted from the the data set are displayed on the
  computer screen, at no time does AMIDE handle images as anything
  less than 3 dimensional data.</para>




<sect2><title>Manipulating Data Sets on Screen</title>

  <sect3><title>Displaying Data Sets</title>

  <para> When initially loaded into the program, a data set is not
    displayed on the canvases.  Rather, the name of the data set is
    contained in the study list, and the user needs to select the data
    set in the study list so that it is displayed on the
    canvases. </para>
  
  <para> Displaying multiple data sets is as simple as importing more
    than one data set, and then selecting the data sets that you wish
    to view from the study list. </para>

  <para> The time period over which the slices are drawn is determined
    by the time dialog, described in more detail in <xref
    linkend="frame-dialog" /> </para>

  </sect3>

  <sect3><title>Pertinent Mouse Actions</title>

   <para> The following mouse actions can be used when the mouse is
   hovering over a data set on any of the orthogonal views</para>

   <variablelist>

     <varlistentry><term>Shift-Left Mouse Button</term> 
     <listitem><para> This combination allows shifting of the active
       data set in space (usually used for aligning two data sets).
       While holding the shift key, left click (and release) on the
       canvas, and you'll grab the active data set. You can now shift
       the active data around on the canvas.  At this point, to enact
       the shift, click the right button (button 3).  Any other mouse
       button will cancel the shift action.  </para></listitem>
     </varlistentry>

     <varlistentry><term>Shift-Right Mouse Button</term> 
     <listitem><para> This combination allows rotating of the active
	data set in space (usually used for aligning two data sets).
	While holding the shift key, middle click (and release) on the
	canvas, and you'll grab the active data set. You can now
	rotate the active data around on the canvas.  At this point,
	to enact the rotation, click the right button (button 3).  Any
	other mouse button will cancel the rotation.</para></listitem>
     </varlistentry>

     <varlistentry><term>Ctrl-Right Mouse Button</term>
     <listitem><para> This combination will place an alignment point
        at the current cursor location.  A dialog will popup for entry
        of the alignment point's name.</para></listitem>
     </varlistentry>

   </variablelist>


  </sect3>
  

</sect2>

<sect2 id="manual_alignment"><title>Manually Aligning Data Sets</title>

  <para> What follows is a quick guide to manually aligning data sets
  in AMIDE</para>

  <procedure>
    <step>
      <para>
	First rotate each of the data sets so that they are level with
	respect to the transverse, coronal, and sagittal views.  This is
        easily done using the shift-2 mouse combination, but 
        can also be done from the data set modification dialog.
      </para>
    </step>
    <step>
      <para>
	Choose one of the data sets to be the active data set.  The other
        data set will be the "fixed" data set.  
      </para>
    </step>
    <step>
      <para>
	Shift the active data set so that the two data sets line up appropriately.
        This is easily done using the shift-1 mouse combination, but can also be
        done from the data set modification dialog.
      </para>
    </step>
    <step>
      <para>
        If fine tuning adjustments are needed, these are best done from the
        data set modification dialog.
      </para>
    </step>
  </procedure>          
  
</sect2>


<sect2 id="data-set-dialog"><title>Data Set Modification Dialog</title>

    <para> To modify parameters of a data set, right click on the name
      of the data set in the study tree to pop-up the data set
      modification dialog box.  Parameters that can be modified are
      divided into the following pages. </para>

   <variablelist>    

    <varlistentry><term>Basic Info</term>
      <listitem><para>

	On this page are options to alter the data set name, type of
	modality, subject name, subject id, subject date of birth
	(DOB), conversion factor, and the interpolation type to use
	for this data set (described at <xref linkend="interpolation"
	/>).  The conversion factor is a parameter that is multiplied
	to the data set before it is used for viewing or quantitation.
	Since the data set is in ECAT/MAP/abitrary scale units, the
	conversion factor can be used in order to analyze the data set
	in another type of reference unit (e.g. Percent Injected Dose
	[%ID]).  There is also a built in calculator, where parameters
	such as subject weight and injected dose can be entered, and
	the conversion factor will be generated.  Note that 1 cc is
	assumed to equal 1 g when generating the %ID/g and SUV.

      </para></listitem>
    </varlistentry>
    
    <varlistentry><term>Center</term>
      <listitem><para>
	The data set can be shifted by respecifing the center of the
	data set with respect to the origin.  The x, y, and z
	dimensions are in millimeters.
	</para></listitem>
    </varlistentry>

    <varlistentry><term>Voxel Size</term>
      <listitem><para>
        The size of the data set's voxels (again, in millimeters) can
	be altered on this page.  The "keep aspect ratio" button
	specifies that when altering the size of any voxel component
	(x, y, or z), the relative sizes between the components should
	be kept the same.
	</para></listitem>
    </varlistentry>

    <varlistentry><term>Rotate</term>
      <listitem><para>
	The data set can be rotated around its center in this page.
        There is one dial for each of the three slice planes.  The
        transverse dial will spin the data set in the transverse plane
        (i.e. rotate on the z-axis).  The coronal dial will spin the
        data set in the coronal plane (i.e. rotate on the y-axis).
        And the sagittal dial will spin the data set in the sagittal
        plane (i.e. rotate on the x-axis).  The "reset to default"
        button allows the data set to be rotated back to the default
        orientation.  On the bottom of this page is a matrix showing
        the coordinate frame of the data set with respect to the base
        coordinate frame.
	</para></listitem>
    </varlistentry>
    
    <varlistentry><term>Colormap/Threshold</term>
      <listitem><para>
	This page is analogous to the thresholding tool dialog
	(described at <xref linkend="threshold_dialog" />) above).  
      </para></listitem>
    </varlistentry>

   <varlistentry><term>Time</term>
      <listitem><para>
	From this page, the timing information of the data set can be
	altered.  Scan start time can be used for altering the start
	time of the scan with respect to other data sets.  Corrections
	in the duration of each data frame can also be made on this
	page. </para></listitem>
    </varlistentry>

   <varlistentry><term>Windowing Preferences</term>
    <listitem><para>
      The max and min threshold levels used for the bone and soft
      tissue CT window buttons can be explicitly set here.  The
      "Insert Current Thresholds" button will reset the max and min
      values with the data set's currently used threshold levels.  
     </para></listitem>
    </varlistentry>
    
    <varlistentry><term>Immutables</term>
      <listitem><para>
	This panel lists information about the data set that cannot be
	altered.  The underlying internal data format of the data set
	and the data set dimensions in voxels are displayed on this
	page.
	</para></listitem>
    </varlistentry>

    </variablelist>
</sect2>
</sect1>




 
<!-- ###################################### -->
<sect1 id="rois">
  <title>Using Regions of Interest (ROI's)</title>

 <para> ROI stands for Region of Interest.  An ROI designated a volume
  in space over which statistics should be calculated.
 </para>


<sect2><title>ROI Types</title>

  <para>
    The following ROI types are currently supported in AMIDE:
  </para>
  
  <sect3><title>Geometric ROI's</title>

   <variablelist> 

    <varlistentry><term>Ellipsoid</term>
    <listitem><para> An ellipsoid is similar to a sphere, but with a
      diameter specified for each direction [x,y,z].  In the case of
      x=y=z, the ellipsoid is a sphere.</para></listitem>
    </varlistentry>
  
    <varlistentry><term>Elliptic Cylinder</term>
    <listitem><para>An elliptic cylinder is similar to a regular
      cylinder, except it has an ellipse as its base instead of a
      circle.</para></listitem>
    </varlistentry>

    <varlistentry><term>Box</term>
    <listitem><para>Exactly what it says, a 3D box.</para></listitem>
    </varlistentry>

   </variablelist>

  </sect3>
  
  <sect3><title>Isocontour ROI's</title>

    <para> Isocontour ROI's are regions selected from the data set
      such that the edge values of the ROI are always the same value.
      There are two types, 2D and 3D isocontours.  Additionally, both
      these ROI types can be defined so that they encompass all
      neighboring values either above a certain minimum value, below a
      certain maximum value, or between a minimum and maximum value.
      After drawing of these ROI's, they can be modified by using
      manual drawing or erasing operations. </para>
    
   <variablelist> 

    <varlistentry><term>2D Isocontour</term>
    <listitem><para>A 2D isocontour is derived by considering a value
	on one of the displayed 2D slices.  The depth of a 2D
	isocontour is specified initially by the depth of the viewed
	slices.</para></listitem>
    </varlistentry>
  
    <varlistentry><term>3D Isocontour</term>
    <listitem><para>A 3D isocontour is derived by considering a value
	on the current frame of the active data set.</para></listitem>
    </varlistentry>
  
   </variablelist>

 </sect3>
  
  <sect3><title>Freehand ROI's</title>

    <para> Freehand ROI's are regions of interest that are drawn
    manually.  </para>
    
   <variablelist> 

    <varlistentry><term>2D Freehand</term>

    <listitem><para>A 2D Freehand ROI is similar to a 3D Freehand,
         except that it is constrained to be only one voxel thick.  By
         default, the depth is the current slice thickness, although
         this can be changed by the user.</para></listitem>
    </varlistentry>
  
    <varlistentry><term>3D Freehand</term>
    <listitem><para>An ROI that can be drawn freely in all 3 dimensions..</para></listitem>
    </varlistentry>
  
   </variablelist>

 </sect3>
  
</sect2>


<sect2><title>Drawing ROI's</title>

  <para>
    To draw an ROI, you first need to create a new ROI.  You can add a
    new ROI to either the study, or a particular data set.  To add an
    ROI to the study, you can either select the ROI desired under the
    "Edit->add ROI:" menu item, or right click on the blank area of
    the study tree.  To add an ROI to a data set, shift-right click on
    the data set that you'd like to add the ROI to.  In both cases, a
    dialog box will pop-up for you to enter in the new ROI's name.
  </para>

  <para>
    When first added, the new (undrawn) ROI will be selected in the
    study tree.  When an undrawn ROI is selected in the study tree,
    the program will use the next mouse input on any of the displayed
    views to begin the process of drawing this ROI.
  </para>

  <para>
    For ellipsoid, elliptic cylinder, and box ROI's, a click with the
    left button will begin an edge-to-edge drawing, while a click with
    the middle button will begin a center-out drawing.  The x and y
    dimensions of the ROI are determined by this process. The z
    dimension (thickness) of the ROI can be specified by the pop-up
    dialog that will appear on the completion of the mouse movement.
  </para>

  <para>
    For isocontour's, the value of the data set at the clicked upon
    location will be used to derive the isocontour.
  </para>

  <para>
   For freehand's, the point on the screen that is clicked upon will
   be included in the ROI.
  </para>    

</sect2>

<sect2><title>Manipulating ROI's</title>

  <para>
    After an ROI is drawn, it can be further manipulated to adjust its
    size, placement, and orientation.  You can directly manipulate the
    ROI by clicking on it in any of the viewing windows.  Mouse button
    1 is used to shift ROIs.  Mouse button 2 is used for zooming
    ellipsoid, elliptic cylinder and box ROI, and is used for entering
    drawing mode for isocontour and freehand ROI's.  Mouse button 3 is
    used to rotate ellipsoid, elliptic cylinder, and box ROIs, and for
    redefining the isocontour value for isocontour ROI's.  </para>

  <para> For isocontour and freehand ROI's, drawing mode can be
     entered by using thie middle mouse button (button 2).  Once
     entered, points can be added or removed from the ROI by using the
     left (button 1) or right (button 3) mouse buttons, respectively.
     Holding down the shift key while using these buttons increases
     the size of the action.  The middle button (button 2) allows the
     user to leave drawing mode.
  </para>

  <para>
    You can also edit the ROI size/placement/orientation/name etc. by
    clicking on mouse button 3 while over the ROI's name in the study
    item list.  This brings up the ROI modification dialog (described
    at <xref linkend="roi-dialog" />).
  </para>
    
</sect2>



<sect2 id="roi_statistics"><title>Calculating Statistics</title>

  <para>

    Statistics on an ROI can be calculated via the "Tools->calulate
    ROI statistics" menu item.  Choosing this will pop-up a dialog
    that lets you choose which ROI's (selected or all) and which data
    sets (selected or all) you'd like to calculate statistics over.
    You will also have three options as to how you what the values to
    be calculated.
  </para>

  <orderedlist>
   <listitem>
    <para> Calculate over all voxels. </para>
   </listitem>

   <listitem>
    <para> Calculate over highest x percent of voxels.  For example,
    if you choose this and pick 25% as the number, your ROI will be
    calculated from the 25% of the voxels in the ROI that have the
    highest values.
    </para>
   </listitem>

   <listitem>
    <para> Calculate for voxels >= % of Max.  This method is based on
    Lee, Madsen, Bushnel, and Menda, Nuc Med Comm 2000, 21:685-690.
    As an example, if you choose this and pick 50% as the number, the
    highest valued voxel in the ROI will be found, and then the ROI
    statistics will be calculated for all voxels that are greater or
    equal to 50% of the highest valued voxel.
    </para>
   </listitem>

   <listitem>
    <para> Calculate for voxel >= Value. This algorithm only does
    calculations for voxels in the ROI that have a value greater than
    the value specified.
    </para>
   </listitem>

  </orderedlist>

  <para> There's also a check box to enable "more accurate
  quantitation".  The default algorithm (corresponding to unchecked)
  makes some approximations in deciding which voxel are in our out of
  the ROI.  If this check boxed is checked, the ROI results will be
  more accurate, but will take much longer to compute.
  </para>

  <para>
   After hitting execute, the program will crank for a while, and then
   show the calculated values in a new dialog window.  Hitting "Save
   as" button allows saving these values as a tab separated values
   (TSV) file.  This file should be easily imported into most
   spreadsheet applications (Excel's a little stupid, you may have to
   explicitly tell it you're importing a TSV file).  Pressing the
   "Copy" button copies the information into the operating systems
   clipboard, allowing pasting of the results into other programs.
   The "Save Raw Values" button allows you to export the underlying
   raw data values for the ROI's in case you wish to do your own
   statistical analysis.
  </para>

  



 <sect3><title>Gotcha's to ROI calculations </title>
  
  <sect4><title>Variance and Standard Deviation Fallacies</title>
    
    <para>
      Currently, AMIDE generates variance and standard deviation values
      that may occasionally be of interest to imaging physicists.  It
      is very important to remember, that these numbers represent the
      noise in the data set, NOT the noise in your experiment.
    </para>

    <para> The variance of an experiment can only truly be measured by
      taking multiple samples (i.e. performing multiple scans) and
      calculating the variance between these different samples.
    </para>

  </sect4>

  <sect4 id="roi-volume-calculation"><title>Changing Calculated Volume</title> 

   <para><emphasis>Short story:</emphasis> The calculated volume shown
    by the ROI statistics dialog is correct.  Use this value as the
    volume of the ROI, not the value you might calculate by hand based
    on the ROI's dimensions.
   </para>

   <para><emphasis>Long story:</emphasis> AMIDE calculates ROI's by
    translating the ROI's dimensions into the data set's coordinate
    space.  It then computes statistics for all the data set voxels
    that are in the ROI.  For voxels that lie on the edge of the ROI,
    AMIDE will subdivide the voxel into a finite number of subvoxels,
    and calculate over the subvoxels.  This approach yields correct
    statistics, but it is important to realize that the computed ROI
    is a discrete representation of the specified analytical ROI.  So
    while the true volume of an ellipse is pi*r1*r2*r3, the computed
    volume of the ellipse in AMIDE will depend on the number of voxels
    and subvoxels that were determined to lie within the ellipse,
    which in turn can depend on the orientation of the ROI with
    respect to the data set in question.  Since the computed volume
    given by AMIDE represents the volume in the data set that was used
    for the ROI calculation, you will want to use that value (not the
    real ellipse value).
    </para>
  </sect4>

  <sect4><title>Why isn't a "total" statistic calculated for the ROI?</title>

   <para> AMIDE doesn't present the "total" value in the ROI, as it
   doesn't necessarily know what the units of the underlying data are.
   If you're using PET or SPECT data, your voxel values are most
   likely proportional to activity/volume/time.  To calculate the
   total in your ROI, you should multiple the mean value of the ROI
   times the ROI volume and the frame duration.  If you're using CT
   data, your values are probably proportional to density, so to
   calculate the total you would multiple the mean ROI value by the
   ROI volume. </para>

  </sect4>

 </sect3>

 <sect3 id="roi-terms"><title>Explanations of ROI Statistical Values</title>

  <variablelist>
  
   <varlistentry><term>Median</term>
   <listitem><para>This is the median value of all the voxels that are
   enclosed (partially or totally) within the ROI.  For an even number
   of voxels, the median is defined as the average of the center 2
   values.</para></listitem>
   </varlistentry>

   <varlistentry><term>Mean</term>
   <listitem><para>The mean value of the voxels in the ROI.  Voxels
   that are partially enclosed within the ROI are appropriately
   weighted.</para></listitem>
   </varlistentry>

   <varlistentry><term>Variance</term>
   <listitem><para>The variance of the voxels in the ROI.  This is
   a weighted variance calculation so that voxels that are
   partially enclosed within the ROI are correctly
   handled.</para></listitem>
   </varlistentry>

   <varlistentry><term>Standard Deviation</term>
   <listitem><para>The square root of the variance.</para></listitem>
   </varlistentry>

   <varlistentry><term>Standard Error</term>
   <listitem><para>The square root of the variance, divided by the
   square root of the total number of voxels in (totally or partially)
   the ROI.</para></listitem>
   </varlistentry>

   <varlistentry><term>Minimum/Maximum</term> 
   <listitem><para>The minimum and maximum values for all voxels
   enclosed totally or partially within the ROI.</para></listitem>
   </varlistentry>

   <varlistentry><term>Size</term>
   <listitem><para>The volume of an ROI (mm^3).  Details as to its
   calculation are above in: <xref linkend="roi-volume-calculation"
   />.</para></listitem>
   </varlistentry>

   <varlistentry><term>Fractional Voxels</term>
   <listitem><para>The is the sum of the voxel weights, and gives an
   indication of how large the ROI is in voxel
   space.</para></listitem>
   </varlistentry>

   <varlistentry><term>Voxels</term>
   <listitem><para>This is the total number of voxels used in
   calculating the ROI, both partial and total.  In contrast to the
   "Fraction Voxels" measure, the "Voxels" measure gives a better
   indication of the statistical validity of the mean, variance, etc.
   </para></listitem>
   </varlistentry>

  </variablelist>
 </sect3>

</sect2>



<sect2 id="roi-dialog"><title>ROI Modification Dialog</title>

 <para>
   To directly modify parameters of an ROI, right click on the name of
   the ROI in the study tree to pop-up the modification dialog.
   Parameters that can be modified are divided into the following
   pages.
 </para>

 <variablelist>
  <varlistentry><term>Basic Info</term>
   <listitem><para>
     The name and type of ROI can be altered on this page.
   </para></listitem>
  </varlistentry>
    
  <varlistentry><term>Center</term>
   <listitem><para>
    The center of the ROI can be shifted with respect to the origin on
    this page.  The x, y, and z parameters are in millimeters.
   </para></listitem>
  </varlistentry>
    
  <varlistentry><term>Dimensions</term>
   <listitem><para>
	The size of the ROI can be altered from this page.  The x',
	y', and z' dimensions are in millimeters and are orientated
	with respect to the orientation of the ROI.
   </para></listitem>
  </varlistentry>
    
  <varlistentry><term>Rotate</term>
   <listitem><para>
	The ROI can be rotated around its center in this page.  There
	is one dial for each of the three slice planes.  The
	transverse dial will spin the ROI in the transverse plane
	(i.e. rotate on the z-axis).  The coronal dial will spin the
	ROI in the coronal plane (i.e. rotate on the y-axis).  And the
	sagittal dial will spin the ROI in the sagittal plane
	(i.e. rotate on the x-axis).  The "reset to default" button
	allows the ROI to be rotated back to the default orientation.
	On the bottom of this page is a matrix showing the coordinate
	frame of the ROI with respect to the base coordinate frame.
    </para></listitem>
  </varlistentry>
  </variablelist>
</sect2>
</sect1>





<!-- ###################################### -->
<sect1 id="study">
  <title>The Study</title>

 <para> The "Study object" in AMIDE is used for grouping a set of
 related data sets and ROI's.  Note that the use of the word "Study"
 here diverges from the traditional nuclear medicine use of the word,
 in which study generally connotates a single scan (or occasionally
 multiple but highly coupled scans) done on a single patient.  A study
 in AMIDE is often used to group an entire experiment (several
 patients, several animals, whatever) into a single file.  The study
 object itself is used mostly for storing parameters that effect all
 other objects stored in the study.</para>

<sect2 id="study-dialog"><title>Study Modification Dialog</title>

    <para> Similarly to the data set and ROI modification dialogs, the
      study modification dialog can be used to alter parameters
      relevant to the entire study.  Right click on the name of the
      study in the study tree to pop-up the study modification dialog
      box.  Parameters that can be modified are divided into the
      following pages. </para>

   <variablelist>    

    <varlistentry><term>Basic Info</term>
      <listitem><para>
	On this page are options to alter the name and creation date of the study.
      </para></listitem>
    </varlistentry>
    
    <varlistentry><term>View Center</term>
      <listitem><para>
        From this page, the point that the study is currently viewing 
        can be explicitly changed.  The x, y, and z
	dimensions are in millimeters.
	</para></listitem>
    </varlistentry>

    <varlistentry><term>Rotate</term>
      <listitem><para>
	The entire study (including all objects within it) can be
        rotated around the view center in this page.  There is one
        dial for each of the three slice planes.  The transverse dial
        will spin the study in the transverse plane (i.e. rotate on
        the z-axis).  The coronal dial will spin the study in the
        coronal plane (i.e. rotate on the y-axis).  And the sagittal
        dial will spin the study in the sagittal plane (i.e. rotate
        on the x-axis).  The "reset to default" button allows the study
        to be rotated back to the default orientation.  On the
        bottom of this page is a matrix showing the coordinate frame
        of the study with respect to the base coordinate frame.
        </para></listitem>
    </varlistentry>

    <varlistentry><term>ROI/View Preferences</term>
     <listitem><para>
	The width of the line used to draw geometric ROIs can be
	altered here (1-5 pixels).  This parameter is not relevant for
	isocontour ROI's.  For isocontour ROI's, you can choose to have
        them draw as filled in or hollow.
     </para><para>
	Canvas layout allows you to switch the three views
	(transverse, coronal, and sagittal) between a linear style
	layout more commonly seen in PET software, and an orthogonal
	style layout more commonly seen in MRI software.  "Maintain
	view size constant" allows you to pick if you want the size of
	the view to remain constant or not.  If not checked, the size
	of the views shown will depend only on the data sets selected.
	If the checkbox is checked, the size of the views will depend
	on all the data sets in the study.  Finally, "target empty
	area" is for setting the size of the empty area in the middle
	of the target (the crosshairs on the views when changing the
	view location).
     </para></listitem>
    </varlistentry>
    
    <varlistentry><term>Immutables</term>
      <listitem><para>
	This panel lists information about the study that cannot be
	altered.  "Voxel dim" is the preferred voxel dimension, this
	is what the canvas will use as the "basic" voxel dimension,
	from which the zoom factor is relative too.
	</para></listitem>
    </varlistentry>

    </variablelist>

 </sect2>
</sect1>





<!-- ###################################### -->
<sect1 id="series">
  <title>Viewing Series of Slices</title>
<para>
   Instead of looking at three orthogonal slices through the data set,
   a series of slices (all of the same orientation) can also be
   examined.  Select: "View->Series", and a dialog box will come up
   allowing you to pick which objects you'd like to display on the
   series viewer, along with if you'd like to display the slices over
   space, time, or gates.  The thickness of the slices are determined
   at the time the series window is brought up.  A slider appears on
   the top of the window which allows moving through the data set.
   Note that since slices are cached in memory after being displayed,
   already displayed slices do not need to be regenerated from the
   data set and reviewing these slices is significantly faster.
</para>
</sect1>






<!-- ###################################### -->
<sect1 id="rendering">
  <title>Rendering Data</title>

<para> Rendering in AMIDE is accomplished using the <ulink type="http"
  url="http://graphics.stanford.edu/software/volpack/"> Volpack volume
  rendering library</ulink>.  This software library is both portable,
  and provides for true volume rendering (as opposed to the surface
  rendering used by many other libraries and hardware
  accelerators).</para>

<para> To start a rendering window, select the "View->Rendering" menu
  item.  A small dialog window will pop-up allowing you to select
  which objects you'd like rendered, along with some additional
  options.  The first "Set values greater than max threshold to zero"
  allows you to strip high level voxels out of the rendering process.
  In general you won't want this, but it might be useful if you have
  high valued areas in your data set that obscures what you'd like to
  see.  The second option "Accelerate Rendering" tells VolPack to use
  a faster method for doing the volume rendering.  You will in general
  want to use this option, as it causes a significance performance
  enhancement (around 10 fold).  It does, however, require around 3
  fold as much rendering as the non-accelerated option, so if you're
  running out of memory, you'll want to try to rendering without the
  acceleration. The third option "Initial opacity functions only
  density dependent" sets things such that the initial gradient
  opacity function does not contribute to the rendering.  This is
  useful for data sets (e.g. PET) where one is more interested in
  having an accurate view of the data, rather than a view where
  gradients in the data set are highlighted.</para>

<para> After hitting "Execute" the program will reslice the data sets
  and ROI's into a data structure that the volpack library can handle,
  and then perform some initial renderin gcalculations.  For data
  sets, the <link linkend="interpolation">interpolation type</link>
  specified for the data set will be used. This whole process will
  take some time, so be patient.  Please also note that, when
  converting the data set, the data is scaled between the current
  minimum and maximum threshold, with all data above the current
  maximum threshold set to the maximum threshold value (or zero, if
  specified), and all data below the current minimum threshold set to
  the minimum threshold value.  This scaling can be relative to the
  data set's "Global" maximum and minimum, to the "Per Frame" maximum
  and minimum, or can be from maximum and minimum values "Interpolated
  Between Frames".  "Per slice" scaling does not make sense in the
  context of volume rendering, and is interpreted as "Global"
  scaling. </para>

<para> When all this is completed, the rendering window should pop-up.
  Its use is described below. </para>



<sect2><title>Rendering Window</title>

  <sect3><title>Main Rendering Canvas</title>
    <para>
      The result of the rendering process is presented on the canvas
      in the center of the window.  This canvas can accept user input
      to change the orientation of the rendering.  Button 1 allows
      rotating on the x and y axis, and button 2 allows rotating on
      the z axis.
    </para>
  </sect3>


  <sect3><title>Spin Sliders</title>
    <para>
      You should notice two slider type widgets, one on top of the
      rendered image, and one on the right side.  These are both
      appropriately labeled with the axis around which the rendering
      will be spun if they are changed.  Additionally you should
      notice a dial widget (labeled 'z').  The dial is for rotating on
      the z axis (which comes out of the plane of the display).  Note
      that the effect of rotations are cumulative.
    </para>
  </sect3>

  <sect3><title>Reset Axis</title>
    <para>
      This button will reset the rendering's orientation back to the
      default orientation.
    </para>
  </sect3>


  <sect3><title>Toolbar</title>

    <sect4 id="transfer-function-dialog"><title>Transfer Function Button</title>

    <para> This will pop-up a dialog with a panel for each object
    being rendered.  The available options are described below:
    </para>

    <variablelist>

    <varlistentry><term>Return Type</term>
      <listitem><para>This setting determines whether the rendering returns an
      image which looks more analogous to an x-ray (the "opacity"
      setting), or returns an image which looks more like a surface
      (the "grayscale" setting).  The "grayscale" setting does this by
      specifying a light source, material properties, and using depth
      cueing. </para></listitem>
    </varlistentry>

    <varlistentry><term>Color Table</term>
      <listitem><para>
	The color table of each rendered object can be changed here.
      </para></listitem>
    </varlistentry>

    
    <varlistentry><term>Classification Functions</term>
      <listitem>
      <para>
	This is the most confusing part of rendering, so hang on here.
	The classification functions are used to map between the value
	in each voxel and how much that voxel should be represented in
	the final rendered image.  On the x axis is the possible
	values of the different voxels.  On the y-axis is the opacity
	that will be given a voxel based on its value.
      </para>
      <para>
	Both classification functions have several buttons on the
	right side of their graphs.  The top button allows the
	classification function to be drawn as a spline.  The second
	button allows the classification function to be drawn as a
	series of straight lines.  Finally, the last button resets
	the classification function to a straight line.
      </para>
      <para>
	There are two classification functions:
      </para>

          <itemizedlist>

	  <listitem><para><emphasis>Density Dependent:</emphasis> This
	    function tells you how opaque each voxel will be based on
	    its current value.  In a sense, this is analogous to an
	    x-ray, where the amount of the x-rays that are absorbed in
	    a structure is related to the density of that structure.
	    of the display.</para></listitem>

	  <listitem><para><emphasis>Gradient Dependent:</emphasis>
	    Instead of relating the density of a voxel to its opacity,
	    this function relates the gradient of a voxel (how much
	    the value changes between this voxel and its neighbors)
	    to its opacity.  This has the effect of giving added
	    weight to surfaces.</para></listitem>

       </itemizedlist>
     </listitem>

     </varlistentry>
    </variablelist>
   </sect4>

    
   <sect4><title>Monoscopic/Stereoscopic Buttons</title>
    <para> You can choose between generating a single rendered image
      (monoscopic), or a stereoscopic image pair.  A stereoscopic
      image pair is a pair of images that have been generated at
      slightly different angles.  When viewed correctly, these two
      images can be interpreted by the viewer's eyes as a single image
      containing depth information.
     </para>
   </sect4>

   <sect4><title>Zoom</title>
    <para> Determines the size at which the resultant rendered image
     will be displayed.  Note that changing the zoom will not affect
     the speed of the rendering, and increasing the zoom past 1 will
     not increase the resolution of the rendered image. </para>
   </sect4>

  </sect3>




  <sect3><title>Rendering Menus</title>
    <sect4><title>File->Export Rendering</title>
      <para>
	This menu item allows you to export the rendered image to
	an external image file.  The saved data format is 
        jpeg. </para>
    </sect4>

    <sect4><title>File->Create Movie</title>
      <para>
	This causes the movie generation dialog box to pop up.  This
	dialog box is further described below: <xref
	linkend="rendering-movie-dialog" />.
      </para>
    </sect4>
  
    <sect4><title>Edit->Rendering Parameters</title>
      <para>
	This causes the rendering parameters dialog box to pop up.
	This dialog box is described below: <xref
	linkend="rendering-dialog" />.
      </para>
    </sect4>
  </sect3>
  
</sect2>

<sect2 id="rendering-dialog"><title>Rendering Parameters Dialog</title>

  <sect3><title>Speed versus Quality</title>
   <para> With this drop-down menu, the user can choose between
   rendering speed and rendering quality.  To increase speed, voxels
   with values either close to zero or close to unity can be counted
   as completely translucent or completely opaque, respectively.  The
   highest quality doesn't use this approximation at all, the lowest
   quality setting uses this approximation big-time. </para>
  </sect3>


  <sect3><title>Stereosopic parameters</title>

   <para>These parameters are used for controlling the results when
   the "stereoscopic" option has been chosen. </para>
      
   <sect4><title>Stereo Angle</title>
    <para> This is the angle offset (in degrees) between a pair of
    rendered images.  Increasing this number will generally give a
    greater sensation of depth in the image pair.  A Reasonable value
    for this parameter is between 2 and 5 degrees.  Note that this
    parameter will be saved between different sessions of the
    program (not currently done on MS Windows).</para>
   </sect4>
      
   <sect4><title>Eye Width (mm) </title>
    <para> Ideally, this should be (roughly) the distance between the
    two rendered images, and corresponds to the distance between the
    user's eyes.  It is impossible for a person to resolve a
    stereoscopic pair if the images are farther apart then the
    person's eyes, since human eyes cannot move independently.  While
    this parameter is specified in millimeters, the actually distance
    between the pair of images that gets displayed on the monitor
    depends on the setup of the computer.  If the monitor information
    reported by the operating system is not correct (usually the
    case), the "eye width" parameter will not be in true millimeters.
    Note that this parameter will be saved between different sessions
    of the program (not currently done on MS windows).</para>
  </sect4>

 </sect3>

 <sect3><title>Depth Cueing</title>

  <para> These parameters are only used if the "grayscale" output type
  has been chosen.</para>
      
  <sect4><title>Enable/Disable Depth Cueing</title>
   <para> Specify whether or not we want depth cueing.  Depth cueing
   puts in a "fog" that causes more distant voxels to appear less
   bright.</para>
  </sect4>
      
  <sect4><title>Front Factor</title>
   <para> This is the transparency of the fog at the front of the data
   set.  If this number is greater than 1.0, voxels toward the front
   of the data set will be brightened.  If this parameter is less than
   1.0, voxels toward the front of the data set will be darker,
   respectively.</para>
  </sect4>

  <sect4><title>Density</title>

   <para> This is how thick the "fog" is.  The thicker the fog, the
   darker distant objects seem. </para>
  </sect4>
 </sect3>
</sect2>
    

<sect2 id="rendering-movie-dialog"><title>Rendering Movie Dialog</title>

 <sect3><title>Frames</title>
      <para>
	How many frames should be in the MPEG1 movie.  The MPEG1
	movies generated will be set to run at 30 frames/second, so
	the default of 300 frames will give a ten second movie.
      </para>

 </sect3>

 <sect3><title>Rotations on [x,y,z] </title> 
      <para> 
	This setting determines how many times the data set will be
	rotated around the given axis over the course of the movie.
	The rotation for each frame is done in x->y->z order (rotate
	on x first, then y, then z).
      </para>
 </sect3>

 <sect3><title>Dynamic Movie: No/Over Time/Over Frames Smoothed/Over Gates</title>

   <para> This option allows a rendered movie to be made over a time
   period, which is useful for dynamic data sets. 
   </para>

    <para> Note that every time a frame boundary in the data set is
    passed over, the rendering process must slice and load in a new
    frame of data.  This makes creating a rendered movie over time
    significantly slower than a movie with just rotations.
    </para>

   <para> Picking "over time" will allow entry of a start and end time
   for which the data from the data sets should be drawn.  With the
   "over time" option, each second is given equal waiting in terms of
   how many images from that time period are generated for the output
   movie.</para> 

   <para>Picking "over frames" allows entry of a start and end frame
   (note that this really only makes sense with a single data set).
   The advantage of "over frames", is that each frame is weighted
   equally in terms of how many images are generated for the output
   movie, so for data sets were the dynamics of interest correspond
   closely to the dynamics of the data set framing sequence, "over
   frames" may give a more appealing result.
   </para>

   <para> The "over frames smoothed" option is almost the same as
   "over frames", except that data will be interpolated between
   frames.  This makes for a smoother movie (no jumps) but takes much
   longer as nearly every movie frame has to be reloaded.
   </para>

 </sect3>

</sect2>

</sect1>




<!-- ###################################### -->
<sect1 id="tools">
  <title>Additional Tools</title>

<sect2><title>Alignment Wizard</title>

  <para>In addition to manually aligning data sets (described at <xref
  linkend="manual_alignment" />), data sets can also be aligned using
  the alignment wizard utilizing either mutual information or
  fiducial markers.</para>


  <sect3 id="mutual_information"><title>Alignment with Mutal Information</title>
  <para> A rigid body alignment can be performed utilizing mutual
  information between two data sets. This algorithm works by
  taking orthogonal slices from one data set (transverse, coronal, and
  sagittal) and computing a transform to best allow matching of these
  slices to the second data set. This algorithm works best when the
  two data sets have already been roughly aligned. Note that the
  orthogonal slices utilized for the matching are derived utilizing
  the current viewing parameters (current viewing location, slice
  width, interpolation method, etc).
  </para>
  </sect3>

  <sect3 id="procrustes"><title>Alignment with Fiducial Markers</title>

  <para>A rigid body alignment can be performed utilizing fiducial
  markers. The process is basically:</para>
  
  <procedure>
    <step>
      <para>
       Draw at least three pairs of fiducial makers between the two
       data sets that you wish to align.  Drawing fiducial markers is
       described below as <xref linkend="fiducial-marker" />.
      </para>
    </step>
    <step>
      <para>
       Run the alignment wizard (under tools->alignment wizard).  For
       the alignment wizard to recognize two fiducial markers as a
       pair, they must have exactly the same name.  So if you have a
       marker labeled "1" under the first data set, you will need
       another marker, also labeled "1", under the second data set.
      </para>
    </step>
  </procedure>          
  </sect3>
  

  <sect3 id="fiducial-marker"><title>Drawing Fiducial Markers</title>
   <para>
    Fiducial markers can be added to any of the data sets in the study
    in a variety of ways.  For the currently active data set, hitting
    the "Edit->Add fiducial mark" menu item will drop a fiducial maker
    at the currently viewed location.  Fiducial marks can be added for
    the active data set directly from the views by pressing ctrl-right
    mouse button, which will drop a fiducial marker at the point that
    the mouse is currently at.  Finally, fiducial markers can be added
    to non-active data sets by pressing ctrl-right mouse button while
    hovering over a data set's name in the study list.</para>

   <para>After being created, the fiducial marker can be moved by
    clicking on the marker point shown in any of the views.
   </para>
 </sect3>

 <sect3 id="fiducial-marker-dialog"><title>Fiducial Marker Modification Dialog Box</title>
  <para>
      To modify parameters of a fiducial mark, right click the point
      in the study list to pop-up the Fiducial Marker Modification
      Dialog.  From this dialog, the name and location of the fiducial
      marker can be altered.
  </para>
    
 </sect3>

</sect2>


<sect2><title>Crop Wizard</title> 

  <para>Coming soon.  Note that only what is strictly inside the
   cursor lines is saved.  What's underneath and outside the cursor
   lines is cropped away. </para>
</sect2>


<sect2><title>Factor Analysis Wizard</title>
   <para>The factor analysis wizard is currently being developed.  It
   probably won't work for you, and is only included in AMIDE for
   those who might be interested in working on it (rather than with
   it).</para>
</sect2>


<sect2><title>Filter Wizard</title>
   <para>Nothing written yet...</para>
</sect2>


<sect2><title>Fly Through Wizard</title>
   <para>Nothing written yet...</para>
   <para> Note, will generally get much better results for fly through
   if using trilinear interpolation.</para>
</sect2>


<sect2 id="profile-dialog"><title>Profile Tool</title>
 <para>A complete description of this tool has not yet been written.</para>

 <para> The left and right limits of the gaussian fit can be altered
 by clicking on the profile with the left and right mouse buttons,
 respectively.  The x value used for initializing the gaussian fit can
 be picked by clicking on the profile with the middle mouse button.
 </para>

 <para> Note that the line profile is extracted from the currently
   viewed image, not the underlying raw data itself. This means things
   like the current interpolation and FOV will effect the line profile
   that's generated, and as such may effect the FWHM that's fitted.
 </para>

</sect2>


<sect2><title>ROI Statistics</title>
   <para>A description of the ROI statistics tool can be found at:
   <xref linkend="roi_statistics" />.</para>
</sect2>

</sect1>

</article>