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

Class to apply the affine transformation matrix to a 3D image. More...

Inheritance diagram for itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >:
Inheritance graph
[legend]
Collaboration diagram for itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >:
Collaboration graph
[legend]

Public Types

typedef
ForwardAndBackwardProjectionMatrix 
Self
 
typedef Object Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef itk::Size< 3 > VolumeSizeType
 
typedef Image< IntensityType, 3 > InputImageType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef
InputImageType::ConstPointer 
InputImageConstPointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::SizeType InputImageSizeType
 
typedef InputImageType::SpacingType InputImageSpacingType
 
typedef InputImageType::PointType InputImagePointType
 
typedef InputImageType::IndexType InputImageIndexType
 
typedef Image< IntensityType, 2 > OutputImageType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
 
typedef OutputImageType::RegionType OutputImageRegionType
 
typedef OutputImageType::PixelType OutputImagePixelType
 
typedef OutputImageType::SizeType OutputImageSizeType
 
typedef
OutputImageType::SpacingType 
OutputImageSpacingType
 
typedef OutputImageType::PointType OutputImagePointType
 
typedef OutputImageType::IndexType OutputImageIndexType
 
typedef
itk::ProjectionGeometry
< IntensityType > 
ProjectionGeometryType
 
typedef
ProjectionGeometryType::Pointer 
ProjectionGeometryPointer
 
typedef
itk::EulerAffineTransform
< double, 3, 3 > 
EulerAffineTransformType
 
typedef
EulerAffineTransformType::Pointer 
EulerAffineTransformPointer
 
typedef
itk::PerspectiveProjectionTransform
< double > 
PerspectiveProjectionTransformType
 
typedef
PerspectiveProjectionTransformType::Pointer 
PerspectiveProjectionTransformPointer
 
typedef vnl_sparse_matrix
< TScalarType > 
SparseMatrixType
 
typedef vnl_matrix< TScalarType > FullMatrixType
 
typedef vnl_vector< TScalarType > VectorType
 
typedef
ForwardAndBackwardProjectionMatrix 
Self
 
typedef Object Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef itk::Size< 3 > VolumeSizeType
 
typedef Image< IntensityType, 3 > InputImageType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef
InputImageType::ConstPointer 
InputImageConstPointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::SizeType InputImageSizeType
 
typedef InputImageType::SpacingType InputImageSpacingType
 
typedef InputImageType::PointType InputImagePointType
 
typedef InputImageType::IndexType InputImageIndexType
 
typedef Image< IntensityType, 2 > OutputImageType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
 
typedef OutputImageType::RegionType OutputImageRegionType
 
typedef OutputImageType::PixelType OutputImagePixelType
 
typedef OutputImageType::SizeType OutputImageSizeType
 
typedef
OutputImageType::SpacingType 
OutputImageSpacingType
 
typedef OutputImageType::PointType OutputImagePointType
 
typedef OutputImageType::IndexType OutputImageIndexType
 
typedef
itk::ProjectionGeometry
< IntensityType > 
ProjectionGeometryType
 
typedef
ProjectionGeometryType::Pointer 
ProjectionGeometryPointer
 
typedef
itk::EulerAffineTransform
< double, 3, 3 > 
EulerAffineTransformType
 
typedef
EulerAffineTransformType::Pointer 
EulerAffineTransformPointer
 
typedef
itk::PerspectiveProjectionTransform
< double > 
PerspectiveProjectionTransformType
 
typedef
PerspectiveProjectionTransformType::Pointer 
PerspectiveProjectionTransformPointer
 
typedef vnl_sparse_matrix
< TScalarType > 
SparseMatrixType
 
typedef vnl_matrix< TScalarType > FullMatrixType
 
typedef vnl_vector< TScalarType > VectorType
 

Public Member Functions

virtual const char * GetClassName () const
 
virtual void SetProjectionGeometry (ProjectionGeometryType *_arg)
 Get/Set the projection geometry. More...
 
virtual ProjectionGeometryTypeGetProjectionGeometry ()
 
virtual void SetAffineTransform (EulerAffineTransformType *_arg)
 Set the affine transformation. More...
 
virtual EulerAffineTransformTypeGetAffineTransform ()
 Get the affine transformation. More...
 
