|
|
|
Home
About Sponsors Download Documentation FAQ Mailing Lists Testing News Bug Tracking Data Related Software Applications Copyright Marketplace |
Reducing aliasing artifacts in iso-surfaces of binary volumes.IntroductionVisualizing a binary volume as a 3D model involves rendering an estimate of the volume's surface. Surface estimation from a discrete binary volume is generally an ill posed problem because the discrete sampling of a continuous function does not retain enough information to recover that continuous function. There are infinitely many possible isosurface embeddings, and the particular estimate of the isosurface will depend on the choice of interpolant. The binary volume itself is the worst possible choice of an isosurface embedding and will result in considerable aliasing artifacts if rendered directly. Yet binary volumes are of interest in the medical imaging domain because they are commonly used to encode segmentation data. Very high contrast imaging modalities also produce information that can be considered binary for many applications. The problem addressed here is how to create a surface estimation from a binary volume which reduces aliasing artifacts. We present a technique for antialiasing using deformable level set models. An initial isosurface estimation of the volume is deformed under mean curvature flow. This flow is constrained by a discrete, inside/outside function that is the binary volume itself. This technique produces a surface estimation that satisfies criteria recognized to give good results from common surface rendering and extraction algorithms. Specifically, the isosurface estimation is one that picks the least surface area to give a maximally smooth surface. For more details, see [1]. Level Set Modeling in the Insight ToolkitBefore describing the implementation of the antialiasing filter itself, it is helpful to understand its context within the larger class of solvers which exist in the Insight Toolkit (Itk). Itk contains a framework of solvers and function objects for building filters which use level set methods. At the top of the hierarchy, the FiniteDifferenceImageFilter implements a generic finite difference scheme for solving partial differential equations. SparseFieldLevelSetImageFilter refines this functionality by narrowing the domain of the solution to a sparse band of pixels around the evolving interface. A separate hierarchy of function objects does the numerical work of the calculations. This arrangement allows a single solver to be used for multiple applications by simply interchanging function objects. For level-set applications, there is a CurvatureFlowFunction and more general LevelSetFunction object, each of which can be subclassed to create new algorithms. Figure 1 below illustrates the solver and function object frameworks. For more detailed information, see the online and inline documentation for the objects themselves.
itk::AntiAliasBinaryImageFilterAntiAliasBinaryImageFilter implements the surface estimation technique for reducing aliasing artifacts on itk::Images. Briefly, the algorithm is as follows: The binary volume (filter input) is used as a set of constraints in an iterative relaxation process of an initial estimate of the ND surface. The surface is described implicitly as the zero level set of a volume and allowed to deform under curvature flow. A set of contraints is introduced on its movement which fits the surface to the volume in such a way as to minimize surface area, producing a smooth estimation. Figure 2 describes an iteration of the algorithm. AntiAliasBinaryImageFilter is built as a subclass of the SparseFieldLevelSetImageFilter solver and uses CurvatureFlowFunction for mean curvature calculations on the evolving interface. The constraint function on the iterative update has been added in this subclass.
The filter produces a volume which is a level-set image of real, signed values (regardless of the input type). The zero crossings of the image represent the estimated position of the isosurface. Values inside the surface are positive and values outside the surface are negative. The isosurface is suitable for rendering without further processing using standard rendering techniques. Example codeA sample application for processing data with AntiAliasBinaryImageFilter can be found in InsightApplications/AntiAliasBinaryImageFilter. To use this code, first read the README.txt file found in that directory. You will also need to build the parameter file parser found in InsightApplications/StreamedWatershedSegmentation/ParameterFileParser. Detailed instructions can be found in the application directories. Note that after building the antialiasing application, you will find another application that generates a sample data set. Test your build on this sample data. If you have access to a Tcl wrapped version of VTK 4.2, then there is also a tcl script available for rendering the output of the application. Some resultsThe images in this section are renderings of data processed with the example code in Applications/AntiAliasBinaryImageFilter. All renderings were done in VTK using the Marching Cubes algorithm. For each example, the image on the left is a rendering of the binary volume and the image on the right is a rendering of the surface estimation. Times represent processing on a single Intel PIII 900Mhz processor.
Figure 3. A segmentation (done in Itk!) of the right lens from the Visible Female color cryosection
data.
Figure 4. A segmentation (done in Itk!) of the right eye with lateral and medial rectus muscles and
the optic nerve from the Visible Female color cryosection data.
Figure 5. A high resolution, binary representation of an extraction of the surface of a brain (from MRI data).
Detail of above.
Figure 6. Detail of a high resolution binary toy dragon volume.
References[1] R. Whitaker. Reducing Aliasing Artifacts in Iso-Surfaces of Binary Volumes. IEEE Volume Visualization and Graphics Symposium, October 2000, pp.23-32. [2] J. Sethian. Level Set Methods: Evolving Interfaces in
Geometry, Fluid Mechanics, Computer Vision, and Material
Sciences. Cambridge University Press. 1996.
|