r548: no message
[ctsim.git] / doc / ctsim-gui.tex
index c33cffd8f10188e36b52ecfb6e7be1c68ef4e0fd..f6b7e6058361235f8f39298d90ae560f03be0f24 100644 (file)
@@ -21,45 +21,45 @@ files, phantom files, and plot files.
 \section{File Types}\index{File types}
 
 \subsection{Phantom}
-Besides loading phantom files from the disk, the Herman and
-Shepp-Logan phantoms are built-in to \ctsim. Phantom files can be
-read and stored on the disk. Phantom files are stored in a simple
+Besides loading phantom files from the disk, the Herman\cite{HERMAN80} and
+Shepp-Logan\cite{SHEPP74} phantoms are built-in to \ctsim. Phantom files can be
+read from and written to the disk. Phantom files are stored in a simple
 ASCII format. A text editor is required to
 create and edit these files.
 
 \subsection{Image}
 Image files are 2-dimensional files that store 4-byte floating
-point values. Images files can be either real or complex valued.
-Typically, all images are real except for images that have been
+point values. Images files can be either real or complex-valued.
+Typically, all images are real-valued except for images that have been
 processed by Fourier transforms. As you might expect,
 complex-valued images are twice the size of real-valued images
-since both a real and imaginary component need to be store. When
+since both a real and imaginary component need to be stored. When
 complex-valued images are viewed on the screen, only the real
 component is displayed.
 
 Images files can also store any number of text labels. \ctsim\ uses
-these labels for storing history information regarding
+these labels for recording history information regarding
 the creation and modifications of images.
 
 \subsection{Projection}
 Projection files are created from phantom files during the
 projection process. Numerous options are available for the
 creation of the these files. The files are stored in a binary
-format with cross-platform compatibility on little and big endian
+format with cross-platform compatibility on little and big-endian
 architectures.
 
 \subsection{Plot}
 Plot files are created by \ctsim\ during analysis of image files.
-They can be read and stored on the disk. They are stored as ASCII
+They can be read from and written to the disk. They are stored as ASCII
 files for easy cross-platform support and editing.
 
 \section{Global Menu Commands}
 These global commands are present on the menus of all windows.
 
 \subsection{File - Create Phantom}\label{IDH_DLG_PHANTOM}\index{Dialog!Create phantom}
-This command brings up a dialog box showing the phantoms that are preprogrammed
+This command brings up a dialog box showing the phantoms that are pre-programmed
 into \ctsim. After selecting one of these phantoms, the new window with that
-phantom will be generated. The preprogrammed phantoms are:
+phantom will be generated. The pre-programmed phantoms are:
 
 \begin{twocollist}
 \twocolitem{\textbf{Herman}}{The Herman head phantom\cite{HERMAN80}}
@@ -76,7 +76,23 @@ The center of the filter is at the center of the image.
 These filters can be created in their natural frequency domain or in their spatial domain.
 
 \begin{twocollist}
-\twocolitem{\textbf{Filter}}{Selects the filter to generate.}
+\twocolitem{\textbf{Filter}}{Selects the filter to generate. The available filters are:
+
+\begin{itemize}\itemsep=0pt
+\item $|w|$ Bandlimit
+\item $|w|$ Hamming
+\item $|w|$ Hanning
+\item $|w|$ Cosine
+\item $|w|$ Sinc
+\item Shepp
+\item Bandlimit
+\item Sinc
+\item Hamming
+\item Hanning
+\item Cosine
+\item Triangle
+\end{itemize}
+}
 \twocolitem{\textbf{Domain}}{Selects either the \texttt{Frequency} or \texttt{Spatial} domains. The filters have the
 frequency domain as their natural domain.}
 \twocolitem{\textbf{X Size}}{Number of columns in the output image.}
@@ -87,9 +103,11 @@ At a setting of \texttt{1}, the Hamming filter is the same as the bandlimit filt
 At a setting of \texttt{0.54}, the Hamming filter is the same as the Hanning
 window.}
 \twocolitem{\textbf{Bandwidth}}{Sets the bandwidth of the filter.}
