zxhproj v 2.2
zxhproj
|
ForwardTransformToRefGrid: DRAW sampling FillInFindInverse: one closest per quadrant DistanceWeightInterpolateByNeighbours: inv(s) = s + sum w(si)(ti-si) More...
#include <zxhTransformIterateInverse.h>
Public Member Functions | |
zxhTransformIterateInverse () | |
construction | |
virtual | ~zxhTransformIterateInverse () |
deconstruct | |
virtual void | SetTransform (zxhTransformBase *p) |
virtual void | NewInverseTransformImages (int dim, const int *size, const float *spacing, const zxhImageInfo *pimageinfo) |
for store inverse transformation fields | |
virtual void | SetRoi (int dim, int *from, int *to) |
for compute the range in test coordinate | |
virtual bool | ComputeInverseByDistanceInterpolate () |
percentage of accurate points | |
virtual bool | Evaluate () |
virtual void | SetJacWeighting (float f) |
virtual float | GetJacWeighting () |
virtual void | TransformWorldToWorld (const float fVectorFromWorld[ImageDimensionMax], float fVectorToWorld[ImageDimensionMax]) |
Protected Member Functions | |
virtual bool | ForwardTransformToRefGrid (int *roiFrom, int *roiTo, zxhImageDataT< float > *imgFindInverseDis, zxhImageDataT< float > *imgFindInverseCoX, zxhImageDataT< float > *imgFindInverseCoY, zxhImageDataT< float > *imgFindInverseCoZ) |
virtual int | FillInFindInverse (zxhImageDataT< float > *imgFindInverseDis, zxhImageDataT< float > *imgFindInverseCoX, zxhImageDataT< float > *imgFindInverseCoY, zxhImageDataT< float > *imgFindInverseCoZ) |
virtual void | DistanceWeightInterpolateByNeighbours (zxhImageDataT< float > *imgFindInverseDis, zxhImageDataT< float > *imgFindInverseCoX, zxhImageDataT< float > *imgFindInverseCoY, zxhImageDataT< float > *imgFindInverseCoZ) |
virtual void | ComputeJacxyzForwardVoxel (float *Jacxyz, zxhTransformBase *pTransform, float *phyco, float *phycoTo, float *spacing) |
virtual void | MapToGrid8Neighbour (float *WorldFrom, float *WorldTo, float *gridcoTo, int i, int j, int k, zxhImageDataT< float > *pImgTemp, zxhImageDataT< float > *imgFindInverseDis, zxhImageDataT< float > *imgFindInverseCoX, zxhImageDataT< float > *imgFindInverseCoY, zxhImageDataT< float > *imgFindInverseCoZ) |
virtual void | ComputeSamplingSpacing (float *JacSpacing, float *Jacxyz, float *spacing) |
virtual void | ComputeSamplingSpacingByProduct (float *JacSpacing, float *Jacxyz, float *spacing) |
using Product, use 117seconds and ic of R85 warping_index mean std max min = 0.0281921 0.0202759 0.0195877 0.184309 0 | |
virtual void | ComputeSamplingSpacingByMaximalPoints (float *JacSpacing, float *Jacxyz, float *spacing) |
using Maximal, use 48 seconds and ic of R85 warping_index mean std max min = 0.0371167 0.0280054 0.0243587 0.19106 0 | |
virtual void | DistanceWeightInterpolationOct (float afInterpolateResult[], float *afInterpolateSource, float *afDisSquared) |
Protected Attributes | |
zxhTransformBase * | m_pTransform |
int | m_aiRoi [2][ImageDimensionMax] |
roi region | |
float | m_fIterateLength |
currently constant 0.1 | |
float | m_fExponent |
int | m_iFillRange [2] |
float | m_fJacWeighting |
ForwardTransformToRefGrid: DRAW sampling FillInFindInverse: one closest per quadrant DistanceWeightInterpolateByNeighbours: inv(s) = s + sum w(si)(ti-si)
bool zxhTransformIterateInverse::ComputeInverseByDistanceInterpolate | ( | ) | [virtual] |
percentage of accurate points
only for 3D, displacement is better than interpolating from WorldFrom?
Reimplemented in zxhTransformIterateInverseSDI.
void zxhTransformIterateInverse::DistanceWeightInterpolateByNeighbours | ( | zxhImageDataT< float > * | imgFindInverseDis, |
zxhImageDataT< float > * | imgFindInverseCoX, | ||
zxhImageDataT< float > * | imgFindInverseCoY, | ||
zxhImageDataT< float > * | imgFindInverseCoZ | ||
) | [protected, virtual] |
interpolate based on displacement is better than on From when the scatter points are not complete or from further points
fill in from neighbour
Reimplemented in zxhTransformIterateInverseSDI.
bool zxhTransformIterateInverse::ForwardTransformToRefGrid | ( | int * | roiFrom, |
int * | roiTo, | ||
zxhImageDataT< float > * | imgFindInverseDis, | ||
zxhImageDataT< float > * | imgFindInverseCoX, | ||
zxhImageDataT< float > * | imgFindInverseCoY, | ||
zxhImageDataT< float > * | imgFindInverseCoZ | ||
) | [protected, virtual] |
imgFindInverseCo? are the World_co of the 8 points in target image space imgFindInverseDis are the distance of the 8 points in source image space
Reimplemented in zxhTransformIterateInverseSDI.
void zxhTransformIterateInverse::TransformWorldToWorld | ( | const float | fVectorFromWorld[ImageDimensionMax], |
float | fVectorToWorld[ImageDimensionMax] | ||
) | [virtual] |
Reimplemented from zxhTransformFields.