#include <itkTransformToSpatialJacobianSource.h>
Generate the spatial Jacobian matrix from a coordinate transform.
This class was inspired on an the itkTransformToDeterminantOfSpatialJacobianSource class. It generates the full spatial jacobian matrix. The output image type should thus be an image with a matrix-pixeltype, e.g., the SpatialJacobianType defined in the itkAdvancedTransform class. Suggested/recommended choices are the itk::Matrix<double, ImageDimension, ImageDimension> (=SpatialJacobianType) or itk::Matrix<float, ImageDimension, ImageDimension>
Output information (spacing, size and direction) for the output image should be set. This information has the normal defaults of unit spacing, zero origin and identity direction. Optionally, the output information can be obtained from a reference image. If the reference image is provided and UseReferenceImage is On, then the spacing, origin and direction of the reference image will be used.
Since this filter produces an image which is a different size than its input, it needs to override several of the methods defined in ProcessObject in order to properly manage the pipeline execution model. In particular, this filter overrides ProcessObject::GenerateInputRequestedRegion() and ProcessObject::GenerateOutputInformation().
This filter is implemented as a multithreaded filter. It provides a ThreadedGenerateData() method for its implementation.
This class was taken from the Insight Journal paper: http://hdl.handle.net/?/?
Definition at line 67 of file itkTransformToSpatialJacobianSource.h.
Public Types | |
using | ConstPointer = SmartPointer<const Self> |
using | DirectionType = typename OutputImageType::DirectionType |
using | ImageBaseType = ImageBase<Self::ImageDimension> |
using | IndexType = typename OutputImageType::IndexType |
using | OriginType = typename OutputImageType::PointType |
using | OutputImageConstPointer = typename OutputImageType::ConstPointer |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer<Self> |
using | PointType = typename OutputImageType::PointType |
using | RegionType = typename OutputImageType::RegionType |
using | Self = TransformToSpatialJacobianSource |
using | SizeType = typename RegionType::SizeType |
using | SpacingType = typename OutputImageType::SpacingType |
using | SpatialJacobianType = typename TransformType::SpatialJacobianType |
using | Superclass = ImageSource<TOutputImage> |
using | TransformPointerType = typename TransformType::ConstPointer |
using | TransformType = AdvancedTransform<TTransformPrecisionType, Self::ImageDimension, Self::ImageDimension> |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
void | LinearGenerateData () |
void | NonlinearThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) |
void | PrintSelf (std::ostream &os, Indent indent) const override |
void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) override |
TransformToSpatialJacobianSource () | |
~TransformToSpatialJacobianSource () override=default | |
Private Attributes | |
DirectionType | m_OutputDirection { DirectionType::GetIdentity() } |
OriginType | m_OutputOrigin {} |
RegionType | m_OutputRegion {} |
SpacingType | m_OutputSpacing { 1.0 } |
TransformPointerType | m_Transform |
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::ConstPointer = SmartPointer<const Self> |
Definition at line 76 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::DirectionType = typename OutputImageType::DirectionType |
Definition at line 106 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::ImageBaseType = ImageBase<Self::ImageDimension> |
Typedefs for base image.
Definition at line 109 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::IndexType = typename OutputImageType::IndexType |
Definition at line 102 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::OriginType = typename OutputImageType::PointType |
Definition at line 105 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::OutputImageConstPointer = typename OutputImageType::ConstPointer |
Definition at line 80 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::OutputImagePointer = typename OutputImageType::Pointer |
Definition at line 79 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::OutputImageRegionType = typename OutputImageType::RegionType |
Definition at line 81 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::OutputImageType = TOutputImage |
Definition at line 78 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::Pointer = SmartPointer<Self> |
Definition at line 75 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::PointType = typename OutputImageType::PointType |
Definition at line 103 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::RegionType = typename OutputImageType::RegionType |
Definition at line 100 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::Self = TransformToSpatialJacobianSource |
Standard class typedefs.
Definition at line 73 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::SizeType = typename RegionType::SizeType |
Definition at line 101 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::SpacingType = typename OutputImageType::SpacingType |
Definition at line 104 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::SpatialJacobianType = typename TransformType::SpatialJacobianType |
Definition at line 95 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::Superclass = ImageSource<TOutputImage> |
Definition at line 74 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::TransformPointerType = typename TransformType::ConstPointer |
Definition at line 94 of file itkTransformToSpatialJacobianSource.h.
using itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::TransformType = AdvancedTransform<TTransformPrecisionType, Self::ImageDimension, Self::ImageDimension> |
Typedefs for transform.
Definition at line 93 of file itkTransformToSpatialJacobianSource.h.
|
protected |
|
overrideprotecteddefault |
|
override |
Checking if transform is set. If a linear transformation is used, the unthreaded LinearGenerateData is called.
|
override |
TransformToSpatialJacobianSource produces a floating value image.
|
virtual |
Run-time type information (and related methods).
|
override |
Compute the Modified Time based on changes to the components.
|
virtual |
|
virtual |
Get the start index of the output largest possible region.
|
virtual |
Get the output image origin.
|
virtual |
Get the region of the output image.
|
virtual |
Get the size of the output image.
|
virtual |
Get the output image spacing.
|
virtual |
Get a pointer to the coordinate transform.
itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::ITK_DISALLOW_COPY_AND_MOVE | ( | TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType > | ) |
itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::itkStaticConstMacro | ( | ImageDimension | , |
unsigned int | , | ||
TOutputImage::ImageDimension | ) |
Number of dimensions.
|
protected |
Faster implementation for resampling that works for with linear transformation types. Unthreaded.
|
static |
Method for creation through the object factory.
|
protected |
Default implementation for resampling that works for any transformation type.
|
overrideprotected |
|
virtual |
Set the output direction cosine matrix.
|
virtual |
Set the start index of the output largest possible region. The default is an index of all zeros.
|
virtual |
|
virtual |
Set the output image origin.
void itk::TransformToSpatialJacobianSource< TOutputImage, TTransformPrecisionType >::SetOutputParametersFromImage | ( | const ImageBaseType * | image | ) |
Helper method to set the output parameters based on this image
|
virtual |
Set the region of the output image.
|
virtual |
Set the size of the output image.
|
virtual |
|
virtual |
Set the output image spacing.
|
virtual |
Set the coordinate transformation. Set the coordinate transform to use for resampling. Note that this must be in physical coordinates and it is the output-to-input transform, NOT the input-to-output transform that you might naively expect. By default the filter uses an Identity transform. You must provide a different transform here, before attempting to run the filter, if you do not want to use the default Identity transform.
|
overrideprotected |
TransformToSpatialJacobianSource can be implemented as a multithreaded filter.
|
private |
Definition at line 216 of file itkTransformToSpatialJacobianSource.h.
|
private |
Definition at line 215 of file itkTransformToSpatialJacobianSource.h.
|
private |
Member variables.
Definition at line 210 of file itkTransformToSpatialJacobianSource.h.
|
private |
Definition at line 214 of file itkTransformToSpatialJacobianSource.h.
|
private |
Definition at line 211 of file itkTransformToSpatialJacobianSource.h.
Generated on 2024-07-17 for elastix by 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) |