\relax \ifx\hyper@anchor\@undefined \global \let \oldcontentsline\contentsline \gdef \contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} \global \let \oldnewlabel\newlabel \gdef \newlabel#1#2{\newlabelxx{#1}#2} \gdef \newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} \AtEndDocument{\let \contentsline\oldcontentsline \let \newlabel\oldnewlabel} \else \global \let \hyper@last\relax \fi \providecommand*\HyPL@Entry[1]{} \HyPL@Entry{0<>} \citation{Yoo2002a} \citation{WrapITK} \citation{Chu2005a} \citation{Mueller2007b} \citation{SciRun2007a} \citation{MeVisLab2007a} \citation{VolView2007a} \citation{Slicer2007a} \@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{2}{section.1}} \@writefile{brf}{\backcite{Yoo2002a}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{WrapITK}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{Chu2005a}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{Mueller2007b}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{SciRun2007a}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{MeVisLab2007a}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{VolView2007a}{{2}{1}{section.1}}} \@writefile{brf}{\backcite{Slicer2007a}{{2}{1}{section.1}}} \@writefile{toc}{\contentsline {section}{\numberline {2}Design}{3}{section.2}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Framework}{3}{subsection.2.1}} \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces The SharpImage application framework components, including the main window and open image dialog.}}{3}{figure.1}} \newlabel{fig:Design:SharpImageApplicationFramework}{{1}{3}{The SharpImage application framework components, including the main window and open image dialog}{figure.1}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Main Window}}}{3}{figure.1}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Open Image Dialog}}}{3}{figure.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Scripts}{4}{subsection.2.2}} \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces A UML diagram depicting the inheritance hierarchy of SharpImage scripts. In this figure the \texttt {CurvatureFlowScript}\normalfont is used as an example.}}{4}{figure.2}} \newlabel{fig:Design:SharpImageScriptUML}{{2}{4}{A UML diagram depicting the inheritance hierarchy of SharpImage scripts. In this figure the \code {CurvatureFlowScript} is used as an example}{figure.2}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Renderers}{4}{subsection.2.3}} \citation{RezkSalama2001a} \citation{Kniss2002a} \@writefile{brf}{\backcite{RezkSalama2001a, Kniss2002a}{{5}{2.3}{subsection.2.3}}} \@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces The SharpImage renderers: \texttt {siGdiSliceRenderer}\normalfont and \texttt {siVolumeRenderer}\normalfont .}}{5}{figure.3}} \newlabel{fig:Design:Renderers}{{3}{5}{The SharpImage renderers: \code {siGdiSliceRenderer} and \code {siVolumeRenderer}}{figure.3}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Slice Renderer}}}{5}{figure.3}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Volume Renderer}}}{5}{figure.3}} \@writefile{toc}{\contentsline {section}{\numberline {3}Quick Start Guide}{6}{section.3}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Installation}{6}{subsection.3.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Usage}{6}{subsection.3.2}} \@writefile{toc}{\contentsline {section}{\numberline {4}Examples}{8}{section.4}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Open}{8}{subsection.4.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Save}{8}{subsection.4.2}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.3}Change Properties}{8}{subsection.4.3}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.4}Threshold}{9}{subsection.4.4}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.5}Cast}{9}{subsection.4.5}} \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Binary thresholding: \texttt {BinaryThresholdWithForm}\normalfont displays the result as a binary image, whereas \texttt {BinaryThresholdAsLabel}\normalfont displays the result as a label.}}{10}{figure.4}} \newlabel{fig:Examples:BinaryThreshold}{{4}{10}{Binary thresholding: \code {BinaryThresholdWithForm} displays the result as a binary image, whereas \code {BinaryThresholdAsLabel} displays the result as a label}{figure.4}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {\texttt {BinaryThresholdWithForm}\normalfont }}}{10}{figure.4}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {\texttt {BinaryThresholdAsLabel}\normalfont }}}{10}{figure.4}} \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces This figure depicts the same image with \texttt {unsigned char}\normalfont pixel type (left) and \texttt {float}\normalfont pixel type (right). The \texttt {float}\normalfont image is automatically rescaled to consume the entire [0,255] range. The \texttt {unsigned char}\normalfont image must be explicitly rescaled using the \texttt {RescaleIntenityToUC}\normalfont command.}}{10}{figure.5}} \newlabel{fig:Examples:Intensity}{{5}{10}{This figure depicts the same image with \code {unsigned char} pixel type (left) and \code {float} pixel type (right). The \code {float} image is automatically rescaled to consume the entire [0,255] range. The \code {unsigned char} image must be explicitly rescaled using the \code {RescaleIntenityToUC} command}{figure.5}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.6}Intensity Mapping}{10}{subsection.4.6}} \@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces This figure depicts the result of applying the \texttt {Sigmoid}\normalfont script.}}{11}{figure.6}} \newlabel{fig:Examples:Sigmoid}{{6}{11}{This figure depicts the result of applying the \code {Sigmoid} script}{figure.6}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.7}Gradients}{11}{subsection.4.7}} \@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces This figure depicts the results of applying the \texttt {GradientRecursiveGaussian}\normalfont and \texttt {GradientMagnitudeRecursiveGaussian}\normalfont scripts with \texttt {Sigma=1.0}\normalfont .}}{12}{figure.7}} \newlabel{fig:Examples:Gradient}{{7}{12}{This figure depicts the results of applying the \code {GradientRecursiveGaussian} and \code {GradientMagnitudeRecursiveGaussian} scripts with \code {Sigma=1.0}}{figure.7}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.8}Mathematical Morphology}{12}{subsection.4.8}} \@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces This figure depicts different morphological operations.}}{13}{figure.8}} \newlabel{fig:Examples:Morphology}{{8}{13}{This figure depicts different morphological operations}{figure.8}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.9}Noise}{13}{subsection.4.9}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.10}Pixel Math}{13}{subsection.4.10}} \@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces This figure depicts results from adding noise to an image.}}{14}{figure.9}} \newlabel{fig:Examples:Noise}{{9}{14}{This figure depicts results from adding noise to an image}{figure.9}{}} \@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces This figure depicts results from the \texttt {Median}\normalfont , \texttt {GradientAnisotropicDiffusion}\normalfont , and \texttt {CurvatureFlow}\normalfont denoising filters.}}{14}{figure.10}} \newlabel{fig:Examples:Denoising}{{10}{14}{This figure depicts results from the \code {Median}, \code {GradientAnisotropicDiffusion}, and \code {CurvatureFlow} denoising filters}{figure.10}{}} \citation{Ibanez2007a} \@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces A demonstration of the \texttt {BinaryPixelMath}\normalfont \texttt {Mask}\normalfont operation.}}{15}{figure.11}} \newlabel{fig:Examples:PixelMath}{{11}{15}{A demonstration of the \code {BinaryPixelMath} \code {Mask} operation}{figure.11}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Input1}}}{15}{figure.11}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Input2}}}{15}{figure.11}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {Result}}}{15}{figure.11}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.11}Region growing}{15}{subsection.4.11}} \@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces \texttt {ConnectedThreshold}\normalfont region growing from a user specified seed point.}}{15}{figure.12}} \newlabel{fig:Examples:ConnectedThreshold}{{12}{15}{\code {ConnectedThreshold} region growing from a user specified seed point}{figure.12}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.12}Active Contours}{15}{subsection.4.12}} \citation{Ibanez2007a} \citation{Ibanez2007a} \@writefile{brf}{\backcite{Ibanez2007a}{{16}{4.12}{subsection.4.12}}} \@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces The \texttt {FastMarchingImageFilter}\normalfont example from the ITK Software Guide \cite [Sec. 9.3.1]{Ibanez2007a} can be reproduced using six simple commands.}}{16}{figure.13}} \@writefile{brf}{\backcite{Ibanez2007a}{{16}{13}{figure.13}}} \newlabel{fig:Examples:FastMarching}{{13}{16}{The \code {FastMarchingImageFilter} example from the ITK Software Guide \cite [Sec. 9.3.1]{Ibanez2007a} can be reproduced using six simple commands}{figure.13}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Input}}}{16}{figure.13}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Smooth}}}{16}{figure.13}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {Gradient}}}{16}{figure.13}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(d)}{\ignorespaces {Sigmoid}}}{16}{figure.13}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(e)}{\ignorespaces {Arrival}}}{16}{figure.13}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(f)}{\ignorespaces {Threshold}}}{16}{figure.13}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(g)}{\ignorespaces {Label}}}{16}{figure.13}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.13}Volume Rendering}{16}{subsection.4.13}} \@writefile{lof}{\contentsline {figure}{\numberline {14}{\ignorespaces The \texttt {LevelSetSpeed}\normalfont script in action.}}{17}{figure.14}} \newlabel{fig:Examples:LevelSetSpeed}{{14}{17}{The \code {LevelSetSpeed} script in action}{figure.14}{}} \@writefile{lol}{\contentsline {lstlisting}{../Source/Rendering/VolumeRendering/shader\textendash v\textendash copy.frag}{17}{lstlisting.-27}} \citation{Kniss2002a} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:Oblique}{{15(a)}{18}{Subfigure 15(a)\relax }{subfigure.15.1}{}} \newlabel{sub@fig:Examples:VolumeRendering:VisibleHuman:Oblique}{{(a)}{18}{Subfigure 15(a)\relax }{subfigure.15.1}{}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:MIP}{{15(b)}{18}{Subfigure 15(b)\relax }{subfigure.15.2}{}} \newlabel{sub@fig:Examples:VolumeRendering:VisibleHuman:MIP}{{(b)}{18}{Subfigure 15(b)\relax }{subfigure.15.2}{}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:Value}{{15(c)}{18}{Subfigure 15(c)\relax }{subfigure.15.3}{}} \newlabel{sub@fig:Examples:VolumeRendering:VisibleHuman:Value}{{(c)}{18}{Subfigure 15(c)\relax }{subfigure.15.3}{}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:ValueMagnitude}{{15(d)}{18}{Subfigure 15(d)\relax }{subfigure.15.4}{}} \newlabel{sub@fig:Examples:VolumeRendering:VisibleHuman:ValueMagnitude}{{(d)}{18}{Subfigure 15(d)\relax }{subfigure.15.4}{}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:Phong}{{15(e)}{18}{Subfigure 15(e)\relax }{subfigure.15.5}{}} \newlabel{sub@fig:Examples:VolumeRendering:VisibleHuman:Phong}{{(e)}{18}{Subfigure 15(e)\relax }{subfigure.15.5}{}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:Silhouette}{{15(f)}{18}{Subfigure 15(f)\relax }{subfigure.15.6}{}} \newlabel{sub@fig:Examples:VolumeRendering:VisibleHuman:Silhouette}{{(f)}{18}{Subfigure 15(f)\relax }{subfigure.15.6}{}} \@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces Results from different fragment shaders and renderer settings.}}{18}{figure.15}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman}{{15}{18}{Results from different fragment shaders and renderer settings}{figure.15}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Oblique Section}}}{18}{figure.15}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Minimum Intensity Projection}}}{18}{figure.15}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {Value}}}{18}{figure.15}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(d)}{\ignorespaces {Value-Magnitude}}}{18}{figure.15}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(e)}{\ignorespaces {Phong}}}{18}{figure.15}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(f)}{\ignorespaces {Silhouette}}}{18}{figure.15}} \@writefile{lol}{\contentsline {lstlisting}{../Source/Rendering/VolumeRendering/shader\textendash v.frag}{18}{lstlisting.-28}} \@writefile{brf}{\backcite{Kniss2002a}{{18}{4.13}{lstnumber.-28.10}}} \@writefile{lol}{\contentsline {lstlisting}{../Source/Rendering/VolumeRendering/shader\textendash vm\textendash noadjust.frag}{18}{lstlisting.-29}} \citation{Weiler2000a} \@writefile{brf}{\backcite{Weiler2000a}{{19}{4.13}{lstnumber.-29.10}}} \newlabel{eq:Shader:AdjustSamplingRate}{{1}{19}{Volume Rendering\relax }{equation.4.1}{}} \@writefile{lol}{\contentsline {lstlisting}{../Source/Rendering/VolumeRendering/shader\textendash vm.frag}{19}{lstlisting.-30}} \newlabel{eq:Shader:PhongModel}{{2}{19}{Volume Rendering\relax }{equation.4.2}{}} \@writefile{lol}{\contentsline {lstlisting}{../Source/Rendering/VolumeRendering/shader\textendash vm\textendash phong.frag}{19}{lstlisting.-31}} \citation{Rheingans2001a} \@writefile{brf}{\backcite{Rheingans2001a}{{20}{4.13}{figure.16}}} \@writefile{lol}{\contentsline {lstlisting}{../Source/Rendering/VolumeRendering/shader\textendash vm\textendash enhance.frag}{20}{lstlisting.-32}} \@writefile{lof}{\contentsline {figure}{\numberline {16}{\ignorespaces A comparison of value-magnitude volume renderings generated with different sampling rates. First row: no alpha adjustment. Second row: with alpha adjustment.}}{21}{figure.16}} \newlabel{fig:Examples:VolumeRendering:VisibleHuman:NoAdjust}{{16}{21}{A comparison of value-magnitude volume renderings generated with different sampling rates. First row: no alpha adjustment. Second row: with alpha adjustment}{figure.16}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {$r_s=0.1$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {$r_s=0.4$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {$r_s=1.6$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(d)}{\ignorespaces {$r_s=6.4$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(e)}{\ignorespaces {$r_s=0.1$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(f)}{\ignorespaces {$r_s=0.4$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(g)}{\ignorespaces {$r_s=1.6$}}}{21}{figure.16}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(h)}{\ignorespaces {$r_s=6.4$}}}{21}{figure.16}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.14}Extending SharpImage}{21}{subsection.4.14}} \@writefile{lol}{\contentsline {lstlisting}{extend/Custom1.py}{22}{lstlisting.-33}} \@writefile{toc}{\contentsline {section}{\numberline {5}Conclusion}{23}{section.5}} \@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces Steps for extending SharpImage.}}{24}{figure.17}} \newlabel{fig:Examples:Extend:Steps}{{17}{24}{Steps for extending SharpImage}{figure.17}{}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Create a new project}}}{24}{figure.17}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Add reference}}}{24}{figure.17}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {Edit project properties}}}{24}{figure.17}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(d)}{\ignorespaces {Design the form}}}{24}{figure.17}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(e)}{\ignorespaces {Invoke the script}}}{24}{figure.17}} \bibstyle{plain} \bibdata{article} \bibcite{MeVisLab2007a}{1} \bibcite{SciRun2007a}{2} \bibcite{Slicer2007a}{3} \bibcite{VolView2007a}{4} \bibcite{Chu2005a}{5} \bibcite{Ibanez2007a}{6} \bibcite{Kniss2002a}{7} \bibcite{WrapITK}{8} \bibcite{Mueller2007b}{9} \bibcite{RezkSalama2001a}{10} \bibcite{Rheingans2001a}{11} \bibcite{Weiler2000a}{12} \bibcite{Yoo2002a}{13}