r542: no message
authorKevin M. Rosenberg <kevin@rosenberg.net>
Thu, 15 Feb 2001 02:02:05 +0000 (02:02 +0000)
committerKevin M. Rosenberg <kevin@rosenberg.net>
Thu, 15 Feb 2001 02:02:05 +0000 (02:02 +0000)
doc/ctsim-appendix.tex
doc/ctsim-concepts.tex
doc/ctsim-gui.tex
doc/ctsim-install.tex
doc/ctsim-textui.tex
doc/ctsim-web.tex
doc/ctsim.tex
doc/tex2rtf.ini

index a8e90efd8463e787b5c1185e99a39a808fa6c495..2e2aed60b943082c21c49211f16fba8d1700eaf3 100644 (file)
@@ -4,41 +4,30 @@
 \setheader{{\it Appendix \thechapter}}{}{}{\ctsimheadtitle}{}{{\it Appendix \thechapter}}%
 \ctsimfooter%
 
-
 Simple Graphics Package was created in 1980 by Kevin Rosenberg and
-is modelled after the graphics library in Foley and van
+is modelled after the hypothetical graphics library described by Foley and van
 Dam\cite{FOLEY82}. It is designed to be platform-independent.
 
 \section{Flowchart}
-Master coordinate (MC) level \\
-$\hspace{3cm} \downarrow$ \\
-Apply \emph{Current transformation matrix} \\
-$\hspace{3cm} \downarrow$ \\
-World coordinate (WC) level \\
-$\hspace{4cm} \downarrow$ \\
-Clipping against Window \\
-$\hspace{3cm} \downarrow$ \\
-Convert to Normalized device coordinates (NDC) \\
-$\hspace{3cm}  \downarrow$ \\
-Clipping against Viewport \\
-$\hspace{3cm}  \downarrow$ \\
-Convert to Physical device coordinates (PDC) \\
 
+\parbox{11cm}{
+\centerline{Master coordinate (MC) level}
+\centerline{$\downarrow$}
+\centerline{Apply \emph{Current transformation matrix}}
+\centerline{$\downarrow$}
+\centerline{World coordinate (WC) level}
+\centerline{$\downarrow$}
+\centerline{Clipping against Window}
+\centerline{$\downarrow$}
+\centerline{Convert to Normalized device coordinates (NDC)}
+\centerline{$\downarrow$}
+\centerline{Clipping against Viewport}
+\centerline{$\downarrow$}
+\centerline{Convert to Physical device coordinates (PDC)}
+}
 
 \section{Functions}%
 
-\subsection{State functions}
-\begin{twocollist}
-\twocolitem{\texttt{eraseWindow()}}{Clears the screen}
-\twocolitem{\texttt{setColor(color)}}{Set current pen color}
-\twocolitem{\texttt{setLinestyle(style)}}{Set current pen style}
-\twocolitem{\texttt{setLinewidth(width)}}{Set current pen width}
-\twocolitem{\texttt{setTextColor(foreground, background)}}{Set text colors}
-\twocolitem{\texttt{setMarker(type, color)}}{Set marker attibutes}
-\twocolitem{\texttt{setRasterOp(rasterOp)}}{Set raster operator}
-\end{twocollist}
-
-
 \subsection{Master coordinate functions}
 \begin{twocollist}
 \twocolitem{\texttt{setWindow(xmin, ymin, xmax, ymax)}}{Set window for world
@@ -56,7 +45,7 @@ relative to current position}
 \twocolitem{\texttt{polylineAbs(x[], y[], n)}}{Draw a series of lines to absolute position}
 \twocolitem{\texttt{polylineRel(dx[], dy[], n)}}{Draw series of lines relative to current position}
 \twocolitem{\texttt{drawString(str)}}{Draw text string at current positon}
-\twocolitem{\texttt{drawCircle(r}}{Draw circle at current positon}
+\twocolitem{\texttt{drawCircle(r)}}{Draw circle at current positon}
 \twocolitem{\texttt{drawArc(r,start,stop)}}{Draw arc with center at current positon}
 \twocolitem{\texttt{drawRect(xmin,ymin,xmax,ymax)}}{Draw rectangle}
 \end{twocollist}
@@ -94,6 +83,17 @@ coordinates to NDC}
 coordinates}
 \end{twocollist}
 
+\subsection{State functions}
+\begin{twocollist}
+\twocolitem{\texttt{eraseWindow()}}{Clears the screen}
+\twocolitem{\texttt{setColor(color)}}{Set current pen color}
+\twocolitem{\texttt{setLinestyle(style)}}{Set current pen style}
+\twocolitem{\texttt{setLinewidth(width)}}{Set current pen width}
+\twocolitem{\texttt{setTextColor(foreground, background)}}{Set text colors}
+\twocolitem{\texttt{setMarker(type, color)}}{Set marker attibutes}
+\twocolitem{\texttt{setRasterOp(rasterOp)}}{Set raster operator}
+\end{twocollist}
+
 \section{Coordinate Mapping}
 
 \subsection{Dimensions}
