r521: no message
[ctsim.git] / doc / ctsim-gui.tex
1 \chapter{The Graphical User Interface}\label{ctsim}\index{ctsim}%
2 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
3 \setfooter{\thepage}{}{}{}{}{\thepage}%
4
5 \section{Overview}
6 \ctsim\ is the graphical shell for the CTSim project. It utilizes
7 using 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 This graphical includes all of the functionality of the
12 command-line interface \helprefn{\ctsimtext}{ctsimtext} as well as
13 great image processing and visualization features.
14
15 \ctsim\ can open projection files, image files, phantom files, and
16 plot files.
17
18 \usage \texttt{ctsim [files to open...]}
19
20 You can invoke \ctsim\ by itself on the command line, or include
21 on the command-line any number of files that you want \ctsim\ to
22 automatically open.
23
24 \section{File Types Support}
25
26 Phantom and plot files are stored as ASCII text. In contrast,
27 image and projection files are stored in binary format. \ctsim
28 incorporates logic so that binary files are cross-platform
29 compatible between both little and big endian architectures.
30
31 \subsection{Phantom}
32 Besides loading phantom files from the disk, the Herman and
33 Shepp-Logan phantoms are built-in to \ctsim. Phantom files can be
34 read and stored on the disk. However, a text editor is required to
35 create and edit these files.
36
37 \subsection{Image}
38 Image files are 2-dimensional files that store 4-byte floating
39 point values. Images files can be either real or complex valued.
40 Typically, all images are real except for images that have been
41 processed by Fourier transforms. As you might expect,
42 complex-valued images are twice the size of real-valued images
43 since both a real and imaginary component need to be store.
44
45 Images files can also store any number of text labels. \ctsim\ uses
46 these labels for storing history information regarding
47 the creation and modifications of images.
48
49 When complex-valued images are viewed on the screen, only the real
50 component is displayed.
51
52 \subsection{Projection}
53 Projection files are created from Phantom files during the
54 projection process. Numerous options are available for the
55 creation of the these files. The files are stored in a binary
56 format with cross-platform compatibility on little and big endian
57 architectures.
58
59 \subsection{Plot}
60 Plot files are created by \ctsim\ during analysis of image files.
61 They can be read and stored on the disk. They are stored as ASCII
62 files for easy cross-platform support.
63
64 \section{Phantom Menus}
65
66 \subsection{Properties}
67 Displays the properties of a phantom which includes:
68
69 \begin{itemize}\itemsep=0pt
70 \item Overall dimensions of a phantom
71 \item A list of all component phantom elements
72 \end{itemize}
73
74 \subsection{Rasterize Dialog}
75 This creates an image file from a phantom. Technically, it
76 converts the phantom from a vector (infinite resolution) object
77 into a 2-dimension array of floating-point pixels. The parameters
78 to set are:
79
80 \begin{twocollist}
81 \twocolitemruled{\textbf{Parameter}}{\textbf{Options}}
82 \twocolitem{\texttt{X size}}{Number of columns in image file}
83 \twocolitem{\texttt{Y size}}{Number of rows in image file}
84 \twocolitem{\texttt{Samples per pixel}}{Numbers of samples taken
85 per pixel in both the x and y directions. For example, if the
86 \texttt{Samples per pixel} is set to \texttt{3}, then for every
87 pixel in the image file 9 samples (3 x 3) are averaged.}
88 \end{twocollist}
89
90 \subsection{Projection Dialog}
91 This creates a projection file from a phantom. The options
92 available when collecting projections are:
93
94 \begin{twocollist}
95 \twocolitem{\textbf{Geometry}}{
96   \begin{itemize}\itemsep=0pt
97     \item Parallel
98     \item Equiangular
99     \item Equilinear
100   \end{itemize}}
101 \twocolitem{\textbf{Number of detectors}}{Sets the number of
102 detectors in the detector array.}
103
104 \twocolitem{\textbf{Number of views}}{Sets the number of views
105 collected}
106
107 \twocolitem{\textbf{Samples per detector}}{Sets the number of
108 samples collected for each detector}
109
110 \twocolitem{\textbf{View Ratio}}{Sets the field of view as a ratio
111 of the diameter of the phantom.  For normal scanning, a value of
112 1.0 is fine.}
113
114 \twocolitem{\textbf{Scan Ratio}}{Sets the length of scanning as a
115 ratio of the view diameter. For normal scanning, a value of 1.0 is
116 fine.}
117
118 \twocolitem{\textbf{Focal length ratio}}{Sets the distance of the
119 radiation source and detectors from the center of the object as a
120 ratio of the radius of the object.
121
122 For parallel geometries, a value of 1.0 is fine. For other
123 geometries, this should be at least 2.0 to avoid artifacts.}
124 \end{twocollist}
125
126 \subsection{Advanced Options}
127 \begin{twocollist}
128 \twocolitem{\textbf{Rotation Angle}}{Sets the rotation amount as a
129 multiple of pi. For parallel geometries use a rotation angle of 1
130 and for equilinear and equiangular geometries use a rotation angle
131 of 2. Using any other rotation angle will lead to artifacts.}
132 \end{twocollist}
133
134
135
136 \section{Image Menus}
137 \subsection{File - Properties}
138 Properties of image files include
139 \begin{itemize}\itemsep=0pt
140   \item Whether the image is real or complex valued
141   \item Numeric statistics
142   \item Image file labels
143 \end{itemize}
144
145 \subsection{File - Export}
146 This command allows for exporting image files to a standard
147 graphics file format. This is helpful when you want to take an
148 image and import it into another application. The current
149 \helprefn{intensity scale}{intensityscale} is used when exporting
150 the file. The support file formats are:
151
152 \begin{description}\itemsep=0pt
153 \item[PNG]Portable Network Graphics format. This uses 8-bits or
154 256 shades of gray.
155
156 \item[PNG-16]This is a 16-bit version of PNG which allows for
157 65536 shades of gray.
158 \item[PGM]Portable Graymap format. This is a common format used on
159 UNIX systems.
160 \item[PGM]ASCII version of PGM.
161 \end{description}
162
163
164 \subsection{View}\label{intensityscale}
165 These options are for change the intensity scale for viewing the image.
166 They do not change the image data.
167 \subsubsection{Set}
168 \subsubsection{Auto}
169 \subsubsection{Full}
170 This resets the intensity scale to the full scale of the image.
171
172 \subsection{Image}
173 These commands create a new image based upon the current image,
174 and for some commands, also a comparison image.
175
176 \subsubsection{Add, Subtract, Multiply, Divide}
177
178 \subsubsection{Image Size}
179
180 \subsubsection{3-D Conversion}
181 Generates a 3-dimensional view of the current phantom.
182
183 \subsection{Filter}
184 These commands filter and modify the image.
185
186 \subsubsection{Arithmetic}
187
188 \subsubsection{Frequency Based}
189
190 \subsection{Analyze}
191 These commands are used for analyzing an image.
192
193 \subsubsection{Plotting}
194
195 \subsubsection{Image Comparison}
196
197 \section{Projection Menus}
198
199 \subsection{File - Properties}
200
201 \subsection{Process - Convert Polar Dialog}\label{convertpolardialog}
202 The parameters are \texttt{xsize}, \texttt{ysize}, and \texttt{interpolation}.
203 The \texttt{xsize} and \texttt{ysize} parameters set the size of the
204 resulting image file. The \texttt{interpolation} parameter selects the
205 interpolation method. Currently, the \texttt{bilinear} option provides
206 the highest quality interpolation.
207
208 \subsection{Process - Convert FFT Polar Dialog}
209 The parameters for this option are the same as \helprefn{Convert
210 Polar Dialog}{convertpolardialog}. For this command, though, the
211 projections are Fourier transformed prior to conversion to polar
212 image.
213
214 \subsection{Reconstruct - Filtered Backprojection Dialog}
215 This dialog sets the parameters for reconstructing an image from projections
216 using the Filtered Backprojection technique. The parameters are identical
217 to those for the \helprefn{pjrec}{pjrec} program.
218
219 \section{Plot Menus}
220 \subsection{File - Properties}
221
222 \subsection{File - Save}
223 Plot files can be saved. They are saved in an ASCII text format.
224
225 \subsection{View Menu}
226 These commands set the scaling for the y-axis.
227 \subsubsection{Set}
228 \subsubsection{Auto}
229 \subsubsection{Full}