r449: Broken .tex file into chapters
[ctsim.git] / doc / tex2rtf / ctsim-textui.tex
1 \chapter{ctsimtext}\label{ctsimtext}\index{ctsimtext}%
2 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
3 \setfooter{\thepage}{}{}{}{}{\thepage}%
4
5 \ctsimtext is a master shell for all of the command-line utilities. 
6
7 \usage
8 \ctsimtext can be executed without any parameters. In that case, \ctsimtext
9 offers a command-line to enter the function-names and their parameters. The output of the command is displayed. Further commands may be given to \ctsimtext. The shell is exited by the {\tt quit} command.
10
11 \ctsimtext can also be called to execute a single command. This is especially useful for batch files containing multiple \ctsimtext commands. This is invoked by calling \par
12 {\tt ctsimtext function-name parameters...}.
13
14 The available functions are:
15
16 \section{if1}\label{if1}\index{ctsimtext,if1}%
17 Perfoms math functions on a single image.
18
19 \usage
20 \begin{itemize}\itemsep=0pt
21   \item --invert
22   \item --log
23   \item --exp
24   \item --sqr
25   \item --sqrt
26 \end{itemize}
27
28 \section{if2}\label{if2}\index{ctsimtext,if2}%
29 Perfoms math functions on a two images.
30
31 \usage
32 \begin{itemize}\itemsep=0pt
33   \item --add
34   \item --sub
35   \item --mul
36   \item --comp
37   \item --column-plot
38   \item --row-plot
39 \end{itemize}
40
41 \section{ifexport}\label{ifexport}\index{ctsimtext,ifexport}%
42 Export an imagefile to a standard graphics file.
43
44 \usage
45 \begin{itemize}\itemsep=0pt
46   \item --format
47   \begin{itemize}\itemsep=0pt
48     \item --pgm
49     \item --pgmasc
50     \item --png
51     \item --png16
52   \end{itemize}
53   \item --center
54   \begin{itemize}\itemsep=0pt
55     \item median
56     \item mode
57     \item mean
58   \end{itemize}
59   \item --auto
60   \begin{itemize}\itemsep=0pt
61      \item --full
62      \item --std0.1
63      \item --std0.5
64      \item --std1
65      \item --std2
66      \item --std3
67   \end{itemize}
68   \item --scale
69   \item --min
70   \item --max
71 \end{itemize}
72
73 \section{ifinfo}\label{ifinfo}\index{ctsimtext,ifinfo}%
74
75 Displays information about an imagefile.
76
77 \usage
78 \begin{itemize}\itemsep=0pt
79   \item --labels
80   \item --no-labels
81   \item --stats
82   \item --no-stats
83   \item --help
84 \end{itemize}
85
86 \section{phm2pj}\label{phm2pj}\index{ctsimtext,phm2pj}%
87 Simulates collection of X-rays data (projections) around a phantom object.
88
89 \usage
90 phm2pj projection-file-name number-of-detectors number-of-views [options...]
91 \begin{itemize}\itemsep=0pt
92   \item --phantom
93   Select a standard phantom 
94   \begin{itemize}\itemsep=0pt
95     \item herman
96     \item herman-b
97     \item shepp-logan
98     \item shepp-logan-b
99   \end{itemize}
100
101   \item --phmfile
102   Load a phantom definition definition
103
104   \item --geometry
105   \begin{itemize}\itemsep=0pt
106     \item parallel
107     \item equiangular
108     \item equilinear
109   \end{itemize}
110
111   \item --nray
112     Number of samples per each detector
113
114   \item --rotangle
115     Sets the rotation amount as a multiple of pi. For parallel geometries use
116 a rotation angle of 1 and for equilinear and equiangular geometries use a rotation angle of 2.
117
118   \item --field-of-view
119     Sets the field of view as a ratio of the diameter of the phantom. For parallel geometries, using a value of 1.0 is fine. For other geometies, this should be at least 1.3 to avoid artifacts.
120
121   \item --focal-length
122     Sets the distance of the radiation source and detectors from the center of the object as a ratio of the radius of the object. For parallel geometries, a value of 1.0 is fine. For other geometries, this should be at least 2.0 to avoid artifacts.
123 \end{itemize}
124
125 The Herman phantom is taken with permission from Gabor Hermans 1980 book\cite{HERMAN80}. The Shepp-Logan phantom was published in 1974\cite{SHEPP74}.
126
127 \section{phm2if}\label{phm2if}\index{ctsimtext,phm2if}%
128 Converts a geometric phantom object into an imagefile. The size of the
129 imagefile in pixels must be specified as well as the number of samples
130 to average per pixel.
131
132 \usage
133 \begin{itemize}\itemsep=0pt
134   \item --nsamples
135 \end{itemize}
136
137 \section{pj2if}\label{pj2if}\index{ctsimtext,pj2if}%
138 Convert a projection file into an imagefile.
139
140 \usage
141 \begin{itemize}\itemsep=0pt
142 \item --help    Print brief online help
143 \end{itemize}
144
145 \section{pjinfo}\label{pjinfo}\index{ctsimtext,pjinfo}%
146 Displays information about a projection file.
147
148 \usage
149 \begin{itemize}\itemsep=0pt
150   \item --binaryheader
151   \item --binaryview
152   \item --startview
153   \item --endview
154   \item --dump
155 \end{itemize}
156
157 \section{pjrec}\label{pjrec}\index{ctsimtext,pjrec}%
158 Reconstructs the interior of an object from a projection file.
159
160 \usage
161 \begin{twocollist}
162 \twocolitemruled{{\bf Parameter}}{{\bf Options}}
163 \twocolitem{{\bf --filter}}
164 {Selects which filter to apply to each projection. To properly reconstruct an image, this filter should be multiplied 
165 by the absolute value of distance from zero frequency.
166 \begin{itemize}\itemsep=0pt
167 \item abs\_bandlimit
168 \item abs\_cosine
169 \item abs\_hamming
170 \end{itemize}
171 }
172 \twocolitem{{\bf --filter-parameter}}{Sets the alpha level for Hamming
173   window. At setting of 0.54, this equals the Hanning window.}
174
175 \twocolitem{{\bf --filter-method}}{Selects the filtering method. For large numbers of detectors, {\tt rfftw} is optimal. For smaller numbers of detectors, {\tt convolution} might be a bit faster. 
176 \begin{itemize}\itemsep=0pt
177 \item convolution
178 \item fourier
179 \item fourier\_table
180 \item fftw
181 \item rfftw
182 \end{itemize}
183 }
184
185 \twocolitem{{\bf --filter-generation}}{Selects the filter generation. With convolution, {\tt direct} is the proper method to select. With any of the frequency methods, {\tt inverse-fourier} is the best method.
186 \begin{itemize}\itemsep=0pt
187 \item direct
188 \item inverse-fourier
189 \end{itemize}
190 }
191 \twocolitem{{\bf --interpolation}}{Interpolation technique. {\tt linear} is optimal.
192 \begin{itemize}\itemsep=0pt
193 \item nearest
194 \item linear
195 \end{itemize}
196 }    
197   \twocolitem{{\bf -backprojection}}{Selects the backprojection technique. A setting of {\tt idiff3} is optimal.
198 \begin{itemize}\itemsep=0pt
199 \item trig
200 \item table
201 \item diff
202 \item diff2
203 \item idiff2
204 \item idiff3
205 \end{itemize}
206 }
207 \twocolitem{{\bf --zeropad}}{ Zeropad factor. A setting of {\tt 1} is optimal.}
208
209 \twocolitem{{\bf --preinterpolate}}{Selects preinterpolation interpolation technique and sets the preinterpolation factor. Currently, this is experimental and does not work well.}
210 \end{twocollist}