结合加速鲁棒特征点与边缘检测的双相机标定物体尺寸测量
2023-07-17AZAZKhan江鹏飞徐婉晴李金屏
AZAZ Khan, 江鹏飞, 徐婉晴, 李金屏
(济南大学 a. 信息科学与工程学院, b. 山东省网络环境智能计算技术重点实验室,c.“信息处理与认知计算”山东省高校重点实验室,山东 济南 250022)
目前传统的测量方法是利用量规、 电子夹具等工具进行检测,这些方法具有劳动密集型和耗时长的特点,并且对工件的测量存在误差和延迟。许多行业采用计算机视觉技术对工件进行尺寸测量以简化流程,应用领域涵盖建筑、汽车、 物流、 电子等行业[1-2]。
针对各种工业应用,科研人员提出了许多基于计算机视觉的物体尺寸测量方法,主要分为模式识别方法与深度学习方法。模式识别方法又可以根据数据来源分为以下3类: 1)三维点云与模式识别相结合[3-4],即利用三维点云提取物体三维信息坐标,然后结合模式识别处理误差计算物体尺寸,例如,文献[3]中设计了一种轴类零件尺寸测量系统,包括图像采集、图像去噪和边缘检测,利用Canny算子提取工件边缘,但是该方法存在精度过低和目标检测难以定位的问题。 2)基于线结构光视觉传感器与模式识别相结合[5],例如文献[5]中利用3个激光线光源和一台相机采集图像,通过拟合椭圆测量圆钢的直径、圆度和直线度,该方法解决了目标定位问题,但依然存在较大的测量误差。 3)基于双目相机与传统模式识别相结合[6-8],即利用双目相机获取图像数据并进行分析处理,测量工件的尺寸,例如文献[8]中提出了一种基于局部线角轮廓分割的平面零件测量方法,提取出零件的亚像素轮廓,能够测量复杂零件的多种尺寸。
深度学习方法利用深度学习定位物体位置,然后利用激光雷达计算物体尺寸,例如文献[9]中提出了一种线结构光视觉系统来测量盒子的参数。采用激光三角剖分和深度学习方法,利用裁剪-整体嵌套边缘检测模型和Hough变换关键点计算物体尺寸,虽然精度得到了提升,但是存在硬件成本过高的问题。
上述研究是针对大数据集和特殊设备进行测量的特定情况,但是,工业测量亟需低成本且易于实现的方法来解决尺寸测量问题。为了实现低成本、高精确度和快速处理的工件测量目标,本文中提出了一种双相机标定的物体尺寸测量方法(简称双机位标定法),包括图像采集、图像预处理、目标定位、边缘检测和尺寸测量5个步骤。研究内容包括:利用低分辨率相机,简化检测过程中的计算量,提高检测效率;新增辅助摄像头实时更新测量距离,解决目标相对相机位置发生变化的问题;由于边缘检测精度主要受限于光照环境影响,因此设计了环形照明模块持续补光,确保工件边缘的稳定性,并且使用亚像素双线性插值方法[10]将图像的大小增大至原图像的1.7倍。高分辨率相机价格昂贵,为了满足测量精度要求,采用低成本的插值方法来提高图像分辨率;统计工件对应宽度和长度之间的像素,将像素数据代入真实长度比例系数模板中,以确定具体物体的尺寸。
1 视觉尺寸测量基本原理
1.1 像素与真实长度比例系数
图1 相机俯视拍摄示意图
1.2 图像特征提取
为了提取物体的精细边缘,使用图像增强方法,在图像的低亮度区域和高亮度区域使用灰度级拉伸1%的数据饱和度来突出物体的关键信息。同时,将高斯(Gaussian)平滑(模糊)方法(一种二维卷积算子,通过高斯函数与图像卷积变换实现)用于模糊图像以减少噪声。使用高斯分布[11]的二维图像可以获得合适的核,核函数G(x,y)公式为
(1)
式中:x、y为平面直角坐标;σ为高斯分布的标准差。在x、y方向上执行卷积,可以使用标准差来调整平滑度,更大的标准差需要较大的卷积核。
1.3 加速鲁棒特征
加速鲁棒特征(speeded-up robust features,SURF)[12]是一种新的特征描述符和检测器,主要用于识别和图像分类等任务。其特征检测基于Hessian矩阵,特征描述基于Haar小波。该算法分为3个关键步骤,即特征点检测、局部特征描述和特征点匹配。图像特征匹配的任务可以通过SURF来完成,SURF首先检测2幅图像中的特征,然后匹配这些特征,从而成功地完成模板匹配任务。
1.4 Canny边缘检测
Canny边缘检测算法是一种广泛用于边缘特征提取任务的新方法,该算法包含4个步骤。
步骤1高斯滤波以去除噪声和虚假边缘。采用卷积核大小为(2k+1)×(2k+1)的卷积运算。高斯滤波器的计算公式为
(2)
式中:Hij为高斯滤波器;i、j分别为图像像素横坐标、 纵坐标;k为内核大小。大卷积核滤波器具有较好的降噪性能。大多数情况下,尺寸为5×5卷积内核是最佳选择。
步骤2通过查找水平和垂直方向的一阶导数,使用Sobel核计算梯度,计算公式为
(3)
θ=arctan 2(Gx,Gy),
(4)
式中:G为像素位置的梯度;Gx、Gy分别为像素位置x、y方向的梯度;θ为梯度方向。使用式(3)、 (4)可以查找单个像素的边缘梯度和方向,在水平、垂直和斜对角线方向上获得最终边缘方向。
步骤3使用非极大值抑制方法移除不属于边缘的像素。在梯度方向上查找其相邻像素的局部最大值。如果像素具有局部最大值,则将它视为边缘,否则将像素填充为零。
步骤4滞后阈值化, 确定边缘。 若某一像素位置的梯度大于高阈值, 则该位置被保留。 若某一像素位置的梯度小于低阈值, 则该位置被删除。 若某一像素位置的梯度处于高阈值与低阈值之间, 则该像素在连接到一个大于高阈值像素时被保留。
2 双机位标定法
双机位标定法基于相机标定实现工业尺寸测量。图2为测量方法流程图。
图2 测量方法流程图
2.1 图像采集
使用一个1 200万像素的手机摄像头,图像尺寸为4 032像素×3 024像素。获取参考点物体和待测工件同时出现在一帧内的场景图像,然后在初始位置对系统进行标定。
2.2 图像处理
由于图像采集时存在光照影响和其他噪声,图像质量可能会受到影响,因此需要对图像进行处理。首先,将图像进行灰度化;然后,在高强度和低强度下进行1%数据饱和度的灰度拉伸;再后,通过亚像素插值来增大图像的尺寸,提高边缘检测的精度,利用高斯模糊滤波平滑去除随机噪声;最后,利用形态学方法填充边缘之间的空隙。
2.3 目标定位
应用基于特征的目标检测技术(模板匹配[13])进行待检目标的定位。模板匹配是一种基于特征点匹配的快速鲁棒的模板匹配算法,采用随机抽样一致(random sample consensus, RANSAC)来估计目标位置的信息[14]。SURF特征点匹配技术是许多计算机视觉任务,例如目标检测、图像配准和三维重建的鲁棒性算法。
2.4 边缘检测
边缘检测是计算机视觉中的一项基本技术,用于检测图像中对象的边界。 边缘检测的准确性对于检测物体的精细边界至关重要,这是该领域的一个具有挑战性的问题。 本文中将重点介绍使用Canny边缘检测算法来提取对象的边界。
2.5 尺寸测量方法
2.5.1 相机校准方法
使用一个尺寸已知的标准对象测量其他工件的尺寸。首先需要建立像素和真实单位(mm)之间的对应关系;然后,利用这些信息将设备进行校准,以测量工件相对于相机移动时的尺寸。标准对象类似于数字图像中的比例尺,它是一个以毫米为单位的标准尺寸的物品。
为了对每个对象进行标记并确定其区域范围,需要提取每个对象(参考对象和工件)的边界。图3为基于像素与真实长度比例系数测量方法示意图。将该测量值与参考对象的原始长度进行比较,以获得像素与真实长度之间的比例系数。图4为基于标准件的尺寸测量方法流程图。获取参考对象两侧任意两点之间的距离单位为像素,计算参考对象像素(reference object pixel,ROP)之间的像素距离。
图3 基于像素比例系数测量方法示意图
图4 基于标准件的尺寸测量方法流程图
在获得图像中每个像素对应实际长度的比例系数后,需要对系统进行校准,并进一步使用这个校准值来计算物体相对于相机的位置。该方法将像素的长度转换为真实长度,计算公式为
(5)
(6)
式中:R为像素与真实长度比例系数;ROP为标准件像素长度;ROL为标准件实际长度;TOL为实际测量结果;TOP为测量目标像素长度。
受成像模型和三角形相似性方法[15]的启发,只要获得从物体到相机的焦距,就可以测量出从相机到物体的距离以及物体的真实尺寸,因此,只要物体在固定点位置被校准,就可以计算物体在其他不同位置的尺寸。此外,可以在校准时测量物体和相机之间的距离。图5为自动更新测量距离的标定方法示意图。通过增加第2台相机来确保测量距离的准确性,当工件沿着工作距离移动时,利用第2台相机读取工件位于标尺的刻度,从而正确计算出物体的测量距离,不必手动更新。第2台相机将记录物体的新位置,并将信息发送到主系统,主系统将利用它来确定物体的尺寸。计算位置D0处物体的像素,其宽度W也是已知的,ΔD表示物体的位移,使用三角形相似性的式(7)来计算位置D0处的焦距。
D—物体与相机镜头之间的距离;D0、D1—物体移动前后的位置; ΔD—物体的位移; P0、 P1—物体移动前后的像素。图5 自动更新测量距离标定方法示意图
(7)
式中:F为焦距;D为物体和相机镜头之间的距离;P为物体在位置D0的像素(图像上的尺寸,单位为像素)。
然后,将目标移动到D1位置,并计算目标在D1位置处的像素P1,通过式(8)可计算出新位置处目标的宽度。当3个参数都已知时就可以计算D、W、P、F等其他参数。
(8)
综上所述,首先基于参考对象获得图像中每个像素对应实际长度的比例系数,然后利用该比例系数对系统进行校准,以获得不同位置的测量尺寸。
2.5.2 光照变化对工件边缘检测的影响
工件的边缘检测对准确的尺寸测量非常重要。测量结果的精确度取决于边缘检测的效果,而边缘检测对于实验环境中的光照非常敏感。发光二极管(LED)照明环是一种标准的照明源,可以消除检测环境中的不均匀照明效应。由于检测空间是封闭且处于控制之下,因此必须保持合适的照明条件。一个由60个LED组成的环形灯排列成一个圆,固定在相机的镜头上。照明模块如图6所示。环形灯中的LED灯的数量和圆的半径取决于待检工件的大小。随着照明强度的变化,所有数字图像的像素灰度值都会相应地改变,因此,照明条件对于确定物体的边界至关重要,既要避免照明过度,又要防止照明不足的情况。
图6 照明模块示意图
3 实验结果与讨论
3.1 非垂直面的测量实验
利用双机位标定法对特定工件进行测量。测试的工件是2张卡片,因为它们具有复杂的边缘,且都不是完美的形状,所以实验结果能够体现出双机位标定法是否可以针对复杂的工件给出精确的尺寸估计。其中一张方形卡片,边长约为39.5 mm;另一张为矩形卡片,长度、宽度分别约为74、 57 mm。
完成图像采集和图像处理后, 利用SURF特征在图像中定位工件位置。 当图像中包含多个其他对象时, 特定目标的定位就十分关键。 图7为基于SURF特征点的目标检测过程示意图。 图7(a)为相机距离待测卡片约28 cm拍摄的原始图像; 图7(b)为在整个图像中定位目标的模板图像; 图7(c)为视野域与模板对应的相同特征, 左侧为视野域图像, 右侧为模板图像; 利用匹配好的特征对实现待检目标的定位, 如图7(d)所示。
检测到目标后,使用高斯函数对原图进行去噪, 过程如图8所示。 图8(a)为输入原始图像; 图8(b)为高斯平滑处理后的图像,需要进行边缘检测以提取2张卡片的边界; 图8(c)为2张卡片的边缘,利用该边缘信息,通过像素对应实际长度的比例系数可以测量卡片的实际边缘之间的尺寸; 图8(d)为卡片的测量结果。
方形卡片是标准件,其尺寸已知。为了获得参考对象的像素数,需要使用式(5)、(6)来测量第2个对象的尺寸。本实验中相机与待检物体在竖直方向上没有完全对齐,相机的视角对结果影响很大。
3.2 垂直面的测量实验
当相机与待检物体在竖直方向完美对准时,尺寸测量结果将会得到明显改进, 垂直面测量中间结果如图9所示。图9 (a)为待测量的2个物体,分别为矩形卡片和方形卡片;图9(b)为方形卡片对应的真实尺寸,边长为39.5 mm;图9(c)、 (d)为矩形卡片对应的真实尺寸, 长度为74 mm, 宽度为57 mm; 图9(e)为2个待测物体的边界;图9(f)为计算所得的物体的尺寸。
结果表明,在相机与待检物体在竖直方向对准时,测量效果达到最好,因此为了达到良好的效果,相机的最佳位置应该垂直于待检物体。
3.3 改变相机位置的测量实验
针对物体相对于相机的位置发生改变的情况进行尺寸测量实验, 实验测量中间结果如图10所示。 图10(a)为相机距离待测物体约28 cm拍摄所得的图像; 图10(b)为相机距离待测物体约51 cm拍摄所得的图像; 图10(c)为需要测量的对象, 目标是当物体从一个位置变化到另一个位置时, 从2个不同的位置测量方形卡片的尺寸; 图10(d)、 (e)分别为距离该待测物体约28、 51 cm位置所拍摄计算出的精细边缘。 在距离约28 cm拍摄的图像上计算方形卡片的像素数, 然后通过相机距离物体的像素数P、 物体的宽度W和相机距物体的实际距离D, 使用式(7)计算相机的焦距。 从距离待测卡片约51 cm的位置拍摄所得的图像中计算出相同物体的像素数, 利用焦距信息使用式(8)计算物体的尺寸, 如图10(f)所示。
表1为双机位标定法在上述3种条件下对物体尺寸的测量结果。可以看出:当相机视角不垂直于检测平面时,实际值与测量值之间的测量误差较大;当视角与检测表面垂直时,测量精度有较大提升,相对误差最小,因此,为了获得高精度的检测结果,相机中轴线应该垂直于检测表面;当相机与待检物体垂直对齐并且改变相对位置时,在距离相机有限的距离内估计物体在变化位置的实际尺寸。多数工业相机都不是固定在检测表面的一个位置,因此,表1得出针对移动的目标仍然可以准确地测量其尺寸。上述结果表明,双机位标定法可以在相对误差较小的情况下成功测量目标的尺寸。
表1 不同条件下双相机标定的尺寸测量方法的物体尺寸测量结果
表2为双机位标定法与其他方法测量误差对比。由表可知,与基于拟合椭圆的工件测量方法[5]和基于局部线角轮廓分割的工件测量方法[8]相比,双机位标定法性能更好。与激光三角测量方法[9]相比,双机位标定法需要较少的训练数据和较少的计算资源来快速计算测量结果。
表2 不同测量方法对比实验结果
3.4 边缘检测稳定性实验
设置不同光照强度的对比实验, 验证光照对提取的物体边缘准确性的影响。LED环形灯的亮度取决于电压的变化,对图像的质量有很大的影响。表3为不同照明强度下的图像边缘灰度级分布,图11为不同灰度级示意图。可以看出, 随着照明强度的变化,数字图像中边缘像素的灰度值也会按比例变化,即在低光照强度下,亮度太低,灰度值也很低,因此背景和物体不能相互区分,当提高光照强度时,亮度也会增加,图像质量提高,潜在边界可以从背景中区分出来。如果光照强度太高,图像又会变得太亮,物体不能与背景分开,因此,在完全黑暗的条件和过于明亮的条件下,物体和背景都是无法区分的,从而可以得出结论:最佳照明是区分物体和背景的必要条件,边缘检测效果取决于照明条件。
表3 不同照明强度下的边缘灰度级分布
图11 不同灰度级图像示意图
通过误差分析可以有效提高检测精度。从理论上估计工件的尺寸,取决于几个因素,例如相机内部参数,包括传感器尺寸、分辨率和焦距,使用高分辨率成像设备时,较小的物体尺寸将以更高的像素来表示,并且测量精度也将提高。影响测量精度的其他因素包括照明强度、相机旋转角度和振动等,为了消除这些因素的影响,必须从操作设计的角度考虑,包括相机分辨率的选择、光源设计,以区分物体与背景,获取物体的完整视野。
4 结论
工件尺寸自动测量在工业产品检测中具有十分重要的意义。工件尺寸测量中存在的问题包括工件边界的精确定位、结果计算时间过长以及相机与物体的相对位置协调问题。本文中提出的双机位标定法有助于解决这些问题,并且以最少的资源实现工件尺寸检测。该方法在数字图像中自动估计工件的尺寸,具有自适应和低成本的特点,解决了工件尺寸测量中测量精度、计算时间和相对位置变化问题。实验结果表明,该方法能减小测量误差,相对误差为0.7%,具有测量精度高、处理速度快、对相对位置变化适应性强等优点。