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::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType > Class Template Reference

#include <rtkWarpProjectionStackToFourDImageFilter.h>

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

Public Types

using CPUDVFInterpolatorType = CyclicDeformationImageFilter< DVFSequenceImageType, DVFImageType >
 
using CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension >
 
using CudaCyclicDeformationImageFilterType = CPUDVFInterpolatorType
 
using DVFImageType = itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension-1 >
 
using DVFSequenceImageType = itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension >
 
using Pointer = itk::SmartPointer< Self >
 
using Self = WarpProjectionStackToFourDImageFilter
 
using SignalVectorType = std::vector< double >
 
using Superclass = ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
 
using VectorForDVF = itk::CovariantVector< typename VolumeSeriesType::ValueType, VolumeSeriesType::ImageDimension-1 >
 
using VolumeType = ProjectionStackType
 
using WarpBackProjectionImageFilter = BackProjectionImageFilter< VolumeType, VolumeType >
 
- Public Types inherited from rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
using BackProjectionFilterType = rtk::BackProjectionImageFilter< VolumeType, VolumeType >
 
using ConstantVolumeSeriesSourceType = rtk::ConstantImageSource< VolumeSeriesType >
 
using ConstantVolumeSourceType = rtk::ConstantImageSource< VolumeType >
 
using CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension >
 
using CudaConstantVolumeSeriesSourceType = ConstantVolumeSeriesSourceType
 
using CudaConstantVolumeSourceType = ConstantVolumeSourceType
 
using CudaSplatImageFilterType = SplatFilterType
 
using ExtractFilterType = itk::ExtractImageFilter< ProjectionStackType, ProjectionStackType >
 
using GeometryType = rtk::ThreeDCircularProjectionGeometry
 
using Pointer = itk::SmartPointer< Self >
 
using Self = ProjectionStackToFourDImageFilter
 
using SplatFilterType = rtk::SplatWithKnownWeightsImageFilter< VolumeSeriesType, VolumeType >
 
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 SetBackProjectionFilter (const typename Superclass::BackProjectionFilterType::Pointer)
 
void SetSignal (const std::vector< double > signal) override
 
virtual void SetUseCudaCyclicDeformation (bool _arg)
 
void SetDisplacementField (const DVFSequenceImageType *DVFs)
 
DVFSequenceImageType::ConstPointer GetDisplacementField ()
 
- Public Member Functions inherited from rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual bool GetUseCudaSources ()
 
virtual bool GetUseCudaSplat ()
 
virtual itk::Array2D< float > GetWeights ()
 
void SetBackProjectionFilter (const typename BackProjectionFilterType::Pointer _arg)
 
virtual void SetGeometry (const GeometryType *_arg)
 
virtual void SetUseCudaSources (bool _arg)
 
virtual void SetUseCudaSplat (bool _arg)
 
virtual void SetWeights (itk::Array2D< float > _arg)
 
void SetInputVolumeSeries (const VolumeSeriesType *VolumeSeries)
 
VolumeSeriesType::ConstPointer GetInputVolumeSeries ()
 
void SetInputProjectionStack (const ProjectionStackType *Projections)
 
ProjectionStackType::ConstPointer GetInputProjectionStack ()
 

Static Public Member Functions

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

Protected Member Functions

void GenerateData () override
 
void GenerateOutputInformation () override
 
 WarpProjectionStackToFourDImageFilter ()
 
 ~WarpProjectionStackToFourDImageFilter () override=default
 
void VerifyInputInformation () override
 
- Protected Member Functions inherited from rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
void InitializeConstantSource ()
 
 ProjectionStackToFourDImageFilter ()
 
 ~ProjectionStackToFourDImageFilter () override=default
 

Protected Attributes

CPUDVFInterpolatorType::Pointer m_DVFInterpolatorFilter
 
std::vector< double > m_Signal
 
bool m_UseCudaCyclicDeformation
 
- Protected Attributes inherited from rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >
BackProjectionFilterType::Pointer m_BackProjectionFilter
 
ConstantVolumeSeriesSourceType::Pointer m_ConstantVolumeSeriesSource
 
ConstantVolumeSourceType::Pointer m_ConstantVolumeSource
 
