6637303801207b8b6ae0947c6f81f5876ca56a43
[ctsim.git] / doc / ctsim-gui.tex
1 \chapter{The Graphical User Interface}\label{ctsim}\index{ctsim}\index{Graphical interface}%
2 \setheader{{\it CHAPTER \thechapter}}{}{}{\ctsimheadtitle}{}{{\it CHAPTER \thechapter}}%
3 \ctsimfooter%
4
5
6 \ctsim\ is the graphical shell for the CTSim project. This shell uses
7 the \urlref{wxWindows}{http://www.wxwindows.org} library for
8 cross-platform compatibility. The graphical shell is compatible
9 with Microsoft Windows, \urlref{GTK}{http://www.gtk.org}, and
10 \urlref{Motif}{http://www.openmotif.org} graphical environments.
11
12 \section{Starting CTSim}
13 \usage \texttt{ctsim [files to open...]}
14
15 You can invoke \ctsim\ by itself on the command line, or include
16 any number of files that you want \ctsim\ to
17 automatically open. \ctsim\ can open projection files, image
18 files, phantom files, and plot files.
19
20 On Microsoft Windows platforms, the simplest way to invoke \ctsim\ is
21 via the \emph{Start} menu under the \emph{Programs} sub-menu.
22
23 \section{Quick Start}\label{IDH_QUICKSTART}\index{Quick Start}
24 The fastest way to put \ctsim\ through it's basic operation is:
25 \begin{enumerate}\itemsep=0pt
26 \item \texttt{File - Create Phantom...} \\
27 This creates a window with the geometric phantom. Choose the \texttt{Herman} head phantom.
28 \item \texttt{Process - Rasterize...} \\
29 This creates an image file of the phantom by converting it from a
30 geometric definition into a rasterized image. You may use the defaults
31 shown in the dialog box.
32 \item \texttt{View - Auto...} \\
33 Use this command on the new rasterized image window. This will optimize the intensity scale for
34 viewing the soft-tissue details of the phantom. Select the \texttt{median} center and
35 a standard deviation factor of \texttt{0.1}.
36 \item \texttt{Process - Projections...} \\
37 Use this command on the geometric phantom window. This simulates the collection of x-ray
38 data. You may use the defaults shown in the dialog box. Additionally, you may wish to turn on
39 \texttt{Trace - Projections} to watch to x-ray data being simulated.
40 \item \texttt{Reconstruction - Filtered Backprojection...} \\
41 Use this command on the projection window. This will reconstruct an image
42 from the projections. Once again, you may use the defaults shown in the dialog box.
43 \item \texttt{View - Auto...} \\
44 Use this command on the new reconstructed image window. This will optimize the intensity scale for
45 viewing the soft-tissue details of the reconstruction. Select the \texttt{median} center and
46 a standard deviation factor of \texttt{0.1}.
47 \item \texttt{Analyze - Compare Images...} \\
48 Use this command on the rasterized phantom image window. This will bring up a dialog box
49 asking for the comparison image. Select the reconstruction image that you just made and also select the "Make difference image"
50 check box. You'll then see the image distance measurements and also a new window with the difference between the rasterized
51 phantom and the reconstruction.
52 \item \textbf{That's it!} You have just performed the basic operations with \ctsim. By varying the parameters of the rasterization,
53 projection, and reconstructions you perform endless computed tomography experiments. \ctsim\ also has many other visualization
54 and analysis features that you learn more about by reading the manual.
55 \end{enumerate}
56
57 \section{File Types}\index{File types}
58
59 \subsection{Phantom}
60 Besides loading phantom files from the disk, the Herman\cite{HERMAN80} and
61 Shepp-Logan\cite{SHEPP74} phantoms are built-in to \ctsim. Phantom files can be
62 read from and written to the disk. Phantom files are stored in a simple
63 ASCII format. A text editor is required to
64 create and edit these files.
65
66 \subsection{Image}
67 Image files contain 2-dimensional arrays that store 4-byte floating
68 point values. Images files can be either real or complex-valued.
69 Typically, all images are real-valued except for images that have been
70 processed by Fourier transforms. As you might expect,
71 complex-valued images are twice the size of real-valued images
72 since both a real and imaginary component need to be stored. When
73 complex-valued images are viewed on the screen, only the real
74 component is displayed.
75
76 Images files can    store any number of text labels. \ctsim\ uses
77 these labels for recording history information regarding
78 the creation and modifications of images.
79
80 \subsection{Projection}
81 Projection files are created from phantom files via the
82 projection process. Numerous options are available for the
83 creation of the these files. The files are stored in a binary
84 format with cross-platform compatibility on little and big-endian
85 architectures.
86
87 \subsection{Plot}
88 Plot files are created by \ctsim\ during analysis of image files.
89 They can be read from and written to the disk. They are stored as ASCII
90 files for easy cross-platform support and editing.
91
92 \section{Global Menu Commands}
93 These global commands are present on the menus of all windows.
94
95 \subsection{File - Create Phantom}\label{IDH_DLG_PHANTOM}\index{Dialog!Create phantom}
96 This command displays a dialog box showing the phantoms that are pre-programmed
97 into \ctsim. After selecting one of these phantoms, the new window with that
98 phantom will be generated. The pre-programmed phantoms are:
99
100 \begin{twocollist}
101 \twocolitem{\textbf{Herman}}{The Herman head phantom\cite{HERMAN80}}
102 \twocolitem{\textbf{Shepp-Logan}}{The head phantom of Shepp \& Logan\cite{SHEPP74}}
103 \twocolitem{\textbf{Unit pulse}}{A phantom that has a value of \texttt{1} for the
104 center of the phantom and \texttt{0} everywhere else.}
105 \end{twocollist}
106
107 \subsection{File - Create Filter}\label{IDH_DLG_FILTER}\index{Dialog!Create filter}
108 This command displays a dialog box showing the pre-programmed filters
109 of \ctsim. This command will create a 2-dimensional image of the selected filter.
110 The center of the filter is at the center of the image.
111
112 These filters can be created in their natural frequency domain or in their inverse
113 spatial domain.
114
115 \begin{twocollist}
116 \twocolitem{\textbf{Filter}}{Selects the filter to generate. The available filters are:
117
118 \begin{itemize}\itemsep=0pt
119 \item $|w|$ Bandlimit
120 \item $|w|$ Hamming
121 \item $|w|$ Hanning
122 \item $|w|$ Cosine
123 \item $|w|$ Sinc
124 \item Shepp
125 \item Bandlimit
126 \item Sinc
127 \item Hamming
128 \item Hanning
129 \item Cosine
130 \item Triangle
131 \end{itemize}
132 }
133 \twocolitem{\textbf{Domain}}{Selects either the \texttt{Frequency} or \texttt{Spatial} domain. The filters have the
134 frequency domain as their natural domain. The spatial domain is obtained either analytically or performing
135 an inverse Fourier transformation.}
136 \twocolitem{\textbf{X Size}}{Number of columns in the output image.}
137 \twocolitem{\textbf{Y Size}}{Number of rows in the output image.}
138 \twocolitem{\textbf{Hamming Parameter}}{ This parameter adjusts the smoothing of the Hamming
139 filter and can range from \texttt{0} to \texttt{1}.
140 At a setting of \texttt{1}, the Hamming filter is the same as the bandlimit filter.
141 At a setting of \texttt{0.54}, the Hamming filter is the same as the Hanning
142 window.}
143 \twocolitem{\textbf{Bandwidth}}{Sets the bandwidth of the filter.}
144 \end{twocollist}
145
146 \begin{twocollist}
147 \twocolitem{\textbf{Axis (input) Scale}}{Sets the scale for the filter input. By default, the input to the filter is
148 the distance in pixels from the center of the image. By changing this value, one can set a scale the input to the filter.
149 For example, if the output image is \texttt{101} by \texttt{101} pixels and thus the center of the image is at \texttt{(50,50)}, then a pixel
150 lying at point \texttt{100,50} would be 50 units from the center of the filter. By applying an \texttt{Axis scale} of
151 \texttt{0.1}, then that point would be scaled to 5 units from the center of the filter.}
152 \twocolitem{\textbf{Filter (output) Scale}}{Multiplies the output of the filter by this amount. By default, the filter has a maximum
153 value of \texttt{1}.}
154 \end{twocollist}
155
156 \subsection{File - Preferences}\label{IDH_DLG_PREFERENCES}\index{Dialog!Preferences}
157 This command displays a dialog box that allows users to control
158 the behavior of \ctsim. These options are saved across \ctsim\ sessions.
159 Under Microsoft Windows environments, they are stored in the registry.
160 On UNIX and Linux environments, they are stored in the user's home
161 directory with the filename of \texttt{.ctsim}.
162
163 \begin{twocollist}
164 \twocolitem{\textbf{Advanced options}}{This option is initially turned off in new installations.
165 These advanced options are not required for normal simulations. When \texttt{Advanced
166 Options} is set, \ctsim\ will display more options during scanning of phantoms and
167 the reconstruction of projections.}
168
169 \twocolitem{\textbf{Ask before closing new documents}}{This option is initially turned on in
170 new installations. With this option set, \ctsim\ will ask before closing
171 documents that have been modified or never saved on disk. By turning off
172 this option, \ctsim\ will never ask if you want to save a file -- you'll
173 be responsible for saving any files that you create.}
174
175 \twocolitem{\textbf{Verbose logging}}{This option is initially turned off in
176 new installations. With this option set, \ctsim\ will log more events than
177 usual. There extra events are not important for viewing with typical operation of
178 \ctsim.}
179
180 \twocolitem{\textbf{Show startup tips}}{This option is initially turned on in
181 new installations. With this option set, \ctsim\ will display
182 helpful tips when \ctsim\ is started.}
183
184 \twocolitem{\textbf{Run background tasks}}{This option is initially turned off in
185 new installations. With this option set, \ctsim\ execute lengthy calculations in the
186 background. A background window will appear when processes are running in the background
187 and will disappear when no background processes are executing. This background window shows
188 the status and progress of all background processes.}
189
190 \end{twocollist}
191
192 \subsection{File - Open}
193 This command opens a file section dialog box. Of special consideration
194 is the \texttt{File Type} combo box on the bottom of the dialog. You need
195 to set the this combo box to the type of file that you wish to open.
196
197 \subsection{File - Save}
198 This command saves the contents of the active window. If the window hasn't
199 been named, a dialog box will open asking for the file name to use.
200
201 \subsection{File - Close}
202 As one would expect, this closes the active window. If the contents of the window have not been
203 saved and the \emph{Advanced Preferences} option \texttt{Ask before closing new documents}
204 is turned on, then you will be prompted if decide if you want to save the contents of the window
205 prior to closing.
206
207 \subsection{File - Save As}
208 Allows the saving of the contents of the active window to any file name.
209
210 \subsection{Help - Contents}
211 This command displays the online help.
212
213 \subsection{Help - Tips}
214 This command displays a dialog with tips on using \ctsim.
215
216 \subsection{Help - Quick Start}
217 This command displays a recommend approach to helping new users learn to use \ctsim.
218
219 \subsection{Help - About}
220 This command shows the version number and operating environment of \ctsim.
221
222
223 \section{Phantom Menus}
224
225 \subsection{Properties}
226 Displays the properties of a phantom which includes:
227
228 \begin{itemize}\itemsep=0pt
229 \item Overall dimensions of a phantom
230 \item A list of all component phantom elements
231 \end{itemize}
232
233 \subsection{Process - Rasterize}\label{IDH_DLG_RASTERIZE}\index{Dialog!Rasterize}
234 This creates an image file from a phantom. Technically, it
235 converts the phantom from a vector (infinite resolution) object
236 into a 2-dimension array of floating-point pixels. The parameters
237 to set are:
238
239 \begin{twocollist}
240 \twocolitem{\textbf{X size}}{Number of columns in image file}
241 \twocolitem{\textbf{Y size}}{Number of rows in image file}
242 \twocolitem{\textbf{Samples per pixel}}{Numbers of samples taken
243 per pixel in both the x and y directions. For example, if the
244 \texttt{Samples per pixel} is set to \texttt{3}, then for every
245 pixel in the image file 9 samples \latexonly{($3\times3$)}\latexignore{(3 x 3)}
246 are averaged.}
247 \end{twocollist}
248
249 \subsection{Process - Projections}\label{IDH_DLG_PROJECTIONS}\index{Dialog!Projections}
250 This command creates a projection file from a phantom. The options
251 available when collecting projections are:
252
253 \begin{twocollist}
254 \twocolitem{\textbf{Geometry}}{Sets the scanner geometry. The available geometries are:
255   \begin{itemize}\itemsep=0pt
256     \item \texttt{Parallel}
257     \item \texttt{Equiangular}
258     \item \texttt{Equilinear}
259   \end{itemize}}
260 \twocolitem{\textbf{Number of detectors}}{Sets the number of
261 detectors in the detector array.}
262
263 \twocolitem{\textbf{Number of views}}{Sets the number of views
264 to collect.}
265
266 \twocolitem{\textbf{Samples per detector}}{Sets the number of
267 samples collected for each detector.}
268
269 \twocolitem{\textbf{View Ratio}}{Sets the field of view as a ratio
270 of the diameter of the phantom.  For normal scanning, use a value of
271 \texttt{1.0}.}
272
273 \twocolitem{\textbf{Scan Ratio}}{Sets the length of scanning as a
274 ratio of the view diameter. For normal scanning, use a value of \texttt{1.0}.}
275
276 \twocolitem{\textbf{Focal length ratio}}{Sets the distance between the
277 radiation source and the center of the phantom as a
278 ratio of the radius of the phantom. For parallel geometries, a value
279 of \texttt{1.0} is optimal. For other
280 geometries, this should be at least \texttt{2.0} to avoid artifacts.}
281 \end{twocollist}
282
283 \textbf{Advanced Options}
284
285 These options are visible only if \emph{Advanced Options} has been
286 selected in the \texttt{File - Preferences} dialog. These parameters
287 default to optimal settings and don't need to be adjusted except
288 by expert users.
289
290 \begin{twocollist}
291 \twocolitem{\textbf{Rotation Angle}}{Sets the rotation amount as a
292 fraction of a circle. For parallel geometries use a rotation angle of \texttt{0.5}
293 and for equilinear and equiangular geometries use a rotation angle
294 of \texttt{1}. Using any other rotation angle will lead to artifacts.}
295 \end{twocollist}
296
297
298
299 \section{Image Menus}
300 \subsection{File - Properties}
301 Properties of image files include:
302 \begin{itemize}\itemsep=0pt
303   \item Whether the image is real or complex-valued.
304   \item Numeric statistics (minimum, maximum, mean, median, mode, and standard deviation).
305   \item History labels (text descriptions of the processing for this image).
306 \end{itemize}
307
308 \subsection{File - Export}\label{IDH_DLG_EXPORT}\index{Image!Export}
309 This command allows for exporting image files to a standard
310 graphics file format. This is helpful when you want to take an
311 image and import it into another application. The current
312 \helprefn{intensity scale}{intensityscale} is used when exporting
313 the file. The supported graphic formats are:
314
315 \begin{twocollist}
316 \twocolitem{\textbf{PNG}}{Portable Network Graphics format. This uses 8-bits or
317 256 shades of gray.}
318 \twocolitem{\textbf{PNG-16}}{This is a 16-bit version of PNG which allows for
319 65536 shades of gray.}
320 \twocolitem{\textbf{PGM}}{Portable Graymap format. This is a common format used on
321 UNIX systems.}
322 \twocolitem{\textbf{PGM ASCII}}{ASCII version of PGM.}
323 \end{twocollist}
324
325
326 \subsection{View}
327 \subsubsection{Intensity Scale}\label{intensityscale}\index{Intensity scale}
328 These commands are used change the intensity scale for viewing the image.
329 These commands do not change the image data. When the minimum value is
330 set, then the color pure black is assigned to that image value. Similarly,
331 when the maximum value is set, the the color pure white is assigned to that
332 image value.
333
334 Changing the intensity scale is useful when examining different image features.
335 In clinical medicine, the intensity scale is often changed to examine bone
336 (high value) versus soft-tissue (medium value) features.
337
338 \subsubsection{Set}\label{IDH_DLG_MINMAX}
339 This command displays a dialog box that sets the lower
340 and upper values to display.
341
342 \subsubsection{Auto}\label{IDH_DLG_AUTOSCALE}\index{Auto scale}
343 This command displays a dialog box that allows \ctsim\ to automatically
344 make an intensity scale. The parameters that \ctsim\ needs to make this
345 automatic scale are:
346
347 \begin{twocollist}
348 \twocolitem{\textbf{Center}}{This sets the center of the intensity scale. Currently,
349 \ctsim\ allows you to use either the mean, mode, or median of the image
350 as the center of the intensity scale.}
351
352 \twocolitem{\textbf{Width}}{This sets the half-width of the intensity scale. The half-width
353 is specified as a multiple of the standard deviation.}
354 \end{twocollist}
355
356 As an example, if \texttt{median} is selected as the center and
357 \texttt{0.5} is selected as the width, the the minimum value will
358 be \latexonly{$median - 0.5 \times standardDeviation$}\latexignore{\emph{median - 0.5 x standardDeviation}}
359 and the maximum value will be \latexonly{$median + 0.5 \times standardDeviation$.}\latexignore{\emph{
360 median + 0.5 x standardDeviation}.}
361
362 \subsubsection{Full}
363 This command resets the intensity scale to the full scale of the image.
364
365 \subsection{Image}
366 These commands create a new image based upon the current image,
367 and for some commands, also upon a comparison image.
368
369 \subsubsection{Add, Subtract, Multiply, Divide}
370 These are simple arithmetic operations. \ctsim\ will display a dialog
371 box showing all of the currently opened image files that are the
372 same size as the active image. After the selection of a compatible image,
373 \ctsim\ will perform the arithmetic operation on the two images and
374 make a new result image.
375
376 \subsubsection{Image Size}
377 This command will generate a new image based on the current image. The new
378 image can be scaled to any size. A dialog
379 appears asking for the size of the new image. Bilinear interpolation
380 is used when calculating the new image.
381
382 \subsubsection{3-D Conversion}
383 This command generates a 3-dimensional view of the current phantom. This view can be
384 rotated in three dimensions. The left and right arrow control the z-axis
385 rotation and the up and down arrows control the x-axis rotation. The y-axis
386 rotation is controlled by the \texttt{T} and \texttt{Y} keys. Other options
387 are presented on the \texttt{View} menu and include:
388
389 \begin{itemize}\itemsep=0pt
390 \item Surface plot versus wireframe plot.
391 \item Smooth shading versus flat shading.
392 \item Lighting on or off.
393 \item Color scale on or off.
394 \end{itemize}
395
396 \subsection{Filter}\index{Image!Filter}
397 These commands filter and modify the image
398
399 \subsubsection{Arithmetic}
400 These commands operate on the image on a pixel-by-pixel basis. The commands
401 support both real and complex-valued images. The available arithmetic commards are:
402
403 \begin{twocollist}
404   \twocolitem{\textbf{Invert}}{Negate pixel values.}
405   \twocolitem{\textbf{Log}}{Take natural logrithm of pixel values.}
406   \twocolitem{\textbf{Exp}}{Take natural exponent of pixel values.}
407   \twocolitem{\textbf{Square}}{Take square of pixel values.}
408   \twocolitem{\textbf{Square root}}{Take square root of pixel values.}
409 \end{twocollist}
410
411
412 \subsubsection{Frequency Based}
413 These commands perform Fourier and inverse Fourier transformations of
414 images. By default, the transformations will automatically convert
415 images between Fourier to natural orders as expected. For example, \texttt{2-D FFT}
416 will transform the points into natural order after the Fourier transform.
417 Similarly the inverse, \texttt{2-D IFFT}, will reorder the points from
418 natural order to Fourier order before applying the inverse Fourier transformation.
419
420 As you would expect, images that undergo frequency filtering will be complex-valued
421 after than filtering. Only the real component is shown by \ctsim. However, \ctsim\ does
422 have options for converting a complex-valued image into a real-valued image via
423 the \texttt{Magnitude} and \texttt{Phase} filtering commands.
424
425 The available frequency-based filtering commards are:
426
427 \begin{itemize}\itemsep=0pt
428 \item 2-D FFT
429 \item 2-D IFFT
430 \item FFT Rows
431 \item IFFT Rows
432 \item FFT Columns
433 \item IFFT Columns
434 \item 2-D Fourier
435 \item 2-D Inverse Fourier
436 \item Shuffle Fourier to Natural Order
437 \item Shuffle Natural to Fourier Order
438 \item Magnitude
439 \item Phase
440 \end{itemize}
441
442 \subsection{Analyze - Plot}
443 The commands plot rows and columns of images. There are commands
444 that perform FFT transformations prior to plotting. To select
445 the row or column to plot, click the left mouse button over the
446 desired cursor point.
447
448 The available plot commands are:
449 \begin{itemize}\itemsep=0pt
450 \item Plot Row
451 \item Plot Column
452 \item Plot Histogram
453 \item Plot FFT Row
454 \item Plot FFT Col
455 \end{itemize}
456
457 \subsection{Analyze - Compare}\label{IDH_DLG_COMPARISON}\index{Image!Comparison}
458 This command performs statistical comparisons between two images. An option
459 also exists for generating a difference image from the two input images.
460
461 The three distance measures reported are:
462 \begin{itemize}\itemsep=0pt
463 \item[] \textbf{$d$}\quad The normalized root mean squared distance measure.
464 \item[] \textbf{$r$}\quad The normalized mean absolute distance measure.
465 \item[] \textbf{$e$}\quad The worst case distance measure over a \latexonly{$2\times2$}\latexignore{\emph{2 x 2}} pixel area.
466 \end{itemize}
467
468 There are also commands for comparison plotting of rows and columns from two images.
469 This is quite helpful when comparing a phantom to a reconstruction. As with plotting
470 of rows and columns, click the left mouse button over the desired cursor point to
471 choose which row and column to plot.
472
473
474 \section{Projection Menus}
475
476 \subsection{File - Properties}
477 The displayed properties include:
478
479 \begin{itemize}\itemsep=0pt
480 \item Number of detectors in the projections.
481 \item Number of views.
482 \item The parameters used when generating the projections from the phantom.
483 \end{itemize}
484
485 \subsection{Process - Convert Polar}\label{IDH_DLG_POLAR}\index{Polar conversion}
486 This command creates an image file with the polar conversion of the projection data.
487 The parameters to set are:
488
489 \begin{twocollist}
490 \twocolitem{\textbf{X Size}}{Number of columns in output image.}
491 \twocolitem{\textbf{Y Ssize}}{Number of rows in output image.}
492 \twocolitem{\textbf{Interpolation}}{Selects the interpolation method.
493 Currently, the \texttt{bilinear} option provides the highest
494 quality interpolation.}
495 \end{twocollist}
496
497 \subsection{Process - Convert FFT Polar}
498 The parameters for this option are the same as the \helprefn{Convert
499 Polar Dialog}{convertpolardialog}. For this command, though, the
500 projections are Fourier transformed prior to conversion to polar
501 image.
502
503 \subsection{Reconstruct - Filtered Backprojection}\label{IDH_DLG_RECONSTRUCTION}\index{Dialog!Reconstruction}
504 This command displays a dialog to set the parameters for reconstructing an image from projections
505 using the filtered backprojection technique. The parameters available are:
506
507 \begin{twocollist}
508 \twocolitem{\textbf{Filter}}{Selects the filter to apply to each
509 projection. To properly reconstruct an image, this filter should
510 consist of the the absolute value of distance from zero
511 frequency optionally multiplied by a smoothing filter. The optimal
512 filters to use are:
513 \begin{itemize}\itemsep=0pt
514 \item \texttt{abs\_bandlimit}
515 \item \texttt{abs\_hamming}
516 \item \texttt{abs\_hanning}
517 \item \texttt{abs\_cosine}
518 \end{itemize}
519 } \twocolitem{\textbf{Hamming parameter}}{Sets the alpha level for
520 Hamming window. This parameter adjusts the smoothing of the Hamming
521 filter and can range from \texttt{0} to \texttt{1}.
522 At a setting of \texttt{1}, the Hamming filter is the same as the bandlimit filter.
523 At a setting of \texttt{0.54}, the Hamming filter is the same as the Hanning
524 window.}
525 \twocolitem{\textbf{Filter Method}}{Selects the filtering method.
526 For large numbers of detectors, the FFT-based filters are preferred whereas for
527 smaller numbers of detectors \texttt{convolution} can be
528 faster. When \emph{Advanced Options} have been turned off, this menu only shows
529 the two basic choices: \texttt{convolution} and \texttt{FFT}. However, when
530 \emph{Advanced Options} have been turned on, additional selections are available as
531 discussed in the next section.
532 }
533 \twocolitem{\textbf{Interpolation}}{Interpolation technique during backprojection.
534 \texttt{cubic} has optimal quality when the
535 data is smooth. Smooth data is obtained by taking many projections and/or
536 using a smoothing filter. In the absence of smooth data, \texttt{linear} gives better results and
537 is also many times faster than cubic interpolation.
538
539 \begin{itemize}\itemsep=0pt
540 \item \texttt{nearest} - No interpolation, selects nearest point.
541 \item \texttt{linear} - Uses fast straight line interpolation.
542 \item \texttt{cubic} - Uses cubic interpolating polynomial.
543 \end{itemize}
544 }
545 \end{twocollist}
546
547 \textbf{Advanced Options}
548
549 These options are visible only if \emph{Advanced Options} has been
550 selected in the \texttt{File - Preferences} dialog. These parameters
551 default to optimal settings and don't need to be adjusted except
552 by expert users.
553
554 \begin{twocollist}
555 \twocolitem{\textbf{Filter Method}}{Selects the filtering method.
556 The general comments about this parameter given the previous section still apply.
557 With \emph{Advanced Options} on, the full set of filter methods are available:
558 \begin{itemize}\itemsep=0pt
559 \item \texttt{convolution}
560 \item \texttt{fourier} - Uses simple Fourier transform.
561 \item \texttt{fourier-table} - Optimizes Fourier transform by precalculating trigometric functions.
562 \item \texttt{fftw} - Uses complex-valued Fourier transform with the \emph{fftw} library.
563 \item \texttt{rfftw} - Uses optimized real/half-complex Fourier transform.
564 \end{itemize}
565 }
566 \twocolitem{\textbf{Backprojection}}{Selects the backprojection
567 technique. A setting of \texttt{idiff} is optimal.
568 \begin{itemize}\itemsep=0pt
569 \item \texttt{trig} - Use trigometric functions at each image point.
570 \item \texttt{table} - Use precalculated trigometric tables.
571 \item \texttt{diff} - Use difference method to iterate within image.
572 \item \texttt{idiff} - Use integer iteration techique.
573 \end{itemize}
574 }
575
576 \twocolitem{\textbf{Filter Generation}}{Selects the filter
577 generation. With convolution, \texttt{direct} is the proper method
578 to select. With any of the frequency methods,
579 \texttt{inverse-fourier} is the best method.
580 \begin{itemize}\itemsep=0pt
581 \item \texttt{direct}
582 \item \texttt{inverse-fourier}
583 \end{itemize}
584 }
585
586 \twocolitem{\textbf{Zeropad}}{Zeropad factor when using
587 frequency-based filtering. A setting of \texttt{1} is optimal whereas
588 a setting of \texttt{0} disables zero padding. Settings greater than \texttt{1}
589 perform larger amounts of zero padding but without any significant benefit.}
590
591 \end{twocollist}
592
593 \section{Plot Menus}
594 \subsection{File - Properties}
595 The displayed properties include:
596
597 \begin{itemize}\itemsep=0pt
598 \item the number of curves in the plot and the number of points per curve.
599 \item the EZPlot commands used to format the plot are displayed.
600 \item history labels from the originating image(s) and the plot function.
601 \end{itemize}
602
603 \subsection{View Menu}
604 These commands set the scaling for the y-axis. They are analogous
605 to the options used for setting the intensity scale for images.
606
607 \subsubsection{Set}
608 This command sets the upper and lower limits for the y-axis.
609
610 \subsubsection{Auto}
611 This command automatically sets the upper and lower limits for the
612 y-axis. Please refer to the image file \helpref{\texttt{View - Auto}}{IDH_DLG_AUTOSCALE}
613 documentation for the details.
614
615 \subsubsection{Full}
616 The command resets the upper and lower limits of the y-axis to the
617 minimum and maximum values of the curves.