NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType > Class Template Reference

This class takes as input 2 input images, and outputs the registration force. More...

Inheritance diagram for itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >:
Inheritance graph
[legend]
Collaboration diagram for itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >:
Collaboration graph
[legend]

Public Types

typedef RegistrationForceFilter Self
 
typedef ImageToImageFilter
< TFixedImage, Image< Vector
< TScalarType,
TFixedImage::ImageDimension >
, TFixedImage::ImageDimension > > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef TScalarType OutputDataType
 
typedef Vector< OutputDataType,
itkGetStaticConstMacro(Dimension) > 
OutputPixelType
 
typedef Image< OutputPixelType,
itkGetStaticConstMacro(Dimension) > 
OutputImageType
 
typedef Superclass::InputImageType InputImageType
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef
Superclass::InputImageRegionType 
RegionType
 
typedef TScalarType MeasureType
 
typedef
HistogramSimilarityMeasure
< TFixedImage, TMovingImage > 
MetricType
 
typedef MetricType::Pointer MetricPointer
 
typedef MetricType::HistogramType HistogramType
 
typedef
MetricType::HistogramPointer 
HistogramPointer
 
typedef
MetricType::HistogramSizeType 
HistogramSizeType
 
typedef
MetricType::HistogramMeasurementVectorType 
HistogramMeasurementVectorType
 
typedef
MetricType::HistogramFrequencyType 
HistogramFrequencyType
 
typedef
MetricType::HistogramIteratorType 
HistogramIteratorType
 
typedef SpatialObject< DimensionFixedImageMaskType
 
typedef Image< double,
TFixedImage::ImageDimension > 
JacobianImageType
 

Public Member Functions

virtual const char * GetClassName () const
 
 itkStaticConstMacro (Dimension, unsigned int, TFixedImage::ImageDimension)
 
virtual void SetFixedImage (const InputImageType *image)
 
virtual void SetTransformedMovingImage (const InputImageType *image)
 
virtual void SetUnTransformedMovingImage (const InputImageType *image)
 
virtual void SetNthInput (unsigned int idx, const InputImageType *)
 
virtual void SetMetric (MetricType *_arg)
 
virtual MetricTypeGetMetric ()
 
virtual void SetScaleToSizeOfVoxelAxis (bool _arg)
 
virtual bool GetScaleToSizeOfVoxelAxis ()
 
virtual void SetFixedUpperPixelValue (InputImagePixelType _arg)
 
virtual InputImagePixelType GetFixedUpperPixelValue ()
 
virtual void SetFixedLowerPixelValue (InputImagePixelType _arg)
 
virtual InputImagePixelType GetFixedLowerPixelValue ()
 
virtual void SetMovingUpperPixelValue (InputImagePixelType _arg)
 
virtual InputImagePixelType GetMovingUpperPixelValue ()
 
virtual void SetMovingLowerPixelValue (InputImagePixelType _arg)
 
virtual InputImagePixelType GetMovingLowerPixelValue ()
 
virtual void SetIsSymmetric (bool _arg)
 
virtual bool GetIsSymmetric ()
 
virtual void SetFixedImageMask (const FixedImageMaskType *fixedImageMask)
 
void WriteForceImage (std::string filename)
 
virtual void SetFixedImageTransformJacobian (typename JacobianImageType::Pointer jacobian)
 
virtual void SetMovingImageTransformJacobian (typename JacobianImageType::Pointer jacobian)
 

Protected Member Functions

 RegistrationForceFilter ()
 
 ~RegistrationForceFilter ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void BeforeThreadedGenerateData ()
 
virtual void AfterThreadedGenerateData ()
 

Protected Attributes

MetricPointer m_Metric
 
bool m_ScaleToSizeOfVoxelAxis
 
InputImagePixelType m_FixedUpperPixelValue
 
InputImagePixelType m_FixedLowerPixelValue
 
InputImagePixelType m_MovingUpperPixelValue
 
InputImagePixelType m_MovingLowerPixelValue
 
const FixedImageMaskTypem_FixedImageMask
 
bool m_IsSymmetric
 
JacobianImageType::Pointer m_FixedImageTransformJacobian
 
JacobianImageType::Pointer m_MovingImageTransformJacobian
 

Detailed Description

template<class TFixedImage, class TMovingImage, class TScalarType>
class itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >

This class takes as input 2 input images, and outputs the registration force.

All input images are expected to have the same template parameters and have the same size and origin. The output is a vector image, of the same size as the input image, where each pixel is a vector with as many components as image dimensions. ie. you put in 2 images, the fixed image, and the moving image resampled into the same coordinate system as the fixed. Each input image is a scalar image. Lets say that are 2D images of 256 x 256 pixels. The output is 256 x 256 of type vector 2D.

Member Typedef Documentation

template<class TFixedImage, class TMovingImage, class TScalarType>
typedef SmartPointer<const Self> itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::ConstPointer
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef SpatialObject< Dimension > itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::FixedImageMaskType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::HistogramFrequencyType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::HistogramFrequencyType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::HistogramIteratorType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::HistogramIteratorType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::HistogramMeasurementVectorType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::HistogramMeasurementVectorType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::HistogramPointer itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::HistogramPointer
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::HistogramSizeType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::HistogramSizeType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::HistogramType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::HistogramType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef InputImageType::PixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::InputImagePixelType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef Superclass::InputImageType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::InputImageType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef Image<double, TFixedImage::ImageDimension> itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::JacobianImageType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef TScalarType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::MeasureType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef MetricType::Pointer itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::MetricPointer
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef HistogramSimilarityMeasure<TFixedImage, TMovingImage> itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::MetricType

This can be refactored later if necessary, and moved to a derived class.

template<class TFixedImage, class TMovingImage, class TScalarType>
typedef TScalarType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::OutputDataType

Standard typedefs.

template<class TFixedImage, class TMovingImage, class TScalarType>
typedef Image< OutputPixelType, itkGetStaticConstMacro(Dimension) > itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::OutputImageType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef Vector< OutputDataType, itkGetStaticConstMacro(Dimension) > itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::OutputPixelType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef SmartPointer<Self> itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::Pointer
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef Superclass::InputImageRegionType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::RegionType
template<class TFixedImage, class TMovingImage, class TScalarType>
typedef RegistrationForceFilter itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::Self

Standard "Self" typedef.

template<class TFixedImage, class TMovingImage, class TScalarType>
typedef ImageToImageFilter<TFixedImage, Image< Vector< TScalarType, TFixedImage::ImageDimension>, TFixedImage::ImageDimension> > itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::Superclass

Constructor & Destructor Documentation

template<class TFixedImage, class TMovingImage, class TScalarType>
itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::RegistrationForceFilter ( )
protected
template<class TFixedImage, class TMovingImage, class TScalarType>
itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::~RegistrationForceFilter ( )
inlineprotected

Member Function Documentation

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::AfterThreadedGenerateData ( )
protectedvirtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::BeforeThreadedGenerateData ( )
protectedvirtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual const char* itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetClassName ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetFixedLowerPixelValue ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetFixedUpperPixelValue ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual bool itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetIsSymmetric ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual MetricType* itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetMetric ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetMovingLowerPixelValue ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetMovingUpperPixelValue ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual bool itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::GetScaleToSizeOfVoxelAxis ( )
virtual
template<class TFixedImage, class TMovingImage, class TScalarType>
itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::itkStaticConstMacro ( Dimension  ,
unsigned  int,
TFixedImage::ImageDimension   
)

Get the number of dimensions we are working in.

template<class TFixedImage, class TMovingImage, class TScalarType>
void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protected
template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetFixedImage ( const InputImageType image)
inlinevirtual

Set the fixed image at position 0.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetFixedImageMask ( const FixedImageMaskType fixedImageMask)
inlinevirtual

Set fixed image mask.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetFixedImageTransformJacobian ( typename JacobianImageType::Pointer  jacobian)
inlinevirtual

Set m_FixedImageTransformJacobian.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetFixedLowerPixelValue ( InputImagePixelType  _arg)
virtual

Set/Get the FixedUpperPixelValue.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetFixedUpperPixelValue ( InputImagePixelType  _arg)
virtual

Set/Get the FixedUpperPixelValue.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetIsSymmetric ( bool  _arg)
virtual

Set/Get.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetMetric ( MetricType _arg)
virtual

Set/Get the Metric.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetMovingImageTransformJacobian ( typename JacobianImageType::Pointer  jacobian)
inlinevirtual

Set m_MovingImageTransformJacobian.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetMovingLowerPixelValue ( InputImagePixelType  _arg)
virtual

Set/Get the MovingUpperPixelValue.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetMovingUpperPixelValue ( InputImagePixelType  _arg)
virtual

Set/Get the MovingUpperPixelValue.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetNthInput ( unsigned int  idx,
const InputImageType  
)
virtual

We set the input images by number.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetScaleToSizeOfVoxelAxis ( bool  _arg)
virtual

Set/Get the ScaleToSizeOfVoxelAxis flag. Subclasses or clients decide what to do with it.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetTransformedMovingImage ( const InputImageType image)
inlinevirtual

Set the transformed moving image at position 1.

template<class TFixedImage, class TMovingImage, class TScalarType>
virtual void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::SetUnTransformedMovingImage ( const InputImageType image)
inlinevirtual

Set the un-transformed moving image at position 2.

template<class TFixedImage, class TMovingImage, class TScalarType>
void itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::WriteForceImage ( std::string  filename)

Mainly for debugging, write image to file.

Member Data Documentation

template<class TFixedImage, class TMovingImage, class TScalarType>
const FixedImageMaskType* itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_FixedImageMask
protected

Fixed image mask.

template<class TFixedImage, class TMovingImage, class TScalarType>
JacobianImageType::Pointer itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_FixedImageTransformJacobian
protected

Jacobian of the fixed image transform.

template<class TFixedImage, class TMovingImage, class TScalarType>
InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_FixedLowerPixelValue
protected

So we can mask out intensities to generate zero force.

template<class TFixedImage, class TMovingImage, class TScalarType>
InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_FixedUpperPixelValue
protected

So we can mask out intensities to generate zero force.

template<class TFixedImage, class TMovingImage, class TScalarType>
bool itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_IsSymmetric
protected

Symmetric?

template<class TFixedImage, class TMovingImage, class TScalarType>
MetricPointer itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_Metric
protected

We need this to calculate entropies, so it should be a histogram based one.

template<class TFixedImage, class TMovingImage, class TScalarType>
JacobianImageType::Pointer itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_MovingImageTransformJacobian
protected

Jacobian of the moving image transform.

template<class TFixedImage, class TMovingImage, class TScalarType>
InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_MovingLowerPixelValue
protected

So we can mask out intensities to generate zero force.

template<class TFixedImage, class TMovingImage, class TScalarType>
InputImagePixelType itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_MovingUpperPixelValue
protected

So we can mask out intensities to generate zero force.

template<class TFixedImage, class TMovingImage, class TScalarType>
bool itk::RegistrationForceFilter< TFixedImage, TMovingImage, TScalarType >::m_ScaleToSizeOfVoxelAxis
protected

Multiply force by size of voxels.


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