RTK
2.6.0
Reconstruction Toolkit
|
#include <rtkFourDToProjectionStackImageFilter.h>
Public Types | |
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 |
void | InitializeConstantVolumeSource () |
void | SetForwardProjectionFilter (ForwardProjectionFilterType *_arg) |
virtual void | SetGeometry (GeometryType *_arg) |
void | SetInputProjectionStack (const ProjectionStackType *Projection) |
void | SetInputVolumeSeries (const VolumeSeriesType *VolumeSeries) |
virtual void | SetSignal (const std::vector< double > signal) |
void | SetWeights (const itk::Array2D< float > _arg) |
virtual const char * | GetNameOfClass () const |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
FourDToProjectionStackImageFilter () | |
void | GenerateData () override |
void | GenerateInputRequestedRegion () override |
void | GenerateOutputInformation () override |
ProjectionStackType::Pointer | GetInputProjectionStack () |
VolumeSeriesType::ConstPointer | GetInputVolumeSeries () |
~FourDToProjectionStackImageFilter () 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.
FourDToProjectionStackImageFilter implements R_theta S_theta.
Definition at line 100 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::ConstantProjectionStackSourceType = rtk::ConstantImageSource<ProjectionStackType> |
Definition at line 140 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::ConstantVolumeSourceType = rtk::ConstantImageSource<VolumeType> |
Definition at line 139 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::ForwardProjectionFilterType = rtk::ForwardProjectionImageFilter<ProjectionStackType, ProjectionStackType> |
Typedefs for the sub filters
Definition at line 136 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::GeometryType = rtk::ThreeDCircularProjectionGeometry |
Definition at line 141 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::InterpolatorFilterType = rtk::InterpolatorWithKnownWeightsImageFilter<VolumeType, VolumeSeriesType> |
Definition at line 138 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::PasteFilterType = itk::PasteImageFilter<ProjectionStackType, ProjectionStackType> |
Definition at line 137 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::Pointer = itk::SmartPointer<Self> |
Definition at line 109 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::Self = FourDToProjectionStackImageFilter |
Standard class type alias.
Definition at line 107 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::Superclass = itk::ImageToImageFilter<ProjectionStackType, ProjectionStackType> |
Definition at line 108 of file rtkFourDToProjectionStackImageFilter.h.
using rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::VolumeType = ProjectionStackType |
Convenient type alias
Definition at line 112 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
virtual |
Reimplemented from itk::Object.
Reimplemented in rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >.
|
overrideprotectedvirtual |
Does the real work.
Reimplemented from itk::ImageSource< TOutputImage >.
Reimplemented in rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >.
|
overrideprotectedvirtual |
Reimplemented from itk::ProcessObject.
Reimplemented in rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >.
|
overrideprotectedvirtual |
Reimplemented from itk::ProcessObject.
Reimplemented in rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >.
|
protected |
|
protected |
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageSource< TOutputImage >.
Reimplemented in rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >.
void rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::InitializeConstantVolumeSource | ( | ) |
Initializes the empty volume source, set it and update it
|
static |
Method for creation through the object factory.
void rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::SetForwardProjectionFilter | ( | ForwardProjectionFilterType * | _arg | ) |
Set the ForwardProjection filter
|
virtual |
Pass the geometry to SingleProjectionToFourDFilter
void rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::SetInputProjectionStack | ( | const ProjectionStackType * | Projection | ) |
The image that will be backprojected, then added, with coefficients, to each 3D volume of the 4D image. It is 3D because the ForwardProjection filters need it, but the third dimension, which is the number of projections, is 1
void rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::SetInputVolumeSeries | ( | const VolumeSeriesType * | VolumeSeries | ) |
The 4D image to be updated.
|
virtual |
Store the phase signal in a member variable
Reimplemented in rtk::WarpFourDToProjectionStackImageFilter< VolumeSeriesType, ProjectionStackType >.
void rtk::FourDToProjectionStackImageFilter< ProjectionStackType, VolumeSeriesType >::SetWeights | ( | const itk::Array2D< float > | _arg | ) |
Pass the interpolation weights to SingleProjectionToFourDFilter
|
protected |
Definition at line 185 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Definition at line 184 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Definition at line 186 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Definition at line 190 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Definition at line 183 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Member pointers to the filters used internally (for convenience)
Definition at line 182 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Definition at line 191 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Definition at line 192 of file rtkFourDToProjectionStackImageFilter.h.
|
protected |
Other member variables
Definition at line 189 of file rtkFourDToProjectionStackImageFilter.h.