RTK  2.0.1
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision > Class Template Reference

#include <rtkFDKConeBeamReconstructionFilter.h>

+ Inheritance diagram for rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >:
+ Collaboration diagram for rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >:

Public Types

using BackProjectionFilterPointer = typename BackProjectionFilterType::Pointer
 
using BackProjectionFilterType = rtk::FDKBackProjectionImageFilter< OutputImageType, OutputImageType >
 
using ConstPointer = itk::SmartPointer< const Self >
 
using ExtractFilterType = itk::ExtractImageFilter< InputImageType, OutputImageType >
 
using InputImageType = TInputImage
 
using OutputImageType = TOutputImage
 
using Pointer = itk::SmartPointer< Self >
 
using RampFilterType = rtk::FFTRampImageFilter< OutputImageType, OutputImageType, TFFTPrecision >
 
using Self = FDKConeBeamReconstructionFilter
 
using Superclass = itk::ImageToImageFilter< TInputImage, TOutputImage >
 
using WeightFilterType = rtk::FDKWeightProjectionFilter< InputImageType, OutputImageType >
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const ThreeDCircularProjectionGeometryGetGeometry () const
 
virtual ThreeDCircularProjectionGeometryGetModifiableGeometry ()
 
virtual const char * GetNameOfClass () const
 
RampFilterType::Pointer GetRampFilter ()
 
WeightFilterType::Pointer GetWeightFilter ()
 
virtual void SetGeometry (ThreeDCircularProjectionGeometry *_arg)
 
virtual unsigned int GetProjectionSubsetSize ()
 
virtual void SetProjectionSubsetSize (unsigned int _arg)
 
virtual BackProjectionFilterPointer GetBackProjectionFilter ()
 
virtual void SetBackProjectionFilter (const BackProjectionFilterPointer _arg)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 FDKConeBeamReconstructionFilter ()
 
void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
 ~FDKConeBeamReconstructionFilter () override=default
 
void VerifyInputInformation () override
 

Protected Attributes

BackProjectionFilterPointer m_BackProjectionFilter
 
ExtractFilterType::Pointer m_ExtractFilter
 
RampFilterType::Pointer m_RampFilter
 
WeightFilterType::Pointer m_WeightFilter
 

Private Attributes

ThreeDCircularProjectionGeometry::Pointer m_Geometry
 
unsigned int m_ProjectionSubsetSize {16}
 

Detailed Description

template<class TInputImage, class TOutputImage = TInputImage, class TFFTPrecision = double>
class rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >

Implements Feldkamp, David and Kress cone-beam reconstruction.

FDKConeBeamReconstructionFilter is a mini-pipeline filter which combines the different steps of the FDK cone-beam reconstruction filter:

dot_inline_dotgraph_9.png
Test:
rtkfdktest.cxx, rtkrampfiltertest.cxx, rtkmotioncompensatedfdktest.cxx, rtkdisplaceddetectortest.cxx, rtkshortscantest.cxx
Author
Simon Rit

Definition at line 63 of file rtkFDKConeBeamReconstructionFilter.h.

Member Typedef Documentation

◆ BackProjectionFilterPointer

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::BackProjectionFilterPointer = typename BackProjectionFilterType::Pointer

Definition at line 84 of file rtkFDKConeBeamReconstructionFilter.h.

◆ BackProjectionFilterType

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::BackProjectionFilterType = rtk::FDKBackProjectionImageFilter<OutputImageType, OutputImageType>

Definition at line 83 of file rtkFDKConeBeamReconstructionFilter.h.

◆ ConstPointer

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 73 of file rtkFDKConeBeamReconstructionFilter.h.

◆ ExtractFilterType

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::ExtractFilterType = itk::ExtractImageFilter<InputImageType, OutputImageType>

Typedefs of each subfilter of this composite filter

Definition at line 80 of file rtkFDKConeBeamReconstructionFilter.h.

◆ InputImageType

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::InputImageType = TInputImage

Some convenient type alias.

Definition at line 76 of file rtkFDKConeBeamReconstructionFilter.h.

◆ OutputImageType

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::OutputImageType = TOutputImage

Definition at line 77 of file rtkFDKConeBeamReconstructionFilter.h.

◆ Pointer

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::Pointer = itk::SmartPointer<Self>

Definition at line 72 of file rtkFDKConeBeamReconstructionFilter.h.

◆ RampFilterType

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::RampFilterType = rtk::FFTRampImageFilter<OutputImageType, OutputImageType, TFFTPrecision>

Definition at line 82 of file rtkFDKConeBeamReconstructionFilter.h.

◆ Self

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::Self = FDKConeBeamReconstructionFilter

Standard class type alias.

Definition at line 70 of file rtkFDKConeBeamReconstructionFilter.h.

◆ Superclass

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::Superclass = itk::ImageToImageFilter<TInputImage, TOutputImage>

Definition at line 71 of file rtkFDKConeBeamReconstructionFilter.h.

◆ WeightFilterType

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
using rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::WeightFilterType = rtk::FDKWeightProjectionFilter<InputImageType, OutputImageType>

Definition at line 81 of file rtkFDKConeBeamReconstructionFilter.h.

Constructor & Destructor Documentation

◆ FDKConeBeamReconstructionFilter()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::FDKConeBeamReconstructionFilter ( )
protected

◆ ~FDKConeBeamReconstructionFilter()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::~FDKConeBeamReconstructionFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ CreateAnother()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual::itk::LightObject::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

◆ GenerateData()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GenerateData ( )
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

◆ GenerateInputRequestedRegion()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GenerateInputRequestedRegion ( )
overrideprotectedvirtual

◆ GenerateOutputInformation()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GenerateOutputInformation ( )
overrideprotectedvirtual

Reimplemented from itk::ProcessObject.

◆ GetBackProjectionFilter()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual BackProjectionFilterPointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetBackProjectionFilter ( )
virtual

Get / Set and init the backprojection filter. The set function takes care of initializing the mini-pipeline and the ramp filter must therefore be created before calling this set function.

◆ GetGeometry()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual const ThreeDCircularProjectionGeometry* rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetGeometry ( ) const
virtual

◆ GetModifiableGeometry()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual ThreeDCircularProjectionGeometry* rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetModifiableGeometry ( )
virtual

Get / Set the object pointer to projection geometry

◆ GetNameOfClass()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual const char* rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetNameOfClass ( ) const
virtual

Runtime information support.

Reimplemented from itk::InPlaceImageFilter< TInputImage, TOutputImage >.

◆ GetProjectionSubsetSize()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual unsigned int rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetProjectionSubsetSize ( )
virtual

Get / Set the number of cone-beam projection images processed simultaneously. Default is 4.

◆ GetRampFilter()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
RampFilterType::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetRampFilter ( )
inline

Get pointer to the ramp filter used by the feldkamp reconstruction

Definition at line 100 of file rtkFDKConeBeamReconstructionFilter.h.

◆ GetWeightFilter()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
WeightFilterType::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::GetWeightFilter ( )
inline

Get pointer to the weighting filter used by the feldkamp reconstruction

Definition at line 97 of file rtkFDKConeBeamReconstructionFilter.h.

◆ New()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
static Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::New ( )
static

Standard New method.

◆ SetBackProjectionFilter()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::SetBackProjectionFilter ( const BackProjectionFilterPointer  _arg)
virtual

Get / Set and init the backprojection filter. The set function takes care of initializing the mini-pipeline and the ramp filter must therefore be created before calling this set function.

◆ SetGeometry()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::SetGeometry ( ThreeDCircularProjectionGeometry _arg)
virtual

◆ SetProjectionSubsetSize()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
virtual void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::SetProjectionSubsetSize ( unsigned int  _arg)
virtual

Get / Set the number of cone-beam projection images processed simultaneously. Default is 4.

◆ VerifyInputInformation()

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
void rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::VerifyInputInformation ( )
inlineoverrideprotectedvirtual

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

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 128 of file rtkFDKConeBeamReconstructionFilter.h.

Member Data Documentation

◆ m_BackProjectionFilter

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
BackProjectionFilterPointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::m_BackProjectionFilter
protected

Definition at line 138 of file rtkFDKConeBeamReconstructionFilter.h.

◆ m_ExtractFilter

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
ExtractFilterType::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::m_ExtractFilter
protected

Pointers to each subfilter of this composite filter

Definition at line 135 of file rtkFDKConeBeamReconstructionFilter.h.

◆ m_Geometry

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
ThreeDCircularProjectionGeometry::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::m_Geometry
private

Geometry propagated to subfilters of the mini-pipeline.

Definition at line 145 of file rtkFDKConeBeamReconstructionFilter.h.

◆ m_ProjectionSubsetSize

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
unsigned int rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::m_ProjectionSubsetSize {16}
private

Number of projections processed at a time.

Definition at line 142 of file rtkFDKConeBeamReconstructionFilter.h.

◆ m_RampFilter

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
RampFilterType::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::m_RampFilter
protected

Definition at line 137 of file rtkFDKConeBeamReconstructionFilter.h.

◆ m_WeightFilter

template<class TInputImage , class TOutputImage = TInputImage, class TFFTPrecision = double>
WeightFilterType::Pointer rtk::FDKConeBeamReconstructionFilter< TInputImage, TOutputImage, TFFTPrecision >::m_WeightFilter
protected

Definition at line 136 of file rtkFDKConeBeamReconstructionFilter.h.


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