RTK  2.5.0
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage > Class Template Reference

#include <rtkSARTConeBeamReconstructionFilter.h>

+ Inheritance diagram for rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >:
+ Collaboration diagram for rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >:

Public Types

using AddFilterType = itk::AddImageFilter< VolumeType, VolumeType >
 
using BackProjectionFilterType = rtk::BackProjectionImageFilter< VolumeType, ProjectionType >
 
using BackProjectionType = typename Superclass::BackProjectionType
 
using ConstantProjectionSourceType = rtk::ConstantImageSource< ProjectionType >
 
using ConstantVolumeSourceType = rtk::ConstantImageSource< VolumeType >
 
using ConstPointer = itk::SmartPointer< const Self >
 
using DisplacedDetectorFilterType = rtk::DisplacedDetectorImageFilter< ProjectionType >
 
using DivideProjectionFilterType = itk::DivideOrZeroOutImageFilter< ProjectionType, ProjectionType, ProjectionType >
 
using DivideVolumeFilterType = itk::DivideOrZeroOutImageFilter< VolumeType, VolumeType, VolumeType >
 
using ExtractFilterType = itk::ExtractImageFilter< ProjectionType, ProjectionType >
 
using ForwardProjectionFilterType = rtk::ForwardProjectionImageFilter< ProjectionType, VolumeType >
 
using ForwardProjectionType = typename Superclass::ForwardProjectionType
 
using GatingWeightsFilterType = itk::MultiplyImageFilter< ProjectionType, ProjectionType, ProjectionType >
 
using MultiplyFilterType = itk::MultiplyImageFilter< ProjectionType, ProjectionType, ProjectionType >
 
using Pointer = itk::SmartPointer< Self >
 
using ProjectionPixelType = typename ProjectionType::PixelType
 
using ProjectionType = TProjectionImage
 
using RayBoxIntersectionFilterType = rtk::RayBoxIntersectionImageFilter< ProjectionType, ProjectionType >
 
using Self = SARTConeBeamReconstructionFilter
 
using SubtractFilterType = itk::SubtractImageFilter< ProjectionType, ProjectionType >
 
using Superclass = IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
 
using ThresholdFilterType = itk::ThresholdImageFilter< VolumeType >
 
using VolumeType = TVolumeImage
 
- Public Types inherited from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
using BackProjectionFilterType = rtk::BackProjectionImageFilter< TProjectionImage, VolumeType >
 
using BackProjectionPointerType = typename BackProjectionFilterType::Pointer
 
enum  BackProjectionType
 
using ConstPointer = itk::SmartPointer< const Self >
 
using ForwardProjectionFilterType = rtk::ForwardProjectionImageFilter< VolumeType, TProjectionImage >
 
using ForwardProjectionPointerType = typename ForwardProjectionFilterType::Pointer
 
enum  ForwardProjectionType
 
using Pointer = itk::SmartPointer< Self >
 
using Self = IterativeConeBeamReconstructionFilter
 
using Superclass = itk::ImageToImageFilter< TVolumeImage, TVolumeImage >
 
using TClipImageType = itk::Image< double, VolumeType::ImageDimension >
 
using VolumeType = TProjectionImage
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
void SetGatingWeights (std::vector< float > weights)
 
virtual const char * GetNameOfClass () const
 
virtual ThreeDCircularProjectionGeometryGetModifiableGeometry ()
 
virtual const ThreeDCircularProjectionGeometryGetGeometry () const
 
virtual void SetGeometry (ThreeDCircularProjectionGeometry *_arg)
 
virtual unsigned int GetNumberOfIterations ()
 
virtual void SetNumberOfIterations (unsigned int _arg)
 
virtual unsigned int GetNumberOfProjectionsPerSubset ()
 
virtual void SetNumberOfProjectionsPerSubset (unsigned int _arg)
 
virtual double GetLambda ()
 
virtual void SetLambda (double _arg)
 
virtual bool GetEnforcePositivity ()
 