@@ -103,7 +103,7 @@ Physical (Physicial Device Coordinates): $X_{pmax}, Y_{pmax}$\\
 
 \subsection{Formulas}
 To convert from Master coordinates to World coordinates: \\
-Apply current transformation matrix
+\centerline{Apply \emph{current transformation matrix}}
 
 To convert from WC to NDC:\\
 \begin{equation}
index 417c47a90087bffcbcfe86c0872408f83d234e1a..e76a77f6c54cf4f9221c6661bff3466cea0eb572 100644 (file)
@@ -11,8 +11,8 @@ user-controlled algorithms producing an image of the phantom
 object. These reconstructions can be visually and statistically
 compared to the original phantom object.
 
-In order to use \ctsim\ effectively, some knowledge of how \ctsim\
-works and the approach taken is required. \ctsim\ deals with a
+In order to use \ctsim\ effectively, some knowledge of how
+\ctsim\ works and the approach taken is required. \ctsim\ deals with a
 variety of object, but the two primary objects that we need to be
 concerned with are the \emph{phantom} and the \emph{scanner}.
 
@@ -249,20 +249,21 @@ To illustrate, the \emph{scan diameter} can be defined as
 \latexonly{\begin{equation}s_d = s_r v_r p_d\end{equation}}
 \latexignore{\\\centerline{\emph{Sd = Sr x Vr x Pd}}\\}
 
-Further, $f$ can be defined as \latexonly{$$f = f_r (v_r p_d /
-2)$$}\latexignore{\\$$F = FR x (VR x Pd)$$\\}
+Further, $f$ can be defined as
+\latexonly{\[f = f_r (v_r p_d / 2)\]}
+\latexignore{\\\centerline{\emph{F = FR x (VR x Pd)$$\\}}}
 
 Substituting these equations into \latexignore{the above
 equation,}\latexonly{equation~\ref{alphacalc},} We have,
 \latexonly{
 \begin{eqnarray}
-\alpha &= 2\,\sin^{-1} \frac{s_r v_r p_d / 2}{f_r v_r (p_d / 2)} \nonumber \\
-&= 2\,\sin^{-1} (s_r / f_r)
+\alpha &=& 2\,\sin^{-1} \frac{\displaystyle s_r v_r p_d / 2}{\displaystyle f_r v_r (p_d / 2)} \nonumber \\
+&=& 2\,\sin^{-1} (s_r / f_r)
 \end{eqnarray}
 } \latexignore{\\\centerline{\emph{\alpha = 2 sin (Sr / Fr)}}\\}
 
 Since in normal scanning $s_r$ = 1, $\alpha$ depends only upon the
-\emph{focal length ratio}.
+\emph{focal length ratio} in normal scanning.
 
 \subsubsection{Detector Array Size}
 In general, you do not need to be concerned with the detector
@@ -346,21 +347,23 @@ interpolation can be specified.
 \section{Image Comparison}\index{Image comparison}
 Images can be compared statistically. Three measurements can be calculated
 by \ctsim. They are taken from the standard measurements used by
-Herman\cite{HERMAN80}.
-$d$ is the normalized root mean squared distance measure,
-$r$ is the normalized mean absolute distance measure,
-and $e$ is the worst case distance measure over a $2\times2$ area.
-
-To compare two images, $A$ and $B$, each of which has $n$ columns and $m$ rows,
-these values are calculated as below.
-
-
-\latexonly{
-\begin{equation}
-d = \sqrt{\frac{\sum_{i=1}^{n}{\sum_{j=1}^{m}{(A_{ij} - B_{ij})^2}}}
-               {\sum_{i=1}^{n}{\sum_{j=1}^{m}{(A_{ij} - A^{\_})^2}}}}
-\end{equation}
-\begin{equation}
-r = \max(|A_{ij} - B{ij}|)
-\end{equation}
-}
+Herman\cite{HERMAN80}. They are:
+\begin{description}
+\item[$d$] The normalized root mean squared distance measure.
+\item[$r$] The normalized mean absolute distance measure.
+\item[$e$] The worst case distance measure over a $2\times2$ area.
+\end{description}
+
+These measurements are defined in equations \ref{dequation} through \ref{bigrequation}.
+In these equations, $p$ denotes the phantom image, $r$ denotes the reconstruction
+image, and $\bar{p}$ denotes the average pixel value for $p$. Each of the images have a
+size of $m \times n$. In equation \ref{eequation} $[n/2]$ and $[m/2]$ denote the largest
+integers less than $n/2$ and $m/2$, respectively.
+
+\latexignore{These formulas are shown in the print documentation of \ctsim.}
+\latexonly{\begin{equation}\label{dequation}d = \sqrt{\frac{\displaystyle \sum_{i=1}^{n}{\sum_{j=1}^{m}{(p_{i,j} - r_{i,j})^2}}}               {\displaystyle \sum_{i=1}^{n}{\sum_{j=1}^{m}{(p_{i,j} - \bar{p})^2}}}}\end{equation}}
+\latexonly{\begin{equation}\label{requation}r = \frac{\displaystyle \sum_{i=1}^{n}{\sum_{j=1}^{m}{|p_{i,j} - r_{i,j}|}}}         {\displaystyle \sum_{i=1}^{n}{\sum_{j=1}^{m}{|p_{i,j}|}}}\end{equation}}
+\latexonly{\begin{equation}\label{eequation}e = \max_{1 \le k \le [n/2] \atop 1 \le l \le [m/2]}(|P_{k,l} - R_{k,l}|)\end{equation}}
+\latexonly{where}
+\latexonly{\begin{equation}\label{bigpequation}P_{k,l} = {\textstyle \frac{1}{4}} (p_{2k,2l} + p_{2k+1,2l} + p_{2k,2j+l} + p_{2k+1,2l+1})\end{equation}}
+\latexonly{\begin{equation}\label{bigrequation}R_{k,l} = \textstyle \frac{1}{4} (r_{2k,2l} + r_{2k+1,2l} + r_{2k,2l+1} + r_{2k+1,2l+1})\end{equation}}
index e76f4457169c4fa1642e8dd033378ae175f6bb24..a2f744f90cabe402cd0e05bc332db5e508696ea9 100644 (file)
@@ -33,15 +33,14 @@ point values. Images files can be either real or complex valued.
 Typically, all images are real 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.
+since both a real and imaginary component need to be store. 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
 the creation and modifications of images.
 
-When complex-valued images are viewed on the screen, only the real
-component is displayed.
-
 \subsection{Projection}
 Projection files are created from Phantom files during the
 projection process. Numerous options are available for the
@@ -98,7 +97,7 @@ directory with the filename of \texttt{.ctsim}.
 
 \begin{twocollist}
 \twocolitem{\textbf{Advanced options}}{By default, this is turned off in new installations.
-These advanced options are required for normal simulations. When \texttt{Advanced
+These advanced options are not required for normal simulations. When \texttt{Advanced
 Options} is set, \ctsim\ will display more options during scanning of programs and
 the reconstruction of projections.}
 
@@ -113,7 +112,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 select that to the type of file that you wish to open.
+to set the \texttt{File Type} combo box to 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
@@ -185,11 +184,10 @@ of the diameter of the phantom.  For normal scanning, use a value of
 \twocolitem{\textbf{Scan Ratio}}{Sets the length of scanning as a
 ratio of the view diameter. For normal scanning, use a value of \texttt{1.0}.}
 
-\twocolitem{\textbf{Focal length ratio}}{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, use a value of \texttt{1.0}. For other
+\twocolitem{\textbf{Focal length ratio}}{Sets the distance between the
+radiation source and the center of the phantom as a
+ratio of the radius of the phantom. For parallel geometries, a value
+of \texttt{1.0} is optimal. For other
 geometries, this should be at least \texttt{2.0} to avoid artifacts.}
 \end{twocollist}
 
@@ -208,8 +206,8 @@ of \texttt{2}. Using any other rotation angle will lead to artifacts.}
 Properties of image files include
 \begin{itemize}\itemsep=0pt
   \item Whether the image is real or complex valued
-  \item Numeric statistics
-  \item Image file labels
+  \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}\index{Image export}
@@ -231,14 +229,18 @@ UNIX systems.}
 
 
 \subsection{View}\label{intensityscale}
-These options are for change the intensity scale for viewing the image.
-They do not change the image data.
+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
+image value.
+
 \subsubsection{Set}
-This command brings up a dialog box that allows you to set the lower
+This command displays up a dialog box that allows you to set the lower
 and upper intensities to display.
 
 \subsubsection{Auto}
-This command brings up a dialog box that allows \ctsim\ to automatically
+This command displays up a dialog box that allows \ctsim\ to automatically
 make an intensity scale. The options that \ctsim\ needs to make this
 automatic scale are:
 
@@ -253,20 +255,20 @@ is specified as a ratio of the standard deviation.}
 
 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
-be \texttt{median - 0.5 x standard deviation} and the maximum will be
-\texttt{median + 0.5 x standard deviation}.
+be $median - 0.5 \times standard deviation$ and the maximum will be
+$median + 0.5 \times standard deviation$.
 
 \subsubsection{Full}
