\chapter{Concepts}\index{Concepts}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
-\setfooter{\thepage}{}{}{}{}{\thepage}%
+\ctsimfooter%
\section{Overview}\label{conceptoverview}\index{Concepts,Overview}%
-The operation of \ctsim begins with the phantom object. A phantom
-object consists of geometric elements. A scanner is specified and the
-projection data simulated. Finally that projection data can be
-reconstructed using various user controlled algorithms producing an
-image of the phantom object. This reconstruction can then be
-statistically compared to the original phantom object.
+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
+simulated. That projection data can be reconstructed using various
+user-controlled algorithms producing an image of the phantom
+object. This reconstruction can then be statistically compared to
+the original phantom 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 objects we need to be concerned with are the
+object, but the two objects we need to be concerned with are the
\emph{phantom} and the \emph{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. 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 elements, standard phantoms used in the CT literature can
-be constructed. In fact, \ctsim\ provides a shortcut to load the
-published phantoms of Herman and Shepp-Logan. \ctsim\ also reads text
-files of user-defined phantoms.
+\ctsim\ uses geometrical objects to 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
+elements, standard phantoms used in the CT literature can be
+constructed. In fact, \ctsim\ provides a shortcut to load the
+published phantoms of Herman\cite{HERMAN80} and
+Shepp-Logan\cite{SHEPP74}. \ctsim\ also reads text files of
+user-defined phantoms.
-The types of phantom elements and their definitions are taken from
-Herman's 1980 book\cite{HERMAN80}.
+The types of phantom elements and their definitions are taken with
+permission from G.T. Herman's 1980 book\cite{HERMAN80}.
\subsection{Phantom File}\label{phantomfile}\index{Concepts,Phantoms,File}
Each line in the text file describes an element of the
\begin{verbatim}
element-type cx cy dx dy r a
\end{verbatim}
-The first entry defines the type of the element, one
-of {\tt rectangle}, {\tt ellipse}, {\tt triangle}, {\tt sector}, or {\tt segment}.
-{\tt cx}, {\tt cy}, {\tt dx} and {\tt dy} have different meanings depending on the element type.
+The first entry defines the type of the element, either
+\rtfsp\texttt{rectangle}, \texttt{}, \texttt{triangle},
+\rtfsp\texttt{sector}, or \texttt{segment}. \texttt{cx},
+\rtfsp\texttt{cy}, \texttt{dx} and \texttt{dy} have different
+meanings depending on the element type.
-{\tt r} is the rotation applied to the object in degrees counterclockwise,
-and {\tt a} is the X-ray attenuation coefficient of the object.
-Where objects overlap, the attenuations of the overlapped objects are summed.
+\rtfsp\texttt{r} is the rotation applied to the object in degrees
+counterclockwise, and \texttt{a} is the X-ray attenuation
+coefficient of the object. Where objects overlap, the attenuations
+of the overlapped objects are summed.
\subsection{Phantom Elements}\label{phantomelements}\index{Concepts,Phantoms,Elements}
as a segment.
\subsection{Phantom Size}
-Also note that the overall dimensions of the phantom are increased by
-1\% above the specified sizes to avoid clipping due to round-off
-errors from polygonal sampling. So, if the phantom is defined as a
-rectangle of size 0.1 by 0.1, the actual phantom has extent 0.101 in
-each direction.
+The overall dimensions of the phantom are increased by 1\% above the
+specified sizes to avoid clipping due to round-off errors from
+sampling the polygons of the phantom elements. So, if the phantom is
+defined as a rectangle of size 0.1 by 0.1, the actual phantom has
+extent 0.101 in each direction.
\section{Scanner}\label{conceptscanner}\index{Concepts,Scanner}%
\subsection{Dimensions}
phantom being scanned. This is because \ctsim\ allows for statistical
comparisons between the original phantom image and it's reconstructions.
Since CT scanners scan a circular area, the first important
-variable is the diameter of the circle surround the phantom, or the
+variable is the diameter of the circle surround the phantom, or the
\emph{phantom diameter}. Remember, as mentioned above, the
phantom dimensions are also padded by 1\%.
-The other important geometry variables for scanning objects are
-the \emph{view diameter}, \emph{scan diameter}, and \emph{focal length}.
-These variables are all input into \ctsim\ in terms of ratios rather than
-absolute values.
+The other important geometry variables for scanning objects are the
+\emph{view ratio}, \emph{scan ratio}, and \emph{focal length ratio}.
+These variables are all input into \ctsim\ in terms of ratios rather
+than absolute values.
\subsubsection{Phantom Diameter}
\begin{figure}
phantom definition. The maximum of the phantom length and height is
used to define the square that completely surrounds the phantom. Let
\latexonly{$p_l$}\latexignore{\emph{Pl}}
-be the width and height of this square. The diameter of this boundary box,
+be the width and height of this square. The diameter of this boundary box,
\latexonly{$p_d$,}\latexignore{\emph{Pd},}
-is then
+\rtfsp is then
\latexignore{\\$$\emph{Pl x sqrt(2)}$$\\}
\latexonly{$$p_d = p_l \sqrt{2}$$}
CT scanners actually collect projections around a circle rather than a
square. The diameter of this circle is also the diameter of the boundary
square
-\latexonly{$p_d$.}\latexignore{\emph{Pd}.}
+\latexonly{$p_d$.}\latexignore{\rtfsp\emph{Pd}.}
These relationships are diagrammed in figure 2.1.
\subsubsection{View Diameter}
-The \emph{view diameter} is the area that is being processed during scanning of phantoms as
-well as during rasterization of phantoms. By default, the \emph{view diameter}
-is set equal to the \emph{phantom diameter}. It may be useful, especially for
-experimental reasons, to process an area larger (and maybe even smaller) than
-the phantom. Thus, during rasterization or during projections, \ctsim\ will
-ask for a \emph{view ratio},
-\latexonly{$v_{R}$.}\latexignore{\emph{VR}.}
-The \emph{view diameter} is then set as
-\latexonly{$$v_d = p_d v_{R}$$}\latexignore{\\$$\emph{Vd = Pd x VR}$$}
-
-By using a
-\latexonly{$v_{R}$}\latexignore{\emph{VR}}
+The \emph{view diameter} is the area that is being processed
+during scanning of phantoms as well as during rasterization of
+phantoms. By default, the \emph{view diameter} \rtfsp is set equal
+to the \emph{phantom diameter}. It may be useful, especially for
+experimental reasons, to process an area larger (and maybe even
+smaller) than the phantom. Thus, during rasterization or during
+projections, \ctsim\ will ask for a \emph{view ratio},
+\latexonly{$v_r$.}\latexignore{\rtfsp \emph{VR}.} The \emph{view
+diameter} is then calculated as \latexonly{$$v_d = p_d
+v_r$$}\latexignore{\\$$\emph{Vd = Pd x VR}$$}
+
+By using a
+\latexonly{$v_r$}\latexignore{\emph{VR}}
less than 1, \ctsim\ will allow
-for a \emph{view diameter} less than
+for a \emph{view diameter} less than
\emph{phantom diameter}.
This will lead to significant artifacts. Physically, this would
be impossible and is analagous to inserting an object into the CT
scanner that is larger than the scanner itself!
\subsubsection{Scan Diameter}
-By default, the entire \emph{view diameter} is scanned. For experimental
-purposes, it may be desirable to scan an area either larger or smaller than
-the \emph{view diameter}. Thus, the concept of \emph{scan ratio}
-\latexonly{$s_{R}$}\latexignore{\emph{SR}}
+By default, the entire \emph{view diameter} is scanned. For
+experimental purposes, it may be desirable to scan an area either
+larger or smaller than the \emph{view diameter}. Thus, the concept
+of \emph{scan ratio}, \latexonly{$s_r$,}\latexignore{\emph{SR},}
is born. The scan diameter
-\latexonly{$s_d$}\latexignore{\emph{Sd}}
-is the diameter over which x-rays are collected and is defined as
-\latexonly{$$s_d = v_d s_{R}$$}\latexignore{\\$$\emph{Sd = Vd x SR}$$\\}
-By default and for all ordinary scanning, the \emph{scan ratio} is to
-\texttt{1}. If the \emph{scan ratio} is less than \texttt{1},
-you can expect significant artifacts.
+\latexonly{$s_d$}\latexignore{\emph{Sd}} is the diameter over
+which x-rays are collected and is defined as \latexonly{$$s_d =
+v_d s_r$$}\latexignore{\\$$\emph{Sd = Vd x SR}$$\\} By default and
+for all ordinary scanning, the \emph{scan ratio} is to \texttt{1}.
+If the \emph{scan ratio} is less than \texttt{1}, you can expect
+significant artifacts.
\subsubsection{Focal Length}
The \emph{focal length},
\latexonly{$f$,}\latexignore{\emph{F},}
is the distance of the X-ray source to the center of
the phantom. The focal length is set as a ratio,
-\latexonly{$f_{R}$,}\latexignore{\emph{FR},}
+\latexonly{$f_r$,}\latexignore{\emph{FR},}
of the view radius. Focal length is
calculated as
-\latexonly{$$f = (v_d / 2) f_R$$}\latexignore{\\$$\emph{F = (Vd / 2) x FR}$$}
+\latexonly{$$f = (v_d / 2) f_r$$}\latexignore{\\$$\emph{F = (Vd / 2) x FR}$$}
+
+For parallel geometry scanning, the focal length doesn't matter.
+However, divergent geometry scanning (equilinear and equiangular),
+the \emph{focal length ratio} should be set at \texttt{2} or more
+to avoid artifacts. Moreover, a value of less than \texttt{1} is
+physically impossible and it analagous to have having the x-ray
+source inside of the \emph{view diameter}.
-For parallel geometry scanning, the focal length doesn't matter. However,
-divergent geometry scanning (equilinear and equiangular), the \emph{focal
-length ratio} should be set at \texttt{2} or more to avoid artifacts.
-
\subsection{Parallel Geometry}\label{geometryparallel}\index{Concepts,Scanner,Geometries,Parallel}
As mentioned above, the focal length is not used in this simple
-geometry. The detector array is set to
-be the same size as the \emph{scan diameter}.
-For optimal scanning in this geometry, the \emph{scan diameter} should
-be equal to the \emph{phantom diameter}. This is accomplished by using
-the default values of \texttt{1} for the \emph{view diameter ratio} and
-the \emph{scan diameter ratio}. If values of less than \texttt{1} are
-used for these two variables, significant distortions will occur.
+geometry. The detector array is set to be the same size as the
+\emph{scan diameter}. For optimal scanning in this geometry, the
+\emph{scan diameter} should be equal to the \emph{phantom
+diameter}. This is accomplished by using the default values of
+\texttt{1} for the \emph{view ratio} and the \emph{scan ratio}. If
+values of less than \texttt{1} are used for these two variables,
+significant distortions will occur.
\subsection{Divergent Geometries}\label{geometrydivergent}\index{Concepts,Scanner,Geometries,Divergent}
\subsubsection{Fan Beam Angle}
-For these divergent beam geometries, the \emph{fan beam angle} needs
-to be calculated. For real-world CT scanners, this is fixed at the
-time of manufacture. \ctsim, however, calculates the \emph{fan beam angle},
-\latexonly{$\alpha$,}\latexignore{\emph{alpha},}
-from the diameter of the \emph{scan diameter} and the \emph{focal length}
-\latexignore{\\$$\emph{alpha = 2 x asin ( (Sd / 2) / F)}$$\\}
-\latexonly{$$\alpha = 2 \sin^{-1} ((s_d / 2) / f)$$}
-This is illustrated in figure 2.3.
+For these divergent beam geometries, the \emph{fan beam angle}
+needs to be calculated. For real-world CT scanners, this is fixed
+at the time of manufacture. \ctsim, however, calculates the
+\emph{fan beam angle}, $\alpha$, from the \emph{scan diameter} and
+the \emph{focal length} \latexignore{\\$$\emph{alpha = 2 x asin (
+(Sd / 2) / f)}$$\\}
+\latexonly{\begin{equation}\label{alphacalc}\alpha = 2 \sin^{-1}
+((s_d / 2) / f)\end{equation}} This is illustrated in figure 2.3.
\begin{figure}
\image{10cm;0cm}{alphacalc.eps}
\caption{Calculation of $\alpha$}
Empiric testing with \ctsim\ shows that for very large \emph{fan beam angles},
-greater than approximately
+greater than approximately
\latexonly{$120^\circ$,}\latexignore{120 degrees,}
there are significant artifacts. The primary way to manage the
\emph{fan beam angle} is by varying the \emph{focal length} since the
\emph{scan diameter} by the size of the phantom.
+To illustrate, the \emph{scan diameter} can be defined as
+\latexonly{$$s_d = s_r v_r p_d$$}\latexignore{\\$$Sd = Sr x Vr x Pd$$\\}
+
+Further, $f$ can be defined as \latexonly{$$f = f_r (v_r p_d /
+2)$$}\latexignore{\\$$F = FR x (VR x Pd)$$\\}
+
+Substituting these equations into \latexignore{the above
+equation,}\latexonly{equation~\ref{alphacalc},} We have,
+\latexonly{
+\begin{eqnarray}
+\alpha &= 2\,\sin^{-1} \frac{s_r v_r p_d / 2}{f_r v_r (p_d / 2)} \nonumber \\
+&= 2\,\sin^{-1} (s_r / f_r)
+\end{eqnarray}
+} \latexignore{\\$$\alpha = 2 sin (Sr / Fr$$\\}
+
+Since in normal scanning $s_r$ = 1, $\alpha$ depends only upon the
+\emph{focal length ratio}.
+
\subsubsection{Detector Array Size}
-In general, you do not need to be concerned with the detector array
-size. It is automatically calculated by \ctsim. The size of the
-detector array depends upon the \emph{focal length} and the
-\emph{scan diameter}. In general, increasing the \emph{focal length}
-decreases the size of the detector array and increasing the \emph{scan
-diameter} increases the detector array size.
-
-For equiangular geometry, the detectors are spaced around a
-circle covering an angular distance of
-\latexonly{$\alpha$.}\latexignore{\emph{alpha}.}
-The dotted circle in
-\begin{figure}
-\image{10cm;0cm}{equiangular.eps}
-\caption{Equiangluar geometry}
+In general, you do not need to be concerned with the detector
+array size. It is automatically calculated by \ctsim. For those
+interested, this section explains how the detector array size is
+calculated.
+
+For parallel geometry, the detector length is equal to the scan
+diameter.
+
+For divergent beam geometries, the size of the detector array also
+depends upon the \emph{focal length}. Increasing the \emph{focal
+length} decreases the size of the detector array while increasing
+the \emph{scan diameter} increases the detector array size.
+
+For equiangular geometry, the detectors are spaced around a circle
+covering an angular distance of
+\latexonly{$2\,\alpha$.}\latexignore{\emph{2 \alpha}.} The dotted
+circle in
+\begin{figure}\label{equiangularfig}
+\image{10cm;0cm}{equiangular.eps} \caption{Equiangular geometry}
\end{figure}
-figure 2.4 indicates the positions of the detectors in this case.
+figure 2.4 indicates the positions of the detectors in this case.
For equilinear geometry, the detectors are space along a straight
-line. The length of the line depends upon
-\latexonly{$\alpha$}\latexignore{\emph{alpha}}
-and the \emph{focal length}. It is calculated as
-\latexonly{$$\mathrm{detLengh} = 4\,f \tan (\alpha / 2)$$}
-\latexignore{\\$$\emph{detLength} = 4 x F x tan(alpha/2)$$\\}
-\begin{figure}
+line. The length of the line depends upon
+\latexonly{$\alpha$}\latexignore{\emph{alpha}} and the \emph{focal
+length}. It is calculated as \latexonly{$4\,f \tan (\alpha / 2)$}
+\latexignore{\emph{4 x F x tan(\alpha/2)}}
+\begin{figure}\label{equilinearfig}
\image{10cm;0cm}{equilinear.eps}
\caption{Equilinear geometry}
\end{figure}
-An example of the this geometry is in figure 2.5.
+This geometry is shown in figure~2.5.
\subsubsection{Examples of Geometry Settings}
-Consider increasing the focal length ratio to two leaving the
-field of view ratio as 1, as in Figure 4. Now the detectors array is
-denser, and the real field of view is closer to that specified, but note
-again that the field of view is not used. Instead, the focal length is
-used to give a distance from the center of the phantom to the source, and
-the detector array is adjusted to give an angular coverage to include the
-whole phantom.
-
\section{Reconstruction}\label{conceptreconstruction}\index{Concepts,Reconstruction}%
The technique is comprised of two sequential steps:
filtering projections and then backprojecting the filtered projections. Though
these two steps are sequential, each view position can be processed individually.
-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 16-CPU cluster with good results.
+
+\subsubsection{Multiple Computer Processing}
+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 16-CPU cluster with good
+results.
\subsubsection{Filter projections}
The projections for a single view have their frequency data multipled by
a filter of $|w|$. \ctsim\ permits four different ways to accomplish this
-filtering. Two of the methods use convolution of the projection data with the
+filtering.
+
+Two of the methods use convolution of the projection data with the
inverse Fourier transform of $|w|$. The other two methods perform an Fourier
transform of the projection data and multiply that by the $|w|$ filter and
then perform an inverse fourier transform.
-Though multiplying by $|w|$ gives the sharpest reconstructions, in practice, superior results are obtained by mutiplying the $|w|$ filter by
-another filter that attenuates the higher frequencies. \ctsim\ has multiple
-filters for this purpose.
+Though multiplying by $|w|$ gives the sharpest reconstructions, in
+practice, superior results are obtained by reducing the higher
+frequencies. This is performed by mutiplying the $|w|$ filter by
+another filter that attenuates the higher frequencies. \ctsim\ has
+multiple filters for this purpose.
\subsubsection{Backprojection of filtered projections}
-Backprojection is the process of ``smearing'' the filtered projections over
-the reconstructing image. Various levels of interpolation can be specified.
-In general, the trade-off is between quality and execution time.
+Backprojection is the process of ``smearing'' the filtered
+projections over the reconstructing image. Various levels of
+interpolation can be specified.