NifTK
16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
|
Class to apply the affine transformation matrix to a 3D image. More...
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::CreateEulerAffineTransformMatrixBaseClass< Image< IntensityType, 3 >, Image< IntensityType, 3 > > | |
static Pointer | New () |
Protected Member Functions | |
CreateEulerAffineTransformMatrix () | |
virtual | ~CreateEulerAffineTransformMatrix (void) |
void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | BeforeThreadedGenerateData (void) |
virtual void | AfterThreadedGenerateData (void) |
void | GenerateData () |
void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) |
Protected Member Functions inherited from itk::CreateEulerAffineTransformMatrixBaseClass< Image< IntensityType, 3 >, Image< IntensityType, 3 > > | |
CreateEulerAffineTransformMatrixBaseClass () | |
virtual | ~CreateEulerAffineTransformMatrixBaseClass () |
void | PrintSelf (std::ostream &os, Indent indent) const |
Class to apply the affine transformation matrix to a 3D image.
typedef SmartPointer<const Self> itk::CreateEulerAffineTransformMatrix< IntensityType >::ConstPointer |
typedef EulerAffineTransform<double, 3, 3> itk::CreateEulerAffineTransformMatrix< IntensityType >::EulerAffineTransformType |
typedef vnl_matrix<double> itk::CreateEulerAffineTransformMatrix< IntensityType >::FullMatrixType |
typedef InputImageType::ConstPointer itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImageConstPointer |
typedef InputImageType::IndexType itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImageIndexType |
typedef InputImageType::PixelType itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImagePixelType |
typedef InputImageType::Pointer itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImagePointer |
typedef InputImageType::PointType itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImagePointType |
typedef InputImageType::RegionType itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImageRegionType |
typedef InputImageType::SizeType itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImageSizeType |
typedef InputImageType::SpacingType itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImageSpacingType |
typedef Image<IntensityType, 3> itk::CreateEulerAffineTransformMatrix< IntensityType >::InputImageType |
Some convenient typedefs.
typedef OutputImageType::ConstPointer itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImageConstPointer |
typedef OutputImageType::IndexType itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImageIndexType |
typedef OutputImageType::PixelType itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImagePixelType |
typedef OutputImageType::Pointer itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImagePointer |
typedef OutputImageType::PointType itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImagePointType |
typedef OutputImageType::RegionType itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImageRegionType |
typedef OutputImageType::SizeType itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImageSizeType |
typedef OutputImageType::SpacingType itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImageSpacingType |
typedef Image<IntensityType, 3> itk::CreateEulerAffineTransformMatrix< IntensityType >::OutputImageType |
typedef SmartPointer<Self> itk::CreateEulerAffineTransformMatrix< IntensityType >::Pointer |
typedef CreateEulerAffineTransformMatrix itk::CreateEulerAffineTransformMatrix< IntensityType >::Self |
Standard class typedefs.
typedef vnl_sparse_matrix<double> itk::CreateEulerAffineTransformMatrix< IntensityType >::SparseMatrixType |
Create a sparse matrix to store the affine transformation matrix coefficients
typedef CreateEulerAffineTransformMatrixBaseClass<Image< IntensityType, 3>, Image< IntensityType, 3> > itk::CreateEulerAffineTransformMatrix< IntensityType >::Superclass |
typedef itk::hash_map<int, VectorType>::const_iterator itk::CreateEulerAffineTransformMatrix< IntensityType >::VectorMapConstIterator |
typedef itk::hash_map<int, VectorType>::iterator itk::CreateEulerAffineTransformMatrix< IntensityType >::VectorMapIterator |
typedef itk::hash_map<int, VectorType> itk::CreateEulerAffineTransformMatrix< IntensityType >::VectorMapType |
Type of the map used to store the affine transformation matrix per thread
typedef vnl_vector<double> itk::CreateEulerAffineTransformMatrix< IntensityType >::VectorType |
|
protected |
|
inlineprotectedvirtual |
|
protectedvirtual |
If an imaging filter needs to perform processing after all processing threads have completed, the filter can can provide an implementation for AfterThreadedGenerateData(). The execution flow in the default GenerateData() method will be: 1) Allocate the output buffer 2) Call BeforeThreadedGenerateData() 3) Spawn threads, calling ThreadedGenerateData() in each thread. 4) Call AfterThreadedGenerateData() Note that this flow of control is only available if a filter provides a ThreadedGenerateData() method and NOT a GenerateData() method.
|
protectedvirtual |
If an imaging filter needs to perform processing after the buffer has been allocated but before threads are spawned, the filter can can provide an implementation for BeforeThreadedGenerateData(). The execution flow in the default GenerateData() method will be: 1) Allocate the output buffer 2) Call BeforeThreadedGenerateData() 3) Spawn threads, calling ThreadedGenerateData() in each thread. 4) Call AfterThreadedGenerateData() Note that this flow of control is only available if a filter provides a ThreadedGenerateData() method and NOT a GenerateData() method.
|
virtual |
|
protected |
Single threaded execution, for debugging purposes ( call SetSingleThreadedExecution() )
|
virtual |
Rather than calculate the input requested region for a particular projection (which might take longer than the actual projection), we simply set the input requested region to the entire 3D input image region. Therefore needs to provide an implementation for GenerateInputRequestedRegion() in order to inform the pipeline execution model.
|
virtual |
CreateEulerAffineTransformMatrix produces a 3D ouput image which is a same resolution and with a different pixel spacing than its 3D input image (obviously). As such, CreateEulerAffineTransformMatrix needs to provide an implementation for GenerateOutputInformation() in order to inform the pipeline execution model. The original documentation of this method is below.
|
virtual |
Get the affine transformation
Reimplemented from itk::CreateEulerAffineTransformMatrixBaseClass< Image< IntensityType, 3 >, Image< IntensityType, 3 > >.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::CreateEulerAffineTransformMatrixBaseClass< Image< IntensityType, 3 >, Image< IntensityType, 3 > >.
itk::CreateEulerAffineTransformMatrix< IntensityType >::itkStaticConstMacro | ( | InputImageDimension | , |
unsigned | int, | ||
3 | |||
) |
ImageDimension enumeration
itk::CreateEulerAffineTransformMatrix< IntensityType >::itkStaticConstMacro | ( | OutputImageDimension | , |
unsigned | int, | ||
3 | |||
) |
|
static |
Method for creation through the object factory.
|
protected |
|
virtual |
Set the affine transformation
Reimplemented from itk::CreateEulerAffineTransformMatrixBaseClass< Image< IntensityType, 3 >, Image< IntensityType, 3 > >.
|
inline |
For debugging purposes, set single threaded execution
|
inline |
Set the origin of the output projected image.
|
inline |
Set the size in pixels of the output projected image.
|
inline |
Set the resolution in mm of the output projected image.
|
protected |
CreateEulerAffineTransformMatrix can be implemented as a multithreaded filter. Therefore, this implementation provides a ThreadedGenerateData() routine which is called for each processing thread. The output image data is allocated automatically by the superclass prior to calling ThreadedGenerateData(). ThreadedGenerateData can only write to the portion of the output image specified by the parameter "outputRegionForThread"
|
protected |
The affin transform core matrix and its inverse matrix
|
protected |
|
protected |
The affine transform
|
protected |
Flag to turn multithreading on or off
|
protected |
The input and output coordinate vectors
|
protected |
|
protected |
The origin of the output projected image
|
protected |
The size of the output projected image
|
protected |
The resolution of the output projected image
|
protected |
Create a sparse matrix to store the affine transformation matrix coefficients
|
protected |
Create a sparse matrix to store the transpose of the affine transformation matrix