Go to the documentation of this file.
18 #ifndef __itkGPUResampleImageFilter_h
19 #define __itkGPUResampleImageFilter_h
21 #include "itkResampleImageFilter.h"
46 template<
typename TInputImage,
typename TOutputImage,
typename TInterpolatorPrecisionType =
float >
49 ResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType > >
55 typedef ResampleImageFilter<
70 TInputImage::ImageDimension );
72 TOutputImage::ImageDimension );
87 typedef typename CPUSuperclass::SizeType
SizeType;
88 typedef typename CPUSuperclass::IndexType
IndexType;
120 itkSetMacro( RequestedNumberOfSplits,
unsigned int );
121 itkGetConstMacro( RequestedNumberOfSplits,
unsigned int );
127 virtual void PrintSelf( std::ostream & os, Indent indent )
const ITK_OVERRIDE;
138 } GPUTransformTypeEnum;
142 const typename GPUOutputImage::Pointer & output );
146 const typename GPUInputImage::Pointer & input,
147 const typename GPUOutputImage::Pointer & output );
151 const std::size_t transformIndex );
155 const typename GPUInputImage::Pointer & input,
156 const typename GPUOutputImage::Pointer & output );
160 const std::size_t transformIndex );
173 const std::size_t & index, std::size_t & kernelId )
const;
177 const std::size_t transformIndex );
197 class TransformKernelHelper
200 std::string m_TransformTypeAsString;
201 std::: size_t m_TransformKernelHandle;
203 TransformKernelHelper()
206 m_TransformTypeAsString =
"Else";
207 m_TransformKernelHandle = 0;
214 std::vector< TransformKernelHelper > m_SupportedTransformKernels;
238 #ifndef ITK_MANUAL_INSTANTIATION
239 #include "itkGPUResampleImageFilter.hxx"
std::vector< std::string > m_Sources
GPUResampleImageFilter(const Self &)
GPUBSplineBaseTransformType * GetGPUBSplineBaseTransform(const std::vcl_size_t transformIndex)
GPUDataManagerPointer m_FilterParameters
bool HasTransform(const GPUTransformTypeEnum type) const
GPUResampleImageFilter Self
GPUBSplineBaseTransform< InterpolatorPrecisionType, InputImageDimension > GPUBSplineBaseTransformType
GPUDataManagerPointer m_InputGPUImageBase
virtual void SetInterpolator(InterpolatorType *_arg)
virtual void SetExtrapolator(ExtrapolatorType *_arg)
itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension)
CPUSuperclass::InputImageRegionType InputImageRegionType
Templated n-dimensional image class for the GPU.
CPUSuperclass::ExtrapolatorType ExtrapolatorType
GPUInterpolatorBase * m_InterpolatorBase
GPUDataManagerPointer m_DeformationFieldBuffer
void SetArgumentsForPreKernelManager(const typename GPUOutputImage::Pointer &output)
TInterpolatorPrecisionType InterpolatorPrecisionType
SmartPointer< const Self > ConstPointer
GPUTraits< TInputImage >::Type GPUInputImage
GPUDataManager::Pointer GPUDataManagerPointer
TInputImage InputImageType
void SetBSplineTransformCoefficientsToGPU(const std::vcl_size_t transformIndex)
unsigned int m_RequestedNumberOfSplits
CPUSuperclass::InterpolatorType InterpolatorType
GPUKernelManagerPointer m_PreKernelManager
int GetTransformHandle(const GPUTransformTypeEnum type) const
GPU version of ResampleImageFilter.
bool GetKernelIdFromTransformId(const std::vcl_size_t &index, std::vcl_size_t &kernelId) const
std::vcl_size_t m_TransformSourceLoadedIndex
CPUSuperclass::SizeType SizeType
SmartPointer< Self > Pointer
OpenCLKernelManager::Pointer GPUKernelManagerPointer
GPUTraits< TOutputImage >::Type GPUOutputImage
std::map< GPUTransformTypeEnum, TransformHandle > TransformsHandle
std::pair< int, bool > TransformHandle
GPU version of BSplineInterpolateImageFunction.
void SetArgumentsForPostKernelManager(const typename GPUInputImage::Pointer &input, const typename GPUOutputImage::Pointer &output)
Base class fro all GPU interpolators.
const GPUTransformTypeEnum GetTransformType(const int &transformIndex) const
itkGPUKernelClassMacro(GPUBSplineTransformKernel)
GPUSuperclass::OutputImagePixelType OutputImagePixelType
ResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType > CPUSuperclass
virtual void PrintSelf(std::ostream &os, Indent indent) const ITK_OVERRIDE
std::vcl_size_t m_InterpolatorSourceLoadedIndex
GPUKernelManagerPointer m_LoopKernelManager
CPUSuperclass::IndexType IndexType
TransformsHandle m_FilterLoopGPUKernelHandle
TOutputImage OutputImageType
void SetArgumentsForLoopKernelManager(const typename GPUInputImage::Pointer &input, const typename GPUOutputImage::Pointer &output)
class to abstract the behaviour of the GPU filters.
GPUBSplineInterpolatorType::GPUDataManagerPointer GPUBSplineInterpolatorDataManagerPointer
GPUBSplineInterpolateImageFunction< InputImageType, InterpolatorPrecisionType > GPUBSplineInterpolatorType
GPUTransformBase * m_TransformBase
GPUDataManagerPointer m_OutputGPUImageBase
CPUSuperclass::TransformType TransformType
bool m_InterpolatorIsBSpline
GPUKernelManagerPointer m_PostKernelManager
GPUBSplineInterpolatorType::GPUCoefficientImagePointer GPUBSplineInterpolatorCoefficientImagePointer
~GPUResampleImageFilter()
void operator=(const Self &)
virtual void GPUGenerateData(void)
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension)
virtual void SetTransform(const TransformType *_arg)
GPUImageToImageFilter< TInputImage, TOutputImage, CPUSuperclass > GPUSuperclass
void SetTransformParametersForLoopKernelManager(const std::vcl_size_t transformIndex)
GPUCompositeTransformBase< InterpolatorPrecisionType, InputImageDimension > CompositeTransformBaseType
CPUSuperclass::OutputImageRegionType OutputImageRegionType
std::vcl_size_t m_SourceIndex
std::vcl_size_t m_FilterPreGPUKernelHandle
std::vcl_size_t m_FilterPostGPUKernelHandle
GPUBSplineInterpolatorType::GPUCoefficientImageType GPUBSplineInterpolatorCoefficientImageType
Superclass::OutputImagePixelType OutputImagePixelType
Generated on OURCE_DATE_EPOCH for elastix by 1.8.18 |
|