18 #ifndef rtkWarpProjectionStackToFourDImageFilter_h 19 #define rtkWarpProjectionStackToFourDImageFilter_h 84 template <
typename VolumeSeriesType,
typename ProjectionStackType>
102 typename VolumeSeriesType::template RebindImageType<VectorForDVF, VolumeSeriesType::ImageDimension>;
104 typename VolumeSeriesType::template RebindImageType<
VectorForDVF, VolumeSeriesType::ImageDimension - 1>;
109 typename std::conditional_t<std::is_same_v<VolumeSeriesType, CPUVolumeSeriesType>,
114 typename std::conditional_t<std::is_same_v<VolumeSeriesType, CPUVolumeSeriesType>,
135 itkExceptionMacro(<<
"BackProjection cannot be changed");
140 SetDisplacementField(
const DVFSequenceImageType * DisplacementField);
141 typename DVFSequenceImageType::ConstPointer
142 GetDisplacementField();
146 SetSignal(
const std::vector<double> signal)
override;
150 itkGetMacro(UseCudaCyclicDeformation,
bool);
159 GenerateData()
override;
162 GenerateOutputInformation()
override;
178 #ifndef ITK_MANUAL_INSTANTIATION 179 # include "rtkWarpProjectionStackToFourDImageFilter.hxx"
typename VolumeSeriesType::template RebindImageType< VectorForDVF, VolumeSeriesType::ImageDimension > DVFSequenceImageType
std::vector< double > m_Signal
void SetBackProjectionFilter(typename Superclass::BackProjectionFilterType *)
typename std::conditional_t< std::is_same_v< VolumeSeriesType, CPUVolumeSeriesType >, CPUDVFInterpolatorType, CudaCyclicDeformationImageFilter > CudaCyclicDeformationImageFilterType
CPUDVFInterpolatorType::Pointer m_DVFInterpolatorFilter
Voxel-based backprojection into warped volume implemented in CUDA.
#define itkSetMacro(name, type)
typename std::conditional_t< std::is_same_v< VolumeSeriesType, CPUVolumeSeriesType >, BackProjectionImageFilter< VolumeType, VolumeType >, CudaWarpBackProjectionImageFilter > WarpBackProjectionImageFilter
Implements part of the 4D reconstruction by conjugate gradient.
std::vector< double > SignalVectorType
bool m_UseCudaCyclicDeformation
void VerifyInputInformation() const override
typename VolumeSeriesType::template RebindImageType< VectorForDVF, VolumeSeriesType::ImageDimension - 1 > DVFImageType
Back projection part for motion compensated iterative 4D reconstruction.
typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension > CPUVolumeSeriesType
ProjectionStackType VolumeType