+\end{twocollist}
+\begin{twocollist}
 \twocolitem{\textbf{Axis (input) Scale}}{Sets the scale for the filter input. By default, the input to the filter is
 the distance in pixels from the center of the image. By changing this value, one can set a scale the input to the filter.
-For example, if the output image is \texttt{101} pixels and thus the center of the image is at \texttt{(50,50)}, then a pixel
+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
 lying at point \texttt{100,50} would be 50 units from the center of the filter. By applying an \texttt{Axis scale} of
 \texttt{0.1}, then that point would be scaled to 5 units from the center of the filter.}
 \twocolitem{\textbf{Filter (output) Scale}}{Multiplies the output of the filter by this amount. By default, the filter has a maximum
@@ -120,7 +138,7 @@ be responsible for saving any files that you create.}
 \subsection{File - Open}
 This command opens a file section dialog box. Of special consideration
 is the \texttt{File Type} combo box on the bottom of the dialog. You need
-to set the \texttt{File Type} combo box to to the type of file that you wish to open.
+to set the this combo box to the type of file that you wish to open.
 
 \subsection{File - Save}
 This command saves the contents of the active window. If the window hasn't
@@ -136,7 +154,7 @@ Allows the saving of the contents of a window to any filename.
 This command displays the online help.
 
 \subsection{Help - About}
-This command shows the version number of \ctsim.
+This command shows the version number and operating environment of \ctsim.
 
 
 \section{Phantom Menus}
@@ -149,7 +167,7 @@ Displays the properties of a phantom which includes:
 \item A list of all component phantom elements
 \end{itemize}
 
-\subsection{Rasterize Dialog}\label{IDH_DLG_RASTERIZE}\index{Dialog!Rasterize}
+\subsection{Process - Rasterize}\label{IDH_DLG_RASTERIZE}\index{Dialog!Rasterize}
 This creates an image file from a phantom. Technically, it
 converts the phantom from a vector (infinite resolution) object
 into a 2-dimension array of floating-point pixels. The parameters
@@ -165,7 +183,7 @@ pixel in the image file 9 samples \latexonly{($3\times3$)}\latexignore{(3 x 3)}
 are averaged.}
 \end{twocollist}
 
-\subsection{Projection Dialog}\label{IDH_DLG_PROJECTIONS}\index{Dialog!Projections}
+\subsection{Process - Projections}\label{IDH_DLG_PROJECTIONS}\index{Dialog!Projections}
 This creates a projection file from a phantom. The options
 available when collecting projections are:
 
@@ -201,6 +219,11 @@ geometries, this should be at least \texttt{2.0} to avoid artifacts.}
 
 \textbf{Advanced Options}
 
+These options are only visible if \emph{Advanced Options} has been
+selected in the \texttt{File - Preferences} dialog. These parameters
+default to optimal settings and don't need to be adjusted except
+by expert users.
+
 \begin{twocollist}
 \twocolitem{\textbf{Rotation Angle}}{Sets the rotation amount as a
 multiple of \latexonly{$\pi$.}\latexignore{pi.} For parallel geometries use a rotation angle of \texttt{1}
@@ -214,9 +237,9 @@ of \texttt{2}. Using any other rotation angle will lead to artifacts.}
 \subsection{File - Properties}
 Properties of image files include
 \begin{itemize}\itemsep=0pt
-  \item Whether the image is real or complex valued
-  \item Numeric statistics (minimum, maximum, mean, median, mode, and standard deviation)
-  \item History labels (text descriptions of the processing for this image)
+  \item Whether the image is real or complex-valued.
+  \item Numeric statistics (minimum, maximum, mean, median, mode, and standard deviation).
+  \item History labels (text descriptions of the processing for this image).
 \end{itemize}
 
 \subsection{File - Export}\label{IDH_DLG_EXPORT}\index{Image!Export}
@@ -233,24 +256,24 @@ the file. The supported graphic formats are:
 65536 shades of gray.}
 \twocolitem{\textbf{PGM}}{Portable Graymap format. This is a common format used on
 UNIX systems.}
-\twocolitem{\textbf{PGM}}{ASCII version of PGM.}
+\twocolitem{\textbf{PGM ASCII}}{ASCII version of PGM.}
 \end{twocollist}
 
 
 \subsection{View}\label{intensityscale}\index{Intensity scale}
 These commands are used change the intensity scale for viewing the image.
-These commands do not change the image data. When the minimum intensity is
-set, then the color pure black is assigned to that image intensity. Similarly,
-when the maximum intensity is set, the the color pure white is assigned to that
+These commands do not change the image data. When the minimum value is
+set, then the color pure black is assigned to that image value. Similarly,
+when the maximum value is set, the the color pure white is assigned to that
 image value.
 
 Changing the intensity scale is useful when examining different image features.
 In clinical medicine, the intensity scale is often changed to examine bone
