21 #ifndef otbStreamingResampleImageFilter_h
22 #define otbStreamingResampleImageFilter_h
24 #include "itkImageToImageFilter.h"
26 #include "itkTransformToDisplacementFieldSource.h"
27 #include "itkLinearInterpolateImageFunction.h"
29 #include "itkVector.h"
58 template <
class TInputImage,
class TOutputImage,
class TInterpolatorPrecisionType =
double>
64 typedef itk::ImageToImageFilter<TInputImage, TOutputImage>
Superclass;
87 typedef typename DisplacementFieldGeneratorType::TransformType
TransformType;
88 typedef typename DisplacementFieldGeneratorType::SizeType
SizeType;
89 typedef typename DisplacementFieldGeneratorType::SpacingType
SpacingType;
90 typedef typename DisplacementFieldGeneratorType::OriginType
OriginType;
91 typedef typename DisplacementFieldGeneratorType::IndexType
IndexType;
92 typedef typename DisplacementFieldGeneratorType::RegionType
RegionType;
95 typedef itk::InterpolateImageFunction<InputImageType, TInterpolatorPrecisionType>
InterpolatorType;
106 m_DisplacementFilter->SetTransform(transform);
113 void SetDisplacementFieldSpacing(SpacingType spacing);
117 return m_SignedOutputSpacing;
124 m_DisplacementFilter->SetOutputOrigin(origin);
125 m_WarpFilter->SetOutputOrigin(origin);
146 m_WarpFilter->SetInterpolator(interpolator);
158 void SetOutputParametersFromImage(
const ImageBaseType* image);
163 m_DisplacementFilter->SetNumberOfThreads(nbThread);
167 void PropagateRequestedRegion(itk::DataObject* output)
override;
175 void GenerateData()
override;
177 void GenerateOutputInformation()
override;
179 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
183 void operator=(
const Self&) =
delete;
195 #ifndef OTB_MANUAL_INSTANTIATION