virtual void SetPerspectiveTransform (PerspectiveProjectionTransformType *_arg)
 Set the perspective transformation. More...
 
virtual
PerspectiveProjectionTransformType
GetPerspectiveTransform ()
 Get the perspective transformation. More...
 
void SetProjectedImageSize (OutputImageSizeType &outImageSize)
 Set the size in pixels of the output projected image. More...
 
void SetProjectedImageSpacing (OutputImageSpacingType &outImageSpacing)
 Set the resolution in mm of the output projected image. More...
 
void SetProjectedImageOrigin (OutputImagePointType &outImageOrigin)
 Set the origin of the output projected image. More...
 
void SetVolumeSize (const VolumeSizeType &r)
 Set the volume size. More...
 
void GetForwardProjectionSparseMatrix (SparseMatrixType &R, InputImageConstPointer inImage, OutputImagePointer outImage, VolumeSizeType &inSize, OutputImageSizeType &outSize, const unsigned int &projNum)
 Calculate and return the affine transformation matrix. More...
 
void GetForwardProjectionSparseMatrix (SparseMatrixType &R, InputImagePointer inImage, OutputImagePointer outImage, VolumeSizeType &inSize, OutputImageSizeType &outSize, const unsigned int &projNum)
 Calculate and return the affine transformation matrix (Overloaded using non-const input image pointer) More...
 
void GetBackwardProjectionSparseMatrix (SparseMatrixType &R, SparseMatrixType &RTrans, VolumeSizeType &inSize, OutputImageSizeType &outSize, const unsigned int &projNum)
 Calculate and return the transpose of the affine transformation matrix. More...
 
void CalculteMatrixVectorMultiplication (SparseMatrixType &R, VectorType const &inputImageVector, VectorType &outputImageVector)
 Calculate and return the multiplication of the affine transformation matrix and image vector. More...
 
virtual const char * GetClassName () const
 
virtual void SetProjectionGeometry (ProjectionGeometryType *_arg)
 Get/Set the projection geometry. More...
 
virtual ProjectionGeometryTypeGetProjectionGeometry ()
 
virtual void SetAffineTransform (EulerAffineTransformType *_arg)
 Set the affine transformation. More...
 
virtual EulerAffineTransformTypeGetAffineTransform ()
 Get the affine transformation. More...
 
virtual void SetPerspectiveTransform (PerspectiveProjectionTransformType *_arg)
 Set the perspective transformation. More...
 
virtual
PerspectiveProjectionTransformType
GetPerspectiveTransform ()
 Get the perspective transformation. More...
 
void SetProjectedImageSize (OutputImageSizeType &outImageSize)
 Set the size in pixels of the output projected image. More...
 
void SetProjectedImageSpacing (OutputImageSpacingType &outImageSpacing)
 Set the resolution in mm of the output projected image. More...
 
void SetProjectedImageOrigin (OutputImagePointType &outImageOrigin)
 Set the origin of the output projected image. More...
 
void SetVolumeSize (const VolumeSizeType &r)
 Set the volume size. More...
 
void GetForwardProjectionSparseMatrix (SparseMatrixType &R, InputImageConstPointer inImage, OutputImagePointer outImage, VolumeSizeType &inSize, OutputImageSizeType &outSize, const unsigned int &projNum)
 Calculate and return the affine transformation matrix. More...
 
void GetForwardProjectionSparseMatrix (SparseMatrixType &R, InputImagePointer inImage, OutputImagePointer outImage, VolumeSizeType &inSize, OutputImageSizeType &outSize, const unsigned int &projNum)
 Calculate and return the affine transformation matrix (Overloaded using non-const input image pointer) More...
 
void GetBackwardProjectionSparseMatrix (SparseMatrixType &R, SparseMatrixType &RTrans, VolumeSizeType &inSize, OutputImageSizeType &outSize, const unsigned int &projNum)
 Calculate and return the transpose of the affine transformation matrix. More...
 
void CalculteMatrixVectorMultiplication (SparseMatrixType &R, VectorType const &inputImageVector, VectorType &outputImageVector)
 Calculate and return the multiplication of the affine transformation matrix and image vector. More...
 

Static Public Member Functions

