18#ifndef itkBlockMatchingImageFilter_h
19#define itkBlockMatchingImageFilter_h
74 typename TMovingImage = TFixedImage,
75 typename TFeatures = PointSet<Matrix<SpacePrecisionType, TFixedImage::ImageDimension, TFixedImage::ImageDimension>,
76 TFixedImage::ImageDimension>,
77 class TDisplacements =
78 PointSet<Vector<typename TFeatures::PointType::ValueType, TFeatures::PointDimension>, TFeatures::PointDimension>,
79 class TSimilarities = PointSet<SpacePrecisionType, TDisplacements::PointDimension>>
85 static constexpr unsigned int ImageDimension = TFixedImage::ImageDimension;
162 inline SimilaritiesType *
169 using Superclass::MakeOutput;
233#ifndef ITK_MANUAL_INSTANTIATION
234# include "itkBlockMatchingImageFilter.hxx"
Computes displacements of given points from a fixed image in a floating image.
void GenerateData() override
void PrintSelf(std::ostream &os, Indent indent) const override
itkSetInputMacro(MovingImage, MovingImageType)
TFixedImage FixedImageType
TFeatures FeaturePointsType
itkGetInputMacro(FeaturePoints, FeaturePointsType)
typename FixedImageType::ConstPointer FixedImageConstPointer
typename DisplacementsType::ConstPointer DisplacementsConstPointer
itkGetInputMacro(FixedImage, FixedImageType)
BlockMatchingImageFilter()
typename FixedImageType::PixelType FixedImagePixelType
virtual void BeforeThreadedGenerateData()
typename SimilaritiesType::PixelType SimilaritiesValue
typename MovingImageType::ConstPointer MovingImageConstPointer
typename SimilaritiesType::Pointer SimilaritiesPointer
void EnlargeOutputRequestedRegion(DataObject *output) override
std::unique_ptr< SimilaritiesValue[]> m_SimilaritiesValuesArray
TDisplacements DisplacementsType
typename SimilaritiesType::ConstPointer SimilaritiesConstPointer
TSimilarities SimilaritiesType
virtual void ThreadedGenerateData(ThreadIdType threadId)
typename DisplacementsType::PixelType DisplacementsVector
void GenerateOutputInformation() override
itkSetInputMacro(FixedImage, FixedImageType)
SimilaritiesType * GetSimilarities()
typename FeaturePointsType::ConstPointer FeaturePointsConstPointer
typename FeaturePointsType::PointType FeaturePointsPhysicalCoordinates
typename DisplacementsType::Pointer DisplacementsPointer
TMovingImage MovingImageType
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION ThreaderCallback(void *arg)
DataObject::Pointer MakeOutput(ProcessObject::DataObjectPointerArraySizeType idx) override
Make a DataObject of the correct type to used as the specified output.
DisplacementsType * GetDisplacements()
itkSetInputMacro(FeaturePoints, FeaturePointsType)
typename FeaturePointsType::Pointer FeaturePointsPointer
itkGetInputMacro(MovingImage, MovingImageType)
virtual void AfterThreadedGenerateData()
std::unique_ptr< DisplacementsVector[]> m_DisplacementsVectorsArray
~BlockMatchingImageFilter() override=default
Base class for all data objects in ITK.
An image region represents a structured region of data.
Control indentation during Print() invocation.
Light weight base class for most itk classes.
MeshToMeshFilter is the base class for all process objects that output mesh data, and require mesh da...
DataObject * GetOutput(const DataObjectIdentifierType &key)
DataObjectPointerArray::size_type DataObjectPointerArraySizeType
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
ImageBaseType::PointType PointType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType
unsigned long SizeValueType
itk::ITK_THREAD_RETURN_TYPE ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION
Represent a n-dimensional index in a n-dimensional image.