find_marks_and_pose — Extract the 2D calibration marks from the image and calculate initial values for the exterior camera parameters.
从图像中提取2D校准标记并计算外部摄像机参数的初始值。
从图像中提取2D校准标记,并计算外部摄像机参数的初始值。
find_marks_and_pose 用于确定后续相机校准的必要输入数据(参见calibrate_cameras or camera_calibration):
首先,提取并排序输入图像CalTabRegion区域内的校准标记的2D中心点[RCoord,CCoord]。
其次,对外部摄像机参数(StartPose)进行粗略估计,
即,校准板相对于照相机坐标系的3D姿态(=位置和方向)(有关3D姿态的更多信息,请参阅create_pose)。
在输入图像图像中,边缘检测器被应用到区域CalTabRegion(参见edges_image, mode ‘lanser2’),
这可以通过应用算子find_caltab.来找到。
这种边缘检测的滤波器参数可以通过Alpha来调节。
使用较小的Alpha值来获得更强的平滑效果。
在边缘图像中搜索闭合轮廓:闭合轮廓的数目必须与校准板描述文件CalTabDescrFile 中描述的校准标记的数目相对应,
并且轮廓必须是椭圆形的。
丢弃比MinContLength短的轮廓,就像包围直径大于MaxDiamMarks(例如,校准板的边界)的区域的轮廓一样。
对于轮廓的检测,在边缘检测器的结果幅值上应用阈值算子。
选择具有高振幅的所有点(即,标记的边界)。
首先,将阈值设置为StartThresh。
如果搜索闭合轮廓或连续姿态估计失败,则通过DeltaThresh将该阈值连续降低到最小值MinThresh。
每一个找到的轮廓细化亚像素精度(见edges_sub_pix),并随后由椭圆近似。
这些椭圆的中心点表示校准标记中心点的期望2D图像坐标[RCoord,CCoord]的良好近似。
这两个元组中的值的顺序必须对应于校准板描述文件CalTabDescrFile中校准标记的3D坐标的顺序,
因为这修复了提取的图像标记和已知的模型标记之间的对应关系(由caltab_points给出)!
如果在板的角上用板描述文件定义三角形方向标记(见gen_caltab),
将检测该标记,并且以相对于所定义的板坐标系的(重心)负象限中的角标记开始的行主次序返回点顺序。否则,
如果没有定义方向标记,则中心点的顺序为从图像中的左上角标记开始的行主要顺序。
根据每个校准标记的椭圆参数,
最后对外部摄像机参数进行了粗略估计。为此目的,使用提取的图像标记和已知的模型标记之间的固定对应关系。
估计StartPose描述了根据算子camera_calibration的要求在照相机坐标系中校准板的姿态。
Parameters
Image
Input image.
CalTabRegion
Region of the calibration plate. 校准板的区域。
CalTabDescrFile
File name of the calibration plate description. 校准板的文件名说明。
Default value: ‘caltab.descr’
List of values: ‘caltab.descr’, ‘caltab_10mm.descr’, ‘caltab_30mm.descr’, ‘caltab_100mm.descr’, ‘caltab_200mm.descr’
File extension: .descr
StartCamParam
Initial values for the interior camera parameters.内部摄像机参数的初始值。
Number of elements: ((StartCamParam == 8) || (StartCamParam == 11)) || (StartCamParam == 12)
StartThresh
Initial threshold value for contour detection.用于轮廓检测的初始阈值。
Default value: 128
List of values: 80, 96, 112, 128, 144, 160
Restriction: StartThresh > 0
DeltaThresh
Loop value for successive reduction of StartThresh.循环值,用于连续减少启动阈值。
Default value: 10
List of values: 6, 8, 10, 12, 14, 16, 18, 20, 22
Restriction: DeltaThresh > 0
MinThresh
Minimum threshold for contour detection.轮廓检测的最小阈值。
Default value: 18
List of values: 8, 10, 12, 14, 16, 18, 20, 22
Restriction: MinThresh > 0
Alpha
Filter parameter for contour detection, see edges_image.用于轮廓检测的滤波参数,参见edges_image.
Default value: 0.9
Suggested values: 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1
Typical range of values: 0.2 ≤ Alpha ≤ 2.0
Restriction: Alpha > 0.0
MinContLength
Minimum length of the contours of the marks.标记轮廓的最小长度。
Default value: 15.0
Suggested values: 10.0, 15.0, 20.0, 30.0, 40.0, 100.0
Restriction: MinContLength > 0.0
MaxDiamMarks
Maximum expected diameter of the marks.标记的最大预期直径。
Default value: 100.0
Suggested values: 50.0, 100.0, 150.0, 200.0, 300.0
Restriction: MaxDiamMarks > 0.0
RCoord
Tuple with row coordinates of the detected marks.具有检测到的标记的行坐标的元组。
CCoord
Tuple with column coordinates of the detected marks. 具有检测到的标记的列坐标的元组。
StartPose
Estimation for the exterior camera parameters.外部摄像机参数的估计。
Number of elements: 7