-(high intensity) verses soft-tissue (medium intensity) features.
+(high value) versus soft-tissue (medium value) features.
 
 \subsubsection{Set}\label{IDH_DLG_MINMAX}
 This command displays a dialog box that allows you to set the lower
-and upper intensities to display.
+and upper values to display.
 
 \subsubsection{Auto}\label{IDH_DLG_AUTOSCALE}
 This command displays a dialog box that allows \ctsim\ to automatically
@@ -267,9 +290,9 @@ is specified as a ratio of the standard deviation.}
 \end{twocollist}
 
 As an example, if \texttt{median} is selected as the center and
-\texttt{0.5} is selected as the width, the the minimum intensity will
+\texttt{0.5} is selected as the width, the the minimum value will
 be \latexonly{$median - 0.5 \times standardDeviation$}\latexignore{\emph{median - 0.5 x standardDeviation}}
-and the maximum will be \latexonly{$median + 0.5 \times standardDeviation$.}\latexignore{\emph{
+and the maximum value will be \latexonly{$median + 0.5 \times standardDeviation$.}\latexignore{\emph{
 median + 0.5 x standardDeviation}.}
 
 \subsubsection{Full}
@@ -293,13 +316,13 @@ appears asking for the size of the new image. Bilinear interpolation
 is used when calculating the new image.
 
 \subsubsection{3-D Conversion}
-Generates a 3-dimensional view of the current phantom. This view can be
+This command generates a 3-dimensional view of the current phantom. This view can be
 rotated in three dimensions. The left and right arrow control the z-axis
-rotation, the up and down arrows control the x-axis rotation. The y-axis
+rotation and the up and down arrows control the x-axis rotation. The y-axis
 rotation is controlled by the \texttt{T} and \texttt{Y} keys. Other options
 are presented on the \texttt{View} menu and include:
 
-\begin{itemize}
+\begin{itemize}\itemsep=0pt
 \item Surface plot versus wireframe plot.
 \item Smooth shading versus flat shading.
 \item Lighting on or off.
@@ -331,17 +354,44 @@ Similarly the inverse, \texttt{2-D IFFT}, will reorder the points from
 natural order to Fourier order before applying the inverse Fourier transformation.
 
 As you would expect, images that undergo frequency filtering will be complex-valued
-images. Normally, only the real component is shown by \ctsim. However, \ctsim\ does
+after than filtering. Normally, only the real component is shown by \ctsim. However, \ctsim\ does
 have options for converting a complex-valued image into a real-valued image via
 the \texttt{Magnitude} and \texttt{Phase} filtering commands.
 
+The available frequency-based filtering commards are:
+
+\begin{itemize}\itemsep=0pt
+\item 2D FFT
+\item 2D IFFT
+\item FFT Rows
+\item IFFT Rows
+\item FFT Columns
+\item IFFT Columns
+\item 2D Fourier
+\item 2D Inverse Fourier
+\item Shuffle Fourier to Natural Order
+\item Shuffle Natural to Fourier Order
+\item Magnitude
+\item Phase
+\end{itemize}
 
 \subsection{Analyze}
 These commands are used for analyzing an image.
 
 \subsubsection{Plotting}
 The commands plot rows and columns of images. There are also commands
-that perform FFT and IFFT transformations prior to plotting.
+that perform FFT and IFFT transformations prior to plotting. To select
+the row or column to plot or compare, click the mouse button over the
+desired cursor point.
+
+The available commands are:
+\begin{itemize}\itemsep=0pt
+\item Plot Row
+\item Plot Column
+\item Plot Histogram
+\item Plot FFT Row
+\item Plot FFT Col
+\end{itemize}
 
 \subsubsection{Image Comparison}\label{IDH_DLG_COMPARISON}\index{Image!Comparison}
 This command performs statistical comparisons between two images. An option
@@ -352,25 +402,33 @@ This is quite helpful when comparing a phantom to a reconstruction.
 
 The three distance measures are:
 
-\begin{twocollist}
-\twocolitem{\textbf{$d$}}{The normalized root mean squared distance measure.}
-\twocolitem{\textbf{$r$}}{The normalized mean absolute distance measure.}
-\twocolitem{\textbf{$e$}}{The worst case distance measure over a \latexonly{$2\times2$}\latexignore{\emph{2 x 2}} pixel area.}
-\end{twocollist}
+\begin{itemize}\itemsep=0pt
+\item[-] \textbf{$d$}\quad The normalized root mean squared distance measure.
+\item[-] \textbf{$r$}\quad The normalized mean absolute distance measure.
+\item[-] \textbf{$e$}\quad The worst case distance measure over a \latexonly{$2\times2$}\latexignore{\emph{2 x 2}} pixel area.
+\end{itemize}
+
+The available commands are:
+\begin{itemize}\itemsep=0pt
+\item Compare Image
+\item Compare Row
+\item Compare Column
+\end{itemize}
 
 \section{Projection Menus}
 
 \subsection{File - Properties}
 The displayed properties include:
 
-\begin{itemize}
+\begin{itemize}\itemsep=0pt
 \item Number of detectors in the projections.
 \item Number of views.
-\item The variables used when generating the projections from the phantom.
+\item The parameters used when generating the projections from the phantom.
 \end{itemize}
 
-\subsection{Process - Convert Polar Dialog}\label{IDH_DLG_POLAR}\index{Polar conversion}
-Creates an image file with the polar conversion of the projection data. The options to set are:
+\subsection{Process - Convert Polar}\label{IDH_DLG_POLAR}\index{Polar conversion}
+This command creates an image file with the polar conversion of the projection data.
+The parameters to set are:
 
 \begin{twocollist}
 \twocolitem{\textbf{X Size}}{Number of columns in output image.}
@@ -380,27 +438,27 @@ Currently, the \texttt{bilinear} option provides the highest
 quality interpolation.}
 \end{twocollist}
 
-\subsection{Process - Convert FFT Polar Dialog}
+\subsection{Process - Convert FFT Polar}
 The parameters for this option are the same as the \helprefn{Convert
 Polar Dialog}{convertpolardialog}. For this command, though, the
 projections are Fourier transformed prior to conversion to polar
 image.
 
-\subsection{Reconstruct - Filtered Backprojection Dialog}\label{IDH_DLG_RECONSTRUCTION}\index{Dialog!Reconstruction}
-This dialog sets the parameters for reconstructing an image from projections
+\subsection{Reconstruct - Filtered Backprojection}\label{IDH_DLG_RECONSTRUCTION}\index{Dialog!Reconstruction}
+This command displays a dialog to set the parameters for reconstructing an image from projections
 using the filtered backprojection technique. The parameters available are:
 
 \begin{twocollist}
-\twocolitem{\textbf{Filter}}{Selects which filter to apply to each
+\twocolitem{\textbf{Filter}}{Selects the filter to apply to each
 projection. To properly reconstruct an image, this filter should
-be consist of the the absolute value of distance from zero
+consist of the the absolute value of distance from zero
 frequency optionally multiplied by a smoothing filter. The optimal
 filters to use are:
 \begin{itemize}\itemsep=0pt
 \item \texttt{abs\_bandlimit}
-\item \texttt{abs\_cosine}
 \item \texttt{abs\_hamming}
 \item \texttt{abs\_hanning}
+\item \texttt{abs\_cosine}
 \end{itemize}
 } \twocolitem{\textbf{Hamming parameter}}{Sets the alpha level for
 Hamming window. This parameter adjusts the smoothing of the Hamming
@@ -416,16 +474,16 @@ the two basic choices: \texttt{convolution} and \texttt{FFT}. However, when
 \emph{Advanced Options} have been turned on, additional selections are available as
 discussed in the next section.
 }
-\twocolitem{\textbf{Interpolation}}{Interpolation technique.
-\texttt{cubic} is optimal when the
+\twocolitem{\textbf{Interpolation}}{Interpolation technique during backprojection.
+\texttt{cubic} has optimal quality when the
 data is smooth. Smooth data is obtained by taking many projections and/or
 using a smoothing filter. In the absence of smooth data, \texttt{linear} gives better results and
 is also many times faster than cubic interpolation.
 
 \begin{itemize}\itemsep=0pt
-\item nearest
-\item linear
-\item cubic
+\item \texttt{nearest} - No interpolation, selects nearest point
+\item \texttt{linear} - Uses fast straight line interpolation
+\item \texttt{cubic} - Uses cubic interpolating polynomial
 \end{itemize}
 }
 \end{twocollist}