18#ifndef itkDisplacementFieldToBSplineImageFilter_h
19#define itkDisplacementFieldToBSplineImageFilter_h
41template <
typename TInputImage,
43 typename TOutputImage = TInputImage>
72 using PixelType =
typename OutputFieldType::PixelType;
75 using IndexType =
typename OutputFieldType::IndexType;
79 using SizeType =
typename OutputFieldType::SizeType;
82 using RealType =
typename VectorType::RealValueType;
105 const InputFieldType *
129 const RealImageType *
149 const InputPointSetType *
204 itkSetMacro(UseInputFieldToDefineTheBSplineDomain,
bool);
205 itkGetConstMacro(UseInputFieldToDefineTheBSplineDomain,
bool);
206 itkBooleanMacro(UseInputFieldToDefineTheBSplineDomain);
211 itkSetMacro(SplineOrder,
unsigned int);
216 itkGetConstMacro(SplineOrder,
unsigned int);
269 itkBooleanMacro(EstimateInverse);
270 itkSetMacro(EstimateInverse,
bool);
271 itkGetConstMacro(EstimateInverse,
bool);
277 itkBooleanMacro(EnforceStationaryBoundary);
278 itkSetMacro(EnforceStationaryBoundary,
bool);
279 itkGetConstMacro(EnforceStationaryBoundary,
bool);
318#ifndef ITK_MANUAL_INSTANTIATION
319# include "itkDisplacementFieldToBSplineImageFilter.hxx"
Image filter which provides a B-spline output approximation.
VectorContainer< unsigned int, RealType > WeightsContainerType
Image< PointDataType, Self::ImageDimension > PointDataImageType
FixedArray< unsigned int, Self::ImageDimension > ArrayType
const InputFieldType * GetDisplacementField() const
typename BSplineFilterType::ArrayType ArrayType
SpacingType m_BSplineDomainSpacing
SmartPointer< const Self > ConstPointer
const InputPointSetType * GetPointSet() const
typename OutputFieldType::PointType OriginType
DirectionType m_BSplineDomainDirection
typename OutputFieldType::SpacingType SpacingType
virtual void SetNumberOfFittingLevels(ArrayType _arg)
ArrayType m_NumberOfFittingLevels
const RealImageType * GetConfidenceImage() const
typename OutputFieldType::IndexType IndexType
InputFieldType DisplacementFieldType
bool m_UseInputFieldToDefineTheBSplineDomain
Image< RealType, ImageDimension > RealImageType
typename InputPointSetType::PointsContainer PointsContainerType
SmartPointer< Self > Pointer
void SetPointSetConfidenceWeights(WeightsContainerType *weights)
typename OutputFieldType::RegionType RegionType
typename InputFieldType::PointType InputFieldPointType
const DisplacementFieldControlPointLatticeType * GetDisplacementFieldControlPointLattice() const
typename InputPointSetType::PixelType PointDataType
static constexpr unsigned int ImageDimension
PointSet< typename ConstantVelocityFieldType::PixelType, ConstantVelocityFieldType::ImageDimension > InputPointSetType
void SetInput1(const RealImageType *image)
void SetBSplineDomainFromImage(const InputFieldType *field)
bool m_BSplineDomainIsDefined
ImageToImageFilter< ConstantVelocityFieldType, ConstantVelocityFieldType > Superclass
typename InputPointSetType::PointType PointType
bool m_EnforceStationaryBoundary
typename OutputFieldType::PixelType VectorType
typename OutputFieldType::SizeType SizeType
SizeType m_BSplineDomainSize
void SetConfidenceImage(const RealImageType *image)
typename BSplineFilterType::PointDataImageType DisplacementFieldControlPointLatticeType
unsigned int m_SplineOrder
ArrayType m_NumberOfControlPoints
ConstantVelocityFieldType InputFieldType
typename OutputFieldType::PixelType PixelType
DisplacementFieldToBSplineImageFilter Self
void PrintSelf(std::ostream &os, Indent indent) const override
void SetBSplineDomain(OriginType, SpacingType, SizeType, DirectionType)
void SetInput2(const InputPointSetType *points)
typename BSplineFilterType::WeightsContainerType WeightsContainerType
void SetBSplineDomainFromImage(InputFieldType *)
void SetDisplacementField(const InputFieldType *field)
OriginType m_BSplineDomainOrigin
typename VectorType::RealValueType RealType
void SetPointSet(const InputPointSetType *points)
OutputFieldType InverseDisplacementFieldType
ConstantVelocityFieldType OutputFieldType
void GenerateData() override
void SetBSplineDomainFromImage(const RealImageType *image)
typename InputPointSetType::PointDataContainer PointDataContainerType
DisplacementFieldToBSplineImageFilter()
typename OutputFieldType::DirectionType DirectionType
void SetBSplineDomainFromImage(RealImageType *)
BSplineScatteredDataPointSetToImageFilter< InputPointSetType, OutputFieldType > BSplineFilterType
void SetNumberOfFittingLevels(unsigned int n)
~DisplacementFieldToBSplineImageFilter() override=default
WeightsContainerType::Pointer m_PointWeights
OutputImageType * GetOutput()
virtual void SetInput(const InputImageType *input)
const InputImageType * GetInput() const
Templated n-dimensional image class.
Control indentation during Print() invocation.
TPointsContainer PointsContainer
A superclass of the N-dimensional mesh structure; supports point (geometric coordinate and attribute)...
typename MeshTraits::PixelType PixelType
typename MeshTraits::PointType PointType
typename MeshTraits::PointDataContainer PointDataContainer
virtual void SetNthInput(DataObjectPointerArraySizeType idx, DataObject *input)
DataObject * GetInput(const DataObjectIdentifierType &key)
Return an input.
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
constexpr TContainer MakeFilled(typename TContainer::const_reference value)