-\documentstyle[a4,makeidx,verbatim,texhelp,fancyhea,mysober,mytitle]{report}%
+\documentclass[11pt]{report}%
%\input{psbox.tex}
+\usepackage{texhelp}
+\usepackage{fancyheadings}
+\usepackage{mysober}
+\usepackage{mytitle}
+\usepackage{verbatim}
+\usepackage{makeidx}
\usepackage{times}
\usepackage{hyperref}
\newcommand{\ctsim}{{\tt CTSim}}
\newcommand{\ctsimtext}{{\tt CTSimText}}
-\newcommand{\usage}{{\bf Usage \par}}
+\newcommand{\usage}{{\bf Usage}{\par}}
\newcommand{\commandref}[2]{\helpref{{\tt $\backslash$#1}}{#2}}%
\newcommand{\commandrefn}[2]{\helprefn{{\tt $\backslash$#1}}{#2}\index{#1}}%
\date{January 2001}%
}%
\winhelponly{\title{Manual for CTSim 3.0}%
-\author{by Kevin Rosenberg, M.D.\\$$\image{1cm;0cm}{logo-huge.bmp}$$}%
+\author{by Kevin Rosenberg, M.D.\\$$\image{3cm;3cm}{logo-huge.bmp}$$}%
}%
\makeindex%
\begin{document}%
\pagestyle{fancyplain}%
\bibliographystyle{plain}%
\pagenumbering{roman}%
+
\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
\tableofcontents%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
+\winhelponly{$$\image{3cm;3cm}{logo-huge}$$}%
+\htmlonly{$$\image{3cm;3cm}{logo-huge.gif}$$}%
Computed Tomography is a technique for estimating the interior of an object
from measurement of radiation collected around the object. This radiation
can be either projected through or emitted from the object.
-\ctsim\ simulates the process of projecting X-rays through a phantom object.
-\ctsim\ can then reconstruct the interior of the object from the projections
+\rtfsp\ctsim simulates the process of projecting X-rays through a phantom object.
+\rtfsp\ctsim can then reconstruct the interior of the object from the projections
collected around the phantom object.
+The \ctsim package has two executable files: the graphical \helprefn{ctsim}{ctsim} and text \helprefn{ctsimtext}{ctsimtext} programs.
+
+\chapter{Concepts}\index{Concepts}%
+\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
+\setfooter{\thepage}{}{}{}{}{\thepage}%
+
+\section{Overview}\label{conceptoverview}\index{Concepts,Overview}%
+\section{Phantoms}\label{conceptphantom}\index{Concepts,Phantoms}%
+\section{Scanner}\label{conceptscanner}\index{Concepts,Scanner}%
+\section{Reconstruction}\label{conceptreconstruction}\index{Concepts,Reconstruction}%
+
\chapter{Installation}\index{Installation}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
\section{Installing Windows Binary}\index{Installation,Windows}%
-\section{Build From Sources}%\index{Installation,Build}%
+\section{Build From Sources}\label{build}\index{Installation,Build}%
See the INSTALL file included in the source distribution for instructions.
-\section{Requirements}\index{Installation,Requirements}%
+\section{Web Requirements}\label{installreq}\index{Installation,Requirements}%
\begin{itemize}\itemsep=0pt
\item zlib Library (optional)
\par Used for PNG file export.
\par www.fftw.org
\item readline library (optional)
- /par Used for {/ctsimtext} interactive shell.
+ \par Used for \ctsimtext interactive shell.
\item dmalloc library (optional)
\par Used for debugging memory allocation
\item wxWindows library (optional)
\par Used for platform-independent graphical interface. The graphical-shell
- program \ctsim\ requires this library.
+ program \ctsim requires this library.
\par www.wxwindows.org
-
\end{itemize}
\chapter{ctsim - the Graphical User Interface}\label{ctsim}\index{ctsim}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
-\ctsim\ is the graphical shell for the CTSim project. It is
+\ctsim is the graphical shell for the CTSim project. It is
written using the wxLibrary for cross-platform compatibility with GTK,
Motif, and Microsoft Windows. It includes all of the functionality of
the command-line tool {\tt ctsimtext} as well as image processing and visualization features.
-\ctsim\ can open projection files, image files, phantom definition files, and plotfiles.
+\ctsim can open projection files, image files, phantom definition files, and plotfiles.
-\usage\
+\usage
ctsim [OPTIONS] [files to open...]
-\chapter{ctsimtext}\index{ctsimtext}%
+\chapter{ctsimtext}\label{ctsimtext}\index{ctsimtext}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
-\ctsimtext\ is a master shell for all of the command-line utilities.
+\ctsimtext is a master shell for all of the command-line utilities.
-\usage\
-\ctsimtext\ can be executed without any parameters. In that case, \ctsimtext
+\usage
+\ctsimtext can be executed without any parameters. In that case, \ctsimtext
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.
-\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 {\tt ctsimtext function-name parameters...}.
+\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
+{\tt ctsimtext function-name parameters...}.
-The following function names are available:
+The available functions are:
-\subsection{if1}\label{if1}\index{ctsimtext,if1}%
+\section{if1}\label{if1}\index{ctsimtext,if1}%
Perfoms math functions on a single image.
-\usage\
+\usage
\begin{itemize}\itemsep=0pt
\item --invert
\item --log
\item --sqrt
\end{itemize}
-\subsection{if2}\index{ctsimtext,if2}%
+\section{if2}\label{if2}\index{ctsimtext,if2}%
Perfoms math functions on a two images.
-\usage\
+\usage
\begin{itemize}\itemsep=0pt
\item --add
\item --sub
\item --row-plot
\end{itemize}
-\subsection{ifinfo}\index{ctsimtext,ifinfo}%
-
-Displays information about an imagefile.
-
-\usage\
-\begin{itemize}\itemsep=0pt
- \item --labels
- \item --no-labels
- \item --stats
- \item --no-stats
- \item --help
-\end{itemize}
-
-\subsection{ifexport}\index{ctsimtext,ifexport}%
+\section{ifexport}\label{ifexport}\index{ctsimtext,ifexport}%
Export an imagefile to a standard graphics file.
-\usage\
+\usage
\begin{itemize}\itemsep=0pt
\item --format
\begin{itemize}\itemsep=0pt
\item --max
\end{itemize}
-\subsection{phm2pj}\index{ctsimtext,phm2pj}%
+\section{ifinfo}\label{ifinfo}\index{ctsimtext,ifinfo}%
+
+Displays information about an imagefile.
+
+\usage
+\begin{itemize}\itemsep=0pt
+ \item --labels
+ \item --no-labels
+ \item --stats
+ \item --no-stats
+ \item --help
+\end{itemize}
+
+\section{phm2pj}\label{phm2pj}\index{ctsimtext,phm2pj}%
Simulates collection of X-rays data (projections) around a phantom object.
-\usage\
+\usage
phm2pj projection-file-name number-of-detectors number-of-views [options...]
\begin{itemize}\itemsep=0pt
\item --phantom
The Herman phantom is taken with permission from Gabor Hermans 1980 book\cite{HERMAN80}. The Shepp-Logan phantom was published in 1974\cite{SHEPP74}.
-\subsection{phm2if}\index{ctsimtext,phm2if}%
+\section{phm2if}\label{phm2if}\index{ctsimtext,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.
-\usage\
+\usage
\begin{itemize}\itemsep=0pt
\item --nsamples
\end{itemize}
-\subsection{pj2if}\index{ctsimtext,pj2if}%
+\section{pj2if}\label{pj2if}\index{ctsimtext,pj2if}%
Convert a projection file into an imagefile.
-\usage\
+\usage
\begin{itemize}\itemsep=0pt
+\item --help Print brief online help
\end{itemize}
-\subsection{pjinfo}\index{ctsimtext,pjinfo}%
+\section{pjinfo}\label{pjinfo}\index{ctsimtext,pjinfo}%
Displays information about a projection file.
-\usage\
+\usage
\begin{itemize}\itemsep=0pt
\item --binaryheader
\item --binaryview
\item --dump
\end{itemize}
-\subsection{pjrec}\index{ctsimtext,pjrec}%
+\section{pjrec}\label{pjrec}\index{ctsimtext,pjrec}%
Reconstructs the interior of an object from a projection file.
-\usage\
+\usage
+\begin{twocollist}
+\twocolitemruled{{\bf Parameter}}{{\bf Options}}
+\twocolitem{{\bf --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.
\begin{itemize}\itemsep=0pt
- \item 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.
- \begin{itemize}\itemsep=0pt
- \item abs_bandlimit
- \item abs_cosine
- \item abs_hamming
- \end{itemize}
+\item abs\_bandlimit
+\item abs\_cosine
+\item abs\_hamming
+\end{itemize}
+}
+\twocolitem{{\bf --filter-parameter}}{Sets the alpha level for Hamming
+ window. At setting of 0.54, this equals the Hanning window.}
- \item Filter Parameter
- \par Sets the alpha level for Hamming
- window. At setting of 0.54, this equals the Hanning window.
-
- \item Filter Method
- \begin{itemize}\itemsep=0pt
- \item convolution
- \item fourier
- \item fourier_table
- \item fftw
- \item rfftw
- \end{itemize}
-
- \item Filter Generation
- \begin{itemize}\itemsep=0pt
- \item direct
- \item inverse_fourier
- \end{itemize}
-
- \item Interpolation
- \begin{itemize}\itemsep=0pt
- \item nearest
- \item linear
- \end{itemize}
-
- \item Backprojection
- \begin{itemize}\itemsep=0pt
- \item trig
- \item table
- \item diff
- \item diff2
- \item idiff2
- \item idiff3
- \end{itemize}
-
- \item Zeropad
- \item Preinterpolation Factor
+\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.
+\begin{itemize}\itemsep=0pt
+\item convolution
+\item fourier
+\item fourier\_table
+\item fftw
+\item rfftw
\end{itemize}
+}
-\chapter{The Web Browser CGI Interface}\index{Web Interface}%
+\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.
+\begin{itemize}\itemsep=0pt
+\item direct
+\item inverse-fourier
+\end{itemize}
+}
+\twocolitem{{\bf --interpolation}}{Interpolation technique. {\tt linear} is optimal.
+\begin{itemize}\itemsep=0pt
+\item nearest
+\item linear
+\end{itemize}
+}
+ \twocolitem{{\bf -backprojection}}{Selects the backprojection technique. A setting of {\tt idiff3} is optimal.
+\begin{itemize}\itemsep=0pt
+\item trig
+\item table
+\item diff
+\item diff2
+\item idiff2
+\item idiff3
+\end{itemize}
+}
+\twocolitem{{\bf --zeropad}}{ Zeropad factor. A setting of {\tt 1} is optimal.}
+
+\twocolitem{{\bf --preinterpolate}}{Selects preinterpolation interpolation technique and sets the preinterpolation factor. Currently, this is experimental and does not work well.}
+\end{twocollist}
+
+\chapter{The Web Browser CGI Interface}\label{webinterface}\index{Web Interface}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
statistics as described by Herman\cite{HERMAN80}.
\section{Requirements}\index{Web Interface,Requirements}%
-\begin{itemize}\itemsep=0pt
\begin{itemize}\itemsep=0pt
\item Apache or other CGI compatible web server
\setfooter{\thepage}{}{}{}{}{\thepage}%
\addcontentsline{toc}{chapter}{Index}
-\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}%
-\setfooter{\thepage}{}{}{}{}{\thepage}%
-\printindex%
+\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}} %
+\setfooter{\thepage}{}{}{}{}{\thepage} %
+\printindex %
-\end{document}
+\end{document}%
+