-This resets the intensity scale to the full scale of the image.
+This command resets the intensity scale to the full scale of the image.
 
 \subsection{Image}
 These commands create a new image based upon the current image,
-and for some commands, also a comparison image.
+and for some commands, also upon a comparison image.
 
 \subsubsection{Add, Subtract, Multiply, Divide}
 These are simple arithmetic operations. \ctsim\ will display a dialog
 box showing all of the currently opened image files that are the
-same size of the active image. After selecting a compatible image,
+same size of the active image. After the selection of a compatible image,
 \ctsim\ will perform the arithmetic operation on the two images and
 make a new result image.
 
@@ -280,20 +282,20 @@ 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 is controlled by the \texttt{T} and \texttt{Y} keys. Other options
-include:
+are presented on the \texttt{View} menu and include:
 
 \begin{itemize}
-\item Surface plot
-\item Smooth shading
+\item Surface plot versus wireframe
+\item Smooth shading versus flat shading
 \item Lighting on or off
-\item Color scale
+\item Color scale on or off
 \end{itemize}
 
 \subsection{Filter}\index{Image filter}
 These commands filter and modify the image.
 
 \subsubsection{Arithmetic}
-These are simple arithmetic functions that should be self explanatory.
+These are simple arithmetic functions that should be self-explanatory.
 
 \subsubsection{Frequency Based}
 This commands allow the Fourier and inverse Fourier transformations of
@@ -319,8 +321,8 @@ that perform FFT and IFFT transformations prior to plotting.
 This command performs statistical comparisons between two images. An option
 also exists for generating a difference image from the two input images.
 
-There are also commands for plotting rows and columns from two images on
-a single plot. This is quite helpful when comparing a phantom to a reconstruction.
+There are also commands for comparison plotting of rows and columns from two images.
+ This is quite helpful when comparing a phantom to a reconstruction.
 
 \section{Projection Menus}
 
@@ -356,11 +358,11 @@ using the Filtered Backprojection technique.
 
 
 \begin{twocollist}
-\twocolitemruled{\textbf{Parameter}}{\textbf{Options}}
 \twocolitem{\textbf{Filter}}{Selects which filter to apply to each
 projection. To properly reconstruct an image, this filter should
-be multiplied by the absolute value of distance from zero
-frequency.
+be 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}
@@ -376,17 +378,18 @@ smaller numbers of detectors, \texttt{convolution} might be a bit
 faster.
 \begin{itemize}\itemsep=0pt
 \item \texttt{convolution}
-\item \texttt{fourier}
-\item \texttt{fourier-table}
-\item \texttt{fftw}
-\item \texttt{rfftw}
+\item \texttt{fourier} - Uses simple Fourier transform.
+\item \texttt{fourier-table} - Optimizes Fourier transform by precalculating trigometric functions.
+\item \texttt{fftw} - Uses complex-valued Fourier transform with the \emph{fftw} library.
+\item \texttt{rfftw} - Uses optimized real/half-complex Fourier transform.
 \end{itemize}
 }
 
 \twocolitem{\textbf{Interpolation}}{Interpolation technique.
-\texttt{cubic} is optimal when many projections are taken and the
-data is smooth. Otherwise, \texttt{linear} gives better results.
-Linear is also much faster than cubic interpolation.
+\texttt{cubic} is optimal 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 many times faster than cubic interpolation.
 
 \begin{itemize}\itemsep=0pt
 \item nearest
@@ -399,7 +402,7 @@ Linear is also much faster than cubic interpolation.
 \subsection{Advanced Options}
 
 These options are only visible if \emph{Advanced Options} has been
-selected in the \texttt{File/Preferences} dialog. These parameters
+selected in the \texttt{File - Preferences} dialog. These parameters
 default to optimal settings and don't need to be adjusted except
 by expert users.
 
@@ -407,10 +410,10 @@ by expert users.
 \twocolitem{\textbf{Backprojection}}{Selects the backprojection
 technique. A setting of \texttt{idiff} is optimal.
 \begin{itemize}\itemsep=0pt
-\item \texttt{trig} - Uses trigometric functions at each image point
-\item \texttt{table} - Uses precalculated trigometric tables
-\item \texttt{diff} - Uses difference method to step along image
-\item \texttt{idiff} - Uses integer difference method
+\item \texttt{trig} - Use trigometric functions at each image point.
+\item \texttt{table} - Use precalculated trigometric tables.
+\item \texttt{diff} - Use difference method to iterate within image.
+\item \texttt{idiff} - Use integer iteration math.
 \end{itemize}
 }
 
@@ -425,15 +428,20 @@ to select. With any of the frequency methods,
 }
 
 \twocolitem{\textbf{Zeropad}}{Zeropad factor when using
-frequency-based filtering. A setting of \texttt{1} is optimal.}
+frequency-based filtering. A setting of \texttt{1} is optimal whereas
+a setting of \texttt{0} disables zero padding.}
 
 \end{twocollist}
 
 \section{Plot Menus}
 \subsection{File - Properties}
-The displayed properties include the number of curves in the plot
-and the number of points per curve. Additionally, the EZPlot
-commands used to format the plot are displayed.
+The displayed properties include:
+
+\begin{itemize}\itemsep=0pt
+\item the number of curves in the plot and the number of points per curve.
+\item the EZPlot commands used to format the plot are displayed.
+\item history labels from the originating image(s) and the plot function
+\end{itemize}
 
 \subsection{View Menu}
 These commands set the scaling for the y-axis. They are analogous
index 7c283a4cfc4dbaf786544cb5bf7e6b879adae6bb..993baf714105f07786fb66a65e9fa0ce4abf0fd6 100644 (file)
@@ -7,7 +7,7 @@
 The latest version of \ctsim, both executable programs and source code,
  can be downloaded from the official
  \ctsim\ \urlref{web site}{http://www.ctsim.org}. Additionally, these
- files are also available from the \urlref{FTP site}{ftp://ftp.ctsim.org}.
+ files are also available from the \ctsim\ \urlref{FTP site}{ftp://ftp.ctsim.org}.
 
 
 \section{Installing Windows Binary}
@@ -23,7 +23,7 @@ and Windows 2000. Due to use of the OpenGL and htmlhelp libraries,
 
 \section{Installing Linux RPM}
 Download the RPM file, then use
-the \texttt{rpm} manager program:\\
+the \texttt{rpm} manager program as follows:\\
 \hspace{1cm}\texttt{rpm -Uvh} \emph{ctsim-*.rpm}\\
 
 \ctsim\ and \ctsimtext\ will then be installed in the \texttt{/usr/local/bin}
@@ -38,12 +38,12 @@ instructions.
 \subsection{Optional Libraries}%
   \begin{itemize}
   \item \textbf{wxWindows}\\
-  Used for platform-independent graphical interface. The graphical version
+  Used for the platform-independent graphical interface. The graphical version
   of \ctsim\ requires this library.\\
   \urlref{Web site}{http://www.wxwindows.org}
 
   \item \textbf{FFTW}\\
-    Used for fast frequency-based filtering and fourier transformations of images.
+    Used for fast Fourier transformations of projections and images.
     Without this library \ctsim\ will use slower, traditional Fourier transformations.\\
     \urlref{Web site}{http://www.fftw.org}
 
index 6a72fdace21e5c9dc21af74e2883155b1b396579..c6fc11d4a3288fe0e29d37d6f121749bce814c08 100644 (file)
@@ -5,8 +5,8 @@
 \ctsimtext\ is a master shell for all of the command-line utilities. The
 command-line utilities can perform most of the functions of the graphical
 shell. These command-line utilities are especially appropriate for use on
-systems without graphics, batch files, and parallel processing in a Beowulf
-computer cluster.
+systems without graphical capability, batch files, and parallel processing
+with a Beowulf-type computer cluster.
 
 \usage \ctsimtext\ can be invoked via three different
 methods.
@@ -17,7 +17,7 @@ their parameters. The output of the command is displayed. Further
 commands may be given to \ctsimtext. The shell is exited by the
 \texttt{quit} command. \ctsimtext\ uses the
 \urlref{readline}{http://www.gnu.org} library on UNIX and Linux platforms
-to provide for command history processing.
+to provide command history processing.
 
 \item \ctsimtext\ can also be called to
 execute a single command. This is especially useful for batch
@@ -48,49 +48,61 @@ a 16-CPU \urlref{Beowulf}{http://www.beowulf.org} cluster.
 
 
 \section{if1}\label{if1}\index{if1}%
-Performs math functions on a single image.
+Performs math functions on a single image. The commands works with
+both real and complex valued images.
 
 \usage
+\texttt{if1 input-filename output-filename [options...]}
+
+\textbf{Options}
 \begin{itemize}\itemsep=0pt
-  \item \doublehyphen{invert}
-  \item \doublehyphen{log}
-  \item \doublehyphen{exp}
-  \item \doublehyphen{sqr}
-  \item \doublehyphen{sqrt}
+  \item \doublehyphen{invert} - Negate pixel values
+  \item \doublehyphen{log} - Take natural logrithm of pixel values
+  \item \doublehyphen{exp} - Take natural exponent of pixel values
+  \item \doublehyphen{sqr} - Take square of pixel values
+  \item \doublehyphen{sqrt} - Take square root of pixel values
 \end{itemize}
 
 \section{if2}\label{if2}\index{if2}%
-Performs math functions on a two images.
+Performs math functions on a two images. The command works with both
+real and complex valued images.
 
 \usage
+\texttt{if2 input-filename1 input-filename2 output-filename [options...]}
+
+\textbf{Options}
 \begin{itemize}\itemsep=0pt
-  \item \doublehyphen{add}
-  \item \doublehyphen{sub}
-  \item \doublehyphen{mul}
-  \item \doublehyphen{comp}
-  \item \doublehyphen{column-plot}
-  \item \doublehyphen{row-plot}
+  \item \doublehyphen{add} - Add the two images
+  \item \doublehyphen{sub} - Subtract the two images
+  \item \doublehyphen{multiply} - Multiply the two images
+  \item \doublehyphen{divide} - Divide the two images
+  \item \doublehyphen{comp} - Statistically compare the two images
+  \item \doublehyphen{column-plot n} - Plot the values of a particular col
+  \item \doublehyphen{row-plot n} - Plot the values of a particular row
 \end{itemize}
 
 \section{ifexport}\label{ifexport}\index{ifexport}%
 Export an image file to a standard graphics file.
 
 \usage
+\texttt{ifexport input-filename output-filename -\,-format }\emph{graphic-format} \texttt{ [options...]}
+
+\textbf{Options}
 \begin{itemize}\itemsep=0pt
   \item \doublehyphen{format}
   \begin{itemize}\itemsep=0pt
-    \item \texttt{gm}
-    \item \texttt{pgmasc}
-    \item \texttt{png}
-    \item \texttt{png16}
+    \item \texttt{pgm} - Portable graymap format.
+    \item \texttt{pgmasc} - ASCII PGM format.
+    \item \texttt{png} - Portable network graphics format.
+    \item \texttt{png16} - 16-bit PNG format.
   \end{itemize}
-  \item \doublehyphen{center}
+  \item \doublehyphen{center} - Set center of intensity window.
   \begin{itemize}\itemsep=0pt
     \item \texttt{median}
     \item \texttt{mode}
     \item \texttt{mean}
   \end{itemize}
-  \item \doublehyphen{auto}
+  \item \doublehyphen{auto} - Set half-width of intensity window.
   \begin{itemize}\itemsep=0pt
      \item \texttt{full}
      \item \texttt{std0.1}
@@ -99,9 +111,10 @@ Export an image file to a standard graphics file.
      \item \texttt{std2}
      \item \texttt{std3}
   \end{itemize}
-  \item \doublehyphen{scale}
-  \item \doublehyphen{min}
-  \item \doublehyphen{max}
+  \item \doublehyphen{scale} - Set size of output image. A value of
+  \texttt{1} is default and creates an output image the same size as the input image.
+  \item \doublehyphen{min} - Set the minimum intensity value.
+  \item \doublehyphen{max} - Set the maximum intensity value.
 \end{itemize}
 
 \section{ifinfo}\label{ifinfo}\index{ifinfo}%
@@ -109,19 +122,21 @@ Export an image file to a standard graphics file.
 Displays information about an imagefile.
 
 \usage
+\texttt{ifinfo input-filename [options...]}
+
+\textbf{Options}
 \begin{itemize}\itemsep=0pt
-  \item \doublehyphen{labels}
-  \item \doublehyphen{no-labels}
-  \item \doublehyphen{stats}
-  \item \doublehyphen{no-stats}
-  \item \doublehyphen{help}
+  \item \doublehyphen{labels} - Display history labels.
+  \item \doublehyphen{no-labels} - Suppress history labels.
+  \item \doublehyphen{stats} - Display image statistics.
+  \item \doublehyphen{no-stats} - Suppress image statistics.
 \end{itemize}
 
 \section{phm2pj}\label{phm2pj}\index{phm2pj}%
 Simulates collection of X-rays data (projections) around a phantom object.
 
 \usage
-\texttt{phm2pj projection-file-name number-of-detectors number-of-views [options...]}
+\texttt{phm2pj projection-filename number-detectors number-views [options...]}
 
 \begin{twocollist}
 \twocolitem{\doublehyphen{phantom}}{Select a standard phantom.
@@ -131,9 +146,9 @@ Simulates collection of X-rays data (projections) around a phantom object.
 \item \texttt{unit-pulse}
 \end{itemize}
 }
-\twocolitem{\doublehyphen{phmfile}}{Load a phantom definition definition}
+\twocolitem{\doublehyphen{phmfile}}{Reads a user-created phantom file.}
 
-\twocolitem{\doublehyphen{geometry}}{
+\twocolitem{\doublehyphen{geometry}}{Sets the scanner geometry. Valid values are:
   \begin{itemize}\itemsep=0pt
     \item \texttt{parallel}
     \item \texttt{equiangular}
@@ -143,29 +158,31 @@ Simulates collection of X-rays data (projections) around a phantom object.
 
 \twocolitem{\doublehyphen{nray}}{ Number of samples per each detector}
 
-\twocolitem{\doublehyphen{rotangle}}{Sets the rotation amount as a multiple of pi.
+\twocolitem{\doublehyphen{rotangle}}{The rotation angle as a multiple of pi.
 For parallel geometries use a rotation angle of \texttt{1} and for equilinear and equiangular
 geometries use a rotation angle of \texttt{2}. The default is to use to
 appropriate rotation angle based on the geometry.}
 
 \twocolitem{\doublehyphen{view-ratio}}{Sets the field of view as a ratio of the diameter of the phantom.
-    For normal scanning, a default value of \texttt{1.0} is optimal.}
+    For normal scanning, the default value of \texttt{1.0} is optimal.}
 
 \twocolitem{\doublehyphen{scan-ratio}}{Sets the length of scanning as a ratio of the view diameter.
-    For normal scanning, a value of \texttt{1.0} is optimal.}
+    For normal scanning, the default value of \texttt{1.0} is optimal.}
 
-\twocolitem{\doublehyphen{focal-length}}{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 \texttt{1.0} is optimal. For other
+\twocolitem{\doublehyphen{focal-length}}{Sets the distance between the radiation source
+ and the center of the object as a ratio of the radius of the object.
+   For parallel geometries, a value of \texttt{1.0} is optimal. For other
     geometries, this should be at least \texttt{2.0} to avoid artifacts.}
 \end{twocollist}
 
 
 \section{phm2if}\label{phm2if}\index{phm2if}%
-Converts a geometric phantom object into an imagefile. The size of the
-imagefile in pixels must be specified as well as the number of samples
-to average per pixel.
+Converts a geometric phantom object into an imagefile.
 
 \usage
+\texttt{phm2if phantom-filename image-filename [options...]}
+
+\textbf{Options}
 \begin{twocollist}
   \twocolitem{\doublehyphen{nsamples}}{Number of samples in x \& y directions per pixel}
   \twocolitem{\doublehyphen{view-ratio}}{Sets the view ration. For normal scanning,
@@ -176,27 +193,40 @@ to average per pixel.
 Convert a projection file into an imagefile.
 
 \usage
-\texttt{pj2if projection-file-name image-file-name x-size ysize [options...]}
+\texttt{pj2if projection-filename image-filename x-size y-size [options...]}
 
+\textbf{Options}
 \begin{twocollist}
-\twocolitem{\doublehyphen{help}}{Print brief online help}
+\twocolitem{\doublehyphen{dump}}{Print all projection data to the console.}
 \end{twocollist}
 
 \section{pjinfo}\label{pjinfo}\index{pjinfo}%
 Displays information about a projection file.
 
 \usage
+\texttt{pjinfo projection-filename [options...]}
+
+\textbf{Options}
 \begin{itemize}\itemsep=0pt
-  \item \doublehyphen{binaryheader}
-  \item \doublehyphen{binaryview}
-  \item \doublehyphen{startview}
-  \item \doublehyphen{endview}
-  \item \doublehyphen{dump}
+  \item \doublehyphen{binaryheader} - Dump the binary header to the standard output.
+  This option is only used when manually creating a composite projection file from
+  several different projection files.
+  \item \doublehyphen{binaryview} - Dump binary view data to the standard output.
+  This option is only used when manually creating a composite projection file from
+  several different projection files.
+  \item \doublehyphen{startview} - Sets starting view to display. Default is \texttt{0}.
+  \item \doublehyphen{endview} - Sets ending view to display. Default is the last view.
+  \item \doublehyphen{dump} - Print all projection data to the console.
 \end{itemize}
 
 \section{pjrec}\label{pjrec}\index{pjrec}%
 Reconstructs the interior of an object from a projection file.
 
+\usage
+\texttt{pjrec projection-filename image-filename image-cols image-rows [options...]}
+
+\textbf{Options}
+
 \begin{twocollist}
 \twocolitemruled{\textbf{Parameter}}{\textbf{Options}}
 \twocolitem{\doublehyphen{filter}}{Selects which filter to apply to
@@ -218,45 +248,49 @@ For smaller numbers of detectors, \texttt{convolution} might be a
 bit faster.
 \begin{itemize}\itemsep=0pt
 \item \texttt{convolution}
-\item \texttt{fourier}
-\item \texttt{fourier-table}
-\item \texttt{fftw}
-\item \texttt{rfftw}
-\item fftw
-\item rfftw
+\item \texttt{fourier} - Uses simple Fourier transform.
+\item \texttt{fourier-table} - Optimizes Fourier transform by precalculating trigometric functions.
+\item \texttt{fftw} - Uses complex-valued Fourier transform with the \emph{fftw} library.
+\item \texttt{rfftw} - Uses optimized real/half-complex Fourier transform.
 \end{itemize}
 }
+\end{twocollist}
 
+\begin{twocollist}
 \twocolitem{\doublehyphen{filter-generation}}{Selects the filter
 generation. With convolution, \texttt{direct} is the proper method
 to select. With any of the frequency methods,
 \texttt{inverse-fourier} is the best method.
 \begin{itemize}\itemsep=0pt
-\item direct
-\item inverse-fourier
+\item \texttt{direct}
+\item \texttt{inverse-fourier}
 \end{itemize}
 }
 
 \twocolitem{\doublehyphen{interpolation}}{Interpolation technique.
-\texttt{linear} is optimal.
+\texttt{cubic} is optimal 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 many times faster than cubic interpolation.
+
 \begin{itemize}\itemsep=0pt
-\item nearest
-\item linear
-\item cubic
+\item \texttt{nearest}
+\item \texttt{linear}
+\item \texttt{cubic}
 \end{itemize}
 }
 
 \twocolitem{\doublehyphen{backprojection}}{Selects the
 backprojection technique. A setting of \texttt{idiff} is optimal.
 \begin{itemize}\itemsep=0pt
-\item trig
-\item table
-\item diff
-\item idiff
+\item \texttt{trig} - Use trigometric functions at each image point.
+\item \texttt{table} - Use precalculated trigometric tables.
+\item \texttt{diff} - Use difference method to iterate within image.
+\item \texttt{idiff} - Use integer iteration math.
 \end{itemize}
 }
 
 \twocolitem{\doublehyphen{zeropad}}{Zeropad factor. A setting of
-\texttt{1} is optimal.}
+\texttt{1} is optimal whereas a zeropad of \texttt{0} performs no zeropadding.}
 
 \end{twocollist}
index 4646bbc65a7f2afbae54968fccae2075bc71cdcc..08ba6aa535885b76ce4075c188d09f2cdf261250 100644 (file)
@@ -3,16 +3,19 @@
 \ctsimfooter%
 
 \section{Overview}
-\ctsim\ can also be executed via a web browser. The CGI program
+\ctsim\ can also be executed via a web browser. The Perl program
 \texttt{ctsim.cgi} takes projections of a standard phantom object,
 performs reconstruction, and then compares the rasterized phantom
 object with the reconstruction. The comparison is performed both
 visually by an image subtraction as well as by statistical
 analysis.
 
+The \texttt{ctsim.cgi} program is invoked from the HTML file
+\texttt{simulate.html}.
+
 \section{Requirements}
    \begin{itemize}\itemsep=0pt
-      \item Apache or other CGI compatible web server
+      \item \urlref{Apache}{http://www.apache.org} or other CGI-compatible web server
 
       \item Perl (version 4.0 or higher)
 
@@ -22,3 +25,8 @@ analysis.
       \item A knowledgable system administrator. It is beyond the
       scope of this manual to explain the configuration a web server.
   \end{itemize}
+
+\section{Installation}
+Installation is rather automatic on Linux and UNIX systems. The
+\texttt{configure} script needs to be given options that specify
+the directory for web pages and for CGI programs.
index 4985efc4f8751b6cac6a3ce1e0164119b7c23cc3..90670eb4c24c0ab63d38695317efb5d8ceac5649 100644 (file)
@@ -16,7 +16,6 @@
 \setlength{\evensidemargin}{0in}
 \setlength{\oddsidemargin}{0in}
 
-
 \latexonly{\includeonly{ctsim-concepts,ctsim-install,ctsim-gui,ctsim-textui,ctsim-web,ctsim-appendix}}
 \hyphenation{poly-gon-al}
 
@@ -103,17 +102,17 @@ presented. Finally, the installation of \ctsim is discussed.
 
 I hope that you enjoy \ctsim!
 
-\include{ctsim-concepts}
+%\include{ctsim-concepts}
 
-\include{ctsim-gui}
+%\include{ctsim-gui}
 
-\include{ctsim-textui}
+%\include{ctsim-textui}
 
-\include{ctsim-web}
+%\include{ctsim-web}
 
-\include{ctsim-install}
+%\include{ctsim-install}
 
-\include{ctsim-appendix}
+%\include{ctsim-appendix}
 
 \newpage
 
index c3777bf5d5fee762caad021df535e98038eb21e3..22d2a15dc6d81588833dbeb023970ddeb7d758b1 100644 (file)
@@ -17,3 +17,12 @@ winHelpTitle = "CTSim Manual"
 \nonumber [0]{}
 \sum [0]{}
 \max [0]{}
+\atop [0]{}
+\setlength [2]{}
+\displaystyle [0]{}
+\textstyle [0]{}
+\[ [0]{}
+\] [0]{}
+\bar [1]{}
+\parbox [2]{}
+\toocomplex [1]{}