virtual void SetEnforcePositivity (bool _arg)
 
virtual void SetDisableDisplacedDetectorFilter (bool _arg)
 
virtual bool GetDisableDisplacedDetectorFilter ()
 
virtual void SetDivisionThreshold (ProjectionPixelType _arg)
 
virtual ProjectionPixelType GetDivisionThreshold ()
 
- Public Member Functions inherited from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual void SetForwardProjectionFilter (ForwardProjectionType fwtype)
 
ForwardProjectionType GetForwardProjectionFilter ()
 
virtual void SetBackProjectionFilter (BackProjectionType bptype)
 
BackProjectionType GetBackProjectionFilter ()
 
void SetAttenuationMap (const VolumeType *attenuationMap)
 
VolumeType::ConstPointer GetAttenuationMap ()
 
void SetInferiorClipImage (const TClipImageType *inferiorClipImage)
 
TClipImageType::ConstPointer GetInferiorClipImage ()
 
void SetSuperiorClipImage (const TClipImageType *superiorClipImage)
 
TClipImageType::ConstPointer GetSuperiorClipImage ()
 
virtual double GetSigmaZero ()
 
virtual void SetSigmaZero (double _arg)
 
virtual double GetAlphaPSF ()
 
virtual void SetAlphaPSF (double _arg)
 
virtual double GetStepSize () const
 
virtual void SetStepSize (double _arg)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
static Pointer New ()
 

Protected Member Functions

void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
 SARTConeBeamReconstructionFilter ()
 
void VerifyInputInformation () const override
 
void VerifyPreconditions () ITKv5_CONST override
 
 ~SARTConeBeamReconstructionFilter () override=default
 
- Protected Member Functions inherited from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
virtual BackProjectionPointerType InstantiateBackProjectionFilter (int bptype)
 
BackProjectionPointerType InstantiateCudaBackProjection ()
 
BackProjectionPointerType InstantiateCudaBackProjection ()
 
ForwardProjectionPointerType InstantiateCudaForwardProjection ()
 
ForwardProjectionPointerType InstantiateCudaForwardProjection ()
 
BackProjectionPointerType InstantiateCudaRayCastBackProjection ()
 
BackProjectionPointerType InstantiateCudaRayCastBackProjection ()
 
virtual ForwardProjectionPointerType InstantiateForwardProjectionFilter (int fwtype)
 
BackProjectionPointerType InstantiateJosephBackAttenuatedProjection ()
 
BackProjectionPointerType InstantiateJosephBackAttenuatedProjection ()
 
ForwardProjectionPointerType InstantiateJosephForwardAttenuatedProjection ()
 
ForwardProjectionPointerType InstantiateJosephForwardAttenuatedProjection ()
 
BackProjectionPointerType InstantiateZengBackProjection ()
 
BackProjectionPointerType InstantiateZengBackProjection ()
 
ForwardProjectionPointerType InstantiateZengForwardProjection ()
 
ForwardProjectionPointerType InstantiateZengForwardProjection ()
 
 IterativeConeBeamReconstructionFilter ()
 
 ~IterativeConeBeamReconstructionFilter () override=default
 

Protected Attributes

AddFilterType::Pointer m_AddFilter
 
BackProjectionFilterType::Pointer m_BackProjectionFilter
 
BackProjectionFilterType::Pointer m_BackProjectionNormalizationFilter
 
ConstantProjectionSourceType::Pointer m_ConstantProjectionStackSource
 
ConstantVolumeSourceType::Pointer m_ConstantVolumeSource
 
bool m_DisableDisplacedDetectorFilter
 
DisplacedDetectorFilterType::Pointer m_DisplacedDetectorFilter
 
DivideProjectionFilterType::Pointer m_DivideProjectionFilter
 
DivideVolumeFilterType::Pointer m_DivideVolumeFilter
 
ProjectionPixelType m_DivisionThreshold
 
bool m_EnforcePositivity
 
ExtractFilterType::Pointer m_ExtractFilter
 
ExtractFilterType::Pointer m_ExtractFilterRayBox
 
ForwardProjectionFilterType::Pointer m_ForwardProjectionFilter
 
GatingWeightsFilterType::Pointer m_GatingWeightsFilter
 
MultiplyFilterType::Pointer m_MultiplyFilter
 
ConstantProjectionSourceType::Pointer m_OneConstantProjectionStackSource
 
RayBoxIntersectionFilterType::Pointer m_RayBoxFilter
 
SubtractFilterType::Pointer m_SubtractFilter
 
ThresholdFilterType::Pointer m_ThresholdFilter
 
MultiplyFilterType::Pointer m_ZeroMultiplyFilter
 
- Protected Attributes inherited from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
double m_AlphaPSF
 
BackProjectionType m_CurrentBackProjectionConfiguration
 
ForwardProjectionType m_CurrentForwardProjectionConfiguration
 
std::default_random_engine m_DefaultRandomEngine
 
double m_SigmaZero
 
double m_StepSize
 

Private Attributes

std::vector< float > m_GatingWeights
 
ThreeDCircularProjectionGeometry::Pointer m_Geometry
 
bool m_IsGated
 
double m_Lambda
 
unsigned int m_NumberOfIterations
 
unsigned int m_NumberOfProjectionsPerSubset
 

Additional Inherited Members

- Protected Types inherited from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >
using CPUImageType = typename itk::Image< typename TProjectionImage ::PixelType, TProjectionImage ::ImageDimension >
 
using EnableCudaScalarAndVectorType = typename std::enable_if< !std::is_same< CPUImageType, ImageType >::value &&std::is_same< typename itk::PixelTraits< typename ImageType::PixelType >::ValueType, float >::value &&(itk::PixelTraits< typename ImageType::PixelType >::Dimension==1||itk::PixelTraits< typename ImageType::PixelType >::Dimension==2||itk::PixelTraits< typename ImageType::PixelType >::Dimension==3)>::type
 
using DisableCudaScalarAndVectorType = typename std::enable_if< std::is_same< CPUImageType, ImageType >::value||!std::is_same< typename itk::PixelTraits< typename ImageType::PixelType >::ValueType, float >::value||(itk::PixelTraits< typename ImageType::PixelType >::Dimension !=1 &&itk::PixelTraits< typename ImageType::PixelType >::Dimension !=2 &&itk::PixelTraits< typename ImageType::PixelType >::Dimension !=3)>::type
 
using EnableCudaScalarType = typename std::enable_if< !std::is_same< CPUImageType, ImageType >::value &&std::is_same< typename itk::PixelTraits< typename ImageType::PixelType >::ValueType, float >::value &&itk::PixelTraits< typename ImageType::PixelType >::Dimension==1 >::type
 
using DisableCudaScalarType = typename std::enable_if< std::is_same< CPUImageType, ImageType >::value||!std::is_same< typename itk::PixelTraits< typename ImageType::PixelType >::ValueType, float >::value||itk::PixelTraits< typename ImageType::PixelType >::Dimension !=1 >::type
 
using EnableVectorType = typename std::enable_if< itk::PixelTraits< typename ImageType::PixelType >::Dimension !=1 >::type
 
using DisableVectorType = typename std::enable_if< itk::PixelTraits< typename ImageType::PixelType >::Dimension==1 >::type
 

Detailed Description

template<class TVolumeImage, class TProjectionImage = TVolumeImage>
class rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >

Implements the Simultaneous Algebraic Reconstruction Technique [Andersen, 1984].

SARTConeBeamReconstructionFilter is a composite filter which combines the different steps of the SART cone-beam reconstruction, mainly:

Two weighting steps must be applied when processing a given projection:

Test:
rtksarttest.cxx
Author
Simon Rit

Definition at line 135 of file rtkSARTConeBeamReconstructionFilter.h.

Member Typedef Documentation

◆ AddFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::AddFilterType = itk::AddImageFilter<VolumeType, VolumeType>

Definition at line 157 of file rtkSARTConeBeamReconstructionFilter.h.

◆ BackProjectionFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::BackProjectionFilterType = rtk::BackProjectionImageFilter<VolumeType, ProjectionType>

Definition at line 158 of file rtkSARTConeBeamReconstructionFilter.h.

◆ BackProjectionType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::BackProjectionType = typename Superclass::BackProjectionType

Definition at line 169 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ConstantProjectionSourceType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ConstantProjectionSourceType = rtk::ConstantImageSource<ProjectionType>

Definition at line 163 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ConstantVolumeSourceType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ConstantVolumeSourceType = rtk::ConstantImageSource<VolumeType>

Definition at line 162 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ConstPointer

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 145 of file rtkSARTConeBeamReconstructionFilter.h.

◆ DisplacedDetectorFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::DisplacedDetectorFilterType = rtk::DisplacedDetectorImageFilter<ProjectionType>

Definition at line 165 of file rtkSARTConeBeamReconstructionFilter.h.

◆ DivideProjectionFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::DivideProjectionFilterType = itk::DivideOrZeroOutImageFilter<ProjectionType, ProjectionType, ProjectionType>

Definition at line 160 of file rtkSARTConeBeamReconstructionFilter.h.

◆ DivideVolumeFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::DivideVolumeFilterType = itk::DivideOrZeroOutImageFilter<VolumeType, VolumeType, VolumeType>

Definition at line 161 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ExtractFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ExtractFilterType = itk::ExtractImageFilter<ProjectionType, ProjectionType>

Typedefs of each subfilter of this composite filter

Definition at line 153 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ForwardProjectionFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ForwardProjectionFilterType = rtk::ForwardProjectionImageFilter<ProjectionType, VolumeType>

Definition at line 155 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ForwardProjectionType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ForwardProjectionType = typename Superclass::ForwardProjectionType

Definition at line 168 of file rtkSARTConeBeamReconstructionFilter.h.

◆ GatingWeightsFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GatingWeightsFilterType = itk::MultiplyImageFilter<ProjectionType, ProjectionType, ProjectionType>

Definition at line 166 of file rtkSARTConeBeamReconstructionFilter.h.

◆ MultiplyFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::MultiplyFilterType = itk::MultiplyImageFilter<ProjectionType, ProjectionType, ProjectionType>

Definition at line 154 of file rtkSARTConeBeamReconstructionFilter.h.

◆ Pointer

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::Pointer = itk::SmartPointer<Self>

Definition at line 144 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ProjectionPixelType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ProjectionPixelType = typename ProjectionType::PixelType

Definition at line 150 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ProjectionType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ProjectionType = TProjectionImage

Definition at line 149 of file rtkSARTConeBeamReconstructionFilter.h.

◆ RayBoxIntersectionFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::RayBoxIntersectionFilterType = rtk::RayBoxIntersectionImageFilter<ProjectionType, ProjectionType>

Definition at line 159 of file rtkSARTConeBeamReconstructionFilter.h.

◆ Self

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::Self = SARTConeBeamReconstructionFilter

Standard class type alias.

Definition at line 142 of file rtkSARTConeBeamReconstructionFilter.h.

◆ SubtractFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SubtractFilterType = itk::SubtractImageFilter<ProjectionType, ProjectionType>

Definition at line 156 of file rtkSARTConeBeamReconstructionFilter.h.

◆ Superclass

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::Superclass = IterativeConeBeamReconstructionFilter<TVolumeImage, TProjectionImage>

Definition at line 143 of file rtkSARTConeBeamReconstructionFilter.h.

◆ ThresholdFilterType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::ThresholdFilterType = itk::ThresholdImageFilter<VolumeType>

Definition at line 164 of file rtkSARTConeBeamReconstructionFilter.h.

◆ VolumeType

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
using rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::VolumeType = TVolumeImage

Some convenient type alias.

Definition at line 148 of file rtkSARTConeBeamReconstructionFilter.h.

Constructor & Destructor Documentation

◆ SARTConeBeamReconstructionFilter()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SARTConeBeamReconstructionFilter ( )
protected

◆ ~SARTConeBeamReconstructionFilter()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::~SARTConeBeamReconstructionFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ CreateAnother()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual::itk::LightObject::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

◆ GenerateData()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GenerateData ( )
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

◆ GenerateInputRequestedRegion()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GenerateInputRequestedRegion ( )
overrideprotectedvirtual

Reimplemented from itk::ProcessObject.

◆ GenerateOutputInformation()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GenerateOutputInformation ( )
overrideprotectedvirtual

Reimplemented from itk::ProcessObject.

◆ GetDisableDisplacedDetectorFilter()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual bool rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetDisableDisplacedDetectorFilter ( )
virtual

Set / Get whether the displaced detector filter should be disabled

◆ GetDivisionThreshold()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual ProjectionPixelType rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetDivisionThreshold ( )
virtual

Set the threshold below which pixels in the denominator in the projection space are considered zero. The division by zero will then be evaluated at zero. Avoid noise magnification from low projections values when working with noisy and/or simulated data.

◆ GetEnforcePositivity()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual bool rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetEnforcePositivity ( )
virtual

Get / Set the positivity enforcement behaviour

◆ GetGeometry()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual const ThreeDCircularProjectionGeometry* rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetGeometry ( ) const
virtual

Get / Set the object pointer to projection geometry

◆ GetLambda()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual double rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetLambda ( )
virtual

Get / Set the convergence factor. Default is 0.3.

◆ GetModifiableGeometry()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual ThreeDCircularProjectionGeometry* rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetModifiableGeometry ( )
virtual

Get / Set the object pointer to projection geometry

◆ GetNameOfClass()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual const char* rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetNameOfClass ( ) const
virtual

Runtime information support.

Reimplemented from rtk::IterativeConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >.

◆ GetNumberOfIterations()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual unsigned int rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetNumberOfIterations ( )
virtual

Get / Set the number of iterations. Default is 3.

◆ GetNumberOfProjectionsPerSubset()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual unsigned int rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::GetNumberOfProjectionsPerSubset ( )
virtual

Get / Set the number of projections per subset. Default is 1.

◆ New()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
static Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::New ( )
static

Standard New method.

◆ SetDisableDisplacedDetectorFilter()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetDisableDisplacedDetectorFilter ( bool  _arg)
virtual

Set / Get whether the displaced detector filter should be disabled

◆ SetDivisionThreshold()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetDivisionThreshold ( ProjectionPixelType  _arg)
virtual

Set the threshold below which pixels in the denominator in the projection space are considered zero. The division by zero will then be evaluated at zero. Avoid noise magnification from low projections values when working with noisy and/or simulated data.

◆ SetEnforcePositivity()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetEnforcePositivity ( bool  _arg)
virtual

Get / Set the positivity enforcement behaviour

◆ SetGatingWeights()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetGatingWeights ( std::vector< float >  weights)

In the case of a gated SART, set the gating weights

◆ SetGeometry()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetGeometry ( ThreeDCircularProjectionGeometry _arg)
virtual

Get / Set the object pointer to projection geometry

◆ SetLambda()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetLambda ( double  _arg)
virtual

Get / Set the convergence factor. Default is 0.3.

◆ SetNumberOfIterations()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetNumberOfIterations ( unsigned int  _arg)
virtual

Get / Set the number of iterations. Default is 3.

◆ SetNumberOfProjectionsPerSubset()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
virtual void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::SetNumberOfProjectionsPerSubset ( unsigned int  _arg)
virtual

Get / Set the number of projections per subset. Default is 1.

◆ VerifyInputInformation()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::VerifyInputInformation ( ) const
inlineoverrideprotected

The two inputs should not be in the same space so there is nothing to verify.

Definition at line 244 of file rtkSARTConeBeamReconstructionFilter.h.

◆ VerifyPreconditions()

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
void rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::VerifyPreconditions ( )
overrideprotectedvirtual

Checks that inputs are correctly set.

Reimplemented from itk::ProcessObject.

Member Data Documentation

◆ m_AddFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
AddFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_AddFilter
protected

Definition at line 253 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_BackProjectionFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
BackProjectionFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_BackProjectionFilter
protected

Definition at line 255 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_BackProjectionNormalizationFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
BackProjectionFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_BackProjectionNormalizationFilter
protected

Definition at line 256 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ConstantProjectionStackSource

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ConstantProjectionSourceType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ConstantProjectionStackSource
protected

Definition at line 260 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ConstantVolumeSource

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ConstantVolumeSourceType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ConstantVolumeSource
protected

Definition at line 262 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_DisableDisplacedDetectorFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
bool rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_DisableDisplacedDetectorFilter
protected

Definition at line 270 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_DisplacedDetectorFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
DisplacedDetectorFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_DisplacedDetectorFilter
protected

Definition at line 264 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_DivideProjectionFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
DivideProjectionFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_DivideProjectionFilter
protected

Definition at line 258 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_DivideVolumeFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
DivideVolumeFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_DivideVolumeFilter
protected

Definition at line 259 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_DivisionThreshold

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ProjectionPixelType rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_DivisionThreshold
protected

Definition at line 267 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_EnforcePositivity

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
bool rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_EnforcePositivity
protected

Definition at line 269 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ExtractFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ExtractFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ExtractFilter
protected

Pointers to each subfilter of this composite filter

Definition at line 248 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ExtractFilterRayBox

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ExtractFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ExtractFilterRayBox
protected

Definition at line 249 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ForwardProjectionFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ForwardProjectionFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ForwardProjectionFilter
protected

Definition at line 251 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_GatingWeights

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
std::vector<float> rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_GatingWeights
private

Definition at line 290 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_GatingWeightsFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
GatingWeightsFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_GatingWeightsFilter
protected

Definition at line 265 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_Geometry

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ThreeDCircularProjectionGeometry::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_Geometry
private

Geometry object

Definition at line 278 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_IsGated

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
bool rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_IsGated
private

Have gating weights been set ? If so, apply them, otherwise ignore the gating weights filter

Definition at line 289 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_Lambda

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
double rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_Lambda
private

Convergence factor according to Andersen's publications which relates to the step size of the gradient descent. Default 0.3, Must be in (0,2).

Definition at line 285 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_MultiplyFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
MultiplyFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_MultiplyFilter
protected

Definition at line 254 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_NumberOfIterations

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
unsigned int rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_NumberOfIterations
private

Number of iterations

Definition at line 281 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_NumberOfProjectionsPerSubset

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
unsigned int rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_NumberOfProjectionsPerSubset
private

Number of projections processed before the volume is updated (1 for SART, several for OS-SART, all for SIRT)

Definition at line 275 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_OneConstantProjectionStackSource

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ConstantProjectionSourceType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_OneConstantProjectionStackSource
protected

Definition at line 261 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_RayBoxFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
RayBoxIntersectionFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_RayBoxFilter
protected

Definition at line 257 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_SubtractFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
SubtractFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_SubtractFilter
protected

Definition at line 252 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ThresholdFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
ThresholdFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ThresholdFilter
protected

Definition at line 263 of file rtkSARTConeBeamReconstructionFilter.h.

◆ m_ZeroMultiplyFilter

template<class TVolumeImage , class TProjectionImage = TVolumeImage>
MultiplyFilterType::Pointer rtk::SARTConeBeamReconstructionFilter< TVolumeImage, TProjectionImage >::m_ZeroMultiplyFilter
protected

Definition at line 250 of file rtkSARTConeBeamReconstructionFilter.h.


The documentation for this class was generated from the following file: