Class for volume reconstruction using joint iterative deblurring. More...
#include <cmtkDeblurringVolumeReconstruction.h>
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 ¤tPassVoxel, 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. |
Class for volume reconstruction using joint iterative deblurring.
Definition at line 60 of file cmtkDeblurringVolumeReconstruction.h.
typedef DeblurringVolumeReconstruction<TPSF> cmtk::DeblurringVolumeReconstruction< TPSF >::Self |
This class.
Reimplemented from cmtk::InverseInterpolationVolumeReconstructionBase.
Definition at line 66 of file cmtkDeblurringVolumeReconstruction.h.
typedef InverseInterpolationVolumeReconstructionBase cmtk::DeblurringVolumeReconstruction< TPSF >::Superclass |
Superclass.
Reimplemented from cmtk::InverseInterpolationVolumeReconstructionBase.
Definition at line 69 of file cmtkDeblurringVolumeReconstruction.h.
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.
originalImage | Smart pointer to the original image with motion artifacts. |
numberOfPasses | The number of interleaved passes, i.e., the number of pass images that comprise the final image. |
interleaveAxis | Between-slice axis of the interleaved acquisition. |
psfScale | Optional 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.
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.
void cmtk::DeblurringVolumeReconstruction< TPSF >::Blur | ( | const ap::real_1d_array & | reconstructedPixelArray ) | [private] |
Blur corrected image into pass images.
void cmtk::DeblurringVolumeReconstruction< TPSF >::ComputeErrorGradientImage | ( | ap::real_1d_array & | g ) | [private] |
Compute gradient of approximation error w.r.t. corrected image pixels.
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)
friend class Self::FunctionAndGradient [friend] |
Give function and gradient evaluator private access.
Definition at line 152 of file cmtkDeblurringVolumeReconstruction.h.
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.