From d4674ec14f947ca140080a2582ce09dbfdd692c3 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Tue, 6 Feb 2001 05:42:23 +0000 Subject: [PATCH] r490: no message --- doc/Makefile.am | 3 +++ doc/ctsim-concepts.tex | 12 +++++++----- doc/ctsim-gui.tex | 42 ++++++++++++++++++++++++++++++++++++++--- doc/ctsim-latex.bib | 42 +++++++++++++++++++++++++++++++++++++++++ doc/ctsim-tex2rtf.bib | 39 ++++++++++++++++++++++++++++++++++++++ doc/ctsim-textui.tex | 2 +- doc/ctsim.bib | 3 --- doc/ctsim.hlp | Bin 31122 -> 38793 bytes doc/ctsim.hpj | 2 +- doc/ctsim.tex | 9 ++++----- doc/mytitle.sty | 4 ++-- 11 files changed, 138 insertions(+), 20 deletions(-) create mode 100644 doc/ctsim-latex.bib create mode 100644 doc/ctsim-tex2rtf.bib diff --git a/doc/Makefile.am b/doc/Makefile.am index b165afd..c8cf627 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -3,12 +3,14 @@ EXTRA_DIST = ${docs} dvi: ctsim.tex bibtex ctsim + cp ctsim-latex.bib ctsim.bib latex ctsim makeindex ctsim latex ctsim winhelp: ctsim.tex rm -f ctsim.rtf ctsim.cnt + cp ctsim-tex2rtf.bib ctsim.bib tex2rtf ctsim.tex ctsim.rtf -winhelp hcw /c /m /e ctsim.hpj mv CTSIM.HLP ctsim.hlp @@ -16,6 +18,7 @@ winhelp: ctsim.tex htmlhelp: ctsim.tex rm -f ctsim*.html ctsim.hhp ctsim.hhc ctsim.hhk + cp ctsim-tex2rtf.bib ctsim.bib tex2rtf ctsim.tex ctsim.html -html zip ctsim.zip *.html *.gif ctsim.hhp ctsim.hhc ctsim.hhk mv ctsim.zip ctsim.htb diff --git a/doc/ctsim-concepts.tex b/doc/ctsim-concepts.tex index 48386e6..bd6bffb 100644 --- a/doc/ctsim-concepts.tex +++ b/doc/ctsim-concepts.tex @@ -11,16 +11,18 @@ controlled algorithms producing an image of the phantom or study object. 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 we need to be concerned with are the 'phantom' and +object, but the two objects we need to be concerned with are the 'phantom' and the 'scanner'. \section{Phantoms}\label{conceptphantom}\index{Concepts,Phantoms}% \subsection{Overview}\label{phantomoverview}\index{Concepts,Phantoms,Overview}% \ctsim\ uses geometrical objects to -describe the object being scanned: rectangles, triangles, ellipses, -sectors and segments. With these the standard phantoms used in the CT -literature (the Herman and the Shepp-Logan) can be constructed. In fact +describe the object being scanned. A phantom is composed a one or more +phantom elements. These elements are simple geometric shapes, +specifically, rectangles, triangles, ellipses, sectors and segments. +With these the standard phantoms used in the CT literature (the Herman +and the Shepp-Logan) can be constructed. In fact \ctsim\ provides a shortcut to construct those phantoms for you. It also allows you to write a file in which the composition of your own phantom is described. @@ -49,7 +51,7 @@ Where objects overlap, the attenuations of the overlapped objects are summed. \subsubsection{ellipse} Ellipses use dx and dy to define the semi-major and semi-minor axis lengths, with the centre of the ellipse at cx and cy. Of note, the commonly used -phantom described by Shepp and Logan\cite{SHEPP77} uses only ellipses. +phantom described by Shepp and Logan\cite{SHEPP74} uses only ellipses. \subsubsection{rectangle} Rectangles use diff --git a/doc/ctsim-gui.tex b/doc/ctsim-gui.tex index f906861..c97b60c 100644 --- a/doc/ctsim-gui.tex +++ b/doc/ctsim-gui.tex @@ -15,26 +15,62 @@ ctsim [OPTIONS] [files to open...] \section{Files Supported} \subsection{Phantom} +Phantom files are supported. Besides loading phantom files from +the disk, the Herman and Shepp-Logan phantoms are built-in to CTSim. +Phantom files can be read and stored on the disk. However, a text +editor is required to create and edit these files. + \subsection{Image} +Image files are 2-dimensional files stored a 4-byte floating point values. +They are stored in little-endian format and \ctsim\ incorporates routines +to read and write files correctly on both big and little endian architextures. + +Images files can be either real or complex valued. Typically, all images +are real except for images that have been processed by Fourier transforms. + \subsection{Projection} +Projection files are created from Phantom files during the projection process. +Numerous options are available for creation of the these files. + \subsection{Plot} +Plot files are created by CTSim during analysis of image files. They can be +read and stored on the disk. They are stored as ASCII files for easy +cross-platform support. \section{Phantom Menus} \subsection{Rasterize Dialog} +This creates an image file from a phantom. Technically, it converts +the phantom from a vector (infinite resolution) object into defined resolution +image. The parameters to set are: + +x-size Number of columns in image file +y-size Number of rows in image file +samples Numbers of samples taken per pixel in the x and y directions. + For example, if the nsamples is set to {\tt 3}, then for every + pixel in the image file, 9 samples (3 x 3) are averaged. + \subsection{Projection Dialog} +This creates a projection file from a phantom. \section{Image Menus} +\subsection{File - Properties} +\subsection{View} +\subsection{Image} +These commands create a new image. +\subsection{Filter} +These commands filter image. -\section{Projection Menus} +\subsection{Anaylze} +\section{Projection Menus} \subsection{Convert Polar Dialog} \subsection{Convert FFT Polar Dialog} \subsection{Filtered Backprojection Dialog} \section{Plot Menus} -\subsection{File Menu} -\subsubsection{Save} +\subsection{File - Properties} +\subsection{File - Save} Plot files can be saved. They are saved in an ASCII text format. \subsection{View Menu} diff --git a/doc/ctsim-latex.bib b/doc/ctsim-latex.bib new file mode 100644 index 0000000..30441bd --- /dev/null +++ b/doc/ctsim-latex.bib @@ -0,0 +1,42 @@ +\bibliography{ctsim} +\bibliographystyle{plain} + +@book{KAK87, + author = {A. Kak and M. Slaney}, + title = {Principles of Computerized Tomographic Imaging}, + publisher = {IEEE Press, New York}, + year = {1987} +} + +@book{HERMAN80, + author = {G.T. Herman}, + title = {Image Reconstruction from Projections: The Fundamentals of Computerized Tomography}, + year = {1980}, + publisher = {Academic Press, New York, 1980} +} + +@book{PRESS92, + author = {W.H. Press, S.A. Teukolsky, W.T. Vellerling, and B.P. Flannery}, + title = {Numerical Recipes in C: The Art of Scientific Computing}, + publisher = {Cambridge University Press, Cambridge}, + edition = {Second}, + year = {1992} +} + +@book{FOLEY80, + author = {Foley and Van Dam}, + title = {Principles of Computer Graphics}, + year = {circa 1980} +} + +@article{SHEPP74, + author = {L. Shepp and B. Logan}, + title = {The Fourier Reconstruction of a Head Section}, + journal = {IEEE Transactions in Nuclear Science}, + volume = {NS-21}, + number = {6}, + pages = {21-43}, + year = {1974} +} + + diff --git a/doc/ctsim-tex2rtf.bib b/doc/ctsim-tex2rtf.bib new file mode 100644 index 0000000..bef97d7 --- /dev/null +++ b/doc/ctsim-tex2rtf.bib @@ -0,0 +1,39 @@ +@book{KAK87, + author = {A. Kak and M. Slaney}, + title = {Principles of Computerized Tomographic Imaging}, + publisher = {IEEE Press, New York}, + year = {1987} +} + +@book{HERMAN80, + author = {G.T. Herman}, + title = {Image Reconstruction from Projections: The Fundamentals of Computerized Tomography}, + year = {1980}, + publisher = {Academic Press, New York, 1980} +} + +@book{PRESS92, + author = {W.H. Press, S.A. Teukolsky, W.T. Vellerling, and B.P. Flannery}, + title = {Numerical Recipes in C: The Art of Scientific Computing}, + publisher = {Cambridge University Press, Cambridge}, + edition = {Second}, + year = {1992} +} + +@book{FOLEY80, + author = {Foley and Van Dam}, + title = {Principles of Computer Graphics}, + year = {circa 1980} +} + +@article{SHEPP74, + author = {L. Shepp and B. Logan}, + title = {The Fourier Reconstruction of a Head Section}, + journal = {IEEE Transactions in Nuclear Science}, + volume = {NS-21}, + number = {6}, + pages = {21-43}, + year = {1974} +} + + diff --git a/doc/ctsim-textui.tex b/doc/ctsim-textui.tex index 9ee549b..d1d4d0c 100644 --- a/doc/ctsim-textui.tex +++ b/doc/ctsim-textui.tex @@ -194,7 +194,7 @@ by the absolute value of distance from zero frequency. \item linear \end{itemize} } - \twocolitem{{\bf -backprojection}}{Selects the backprojection technique. A setting of {\tt idiff3} is optimal. +\twocolitem{{\bf -backprojection}}{Selects the backprojection technique. A setting of {\tt idiff3} is optimal. \begin{itemize}\itemsep=0pt \item trig \item table diff --git a/doc/ctsim.bib b/doc/ctsim.bib index 30441bd..bef97d7 100644 --- a/doc/ctsim.bib +++ b/doc/ctsim.bib @@ -1,6 +1,3 @@ -\bibliography{ctsim} -\bibliographystyle{plain} - @book{KAK87, author = {A. Kak and M. Slaney}, title = {Principles of Computerized Tomographic Imaging}, diff --git a/doc/ctsim.hlp b/doc/ctsim.hlp index 9d6c3e1d647fbef87d533a5b87aeea6a8c1070f0..3adace370838de5f51c96c030434e5eb12c319c4 100644 GIT binary patch delta 22250 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 delta 14932 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