Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
List of all members | Public Types | Public Member Functions | Protected Member Functions
itk::DiffusionTensor3DFSAffineTransform< TData > Class Template Reference

#include <Modules/CLI/ResampleDTIVolume/itkDiffusionTensor3DFSAffineTransform.h>

Inheritance diagram for itk::DiffusionTensor3DFSAffineTransform< TData >:
Inheritance graph
[legend]
Collaboration diagram for itk::DiffusionTensor3DFSAffineTransform< TData >:
Collaboration graph
[legend]

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef TData DataType
 
typedef Superclass::InternalMatrixTransformType InternalMatrixTransformType
 
typedef Superclass::MatrixTransformType MatrixTransformType
 
typedef SmartPointer< SelfPointer
 
typedef DiffusionTensor3DFSAffineTransform Self
 
typedef DiffusionTensor3DAffineTransform< DataTypeSuperclass
 
- Public Types inherited from itk::DiffusionTensor3DAffineTransform< TData >
typedef AffineTransform< double, 3 > AffineTransformType
 
typedef SmartPointer< const SelfConstPointer
 
typedef TData DataType
 
typedef Superclass::InternalMatrixDataType InternalMatrixDataType
 
typedef Superclass::InternalMatrixTransformType InternalMatrixTransformType
 
typedef Superclass::InternalTensorDataType InternalTensorDataType
 
typedef Superclass::MatrixDataType MatrixDataType
 
typedef MatrixExtended< double, 4, 4 > MatrixTransform4x4Type
 
typedef Superclass::MatrixTransformType MatrixTransformType
 
typedef SmartPointer< SelfPointer
 
typedef Superclass::PointType PointType
 
typedef DiffusionTensor3DAffineTransform Self
 
typedef DiffusionTensor3DMatrix3x3Transform< DataTypeSuperclass
 
typedef Superclass::TensorDataType TensorDataType
 
typedef Superclass::VectorType VectorType
 
- Public Types inherited from itk::DiffusionTensor3DMatrix3x3Transform< TData >
typedef SmartPointer< const SelfConstPointer
 
typedef TData DataType
 
typedef Superclass::InternalMatrixDataType InternalMatrixDataType
 
typedef Superclass::InternalMatrixTransformType InternalMatrixTransformType
 
typedef Superclass::InternalTensorDataType InternalTensorDataType
 
typedef Superclass::MatrixDataType MatrixDataType
 
typedef Superclass::MatrixTransformType MatrixTransformType
 
typedef SmartPointer< SelfPointer
 
typedef Superclass::PointType PointType
 
typedef DiffusionTensor3DMatrix3x3Transform Self
 
typedef DiffusionTensor3DTransform< DataTypeSuperclass
 
typedef Superclass::TensorDataType TensorDataType
 
typedef Superclass::TransformType TransformType
 
typedef Vector< TransformType, 3 > VectorType
 
- Public Types inherited from itk::DiffusionTensor3DTransform< TData >
typedef SmartPointer< const SelfConstPointer
 
typedef TData DataType
 
typedef MatrixExtended< DataType, 3, 3 > InternalMatrixDataType
 
typedef MatrixExtended< TransformType, 3, 3 > InternalMatrixTransformType
 
typedef DiffusionTensor3DExtended< DataTypeInternalTensorDataType
 
typedef Matrix< DataType, 3, 3 > MatrixDataType
 
typedef Matrix< TransformType, 3, 3 > MatrixTransformType
 
typedef SmartPointer< SelfPointer
 
typedef Point< TransformType, 3 > PointType
 
typedef DiffusionTensor3DTransform Self
 
typedef DiffusionTensor3D< DataTypeTensorDataType
 
typedef double TransformType
 

Public Member Functions

 itkNewMacro (Self)
 
 itkTypeMacro (DiffusionTensor3DFSAffineTransform, DiffusionTensor3DAffineTransform)
 
- Public Member Functions inherited from itk::DiffusionTensor3DAffineTransform< TData >
AffineTransformType::Pointer GetAffineTransform ()
 
 itkTypeMacro (DiffusionTensor3DAffineTransform, DiffusionTensor3DMatrix3x3Transform)
 
void SetMatrix4x4 (MatrixTransform4x4Type matrix)
 
void SetTransform (typename AffineTransformType::Pointer transform)
 
- Public Member Functions inherited from itk::DiffusionTensor3DMatrix3x3Transform< TData >
PointType EvaluateTensorPosition (const PointType &point) override
 
virtual TensorDataType EvaluateTransformedTensor (TensorDataType &tensor)
 
TensorDataType EvaluateTransformedTensor (TensorDataType &tensor, PointType &outputPosition) override
 