ExtractFilterType::Pointer m_ExtractFilter
 
GeometryType::ConstPointer m_Geometry
 
std::vector< double > m_Signal
 
SplatFilterType::Pointer m_SplatFilter
 
bool m_UseCudaSources
 
bool m_UseCudaSplat
 
itk::Array2D< float > m_Weights
 

Detailed Description

template<typename VolumeSeriesType, typename ProjectionStackType>
class rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >

Back projection part for motion compensated iterative 4D reconstruction.

This filter is similar to ProjectionStackToFourDImageFilter, except that it uses a motion-compensated backprojection. A 4D displacement vector field is therefore required, and its back projection filter cannot be changed.

dot_inline_dotgraph_35.png
Test:
rtkfourdconjugategradienttest.cxx
Author
Cyril Mory

Definition at line 84 of file rtkWarpProjectionStackToFourDImageFilter.h.

Member Typedef Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::CPUDVFInterpolatorType = CyclicDeformationImageFilter< DVFSequenceImageType, DVFImageType>

Definition at line 128 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< 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 102 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::CudaCyclicDeformationImageFilterType = CPUDVFInterpolatorType

Definition at line 129 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::DVFImageType = itk::Image<VectorForDVF, VolumeSeriesType::ImageDimension - 1>

Definition at line 125 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::DVFSequenceImageType = itk::Image<VectorForDVF, VolumeSeriesType::ImageDimension>

Definition at line 123 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::Pointer = itk::SmartPointer< Self >

Definition at line 93 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::Self = WarpProjectionStackToFourDImageFilter

Standard class type alias.

Definition at line 90 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::SignalVectorType = std::vector<double>

Definition at line 138 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::Superclass = ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType>

Definition at line 92 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::VectorForDVF = itk::CovariantVector< typename VolumeSeriesType::ValueType, VolumeSeriesType::ImageDimension - 1>

Definition at line 98 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::VolumeType = ProjectionStackType

Convenient type alias

Definition at line 96 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::WarpBackProjectionImageFilter = BackProjectionImageFilter<VolumeType, VolumeType>

Definition at line 126 of file rtkWarpProjectionStackToFourDImageFilter.h.

Constructor & Destructor Documentation

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

Member Function Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
virtual::itk::LightObject::Pointer rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::GenerateData ( )
overrideprotectedvirtual
template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::GenerateOutputInformation ( )
overrideprotectedvirtual
template<typename VolumeSeriesType , typename ProjectionStackType >
DVFSequenceImageType::ConstPointer rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::GetDisplacementField ( )
template<typename VolumeSeriesType , typename ProjectionStackType >
virtual const char* rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

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

template<typename VolumeSeriesType , typename ProjectionStackType >
virtual bool rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::GetUseCudaCyclicDeformation ( )
virtual
template<typename VolumeSeriesType , typename ProjectionStackType >
static Pointer rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::New ( )
static

Method for creation through the object factory.

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::SetBackProjectionFilter ( const typename Superclass::BackProjectionFilterType::Pointer  )
inline
template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::SetDisplacementField ( const DVFSequenceImageType DVFs)
template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::SetSignal ( const std::vector< double >  signal)
overridevirtual
template<typename VolumeSeriesType , typename ProjectionStackType >
virtual void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::SetUseCudaCyclicDeformation ( bool  _arg)
virtual

Set and Get for the UseCudaCyclicDeformation variable

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::VerifyInputInformation ( )
inlineoverrideprotectedvirtual

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

Reimplemented from itk::ProcessObject.

Definition at line 166 of file rtkWarpProjectionStackToFourDImageFilter.h.

Member Data Documentation

template<typename VolumeSeriesType , typename ProjectionStackType >
CPUDVFInterpolatorType::Pointer rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::m_DVFInterpolatorFilter
protected

Member pointers to the filters used internally (for convenience)

Definition at line 173 of file rtkWarpProjectionStackToFourDImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
std::vector<double> rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >::m_Signal
protected

Definition at line 174 of file rtkWarpProjectionStackToFourDImageFilter.h.

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

Definition at line 175 of file rtkWarpProjectionStackToFourDImageFilter.h.


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