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

#include <rtkWarpFourDToProjectionStackImageFilter.h>

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

Public Types

using CPUDVFInterpolatorType = CyclicDeformationImageFilter< DVFSequenceImageType, DVFImageType >
 
using CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension >
 
using CudaCyclicDeformationImageFilterType = CPUDVFInterpolatorType
 
using DVFImageType = typename itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension-1 >
 
using DVFSequenceImageType = typename itk::Image< VectorForDVF, VolumeSeriesType::ImageDimension >
 
using Pointer = itk::SmartPointer< Self >
 
using Self = WarpFourDToProjectionStackImageFilter
 
using SignalVectorType = std::vector< double >
 
using Superclass = rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >
 
using VectorForDVF = itk::CovariantVector< typename VolumeSeriesType::ValueType, VolumeSeriesType::ImageDimension-1 >
 
using VolumeType = ProjectionStackType
 
using WarpForwardProjectionImageFilterType = JosephForwardProjectionImageFilter< ProjectionStackType, ProjectionStackType >
 
- Public Types inherited from rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >
using ConstantProjectionStackSourceType = rtk::ConstantImageSource< ProjectionStackType >
 
using ConstantVolumeSourceType = rtk::ConstantImageSource< VolumeType >
 
using ForwardProjectionFilterType = rtk::ForwardProjectionImageFilter< ProjectionStackType, ProjectionStackType >
 
using GeometryType = rtk::ThreeDCircularProjectionGeometry
 
using InterpolatorFilterType = rtk::InterpolatorWithKnownWeightsImageFilter< VolumeType, VolumeSeriesType >
 
using PasteFilterType = itk::PasteImageFilter< ProjectionStackType, ProjectionStackType >
 
using Pointer = itk::SmartPointer< Self >
 
using Self = FourDToProjectionStackImageFilter
 
using Superclass = itk::ImageToImageFilter< ProjectionStackType, ProjectionStackType >
 
using VolumeType = ProjectionStackType
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
virtual bool GetUseCudaCyclicDeformation ()
 
void SetForwardProjectionFilter (const typename Superclass::ForwardProjectionFilterType::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::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >
virtual ::itk::LightObject::Pointer CreateAnother () const
 
void InitializeConstantVolumeSource ()
 
void SetForwardProjectionFilter (const typename ForwardProjectionFilterType::Pointer _arg)
 
virtual void SetGeometry (GeometryType::Pointer _arg)
 
void SetInputProjectionStack (const ProjectionStackType *Projection)
 
void SetInputVolumeSeries (const VolumeSeriesType *VolumeSeries)
 
void SetWeights (const itk::Array2D< float > _arg)
 

Static Public Member Functions

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

Protected Member Functions

void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
 WarpFourDToProjectionStackImageFilter ()
 
 ~WarpFourDToProjectionStackImageFilter () override=default
 
void VerifyInputInformation () override
 
- Protected Member Functions inherited from rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >
 FourDToProjectionStackImageFilter ()
 
void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
ProjectionStackType::Pointer GetInputProjectionStack ()
 
VolumeSeriesType::ConstPointer GetInputVolumeSeries ()
 
 ~FourDToProjectionStackImageFilter () override=default
 

Protected Attributes

CPUDVFInterpolatorType::Pointer m_DVFInterpolatorFilter
 
std::vector< double > m_Signal
 
bool m_UseCudaCyclicDeformation {false}
 
- Protected Attributes inherited from rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >
ConstantProjectionStackSourceType::Pointer m_ConstantProjectionStackSource
 
ConstantVolumeSourceType::Pointer m_ConstantVolumeSource
 
ForwardProjectionFilterType::Pointer m_ForwardProjectionFilter
 
GeometryType::Pointer m_Geometry
 
InterpolatorFilterType::Pointer m_InterpolationFilter
 
PasteFilterType::Pointer m_PasteFilter
 
ConstantProjectionStackSourceType::OutputImageRegionType m_PasteRegion
 
std::vector< double > m_Signal
 
itk::Array2D< float > m_Weights
 

Detailed Description

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

Forward projection part for motion compensated iterative 4D reconstruction.

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

dot_inline_dotgraph_34.png
Test:
rtkwarpfourdtoprojectionstacktest.cxx
Author
Cyril Mory

Definition at line 86 of file rtkWarpFourDToProjectionStackImageFilter.h.

Member Typedef Documentation

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

Definition at line 121 of file rtkWarpFourDToProjectionStackImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >::CPUVolumeSeriesType = typename itk::Image< typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension>

Definition at line 103 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 134 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 118 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 116 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 95 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Standard class type alias.

Definition at line 92 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 143 of file rtkWarpFourDToProjectionStackImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >::Superclass = rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType>

Definition at line 94 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 100 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Convenient type alias

Definition at line 98 of file rtkWarpFourDToProjectionStackImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
using rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >::WarpForwardProjectionImageFilterType = JosephForwardProjectionImageFilter< ProjectionStackType, ProjectionStackType>

Definition at line 133 of file rtkWarpFourDToProjectionStackImageFilter.h.

Constructor & Destructor Documentation

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

Member Function Documentation

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

Run-time type information (and related methods).

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

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

Method for creation through the object factory.

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

Set and Get for the UseCudaCyclicDeformation variable

template<typename VolumeSeriesType , typename ProjectionStackType >
void rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >::VerifyInputInformation ( )
inlineoverrideprotected

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

Definition at line 173 of file rtkWarpFourDToProjectionStackImageFilter.h.

Member Data Documentation

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

Member pointers to the filters used internally (for convenience)

Definition at line 180 of file rtkWarpFourDToProjectionStackImageFilter.h.

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

Definition at line 181 of file rtkWarpFourDToProjectionStackImageFilter.h.

template<typename VolumeSeriesType , typename ProjectionStackType >
bool rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >::m_UseCudaCyclicDeformation {false}
protected

Definition at line 182 of file rtkWarpFourDToProjectionStackImageFilter.h.


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