ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h>
Representation of a smooth deformation field with B-splines.
Although there already exists a B-spline transform in ITK which can be used for processes such as image registration, if these processes involve a dense sampling of an image a significant computational speed-up can be achieved by densely sampling the B-spline transform prior to invoking transformations.
This class takes as input a displacement field, smooths it on demand using the specified B-spline parameters. This represents an alternative approach to B-spline (FFD) registration and is explained more in detail in the reference given below.
Definition at line 52 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef BSplineFilterType::ArrayType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::ArrayType |
Definition at line 91 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef ArrayType::ValueType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::ArrayValueType |
Definition at line 92 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef BSplineScatteredDataPointSetToImageFilter<PointSetType, DisplacementFieldType> itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::BSplineFilterType |
Definition at line 88 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef SmartPointer<const Self> itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::ConstPointer |
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 60 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef Superclass::DerivativeType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DerivativeType |
Derivative type
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 73 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef DerivativeType::ValueType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DerivativeValueType |
Definition at line 74 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef BSplineFilterType::PointDataImageType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementFieldControlPointLatticeType |
Definition at line 90 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef Superclass::DisplacementFieldPointer itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementFieldPointer |
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 76 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef Superclass::DisplacementFieldType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementFieldType |
Define the displacement field type and corresponding interpolator type.
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 75 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef DisplacementFieldType::PixelType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementVectorType |
typedefs for projecting the input displacement field onto a B-spline field.
Definition at line 85 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef SmartPointer<Self> itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Pointer |
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 59 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef PointSet<DisplacementVectorType, Dimension> itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::PointSetType |
Definition at line 86 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef Superclass::ScalarType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::ScalarType |
Types from superclass
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 72 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef BSplineSmoothingOnUpdateDisplacementFieldTransform itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Self |
Standard class typedefs.
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 57 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef unsigned int itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SplineOrderType |
Definition at line 87 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef DisplacementFieldTransform<TScalar, NDimensions> itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Superclass |
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 58 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef Transform<TScalar,NDimensions,NDimensions>::Pointer itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::TransformPointer |
Definition at line 79 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
typedef BSplineFilterType::WeightsContainerType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::WeightsContainerType |
Definition at line 89 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::BSplineSmoothingOnUpdateDisplacementFieldTransform | ( | ) | [protected] |
virtual itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::~BSplineSmoothingOnUpdateDisplacementFieldTransform | ( | ) | [protected, virtual] |
itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::BSplineSmoothingOnUpdateDisplacementFieldTransform | ( | const Self & | ) | [private] |
DisplacementFieldPointer itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::BSplineSmoothDisplacementField | ( | const DisplacementFieldType * | , |
const ArrayType & | |||
) | [protected] |
Smooth the displacement field using B-splines.
virtual::itk::LightObject::Pointer itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::CreateAnother | ( | void | ) | const [virtual] |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
virtual const char* itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
virtual ArrayType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetNumberOfControlPointsForTheTotalField | ( | ) | const [virtual] |
Get the control point grid size definining the B-spline estimate of the scalar bias field. In each dimension, the B-spline mesh size is equal to the number of control points in that dimension minus the spline order. Default = 4 control points in each dimension for a mesh size of 1 in each dimension.
virtual ArrayType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetNumberOfControlPointsForTheUpdateField | ( | ) | const [virtual] |
Get the control point grid size definining the B-spline estimate of the update field. In each dimension, the B-spline mesh size is equal to the number of control points in that dimension minus the spline order. Default = 4 control points in each dimension for a mesh size of 1 in each dimension.
virtual SplineOrderType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetSplineOrder | ( | ) | const [virtual] |
Get the spline order defining the displacement field estimate. Default = 3.
virtual LightObject::Pointer itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::InternalClone | ( | ) | const [protected, virtual] |
Clone the current transform
Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.
static Pointer itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::New | ( | ) | [static] |
New macro for creation of through a Smart Pointer
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::operator= | ( | const Self & | ) | [private] |
Create an identity jacobian for use in ComputeJacobianWithRespectToParameters.
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetMeshSizeForTheTotalField | ( | const ArrayType & | ) |
Set the total field mesh size which is used to specify the control point grid size. The mesh size in each dimension is calculated as the difference between the control point grid size and the spline order, i.e. meshSize = controlPointGridSize - SplineOrder.
void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetMeshSizeForTheUpdateField | ( | const ArrayType & | ) |
Set the update field mesh size which is used to specify the control point grid size. The mesh size in each dimension is calculated as the difference between the control point grid size and the spline order, i.e. meshSize = controlPointGridSize - SplineOrder.
virtual void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetNumberOfControlPointsForTheTotalField | ( | ArrayType | _arg | ) | [virtual] |
Set the control point grid size definining the B-spline estimate of the total field. In each dimension, the B-spline mesh size is equal to the number of control points in that dimension minus the spline order. Default = 4 control points in each dimension for a mesh size of 1 in each dimension.
virtual void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetNumberOfControlPointsForTheUpdateField | ( | ArrayType | _arg | ) | [virtual] |
Set the control point grid size definining the B-spline estimate of the update field. In each dimension, the B-spline mesh size is equal to the number of control points in that dimension minus the spline order. Default = 4 control points in each dimension for a mesh size of 1 in each dimension.
virtual void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetSplineOrder | ( | SplineOrderType | _arg | ) | [virtual] |
Set the spline order defining the bias field estimate. Default = 3.
virtual void itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::UpdateTransformParameters | ( | DerivativeType & | update, |
ScalarType | factor = 1.0 |
||
) | [virtual] |
Update the transform's parameters by the values in update
. We assume update
is of the same length as Parameters. Throw exception otherwise. The update process performs an smoothing on the displacement field by using BSplines. factor
is a scalar multiplier for each value in update. BSplineSmoothDisplacementField
is called after the update is added to the field. See base class for more details.
const unsigned int itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Dimension = NDimensions [static] |
Dimension of the domain spaces.
Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.
Definition at line 69 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
ArrayType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::m_NumberOfControlPointsForTheTotalField [private] |
Definition at line 188 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
ArrayType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::m_NumberOfControlPointsForTheUpdateField [private] |
Definition at line 187 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.
SplineOrderType itk::BSplineSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::m_SplineOrder [private] |
Definition at line 186 of file itkBSplineSmoothingOnUpdateDisplacementFieldTransform.h.