ITK  4.0.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes
itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage > Class Template Reference

Given a label map and an optional intensity image, compute geometric features. More...

#include <itkLabelGeometryImageFilter.h>

Inheritance diagram for itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >:
Collaboration diagram for itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >:

List of all members.

Classes

class  LabelGeometry
 Geometry stored per label. More...

Public Types

typedef itk::FixedArray
< RealType,
itkGetStaticConstMacro(ImageDimension) > 
AxesLengthType
typedef std::vector
< LabelPointType
BoundingBoxVerticesType
typedef SmartPointer< const SelfConstPointer
typedef DataObject::Pointer DataObjectPointer
typedef itk::FixedArray
< typename
LabelIndexType::IndexValueType,
itkGetStaticConstMacro(ImageDimension) > 
IndexArrayType
typedef TIntensityImage::IndexType IndexType
typedef TIntensityImage::Pointer InputImagePointer
typedef TIntensityImage IntensityImageType
typedef TLabelImage::Pointer LabelImagePointer
typedef TLabelImage LabelImageType
typedef TLabelImage::IndexType LabelIndexType
typedef std::vector
< LabelIndexType
LabelIndicesType
typedef TLabelImage::PixelType LabelPixelType
typedef TLabelImage::PointType LabelPointType
typedef TLabelImage::RegionType LabelRegionType
typedef TLabelImage::SizeType LabelSizeType
typedef std::vector
< LabelPixelType
LabelsType
typedef itksys::hash_map
< LabelPixelType,
LabelGeometry >
::const_iterator 
MapConstIterator
typedef itksys::hash_map
< LabelPixelType,
LabelGeometry >::iterator 
MapIterator
typedef itksys::hash_map
< LabelPixelType,
LabelGeometry
MapType
typedef vnl_matrix< double > MatrixType
typedef TIntensityImage::PixelType PixelType
typedef SmartPointer< SelfPointer
typedef
SimpleDataObjectDecorator
< RealType
RealObjectType
typedef NumericTraits
< PixelType >::RealType 
RealType
typedef TIntensityImage::RegionType RegionType
typedef LabelGeometryImageFilter Self
typedef TIntensityImage::SizeType SizeType
typedef ImageToImageFilter
< TLabelImage, TIntensityImage > 
Superclass
typedef std::vector< double > VectorType
typedef itk::FixedArray
< typename
LabelIndexType::IndexValueType,
itkGetStaticConstMacro(ImageDimension)*2 > 
BoundingBoxType
typedef itk::FixedArray< float,
itkGetStaticConstMacro(ImageDimension)*2 > 
BoundingBoxFloatType

Public Member Functions

virtual void CalculateOrientedBoundingBoxOff ()
virtual void CalculateOrientedBoundingBoxOn ()
virtual void CalculateOrientedIntensityRegionsOff ()
virtual void CalculateOrientedIntensityRegionsOn ()
virtual void CalculateOrientedLabelRegionsOff ()
virtual void CalculateOrientedLabelRegionsOn ()
virtual void CalculatePixelIndicesOff ()
virtual void CalculatePixelIndicesOn ()
virtual ::itk::LightObject::Pointer CreateAnother (void) const
AxesLengthType GetAxesLength (LabelPixelType label) const
BoundingBoxType GetBoundingBox (LabelPixelType label) const
LabelSizeType GetBoundingBoxSize (LabelPixelType label) const
RealType GetBoundingBoxVolume (LabelPixelType label) const
virtual bool GetCalculateOrientedBoundingBox ()
virtual bool GetCalculateOrientedIntensityRegions ()
virtual bool GetCalculateOrientedLabelRegions ()
virtual bool GetCalculatePixelIndices ()
LabelPointType GetCentroid (LabelPixelType label) const
RealType GetEccentricity (LabelPixelType label) const
VectorType GetEigenvalues (LabelPixelType label) const
MatrixType GetEigenvectors (LabelPixelType label) const
RealType GetElongation (LabelPixelType label) const
RealType GetIntegratedIntensity (LabelPixelType label) const
const TIntensityImage * GetIntensityInput () const
std::vector< LabelPixelTypeGetLabels () const
RealType GetMajorAxisLength (LabelPixelType label) const
RealType GetMinorAxisLength (LabelPixelType label) const
virtual const char * GetNameOfClass () const
SizeValueType GetNumberOfLabels () const
SizeValueType GetNumberOfObjects () const
RealType GetOrientation (LabelPixelType label) const
LabelPointType GetOrientedBoundingBoxOrigin (LabelPixelType label) const
LabelPointType GetOrientedBoundingBoxSize (LabelPixelType label) const
BoundingBoxVerticesType GetOrientedBoundingBoxVertices (LabelPixelType label) const
RealType GetOrientedBoundingBoxVolume (LabelPixelType label) const
TIntensityImage * GetOrientedIntensityImage (LabelPixelType label) const
TLabelImage * GetOrientedLabelImage (LabelPixelType label) const
LabelIndicesType GetPixelIndices (LabelPixelType label) const
RegionType GetRegion (LabelPixelType label) const
MatrixType GetRotationMatrix (LabelPixelType label) const
SizeValueType GetVolume (LabelPixelType label) const
LabelPointType GetWeightedCentroid (LabelPixelType label) const
bool HasLabel (LabelPixelType label) const
void SetCalculateOrientedBoundingBox (const bool value)
void SetCalculateOrientedIntensityRegions (const bool value)
void SetCalculateOrientedLabelRegions (const bool value)
void SetCalculatePixelIndices (const bool value)
void SetIntensityInput (const TIntensityImage *input)
 typedef (Concept::HasNumericTraits< PixelType >) InputHasNumericTraitsCheck

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int ImageDimension = TLabelImage::ImageDimension

Protected Member Functions

void GenerateData ()
 LabelGeometryImageFilter ()
 ~LabelGeometryImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const

Private Member Functions

bool CalculateOrientedBoundingBoxVertices (vnl_symmetric_eigensystem< double > eig, LabelGeometry &m_LabelGeometry)
 LabelGeometryImageFilter (const Self &)
void operator= (const Self &)

Private Attributes

LabelsType m_AllLabels
bool m_CalculateOrientedBoundingBox
bool m_CalculateOrientedIntensityRegions
bool m_CalculateOrientedLabelRegions
bool m_CalculatePixelIndices
LabelGeometry m_LabelGeometry
MapType m_LabelGeometryMapper
SimpleFastMutexLock m_Mutex

Detailed Description

template<class TLabelImage, class TIntensityImage = TLabelImage>
class itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >

Given a label map and an optional intensity image, compute geometric features.

This filter enables the measurement of geometric features of all objects in a labeled ND volume. This labeled volume can represent, for instance, a medical image segmented into different anatomical structures or a microscope image segmented into individual cells. This filter is closely related to the itkLabelStatisticsImageFilter, which measures statistics of image regions defined by a labeled mask such as min, max, and mean intensity, intensity standard deviation, and bounding boxes. This filter, however, measures the geometry of the labeled regions themselves.

It calculates features similar to the regionprops command of Matlab. The set of measurements that it enables include: volume, centroid, eigenvalues, eigenvectors, axes lenghts, eccentricity, elongation, orientation, bounding box, oriented bounding box, and rotation matrix. These features are based solely on the labeled mask itself. It also calculates integrated intensity and weighted centroid, which are measured on an intensity image under the labeled mask. These features represent the set of currently calculated features, but the framework of the filter is designed so that it can be easily expanded to measure a wide variety of other features.

Authors:
Dirk Padfield and James Miller.

This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149. Information on the National Centers for Biomedical Computing can be obtained from http://commonfund.nih.gov/bioinformatics.

This filter was contributed in the Insight Journal paper: "A Label Geometry Image Filter for Multiple Object Measurement" by Padfield D., Miller J http://www.insight-journal.org/browse/publication/301 http://hdl.handle.net/1926/1493

Wiki Examples:

Definition at line 79 of file itkLabelGeometryImageFilter.h.


Member Typedef Documentation

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itk::FixedArray< RealType, itkGetStaticConstMacro(ImageDimension) > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::AxesLengthType

Axes Length-related typedefs

Definition at line 138 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itk::FixedArray< float, itkGetStaticConstMacro(ImageDimension) *2 > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::BoundingBoxFloatType

Bounding Box-related typedefs

Definition at line 129 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itk::FixedArray< typename LabelIndexType::IndexValueType, itkGetStaticConstMacro(ImageDimension) *2 > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::BoundingBoxType

Bounding Box-related typedefs

Definition at line 127 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef std::vector< LabelPointType > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::BoundingBoxVerticesType

Definition at line 135 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef SmartPointer< const Self > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::ConstPointer
template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef DataObject::Pointer itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::DataObjectPointer

Smart Pointer type to a DataObject.

Reimplemented from itk::ImageSource< TIntensityImage >.

Definition at line 120 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itk::FixedArray< typename LabelIndexType::IndexValueType, itkGetStaticConstMacro(ImageDimension) > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::IndexArrayType

Index array typedefs

Definition at line 142 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TIntensityImage::IndexType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::IndexType

Definition at line 100 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TIntensityImage::Pointer itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::InputImagePointer
template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TIntensityImage itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::IntensityImageType

Image related typedefs.

Definition at line 93 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage::Pointer itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelImagePointer

Definition at line 105 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelImageType

Label image related typedefs.

Definition at line 104 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage::IndexType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelIndexType

Definition at line 108 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef std::vector< LabelIndexType > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelIndicesType

vector of indices

Definition at line 148 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage::PixelType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelPixelType

Definition at line 109 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage::PointType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelPointType

Definition at line 110 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage::RegionType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelRegionType

Definition at line 106 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TLabelImage::SizeType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelSizeType

Definition at line 107 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef std::vector< LabelPixelType > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelsType

vector of labels

Definition at line 145 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itksys::hash_map< LabelPixelType, LabelGeometry >::const_iterator itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::MapConstIterator

Definition at line 253 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itksys::hash_map< LabelPixelType, LabelGeometry >::iterator itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::MapIterator

Definition at line 252 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef itksys::hash_map< LabelPixelType, LabelGeometry > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::MapType

Type of the map used to store data per label

Definition at line 251 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef vnl_matrix< double > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::MatrixType

Matrix type

Definition at line 154 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TIntensityImage::PixelType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::PixelType

Definition at line 101 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef SmartPointer< Self > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::Pointer
template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef SimpleDataObjectDecorator< RealType > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::RealObjectType

Type of DataObjects used for scalar outputs

Definition at line 123 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef NumericTraits< PixelType >::RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::RealType

Type to use for computations.

Definition at line 117 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TIntensityImage::RegionType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::RegionType

Definition at line 98 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef LabelGeometryImageFilter itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::Self

Standard Self typedef

Reimplemented from itk::ImageToImageFilter< TLabelImage, TIntensityImage >.

Definition at line 84 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef TIntensityImage::SizeType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::SizeType

Definition at line 99 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef ImageToImageFilter< TLabelImage, TIntensityImage > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::Superclass
template<class TLabelImage, class TIntensityImage = TLabelImage>
typedef std::vector< double > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::VectorType

Vector type

Definition at line 151 of file itkLabelGeometryImageFilter.h.


Constructor & Destructor Documentation

template<class TLabelImage, class TIntensityImage = TLabelImage>
itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelGeometryImageFilter ( ) [protected]

End concept checking

