zxhproj v 2.2
zxhproj

zxhTransformFields Class Reference

transform fields in each dimension as a transformations the dimension of image and voxels should be the same between the transform fields and reference images transform field images are gipl and unit of millbimetre transform point, if the point is not in the grid, then linear interpolation this transformation type can NOT be gradient type at this moment More...

#include <zxhTransformFields.h>

Inheritance diagram for zxhTransformFields:
zxhTransformBase zxhTransformFieldGradient zxhTransformIterateInverse zxhTransformIterateSquareRoot zxhTransformIterateInverseSDI zxhTransformFieldLogEuclidean zxhTransformFieldLogEuclideanOP

List of all members.

Public Member Functions

 zxhTransformFields (void)
 construct
 ~zxhTransformFields (void)
 destruct
virtual std::string GetTransformType ()
 return image type string in upper case, currently have GIPL, AFF, FFD
virtual zxhTransformBaseClone (zxhTransformBase *&pRet)
 if pRet==0, new one object in method of clone
virtual void TransformWorldToWorld (const float fVectorFromWorld[ImageDimensionMax], float fVectorToWorld[ImageDimensionMax])
virtual bool SetTransformFromStream (std::ifstream &ifs)
 read transformation from stream, donot care the comments {return false;}
virtual bool SetTransformIdentity ()
 set transformation as a identity transform
virtual std::string GetPrintString ()
virtual bool SaveTransform2Disc (std::string sFileNameWithoutExt)
 save to disc
virtual bool ElasticRegularizationDeformationFeild (float *sigmasmm)
 float sigmas is the isotropic standard deviation in mm
virtual bool SetTransformFieldsFromFiles (char *pFilename[ImageDimensionMax])
virtual bool SetTransformFieldsFromFiles (std::string pFilename[ImageDimensionMax])
virtual bool SetTransformFieldsFromFiles (std::string pFileX, std::string pFileY, std::string pFileZ)
 set transform feild gipl files for 3D
virtual bool CloneTransformFieldsFromImages (zxhImageDataT< float > *pX, zxhImageDataT< float > *pY, zxhImageDataT< float > *pZ)
 return same feild image same size dim
virtual bool CloneTransformFieldsFromToWorldImages (zxhImageDataT< float > *ptwX, zxhImageDataT< float > *ptwY, zxhImageDataT< float > *ptwZ)
 return same feild image same size dim
virtual zxhImageDataT< float > * GetTransformFieldImages ()
virtual
zxhImageModelingLinearT< float,
float > * 
GetTransformFieldModels ()
virtual int GetNoParameters ()
virtual float GetParameters (int index)
virtual bool SetParameterValue (int index, float f)
virtual bool SetTransformFieldsOrientationInfo (zxhImageInfo *pimageinfo)
virtual void NewTransformImages (int dim, const int *size, const float *spacing, const zxhImageInfo *pimageinfo)
virtual void ReleaseMemOfTransformImages ()
virtual float GetMaxLocalMagnitudeAndNormalisation (bool bNormalisationByLocalMagnitude)
 for optimization step length normalization
virtual bool ConvertTransformToField (zxhTransformBase *pt, const zxhImageInfo *pimageinfo)

Protected Member Functions

bool CheckTranformFieldSameDimSizeSpacing () const

Protected Attributes

std::string m_strTransformFieldImageFiles [ImageDimensionMax]
zxhImageDataT< float > m_pimgTransformFields [ImageDimensionMax]
zxhImageModelingLinearT< float,
float > 
m_pmodelTransformFields [ImageDimensionMax]
 should be SameDimSizeSpacing and orientation

Detailed Description

transform fields in each dimension as a transformations the dimension of image and voxels should be the same between the transform fields and reference images transform field images are gipl and unit of millbimetre transform point, if the point is not in the grid, then linear interpolation this transformation type can NOT be gradient type at this moment

1st May 2007 the dimension of image and voxels between transform fields and test/ref image don't have to be the same


Member Function Documentation

int zxhTransformFields::GetNoParameters ( ) [virtual]

virtual bool Multiply(float);

Implements zxhTransformBase.

std::string zxhTransformFields::GetPrintString ( void  ) [virtual]

description of the transformation type(not gradient), can be saved to disk as a file and read by SetTransformFromFile {return "have not defined";}

Reimplemented from zxhTransformBase.

bool zxhTransformFields::SetParameterValue ( int  index,
float  f 
) [virtual]

set transformation parameter value, if the transformation model need pre-computation from parameters for efficiency such as affine, then re-implement this function to call the pre-computation method after set the value

Implements zxhTransformBase.

bool zxhTransformFields::SetTransformFieldsFromFiles ( char *  pFilename[ImageDimensionMax]) [virtual]

set transform field gipl files set dimension first before using this method

bool zxhTransformFields::SetTransformFromStream ( std::ifstream &  ifs) [virtual]

read transformation from stream, donot care the comments {return false;}

1) use file path in FLD 2) use folder path of FLD plus file name in FLD 3) use file name without .FLD plus _?.imagetype

1) use file path in FLD

2) use folder path of FLD plus file name in FLD

3) use file name without .FLD plus _?.imagetype

Reimplemented from zxhTransformBase.


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs