X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Fctsim-concepts.tex;h=bacfd4b4807969b66469c0833c9c682d08ee9c02;hb=7df269f65639c1a862a58649c48331824029128a;hp=27d342a33b72062f926b846809afc8a727379829;hpb=fd5767a661183c8fd4197accc0e9eef3fb5474bc;p=ctsim.git diff --git a/doc/ctsim-concepts.tex b/doc/ctsim-concepts.tex index 27d342a..bacfd4b 100644 --- a/doc/ctsim-concepts.tex +++ b/doc/ctsim-concepts.tex @@ -2,7 +2,7 @@ \setheader{{\it CHAPTER \thechapter}}{}{}{\ctsimheadtitle}{}{{\it CHAPTER \thechapter}} \ctsimfooter -\section{Overview}\index{Conceptual overview} +\section{Conceptual Overview}\index{Conceptual overview} The operation of \ctsim\ begins with the phantom object. A phantom object consists of geometric elements. A scanner is specified and the collection of x-ray data, or projections, is @@ -18,7 +18,6 @@ concerned with are the \helprefn{phantom}{conceptphantom} and the \helprefn{scanner}{conceptscanner}. \section{Phantoms}\label{conceptphantom} -\subsection{Overview}\label{phantomoverview}\index{Phantom!Overview}% \ctsim\ uses geometrical objects to describe the object being scanned. A phantom is composed of one or more phantom elements. @@ -63,12 +62,12 @@ Of note, the commonly used phantom described by Shepp and Logan\cite{SHEPP74} uses only ellipses. \subsubsection{rectangle} -Rectangles use \texttt{cx} and \texttt{cy} to define the position of +Rectangles use \texttt{(cx,cy)} to define the position of the center of the rectangle with respect to the origin. \texttt{dx} and \texttt{dy} are the half-width and half-height of the rectangle. \subsubsection{triangle} -Triangles are drawn with the center of the base at \texttt{(cx,cy) +Triangles are drawn with the center of the base at \texttt{(cx,cy)} and a base half-width of \texttt{dx} and a height of \texttt{dy}. Rotations are then applied about the center of the base. @@ -100,7 +99,6 @@ defined as a rectangle of size 0.1 by 0.1, the phantom size is 0.101 in each direction. \section{Scanner}\label{conceptscanner}\index{Scanner!Concepts}% -\subsection{Dimensions} Understanding the scanning geometry is the most complicated aspect of using \ctsim. For real-world CT simulators, this is actually quite simple. The geometry is fixed by the manufacturer during the @@ -108,6 +106,7 @@ construction of the scanner and can not be changed. \ctsim, being a very flexible simulator, gives tremendous options in setting up the geometry for a scan. +\subsection{Dimensions} The geometry for a scan starts with the size of the phantom being scanned. This is because \ctsim\ allows for statistical comparisons between the original phantom image and @@ -212,7 +211,6 @@ significant distortions will occur. \subsection{Divergent Geometries}\label{geometrydivergent}\index{Equilinear geometry}\index{Equiangular geometry} \index{Scanner!Equilinear}\index{Scanner!Equiangular} -\subsubsection{Overview} For both equilinear (second generation) and equiangular (third, fourth, and fifth generation) geometries, the x-ray beams diverge from a single source to a detector array. @@ -303,7 +301,7 @@ length}. This length, \latexonly{\begin{equation} d_l = 4\,f \tan (\alpha / 2)\end{equation}} \latexignore{\\\centerline{\emph{4 x F x tan(\alpha/2)}}} \latexonly{This geometry is shown in figure~\ref{equilinearfig}.} -\begin{figure}\label{equilinearfig} +\begin{figure} \centerline{\image{10cm;0cm}{equilinear.eps}} \latexonly{\caption{\label{equilinearfig} Equilinear geometry}} \end{figure} @@ -318,7 +316,7 @@ accurate as filtered backprojection. This is due primarily to interpolation occurring in the frequency domain rather than the spatial domain. -\subsection{Filtered Backprojection}\index{Filtered backprojection} +\subsection{Filtered Backprojection}\index{Filtered backprojection}\index{Symmetric multiprocessing}\index{SMP} The technique is comprised of two sequential steps: filtering projections followed by backprojecting the filtered projections. Though these two steps are sequential, each view position can be processed independently. @@ -326,9 +324,18 @@ these two steps are sequential, each view position can be processed independentl \subsubsection{Parallel Computer Processing}\index{Parallel processing} Since each view can be processed independently, filtered backprojection is amendable to parallel processing. Indeed, this has been used in commercial scanners to speed reconstruction. -This parallelism is exploited in the MPI versions of \ctsim\ where the -data from all the views are spread about amongst all of the -processors. This has been testing in a cluster of 16 computers with excellent +This parallelism is exploited both in the \ctsim\ graphical shell and +in the \helpref{LAM}{ctsimtextlam} version of \ctsimtext. \ctsim\ can distribute it's workload +amongst multiple processors working in parallel. + +The graphical shell will automatically take advantage of multiple CPU's when +running on a \emph{Symmetric Multiprocessing} +computer. Dual-CPU computers are commonly available which provide a near doubling +in reconstruction speeds. \ctsim, though, has no limits on the number of CPU's +that can be used in parallel. The \emph{LAM} version +of \ctsimtext\ is designed to work in a cluster of computers. +This has been testing with a cluster of 16 computers in a +\urlref{Beowulf-class}{http://www.beowulf.org} cluster with excellent results. \subsubsection{Filter projections} @@ -359,10 +366,10 @@ by \ctsim. They are taken from the standard measurements used by Herman\cite{HERMAN80}. They are: \begin{itemize}\itemsep=0pt -\item[-]\textbf{$d$}\quad The normalized root mean squared distance measure. -\item[-]\textbf{$r$}\quad The normalized mean absolute distance measure. -\item[-]\textbf{$e$}\quad The worst case distance measure over a \latexonly{$2\times2$}\latexignore{\emph{2 x 2}} pixel area. -\end{twocollist} +\item[]\textbf{$d$}\quad The normalized root mean squared distance measure. +\item[]\textbf{$r$}\quad The normalized mean absolute distance measure. +\item[]\textbf{$e$}\quad The worst case distance measure over a \latexonly{$2\times2$}\latexignore{\emph{2 x 2}} pixel area. +\end{itemize} These measurements are defined in equations \ref{dequation} through \ref{bigrequation}. In these equations, $p$ denotes the phantom image, $r$ denotes the reconstruction