RTK  2.0.1
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType > Class Template Reference

#include <rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h>

+ Inheritance diagram for rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >:
+ Collaboration diagram for rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >:

Public Types

using BackProjectionType = typename Superclass::BackProjectionType
 
using ConstPointer = itk::SmartPointer< const Self >
 
using CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension >
 
using DVFImageType = itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension-1 >
 
using DVFSequenceImageType = itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension >
 
using ForwardProjectionType = typename Superclass::ForwardProjectionType
 
using InputImageType = VolumeSeriesType
 
using MCCGOperatorType = rtk::MotionCompensatedFourDReconstructionConjugateGradientOperator< VolumeSeriesType, ProjectionStackType >
 
using MCProjStackToFourDType = rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
 
using OutputImageType = VolumeSeriesType
 
using Pointer = itk::SmartPointer< Self >
 
using Self = MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter
 
using Superclass = FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
 
using VectorForDVF = itk::CovariantVector< typename VolumeSeriesType::ValueType, VolumeSeriesType::ImageDimension-1 >
 
using VolumeType = ProjectionStackType
 
- Public Types inherited from rtk::FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
using BackProjectionFilterType = BackProjectionImageFilter< ProjectionStackType, VolumeType >
 
using BackProjectionType = typename Superclass::BackProjectionType
 
using CGOperatorFilterType = FourDReconstructionConjugateGradientOperator< VolumeSeriesType, ProjectionStackType >
 
using ConjugateGradientFilterType = ConjugateGradientImageFilter< VolumeSeriesType >
 
using ConstPointer = itk::SmartPointer< const Self >
 
using CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension >
 
using CudaConjugateGradientImageFilterType = ConjugateGradientImageFilter< VolumeSeriesType >
 
using DisplacedDetectorFilterType = DisplacedDetectorImageFilter< ProjectionStackType >
 
using ForwardProjectionFilterType = ForwardProjectionImageFilter< VolumeType, ProjectionStackType >
 
using ForwardProjectionType = typename Superclass::ForwardProjectionType
 
using InputImageType = VolumeSeriesType
 
using OutputImageType = VolumeSeriesType
 
using Pointer = itk::SmartPointer< Self >
 
using ProjStackToFourDFilterType = ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
 
using Self = FourDConjugateGradientConeBeamReconstructionFilter
 
using Superclass = IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
 
using VolumeType = ProjectionStackType
 
- Public Types inherited from rtk::IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
using BackProjectionFilterType = rtk::BackProjectionImageFilter< ProjectionStackType, VolumeType >
 
using BackProjectionPointerType = typename BackProjectionFilterType::Pointer
 
enum  BackProjectionType
 
using ConstPointer = itk::SmartPointer< const Self >
 
using ForwardProjectionFilterType = rtk::ForwardProjectionImageFilter< VolumeType, ProjectionStackType >
 
using ForwardProjectionPointerType = typename ForwardProjectionFilterType::Pointer
 
enum  ForwardProjectionType
 
using Pointer = itk::SmartPointer< Self >
 
using Self = IterativeConeBeamReconstructionFilter
 
using Superclass = itk::ImageToImageFilter< VolumeSeriesType, VolumeSeriesType >
 
using VolumeType = ProjectionStackType
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
virtual bool GetUseCudaCyclicDeformation ()
 
void SetSignal (const std::vector< double > signal) override
 
virtual void SetUseCudaCyclicDeformation (bool _arg)
 
void SetForwardProjectionFilter (ForwardProjectionType) override
 
void SetBackProjectionFilter (BackProjectionType) override
 
void SetDisplacementField (const DVFSequenceImageType *DVFs)
 
void SetInverseDisplacementField (const DVFSequenceImageType *DVFs)
 
DVFSequenceImageType::ConstPointer GetDisplacementField ()
 
DVFSequenceImageType::ConstPointer GetInverseDisplacementField ()
 
- Public Member Functions inherited from rtk::FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual bool GetCudaConjugateGradient ()
 
virtual const ThreeDCircularProjectionGeometryGetGeometry () const
 
virtual unsigned int GetNumberOfIterations ()
 
void SetBackProjectionFilter (BackProjectionType _arg) override
 
virtual void SetCudaConjugateGradient (bool _arg)
 
void SetForwardProjectionFilter (ForwardProjectionType _arg) override
 
virtual void SetGeometry (const ThreeDCircularProjectionGeometry *_arg)
 
virtual void SetNumberOfIterations (unsigned int _arg)
 
void SetWeights (const itk::Array2D< float > _arg)
 
void SetInputVolumeSeries (const VolumeSeriesType *VolumeSeries)
 
VolumeSeriesType::ConstPointer GetInputVolumeSeries ()
 
void SetInputProjectionStack (const ProjectionStackType *Projections)
 
ProjectionStackType::ConstPointer GetInputProjectionStack ()
 
virtual void SetDisableDisplacedDetectorFilter (bool _arg)
 
virtual bool GetDisableDisplacedDetectorFilter ()
 
- Public Member Functions inherited from rtk::IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual void SetForwardProjectionFilter (ForwardProjectionType fwtype)
 
ForwardProjectionType GetForwardProjectionFilter ()
 
virtual void SetBackProjectionFilter (BackProjectionType bptype)
 
BackProjectionType GetBackProjectionFilter ()
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from rtk::FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
static Pointer New ()
 
- Static Public Member Functions inherited from rtk::IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
static Pointer New ()
 

Protected Member Functions

void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
 MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter ()
 
 ~MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter () override=default
 
- Protected Member Functions inherited from rtk::FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
void VerifyInputInformation () override
 
 FourDConjugateGradientConeBeamReconstructionFilter ()
 
 ~FourDConjugateGradientConeBeamReconstructionFilter () override=default
 
- Protected Member Functions inherited from rtk::IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
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 ()
 
 IterativeConeBeamReconstructionFilter ()
 
 ~IterativeConeBeamReconstructionFilter () override=default
 

Protected Attributes

bool m_UseCudaCyclicDeformation
 
- Protected Attributes inherited from rtk::FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
BackProjectionFilterType::Pointer m_BackProjectionFilter
 
BackProjectionFilterType::Pointer m_BackProjectionFilterForB
 
CGOperatorFilterType::Pointer m_CGOperator
 
ConjugateGradientFilterType::Pointer m_ConjugateGradientFilter
 
bool m_CudaConjugateGradient
 
bool m_DisableDisplacedDetectorFilter
 
DisplacedDetectorFilterType::Pointer m_DisplacedDetectorFilter
 
ForwardProjectionFilterType::Pointer m_ForwardProjectionFilter
 
ProjStackToFourDFilterType::Pointer m_ProjStackToFourDFilter
 
std::vector< double > m_Signal
 
- Protected Attributes inherited from rtk::IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
BackProjectionType m_CurrentBackProjectionConfiguration
 
ForwardProjectionType m_CurrentForwardProjectionConfiguration
 

Additional Inherited Members

- Protected Types inherited from rtk::IterativeConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >
using CPUImageType = typename itk::Image< typename ProjectionStackType::PixelType, ProjectionStackType::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==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!=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<typename VolumeSeriesType, typename ProjectionStackType>
class rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >

Implements motion compensated 4D reconstruction by conjugate gradient.

dot_inline_dotgraph_18.png
Test:
rtkmotioncompensatedfourdconjugategradienttest.cxx
Author
Cyril Mory

Definition at line 70 of file rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h.

Member Typedef Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::BackProjectionType = typename Superclass::BackProjectionType
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::ConstPointer = itk::SmartPointer<const Self>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension>

SFINAE type alias, depending on whether a CUDA image is used.

Definition at line 93 of file rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::DVFImageType = itk::Image<VectorForDVF, VolumeSeriesType::ImageDimension-1>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::DVFSequenceImageType = itk::Image<VectorForDVF, VolumeSeriesType::ImageDimension>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::ForwardProjectionType = typename Superclass::ForwardProjectionType
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::InputImageType = VolumeSeriesType

Some convenient type alias.

Definition at line 83 of file rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::MCCGOperatorType = rtk::MotionCompensatedFourDReconstructionConjugateGradientOperator<VolumeSeriesType, ProjectionStackType>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::MCProjStackToFourDType = rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::OutputImageType = VolumeSeriesType
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::Pointer = itk::SmartPointer<Self>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::Self = MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter

Standard class type alias.

Definition at line 77 of file rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::Superclass = FourDConjugateGradientConeBeamReconstructionFilter<VolumeSeriesType, ProjectionStackType>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::VectorForDVF = itk::CovariantVector< typename VolumeSeriesType::ValueType, VolumeSeriesType::ImageDimension - 1>
template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::VolumeType = ProjectionStackType

Constructor & Destructor Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter ( )
protected
template<typename VolumeSeriesType , typename ProjectionStackType >
rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::~MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter ( )
overrideprotecteddefault

Member Function Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
virtual::itk::LightObject::Pointer rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::CreateAnother ( ) const
template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::GenerateInputRequestedRegion ( )
overrideprotected
template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::GenerateOutputInformation ( )
overrideprotected
template<typename VolumeSeriesType , typename ProjectionStackType >
DVFSequenceImageType::ConstPointer rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::GetDisplacementField ( )

The ND + time motion vector field

template<typename VolumeSeriesType , typename ProjectionStackType >
DVFSequenceImageType::ConstPointer rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::GetInverseDisplacementField ( )

The ND + time motion vector field

template<typename VolumeSeriesType , typename ProjectionStackType >
virtual const char* rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::GetNameOfClass ( ) const
virtual
template<typename VolumeSeriesType , typename ProjectionStackType >
virtual bool rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::GetUseCudaCyclicDeformation ( )
virtual
template<typename VolumeSeriesType , typename ProjectionStackType >
static Pointer rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::New ( )
static

Typedefs of each subfilter of this composite filter Standard New method.

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::SetBackProjectionFilter ( BackProjectionType  )
inlineoverride

Neither the Forward nor the Back projection filters can be set by the user

Definition at line 118 of file rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::SetDisplacementField ( const DVFSequenceImageType DVFs)

The ND + time motion vector field

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::SetForwardProjectionFilter ( ForwardProjectionType  )
inlineoverride

Neither the Forward nor the Back projection filters can be set by the user

Definition at line 117 of file rtkMotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::SetInverseDisplacementField ( const DVFSequenceImageType DVFs)

The ND + time motion vector field

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::SetSignal ( const std::vector< double >  signal)
overridevirtual

Set the vector containing the signal in the sub-filters

Reimplemented from rtk::FourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >.

template<typename VolumeSeriesType , typename ProjectionStackType >
virtual void rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::SetUseCudaCyclicDeformation ( bool  _arg)
virtual

Set and Get for the UseCudaCyclicDeformation variable

Member Data Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
bool rtk::MotionCompensatedFourDConjugateGradientConeBeamReconstructionFilter< VolumeSeriesType, ProjectionStackType >::m_UseCudaCyclicDeformation
protected

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