X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Ftex2rtf%2Fctsim.tex;fp=doc%2Ftex2rtf%2Fctsim.tex;h=9fd2aec2be85bda962217de4218c612f5e534795;hb=065c60e43bbd0649f42fde5351dc073f59b3aa28;hp=0000000000000000000000000000000000000000;hpb=2a5c4c17f789c2ac35cbdbd90735a36316acbdd7;p=ctsim.git diff --git a/doc/tex2rtf/ctsim.tex b/doc/tex2rtf/ctsim.tex new file mode 100644 index 0000000..9fd2aec --- /dev/null +++ b/doc/tex2rtf/ctsim.tex @@ -0,0 +1,372 @@ +\documentstyle[a4,makeidx,verbatim,texhelp,fancyhea,mysober,mytitle]{report}% +%\input{psbox.tex} + +\newcommand{\ctsim}{{\it CTSim}} +\newcommand{\ctsimtext}{{\it CTSimText}} + +\newcommand{\commandref}[2]{\helpref{{\tt $\backslash$#1}}{#2}}% +\newcommand{\commandrefn}[2]{\helprefn{{\tt $\backslash$#1}}{#2}\index{#1}}% +\newcommand{\commandpageref}[2]{\latexignore{\helprefn{{\tt $\backslash$#1}}{#2}}\latexonly{{\tt $\backslash$#1} {\it page \pageref{#2}}}\index{#1}}% +\newcommand{\indexit}[1]{#1\index{#1}}% +\newcommand{\inioption}[1]{{\bf {\tt #1}}\index{#1}}% +\parskip=10pt% +\parindent=0pt% +%\backgroundcolour{255;255;255}\textcolour{0;0;0}% Has an effect in HTML only +\winhelpignore{\title{Manual for CTSim 3.0}% +\author{Kevin Rosenberg, M.D.}% +\date{January 2001}% +}% +\winhelponly{\title{Manual for CTSim 3.0}% +\author{by Julian Smart\\$$\image{1cm;0cm}{tex2rtf.wmf}$$}% +}% +\makeindex% +\begin{document}% +\maketitle% +\pagestyle{fancyplain}% +\bibliographystyle{plain}% +\pagenumbering{roman}% +\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% +\tableofcontents% + +\chapter*{Copyright notice}% +\setheader{{\it COPYRIGHT}}{}{}{}{}{{\it COPYRIGHT}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +Copyright (c) 1983-2001 Kevin Rosenberg, M.D. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose is hereby granted without fee, provided that the +above copyright notice, author statement and this permission notice appear in +all copies of this software and related documentation. + +THE SOFTWARE IS PROVIDED ``AS-IS'' AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, +IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +IN NO EVENT SHALL KEVIN ROSENBERG BE LIABLE FOR ANY +SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY +OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + +\chapter{Introduction}% +\pagenumbering{arabic}% +\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +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 +collected around the phantom object. + +\chapter{Installation}\index{Installation}% +\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +\section{Download}%\index{Installation,Download}% + +The latest version of CTSim, plus source code, can be accessed from: + +\begin{verbatim} +http://www.ctsim.org +ftp://ftp.ctsim.org +\end{verbatim} + +It is available in Windows 95/NT/2000 and Linux GUI versions and non-GUI versions. + +\section{Installing Linux RPM}\index{Installation,Linux}% + +\section{Installing Windows Binary}\index{Installation,Windows}% + +\section{Build From Sources}%\index{Installation,Build}% + +See the INSTALL file included in the source distribution for instructions. + +\section{Requirements}\index{Installation,Build,Requirements}% + \item Building CTSim + \begin{itemize}\itemsep=0pt + \item zlib Library (optional) + \par Used for PNG file export. + + \item libpng Library (optional) + \par Used for PNG file export. + \par www.libpng.org + + \item FFTW library (optional) + \par Used for frequency-based filtering and fourier transformations of images. + \par www.fftw.org + + \item readline library (optional) + /par Used for {/ctsimtext} interactive shell. + + \item dmalloc library (optional) + \par Used for debugging memory allocation + \par www.dmalloc.com + + \item wxWindows library (optional) \par Used for + platform-independent graphical interface. The graphical-shell + program \ctsim requires this library. \par www.wxwindows.org + + \end{itemize} +\end{itemize} + +\chapter{ctsim - the Graphical User Interface}%\index{ctsim}% +\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +\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. + +\section{Usage} +ctsim [OPTIONS] [files to open...] + +\ctsim can open projection files, image files, phantom definition files, and plotfiles. + +\chapter{ctsimtext - The Command Line Interface}\index{ctsimtext}% +\ctsimtext is a master shell for all of the command-line utilities. +\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +\section{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...}. + +The following function names are available: + +\subsection{if1}\index{Programs,ctsimtext,if1}% +Perfoms math functions on a single image. + +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt + \item --invert + \item --log + \item --exp + \item --sqr + \item --sqrt +\end{itemize} + +\subsection{if2}\index{Programs,ctsimtext,if2}% +Perfoms math functions on a two images. + +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt + \item --add + \item --sub + \item --mul + \item --comp + \item --column-plot + \item --row-plot +\end{itemize} + +\subsection{ifinfo}\index{Programs,ctsimtext,ifinfo}% + +Displays information about an imagefile. +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt + \item --labels + \item --no-labels + \item --stats + \item --no-stats + \item --help +\end{itemize} + +\subsection{ifexport}\index{Programs,ctsimtext,ifexport}% +Export an imagefile to a standard graphics file. + +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt + \item --format + \begin{itemize}\itemsep=0pt + \item --pgm + \item --pgmasc + \item --png + \item --png16 + \end{itemize} + \item --center + \begin{itemize}\itemsep=0pt + \item median + \item mode + \item mean + \end{itemize} + \item --auto + \begin{itemize}\itemsep=0pt + \item --full + \item --std0.1 + \item --std0.5 + \item --std1 + \item --std2 + \item --std3 + \end{itemize} + \item --scale + \item --min + \item --max +\end{itemize} + +\subsection{phm2pj}\index{Programs,ctsimtext,phm2pj}% +Simulates collection of X-rays data (projections) around a phantom object. + +\subsubsection{Usage}% +phm2pj projection-file-name number-of-detectors number-of-views [options...] +\begin{itemize}\itemsep=0pt + \item --phantom + Select a standard phantom + \begin{itemize}\itemsep=0pt + \item herman + \item herman-b + \item shepp-logan + \item shepp-logan-b + \end{itemize} + + \item --phmfile + Load a phantom definition definition + + \item --geometry + \begin{itemize}\itemsep=0pt + \item parallel + \item equiangular + \item equilinear + \end{itemize} + + \item --nray + Number of samples per each detector + + \item --rotangle + Sets the rotation amount as a multiple of pi. For parallel geometries use +a rotation angle of 1 and for equilinear and equiangular geometries use a rotation angle of 2. + + \item --field-of-view + 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. + + \item --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 1.0 is fine. For other geometries, this should be at least 2.0 to avoid artifacts. +\end{itemize} + +\subsection{phm2if}\index{Programs,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. + +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt + \item --nsamples +\end{itemize} + +\subsection{pj2if}\index{Programs,ctsimtext,pj2if}% +Convert a projection file into an imagefile. + +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt +\end{itemize} + +\subsection{pjinfo}\index{Programs,ctsimtext,pjinfo}% +Displays information about a projection file. + +\subsubsection{Usage}% +\begin{itemize}\itemsep=0pt + \item --binaryheader + \item --binaryview + \item --startview + \item --endview + \item --dump +\end{itemize} + +\subsection{pjrec}\index{Programs,ctsimtext,pjrec}% +Reconstructs the interior of an object from a projection file. + +\subsubsection{Usage}% + +\subsubsection{Parameters}% +\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 + \item abs_sinc + \end{itemize} + + \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 +\end{itemize} + +\chapter{The Web Browser CGI Interface}\index{Web Interface}% +\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +\section{Overview}\index{Web Interface,Overview}% +The CGI program {\tt 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 standard +statistics as described by Herman\cite{HERMAN80}. + +\section{Requirements}\index{Web Interface,Requirements}% +\begin{itemize}\itemsep=0pt + \item For Web Interface + \begin{itemize}\itemsep=0pt + \item Apache or other CGI compatible web server + + \item Perl (version 4.0 or higher) + + \item A client web browser than can display PNG files. Most + current web browswer do support PNG. + \end{itemize} + + \end{itemize} + +\bibliographystyle{abbrv} +\bibliography{yes} + +\addcontentsline{toc}{chapter}{Index} +\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% +\printindex% + +\end{document}