RTK  2.5.0
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage > Class Template Reference

#include <rtkFDKBackProjectionImageFilter.h>

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

Public Types

using ConstPointer = itk::SmartPointer< const Self >
 
using OutputImageRegionType = typename TOutputImage::RegionType
 
using Pointer = itk::SmartPointer< Self >
 
using ProjectionImagePointer = typename ProjectionImageType::Pointer
 
using ProjectionImageType = typename Superclass::ProjectionImageType
 
using ProjectionMatrixType = typename Superclass::ProjectionMatrixType
 
using Self = FDKBackProjectionImageFilter
 
using Superclass = BackProjectionImageFilter< TInputImage, TOutputImage >
 
- Public Types inherited from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >
using ConstPointer = itk::SmartPointer< const Self >
 
using GeometryConstPointer = typename GeometryType::ConstPointer
 
using GeometryType = rtk::ThreeDCircularProjectionGeometry
 
using InputPixelType = typename TInputImage::PixelType
 
using InternalInputPixelType = typename TInputImage::InternalPixelType
 
using OutputImageRegionType = typename TOutputImage::RegionType
 
using Pointer = itk::SmartPointer< Self >
 
using ProjectionImagePointer = typename ProjectionImageType::Pointer
 
using ProjectionImageType = itk::Image< InputPixelType, TInputImage::ImageDimension - 1 >
 
using ProjectionMatrixType = typename GeometryType::MatrixType
 
using Self = BackProjectionImageFilter
 
using Superclass = itk::ImageToImageFilter< TInputImage, TOutputImage >
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >
virtual const GeometryTypeGetGeometry () const
 
virtual void SetGeometry (const GeometryType *_arg)
 
virtual bool GetTranspose ()
 
virtual void SetTranspose (bool _arg)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >
static Pointer New ()
 

Protected Member Functions

void DynamicThreadedGenerateData (const OutputImageRegionType &outputRegionForThread) override
 
 FDKBackProjectionImageFilter ()=default
 
void GenerateOutputInformation () override
 
void OptimizedBackprojectionX (const OutputImageRegionType &region, const ProjectionMatrixType &matrix, const ProjectionImagePointer projection) override
 
void OptimizedBackprojectionY (const OutputImageRegionType &region, const ProjectionMatrixType &matrix, const ProjectionImagePointer projection) override
 
 ~FDKBackProjectionImageFilter () override=default
 
- Protected Member Functions inherited from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >
 BackProjectionImageFilter ()
 
void BeforeThreadedGenerateData () override
 
virtual void CylindricalDetectorCenteredOnSourceBackprojection (const OutputImageRegionType &region, const ProjectionMatrixType &volIndexToProjPP, const itk::Matrix< double, TInputImage::ImageDimension, TInputImage::ImageDimension > &projPPToProjIndex, const ProjectionImagePointer projection)
 
void GenerateInputRequestedRegion () override
 
ProjectionMatrixType GetIndexToIndexProjectionMatrix (const unsigned int iProj)
 
template<class TProjectionImage >
TProjectionImage::Pointer GetProjection (const unsigned int iProj)
 
itk::Matrix< double, TInputImage::ImageDimension, TInputImage::ImageDimension > GetProjectionPhysicalPointToProjectionIndexMatrix (const unsigned int iProj)
 
ProjectionMatrixType GetVolumeIndexToProjectionPhysicalPointMatrix (const unsigned int iProj)
 
void VerifyInputInformation () const override
 
void VerifyPreconditions () ITKv5_CONST override
 
 ~BackProjectionImageFilter () override=default
 

Additional Inherited Members

- Protected Attributes inherited from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >
GeometryConstPointer m_Geometry
 

Detailed Description

template<class TInputImage, class TOutputImage>
class rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >

CPU version of the backprojection of the FDK algorithm.

CPU implementation of the backprojection step of the [Feldkamp, Davis, Kress, 1984] algorithm for filtered backprojection reconstruction of cone-beam CT images with a circular source trajectory.

Author
Simon Rit

Definition at line 39 of file rtkFDKBackProjectionImageFilter.h.

Member Typedef Documentation

◆ ConstPointer

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

Definition at line 48 of file rtkFDKBackProjectionImageFilter.h.

◆ OutputImageRegionType

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::OutputImageRegionType = typename TOutputImage::RegionType

Definition at line 51 of file rtkFDKBackProjectionImageFilter.h.

◆ Pointer

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::Pointer = itk::SmartPointer<Self>

Definition at line 47 of file rtkFDKBackProjectionImageFilter.h.

◆ ProjectionImagePointer

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::ProjectionImagePointer = typename ProjectionImageType::Pointer

Definition at line 53 of file rtkFDKBackProjectionImageFilter.h.

◆ ProjectionImageType

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::ProjectionImageType = typename Superclass::ProjectionImageType

Definition at line 52 of file rtkFDKBackProjectionImageFilter.h.

◆ ProjectionMatrixType

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::ProjectionMatrixType = typename Superclass::ProjectionMatrixType

Definition at line 50 of file rtkFDKBackProjectionImageFilter.h.

◆ Self

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::Self = FDKBackProjectionImageFilter

Standard class type alias.

Definition at line 45 of file rtkFDKBackProjectionImageFilter.h.

◆ Superclass

template<class TInputImage , class TOutputImage >
using rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::Superclass = BackProjectionImageFilter<TInputImage, TOutputImage>

Definition at line 46 of file rtkFDKBackProjectionImageFilter.h.

Constructor & Destructor Documentation

◆ FDKBackProjectionImageFilter()

template<class TInputImage , class TOutputImage >
rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::FDKBackProjectionImageFilter ( )
protecteddefault

◆ ~FDKBackProjectionImageFilter()

template<class TInputImage , class TOutputImage >
rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::~FDKBackProjectionImageFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ CreateAnother()

template<class TInputImage , class TOutputImage >
virtual::itk::LightObject::Pointer rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::CreateAnother ( ) const
virtual

◆ DynamicThreadedGenerateData()

template<class TInputImage , class TOutputImage >
void rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::DynamicThreadedGenerateData ( const OutputImageRegionType outputRegionForThread)
overrideprotectedvirtual

◆ GenerateOutputInformation()

template<class TInputImage , class TOutputImage >
void rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::GenerateOutputInformation ( )
overrideprotectedvirtual

Reimplemented from itk::ProcessObject.

◆ GetNameOfClass()

template<class TInputImage , class TOutputImage >
virtual const char* rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
virtual

◆ New()

template<class TInputImage , class TOutputImage >
static Pointer rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::New ( )
static

Method for creation through the object factory.

◆ OptimizedBackprojectionX()

template<class TInputImage , class TOutputImage >
void rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::OptimizedBackprojectionX ( const OutputImageRegionType region,
const ProjectionMatrixType matrix,
const ProjectionImagePointer  projection 
)
overrideprotectedvirtual

Optimized version when the rotation is parallel to X, i.e. matrix[1][0] and matrix[2][0] are zeros.

Reimplemented from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >.

◆ OptimizedBackprojectionY()

template<class TInputImage , class TOutputImage >
void rtk::FDKBackProjectionImageFilter< TInputImage, TOutputImage >::OptimizedBackprojectionY ( const OutputImageRegionType region,
const ProjectionMatrixType matrix,
const ProjectionImagePointer  projection 
)
overrideprotectedvirtual

Optimized version when the rotation is parallel to Y, i.e. matrix[1][1] and matrix[2][1] are zeros.

Reimplemented from rtk::BackProjectionImageFilter< TInputImage, TOutputImage >.


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