18 #ifndef rtkRegularizedConjugateGradientConeBeamReconstructionFilter_h 19 #define rtkRegularizedConjugateGradientConeBeamReconstructionFilter_h 106 template <
typename TImage>
120 using GradientImageType = itk::CudaImage<CovariantVectorForSpatialGradient, TImage::ImageDimension>;
136 SetInputVolume(
const TImage * Volume);
137 typename TImage::ConstPointer
143 SetInputProjectionStack(
const TImage * Projection);
144 typename TImage::Pointer
145 GetInputProjectionStack();
150 SetInputWeights(
const TImage * Weights);
151 typename TImage::Pointer
157 SetSupportMask(
const TImage * SupportMask);
158 typename TImage::ConstPointer
170 itkGetMacro(PerformPositivity,
bool);
172 itkGetMacro(PerformTVSpatialDenoising,
bool);
173 itkSetMacro(PerformWaveletsSpatialDenoising,
bool);
174 itkGetMacro(PerformWaveletsSpatialDenoising,
bool);
176 itkGetMacro(PerformSoftThresholdOnImage,
bool);
180 itkGetMacro(GammaTV,
float);
182 itkGetMacro(SoftThresholdWavelets,
float);
184 itkGetMacro(SoftThresholdOnImage,
float);
187 itkGetMacro(NumberOfLevels,
unsigned int);
192 itkGetMacro(Order,
unsigned int);
198 itkGetMacro(MainLoop_iterations,
int);
200 itkGetMacro(CG_iterations,
int);
202 itkGetMacro(TV_iterations,
int);
210 itkGetMacro(Preconditioned,
bool);
215 itkGetMacro(Tikhonov,
float);
217 itkGetMacro(Gamma,
float);
222 itkGetMacro(CudaConjugateGradient,
bool);
227 itkGetMacro(DisableDisplacedDetectorFilter,
bool);
236 VerifyPreconditions()
const override;
240 GenerateData()
override;
243 GenerateOutputInformation()
override;
246 GenerateInputRequestedRegion()
override;
275 bool m_DimensionsProcessedForTV[TImage::ImageDimension];
297 #ifndef ITK_MANUAL_INSTANTIATION 298 # include "rtkRegularizedConjugateGradientConeBeamReconstructionFilter.hxx"
bool m_CudaConjugateGradient
Performs 3D regularized reconstruction.
Implements ConjugateGradient.
typename Superclass::BackProjectionType BackProjectionType
float m_SoftThresholdOnImage
Applies a total variation denoising, only alm_SingularValueThresholdFilterong the dimensions specifie...
WaveletsDenoisingFilterType::Pointer m_WaveletsDenoising
ThresholdFilterType::Pointer m_PositivityFilter
SoftThresholdFilterType::Pointer m_SoftThresholdFilter
Projection geometry for a source and a 2-D flat panel.
#define itkSetMacro(name, type)
rtk::ThreeDCircularProjectionGeometry::Pointer m_Geometry
unsigned int m_NumberOfLevels
float m_SoftThresholdWavelets
bool m_PerformTVSpatialDenoising
CGFilterType::Pointer m_CGFilter
void VerifyInputInformation() const override
int m_MainLoop_iterations
Soft thresholds an image.
Mother class for cone beam reconstruction filters which need runtime selection of their forward and b...
TVDenoisingFilterType::Pointer m_TVDenoising
Deconstructs an image, soft thresholds its wavelets coefficients, then reconstructs.
bool m_PerformSoftThresholdOnImage
typename Superclass::ForwardProjectionType ForwardProjectionType
bool m_PerformWaveletsSpatialDenoising
bool m_DisableDisplacedDetectorFilter