![]() |
Orfeo Toolbox
3.16
|
Represent a diffusion tensor as used in DTI images. More...
#include <itkDiffusionTensor3D.h>
Inheritance diagram for itk::DiffusionTensor3D< TComponent >:
Collaboration diagram for itk::DiffusionTensor3D< TComponent >:Static Public Member Functions | |
| static FixedArray | Filled (const ValueType &) |
| static unsigned int | GetNumberOfComponents () |
Static Public Attributes | |
| static const unsigned int | Dimension |
| static const unsigned int | InternalDimension |
| static const unsigned int | Length |
Represent a diffusion tensor as used in DTI images.
This class implements a 3D symmetric tensor as it is used for representing diffusion of water molecules in Diffusion Tensor Images.
This class derive from the SymmetricSecondRankTensor and from it inherit most of the Tensor related behavior. At this level we add the methods that are specific to 3D and that are closely related to the concept of diffusion.
This class was mostly based on files that Jeffrey Duda, Torsten Rohlfing and Martin Styner contributed to the ITK users list during a discussion on support for DiffusionTensorImages. A discussion on the design of this class can be found in the WIKI pages of NAMIC:
http://www.na-mic.org/Wiki/index.php/NAMIC_Wiki:DTI:ITK-DiffusionTensorPixelType
Alcohol, HIV and the Brain, NIAAA AA12999, PI: A. Pfefferbaum
Normal Aging of Brain Structure and Function NIA AG 17919, PI: E.V. Sullivan.
Definition at line 79 of file itkDiffusionTensor3D.h.
| typedef Superclass::AccumulateValueType itk::DiffusionTensor3D< TComponent >::AccumulateValueType |
Definition at line 94 of file itkDiffusionTensor3D.h.
|
inherited |
Convenience typedefs.
Definition at line 88 of file itkSymmetricSecondRankTensor.h.
|
inherited |
A type representing the C-array version of this FixedArray.
Definition at line 77 of file itkFixedArray.h.
| typedef Superclass::ComponentArrayType itk::DiffusionTensor3D< TComponent >::ComponentArrayType |
Definition at line 92 of file itkDiffusionTensor3D.h.
| typedef Superclass::ComponentType itk::DiffusionTensor3D< TComponent >::ComponentType |
Definition at line 88 of file itkDiffusionTensor3D.h.
|
inherited |
A const pointer to the ValueType.
Definition at line 129 of file itkFixedArray.h.
|
inherited |
A const reference to the ValueType.
Definition at line 135 of file itkFixedArray.h.
|
inherited |
A const iterator through the array.
Definition at line 83 of file itkFixedArray.h.
| typedef Superclass::EigenValuesArrayType itk::DiffusionTensor3D< TComponent >::EigenValuesArrayType |
Definition at line 97 of file itkDiffusionTensor3D.h.
| typedef Superclass::EigenVectorsMatrixType itk::DiffusionTensor3D< TComponent >::EigenVectorsMatrixType |
Definition at line 98 of file itkDiffusionTensor3D.h.
|
inherited |
An iterator through the array.
Definition at line 80 of file itkFixedArray.h.
|
inherited |
Matrix of eigen-vectors.
Definition at line 94 of file itkSymmetricSecondRankTensor.h.
|
inherited |
A pointer to the ValueType.
Definition at line 126 of file itkFixedArray.h.
| typedef Superclass::RealValueType itk::DiffusionTensor3D< TComponent >::RealValueType |
Definition at line 95 of file itkDiffusionTensor3D.h.
|
inherited |
A reference to the ValueType.
Definition at line 132 of file itkFixedArray.h.
| typedef DiffusionTensor3D itk::DiffusionTensor3D< TComponent >::Self |
Standard class typedefs.
Definition at line 83 of file itkDiffusionTensor3D.h.
|
inherited |
Definition at line 137 of file itkFixedArray.h.
| typedef SymmetricSecondRankTensor<TComponent, 3> itk::DiffusionTensor3D< TComponent >::Superclass |
Definition at line 84 of file itkDiffusionTensor3D.h.
|
inherited |
Definition at line 104 of file itkSymmetricSecondRankTensor.h.
| typedef Superclass::ValueType itk::DiffusionTensor3D< TComponent >::ValueType |
Propagating some typedef from the superclass
Definition at line 87 of file itkDiffusionTensor3D.h.
| itk::DiffusionTensor3D< T >::DiffusionTensor3D | ( | ) |
| itk::DiffusionTensor3D< T >::DiffusionTensor3D | ( | const Superclass & | r | ) |
Constructor with initialization.
Constructor with initialization
Definition at line 42 of file itkDiffusionTensor3D.txx.
| itk::DiffusionTensor3D< T >::DiffusionTensor3D | ( | const ComponentType & | r | ) |
Constructor with initialization
Definition at line 52 of file itkDiffusionTensor3D.txx.
| itk::DiffusionTensor3D< T >::DiffusionTensor3D | ( | const ComponentArrayType | r | ) |
Constructor with initialization
Definition at line 62 of file itkDiffusionTensor3D.txx.
|
inline |
Constructor to enable casting...
Definition at line 110 of file itkDiffusionTensor3D.h.
|
inherited |
Get various iterators to the array.
Get an Iterator for the beginning of the FixedArray.
Referenced by itk::DTITubeSpatialObjectPoint< TPointDimension >::SetTensorMatrix().
|
inherited |
Get a ConstIterator for the beginning of the FixedArray.
|
inherited |
Return an array containing EigenValues, and a matrix containing Eigen vectors.
Compute Eigen analysis, it returns an array with eigen values and a Matrix with eigen vectors
|
inherited |
Return an array containing EigenValues.
Compute Eigen Values
|
inherited |
Get an Iterator for the end of the FixedArray.
Referenced by itk::DTITubeSpatialObjectPoint< TPointDimension >::SetTensorMatrix().
|
inherited |
Get a ConstIterator for the end of the FixedArray.
|
inherited |
Fill all elements of the array with the given value.
Referenced by itk::SymmetricSecondRankTensor< TComponent, 3 >::SymmetricSecondRankTensor().
|
staticinherited |
Return an FixedArray with all elements assigned to the given value.
|
inlineinherited |
Return a pointer to the data.
Definition at line 216 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 217 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 213 of file itkFixedArray.h.
| DiffusionTensor3D< T >::RealValueType itk::DiffusionTensor3D< T >::GetFractionalAnisotropy | ( | ) | const |
Get the value of Fractional Anisotropy from the Tensor.
Compute the value of fractional anisotropy
Definition at line 139 of file itkDiffusionTensor3D.txx.
| DiffusionTensor3D< T >::RealValueType itk::DiffusionTensor3D< T >::GetInnerScalarProduct | ( | ) | const |
Get the Inner Scalar Product from the Tensor.
Compute the inner scalar product
Definition at line 201 of file itkDiffusionTensor3D.txx.
|
inlineinherited |
Return the value for the Nth component.
Definition at line 152 of file itkSymmetricSecondRankTensor.h.
References itk::FixedArray< TComponent, NDimension *(NDimension+1)/2 >::operator[]().
|
inlinestaticinherited |
Return the number of components.
Definition at line 146 of file itkSymmetricSecondRankTensor.h.
References itk::SymmetricSecondRankTensor< TComponent, NDimension >::InternalDimension.
| DiffusionTensor3D< T >::RealValueType itk::DiffusionTensor3D< T >::GetRelativeAnisotropy | ( | ) | const |
Get the value of Relative Anisotropy from the Tensor.
Compute the value of relative anisotropy
Definition at line 166 of file itkDiffusionTensor3D.txx.
| DiffusionTensor3D< T >::AccumulateValueType itk::DiffusionTensor3D< T >::GetTrace | ( | ) | const |
Get Trace value
Get the Trace, specialized version for 3D.
Note that the indices are related to the fact that we store only the upper-right triangle of the matrix. Like
| 0 1 2 | | X 3 4 | | X X 5 |
The trace is therefore the sum of the components M[0], M[3] and M[5].
Definition at line 124 of file itkDiffusionTensor3D.txx.
|
inlineinherited |
Definition at line 191 of file itkFixedArray.h.
|
inherited |
Matrix notation, in const and non-const forms.
Matrix notation access to elements
|
inherited |
Matrix notation access to elements
|
inherited |
Arithmetic operations between tensors and scalars
Performs multiplication with a scalar
|
inherited |
Performs multiplication by a scalar, in place
|
inherited |
Aritmetic operations between pixels. Return a new SymmetricSecondRankTensor.
Returns a temporary copy of a vector
|
inherited |
Performs addition in place
|
inherited |
Returns a temporary copy of a vector
|
inherited |
Performs subtraction in place
|
inherited |
Performs division by a scalar
|
inherited |
Performs division by a scalar, in place
| DiffusionTensor3D< T > & itk::DiffusionTensor3D< T >::operator= | ( | const Superclass & | r | ) |
Pass-through assignment operator for the Array base class.
Assignment Operator
Definition at line 99 of file itkDiffusionTensor3D.txx.
| DiffusionTensor3D< T > & itk::DiffusionTensor3D< T >::operator= | ( | const ComponentType & | r | ) |
Assignment Operator
Definition at line 73 of file itkDiffusionTensor3D.txx.
| DiffusionTensor3D< T > & itk::DiffusionTensor3D< T >::operator= | ( | const ComponentArrayType | r | ) |
Assignment Operator
Definition at line 86 of file itkDiffusionTensor3D.txx.
|
inline |
Templated Pass-through assignment for the Array base class.
Definition at line 120 of file itkDiffusionTensor3D.h.
References itk::SymmetricSecondRankTensor< TComponent, NDimension >::operator=().
|
inherited |
Operators == and != are used to compare whether two arrays are equal. Note that arrays are equal when the number of components (size) is the same, and each component value is equal.
Operator != compares different types of arrays.
|
inlineinherited |
Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.
Definition at line 197 of file itkFixedArray.h.
Referenced by itk::SymmetricSecondRankTensor< TComponent, 3 >::GetNthComponent(), and itk::SymmetricSecondRankTensor< TComponent, 3 >::SetNthComponent().
|
inlineinherited |
Definition at line 198 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 199 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 200 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 201 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 202 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 203 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 204 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 205 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 206 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 207 of file itkFixedArray.h.
|
inlineinherited |
Definition at line 208 of file itkFixedArray.h.
|
inherited |
Post-Multiply by a Matrix as ResultingTensor = ThisTensor * Matrix.
Post-multiply the Tensor by a Matrix
|
inherited |
Pre-Multiply by a Matrix as ResultingTensor = Matrix * ThisTensor.
Pre-multiply the Tensor by a Matrix
|
inherited |
Get a begin ReverseIterator.
|
inherited |
Get a begin ConstReverseIterator.
|
inherited |
Get an end ReverseIterator.
|
inherited |
Get an end ConstReverseIterator.
|
inlineinherited |
Set/Get element methods are more convenient in wrapping languages
Definition at line 211 of file itkFixedArray.h.
|
inherited |
Set the tensor to an identity tensor. This has 1 in its diagonal elements zero elsewhere
Set the Tensor to an Identity. Set ones in the diagonal and zeroes every where else.
|
inlineinherited |
Set the Nth component to v.
Definition at line 156 of file itkSymmetricSecondRankTensor.h.
References itk::FixedArray< TComponent, NDimension *(NDimension+1)/2 >::operator[]().
|
inherited |
Get the size of the FixedArray.
|
staticinherited |
Dimension of the vector space.
Definition at line 83 of file itkSymmetricSecondRankTensor.h.
|
staticinherited |
Definition at line 84 of file itkSymmetricSecondRankTensor.h.
|
staticinherited |
Length constant
Definition at line 68 of file itkFixedArray.h.