Slicer 5.4
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
itkTransformDeformationFieldFilter.h
Go to the documentation of this file.
1#ifndef itkTransformDeformationFieldFilter_h
2#define itkTransformDeformationFieldFilter_h
3
4#include <itkObject.h>
5#include <itkImageToImageFilter.h>
6#include <itkImage.h>
7#include <itkImageRegionIteratorWithIndex.h>
8#include <itkImageRegionConstIteratorWithIndex.h>
9#include <itkTransform.h>
10
11namespace itk
12{
19template <class TInput, class TOutput, int NDimensions>
21 : public ImageToImageFilter
22 <Image<itk::Vector<TInput, NDimensions>, NDimensions>,
23 Image<itk::Vector<TOutput, NDimensions>, NDimensions> >
24{
25public:
26 typedef TInput InputDataType;
27 typedef TOutput OutputDataType;
28
29 typedef ImageToImageFilter
30 <Image<itk::Vector<InputDataType, NDimensions>, NDimensions>,
31 Image<itk::Vector<OutputDataType, NDimensions>, NDimensions> >
33
34 typedef itk::Vector<InputDataType, NDimensions> InputDeformationPixelType;
35 typedef Image<InputDeformationPixelType, NDimensions> InputDeformationFieldType;
36 typedef itk::Vector<OutputDataType, NDimensions> OutputDeformationPixelType;
37 typedef Image<OutputDeformationPixelType, NDimensions> OutputDeformationFieldType;
39 typedef SmartPointer<Self> Pointer;
40 typedef SmartPointer<const Self> ConstPointer;
41
42 typedef typename InputDeformationFieldType::Pointer InputDeformationFieldPointerType;
43 typedef typename OutputDeformationFieldType::Pointer OutputDeformationFieldPointerType;
44 typedef ImageRegionConstIteratorWithIndex<InputDeformationFieldType> InputIteratorType;
45 typedef ImageRegionIteratorWithIndex<OutputDeformationFieldType> OutputIteratorType;
46 typedef typename OutputDeformationFieldType::RegionType OutputDeformationFieldRegionType;
47 typedef Transform<OutputDataType, NDimensions, NDimensions> TransformType;
48 typedef typename OutputDeformationFieldType::RegionType OutputImageRegionType;
49
52
54// /Set the transform
56
57// /Get the time of the last modification of the object
58 ModifiedTimeType GetMTime() const override;
59
60#ifdef ITK_USE_CONCEPT_CHECKING
62 itkConceptMacro( InputConvertibleToDoubleCheck,
63 ( Concept::Convertible<InputDataType, double> ) );
64 itkConceptMacro( DoubleConvertibleToOutputCheck,
65 ( Concept::Convertible<double, OutputDataType> ) );
67#endif
68protected:
70
71 void DynamicThreadedGenerateData( const OutputImageRegionType & outputRegionForThread) override;
72
74
76
78
79private:
80 typename TransformType::Pointer m_Transform;
81// InputDeformationFieldPointerType m_Input ;
82};
83
84} // end namespace itk
85
86#ifndef ITK_MANUAL_INSTANTIATION
87#include "itkTransformDeformationFieldFilter.txx"
88#endif
89
90#endif
ImageToImageFilter< Image< itk::Vector< InputDataType, NDimensions >, NDimensions >, Image< itk::Vector< OutputDataType, NDimensions >, NDimensions > > Superclass
itk::Vector< OutputDataType, NDimensions > OutputDeformationPixelType
OutputDeformationFieldType::RegionType OutputDeformationFieldRegionType
Transform< OutputDataType, NDimensions, NDimensions > TransformType
Image< InputDeformationPixelType, NDimensions > InputDeformationFieldType
ImageRegionConstIteratorWithIndex< InputDeformationFieldType > InputIteratorType
itkSetObjectMacro(Transform, TransformType)
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
OutputDeformationFieldType::RegionType OutputImageRegionType
itk::Vector< InputDataType, NDimensions > InputDeformationPixelType
ModifiedTimeType GetMTime() const override
void GenerateInputRequestedRegion() override
ImageRegionIteratorWithIndex< OutputDeformationFieldType > OutputIteratorType
InputDeformationFieldType::Pointer InputDeformationFieldPointerType
Image< OutputDeformationPixelType, NDimensions > OutputDeformationFieldType
OutputDeformationFieldType::Pointer OutputDeformationFieldPointerType
itkTypeMacro(TransformDeformationFieldFilter, ImageToImageFilter)
Simplified inverse ITK transforms.