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

cmtk::DeblurringVolumeReconstruction< TPSF > Class Template Reference
[cmtkRecon Library]

Class for volume reconstruction using joint iterative deblurring. More...

#include <cmtkDeblurringVolumeReconstruction.h>

Inheritance diagram for cmtk::DeblurringVolumeReconstruction< TPSF >:
Inheritance graph
[legend]
Collaboration diagram for cmtk::DeblurringVolumeReconstruction< TPSF >:
Collaboration graph
[legend]

List of all members.

Classes

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

Public Types

typedef
DeblurringVolumeReconstruction
< TPSF > 
Self
 This class.
typedef
InverseInterpolationVolumeReconstructionBase 
Superclass
 Superclass.

Public Member Functions

 DeblurringVolumeReconstruction (const UniformVolume *originalImage, const size_t numberOfPasses, const int interleaveAxis, const Types::Coordinate psfScale=1.0)
 Constructor for interleaved image motion correction.
 DeblurringVolumeReconstruction (const UniformVolume *reconstructionGrid, std::vector< UniformVolume::SmartPtr > &images, const Vector3D &psfSize)
 Constructor for general volume reconstruction from multiple acquired images.

Private Member Functions

void Blur (const ap::real_1d_array &reconstructedPixelArray)
 Blur corrected image into pass images.
void ComputeErrorGradientImage (ap::real_1d_array &g)
 Compute gradient of approximation error w.r.t. corrected image pixels.
void GetBoundingBoxOfXformedPassNeighborhood (int *region, const UniformVolume *correctedImage, const Vector3D &currentPassVoxel, const TPSF *psf, const AffineXform *passToCorrectedXform, const DataGrid::IndexType &correctedImageDims) const
 Get a bounding box of the transformed pass-image pixel neighborhood.

Private Attributes

std::vector< typename
TPSF::SmartPtr > 
m_PassImagePSF
 Scale factors for acquired images point spread functions.

Friends

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

Detailed Description

template<class TPSF>
class cmtk::DeblurringVolumeReconstruction< TPSF >

Class for volume reconstruction using joint iterative deblurring.

Author:
Torsten Rohlfing and Michael P. Hasak

Definition at line 60 of file cmtkDeblurringVolumeReconstruction.h.


Member Typedef Documentation

template<class TPSF >
typedef DeblurringVolumeReconstruction<TPSF> cmtk::DeblurringVolumeReconstruction< TPSF >::Self

This class.

Reimplemented from cmtk::InverseInterpolationVolumeReconstructionBase.

Definition at line 66 of file cmtkDeblurringVolumeReconstruction.h.

Superclass.

Reimplemented from cmtk::InverseInterpolationVolumeReconstructionBase.

Definition at line 69 of file cmtkDeblurringVolumeReconstruction.h.


Constructor & Destructor Documentation

template<class TPSF >
cmtk::DeblurringVolumeReconstruction< TPSF >::DeblurringVolumeReconstruction ( const UniformVolume originalImage,
const size_t  numberOfPasses,
const int  interleaveAxis,
const Types::Coordinate  psfScale = 1.0 
) [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.
psfScaleOptional spatial scale factor for the PSF. Values larger than 1 increase PSF size, smaller than one decrease it.

Definition at line 78 of file cmtkDeblurringVolumeReconstruction.h.

References cmtk::UniformVolume::m_Delta.

template<class TPSF >
cmtk::DeblurringVolumeReconstruction< TPSF >::DeblurringVolumeReconstruction ( const UniformVolume reconstructionGrid,
std::vector< UniformVolume::SmartPtr > &  images,
const Vector3D psfSize 
) [inline]

Constructor for general volume reconstruction from multiple acquired images.

Definition at line 95 of file cmtkDeblurringVolumeReconstruction.h.


Member Function Documentation

template<class TPSF >
void cmtk::DeblurringVolumeReconstruction< TPSF >::Blur ( const ap::real_1d_array &  reconstructedPixelArray ) [private]

Blur corrected image into pass images.

template<class TPSF >
void cmtk::DeblurringVolumeReconstruction< TPSF >::ComputeErrorGradientImage ( ap::real_1d_array &  g ) [private]

Compute gradient of approximation error w.r.t. corrected image pixels.

template<class TPSF >
void cmtk::DeblurringVolumeReconstruction< TPSF >::GetBoundingBoxOfXformedPassNeighborhood ( int *  region,
const UniformVolume correctedImage,
const Vector3D currentPassVoxel,
const TPSF *  psf,
const AffineXform passToCorrectedXform,
const DataGrid::IndexType correctedImageDims 
) const [private]

Get a bounding box of the transformed pass-image pixel neighborhood.

(Transformed from pass-image space to corrected-image space)


Friends And Related Function Documentation

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

Give function and gradient evaluator private access.

Definition at line 152 of file cmtkDeblurringVolumeReconstruction.h.


Member Data Documentation

template<class TPSF >
std::vector<typename TPSF::SmartPtr> cmtk::DeblurringVolumeReconstruction< TPSF >::m_PassImagePSF [private]

Scale factors for acquired images point spread functions.

Definition at line 110 of file cmtkDeblurringVolumeReconstruction.h.


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