Leaper Vision Toolkit
中文 / English 2.x
Public 成员函数
ILCalibFFD接口 参考

该接口对应一个 FFD 相机标定模型。 更多...

类 ILCalibFFD 继承关系图:
ILCalib ILObject LCalibFFD

Public 成员函数

void SetFFDGrid (int cols, int rows)
 
- Public 成员函数 继承自 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 成员函数 继承自 ILObject
ILObjectCopy ()
 
LPVErrorCode Load (LString filename)
 
void Reset ()
 
LPVErrorCode Save (LString filename)
 
BOOL Valid ()
 

额外继承的成员函数

- 属性 继承自 ILCalib
double CalibError [get]
 标定结果的反投影误差, 基于图像坐标与其对应的物理坐标根据标定结果反投影回图像坐标系的坐标之间的差,按该公式定义:
\( \sqrt{ \frac{1}{n} \sum_{i=0}^{n} distance(p^{image}_i, p^{proj}_i)^2 } \)
 
LPVFixImageMode FixImageMode [get, set]
 用于 FixImage() 指定图像修正的模式。 更多...
 
double FixImageOffsetX [get, set]
 修正图像 FixImage() 时使用的 x 方向偏移量,以像素为单位,与 FixImageOffsetY 同时使用。
默认设置为 0,即无 x 方向偏移。修改该数值可移动修正图像中有效像素的位置,如将检测区域移动到修正图像的中心附近。
 
double FixImageOffsetY [get, set]
 修正图像 FixImage() 时使用的 y 方向偏移量,以像素为单位,与 FixImageOffsetY 同时使用。
默认设置为 0,即无 y 方向偏移。修改该数值可移动修正图像中有效像素的位置,如将检测区域移动到修正图像的中心附近。
 
double FixImageScale [get, set]
 修正图像 FixImage() 时使用的缩放比例。
默认设置为 1,即无缩放。修改该数值可放大或缩小修正后的图像。
 
LPVInterpolationMethod InterpolationMethod [get, set]
 修正图像时所使用的插值算法,默认配置为 LPVInterCubic
 
LPVCalibModel Model [get]
 相机标定模型
 
BOOL UseCache [get, set]
 是否开启缓存,缓存数据用于加速图像矫正过程,但占用更多的内存。这个配置默认关闭。
 
- 属性 继承自 ILObject
LString Name [get, set]
 对象的名称,默认为空。
大多数情况下,LPV 算法类并不使用这个名称。
ILDrawable::SetDrawName() 启用,该名称将被绘制在对象的附近 更多...
 

详细描述

该接口对应一个 FFD 相机标定模型。

在 FFD 标定模型中,使用自由形变网格来描述图像和物理坐标之间的映射关系。形变网格为参数化的自由曲面,基于提供的图像和物理点对优化得到。
该模型适应于任意的畸变类型。

使用这个接口,需要创建一个 LCalibFFD 对象。

示例代码

成员函数说明

◆ SetFFDGrid()

void SetFFDGrid ( int  cols,
int  rows 
)

设置 FFD 网格的尺寸。默认设置为 \( 16 \times 16 \) 的网格。

参数
[in]colsFFD 网格的横向尺寸,取值范围为 2 ~ 64
[in]rowsFFD 网格的纵向尺寸,取值范围为 2 ~ 64