3D立体成像技术通常用于焊线(bonding wire)检查,但存在许多挑战。其中挑战之一是难以使用块匹配算法来解决对应问题,因为某些焊线可能具有无纹理的水平结构。对于这样的对象,对应搜索可能失败或执行低效,因为算法的图像内容对于水平方向上的多个块是相同的。
图1:此示意图显示了成像系统组件的定位方式。
其他挑战还包括平行垂直线间距和阴影效应。
幸运的是,这些限制是有可能被克服的,要克服这些挑战,要从“优化用于焊线检查的3D立体成像系统”开始。
由于焊线直径可以从几微米到几百微米,光学分辨率高度依赖于应用。在选择用于焊线检查的合适的工业相机时,开发人员必须仔细考虑高度分辨率、高度范围和视场。
管灯通常是用于焊线检查应用的最合适的光源。这类装置提供均匀的空间照明,具有出色的时间稳定性和光谱稳定性,有助于保持图像的外观不随时间而改变。
为确保优化设置,用户必须考虑工作距离,从而将相机和光源安装在离扫描表面合适的距离(见图1)。将相机相对于表面法线(扫描线)以大约5°的角度安装(不是0°安装),使得物体在场景照明更强的位置处成像。
考虑到相机的倾斜角度,为了从中心角度精确测量高度,数值要乘以倾斜角的余弦值(见图2)。
图2:高度测量中相机倾斜角的校正可以用公式完成。
水平线及相应问题
立体成像应用使用基于相关的块匹配算法来求解对应关系。沿着传感器线,在水平方向上执行一对立体图像的左图像和右图像之间的对应搜索。
如前所述,在焊线检查中,对应搜索可能失败或执行低效,因为块匹配的图像内容对于水平方向上的多个块是相同的。
图3给出了该问题的图示,其中视差图像显示了非水平线的有效视差值(均匀灰色),以及水平线的可能错误或不相关的值(不均匀的灰色和黑色区域)。
图3:从视差图像中,我们看到非水平线的有效视差值(均匀灰色),以及水平线的可能错误或不相关的值(不均匀的灰色和黑色区域)。
该问题的三种可能解决方案包括:
•如果可能,在图像平面中旋转扫描对象,使水平线不会出现。
•如果可能,旋转相机使扫描线不垂直于扫描方向。
•使用图案投影仪在焊线上创建独特的图像纹理。
相对于扫描方向旋转相机,使得焊线和传感器线不再平行,有助于防止跨多个水平块的相同图像内容,并且避免潜在的不匹配或不相关的值。
使用线扫描相机时,由此旋转产生的剪切图像内容在进行2D几何测量时,可能会导致不准确。因此,使用几何校准和后续的图像后处理来补偿这种图像剪切是很重要的。小的旋转角度通常不会影响RGB图像质量。然而,随着角度的增加,可能需要单通道3D计算以减少红色、绿色和蓝色像素在传感器方向上移位,以及所得到的彩色图像的光学低通滤波的影响。
平行垂直线的间距
扫描场景中对象的高度范围通常确定用于3D计算工作所需要的平行垂直线的最小距离,该关系取决于基于相关的块匹配算法如何工作。
例如,图4显示了一对立体图像的左右图像。左侧相机图像中的红色标记区域显示给定窗口大小的参考块。块匹配算法在预定义的视差搜索范围内,搜索右侧相机图像中的对应块,并以黄色标识出来。
注意,中间图像中相当小的视差搜索范围仅包括一条线,即与参考块匹配的线。相反,右侧图像中显示了具有覆盖多条线的视差搜索范围的情况,其中块匹配可能由于模糊的对应而失败。
图4:图中显示了一对立体图像的左右图像。左相机图像中的红色标记区域是给定窗口大小的参考块。中间图像显示较小的视差搜索范围。右图显示了覆盖多条线的视差搜索范围。
因为视差搜索范围决定着3D测量的高度范围,并且通常取决于检查任务的感兴趣区域中的最小和最大物体高度,所以限制范围以确保唯一匹配并不总是可能的。对于此类应用,开发人员应考虑使用其他方法,例如在立体图像对中分割左右图像中的单独的焊线,以及通过标准2D图像处理算法标记相应的焊线。如果已知焊线或焊点的起点和终点的图像位置,则标记任务应该相对简单。
在此之后,可以创建仅包含焊线的人工图像对,其中在视差搜索范围内可以实现唯一匹配,并且将对应的视差图像合并到单一高度图中。使用这种方法的折衷是:增加计算需求,计算量会随着要求处理的单一焊线的图像对数量的增加而增加。加速系统的一种方法是:使用并行多个场景的分布式计算,以及每个场景至少一个GPU。
通过Chromasens 3D-API的rawImageCoordinatesTo3D功能,还可以从立体图像对的相应图像点计算3D坐标。基于此,通过使用图像处理来提取右侧和左侧立体图像的线上的对应点,可以解决垂直线问题。将得到的离散3D坐标合并到3D图像中焊线的全局表示也是可能的。通过使用该方法,基于特定应用图像处理的焊线探测方法,取代了基于图像相关的块匹配方法。
阴影效应
在扫描场景中,定向照明通常会导致焊线投射到背景上的阴影。管灯能减少这种效应。但是,在检查某些背景材料和焊线时,可能会残留阴影效应(见图5)。
当左侧图像和右侧图像的相关窗口的图像内容,在对应区域中包含不同的阴影时,这种阴影就会带来问题。在这种情况下,块不匹配并且相关值低。
图5:立体图像对的左侧图像和右侧图像中的阴影效应。
左右相机之间的透视差异使得阴影出现在立体图像的不同位置。改善场景照明(这并不总是可能的,并且可能需要复杂的定制光源)是克服该问题的一种方法。
减少相关窗口块尺寸是另一种方法。但是,有必要选择所需的最小尺寸,同时确保在相应的窗口中保留足够的独特纹理特征以进行3D计算。通过图像处理技术从立体图像对中去除阴影也是可能的,例如从包含阴影效应的背景中分离焊线。通过设置为零值删除背景区域后,Chromasens的3D API-through通过配置可以在计算中忽略这些区域。
虽然存在水平线、平行垂直线间距和阴影效应的挑战,为成功实现用于焊线检查应用的3D立体视觉系统带来了困难,但是也存在一些方法能够克服这些障碍。
文章来源:机器视觉网,犀灵机器人http://www.lingxixueyuan.com整理发布