HALCON高级篇:单个相机的尺寸测量

[复制链接]
查看76238 | 回复0 | 2024-3-15 10:28:39 | 显示全部楼层 |阅读模式
点击上方“新机器视觉”,选择加"星标"或“置顶”

重磅干货,第一时间送达


转自:AI图像

用单个相机在指定平面上的尺寸测量

在HALCON中很容易从图像中获得在世界坐标中的非变形测量。一般情况下,如果相同的物体在同一时刻,在不同的空间位置下,用相机拍摄两个或更多的图像,才能完成这样的测量任务。这就是所谓的立体视觉方法。

在工业检测中,我们通常仅仅有一个可用的相机,时间的约束不允许我们去运用在立体图像上去找对应点这样昂贵的处理(所谓的立体匹配处理)。

然而,对于通过远心镜头和位于已知平面的物体获取的物体,其是有可能获得在世界坐标系统的测量的。例如,对于针孔相机,在一个拼接线上。这两个任务可以通过一条光线与平面的相互作用来很好的解决。

通过这样,是有可能完成对在一个平面的物体测量,甚至当平面相对于光轴是倾斜的时候。仅仅的先决条件是相机已经被标定。在HALCON中,标定过程是很容易。

最容易的方法去执行标定就是利用HALCON的标准标准版。你仅仅需要擦剂几张标定板的图像(如图1所示),这里,在图像上,标定板已经被直接放在了测量平面上。



图1: HALCON标定板

第一个例子

下面的程序展示了去标定相机,并利用标定结果去转换测量到3D世界坐标。

首先,我们制定标定的一般参数。



然后,标定板的图像被读取。借助算子find_calib_object,标定板被搜索,标志点的轮廓和中心被提取到,标定板的位姿被估计到。获取的信息被存储在标定的数据模型中。



现在,我们用算子calibrate_camera来执行实际的标定。



随后,我们可以访问标定结果,例如相机内参和在参考图像下标定板的位姿。



位姿被用来作为相机外参,例如在相机坐标中3D世界坐标系统的位姿。在例子中,世界坐标系统被定位在尺子上(见图2).为了抵消标定板的厚度,位姿通过一个对应的值而移动。



现在,我们执行了测量。为此,我们通过标定板,获得了一种没有遮挡尺子的额外图像:



借助相机的内参和外参,通过算子image_points_to_world_plane就可以将测量结果转换到3D世界坐标。





图2:在标定以后,尺子上的标记点被测量,借助标定结果,测量被转化到3D世界坐标中


End


声明:部分内容来源于网络,仅供读者学术交流之目的。文章版权归原作者所有。如有不妥,请联系删除。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则