18 #ifndef itkDisplacementFieldToBSplineImageFilter_h
19 #define itkDisplacementFieldToBSplineImageFilter_h
41 template <
typename TInputImage,
42 typename TInputPointSet = PointSet<typename TInputImage::PixelType, TInputImage::ImageDimension>,
43 typename TOutputImage = TInputImage>
57 itkStaticConstMacro(
ImageDimension,
unsigned int, TInputImage::ImageDimension );
68 typedef typename OutputFieldType::PixelType
PixelType;
71 typedef typename OutputFieldType::IndexType
IndexType;
75 typedef typename OutputFieldType::SizeType
SizeType;
78 typedef typename VectorType::RealValueType
RealType;
82 typedef typename InputPointSetType::PointType
PointType;
113 this->
SetNthInput( 1, const_cast<RealImageType *>( image ) );
127 this->
SetNthInput( 2, const_cast<InputPointSetType *>( points ) );
165 itkGetConstMacro( BSplineDomainOrigin,
OriginType );
168 itkGetConstMacro( BSplineDomainSpacing,
SpacingType );
171 itkGetConstMacro( BSplineDomainSize,
SizeType );
177 itkSetMacro( UseInputFieldToDefineTheBSplineDomain,
bool );
178 itkGetConstMacro( UseInputFieldToDefineTheBSplineDomain,
bool )
179 itkBooleanMacro( UseInputFieldToDefineTheBSplineDomain );
184 itkSetMacro( SplineOrder,
unsigned int );
189 itkGetConstMacro( SplineOrder,
unsigned int );
198 itkSetMacro( NumberOfControlPoints,
ArrayType );
207 itkGetConstMacro( NumberOfControlPoints, ArrayType );
215 itkSetMacro( NumberOfFittingLevels, ArrayType );
237 itkGetConstMacro( NumberOfFittingLevels,
ArrayType );
242 itkBooleanMacro( EstimateInverse );
243 itkSetMacro( EstimateInverse,
bool );
244 itkGetConstMacro( EstimateInverse,
bool );
250 itkBooleanMacro( EnforceStationaryBoundary );
251 itkSetMacro( EnforceStationaryBoundary,
bool );
252 itkGetConstMacro( EnforceStationaryBoundary,
bool );
271 void operator=( const Self& );
293 #ifndef ITK_MANUAL_INSTANTIATION
294 #include "itkDisplacementFieldToBSplineImageFilter.hxx"
SmartPointer< const Self > ConstPointer
const InputPointSetType * GetPointSet() const
OutputFieldType InverseDisplacementFieldType
bool m_BSplineDomainIsDefined
InputPointSetType::PixelType PointDataType
bool m_EnforceStationaryBoundary
BSplineFilterType::ArrayType ArrayType
SmartPointer< Self > Pointer
OutputFieldType::PixelType PixelType
void SetConfidenceImage(const RealImageType *image)
void GenerateData() override
unsigned int m_SplineOrder
void PrintSelf(std::ostream &os, Indent indent) const override
OutputFieldType::PointType OriginType
OutputFieldType::SizeType SizeType
const DisplacementFieldControlPointLatticeType * GetDisplacementFieldControlPointLattice() const
BSplineFilterType::WeightsContainerType WeightsContainerType
virtual void SetNumberOfFittingLevels(ArrayType _arg)
Base class for all process objects that output image data.
OutputFieldType::SpacingType SpacingType
void SetBSplineDomain(OriginType, SpacingType, SizeType, DirectionType)
void Fill(const ValueType &)
void SetPointSetConfidenceWeights(WeightsContainerType *weights)
OutputFieldType::PixelType VectorType
ArrayType m_NumberOfControlPoints
void SetDisplacementField(const InputFieldType *field)
static const unsigned int ImageDimension
BSplineScatteredDataPointSetToImageFilter< InputPointSetType, OutputFieldType > BSplineFilterType
const RealImageType * GetConfidenceImage() const
SpacingType m_BSplineDomainSpacing
DisplacementFieldToBSplineImageFilter()
BSplineFilterType::PointDataImageType DisplacementFieldControlPointLatticeType
InputPointSetType::PointsContainer PointsContainerType
InputPointSetType::PointDataContainer PointDataContainerType
InputPointSetType::PointType PointType
virtual void SetInput(const InputImageType *image)
TInputImage InputFieldType
TOutputImage OutputFieldType
InputFieldType DisplacementFieldType
void SetBSplineDomainFromImage(const InputFieldType *field)
DisplacementFieldToBSplineImageFilter Self
OutputFieldType::IndexType IndexType
const InputImageType * GetInput() const
Image filter which provides a B-spline output approximation.
OutputFieldType::DirectionType DirectionType
DataObject * GetInput(const DataObjectIdentifierType &key)
Return an input.
void SetBSplineDomainFromImage(const RealImageType *image)
OriginType m_BSplineDomainOrigin
void SetInput2(const InputPointSetType *points)
SizeType m_BSplineDomainSize
Base class for filters that take an image as input and produce an image as output.
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
OutputImageType * GetOutput()
void SetInput1(const RealImageType *image)
InputFieldType::PointType InputFieldPointType
Control indentation during Print() invocation.
bool m_UseInputFieldToDefineTheBSplineDomain
ArrayType m_NumberOfFittingLevels
Class which takes a dense displacement field image and/or a set of points with associated displacemen...
virtual void SetNthInput(DataObjectPointerArraySizeType num, DataObject *input)
VectorType::RealValueType RealType
const InputFieldType * GetDisplacementField() const
DirectionType m_BSplineDomainDirection
virtual ~DisplacementFieldToBSplineImageFilter()
TInputPointSet InputPointSetType
OutputFieldType::RegionType RegionType
Templated n-dimensional image class.
ImageToImageFilter< TInputImage, TOutputImage > Superclass
Image< RealType, ImageDimension > RealImageType
void SetPointSet(const InputPointSetType *points)
WeightsContainerType::Pointer m_PointWeights
void SetBSplineDomainFromImage(RealImageType *)