X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Fctsim-gui.tex;h=7e0f6d4de0f01ade1dbfc1f9cb53aaad3c0aac72;hb=befd71a7157339b52a0c40359518d5276b25d127;hp=af42a62314bb2d71d1357c21f65c311d7fc7c4eb;hpb=f9691c643915d662dfc5672ade0dd4fcce02a68c;p=ctsim.git diff --git a/doc/ctsim-gui.tex b/doc/ctsim-gui.tex index af42a62..7e0f6d4 100644 --- a/doc/ctsim-gui.tex +++ b/doc/ctsim-gui.tex @@ -1,83 +1,215 @@ -\chapter{ctsim - the Graphical User Interface}\label{ctsim}\index{ctsim}% +\chapter{The Graphical User Interface}\label{ctsim}\index{ctsim}% \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% \setfooter{\thepage}{}{}{}{}{\thepage}% \section{Overview} -\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 \ctsimtext\ as well as image processing and visualization features. +\ctsim\ is the graphical shell for the CTSim project. It utilizes +using the \urlref{wxWindows}{http://www.wxwindows.org} library for +cross-platform compatibility. The graphical shell is compatible +with Microsoft Windows, \urlref{GTK}{http://www.gtk.org}, and +\urlref{Motif}{http://www.openmotif.org} graphical environments. +This graphical includes all of the functionality of the +command-line interface \helprefn{\ctsimtext}{ctsimtext} as well as +great 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 files, and +plot files. -\usage -ctsim [OPTIONS] [files to open...] +\usage \texttt{ctsim [files to open...]} + +You can invoke \ctsim\ by itself on the command line, or include +on the command-line any number of files that you want \ctsim\ to +automatically open. + +\section{File Types Support} + +Phantom and plot files are stored as ASCII text. In contrast, +image and projection files are stored in binary format. \ctsim +incorporates logic so that binary files are cross-platform +compatible between both little and big endian architectures. -\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. - +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. +Image files are 2-dimensional files that store 4-byte floating +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. + +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. -Images files can be either real or complex valued. Typically, all images -are real except for images that have been processed by Fourier transforms. +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 creation of the these files. +Projection files are created from Phantom files during the +projection process. Numerous options are available for the +creation of the these files. The files are stored in a binary +format with cross-platform compatibility on little and big endian +architectures. \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. +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: +\subsection{Properties} +Displays the properties of a phantom which includes: + +\begin{itemize}\itemsep=0pt +\item Overall dimensions of a phantom +\item A list of all component phantom elements +\end{itemize} -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 \texttt{3}, then for every - pixel in the image file, 9 samples (3 x 3) are averaged. +\subsection{Rasterize Dialog} +This creates an image file from a phantom. Technically, it +converts the phantom from a vector (infinite resolution) object +into a 2-dimension array of floating-point pixels. The parameters +to set are: + +\begin{twocollist} +\twocolitemruled{\textbf{Parameter}}{\textbf{Options}} +\twocolitem{\texttt{X size}}{Number of columns in image file} +\twocolitem{\texttt{Y size}}{Number of rows in image file} +\twocolitem{\texttt{Samples per pixel}}{Numbers of samples taken +per pixel in both the x and y directions. For example, if the +\texttt{Samples per pixel} is set to \texttt{3}, then for every +pixel in the image file 9 samples (3 x 3) are averaged.} +\end{twocollist} \subsection{Projection Dialog} -This creates a projection file from a phantom. +This creates a projection file from a phantom. The options +available when collecting projections are: + +\begin{twocollist} +\twocolitem{\textbf{Geometry}}{ + \begin{itemize}\itemsep=0pt + \item Parallel + \item Equiangular + \item Equilinear + \end{itemize}} +\twocolitem{\textbf{Number of detectors}}{Sets the number of +detectors in the detector array.} + +\twocolitem{\textbf{Number of views}}{Sets the number of views +collected} + +\twocolitem{\textbf{Samples per detector}}{Sets the number of +samples collected for each detector} + +\twocolitem{\textbf{View Ratio}}{Sets the field of view as a ratio +of the diameter of the phantom. For normal scanning, a value of +1.0 is fine.} + +\twocolitem{\textbf{Scan Ratio}}{Sets the length of scanning as a +ratio of the view diameter. For normal scanning, a value of 1.0 is +fine.} + +\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, a value of 1.0 is fine. For other +geometries, this should be at least 2.0 to avoid artifacts.} +\end{twocollist} + +\subsection{Advanced Options} +\begin{twocollist} +\twocolitem{\textbf{Rotation Angle}}{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. Using any other rotation angle will lead to artifacts.} +\end{twocollist} + + \section{Image Menus} \subsection{File - Properties} -\subsection{View} +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 +\end{itemize} + +\subsection{File - Export} +This command allows for exporting image files to a standard +graphics file format. This is helpful when you want to take an +image and import it into another application. The current +\helprefn{intensity scale}{intensityscale} is used when exporting +the file. The support file formats are: + +\begin{description}\itemsep=0pt +\item[PNG]Portable Network Graphics format. This uses 8-bits or +256 shades of gray. + +\item[PNG-16]This is a 16-bit version of PNG which allows for +65536 shades of gray. +\item[PGM]Portable Graymap format. This is a common format used on +UNIX systems. +\item[PGM]ASCII version of PGM. +\end{description} + + +\subsection{View}\label{intensityscale} +These options are for change the intensity scale for viewing the image. +They do not change the image data. +\subsubsection{Set} +\subsubsection{Auto} +\subsubsection{Full} +This resets the intensity scale to the full scale of the image. \subsection{Image} -These commands create a new image. +These commands create a new image based upon the current image, +and for some commands, also a comparison image. + +\subsubsection{Add, Subtract, Multiply, Divide} + +\subsubsection{Image Size} + +\subsubsection{3-D Conversion} +Generates a 3-dimensional view of the current phantom. \subsection{Filter} -These commands filter image. +These commands filter and modify the image. + +\subsubsection{Arithmetic} -\subsection{Anaylze} +\subsubsection{Frequency Based} + +\subsection{Analyze} +These commands are used for analyzing an image. + +\subsubsection{Plotting} + +\subsubsection{Image Comparison} \section{Projection Menus} + +\subsection{File - Properties} + \subsection{Process - Convert Polar Dialog}\label{convertpolardialog} The parameters are \texttt{xsize}, \texttt{ysize}, and \texttt{interpolation}. -The \texttt{xsize} and \texttt{ysize} parameters set the size of the +The \texttt{xsize} and \texttt{ysize} parameters set the size of the resulting image file. The \texttt{interpolation} parameter selects the interpolation method. Currently, the \texttt{bilinear} option provides the highest quality interpolation. \subsection{Process - Convert FFT Polar Dialog} -The paramters for this option are the same as -\helprefn{convertpolardialog}{Convert Polar Dialog}. For this command, -though, the projections are Fourier transformed prior to conversion to -polar image. +The parameters for this option are the same as \helprefn{Convert +Polar Dialog}{convertpolardialog}. For this command, though, the +projections are Fourier transformed prior to conversion to polar +image. \subsection{Reconstruct - Filtered Backprojection Dialog} This dialog sets the parameters for reconstructing an image from projections @@ -86,11 +218,12 @@ to those for the \helprefn{pjrec}{pjrec} program. \section{Plot Menus} \subsection{File - Properties} + \subsection{File - Save} Plot files can be saved. They are saved in an ASCII text format. \subsection{View Menu} +These commands set the scaling for the y-axis. \subsubsection{Set} \subsubsection{Auto} \subsubsection{Full} -