18 #ifndef rtkWarpFourDToProjectionStackImageFilter_h 19 #define rtkWarpFourDToProjectionStackImageFilter_h 87 template <
typename VolumeSeriesType,
typename ProjectionStackType>
107 typedef typename std::conditional<std::is_same<VolumeSeriesType, CPUVolumeSeriesType>::value,
109 itk::CudaImage<VectorForDVF, VolumeSeriesType::ImageDimension>>::type
112 typename std::conditional<std::is_same<VolumeSeriesType, CPUVolumeSeriesType>::value,
121 typedef typename std::conditional<std::is_same<VolumeSeriesType, CPUVolumeSeriesType>::value,
124 typedef typename std::conditional<std::is_same<VolumeSeriesType, CPUVolumeSeriesType>::value,
137 #ifdef itkOverrideGetNameOfClassMacro 150 itkExceptionMacro(<<
"ForwardProjection cannot be changed");
155 SetDisplacementField(
const DVFSequenceImageType * DisplacementField);
156 typename DVFSequenceImageType::ConstPointer
157 GetDisplacementField();
161 SetSignal(
const std::vector<double> signal)
override;
165 itkGetMacro(UseCudaCyclicDeformation,
bool);
174 GenerateData()
override;
177 GenerateOutputInformation()
override;
180 GenerateInputRequestedRegion()
override;
191 bool m_UseCudaCyclicDeformation{
false };
196 #ifndef ITK_MANUAL_INSTANTIATION 197 # include "rtkWarpFourDToProjectionStackImageFilter.hxx" typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension > CPUVolumeSeriesType
typename itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension - 1 > DVFImageType
std::vector< double > SignalVectorType
void SetForwardProjectionFilter(const typename Superclass::ForwardProjectionFilterType::Pointer)
ProjectionStackType VolumeType
#define itkSetMacro(name, type)
CPUDVFInterpolatorType::Pointer m_DVFInterpolatorFilter
void VerifyInputInformation() const override
std::vector< double > m_Signal
Joseph forward projection.
Forward projection part for motion compensated iterative 4D reconstruction.
Implements part of the 4D reconstruction by conjugate gradient.
typename itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension > DVFSequenceImageType