CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
Public Member Functions | Private Member Functions | Private Attributes | List of all members
iPenaltyMarkovRandomField Class Reference

This class implements the general Markov Random Field kind of penalties. More...

#include <iPenaltyMarkovRandomField.hh>

Inheritance diagram for iPenaltyMarkovRandomField:
Inheritance graph
Collaboration diagram for iPenaltyMarkovRandomField:
Collaboration graph

Public Member Functions

 iPenaltyMarkovRandomField ()
 The constructor of iPenaltyMarkovRandomField. More...
 
 ~iPenaltyMarkovRandomField ()
 The destructor of iPenaltyMarkovRandomField. More...
 
int ReadConfigurationFile (const string &a_configurationFile)
 
int ReadOptionsList (const string &a_optionsList)
 
int LocalPreProcessingStep (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 
FLTNB ComputePenaltyValue (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 
FLTNB ComputeFirstDerivative (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 
FLTNB ComputeSecondDerivative (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 
int BuildSpecificNeighborhood (INTNB a_voxel, int a_th)
 
int GetPotentialType ()
 
FLTNBGetProximityKernel ()
 
FLTNBGetSimilarityFactors (int a_th)
 
INTNB GetNeighborhoodMaxNbVoxels ()
 
INTNB ** GetNeighborhoodIndices ()
 
 iPenaltyMarkovRandomField ()
 
 ~iPenaltyMarkovRandomField ()
 
int ReadConfigurationFile (const string &a_configurationFile)
 
int ReadOptionsList (const string &a_optionsList)
 
int LocalPreProcessingStep (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 
FLTNB ComputePenaltyValue (FLTNB *ap_image, INTNB a_voxel, int a_th)
 
FLTNB ComputeFirstDerivative (FLTNB *ap_image, INTNB a_voxel, int a_th)
 
FLTNB ComputeSecondDerivative (FLTNB *ap_image, INTNB a_voxel, int a_th)
 
int BuildSpecificNeighborhood (INTNB a_voxel, int a_th)
 
int GetPotentialType ()
 
FLTNBGetProximityKernel ()
 
FLTNBGetSimilarityFactors (int a_th)
 
INTNB GetNeighborhoodMaxNbVoxels ()
 
INTNB ** GetNeighborhoodIndices ()
 
- Public Member Functions inherited from vPenalty
 vPenalty ()
 The constructor of vPenalty. More...
 
virtual ~vPenalty ()
 The destructor of vPenalty. More...
 
void ShowHelp ()
 A function used to show help about the penalty. More...
 
int CheckParameters ()
 A public function used to check the parameters settings. More...
 
int Initialize ()
 A public function used to initialize the penalty. More...
 
virtual int GlobalPreProcessingStep ()
 A public function computing a global pre-processing step for the penalty. More...
 
void SetVerbose (int a_verbose)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
void SetImageSpace (oImageSpace *ap_ImageSpace)
 
void SetPenaltyStrength (FLTNB a_penaltyStrength)
 
FLTNB GetPenaltyStrength ()
 Get the penalty strength. More...
 
int GetPenaltyDerivativesOrder ()
 Get the penalty deratives order. More...
 
void SetPenaltyID (const string &a_penaltyID)
 
const string & GetPenaltyID ()
 
 vPenalty ()
 
virtual ~vPenalty ()
 
void ShowHelp ()
 
int CheckParameters ()
 
int Initialize ()
 
virtual int GlobalPreProcessingStep ()
 
void SetVerbose (int a_verbose)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
void SetImageSpace (oImageSpace *ap_ImageSpace)
 
void SetDataFile (vDataFile *ap_DataFile)
 Set the image space in use. More...
 
void SetPenaltyStrength (FLTNB a_penaltyStrength)
 
FLTNB GetPenaltyStrength ()
 
int GetPenaltyDerivativesOrder ()
 
void SetPenaltyID (const string &a_penaltyID)
 
const string & GetPenaltyID ()
 

Private Member Functions

void ShowHelpSpecific ()
 A function used to show help about the child penalty. More...
 
int CheckSpecificParameters ()
 A private function used to check the parameters settings specific to the child penalty. More...
 
int InitializeSpecific ()
 This function is used to initialize specific stuff to the child penalty. More...
 
int BuildNeighborhoodKernel ()
 A function used to build the neighborhood kernel. More...
 
int BuildProximityFactors ()
 A function used to build the kernel of the proximity factors. More...
 
int ComputeSimilarityFactors (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 
void ShowHelpSpecific ()
 A function used to show help about the child module. More...
 
int CheckSpecificParameters ()
 A private function used to check the parameters settings specific to the child penalty. More...
 
int InitializeSpecific ()
 A private function used to initialize everything specific to the child penalty. More...
 
int BuildNeighborhoodKernel ()
 
int BuildProximityFactors ()
 
int ComputeSimilarityFactors (int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
 

Private Attributes

int m_potentialType
 
FLTNB m_potentialRelativeDifferenceGamma
 
FLTNB m_potentialGemanMcClureDelta
 
FLTNB m_potentialGreenLogCoshDelta
 
FLTNB m_potentialHebertLeahyMu
 
FLTNB m_potentialHuberDelta
 
int m_proximityType
 
FLTNB m_proximityCharacteristicDistance
 
FLTNBmp_proximityKernel
 
int m_similarityType
 
FLTNB m_similarityBowsherThreshold
 
FLTNB ** m2p_similarityFactors
 
INTNB m_similarityBowsherNbVoxels
 
int m_neighborhoodShape
 
FLTNB m_neighborhoodSphereRadius
 
int m_neighborhoodBoxOrder
 
int m_neighborhoodBoxExcludeCorners
 
INTNB m_neighborhoodMaxNbVoxels
 
INTNB ** m2p_neighborhoodKernel
 
INTNBmp_neighborhoodNbVoxels
 
INTNB ** m2p_neighborhoodIndices
 
FLTNB m_proximityGaussianFWHM
 
INTNB ** m2p_helper_bowsher
 

Additional Inherited Members

- Protected Attributes inherited from vPenalty
string m_penaltyID
 
oImageDimensionsAndQuantificationmp_ImageDimensionsAndQuantification
 
oImageSpacemp_ImageSpace
 
int m_verbose
 
int m_penaltyDerivativesOrder
 
FLTNB m_penaltyStrength
 
vDataFilemp_DataFile
 

Detailed Description

This class implements the general Markov Random Field kind of penalties.

This class inherits from vPenalty and implements the general MRF penalties.

Definition at line 45 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

Constructor & Destructor Documentation

◆ iPenaltyMarkovRandomField() [1/2]

iPenaltyMarkovRandomField::iPenaltyMarkovRandomField ( )

The constructor of iPenaltyMarkovRandomField.

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 15 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ~iPenaltyMarkovRandomField() [1/2]

iPenaltyMarkovRandomField::~iPenaltyMarkovRandomField ( )

The destructor of iPenaltyMarkovRandomField.

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 built by this class.

Definition at line 51 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:

◆ iPenaltyMarkovRandomField() [2/2]

iPenaltyMarkovRandomField::iPenaltyMarkovRandomField ( )

◆ ~iPenaltyMarkovRandomField() [2/2]

iPenaltyMarkovRandomField::~iPenaltyMarkovRandomField ( )

Member Function Documentation

◆ BuildNeighborhoodKernel() [1/2]

int iPenaltyMarkovRandomField::BuildNeighborhoodKernel ( )
private

◆ BuildNeighborhoodKernel() [2/2]

int iPenaltyMarkovRandomField::BuildNeighborhoodKernel ( )
private

A function used to build the neighborhood kernel.

This function build the table m2p_neighborhoodKernel, that prepare neighborhood indices operations. It is called only one time at initialization. The kernel will be used when computing the specific neighborhood of any voxel later on.

Returns
An integer reflecting the reading success; 0 if success, another value otherwise.

Definition at line 637 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildProximityFactors() [1/2]

int iPenaltyMarkovRandomField::BuildProximityFactors ( )
private

◆ BuildProximityFactors() [2/2]

int iPenaltyMarkovRandomField::BuildProximityFactors ( )
private

A function used to build the kernel of the proximity factors.

This function build the table FLTNB* mp_proximityKernel

Returns
An integer reflecting the reading success; 0 if success, another value otherwise.

Definition at line 782 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildSpecificNeighborhood() [1/2]

int iPenaltyMarkovRandomField::BuildSpecificNeighborhood ( INTNB  a_voxel,
int  a_th 
)

◆ BuildSpecificNeighborhood() [2/2]

int iPenaltyMarkovRandomField::BuildSpecificNeighborhood ( INTNB  a_voxel,
int  a_th 
)

Definition at line 873 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CheckSpecificParameters() [1/2]

int iPenaltyMarkovRandomField::CheckSpecificParameters ( )
privatevirtual

A private function used to check the parameters settings specific to the child penalty.

This function is used to check that all parameters specific to the penalty are correctly set within allowed values. It is called by the CheckParameters() function. It is pure virtual so is implemented by children.

Returns
An integer reflecting the check status; 0 if no problem, another value otherwise.

Implements vPenalty.

◆ CheckSpecificParameters() [2/2]

int iPenaltyMarkovRandomField::CheckSpecificParameters ( )
privatevirtual

A private function used to check the parameters settings specific to the child penalty.

This function is used to check that all parameters specific to the penalty are correctly set within allowed values. It is called by the CheckParameters() function of the mother class. It is the implementation of the pure virtual function inherited from the abstract mother class vPenalty.

Returns
An integer reflecting the check status; 0 if no problem, another value otherwise.

Implements vPenalty.

Definition at line 408 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ComputeFirstDerivative() [1/2]

FLTNB iPenaltyMarkovRandomField::ComputeFirstDerivative ( FLTNB ap_image,
INTNB  a_voxel,
int  a_th 
)
virtual

Implements vPenalty.

Definition at line 1067 of file src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ComputeFirstDerivative() [2/2]

FLTNB iPenaltyMarkovRandomField::ComputeFirstDerivative ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
virtual

Implements vPenalty.

Definition at line 1071 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ComputePenaltyValue() [1/2]

FLTNB iPenaltyMarkovRandomField::ComputePenaltyValue ( FLTNB ap_image,
INTNB  a_voxel,
int  a_th 
)
virtual

Implements vPenalty.

Definition at line 983 of file src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ComputePenaltyValue() [2/2]

FLTNB iPenaltyMarkovRandomField::ComputePenaltyValue ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
virtual

Implements vPenalty.

Definition at line 985 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ComputeSecondDerivative() [1/2]

FLTNB iPenaltyMarkovRandomField::ComputeSecondDerivative ( FLTNB ap_image,
INTNB  a_voxel,
int  a_th 
)
virtual

Implements vPenalty.

Definition at line 1162 of file src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ComputeSecondDerivative() [2/2]

FLTNB iPenaltyMarkovRandomField::ComputeSecondDerivative ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
virtual

Implements vPenalty.

Definition at line 1166 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ComputeSimilarityFactors() [1/2]

int iPenaltyMarkovRandomField::ComputeSimilarityFactors ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
private

◆ ComputeSimilarityFactors() [2/2]

int iPenaltyMarkovRandomField::ComputeSimilarityFactors ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
private

Definition at line 917 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the caller graph for this function:

◆ GetNeighborhoodIndices() [1/2]

INTNB** iPenaltyMarkovRandomField::GetNeighborhoodIndices ( )
inline

Definition at line 180 of file include/optimizer/iPenaltyMarkovRandomField.hh.

Here is the call graph for this function:

◆ GetNeighborhoodIndices() [2/2]

public inline INTNB ** iPenaltyMarkovRandomField::GetNeighborhoodIndices ( )
inline
Returns
m2p_neighborhoodIndices

Definition at line 186 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetNeighborhoodMaxNbVoxels() [1/2]

INTNB iPenaltyMarkovRandomField::GetNeighborhoodMaxNbVoxels ( )
inline

◆ GetNeighborhoodMaxNbVoxels() [2/2]

public inline INTNB iPenaltyMarkovRandomField::GetNeighborhoodMaxNbVoxels ( )
inline
Returns
m_neighborhoodMaxNbVoxels

Definition at line 181 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

Here is the caller graph for this function:

◆ GetPotentialType() [1/2]

int iPenaltyMarkovRandomField::GetPotentialType ( )
inline

◆ GetPotentialType() [2/2]

public inline int iPenaltyMarkovRandomField::GetPotentialType ( )
inline
Returns
m_potentialType

Definition at line 165 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ GetProximityKernel() [1/2]

FLTNB* iPenaltyMarkovRandomField::GetProximityKernel ( )
inline

◆ GetProximityKernel() [2/2]

public inline FLTNB * iPenaltyMarkovRandomField::GetProximityKernel ( )
inline
Returns
mp_proximityKernel

Definition at line 170 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

Here is the caller graph for this function:

◆ GetSimilarityFactors() [1/2]

FLTNB* iPenaltyMarkovRandomField::GetSimilarityFactors ( int  a_th)
inline

◆ GetSimilarityFactors() [2/2]

FLTNB* iPenaltyMarkovRandomField::GetSimilarityFactors ( int  a_th)
inline

Definition at line 176 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

Here is the caller graph for this function:

◆ InitializeSpecific() [1/2]

int iPenaltyMarkovRandomField::InitializeSpecific ( )
privatevirtual

A private function used to initialize everything specific to the child penalty.

This function is used to initialize everything specific to the penalty that should be initialized. It is called by the Initialize() function. It is pure virtual so is implemented by children.

Returns
An integer reflecting the initialization status; 0 if no problem, another value otherwise.

Implements vPenalty.

◆ InitializeSpecific() [2/2]

int iPenaltyMarkovRandomField::InitializeSpecific ( )
privatevirtual

This function is used to initialize specific stuff to the child penalty.

It is called by the public Initialize() function from the mother.

Returns
An integer reflecting the initialization status; 0 if no problem, another value otherwise.

Implements vPenalty.

Definition at line 510 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LocalPreProcessingStep() [1/2]

int iPenaltyMarkovRandomField::LocalPreProcessingStep ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
virtual

Reimplemented from vPenalty.

Definition at line 962 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LocalPreProcessingStep() [2/2]

int iPenaltyMarkovRandomField::LocalPreProcessingStep ( int  a_tbf,
int  a_rbf,
int  a_cbf,
INTNB  a_voxel,
int  a_th 
)
virtual

Reimplemented from vPenalty.

◆ ReadConfigurationFile() [1/2]

int iPenaltyMarkovRandomField::ReadConfigurationFile ( const string &  a_configurationFile)
virtual

Implements vPenalty.

◆ ReadConfigurationFile() [2/2]

int iPenaltyMarkovRandomField::ReadConfigurationFile ( const string &  a_configurationFile)
virtual

Implements vPenalty.

Definition at line 171 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the call graph for this function:

◆ ReadOptionsList() [1/2]

int iPenaltyMarkovRandomField::ReadOptionsList ( const string &  a_optionsList)
virtual

Implements vPenalty.

Definition at line 396 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

◆ ReadOptionsList() [2/2]

int iPenaltyMarkovRandomField::ReadOptionsList ( const string &  a_optionsList)
virtual

Implements vPenalty.

◆ ShowHelpSpecific() [1/2]

void iPenaltyMarkovRandomField::ShowHelpSpecific ( )
privatevirtual

A function used to show help about the child module.

This function must describe what the penalty does and how to use it. It describes in details the different parameters of the penalty, and how to set them through the use of a configuration file or a list of options. It is pure virtual so is implemented by children. It is private because called by the public ShowHelp() function.

Implements vPenalty.

◆ ShowHelpSpecific() [2/2]

void iPenaltyMarkovRandomField::ShowHelpSpecific ( )
privatevirtual

A function used to show help about the child penalty.

This function must describe what the module does and how to use it. It describes in details the different parameters of the penalty, and how to set them through the use of a configuration file or a list of options. It is the implementation of the pure virtual function inherited from the abstract class vPenalty. It is called by the public ShowHelp() function.

Implements vPenalty.

Definition at line 97 of file code/src/optimizer/iPenaltyMarkovRandomField.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ m2p_helper_bowsher

INTNB** iPenaltyMarkovRandomField::m2p_helper_bowsher
private

Helper variable for Bowsher computations, first index on threads, second on neighborhood voxels, same ordering as neighboring kernel

Definition at line 269 of file include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m2p_neighborhoodIndices

INTNB ** iPenaltyMarkovRandomField::m2p_neighborhoodIndices
private

Neighborhood indices of a specific voxel. First index is on the threads, second one contains the list of the voxels in the neighborhood (as many as m_neighborhoodMaxNbVoxels). It follows strictly the same order than m2p_neighborhoodKernel, with the convention -1: out of image boundaries

Definition at line 274 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m2p_neighborhoodKernel

INTNB ** iPenaltyMarkovRandomField::m2p_neighborhoodKernel
private

Neighborhood of a virtual voxel of coordinates 0, 0, 0 without boundary. First index on neighboring voxels, second one on indexes

Definition at line 272 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m2p_similarityFactors

FLTNB ** iPenaltyMarkovRandomField::m2p_similarityFactors
private

Similarity factors of the neighborhood. First index on threads, second on neighboring voxels, as for m2p_neighborhoodIndices

Definition at line 264 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_neighborhoodBoxExcludeCorners

int iPenaltyMarkovRandomField::m_neighborhoodBoxExcludeCorners
private

In case of a box neighborhood, remove the corners as in some papers, or not (keep them by default)

Definition at line 270 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_neighborhoodBoxOrder

int iPenaltyMarkovRandomField::m_neighborhoodBoxOrder
private

In case of a box neighborhood, order of the box

Definition at line 269 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_neighborhoodMaxNbVoxels

INTNB iPenaltyMarkovRandomField::m_neighborhoodMaxNbVoxels
private

Maximum number of voxels in the neighborhood

Definition at line 271 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_neighborhoodShape

int iPenaltyMarkovRandomField::m_neighborhoodShape
private

Type of neighborhood (sphere, box)

Definition at line 267 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_neighborhoodSphereRadius

FLTNB iPenaltyMarkovRandomField::m_neighborhoodSphereRadius
private

In case of a spherical neighborhood, radius of the sphere

Definition at line 268 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_potentialGemanMcClureDelta

FLTNB iPenaltyMarkovRandomField::m_potentialGemanMcClureDelta
private

Parameter of the Geman and McClure's potential function

Definition at line 253 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_potentialGreenLogCoshDelta

FLTNB iPenaltyMarkovRandomField::m_potentialGreenLogCoshDelta
private

Parameter of the Green's log-cosh potential function

Definition at line 254 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_potentialHebertLeahyMu

FLTNB iPenaltyMarkovRandomField::m_potentialHebertLeahyMu
private

Parameter of the Hebert and Leahy's potential function

Definition at line 255 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_potentialHuberDelta

FLTNB iPenaltyMarkovRandomField::m_potentialHuberDelta
private

Parameter of the piecewise Huber potential function

Definition at line 256 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_potentialRelativeDifferenceGamma

FLTNB iPenaltyMarkovRandomField::m_potentialRelativeDifferenceGamma
private

Parameter of the relative difference potential function

Definition at line 252 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_potentialType

int iPenaltyMarkovRandomField::m_potentialType
private

Type of the potential function used (e.g. quadratic)

Definition at line 251 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_proximityCharacteristicDistance

FLTNB iPenaltyMarkovRandomField::m_proximityCharacteristicDistance
private

When the proximity factors are the exponential distance squared, this is the characteristic distance

Definition at line 259 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_proximityGaussianFWHM

FLTNB iPenaltyMarkovRandomField::m_proximityGaussianFWHM
private

When the proximity factors follow a Gaussian distribution, this is the FWHM in mm

Definition at line 253 of file include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_proximityType

int iPenaltyMarkovRandomField::m_proximityType
private

Type of weighting based on proximity (e.g. the inverse of the euclidian distance between voxels)

Definition at line 258 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_similarityBowsherNbVoxels

INTNB iPenaltyMarkovRandomField::m_similarityBowsherNbVoxels
private

The number of voxels kept from the Bowsher's threashold

Definition at line 265 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_similarityBowsherThreshold

FLTNB iPenaltyMarkovRandomField::m_similarityBowsherThreshold
private

Percentage of the neighborhood voxels for defining the most similar Bowsher neighbor voxels

Definition at line 263 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ m_similarityType

int iPenaltyMarkovRandomField::m_similarityType
private

Type of weighting based on similarity (e.g. joint entropy)

Definition at line 262 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ mp_neighborhoodNbVoxels

INTNB * iPenaltyMarkovRandomField::mp_neighborhoodNbVoxels
private

Number of voxels in a specific neighborhood. The index is on threads

Definition at line 273 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.

◆ mp_proximityKernel

FLTNB * iPenaltyMarkovRandomField::mp_proximityKernel
private

Precomputation of the proximity factors. Index is on neighboring voxels, as for m2p_neighborhoodKernel

Definition at line 260 of file code/include/optimizer/iPenaltyMarkovRandomField.hh.


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