![]() |
CASToR
3.2
Tomographic Reconstruction (PET/SPECT/CT)
|
This class is designed to manage the different image convolvers and to apply them. More...
#include <oImageConvolverManager.hh>
Public Member Functions | |
oImageConvolverManager () | |
The constructor of oImageConvolverManager. More... | |
~oImageConvolverManager () | |
The destructor of oImageConvolverManager. More... | |
int | CheckParameters () |
A function used to check the parameters settings. More... | |
int | Initialize () |
A function used to initialize the manager and all image convolvers it manages. More... | |
int | ConvolveForward (oImageSpace *ap_ImageSpace) |
int | ConvolveBackward (oImageSpace *ap_ImageSpace) |
int | ConvolveSensitivity (oImageSpace *ap_ImageSpace) |
int | ConvolveIntra (oImageSpace *ap_ImageSpace) |
int | ConvolvePost (oImageSpace *ap_ImageSpace) |
void | SetVerbose (int a_verboseLevel) |
void | SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification) |
void | SetOptions (vector< string > a_options) |
oImageConvolverManager () | |
~oImageConvolverManager () | |
int | CheckParameters () |
int | Initialize () |
int | ApplyConvolution (FLTNB *ap_image) |
A function that simply calls the eponym function from the vImageConvolver. More... | |
int | ConvolveForward (oImageSpace *ap_ImageSpace) |
int | ConvolveBackward (oImageSpace *ap_ImageSpace) |
int | ConvolveSensitivity (oImageSpace *ap_ImageSpace) |
int | ConvolveIntra (oImageSpace *ap_ImageSpace) |
int | ConvolvePost (oImageSpace *ap_ImageSpace) |
void | SetVerbose (int a_verboseLevel) |
void | SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification) |
void | SetOptions (vector< string > a_options) |
Static Public Member Functions | |
static void | ShowCommonHelp () |
This function does not take any parameter and is used to display some help about the syntax of the options describing the image convolvers that should be used. It is static so that it can be called without any object initialization. More... | |
static void | ShowCommonHelp () |
Private Member Functions | |
int | ParseOptionsAndInitializeImageConvolvers () |
A function used to parse options and initialize image convolvers. More... | |
int | ParseOptionsAndInitializeImageConvolvers () |
Private Attributes | |
oImageDimensionsAndQuantification * | mp_ImageDimensionsAndQuantification |
vector< string > | m_options |
int | m_nbImageConvolvers |
vImageConvolver ** | m2p_ImageConvolvers |
bool * | mp_applyForward |
bool * | mp_applyBackward |
bool * | mp_applyIntra |
bool * | mp_applyPost |
bool | m_checked |
bool | m_initialized |
int | m_verbose |
This class is designed to manage the different image convolvers and to apply them.
This manager class is supposed to be created and initialized in the main program. To do so, the following steps must be used:
(i) The empty constructor is called which affect all members with default values.
(ii) All parameters are set through the use of SetXXX() functions.
(iii) The CheckParameters() function is called to check that everything mandatory has been set.
(iv) The Initialize() function is called to initialize everything.
(v) Now the action functions of the manager can be called to apply the different image convolvers.
In a few words, based on supplied options, the manager will create children of the abstract vImageConvolver class which are specific image convolver modules. As an example, see the iImageConvolverTemplate child class that illustrates how a specific image convolver module should be implemented.
Definition at line 31 of file code/include/image/oImageConvolverManager.hh.
oImageConvolverManager::oImageConvolverManager | ( | ) |
The constructor of oImageConvolverManager.
This is the default and unique constructor. It does not take any parameter and its role is only to affect default values to each member of the class.
Definition at line 16 of file code/src/image/oImageConvolverManager.cc.
oImageConvolverManager::~oImageConvolverManager | ( | ) |
The destructor of oImageConvolverManager.
This is the default and unique destructor. It does not take any parameter and its role is only to free or delete all structures that were build by this class.
Definition at line 41 of file code/src/image/oImageConvolverManager.cc.
oImageConvolverManager::oImageConvolverManager | ( | ) |
oImageConvolverManager::~oImageConvolverManager | ( | ) |
|
inline |
A function that simply calls the eponym function from the vImageConvolver.
FLTNB* | ap_image |
It will apply a convolution on the provided image, calling the . The convolver is not applied on the dynamic dimensions. This function may be used in specific optimizers needing to apply image-based PSF modeling on a specific image.
Definition at line 95 of file include/image/oImageConvolverManager.hh.
int oImageConvolverManager::CheckParameters | ( | ) |
A function used to check the parameters settings.
This function does not take any parameter and is used to check that all mandatory members were correctly parameterized.
Definition at line 56 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::CheckParameters | ( | ) |
int oImageConvolverManager::ConvolveBackward | ( | oImageSpace * | ap_ImageSpace | ) |
Definition at line 380 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::ConvolveBackward | ( | oImageSpace * | ap_ImageSpace | ) |
int oImageConvolverManager::ConvolveForward | ( | oImageSpace * | ap_ImageSpace | ) |
Definition at line 333 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::ConvolveForward | ( | oImageSpace * | ap_ImageSpace | ) |
int oImageConvolverManager::ConvolveIntra | ( | oImageSpace * | ap_ImageSpace | ) |
Definition at line 459 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::ConvolveIntra | ( | oImageSpace * | ap_ImageSpace | ) |
int oImageConvolverManager::ConvolvePost | ( | oImageSpace * | ap_ImageSpace | ) |
Definition at line 554 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::ConvolvePost | ( | oImageSpace * | ap_ImageSpace | ) |
int oImageConvolverManager::ConvolveSensitivity | ( | oImageSpace * | ap_ImageSpace | ) |
Definition at line 506 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::ConvolveSensitivity | ( | oImageSpace * | ap_ImageSpace | ) |
int oImageConvolverManager::Initialize | ( | ) |
A function used to initialize the manager and all image convolvers it manages.
This function does not take any parameter and is used to initialize everything that should be initialized. In a few words, it parses the options, then creates and initializes all image convolvers based on the provided options.
Definition at line 117 of file code/src/image/oImageConvolverManager.cc.
int oImageConvolverManager::Initialize | ( | ) |
|
private |
A function used to parse options and initialize image convolvers.
This function first parses the options contained in the member m_options. Each string of the vector describes an image convolver to be used. Based on a specific syntax, the options are parsed to get the name of the convolver module, its associated parameters and the steps of application. Based on this, the image convolvers are initialized. This function is private because it is called by the Initialize() function.
Definition at line 150 of file code/src/image/oImageConvolverManager.cc.
|
private |
|
inline |
Definition at line 172 of file code/include/image/oImageConvolverManager.hh.
|
inline |
Definition at line 184 of file include/image/oImageConvolverManager.hh.
|
inline |
Definition at line 179 of file code/include/image/oImageConvolverManager.hh.
|
inline |
Definition at line 191 of file include/image/oImageConvolverManager.hh.
|
inline |
Definition at line 165 of file code/include/image/oImageConvolverManager.hh.
|
inline |
Definition at line 177 of file include/image/oImageConvolverManager.hh.
|
static |
This function does not take any parameter and is used to display some help about the syntax of the options describing the image convolvers that should be used. It is static so that it can be called without any object initialization.
Definition at line 81 of file code/src/image/oImageConvolverManager.cc.
|
static |
|
private |
The actual convolvers (as many as m_nbImageConvolvers)
Definition at line 208 of file code/include/image/oImageConvolverManager.hh.
|
private |
A boolean that says if the function CheckParameters() has been called
Definition at line 213 of file code/include/image/oImageConvolverManager.hh.
|
private |
A boolean that says if the function Initialize() has been called
Definition at line 214 of file code/include/image/oImageConvolverManager.hh.
|
private |
The number of convolvers managed by this manager
Definition at line 207 of file code/include/image/oImageConvolverManager.hh.
|
private |
A vector containing strings of options, each string is associated to a convolver
Definition at line 206 of file code/include/image/oImageConvolverManager.hh.
|
private |
The verbose level associated to this class
Definition at line 215 of file code/include/image/oImageConvolverManager.hh.
|
private |
As many booleans as m_nbImageConvolvers specifying if each convolver should be apply within the ConvolveBackward function
Definition at line 210 of file code/include/image/oImageConvolverManager.hh.
|
private |
As many booleans as m_nbImageConvolvers specifying if each convolver should be apply within the ConvolveForward function
Definition at line 209 of file code/include/image/oImageConvolverManager.hh.
|
private |
As many booleans as m_nbImageConvolvers specifying if each convolver should be apply within the ConvolveIntra function
Definition at line 211 of file code/include/image/oImageConvolverManager.hh.
|
private |
As many booleans as m_nbImageConvolvers specifying if each convolver should be apply within the ConvolvePost function
Definition at line 212 of file code/include/image/oImageConvolverManager.hh.
|
private |
The image dimensions
Definition at line 205 of file code/include/image/oImageConvolverManager.hh.