RTK
2.6.0
Reconstruction Toolkit
|
#include <rtkProjectionStackToFourDImageFilter.h>
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother () const |
void | SetBackProjectionFilter (BackProjectionFilterType *_arg) |
virtual void | SetGeometry (const GeometryType *_arg) |
virtual void | SetSignal (const std::vector< double > signal) |
virtual const char * | GetNameOfClass () const |
void | SetInputVolumeSeries (const VolumeSeriesType *VolumeSeries) |
VolumeSeriesType::ConstPointer | GetInputVolumeSeries () |
void | SetInputProjectionStack (const ProjectionStackType *Projection) |
ProjectionStackType::ConstPointer | GetInputProjectionStack () |
virtual void | SetUseCudaSplat (bool _arg) |
virtual bool | GetUseCudaSplat () |
virtual void | SetUseCudaSources (bool _arg) |
virtual bool | GetUseCudaSources () |
virtual itk::Array2D< float > | GetWeights () |
virtual void | SetWeights (itk::Array2D< float > _arg) |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
void | GenerateData () override |
void | GenerateInputRequestedRegion () override |
void | GenerateOutputInformation () override |
void | InitializeConstantSource () |
ProjectionStackToFourDImageFilter () | |
void | VerifyPreconditions () const override |
~ProjectionStackToFourDImageFilter () override=default | |
Implements part of the 4D reconstruction by conjugate gradient.
See the reference paper: "Cardiac C-arm computed tomography using a 3D + time ROI reconstruction method with spatial and temporal regularization" by Mory et al.
4D conjugate gradient reconstruction consists in iteratively minimizing the following cost function:
Sum_over_theta || R_theta S_theta f - p_theta ||_2^2
with
Computing the gradient of this cost function yields:
S_theta^T R_theta^T R_theta S_theta f - S_theta^T R_theta^T p_theta
where A^T means the adjoint of operator A.
ProjectionStackToFourDImageFilter implements S_theta^T R_theta^T.
Definition at line 105 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::BackProjectionFilterType = rtk::BackProjectionImageFilter<VolumeType, VolumeType> |
Definition at line 144 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::ConstantVolumeSeriesSourceType = rtk::ConstantImageSource<VolumeSeriesType> |
Definition at line 147 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::ConstantVolumeSourceType = rtk::ConstantImageSource<VolumeType> |
Definition at line 146 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::CPUVolumeSeriesType = typename itk::Image<typename VolumeSeriesType::PixelType, VolumeSeriesType::ImageDimension> |
SFINAE type alias, depending on whether a CUDA image is used.
Definition at line 154 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::CudaConstantVolumeSeriesSourceType = ConstantVolumeSeriesSourceType |
Definition at line 168 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::CudaConstantVolumeSourceType = ConstantVolumeSourceType |
Definition at line 167 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::CudaSplatImageFilterType = SplatFilterType |
Definition at line 166 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::ExtractFilterType = itk::ExtractImageFilter<ProjectionStackType, ProjectionStackType> |
Definition at line 145 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::GeometryType = rtk::ThreeDCircularProjectionGeometry |
Definition at line 150 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::Pointer = itk::SmartPointer<Self> |
Definition at line 114 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::Self = ProjectionStackToFourDImageFilter |
Standard class type alias.
Definition at line 112 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::SplatFilterType = rtk::SplatWithKnownWeightsImageFilter<VolumeSeriesType, VolumeType> |
Definition at line 148 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::Superclass = itk::ImageToImageFilter<VolumeSeriesType, VolumeSeriesType> |
Definition at line 113 of file rtkProjectionStackToFourDImageFilter.h.
using rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::VolumeType = ProjectionStackType |
Convenient type alias
Definition at line 117 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
virtual |
Reimplemented from itk::Object.
|
overrideprotectedvirtual |
Does the real work.
Reimplemented from itk::ImageSource< TOutputImage >.
|
overrideprotectedvirtual |
Reimplemented from itk::ProcessObject.
|
overrideprotectedvirtual |
Reimplemented from itk::ProcessObject.
ProjectionStackType::ConstPointer rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::GetInputProjectionStack | ( | ) |
Set/Get the stack of projections
VolumeSeriesType::ConstPointer rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::GetInputVolumeSeries | ( | ) |
Set/Get the 4D image to be updated.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageSource< TOutputImage >.
Reimplemented in rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >.
|
virtual |
Use CUDA splat / sources
|
virtual |
Use CUDA splat / sources
|
virtual |
Macros that take care of implementing the Get and Set methods for Weights
|
protected |
|
static |
Method for creation through the object factory.
void rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::SetBackProjectionFilter | ( | BackProjectionFilterType * | _arg | ) |
Pass the backprojection filter to SingleProjectionToFourDFilter
|
virtual |
Pass the geometry to SingleProjectionToFourDFilter
void rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::SetInputProjectionStack | ( | const ProjectionStackType * | Projection | ) |
Set/Get the stack of projections
void rtk::ProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType, TFFTPrecision >::SetInputVolumeSeries | ( | const VolumeSeriesType * | VolumeSeries | ) |
Set/Get the 4D image to be updated.
|
virtual |
Store the phase signal in a member variable
Reimplemented in rtk::WarpProjectionStackToFourDImageFilter< VolumeSeriesType, ProjectionStackType >.
|
virtual |
Use CUDA splat / sources
|
virtual |
Use CUDA splat / sources
|
virtual |
Macros that take care of implementing the Get and Set methods for Weights
|
overrideprotectedvirtual |
Checks that inputs are correctly set.
Reimplemented from itk::ProcessObject.
|
protected |
Definition at line 217 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 220 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 219 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 218 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 224 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 227 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Member pointers to the filters used internally (for convenience)
Definition at line 216 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 226 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Definition at line 225 of file rtkProjectionStackToFourDImageFilter.h.
|
protected |
Other member variables
Definition at line 223 of file rtkProjectionStackToFourDImageFilter.h.