itk::VelocityFieldLieBracketFilter< TInputImage, TOutputImage > Class Template Reference
Compute the Lie bracket of two vector fields using the formula [v,u](p) = Jac(v)(p).u(p) − Jac(u)(p).v(p) (1).
More...
#include <itkVelocityFieldLieBracketFilter.h>
List of all members.
Public Types |
| typedef SmartPointer< const Self > | ConstPointer |
typedef
InputFieldType::ConstPointer | InputFieldConstPointer |
typedef
itk::VectorCentralDifferenceImageFunction
< InputFieldType > | InputFieldGradientCalculatorType |
typedef
InputFieldGradientCalculatorType::OutputType | InputFieldGradientType |
| typedef InputFieldType::PixelType | InputFieldPixelType |
| typedef InputFieldType::Pointer | InputFieldPointer |
| typedef InputFieldType::RegionType | InputFieldRegionType |
| typedef TInputImage | InputFieldType |
typedef
OutputFieldType::ConstPointer | OutputFieldConstPointer |
| typedef OutputFieldType::PixelType | OutputFieldPixelType |
| typedef OutputFieldType::Pointer | OutputFieldPointer |
| typedef OutputFieldType::RegionType | OutputFieldRegionType |
| typedef TOutputImage | OutputFieldType |
| typedef SmartPointer< Self > | Pointer |
typedef
VelocityFieldLieBracketFilter | Self |
typedef ImageToImageFilter
< TInputImage, TOutputImage > | Superclass |
Public Member Functions |
| virtual void | GenerateInputRequestedRegion () throw ( InvalidRequestedRegionError ) |
| | itkNewMacro (Self) |
| | itkStaticConstMacro (OutputFieldPixelDimension, unsigned int, OutputFieldPixelType::Dimension) |
| | itkStaticConstMacro (InputFieldPixelDimension, unsigned int, InputFieldPixelType::Dimension) |
| | itkStaticConstMacro (OutputFieldDimension, unsigned int, TOutputImage::ImageDimension) |
| | itkStaticConstMacro (InputFieldDimension, unsigned int, TInputImage::ImageDimension) |
| | itkTypeMacro (VelocityFieldLieBracketFilter, ImageToImageFilter) |
Protected Member Functions |
| void | BeforeThreadedGenerateData () |
| | itkGetObjectMacro (LeftGradientCalculator, InputFieldGradientCalculatorType) |
| | itkGetObjectMacro (RightGradientCalculator, InputFieldGradientCalculatorType) |
| | itkSetObjectMacro (LeftGradientCalculator, InputFieldGradientCalculatorType) |
| | itkSetObjectMacro (RightGradientCalculator, InputFieldGradientCalculatorType) |
| void | PrintSelf (std::ostream &os, Indent indent) const |
| void | ThreadedGenerateData (const OutputFieldRegionType &outputRegionForThread, int threadId) |
| | VelocityFieldLieBracketFilter () |
| | ~VelocityFieldLieBracketFilter () |
Private Member Functions |
| void | operator= (const Self &) |
| | VelocityFieldLieBracketFilter (const Self &) |
Private Attributes |
| InputFieldGradientCalculatorType::Pointer | m_LeftGradientCalculator |
| InputFieldGradientCalculatorType::Pointer | m_RightGradientCalculator |
Detailed Description
template<class TInputImage, class TOutputImage>
class itk::VelocityFieldLieBracketFilter< TInputImage, TOutputImage >
Compute the Lie bracket of two vector fields using the formula [v,u](p) = Jac(v)(p).u(p) − Jac(u)(p).v(p) (1).
See M. Bossa, M. Hernandez and S.Olmos, Contributions to 3D diffeomorphic atlas estimation: Application to brain images, Proc. of MICCAI’07 and T. Vercauteren, X. Pennec, A. Perchant and N. Ayache, "Symmetric Log-Domain Diffeomorphic Registration: A Demons-based Approach", Proc. of MICCAI 2008.
- Note:
- Most authors define the Lie bracket as the opposite of (1). Numerical simulations, and personal communication with M. Bossa, showed the relevance of this definition. Future research will aim at fully understanding the reason of this discrepancy.
Velocity fields are represented as images whose pixel type are vector type with N elements, where N is the dimension of the image. The vector type must support element access via operator[]. It is assumed that the vector elements behave like floating point scalars.
This class is templated over the input field type and the output field type.
- Warning:
- This filter assumes that the input field type and velocity field type both have the same number of dimensions.
- Author:
- Florence Dru, INRIA and Tom Vercauteren, MKT
Member Typedef Documentation
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Gradient calculator type.
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Some convenient typedefs.
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Constructor & Destructor Documentation
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Member Function Documentation
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Get right and left gradient calculators.
template<class TInputImage , class TOutputImage >
Method for creation through the object factory.
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Set right and left gradient calculators.
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
Run-time type information (and related methods).
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
VelocityFieldLieBracketFilter 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"
- See also:
- ImageToImageFilter::ThreadedGenerateData(), ImageToImageFilter::GenerateData()
Member Data Documentation
template<class TInputImage , class TOutputImage >
template<class TInputImage , class TOutputImage >
The documentation for this class was generated from the following file: