Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh > Class Template Reference

#include <itkBinaryMask3DMeshSource.h>

Inheritance diagram for itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >:

Inheritance graph
[legend]
Collaboration diagram for itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef BinaryMask3DMeshSource Self
typedef ImageToMeshFilter<
TInputImage, TOutputMesh > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TOutputMesh OutputMeshType
typedef OutputMeshType::MeshTraits OMeshTraits
typedef OutputMeshType::PointType OPointType
typedef OMeshTraits::PixelType OPixelType
typedef OutputMeshType::Pointer OutputMeshPointer
typedef OutputMeshType::CellTraits CellTraits
typedef OutputMeshType::PointsContainerPointer PointsContainerPointer
typedef OutputMeshType::PointsContainer PointsContainer
typedef OutputMeshType::CellsContainerPointer CellsContainerPointer
typedef OutputMeshType::CellsContainer CellsContainer
typedef CovariantVector< double, 2 > doubleVector
typedef CovariantVector< int, 2 > intVector
typedef CellInterface< OPixelType,
CellTraits
TCellInterface
typedef TriangleCell< TCellInterfaceTriCell
typedef TriCell::SelfAutoPointer TriCellAutoPointer
typedef TInputImage InputImageType
typedef InputImageType::Pointer InputImagePointer
typedef InputImageType::ConstPointer InputImageConstPointer
typedef InputImageType::PixelType InputPixelType
typedef InputImageType::SpacingType SpacingType
typedef InputImageType::PointType OriginType
typedef InputImageType::IndexType InputImageIndexType
typedef ImageRegionConstIterator<
InputImageType
InputImageIterator

Public Member Functions

virtual const char * GetNameOfClass () const
virtual void SetObjectValue (InputPixelType _arg)
virtual unsigned long GetNumberOfNodes ()
virtual unsigned long GetNumberOfCells ()
virtual void SetInput (const InputImageType *inputImage)

Static Public Member Functions

Pointer New ()

Protected Member Functions

 BinaryMask3DMeshSource ()
 ~BinaryMask3DMeshSource ()
void PrintSelf (std::ostream &os, Indent indent) const
void GenerateData ()
virtual void GenerateOutputInformation ()

Detailed Description

template<class TInputImage, class TOutputMesh>
class itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >

This class tries to construct a 3D mesh surface based on a binary mask. It can be used to integrate a region-based segmentation method and a deformable model into one hybrid framework.
To construct a mesh, we need to construct elements in a voxel and combine those elements later to form the final mesh. Before go through every voxel in the 3D volume, we first construct 2 look up tables. The index of these 2 tables are the on-off combination of the 8 nodes that form the voxel. So both of these tables has the size of $2^8$ bytes. According to previous work, all those $2^8$ combination of the nodes can be grouped into 16 final combinations. In the first table, we record the final combination that can be transformed from the current combination. The entries of the second table are made up of the transforming sequence that is necessary for the current combination transform to one of the final combinations.
We then go through the 3D volume voxel by voxel, using those two tables we have defined to construct elements within each voxel. We then merge all these mesh elements into one 3D mesh.
PARAMETERS
The ObjectValue parameter is used to identify the object. In most applications, pixels in the object region are assigned to "1", so the default value of ObjectValue is set to "1"
REFERENCE
W. Lorensen and H. Cline, "Marching Cubes: A High Resolution 3D Surface Construction Algorithm", Computer Graphics 21, pp. 163-169, 1987.
INPUT
The input should be a 3D binary image.

Definition at line 78 of file itkBinaryMask3DMeshSource.h.


Member Typedef Documentation

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::CellsContainer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::CellsContainer
 

Definition at line 105 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::CellsContainerPointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::CellsContainerPointer
 

Definition at line 104 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::CellTraits itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::CellTraits
 

Definition at line 101 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef SmartPointer<const Self> itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::ConstPointer
 

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 85 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef CovariantVector<double, 2> itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::doubleVector
 

Definition at line 106 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef InputImageType::ConstPointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::InputImageConstPointer
 

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 118 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef InputImageType::IndexType itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::InputImageIndexType
 

Type definition for the classified image index type.

Definition at line 124 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef ImageRegionConstIterator< InputImageType > itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::InputImageIterator
 

Definition at line 126 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef InputImageType::Pointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::InputImagePointer
 

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 117 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef TInputImage itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::InputImageType
 

Input Image Type Definition.

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 116 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef InputImageType::PixelType itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::InputPixelType
 

Definition at line 119 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef CovariantVector<int, 2> itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::intVector
 

Definition at line 107 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::MeshTraits itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::OMeshTraits
 

Definition at line 95 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OMeshTraits::PixelType itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::OPixelType
 

Definition at line 97 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::PointType itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::OPointType
 

Definition at line 96 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef InputImageType::PointType itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::OriginType
 

Definition at line 121 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::Pointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::OutputMeshPointer
 

Some convenient typedefs.

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 100 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef TOutputMesh itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::OutputMeshType
 

Hold on to the type information specified by the template parameters.

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 94 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef SmartPointer<Self> itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::Pointer
 

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 84 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::PointsContainer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::PointsContainer
 

Definition at line 103 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef OutputMeshType::PointsContainerPointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::PointsContainerPointer
 

Definition at line 102 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef BinaryMask3DMeshSource itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::Self
 

Standard "Self" typedef.

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 82 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef InputImageType::SpacingType itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::SpacingType
 

Definition at line 120 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef ImageToMeshFilter< TInputImage, TOutputMesh > itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::Superclass
 

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 83 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef CellInterface<OPixelType, CellTraits> itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::TCellInterface
 

Define the triangular cell types which forms the surface of the model and will be used in FEM application.

Definition at line 111 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef TriangleCell<TCellInterface> itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::TriCell
 

Definition at line 112 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
typedef TriCell::SelfAutoPointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::TriCellAutoPointer
 

Definition at line 113 of file itkBinaryMask3DMeshSource.h.


Constructor & Destructor Documentation

template<class TInputImage, class TOutputMesh>
itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::BinaryMask3DMeshSource  )  [protected]
 

template<class TInputImage, class TOutputMesh>
itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::~BinaryMask3DMeshSource  )  [protected]
 


Member Function Documentation

template<class TInputImage, class TOutputMesh>
void itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::GenerateData void   )  [protected, virtual]
 

This method causes the filter to generate its output.

Reimplemented from itk::ProcessObject.

template<class TInputImage, class TOutputMesh>
virtual void itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::GenerateOutputInformation  )  [inline, protected, virtual]
 

Prepare the output

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

Definition at line 143 of file itkBinaryMask3DMeshSource.h.

template<class TInputImage, class TOutputMesh>
virtual const char* itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

template<class TInputImage, class TOutputMesh>
virtual unsigned long itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::GetNumberOfCells  )  [virtual]
 

template<class TInputImage, class TOutputMesh>
virtual unsigned long itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::GetNumberOfNodes  )  [virtual]
 

template<class TInputImage, class TOutputMesh>
Pointer itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::MeshSource< TOutputMesh >.

template<class TInputImage, class TOutputMesh>
void itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::ImageToMeshFilter< TInputImage, TOutputMesh >.

template<class TInputImage, class TOutputMesh>
virtual void itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::SetInput const InputImageType inputImage  )  [virtual]
 

accept the input image

template<class TInputImage, class TOutputMesh>
virtual void itk::BinaryMask3DMeshSource< TInputImage, TOutputMesh >::SetObjectValue InputPixelType  _arg  )  [virtual]
 


The documentation for this class was generated from the following file:
Generated at Thu May 25 00:25:04 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000