static Pointer New ()
 
static Pointer New ()
 

Protected Types

enum  TraversalDirection {
  UNDEFINED_DIRECTION =0, TRANSVERSE_IN_X, TRANSVERSE_IN_Y, TRANSVERSE_IN_Z,
  LAST_DIRECTION, UNDEFINED_DIRECTION =0, TRANSVERSE_IN_X, TRANSVERSE_IN_Y,
  TRANSVERSE_IN_Z, LAST_DIRECTION
}
 
enum  TraversalDirection {
  UNDEFINED_DIRECTION =0, TRANSVERSE_IN_X, TRANSVERSE_IN_Y, TRANSVERSE_IN_Z,
  LAST_DIRECTION, UNDEFINED_DIRECTION =0, TRANSVERSE_IN_X, TRANSVERSE_IN_Y,
  TRANSVERSE_IN_Z, LAST_DIRECTION
}
 

Protected Member Functions

 ForwardAndBackwardProjectionMatrix ()
 
virtual ~ForwardAndBackwardProjectionMatrix (void)
 
void PrintSelf (std::ostream &os, Indent indent) const
 
 ForwardAndBackwardProjectionMatrix ()
 
virtual ~ForwardAndBackwardProjectionMatrix (void)
 
void PrintSelf (std::ostream &os, Indent indent) const
 

Protected Attributes

VolumeSizeType m_VolumeSize
 A pointer to the 3D volume size. More...
 
unsigned long int m_input3DImageTotalSize
 
unsigned long int m_output2DImageTotalSize
 
bool m_FlagInitialised
 Flag indicating whether the object has been initialised. More...
 
OutputImageSizeType m_OutputImageSize
 The size of the output projected image. More...
 
OutputImageSpacingType m_OutputImageSpacing
 The resolution of the output projected image. More...
 
OutputImagePointType m_OutputImageOrigin
 The origin of the output projected image. More...
 
double m_Threshold
 The threshold above which voxels along the ray path are integrated. More...
 
ProjectionGeometryPointer m_ProjectionGeometry
 The specific projection geometry to be used. More...
 
EulerAffineTransformType::Pointer m_AffineTransform
 The affine transform. More...
 
PerspectiveProjectionTransformType::Pointer m_PerspectiveTransform
 The perspective transform. More...
 

Detailed Description

template<class TScalarType = double, class IntensityType = float>
class itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >

Class to apply the affine transformation matrix to a 3D image.

Member Typedef Documentation

