zxhproj v 2.2
zxhproj
|
transformation type: Free form deformation file extension name:.FFD, currently save as text file, will change to imagedata files in the future zxhtodo todo More...
#include <zxhTransformFFD.h>
Public Member Functions | |
zxhTransformFFD (void) | |
constructor | |
virtual std::string | GetTransformType () |
virtual std::string | GetPrintString () |
base-> size[i] each line->spacing[i] each line->offsets_of_controlpoints[t][z][y] each line | |
virtual zxhTransformBase * | Clone (zxhTransformBase *&pRet) |
virtual bool | ComputeMetricGradient (zxhMetricBase *pMetric, zxhTransformBase *pInfluence=0) |
virtual bool | ComputeMetricGradientOnDirection (zxhMetricBase *pMetric, zxhTransformBase *pInfluence, zxhImageModelingBaseT< float, float > *pDirectionFFDsNVModelRef) |
virtual bool | PrePostComputeMetricGradient (zxhMetricBase *pMetric, zxhTransformBase *pInfluence, bool isPre) |
transformation type: Free form deformation file extension name:.FFD, currently save as text file, will change to imagedata files in the future zxhtodo todo
zxhTransformBase * zxhTransformFFD::Clone | ( | zxhTransformBase *& | pRet | ) | [virtual] |
Reimplemented from zxhTransformFFDBase.
bool zxhTransformFFD::ComputeMetricGradient | ( | zxhMetricBase * | pMetric, |
zxhTransformBase * | pInfluence = 0 |
||
) | [virtual] |
methods for gradient type objects computer gradient, influence control status for optimisation if infl==0, then use m_fDifferentialStep if pDifferentialStep==0,then using m_fDifferentialStep
Implements zxhGradientBase.
bool zxhTransformFFD::ComputeMetricGradientOnDirection | ( | zxhMetricBase * | pMetric, |
zxhTransformBase * | pInfluence, | ||
zxhImageModelingBaseT< float, float > * | pDirectionFFDsNVModelRef | ||
) | [virtual] |
the control point only move along the normal vector of the surface image in the source image space 1) every step optimisation, the FFDs needs to be identity ComputeMetricGradientOnDirection, the NVc is computed from original NVo Using $NV_c = Normalise( NV_o Jacobian(m_pConcatenatedTransformsByRegridding) )$ 2) after each optimisation step, in Optimizer::AdjustParameters() regridding concatenate newly optimised FFDs to m_pConcatenatedTransformsByRegridding
virtual std::string zxhTransformFFD::GetTransformType | ( | ) | [inline, virtual] |
Reimplemented from zxhTransformFFDBase.
bool zxhTransformFFD::PrePostComputeMetricGradient | ( | zxhMetricBase * | pMetric, |
zxhTransformBase * | pInfluence, | ||
bool | isPre | ||
) | [virtual] |
adjust influence and differential virtual bool ComputeAdjustment( zxhTransformFFDBase * pInfl ) {return false; } ;
Reimplemented from zxhGradientFFDBase.