• HALCON 的 3D 基元拟合(第 111 页第 4.5 节)可拟合基元 如圆柱体、球体、或平面的3D 形状,进入 3D 场景,即进入一组可用作 3D 对象模型的 有效3D 点,这些点可以是通过 3D 重建方法(如立体或光片)获得,然后进行 3D 分割。
• 基于2D模型标定的透视匹配方法可定位图像中有透视畸变的平面目标。特别是,它会根据2D模型自动搜索图像中对应的对象,并确定其3D位姿。该模型通常是训练模型图像获得的。可用的方法是通过轮廓来描述模型,标定透视可变形匹配(114页上的第4.6节)和基于描述符的标定匹配,通过一组区分点来描述模型,其被称为“兴趣点”(114页上的第4.7节)。
• 圆形姿态评估(第 115 页第 4.8 节)和矩形姿态估(第 4.9 页第 115 节)116) 通过圆形和矩形的透视畸变来确定含圆形和/或矩形平面物体的位姿,方法相当方便。
如何检查 3D 对象
3D物体的检测可以通过不同的方式进行。如果在指定平面上的满足检查就足够了,
您可以使用相机标定与 2D 检测一起使用,如第 3 页第 59 章所述。
如果需要检查 3D 对象的表面无法检查或无法缩减到单个指定平面,则可以将 3D重建与3D检测结合的方法使用。
也就是说,通过 3D 重建,提取表面的坐标点来获取目标物体的曲面或高度信息。比如,通过将其与参考点进行比较,来比较或检测目标对象的表面或高度信息。
图1.1为您提供了一个概述的方法,可用于三维位置识别和3D检查之方法。关于3D对象模型的介绍,请参考38页的2.3节。
要确定任意物体表面上的点,可采用以下方法:
• HALCON 的双目(立体)视觉功能(第 5 页第 117 章)允许从不同角度适当地获取基于两个相机(双目立体)或更多相机(多目视图立体)图像,并提取3D坐标点。
使用多目视觉,您可以在 3D 环境中重建 3D 对象,特别是可以从不同侧面去重建它。
• 带有光片的激光三角测量(第 6 页第 147 章)可以获得物体的高度轮廓。请注意,除了单个摄像机外,还需要其他硬件,特别是激光线投影仪和具有一定角度的面阵相机,以及相对于相机或激光移动载体(运动平台)。
• 使用聚焦深度 (DFF)(第 7 页第 163 章),可以使用由单个远心相机采集不同焦距位置的图像,获得物体的高度分布。为了改变焦点位置,需要平移运动平台或线性模组等额外的硬件,如请注意,根据焦点位置的方向的修改,结果对应于高度图像或距离图像。高度图像包含特定对象或测量平面与物体点之间的距离,而距离图像通常包含相机和物体点之间的距离。两者都可以称为深度图像或“Z 图像”。
• 使用光度立体(参考手册,“3D 重建”一章。Photometric Stereo“)
可以使用单个远心相机采集的图像来获得高度图像,但至少需要三个知道与相机的空间关系的不同远心照明源。注意高度图像仅反映相对高度,即使用光度立体无需进行标定的 3D 重建。• 除了 HALCON 提供的 3D 重建方法外,您还可以通过以下方式,用特定的 3D 传感器获取 3D 信息,如飞行时间 (TOF) 相机或 使用结构光的特定设置。这些摄像机通常经过标定并返回X、Y和Z图像
| | | | | | | | | | | | | | | 3D对象模型,X,Y,X方位图像或逼近特定的视觉差图像 | | | | | | | | | | | | |
如何将3D视觉扩展到机器人视觉?
3D视觉的一个典型应用领域是机器人视觉,即使用机器人视觉的结果来引导机器人作业。在这样的应用中,您必须执行额外的标定:所谓的手眼标定,它确定摄像机坐标与机器人坐标之间的关系(第8章,175页)。同样,这种标定必须只执行一次(离线)。其结果允许您快速将机器视觉结果从摄像头坐标转换成机器人坐标。可能需要额外完成哪些任务?
如果要检测对象的尺寸太大,相机的视野无法用一幅图像覆盖目标的既定范围,则可以使用多个相机取多张图像,每张图像只覆盖了一部分的对象,可以拼接合并成一个更大的图像。这是可以做到的,无论是基于非常高精度标定的相机设置(第9章191页)或高度自动化的任意甚至变化的图像配置(205页第10章)。
如果图像显示出非平面物体表面引起的不同于常见透视失真或镜头畸变的失真,可以应用所谓的网格校正来校正图像(上的第11章第219页) |