![]() |
CASToR
3.2
Tomographic Reconstruction (PET/SPECT/CT)
|
This class performs rigid transformation based on a trilinear interpolation It requires ASCII parameter files containing x,y,z transformation vectors. More...
#include <iDeformationRigid.hh>
Public Member Functions | |
iDeformationRigid () | |
Constructor of iDeformationRigid. Simply set all data members to default values. More... | |
~iDeformationRigid () | |
Destructor of iDeformationRigid. Free memory from all allocated tabs. More... | |
int | ReadAndCheckConfigurationFile (const string &a_fileOptions) |
int | ReadAndCheckOptionsList (const string &a_listOptions) |
int | CheckSpecificParameters () |
This function is used to check parameters after the latter have been all set using Set functions. More... | |
int | Initialize () |
This function is used to initialize specific stuff in the deformation model. More... | |
void | ShowHelp () |
This function is used to print out specific help about the deformation and its options. More... | |
int | ApplyDeformations (FLTNB *ap_inputImage, FLTNB *ap_outputImage, int a_direction, int a_defIdx) |
iDeformationRigid () | |
~iDeformationRigid () | |
int | ReadAndCheckConfigurationFile (const string &a_fileOptions) |
int | ReadAndCheckOptionsList (const string &a_listOptions) |
int | CheckSpecificParameters () |
This function is used to check the parameters of the child functions before initialization if required. More... | |
int | Initialize () |
This function is used to initialize specific data related to the child deformation model. It is pure virtual so must be implemented by children. More... | |
void | ShowHelp () |
This function is used to print out specific help about the deformation and its options. It is pure virtual so must be implemented by children. More... | |
int | ApplyDeformations (FLTNB *ap_inputImage, FLTNB *ap_outputImage, int a_direction, int a_defIdx) |
![]() | |
vDeformation () | |
Constructor of vDeformation. Simply set all data members to default values. More... | |
virtual | ~vDeformation () |
Destructor of vDeformation. More... | |
void | SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification) |
void | SetVerbose (int a_verbose) |
void | SetNbTransformations (int a_nbTransformations) |
virtual int | CheckParameters () |
This function is used to check parameters after the latter have been all set using Set functions. More... | |
virtual int | PerformDeformation (oImageSpace *ap_Image, int a_defIdx, int a_fr, int a_rimg, int a_cimg) |
virtual int | PerformHistoSensitivityDeformation (oImageSpace *ap_Image, int a_defIdx, int fr, int rimg, int cimg) |
virtual int | ApplyDeformationsToBackwardImage (oImageSpace *ap_Image, int a_fr, int a_defIdx) |
virtual int | ApplyDeformationsToHistoSensitivityImage (oImageSpace *ap_Image, int a_fr, int a_defIdx) |
virtual int | PerformSensitivityDeformation (oImageSpace *ap_Image, int a_defDirection, int a_defIdx, int fr, int rg, int cg) |
int | Tlerp (HPFLTNB *ap_inputImage, HPFLTNB *ap_outputImage, uint32_t iov, uint32_t iiv, FLTNB dX, FLTNB dY, FLTNB dZ) |
vDeformation () | |
virtual | ~vDeformation () |
void | SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification) |
void | SetVerbose (int a_verbose) |
void | SetNbTransformations (int a_nbTransformations) |
virtual int | CheckParameters () |
virtual int | PerformDeformation (oImageSpace *ap_Image, int a_defIdx, int a_fr, int a_rimg, int a_cimg) |
virtual int | PerformHistoSensitivityDeformation (oImageSpace *ap_Image, int a_defIdx, int fr, int rimg, int cimg) |
virtual int | ApplyDeformationsToBackwardImage (oImageSpace *ap_Image, int a_fr, int a_defIdx) |
virtual int | ApplyDeformationsToHistoSensitivityImage (oImageSpace *ap_Image, int a_fr, int a_defIdx) |
virtual int | PerformSensitivityDeformation (oImageSpace *ap_Image, int a_defDirection, int a_defIdx, int fr, int rg, int cg) |
int | Tlerp (HPFLTNB *ap_inputImage, HPFLTNB *ap_outputImage, uint32_t iov, uint32_t iiv, FLTNB dX, FLTNB dY, FLTNB dZ) |
Private Member Functions | |
int | TransformImage (int a_direction, int a_defIdx, HPFLTNB *ap_inputImage, HPFLTNB *ap_outputImage) |
int | ComputeTransformationMatrices () |
Initialize transformation matrices from parameters. More... | |
int | SetRotationMatrix (oMatrix *apRotMtx, FLTNB a_ang1, FLTNB a_ang2, FLTNB a_ang3, string a_cvt) |
This function set the rotation matrix passed in parameter with the provided angles in radian and rotation convention. More... | |
int | TransformImage (int a_direction, int a_defIdx, HPFLTNB *ap_inputImage, HPFLTNB *ap_outputImage) |
int | ComputeTransformationMatrices () |
int | SetRotationMatrix (oMatrix *apRotMtx, FLTNB a_ang1, FLTNB a_ang2, FLTNB a_ang3, string a_cvt) |
Private Attributes | |
vector< string > | m_pathToFwdDeformationFiles |
vector< string > | m_pathToBwdDeformationFiles |
HPFLTNB * | mp_OriginalArray |
HPFLTNB * | mp_OutputArray |
HPFLTNB * | mp_tX |
HPFLTNB * | mp_tY |
HPFLTNB * | mp_tZ |
HPFLTNB * | mp_rA |
HPFLTNB * | mp_rB |
HPFLTNB * | mp_rC |
oMatrix ** | m2p_FTmtx |
oMatrix ** | m2p_BTmtx |
string | m_rotConvention |
bool | m_cmpTransfoFlag |
Additional Inherited Members | |
![]() | |
oImageDimensionsAndQuantification * | mp_ID |
int | m_verbose |
int | m_nbTransformations |
int | m_checked |
int | m_initialized |
This class performs rigid transformation based on a trilinear interpolation It requires ASCII parameter files containing x,y,z transformation vectors.
TODO
Definition at line 22 of file code/include/image/iDeformationRigid.hh.
iDeformationRigid::iDeformationRigid | ( | ) |
Constructor of iDeformationRigid. Simply set all data members to default values.
Definition at line 18 of file code/src/image/iDeformationRigid.cc.
iDeformationRigid::~iDeformationRigid | ( | ) |
Destructor of iDeformationRigid. Free memory from all allocated tabs.
Definition at line 45 of file code/src/image/iDeformationRigid.cc.
iDeformationRigid::iDeformationRigid | ( | ) |
iDeformationRigid::~iDeformationRigid | ( | ) |
|
virtual |
Implements vDeformation.
Definition at line 478 of file code/src/image/iDeformationRigid.cc.
|
virtual |
Implements vDeformation.
|
virtual |
This function is used to check the parameters of the child functions before initialization if required.
It could be overloaded by the child if needed. Default implementation is empty and return 0.
Implements vDeformation.
|
virtual |
This function is used to check parameters after the latter have been all set using Set functions.
Implements vDeformation.
Definition at line 410 of file code/src/image/iDeformationRigid.cc.
|
private |
Initialize transformation matrices from parameters.
Definition at line 293 of file code/src/image/iDeformationRigid.cc.
|
private |
|
virtual |
This function is used to initialize specific stuff in the deformation model.
Allocate memory for image matrices, and initialize images containing transformation parameters
Implements vDeformation.
Definition at line 441 of file code/src/image/iDeformationRigid.cc.
|
virtual |
This function is used to initialize specific data related to the child deformation model.
It is pure virtual so must be implemented by children.
Implements vDeformation.
|
virtual |
Implements vDeformation.
|
virtual |
Implements vDeformation.
Definition at line 136 of file code/src/image/iDeformationRigid.cc.
|
virtual |
Implements vDeformation.
|
virtual |
Implements vDeformation.
Definition at line 224 of file code/src/image/iDeformationRigid.cc.
|
private |
This function set the rotation matrix passed in parameter with the provided angles in radian and rotation convention.
apRotMtx | : Rotation oMatrix to initialize |
a_ang1 | : 1st rotation angle (rad) |
a_ang2 | : 2nd rotation angle (rad) |
a_ang3 | : 3rd rotation angle (rad) |
a_cvt | : rotation convention (must be any combinations of 'x', 'y', and 'z'. (Default: xyz) ) |
apRotMtx | : Rotation oMatrix to initialize |
a_ang1 | : 1st rotation angle (rad) |
a_ang2 | : 2nd rotation angle (rad) |
a_ang3 | : 3rd rotation angle (rad) |
a_cvt | : rotation convention (must be any combinations of 'x', 'y', and 'z'. (Default: xyz) ) |
Definition at line 620 of file code/src/image/iDeformationRigid.cc.
|
private |
|
virtual |
This function is used to print out specific help about the deformation and its options.
It is pure virtual so must be implemented by children.
Implements vDeformation.
|
virtual |
This function is used to print out specific help about the deformation and its options.
Implements vDeformation.
Definition at line 83 of file code/src/image/iDeformationRigid.cc.
|
private |
|
private |
Definition at line 530 of file code/src/image/iDeformationRigid.cc.
|
private |
Backward transformation matrix
Definition at line 153 of file code/include/image/iDeformationRigid.hh.
|
private |
Forward transformation matrix
Definition at line 152 of file code/include/image/iDeformationRigid.hh.
|
private |
Flag defining if transformations from reference to each position must be computed (provided transformation parameters from one position to the next one, default) or not (already computed by the user)
Definition at line 155 of file code/include/image/iDeformationRigid.hh.
|
private |
Containers of the location of backward deformation file. Nb of elements should be equal to the number of transformations 'm_nbTransformations'
Definition at line 142 of file code/include/image/iDeformationRigid.hh.
|
private |
Containers of the location of forward deformation file. Nb of elements should be equal to the number of transformations 'm_nbTransformations'
Definition at line 139 of file code/include/image/iDeformationRigid.hh.
|
private |
Convention for rotation. Default : XYZ
Definition at line 154 of file code/include/image/iDeformationRigid.hh.
|
private |
Image matrice to get the input image for deformation
Definition at line 144 of file code/include/image/iDeformationRigid.hh.
|
private |
Image matrice to recover the output image after deformation
Definition at line 145 of file code/include/image/iDeformationRigid.hh.
|
private |
First rotation
Definition at line 149 of file code/include/image/iDeformationRigid.hh.
|
private |
Second rotation
Definition at line 150 of file code/include/image/iDeformationRigid.hh.
|
private |
Third rotation
Definition at line 151 of file code/include/image/iDeformationRigid.hh.
|
private |
Translation on the X-axis
Definition at line 146 of file code/include/image/iDeformationRigid.hh.
|
private |
Translation on the Y-axis
Definition at line 147 of file code/include/image/iDeformationRigid.hh.
|
private |
Translation on the Z-axis
Definition at line 148 of file code/include/image/iDeformationRigid.hh.