SuPReMo  0.1.1
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MoCoRecon Class Referenceabstract

#include <MoCoRecon.h>

Inheritance diagram for MoCoRecon:
Inheritance graph
[legend]

Public Types

typedef float PrecisionType
 
typedef std::vector< std::vector< PrecisionType > > SurrogateSignalType
 

Public Member Functions

 MoCoRecon ()
 
virtual ~MoCoRecon ()
 
void SetCorrespondenceModel (const std::shared_ptr< CorrespondenceModel > &correspondenceModelIn)
 
void SetImageAcquisition (const std::shared_ptr< ImageAcquisition > &imageAcquisitionIn)
 
void SetSurrogateSignals (const SurrogateSignalType &surrSignalsIn)
 
void SetDynamicImages (const std::vector< nifti_image * > &dynamicImagesIn)
 
void SetReconstructionGeometryImage (nifti_image *reconstructionGeometryImageIn)
 
virtual void Update ()=0
 
nifti_image * GetReconstructedImage ()
 
bool GetRepeatedUpdateChangesMCR ()
 
void CopyReconstructedImageContentsToImage (nifti_image *destinationImage)
 

Protected Member Functions

void AllocateReconstructedImage ()
 
void ClearReconstructedImage ()
 

Protected Attributes

std::shared_ptr< CorrespondenceModelcorrespondenceModel
 Pointer to the correspondence model. More...
 
std::shared_ptr< ImageAcquisitionimageAcquisition
 Pointer to the image acquisition opbject. More...
 
SurrogateSignalType surrogateSignals
 Vector holding the surrogate signals. More...
 
std::vector< nifti_image * > dynamicImages
 Vector holding the dynamic images. More...
 
size_t numberOfDynamicImages
 The number of the dynamic images - will be derived from the vector dynamicImages. More...
 
nifti_image * reconstructionGeometryImage
 Pointer to the image that defines the reconstruction geometry, think of it as a reference image. More...
 
nifti_image * reconstructedImage
 Pointer to the reconstructed image. More...
 
PrecisionType paddingValue
 The padding value used if no data available to reconstruct an image intensity value. More...
 
bool repeatedUpdateChangesMCRImage
 Indicates wether a repeated call of the update function cahgnes the MCR result. More...
 

Detailed Description

Baseclass defining the interface and some default implementations for the motion-compensated image reconstruction.

Member Typedef Documentation

◆ PrecisionType

typedef float MoCoRecon::PrecisionType

◆ SurrogateSignalType

typedef std::vector< std::vector<PrecisionType> > MoCoRecon::SurrogateSignalType

Constructor & Destructor Documentation

◆ MoCoRecon()

MoCoRecon::MoCoRecon ( )

Constructor

◆ ~MoCoRecon()

MoCoRecon::~MoCoRecon ( )
virtual

Destructor

Member Function Documentation

◆ AllocateReconstructedImage()

void MoCoRecon::AllocateReconstructedImage ( )
protected

Allocate memory to hold the reconstructed image

◆ ClearReconstructedImage()

void MoCoRecon::ClearReconstructedImage ( )
protected

Clear the memory reserved for the reconstructed image and set the corresponding pointer to null.

◆ CopyReconstructedImageContentsToImage()

void MoCoRecon::CopyReconstructedImageContentsToImage ( nifti_image *  destinationImage)

Copy the reconstructed image to the destination image.

Parameters
destinationImageNifti-image into which the reconstructed image will be written. Has to have the same size as the reconstruction geometry image.

◆ GetReconstructedImage()

nifti_image * MoCoRecon::GetReconstructedImage ( )

Get a pointer to the reconstructed image. Note, the destructor of this class will clean up the image.

◆ GetRepeatedUpdateChangesMCR()

bool MoCoRecon::GetRepeatedUpdateChangesMCR ( )
inline

Returns a boolean indicating if a repeated call of the Update() method changes the result - even if the CorrespondenceModel, or the dynamic images did not change. This behaviour has to be determined by a derived class by setting repeatedUpdateChangesMCRImage accordingly.

◆ SetCorrespondenceModel()

void MoCoRecon::SetCorrespondenceModel ( const std::shared_ptr< CorrespondenceModel > &  correspondenceModelIn)

Set the correspondence model.

Parameters
correspondenceModelInThe input correspondence model

◆ SetDynamicImages()

void MoCoRecon::SetDynamicImages ( const std::vector< nifti_image * > &  dynamicImagesIn)

Define the dynamic images

Parameters
dynamicImagesInVector holding the pointers to the dynamic images.

◆ SetImageAcquisition()

void MoCoRecon::SetImageAcquisition ( const std::shared_ptr< ImageAcquisition > &  imageAcquisitionIn)

Set the image acquisition object.

Parameters
imageAcquisitionInThe object providing the image-acquisition functionality.

◆ SetReconstructionGeometryImage()

void MoCoRecon::SetReconstructionGeometryImage ( nifti_image *  reconstructionGeometryImageIn)

Define the reconstruction geometry.

Parameters
reconstructionGeometryImageInPointer to the image that defines the geometry of the reconstructed image.

◆ SetSurrogateSignals()

void MoCoRecon::SetSurrogateSignals ( const SurrogateSignalType surrSignalsIn)

Set the surrogate signal. Has to be given, such that the correspondence model can be used to generate the required transformations.

◆ Update()

virtual void MoCoRecon::Update ( )
pure virtual

Abstract base class to actually calculate the motion-compensated reconstruction. Has to be implemented by a specific method.

Implemented in MoCoReconSuperResolutionIBP, and MoCoReconWeightedAverage.

Member Data Documentation

◆ correspondenceModel

std::shared_ptr<CorrespondenceModel> MoCoRecon::correspondenceModel
protected

Pointer to the correspondence model.

◆ dynamicImages

std::vector<nifti_image*> MoCoRecon::dynamicImages
protected

Vector holding the dynamic images.

◆ imageAcquisition

std::shared_ptr<ImageAcquisition> MoCoRecon::imageAcquisition
protected

Pointer to the image acquisition opbject.

◆ numberOfDynamicImages

size_t MoCoRecon::numberOfDynamicImages
protected

The number of the dynamic images - will be derived from the vector dynamicImages.

◆ paddingValue

PrecisionType MoCoRecon::paddingValue
protected

The padding value used if no data available to reconstruct an image intensity value.

◆ reconstructedImage

nifti_image* MoCoRecon::reconstructedImage
protected

Pointer to the reconstructed image.

◆ reconstructionGeometryImage

nifti_image* MoCoRecon::reconstructionGeometryImage
protected

Pointer to the image that defines the reconstruction geometry, think of it as a reference image.

◆ repeatedUpdateChangesMCRImage

bool MoCoRecon::repeatedUpdateChangesMCRImage
protected

Indicates wether a repeated call of the update function cahgnes the MCR result.

◆ surrogateSignals

SurrogateSignalType MoCoRecon::surrogateSignals
protected

Vector holding the surrogate signals.


The documentation for this class was generated from the following files: