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

itk::HistogramToImageFilter< THistogram, TFunction > Class Template Reference

This class takes a histogram as an input and returns an image of type specified by the functor. More...

#include <itkHistogramToImageFilter.h>

Inheritance diagram for itk::HistogramToImageFilter< THistogram, TFunction >:

Inheritance graph
[legend]
Collaboration diagram for itk::HistogramToImageFilter< THistogram, TFunction >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TFunction FunctorType
typedef FunctorType::OutputPixelType OutputPixelType
typedef HistogramToImageFilter Self
typedef ImageSource< Image<
OutputPixelType,::itk::Statistics::GetHistogramDimension<
THistogram >::HistogramDimension > > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Image< OutputPixelType,
::itk::Statistics::GetHistogramDimension<
THistogram >::HistogramDimension > 
OutputImageType
typedef Superclass::Pointer OutputImagePointer
typedef OutputImageType::SpacingType SpacingType
typedef OutputImageType::PointType PointType
typedef itk::ImageRegionIteratorWithIndex<
Image< OutputPixelType,
::itk::Statistics::GetHistogramDimension<
THistogram >::HistogramDimension > > 
ImageIteratorType
typedef Superclass::OutputImageRegionType OutputImageRegionType
typedef THistogram HistogramType
typedef HistogramType::MeasurementVectorType MeasurementVectorType
typedef HistogramType::SizeType HistogramSizeType
typedef HistogramType::SizeType SizeType
typedef SimpleDataObjectDecorator<
HistogramType * > 
InputHistogramObjectType

Public Member Functions

virtual const char * GetNameOfClass () const
 itkStaticConstMacro (ImageDimension, unsigned int,::itk::Statistics::GetHistogramDimension< THistogram >::HistogramDimension)
virtual const SpacingTypeGetSpacing ()
virtual const PointTypeGetOrigin ()
virtual HistogramSizeType GetSize ()
void SetFunctor (const FunctorType &functor)
void SetTotalFrequency (unsigned long n)
virtual void SetInput (const HistogramType *histogram)
virtual void SetInput (const InputHistogramObjectType *inputObject)
const InputHistogramObjectTypeGetInput (void)
virtual void SetSpacing (SpacingType _arg)
virtual void SetSpacing (const double *values)
virtual void SetOrigin (PointType _arg)
virtual void SetOrigin (const double *values)
FunctorTypeGetFunctor ()
const FunctorTypeGetFunctor () const

Static Public Member Functions

Pointer New ()

Protected Member Functions

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

Protected Attributes

FunctorType m_Functor
SizeType m_Size
SpacingType m_Spacing
PointType m_Origin

Detailed Description

template<class THistogram, class TFunction>
class itk::HistogramToImageFilter< THistogram, TFunction >

This class takes a histogram as an input and returns an image of type specified by the functor.

The dimension of the image is equal to the size of each measurement vector of the histogram. The size in the image along each dimension will be equal to the number of bins along each dimension of the histogram.

The filter may be used in registration methods to plot the joint histogram after every iteration. A functor is used since it is customary to plot p log p where p is the probability of each measurement vector p is given by Number of occurances of the measurement vector / total number of occurances of all measurement vectors.

See also:
HistogramToProbabilityImageFilter, HistogramToLogProbabilityImageFilter, HistogramToIntensityImageFilter, HistogramToEntropyImageFilter

Definition at line 51 of file itkHistogramToImageFilter.h.


Member Typedef Documentation

template<class THistogram, class TFunction>
typedef SmartPointer<const Self> itk::HistogramToImageFilter< THistogram, TFunction >::ConstPointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Reimplemented in itk::HistogramToEntropyImageFilter< THistogram >, itk::HistogramToIntensityImageFilter< THistogram >, itk::HistogramToLogProbabilityImageFilter< THistogram >, and itk::HistogramToProbabilityImageFilter< THistogram >.

Definition at line 65 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef TFunction itk::HistogramToImageFilter< THistogram, TFunction >::FunctorType
 

Standard class typedefs.

Definition at line 58 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef HistogramType::SizeType itk::HistogramToImageFilter< THistogram, TFunction >::HistogramSizeType
 

Definition at line 92 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef THistogram itk::HistogramToImageFilter< THistogram, TFunction >::HistogramType
 

Some convenient typedefs.

Definition at line 90 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef itk::ImageRegionIteratorWithIndex< Image<OutputPixelType, ::itk::Statistics::GetHistogramDimension<THistogram>::HistogramDimension> > itk::HistogramToImageFilter< THistogram, TFunction >::ImageIteratorType
 

Definition at line 78 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef SimpleDataObjectDecorator< HistogramType* > itk::HistogramToImageFilter< THistogram, TFunction >::InputHistogramObjectType
 

Since histograms are not dataobjects, we use the decorator to push them down the pipeline

Definition at line 97 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef HistogramType::MeasurementVectorType itk::HistogramToImageFilter< THistogram, TFunction >::MeasurementVectorType
 

Definition at line 91 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef Superclass::Pointer itk::HistogramToImageFilter< THistogram, TFunction >::OutputImagePointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 70 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef Superclass::OutputImageRegionType itk::HistogramToImageFilter< THistogram, TFunction >::OutputImageRegionType
 

Superclass typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 87 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef Image<OutputPixelType, ::itk::Statistics::GetHistogramDimension<THistogram>::HistogramDimension > itk::HistogramToImageFilter< THistogram, TFunction >::OutputImageType
 

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 69 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef FunctorType::OutputPixelType itk::HistogramToImageFilter< THistogram, TFunction >::OutputPixelType
 

Definition at line 59 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef SmartPointer<Self> itk::HistogramToImageFilter< THistogram, TFunction >::Pointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Reimplemented in itk::HistogramToEntropyImageFilter< THistogram >, itk::HistogramToIntensityImageFilter< THistogram >, itk::HistogramToLogProbabilityImageFilter< THistogram >, and itk::HistogramToProbabilityImageFilter< THistogram >.

Definition at line 64 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef OutputImageType::PointType itk::HistogramToImageFilter< THistogram, TFunction >::PointType
 

Definition at line 72 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef HistogramToImageFilter itk::HistogramToImageFilter< THistogram, TFunction >::Self
 

Standard class typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Reimplemented in itk::HistogramToEntropyImageFilter< THistogram >, itk::HistogramToIntensityImageFilter< THistogram >, itk::HistogramToLogProbabilityImageFilter< THistogram >, and itk::HistogramToProbabilityImageFilter< THistogram >.

Definition at line 60 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef HistogramType::SizeType itk::HistogramToImageFilter< THistogram, TFunction >::SizeType
 

Definition at line 93 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef OutputImageType::SpacingType itk::HistogramToImageFilter< THistogram, TFunction >::SpacingType
 

Definition at line 71 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
typedef ImageSource< Image<OutputPixelType, ::itk::Statistics::GetHistogramDimension<THistogram>::HistogramDimension> > itk::HistogramToImageFilter< THistogram, TFunction >::Superclass
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 63 of file itkHistogramToImageFilter.h.


Constructor & Destructor Documentation

template<class THistogram, class TFunction>
itk::HistogramToImageFilter< THistogram, TFunction >::HistogramToImageFilter  )  [protected]
 

template<class THistogram, class TFunction>
itk::HistogramToImageFilter< THistogram, TFunction >::~HistogramToImageFilter  )  [protected]
 


Member Function Documentation

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::GenerateData  )  [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< TOutputImage >.

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::GenerateOutputInformation  )  [inline, protected, virtual]
 

Generate the information decribing the output data. The default implementation of this method will copy information from the input to the output. A filter may override this method if its output will have different information than its input. For instance, a filter that shrinks an image will need to provide an implementation for this method that changes the spacing of the pixels. Such filters should call their superclass' implementation of this method prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.

Reimplemented from itk::ProcessObject.

Definition at line 162 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
const FunctorType& itk::HistogramToImageFilter< THistogram, TFunction >::GetFunctor void   )  const [inline]
 

Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer.)

Definition at line 151 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
FunctorType& itk::HistogramToImageFilter< THistogram, TFunction >::GetFunctor void   )  [inline]
 

Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer.)

Definition at line 150 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
const InputHistogramObjectType* itk::HistogramToImageFilter< THistogram, TFunction >::GetInput void   ) 
 

Set/Get the input of this process object.

template<class THistogram, class TFunction>
virtual const char* itk::HistogramToImageFilter< THistogram, TFunction >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ImageSource< TOutputImage >.

template<class THistogram, class TFunction>
virtual const PointType& itk::HistogramToImageFilter< THistogram, TFunction >::GetOrigin  )  [virtual]
 

Get the origin of the image.

template<class THistogram, class TFunction>
virtual HistogramSizeType itk::HistogramToImageFilter< THistogram, TFunction >::GetSize  )  [virtual]
 

Get the size of the histogram.

template<class THistogram, class TFunction>
virtual const SpacingType& itk::HistogramToImageFilter< THistogram, TFunction >::GetSpacing  )  [virtual]
 

Get the spacing (size of a pixel) of the image. For ImageBase and Image, the default data spacing is unity.

template<class THistogram, class TFunction>
itk::HistogramToImageFilter< THistogram, TFunction >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
::itk::Statistics::GetHistogramDimension< THistogram >::HistogramDimension 
 

Determine the image dimension.

template<class THistogram, class TFunction>
Pointer itk::HistogramToImageFilter< THistogram, TFunction >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

Reimplemented in itk::HistogramToEntropyImageFilter< THistogram >, itk::HistogramToIntensityImageFilter< THistogram >, itk::HistogramToLogProbabilityImageFilter< THistogram >, and itk::HistogramToProbabilityImageFilter< THistogram >.

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::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::ProcessObject.

template<class THistogram, class TFunction>
void itk::HistogramToImageFilter< THistogram, TFunction >::SetFunctor const FunctorType functor  )  [inline]
 

Set the functor object. This replaces the current Functor with a copy of the specified Functor. This allows the user to specify a functor that has ivars set differently than the default functor. This method requires an operator!=() be defined on the functor (or the compiler's default implementation of operator!=() being appropriate).

Definition at line 140 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::SetInput const InputHistogramObjectType inputObject  )  [virtual]
 

Set/Get the input of this process object.

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::SetInput const HistogramType histogram  )  [virtual]
 

Set/Get the input of this process object.

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::SetOrigin const double *  values  )  [virtual]
 

Set the origin of the image.

See also:
GetOrigin()

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::SetOrigin PointType  _arg  )  [virtual]
 

Set the origin of the image.

See also:
GetOrigin()

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::SetSpacing const double *  values  )  [virtual]
 

Set the spacing (size of a pixel) of the image.

See also:
GetSpacing()

template<class THistogram, class TFunction>
virtual void itk::HistogramToImageFilter< THistogram, TFunction >::SetSpacing SpacingType  _arg  )  [virtual]
 

Set the spacing (size of a pixel) of the image.

See also:
GetSpacing()

template<class THistogram, class TFunction>
void itk::HistogramToImageFilter< THistogram, TFunction >::SetTotalFrequency unsigned long  n  ) 
 


Member Data Documentation

template<class THistogram, class TFunction>
FunctorType itk::HistogramToImageFilter< THistogram, TFunction >::m_Functor [protected]
 

Definition at line 165 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
PointType itk::HistogramToImageFilter< THistogram, TFunction >::m_Origin [protected]
 

Definition at line 169 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
SizeType itk::HistogramToImageFilter< THistogram, TFunction >::m_Size [protected]
 

Definition at line 167 of file itkHistogramToImageFilter.h.

template<class THistogram, class TFunction>
SpacingType itk::HistogramToImageFilter< THistogram, TFunction >::m_Spacing [protected]
 

Definition at line 168 of file itkHistogramToImageFilter.h.


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