virtual InternalMatrixTransformType GetMatrix3x3 ()
 
Transform< double, 3, 3 >::Pointer GetTransform () override
 
VectorType GetTranslation ()
 
 itkTypeMacro (DiffusionTensor3DMatrix3x3Transform, DiffusionTensor3DTransform)
 
void SetCenter (PointType center)
 
virtual void SetMatrix3x3 (MatrixTransformType &matrix)
 
void SetTranslation (VectorType translation)
 
- Public Member Functions inherited from itk::DiffusionTensor3DTransform< TData >
 itkSetMacro (MeasurementFrame, MatrixTransformType)
 
 itkTypeMacro (DiffusionTensor3DTransform, Object)
 

Protected Member Functions

void PreCompute () override
 
- Protected Member Functions inherited from itk::DiffusionTensor3DMatrix3x3Transform< TData >
void ComputeOffset ()
 
 DiffusionTensor3DMatrix3x3Transform ()
 
- Protected Member Functions inherited from itk::DiffusionTensor3DTransform< TData >
 DiffusionTensor3DTransform ()
 

Additional Inherited Members

- Protected Attributes inherited from itk::DiffusionTensor3DMatrix3x3Transform< TData >
PointType m_Center
 
unsigned long m_LatestTime
 
std::mutex m_Lock
 
VectorType m_Offset
 
InternalMatrixTransformType m_Transform
 
InternalMatrixTransformType m_TransformMatrix
 
InternalMatrixTransformType m_TransformT
 
VectorType m_Translation
 
- Protected Attributes inherited from itk::DiffusionTensor3DTransform< TData >
InternalMatrixTransformType m_MeasurementFrame
 

Detailed Description

template<class TData>
class itk::DiffusionTensor3DFSAffineTransform< TData >

This class implements an affine transformation for diffusion tensors. It implements the Finite Strain method presented in the following paper: D.C. Alexander, Member IEEE, C. Pierpaoli, P.J. Basser and J.C Gee: Spatial Transformations of Diffusion Tensor Magnetic Resonance Images, IEEE Transactions on Medical Imaging, Vol 20, No. 11, November 2001

Any nonsingular matrix F can be decomposed into a rigid rotation component R, and a deformation component U, where: F=UR

The tensor position is computed by the given affine transformation F but the tensor is transformed by the extracted rotation matrix R where R=(FF_{T}^{-1/2}F

This class implements an affine transformation for diffusion tensors. It implements the Preservation of Principal Direction method presented in the following paper: D.C. Alexander, Member IEEE, C. Pierpaoli, P.J. Basser and J.C Gee: Spatial Transformations of Diffusion Tensor Magnetic Resonance Images, IEEE Transactions on Medical Imaging, Vol 20, No. 11, November 2001

Definition at line 42 of file itkDiffusionTensor3DFSAffineTransform.h.

Member Typedef Documentation

◆ ConstPointer

template<class TData >
typedef SmartPointer<const Self> itk::DiffusionTensor3DFSAffineTransform< TData >::ConstPointer

Definition at line 52 of file itkDiffusionTensor3DFSAffineTransform.h.

◆ DataType

template<class TData >
typedef TData itk::DiffusionTensor3DFSAffineTransform< TData >::DataType

Definition at line 46 of file itkDiffusionTensor3DFSAffineTransform.h.

◆ InternalMatrixTransformType

Definition at line 50 of file itkDiffusionTensor3DFSAffineTransform.h.

◆ MatrixTransformType

Definition at line 49 of file itkDiffusionTensor3DFSAffineTransform.h.

◆ Pointer

template<class TData >
typedef SmartPointer<Self> itk::DiffusionTensor3DFSAffineTransform< TData >::Pointer

Definition at line 51 of file itkDiffusionTensor3DFSAffineTransform.h.

◆ Self

Definition at line 47 of file itkDiffusionTensor3DFSAffineTransform.h.

◆ Superclass

Definition at line 48 of file itkDiffusionTensor3DFSAffineTransform.h.

Member Function Documentation

◆ itkNewMacro()

template<class TData >
itk::DiffusionTensor3DFSAffineTransform< TData >::itkNewMacro ( Self  )

◆ itkTypeMacro()

template<class TData >
itk::DiffusionTensor3DFSAffineTransform< TData >::itkTypeMacro ( DiffusionTensor3DFSAffineTransform< TData >  ,
DiffusionTensor3DAffineTransform   
)

Run-time type information (and related methods).

◆ PreCompute()

template<class TData >
void itk::DiffusionTensor3DFSAffineTransform< TData >::PreCompute ( )
overrideprotectedvirtual

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