template<class TLabelImage, class TIntensityImage = TLabelImage>
itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::~LabelGeometryImageFilter ( ) [inline, protected]

End concept checking

Definition at line 471 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::LabelGeometryImageFilter ( const Self ) [private]

Member Function Documentation

template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedBoundingBoxOff ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedBoundingBoxOn ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedBoundingBoxVertices ( vnl_symmetric_eigensystem< double >  eig,
LabelGeometry m_LabelGeometry 
) [private]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedIntensityRegionsOff ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedIntensityRegionsOn ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedLabelRegionsOff ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculateOrientedLabelRegionsOn ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculatePixelIndicesOff ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CalculatePixelIndicesOn ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual::itk::LightObject::Pointer itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GenerateData ( void  ) [protected, virtual]

A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.

See also:
ThreadedGenerateData()

Reimplemented from itk::ImageSource< TIntensityImage >.

template<class TLabelImage, class TIntensityImage = TLabelImage>
AxesLengthType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetAxesLength ( LabelPixelType  label) const

Return the axes length for a label.

template<class TLabelImage, class TIntensityImage = TLabelImage>
BoundingBoxType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetBoundingBox ( LabelPixelType  label) const

Return the computed bounding box for a label. This is organized in min/max pairs as [min(X), max(X), min(Y), max(Y), min(Z), max(Z),...]

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelSizeType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetBoundingBoxSize ( LabelPixelType  label) const

Return the size of the bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetBoundingBoxVolume ( LabelPixelType  label) const

Return the volume of the bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetCalculateOrientedBoundingBox ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetCalculateOrientedIntensityRegions ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetCalculateOrientedLabelRegions ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetCalculatePixelIndices ( ) [virtual]
template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelPointType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetCentroid ( LabelPixelType  label) const

Return the unweighted centroid for a label.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetEccentricity ( LabelPixelType  label) const

Return the eccentricity for a label.

template<class TLabelImage, class TIntensityImage = TLabelImage>
VectorType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetEigenvalues ( LabelPixelType  label) const

Return the eigenvalues as a vector.

template<class TLabelImage, class TIntensityImage = TLabelImage>
MatrixType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetEigenvectors ( LabelPixelType  label) const

Return the eigenvectors as a matrix.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetElongation ( LabelPixelType  label) const

Return the elongation for a label. This is defined as the length of the major axis divided by the length of the minor axis.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetIntegratedIntensity ( LabelPixelType  label) const

Return the number of pixels for all labels. Return the computed integrated pixel intensity for a label.

template<class TLabelImage, class TIntensityImage = TLabelImage>
const TIntensityImage* itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetIntensityInput ( ) const [inline]

Get the label image

Definition at line 345 of file itkLabelGeometryImageFilter.h.

References itk::ProcessObject::GetInput().

template<class TLabelImage, class TIntensityImage = TLabelImage>
std::vector< LabelPixelType > itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetLabels ( ) const [inline]

Get the labels that are in the image.

Definition at line 369 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetMajorAxisLength ( LabelPixelType  label) const

Return the major axis length for a label. This is a convenience class that returns the longest length from GetAxesLength.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetMinorAxisLength ( LabelPixelType  label) const

Return the minor axis length for a label. This is a convenience class that returns the shortest length from GetAxesLength.

template<class TLabelImage, class TIntensityImage = TLabelImage>
virtual const char* itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetNameOfClass ( ) const [virtual]

Runtime information support.

Reimplemented from itk::ImageToImageFilter< TLabelImage, TIntensityImage >.

template<class TLabelImage, class TIntensityImage = TLabelImage>
SizeValueType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetNumberOfLabels ( ) const [inline]

Definition at line 363 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
SizeValueType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetNumberOfObjects ( ) const [inline]

Get the number of labels used

Definition at line 358 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientation ( LabelPixelType  label) const

Return the orientation for a label defined in radians.

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelPointType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientedBoundingBoxOrigin ( LabelPixelType  label) const

Return the origin of the oriented bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelPointType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientedBoundingBoxSize ( LabelPixelType  label) const

Return the size of the oriented bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
BoundingBoxVerticesType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientedBoundingBoxVertices ( LabelPixelType  label) const

Return the oriented bounding box vertices. The order of the vertices corresponds with binary counting, where min is zero and max is one. For example, in 2D, binary counting will give [0,0],[0,1],[1,0],[1,1], which corresponds to [minX,minY],[minX,maxY],[maxX,minY],[maxX,maxY]. Each vertex is defined as an ND point.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RealType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientedBoundingBoxVolume ( LabelPixelType  label) const

Return the volume of the oriented bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
TIntensityImage* itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientedIntensityImage ( LabelPixelType  label) const

Return the intensity region defined by the oriented bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
TLabelImage* itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetOrientedLabelImage ( LabelPixelType  label) const

Return the label region defined by the oriented bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelIndicesType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetPixelIndices ( LabelPixelType  label) const

Return the all pixel indices for a label.

template<class TLabelImage, class TIntensityImage = TLabelImage>
RegionType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetRegion ( LabelPixelType  label) const

Return the region defined by the bounding box.

template<class TLabelImage, class TIntensityImage = TLabelImage>
MatrixType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetRotationMatrix ( LabelPixelType  label) const

Return the rotation matrix defined by the eigenvalues/eigenvectors.

template<class TLabelImage, class TIntensityImage = TLabelImage>
SizeValueType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetVolume ( LabelPixelType  label) const

Return the number of pixels for a label. This is the same as the volume and the zero order moment

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelPointType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::GetWeightedCentroid ( LabelPixelType  label) const

Return the weighted centroid for a label.

template<class TLabelImage, class TIntensityImage = TLabelImage>
bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::HasLabel ( LabelPixelType  label) const [inline]

Does the specified label exist? Can only be called after a call to Update().

Definition at line 352 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
static Pointer itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::operator= ( const Self ) [private]

PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.

Reimplemented from itk::ImageToImageFilter< TLabelImage, TIntensityImage >.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

End concept checking

Reimplemented from itk::ImageToImageFilter< TLabelImage, TIntensityImage >.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::SetCalculateOrientedBoundingBox ( const bool  value) [inline]

Definition at line 285 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::SetCalculateOrientedIntensityRegions ( const bool  value) [inline]

Definition at line 321 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::SetCalculateOrientedLabelRegions ( const bool  value) [inline]

Definition at line 303 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::SetCalculatePixelIndices ( const bool  value) [inline]

Definition at line 258 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
void itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::SetIntensityInput ( const TIntensityImage *  input) [inline]

Set the intensity image

Definition at line 338 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::typedef ( Concept::HasNumericTraits< PixelType )

Begin concept checking This class requires InputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< PixelType > )


Member Data Documentation

template<class TLabelImage, class TIntensityImage = TLabelImage>
const unsigned int itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::ImageDimension = TLabelImage::ImageDimension [static]

Image related typedefs.

Definition at line 114 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelsType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_AllLabels [private]

Definition at line 490 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_CalculateOrientedBoundingBox [private]

Definition at line 484 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_CalculateOrientedIntensityRegions [private]

Definition at line 486 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_CalculateOrientedLabelRegions [private]

Definition at line 485 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
bool itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_CalculatePixelIndices [private]

Definition at line 483 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
LabelGeometry itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_LabelGeometry [private]

Definition at line 489 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
MapType itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_LabelGeometryMapper [private]

Definition at line 488 of file itkLabelGeometryImageFilter.h.

template<class TLabelImage, class TIntensityImage = TLabelImage>
SimpleFastMutexLock itk::LabelGeometryImageFilter< TLabelImage, TIntensityImage >::m_Mutex [private]

Definition at line 492 of file itkLabelGeometryImageFilter.h.


The documentation for this class was generated from the following file: