于正林,夏 扬,胡 静
(1.长春理工大学机电工程学院,长春 130022;2.长春理工大学重庆研究院,重庆 401122)
汽车油封是一种重要的精密零件,生产时极易形成尺寸误差而造成漏油的现象[1-2]。传统的检测方法为人工检测,由于人工检测的主观性强且效率低,使得检测误差及不确定性较大[3-4]。为了提高零件的检测效率和精度,众多专家学者开始以机器视觉技术为基础,应用于零件的高精度尺寸检测[5]。基于机器视觉的零件检测过程中,采集的原始图像品质决定了零件检测的效率与精度,恰当的光照强度使采集到的油封图像边缘更具有真实性,因此合理的光照强度是系统图像检测的关键。
朱华庆[6]为了提高零件尺寸检测的精度,增强待测部位及零件图像特征边缘的对比度,提高了图像处理后续工作的效率,但并未系统的探究光强变化对待测零件图像灰度值和边缘的影响。罗子明等[7]通过探究边缘位置与光强及阈值的关系,提出了自适应光强变化的动态阈值边缘检测方法,但未对边缘检测中使用的像素梯度进行研究。为了方便快捷地采集出高品质的油封图像并提取出更具有真实性的油封边缘,本文将以光强变化和图像灰度的理论分析为基础,对图像的梯度变化与边缘位置进行推导,通过实验探究光照强度的变化对汽车油封图像灰度和边缘的影响规律,并对由光强变化造成的汽车油封尺寸检测系统测量误差进行有效补偿,以获取完整且高质量的油封图像。
CCD相机内有光线敏感的元器件,当入射光射向像元时,不断吸收并转化为一定量的电荷,最终存储在光电探测器内[8]。随着平均照度和光照时间的乘积的增加,累积的电荷数也随之增大,因此认为像元的电荷量正比于光照强度在时间下的积分。则根据以上理论,可推出理想情况下像元(j,k)的电荷量为:
式中:Qin(j,k)为像元(j,k)的电荷量;η(j,k)为光电转换效率;δ为电子的带电荷量;S(j,k)为像元的面积;h为普朗克常数;v为光线照射频率;t为光照时间;Ee为像元(j,k)吸收的光照强度。
实际工况下,曝光时间t很小,这里认为像元(j,k)所吸收的光照强度Ee在t下的积分是一个固定值,所以由上式可看出Qin(j,k)与曝光时间t之间呈线性关系。令转换系数k0=η(j,k)δS( )j,khν,即像元(j,k)的电荷量可表示为:
由CCD的工作原理可知,光生电荷最终转化成数字信号输出,则理想条件下图像灰度值I为:
式中:k1为电荷输出的系数;k2为k1和k0的乘积。
由于CCD传感器在输出灰度值前将电荷信号放大,将放大增益设为ka,则定义式(3)中k2=kakb,kb为AD转换时模拟电路增益乘以光电转换系数的值,根据系统不同kb值不同,成像系统一旦确定则kb值为固定值。用Er表示定义物理量相对的照度,则:
实际情况下的灰度值I1为:
针对本油封视觉检测系统而言,时间t和增益ka不变,则灰度值I1=k Er,即在一定范围内,灰度值随着光照强度的增加而增大。
汽车油封高精度尺寸检测的核心问题是对油封边缘的位置有效特征的提取,特征提取质量的高低直接影响最后的检测精度。本文对边缘位置的提取方法是采用相应软件算法对图像计算像素点和灰度值,然后采用插值法求取亚像素边缘坐标。
像素级边缘点的确定是首要任务。首先利用Sobel算子模板与图像P进行卷积运算,分别求出x方向梯度G x、y方向梯度G y:
将G x和G y合成为该像素点梯度G:
将T1、T2设为上下临界值,规定选择边缘点标准为:当G<T1时,忽略该像素点;当T1<G<T2且与大于临界值的像素点相连,保留该点;当G>T2时,认为该点为边缘点。
设求出的边缘点坐标为(j,k),则梯度值为G(j,k)。在梯度图像矩阵中,以G(j,k)为中心,分别向左右方向取点G(j+1,k)和G(j-1,k),对点求梯度值。令j-1、j、j+1为x i,梯度图像梯度值为y i,将x i、y i代入二次插值多项式φ(x)中,为:
为探究本系统在不同光强条件下对采集的油封图像灰度的影响,本文通过调节背光灯源亮度,即在不同光强下油封同一局部位置图像,大小为75×80,共采集10幅图像。不同光强下的油封局部图像如图1所示。由图可知,在光强为5 lux、8 lux和10 lux的条件下,由于油封图像与背景之间的对比度差异较小,导致油封边缘轮廓特征不清晰,所获取图像背景明显存在阴影;在增大光源的亮度后图像灰度值增大,随之对比度增高,可直观清晰地分辨出边缘轮廓,如图中12 lux、16 lux、21 lux和28 lux光强下图像;随着光强的逐步增加,油封边缘位置明显曝光,如图中36 lux、42 lux和51 lux光强下油封局部图像所示。
图1 不同光强下汽车油封局部图像Fig.1 Local image of automobile oil seal under different light intensity
为了研究光强变化如何影响图像灰度值,首先将图1中获取的油封局部图像进行像素划分,定义左侧第一列像素为第一列;然后对其每一列像素灰度值进行取平均计算。绘制在不同光照强度条件下油封局部图像的灰度值变化曲线时,图像每列像素的总体灰度值水平可以用图像灰度值均值所代表,如图2所示。由图可知,图像在同像素点位置灰度值随着光强的增加而增大,而且增加的趋势大体相同。随着光强的不断增加,最终使得灰度值为255的像素点所占比例增大,由此可知油封的边缘位置渐渐向图像中心靠拢,最终可以达到边缘失真的地步。通过观察曲线的变化,同时结合边缘与像素灰度值变化的关系,可以推断出油封边缘位置大致在10~20、60~70列区域内。
图2 不同光强下油封局部图像灰度值变化曲线Fig.2 Gray value change Curve of oil seal local image under different light intensity
本文通过亚像素插值的方法提取边缘位置后发现,边缘位置与像素点的梯度变化有直接的联系,且检测到的边缘位置与设定的上下临界值有很大的关系[9]。即研究的光强变化对亚像素边缘位置的影响,可以视为像素点梯度幅值在不同光强下的变化情况。同理,将图1中所获取的油封局部图像进行像素划分,分别计算每幅图像中每列像素点的梯度幅值平均值。绘制在不同光强下油封局部图像中每列像素的梯度幅值变化曲线时,每列像素的梯度大小用图像的梯度幅值的均值来代表,如图3所示。由图可知,光强为5 lux、8 lux和10 lux的条件下采集的图像梯度幅值的峰值较小;随着光强的逐步增加,图像梯度幅值的峰值也逐渐增大,当光强增加到16 lux和21 lux时,图像梯度幅值峰值的距离相对减少。当光强处于36 lux、42 lux和51 lux时,图像梯度幅值有所减小。
图3 不同光强下油封局部图像梯度幅值变化曲线Fig.3 Gradient amplitude change curve of oil seal local image under different light intensity
通过观察在不同光强条件下,油封局部图像、像素点的灰度值和梯度幅值变化曲线,发现当光强过亮或过暗都不利于油封的尺寸测量,并且在12 lux、16 lux、21 lux和28 lux光强条件下的灰度变化几乎相同,梯度幅值的峰值也在同一区域,其中光强16 lux的梯度幅值峰值最大,故认为光强16 lux为油封边缘测量的最佳光照。由图4所示,随着光强的逐渐增加,油封外径亚像素级边缘位置逐渐向内部收缩,油封内径亚像素级边缘位置逐渐外扩张,且图3中梯度幅值最值位置与亚像素级边缘位置基本相同,故可以验证像素点的梯度幅值与亚像素级边缘位置的关系。
图4 不同光强下的亚像素级边缘位置Fig.4 Position of sub-pixel edge under different light intensity
为了探究光强变化与亚像素级边缘位置的关系,分别对油封外内径进行拟合,得到拟合函数:
式中:X为光强照度数;Y为边缘位置。
为了减小在一定范围内由光强变化对汽车油封测量结果产生的影响,即光强变化对边缘位置的影响,以光强16 lux时的亚像素级边缘位置Y0为基准位置,采用自适应光强变化的动态边缘位置提取方法进行补偿[10]。
针对油封外径的自适应光强变化的动态边缘位置提方法如图5(a)所示,补偿量为:|14.99X-0.758 9|,其步骤如下所述。
(1)在肉眼不能清晰分辨背景亮暗的情况下提取某一光强下Sobel亚像素边缘,获取边缘点坐标(j i,k i)。
(2)各边缘点法线方向的计算使用中心差分的计算方法。当k i-1≠k i+1时,,α1=( -π/2,π/2);当k i-1=k i+1时,α1=±π/2。其中第1个边缘点采用向后差分,最后1个边缘点采用向前差分。
(3)沿法线方向两侧补偿Δh1,得到补偿后的边缘点坐标。
同理,针对油封内径如图5(b)所示,补偿量为:Δh2== |0.584 9-26.84X|,其 中,α2=,α2=( -π/2,π/2);当k j-1=k j+1时,α2=±π/2,补偿后的边缘点坐标(j j′,k j′)和。
图5 自适应光强变化的动态边缘提取方法Fig.5 Dynamic edge extraction method based on adaptive light intensity change
经实验标定,测量系统的像素当量为每像素16.6μm。为验证上述方法能否有效补偿由光强变化引起的边缘位置变化,随机选取5个规格为38 mm×52 mm×7 mm的汽车油封进行尺寸检测实验验证,结果如表1~2所示。在光强为12 lux、16 lux、21 lux和28 lux的条件下,首先分别测量5个油封的内外径尺寸像素值10次,并取平均值作为补偿前测量值;然后利用文中所叙述的自适应光强变化边缘位置提取方法分别测量5个油封的内外径尺寸像素值10次,并取平均值作为补偿后测量值。由表中可以看出,随着背光源强度的增加,5个汽车油封的外径测量值逐渐减小,内径的测量值逐渐增加,且以光照强度16 lux为基准,内外径测量误差向两侧逐渐增大,误差变化规律基本不变。
表1 油封外径测量结果Tab.1 Measurement result of oil seal outside diameter
表2 油封内径测量结果Tab.2 Measurement result of oil seal inside diameter
根据实验结果,所使用的自适应光强变化的动态边缘提取方法对随机选取的5个汽车油封进行测量,从补偿结果来看,该方法可以证明在一定范围内够有效减小和补偿由光源强度变化造成的边缘位置移动,即可以降低由于光照强度对汽车油封尺寸检测系统测量精度的影响。
(1)本文对CCD电荷量与光强的关系进行研究,并以光强变化和图像灰度的理论分析为基础,通过理论推导和实验验证的方法研究油封图像的梯度变化与边缘位置。确定了光强变化对油封内外径边缘位置的影响规律,并且确定了最佳光强为16 lux。
(2)根据图像梯度幅值及边缘位置的变化规律,使用自适应光强变化的动态边缘位置提取方法,在光强12 lux、16 lux、21 lux和28 lux条件下,对随机选取的的汽车油封进行测量,然后分别再进行补偿测量。从补偿结果来看,该方法可以降低在适当范围内光照强度对汽车油封尺寸检测的影响。
(3)由于本文所使用的照度计精度不够,对确定光强产生一定的影响,进而影响实验结果。通过本文研究发现,光强的精度是实验的准确性的一个重要指标,如果能够实现进一步细分,将大大提高其准确性。