Leaper WaferScan Toolkit
中文 / English 2.x
Public Member Functions
ILCalibFFD Interface Reference

This interface provide functionalities of the FFD camera model. More...

Inheritance diagram for ILCalibFFD:
ILCalib ILObject LCalibFFD

Public Member Functions

void SetFFDGrid (int cols, int rows)
 
- Public Member Functions inherited from ILCalib
LPVErrorCode AddPoint (double imagePointX, double imagePointY, double worldPointX, double worldPointY)
 
LPVErrorCode AddPoints (ILCalibPointPairs *pointPairs)
 
LPVErrorCode Calibrate ()
 
LPVErrorCode FixImage (ILImage *image, ILImage *fixedImage)
 
LPVErrorCode GenPostTransformMatrix (ILCalibPointPairs *pointPairs)
 
void ImageToWorld (double imagePointX, double imagePointY, double *worldPointX, double *worldPointY)
 
BOOL IsCalibrated ()
 
void SetImageSize (int w, int h)
 
void SetPostTransform (double offsetX, double offsetY, double deltaAngle)
 
void SetPostTransformMatrix (ILTransform *tf)
 
void SetPostTransformMatrix23 (LMatrix23 *data)
 
void SetPostTransformMatrix33 (LMatrix33 *data)
 
void WorldToImage (double worldPointX, double worldPointY, double *imagePointX, double *imagePointY)
 
- Public Member Functions inherited from ILObject
ILObjectCopy ()
 
LPVErrorCode Load (LString filename)
 
void Reset ()
 
LPVErrorCode Save (LString filename)
 
BOOL Valid ()
 

Additional Inherited Members

- Properties inherited from ILCalib
double CalibError [get]
 The overall RMS re-projection error for the calibration, calculated based on the distances between the image points and the projected (using the optimized calibration matrices) world points. It's defined as:
\( \sqrt{ \frac{1}{n} \sum_{i=0}^{n} distance(p^{image}_i, p^{proj}_i)^2 } \).
 
LPVFixImageMode FixImageMode [get, set]
 The mode to fix image used in FixImage(). More...
 
double FixImageOffsetX [get, set]
 The x-coordinate offset (in pixel unit) of the fixed image used in FixImage(), used together with FixImageOffsetY.
By default, it's 0, means no offset in x-coordinate. You may change the offset to translate the fixed image, for example move the inspect region to the center of the fixed image.
 
double FixImageOffsetY [get, set]
 The y-coordinate offset (in pixel unit) of the fixed image used in FixImage(), used together with FixImageOffsetX.
By default, it's 0, means no offset in y-coordinate. You may change the offset to translate the fixed image, for example move the inspect region to the center of the fixed image.
 
double FixImageScale [get, set]
 The scale of the fixed image used in FixImage().
By default, it's 1, means no scale. You may change the scale factor to zoom in/out the fixed image.
 
LPVInterpolationMethod InterpolationMethod [get, set]
 The interpolation method used in fix the image for undistortion (and untilt). By default, it's LPVInterCubic.
 
LPVCalibModel Model [get]
 The calibration model.
 
BOOL UseCache [get, set]
 Whether to make use of cache which is used to speed-up the process of the image undistortion (and untilt), but consume more memory. By default, it's off.
 

Detailed Description

This interface provide functionalities of the FFD camera model.

In the FFD camera model, the calibration is represented as a free-form deformation grid from the image to world coordinates and also the reversed. Deformation grid is based on the parametric surface optimized from the provide image and world point pairs.
This model support all kinds of distortion.

To use this interface, you should create a LCalibFFD object.

Example Code

Member Function Documentation

◆ SetFFDGrid()

void SetFFDGrid ( int  cols,
int  rows 
)

Set the size of FFD grid. By default, it's a \( 16 \times 16 \) grid.

Parameters
[in]colsThe width of the FFD grid, in 2 ~ 64
[in]rowsThe height of the FFD grid, in 2 ~ 64