template<class TScalarType = double, class IntensityType = float>
typedef SmartPointer<const Self> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ConstPointer
template<class TScalarType = double, class IntensityType = float>
typedef SmartPointer<const Self> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ConstPointer
template<class TScalarType = double, class IntensityType = float>
typedef EulerAffineTransformType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::EulerAffineTransformPointer
template<class TScalarType = double, class IntensityType = float>
typedef EulerAffineTransformType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::EulerAffineTransformPointer
template<class TScalarType = double, class IntensityType = float>
typedef itk::EulerAffineTransform<double, 3, 3> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::EulerAffineTransformType
template<class TScalarType = double, class IntensityType = float>
typedef itk::EulerAffineTransform<double, 3, 3> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::EulerAffineTransformType
template<class TScalarType = double, class IntensityType = float>
typedef vnl_matrix<TScalarType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::FullMatrixType
template<class TScalarType = double, class IntensityType = float>
typedef vnl_matrix<TScalarType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::FullMatrixType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::ConstPointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageConstPointer
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::ConstPointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageConstPointer
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::IndexType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageIndexType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::IndexType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageIndexType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::PixelType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImagePixelType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::PixelType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImagePixelType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImagePointer
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImagePointer
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::PointType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImagePointType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::PointType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImagePointType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::RegionType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageRegionType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::RegionType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageRegionType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::SizeType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageSizeType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::SizeType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageSizeType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::SpacingType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageSpacingType
template<class TScalarType = double, class IntensityType = float>
typedef InputImageType::SpacingType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageSpacingType
template<class TScalarType = double, class IntensityType = float>
typedef Image<IntensityType, 3> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageType
template<class TScalarType = double, class IntensityType = float>
typedef Image<IntensityType, 3> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::InputImageType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::ConstPointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageConstPointer
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::ConstPointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageConstPointer
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::IndexType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageIndexType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::IndexType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageIndexType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::PixelType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImagePixelType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::PixelType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImagePixelType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImagePointer
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImagePointer
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::PointType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImagePointType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::PointType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImagePointType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::RegionType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageRegionType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::RegionType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageRegionType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::SizeType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageSizeType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::SizeType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageSizeType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::SpacingType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageSpacingType
template<class TScalarType = double, class IntensityType = float>
typedef OutputImageType::SpacingType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageSpacingType
template<class TScalarType = double, class IntensityType = float>
typedef Image<IntensityType, 2> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageType
template<class TScalarType = double, class IntensityType = float>
typedef Image<IntensityType, 2> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::OutputImageType
template<class TScalarType = double, class IntensityType = float>
typedef PerspectiveProjectionTransformType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::PerspectiveProjectionTransformPointer
template<class TScalarType = double, class IntensityType = float>
typedef PerspectiveProjectionTransformType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::PerspectiveProjectionTransformPointer
template<class TScalarType = double, class IntensityType = float>
typedef itk::PerspectiveProjectionTransform<double> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::PerspectiveProjectionTransformType
template<class TScalarType = double, class IntensityType = float>
typedef itk::PerspectiveProjectionTransform<double> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::PerspectiveProjectionTransformType
template<class TScalarType = double, class IntensityType = float>
typedef SmartPointer<Self> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::Pointer
template<class TScalarType = double, class IntensityType = float>
typedef SmartPointer<Self> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::Pointer
template<class TScalarType = double, class IntensityType = float>
typedef ProjectionGeometryType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ProjectionGeometryPointer
template<class TScalarType = double, class IntensityType = float>
typedef ProjectionGeometryType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ProjectionGeometryPointer
template<class TScalarType = double, class IntensityType = float>
typedef itk::ProjectionGeometry<IntensityType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ProjectionGeometryType
template<class TScalarType = double, class IntensityType = float>
typedef itk::ProjectionGeometry<IntensityType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ProjectionGeometryType
template<class TScalarType = double, class IntensityType = float>
typedef ForwardAndBackwardProjectionMatrix itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::Self

Standard class typedefs.

template<class TScalarType = double, class IntensityType = float>
typedef ForwardAndBackwardProjectionMatrix itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::Self

Standard class typedefs.

template<class TScalarType = double, class IntensityType = float>
typedef vnl_sparse_matrix<TScalarType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SparseMatrixType

Create a sparse matrix to store the affine transformation matrix coefficients

template<class TScalarType = double, class IntensityType = float>
typedef vnl_sparse_matrix<TScalarType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SparseMatrixType

Create a sparse matrix to store the affine transformation matrix coefficients

template<class TScalarType = double, class IntensityType = float>
typedef Object itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::Superclass
template<class TScalarType = double, class IntensityType = float>
typedef Object itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::Superclass
template<class TScalarType = double, class IntensityType = float>
typedef vnl_vector<TScalarType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::VectorType
template<class TScalarType = double, class IntensityType = float>
typedef vnl_vector<TScalarType> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::VectorType
template<class TScalarType = double, class IntensityType = float>
typedef itk::Size<3> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::VolumeSizeType

Some convenient typedefs.

template<class TScalarType = double, class IntensityType = float>
typedef itk::Size<3> itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::VolumeSizeType

Some convenient typedefs.

Member Enumeration Documentation

template<class TScalarType = double, class IntensityType = float>
enum itk::ForwardAndBackwardProjectionMatrix::TraversalDirection
protected

The ray is traversed by stepping in the axial direction that enables the greatest number of planes in the volume to be intercepted.

Enumerator
UNDEFINED_DIRECTION 

Undefined.

TRANSVERSE_IN_X 

x

TRANSVERSE_IN_Y 

y

TRANSVERSE_IN_Z 

z

LAST_DIRECTION 
UNDEFINED_DIRECTION 

Undefined.

TRANSVERSE_IN_X 

x

TRANSVERSE_IN_Y 

y

TRANSVERSE_IN_Z 

z

LAST_DIRECTION 
template<class TScalarType = double, class IntensityType = float>
enum itk::ForwardAndBackwardProjectionMatrix::TraversalDirection
protected

The ray is traversed by stepping in the axial direction that enables the greatest number of planes in the volume to be intercepted.

Enumerator
UNDEFINED_DIRECTION 

Undefined.

TRANSVERSE_IN_X 

x

TRANSVERSE_IN_Y 

y

TRANSVERSE_IN_Z 

z

LAST_DIRECTION 
UNDEFINED_DIRECTION 

Undefined.

TRANSVERSE_IN_X 

x

TRANSVERSE_IN_Y 

y

TRANSVERSE_IN_Z 

z

LAST_DIRECTION 

Constructor & Destructor Documentation

template<class TScalarType = double, class IntensityType = float>
itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ForwardAndBackwardProjectionMatrix ( )
protected
template<class TScalarType = double, class IntensityType = float>
virtual itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::~ForwardAndBackwardProjectionMatrix ( void  )
inlineprotectedvirtual
template<class TScalarType = double, class IntensityType = float>
itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::ForwardAndBackwardProjectionMatrix ( )
protected
template<class TScalarType = double, class IntensityType = float>
virtual itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::~ForwardAndBackwardProjectionMatrix ( void  )
inlineprotectedvirtual

Member Function Documentation

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::CalculteMatrixVectorMultiplication ( SparseMatrixType R,
VectorType const &  inputImageVector,
VectorType outputImageVector 
)

Calculate and return the multiplication of the affine transformation matrix and image vector.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::CalculteMatrixVectorMultiplication ( SparseMatrixType R,
VectorType const &  inputImageVector,
VectorType outputImageVector 
)

Calculate and return the multiplication of the affine transformation matrix and image vector.

template<class TScalarType = double, class IntensityType = float>
virtual EulerAffineTransformType* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetAffineTransform ( )
virtual

Get the affine transformation.

template<class TScalarType = double, class IntensityType = float>
virtual EulerAffineTransformType* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetAffineTransform ( )
virtual

Get the affine transformation.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetBackwardProjectionSparseMatrix ( SparseMatrixType R,
SparseMatrixType RTrans,
VolumeSizeType inSize,
OutputImageSizeType outSize,
const unsigned int projNum 
)

Calculate and return the transpose of the affine transformation matrix.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetBackwardProjectionSparseMatrix ( SparseMatrixType R,
SparseMatrixType RTrans,
VolumeSizeType inSize,
OutputImageSizeType outSize,
const unsigned int projNum 
)

Calculate and return the transpose of the affine transformation matrix.

template<class TScalarType = double, class IntensityType = float>
virtual const char* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

template<class TScalarType = double, class IntensityType = float>
virtual const char* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetForwardProjectionSparseMatrix ( SparseMatrixType R,
InputImageConstPointer  inImage,
OutputImagePointer  outImage,
VolumeSizeType inSize,
OutputImageSizeType outSize,
const unsigned int projNum 
)

Calculate and return the affine transformation matrix.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetForwardProjectionSparseMatrix ( SparseMatrixType R,
InputImageConstPointer  inImage,
OutputImagePointer  outImage,
VolumeSizeType inSize,
OutputImageSizeType outSize,
const unsigned int projNum 
)

Calculate and return the affine transformation matrix.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetForwardProjectionSparseMatrix ( SparseMatrixType R,
InputImagePointer  inImage,
OutputImagePointer  outImage,
VolumeSizeType inSize,
OutputImageSizeType outSize,
const unsigned int projNum 
)

Calculate and return the affine transformation matrix (Overloaded using non-const input image pointer)

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetForwardProjectionSparseMatrix ( SparseMatrixType R,
InputImagePointer  inImage,
OutputImagePointer  outImage,
VolumeSizeType inSize,
OutputImageSizeType outSize,
const unsigned int projNum 
)

Calculate and return the affine transformation matrix (Overloaded using non-const input image pointer)

template<class TScalarType = double, class IntensityType = float>
virtual PerspectiveProjectionTransformType* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetPerspectiveTransform ( )
virtual

Get the perspective transformation.

template<class TScalarType = double, class IntensityType = float>
virtual PerspectiveProjectionTransformType* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetPerspectiveTransform ( )
virtual

Get the perspective transformation.

template<class TScalarType = double, class IntensityType = float>
virtual ProjectionGeometryType* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetProjectionGeometry ( )
virtual
template<class TScalarType = double, class IntensityType = float>
virtual ProjectionGeometryType* itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::GetProjectionGeometry ( )
virtual
template<class TScalarType = double, class IntensityType = float>
static Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::New ( )
static

Method for creation through the object factory.

template<class TScalarType = double, class IntensityType = float>
static Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::New ( )
static

Method for creation through the object factory.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protected
template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protected
template<class TScalarType = double, class IntensityType = float>
virtual void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetAffineTransform ( EulerAffineTransformType _arg)
virtual

Set the affine transformation.

template<class TScalarType = double, class IntensityType = float>
virtual void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetAffineTransform ( EulerAffineTransformType _arg)
virtual

Set the affine transformation.

template<class TScalarType = double, class IntensityType = float>
virtual void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetPerspectiveTransform ( PerspectiveProjectionTransformType _arg)
virtual

Set the perspective transformation.

template<class TScalarType = double, class IntensityType = float>
virtual void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetPerspectiveTransform ( PerspectiveProjectionTransformType _arg)
virtual

Set the perspective transformation.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectedImageOrigin ( OutputImagePointType outImageOrigin)
inline

Set the origin of the output projected image.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectedImageOrigin ( OutputImagePointType outImageOrigin)
inline

Set the origin of the output projected image.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectedImageSize ( OutputImageSizeType outImageSize)
inline

Set the size in pixels of the output projected image.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectedImageSize ( OutputImageSizeType outImageSize)
inline

Set the size in pixels of the output projected image.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectedImageSpacing ( OutputImageSpacingType outImageSpacing)
inline

Set the resolution in mm of the output projected image.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectedImageSpacing ( OutputImageSpacingType outImageSpacing)
inline

Set the resolution in mm of the output projected image.

template<class TScalarType = double, class IntensityType = float>
virtual void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectionGeometry ( ProjectionGeometryType _arg)
virtual

Get/Set the projection geometry.

template<class TScalarType = double, class IntensityType = float>
virtual void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetProjectionGeometry ( ProjectionGeometryType _arg)
virtual

Get/Set the projection geometry.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetVolumeSize ( const VolumeSizeType r)
inline

Set the volume size.

template<class TScalarType = double, class IntensityType = float>
void itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::SetVolumeSize ( const VolumeSizeType r)
inline

Set the volume size.

Member Data Documentation

template<class TScalarType = double, class IntensityType = float>
EulerAffineTransformType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_AffineTransform
protected

The affine transform.

template<class TScalarType = double, class IntensityType = float>
bool itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_FlagInitialised
protected

Flag indicating whether the object has been initialised.

template<class TScalarType = double, class IntensityType = float>
unsigned long int itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_input3DImageTotalSize
protected
template<class TScalarType = double, class IntensityType = float>
unsigned long int itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_output2DImageTotalSize
protected
template<class TScalarType = double, class IntensityType = float>
OutputImagePointType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_OutputImageOrigin
protected

The origin of the output projected image.

template<class TScalarType = double, class IntensityType = float>
OutputImageSizeType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_OutputImageSize
protected

The size of the output projected image.

template<class TScalarType = double, class IntensityType = float>
OutputImageSpacingType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_OutputImageSpacing
protected

The resolution of the output projected image.

template<class TScalarType = double, class IntensityType = float>
PerspectiveProjectionTransformType::Pointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_PerspectiveTransform
protected

The perspective transform.

template<class TScalarType = double, class IntensityType = float>
ProjectionGeometryPointer itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_ProjectionGeometry
protected

The specific projection geometry to be used.

template<class TScalarType = double, class IntensityType = float>
double itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_Threshold
protected

The threshold above which voxels along the ray path are integrated.

template<class TScalarType = double, class IntensityType = float>
VolumeSizeType itk::ForwardAndBackwardProjectionMatrix< TScalarType, IntensityType >::m_VolumeSize
protected

A pointer to the 3D volume size.


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