Classes | Public Types | Public Member Functions | Private Member Functions | Friends

cmtk::InverseInterpolationVolumeReconstruction< TInterpolator > Class Template Reference
[cmtkRecon Library]

Class for volume reconstruction using inverse interpolation. More...

#include <cmtkInverseInterpolationVolumeReconstruction.h>

Inheritance diagram for cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >:
Inheritance graph
[legend]
Collaboration diagram for cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >:
Collaboration graph
[legend]

List of all members.

Classes

class  FunctionAndGradient
 Glue class for function and gradient evaluation. More...

Public Types

typedef
InverseInterpolationVolumeReconstruction
< TInterpolator > 
Self
 This class.
typedef
InverseInterpolationVolumeReconstructionBase 
Superclass
 Superclass.

Public Member Functions

 InverseInterpolationVolumeReconstruction (const UniformVolume *originalImage, const int numberOfPasses, const int interleaveAxis)
 Constructor for interleaved image motion correction.
 InverseInterpolationVolumeReconstruction (const UniformVolume *reconstructionGrid, std::vector< UniformVolume::SmartPtr > &images)
 Constructor for general volume reconstruction from multiple acquired images.
virtual ~InverseInterpolationVolumeReconstruction ()
 Destructor: delete function evaluator object.

Private Member Functions

void Interpolation (const ap::real_1d_array &reconstructedPixelArray)
 Interpolates subimages from the existing corrected image.
void ComputeErrorGradientImage (ap::real_1d_array &g)
 Compute gradient of approximation error w.r.t. corrected image pixels.
void GetPassImageDependentPixelRegion (int *region, const UniformVolume *correctedImage, const int *currentCorrectedGridPoint, const UniformVolume *passImage, const AffineXform *transformationToPassImage, const DataGrid::IndexType &passImageDims)
 Get pass image region that contains all pixels dependent on currently considered corrected image pixel.

Friends

class Self::FunctionAndGradient
 Give function and gradient evaluator private access.

Detailed Description

template<class TInterpolator>
class cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >

Class for volume reconstruction using inverse interpolation.

Author:
Torsten Rohlfing

Definition at line 62 of file cmtkInverseInterpolationVolumeReconstruction.h.


Member Typedef Documentation

template<class TInterpolator >
typedef InverseInterpolationVolumeReconstruction<TInterpolator> cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::Self

Constructor & Destructor Documentation

template<class TInterpolator >
cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::InverseInterpolationVolumeReconstruction ( const UniformVolume originalImage,
const int  numberOfPasses,
const int  interleaveAxis 
) [inline]

Constructor for interleaved image motion correction.

Take original image. Set interleaved image count and stacking axis. Construct separate 3D image stacks for interleaved passes. Allocate corrected image.

Parameters:
originalImageSmart pointer to the original image with motion artifacts.
numberOfPassesThe number of interleaved passes, i.e., the number of pass images that comprise the final image.
interleaveAxisBetween-slice axis of the interleaved acquisition.

Definition at line 79 of file cmtkInverseInterpolationVolumeReconstruction.h.

template<class TInterpolator >
cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::InverseInterpolationVolumeReconstruction ( const UniformVolume reconstructionGrid,
std::vector< UniformVolume::SmartPtr > &  images 
) [inline]

Constructor for general volume reconstruction from multiple acquired images.

Definition at line 87 of file cmtkInverseInterpolationVolumeReconstruction.h.

template<class TInterpolator >
virtual cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::~InverseInterpolationVolumeReconstruction (  ) [inline, virtual]

Destructor: delete function evaluator object.

Definition at line 94 of file cmtkInverseInterpolationVolumeReconstruction.h.


Member Function Documentation

template<class TInterpolator >
void cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::ComputeErrorGradientImage ( ap::real_1d_array &  g ) [private]
template<class TInterpolator >
void cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::GetPassImageDependentPixelRegion ( int *  region,
const UniformVolume correctedImage,
const int *  currentCorrectedGridPoint,
const UniformVolume passImage,
const AffineXform transformationToPassImage,
const DataGrid::IndexType passImageDims 
) [private]

Get pass image region that contains all pixels dependent on currently considered corrected image pixel.

Definition at line 226 of file cmtkInverseInterpolationVolumeReconstruction.txx.

References cmtk::AffineXform::ApplyInPlace(), cmtk::DataGrid::GetDims(), cmtk::UniformVolume::GetGridLocation(), and cmtk::UniformVolume::GetVoxelIndexNoBounds().

template<class TInterpolator >
void cmtk::InverseInterpolationVolumeReconstruction< TInterpolator >::Interpolation ( const ap::real_1d_array &  reconstructedPixelArray ) [private]

Friends And Related Function Documentation

template<class TInterpolator >
friend class Self::FunctionAndGradient [friend]

Give function and gradient evaluator private access.

Definition at line 141 of file cmtkInverseInterpolationVolumeReconstruction.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines