从特征识别到局部拼接的零件轴承孔在线检测

2019-04-24 09:18王玉源吉卫喜
食品与机械 2019年2期
关键词:轴承向量矩阵

王玉源 徐 杰 吉卫喜 彭 威 杜 猛

(1. 江苏省食品制造装备重点实验室,江苏 无锡 214122;2. 江南大学机械工程学院,江苏 无锡 214122)

饮料灌装设备中用于轨迹控制的零件轴承孔加工质量对饮料灌装生产线整体的平稳运行具有重要影响。使用机器视觉[1]检测无夹具定位饮料灌装设备轨迹控制零件轴承孔时,由于相机及镜头的制作工艺、视场限制等原因,难以通过单张图像获取高精度的零件轴承孔边缘特征。

为解决这类问题,通常采用SIFT(Scale Invariant Feature Transform)算法[2]对待检测零件特征的局部图像进行拼接。该算法对图像旋转、尺度缩放、亮度变化具有不变性,是一种非常稳定的局部特征检测方法[3],在工程领域应用广泛。Wang等[4]利用SIFT特征检测以及伪彩色图像增强的方法实现飞秒激光加工的微槽图像拼接,Yang等[5]利用SIFT特征结合多视点的方法对遥感图像进行了配准。

然而,这些研究并未给出零件待检测特征的识别与定位方法,并且SIFT算法的特征描述向量维数高,匹配耗时长,检测速度慢,难以满足在线检测的实时性需求。为解决无夹具定位的轨迹控制零件特征孔智能识别与局部图像的快速、准确拼接问题,本研究提出先利用SVM方法对零件轴承孔进行识别与定位,然后利用KAZE算法[6]实现轴承孔局部图像拼接的在线检测方法。KAZE算法使用非线性扩散方程对图像进行扩散,降低了描述向量的维数,具有较高的鲁棒性和局部精度,但其在零件几何特征拼接的应用方面鲜有文献报道。

1 检测系统及原理

1.1 试验平台

如图1所示,机器视觉图像采集装置主要由四部分组成:① 背景桌,作用是模拟零件流水线并使背景与目标零件在获取的图像上具有灰度差异;② 光源(升轩照明,LED投光灯DC12 V-10 W)X2,采用多光源大角度斜射以减少零件目标区域的色差,并增强图像背景与零件的灰度差异;③ 工业相机与镜头组件[相机:Basler acA4600-7gc(数量2),镜头:Evetar Lens M13B04218W F1.8 f 4.2 mm,EDMUND OPTICS F1.8 f 25 mm],相机通过POE(Power On Ethernet)线缆连接至计算机,实现图像的拍摄、存储;④ 三轴运动载台,相机与镜头安装在载台上并通过步进电机控制其三维移动。

1. 背景桌 2. 光源 3. 镜头 4. 相机 5. 三轴运动载台 6. 计算机 7. 工件

图1 机器视觉图像采集装置

Figure 1 Machine vision image acquisition device

1.2 检测原理

江苏省张家港市某饮料罐装设备公司生产的某型号轨迹控制零件如图2所示。该零件共有A、B、C、D4个待检测轴承孔,直径分别为85,77,59,74 mm。

图2 零件全貌Figure 2 Full view of the part

以轴承孔A为例,主要检测步骤如下:

(1) 用三轴运动载台将相机拉升至0.8 m,使用短焦镜头拍摄零件的全局图像。

(2) 对获取的零件全局图像进行灰度化、边缘检测等操作识别出轴承孔A,确定其空间位置。

(3) 将轴承孔A的空间位置坐标导入三轴运动载台的驱动程序,自动规划检测路径。

(4) 将相机降至0.25 m,三轴运动载台控制相机移动,使用长焦镜头在轴承孔A的边缘部分拍摄一系列高清局部图像,相邻图像间至少保证1/3面积重合。

(5) 对轴承孔A的局部图像进行拼接。

2 零件轴承孔识别

2.1 特征矩阵生成

轨迹控制零件大多形状轮廓复杂,为满足装配需求,会多次出现具有相同或类似特征的轴承孔,故特征描述方法需要体现这类特征之间的差异。使用短焦镜头获取的零件全貌图像对尺寸精度要求不高,先采用JPEG编码对图像进行压缩以提高计算速度、减少存储空间。将压缩后的图像进行灰度变换并选取合适的边缘检测算子对图像进行边缘检测[7],获得连续、清晰的边缘,如图3所示。

图3 零件轮廓Figure 3 Part outline

在获取图像边缘的基础上,利用轴承孔中心点位置关系构成特征描述矩阵的主要步骤如下:

(1) 利用Hough变换获取待识别特征并求其中心坐标,分别记为P1,P2,……,Pn。

(2) 根据零件外轮廓求零件整体的几何中心坐标,记为P0。

(3) 分别计算Pi与Pm(m=0,1,2,……,n且m≠i)的欧式距离,并将其降序排列,得Pi1,Pi2,……,Pin。

(4) 描述特征ci(i=1,2,……,n)的特征矩阵xi定义如下:

(1)

式中:

Pi0——Pi与P0间的欧氏距离。

步骤1中Hough变换的方法对于圆、椭圆、直线等曲线表达式清晰的特征检测效果好[8]。步骤2中引进P0的作用有如下两方面:① 轴承孔中心构成正多边形时,引进P0可有效避免不同轴承孔产生相同特征矩阵;② 为同一幅图像的不同轴承孔生成的特征矩阵进行归一化提供了统一的依据,使得同一幅图像的特征矩阵在数值上具有相同尺度。步骤3中使用欧式距离可以消除轨迹控制零件图像的随机旋转对特征矩阵中数值的影响。因此,本研究提出的特征描述矩阵具有尺度不变性、旋转不变性的特点。

2.2 SVM方法分类

使用2.1的方法求取轨迹控制零件待检测轴承孔特征描述矩阵,矩阵与轴承孔的类别对应关系具体、明确。生产线的不同轨迹控制零件需要快速检测,导致大数据量的训练样本难以获得。因此需要一种适合于小样本的监督式机器学习方法对零件待检测轴承孔进行分类。神经网络算法由于其训练结果不唯一、过程存在“暗箱”等问题[9],不能很好地适应快速识别的需求;决策树方法不考虑变量间的相互关系[10],仅适用于单个变量数值有明显差异的情况。

支持向量机(SVM)方法现已成为机器学习领域标准工具之一[11],这种方法能够综合考虑几个变量间的相互关系,在食品工程领域应用更加广泛[12-13]。

支持向量机中常用的线性核、高斯核函数分别如式(2)、(3),式中xi、xj对应式(1)中的特征矩阵:

(2)

式中:

σ——标准差。

线性核函数为:

k(xi,xj)=

(3)

式中:

支持向量机对应的输入为式(1)的特征矩阵,输出为“-1”或“1”,但是轨迹控制零件待识别轴承孔往往超过两类,因此需要对该方法进行改进与扩展。针对本研究实例,采用一对一方案,生成6个支持向量机。以区分A、B的支持向量机为例,将标签A对应“1”,标签B对应“-1”,将输入样本与对应输出标签对应,可以训练出用于识别A、B的支持向量机。

针对这6个支持向量机,生成一个4×6阶的编码矩阵M,M的每一行对应一个类别,每一列对应一个分类器,若某列对应的分类器不对这一类别进行判别则将该项置为 0,若对这一类判别且类标签为 1则将该项置为 1,相反置为-1,编码矩阵M如表1所示。

表1 编码矩阵

将待识别的轴承孔对应的特征矩阵xi放入这6个支持向量机计算结果(结果为1或-1),M的每列乘以对应结果得到裕量矩阵Z,再利用基于hinge损失[14]函数的解码方法便可求得xi对应的类标签。

2.3 特征唯一性纠错

由于零件摆放的随机性、色差、环境等干扰因素的存在,依据图像边缘获得的轴承孔中心以及外轮廓中心的位置可能存在一定误差,因此同一特征在不同情况下生成的特征矩阵会有一定差别,支持向量机训练次数的增加可以有效减弱特征矩阵误差对智能识别的影响。但为了满足快速检测的需求,支持向量机训练次数又不宜过多,因此识别成功率难以达到100%。当出现识别错误时,会导致检测结果与对应孔的几何参数真实值不匹配,从而严重影响定位方法的实用性。因此,当出现识别错误时,需对识别错误进行纠正。

试验表明,识别错误均是将某一个特征判别到其他类别,因此一幅图像的某个特征类别会出现2次。本研究采用基于零件特征唯一性的纠错方法对识别错误进行纠正。以图2为例,假设A、B唯一,出现2个C特征,纠错步骤如下:

(1) 读取正确特征A、B的中心坐标值{(xa,ya),(xb,yb)}。

(2) 根据零件几何关系,推算出现错误的2个理论特征C′、D′的中心坐标{(xc′,yc′),(xd′,yd′)}。

(3) 将出现错误的2组特征值中心C1、C2分别与C′、D′计算距离和:

L1=dis(C′,C1)+dis(D′,C2),

(4)

L2=dis(C′,C2)+dis(D′,C1),

(5)

式中:

dis——两点距离。

(4)若L1

3 图像拼接

3.1 匹配区域确定

本研究采用的高精度相机成像质量高,单幅图像体积在43 MB以上,直接进行特征点检测与匹配会耗费大量资源与时间。三维控制机构虽然不能满足确定2幅待拼接图像之间的空间坐标关系的精度需求,但是可以给出待匹配区域的位置,将匹配区域缩小到图片的40%左右,大幅提高匹配效率,对本研究大数据量的图片效果尤其明显。

对于同一个待检测轴承孔,三维控制系统仅改变相机的x轴坐标与y轴坐标,因此相邻待拼接子图像之间不存在旋转变换。如图4所示,实线矩形部分代表图像Qn,虚线矩形部分代表图像Qn+1,x轴坐标与y轴坐标改变量分别为Δx和Δy:

2幅图像均以图像左上角为坐标原点,对于Qn,仅检测以(Δx,Δy),(x,y)为对角点的矩形区域,对于图像Qn+1,仅检测以(0,0),(x-Δx,y-Δy)为对角点的矩形区域。

图4 匹配区域示意图Figure 4 Matching area

3.2 特征点检测

当前图像特征点检测方法主要有SIFT方法,以及在此基础上改变构造金字塔形成的SURF算法[15]。但是这2种算法均采用高斯核函数建立线性尺度空间,使得边缘区域与非边缘区域扩散程度相同,在尺度空间存在边缘和细节丢失现象[16]。基于此,本研究利用KAZE特征点检测方法代替SIFT方法,实现图像特征点匹配。KAZE算法核心思想是非线性扩散,可用式(6)的非线性微分方程表示:

(6)

式中:

L——图像亮度;

div——散度;

t——时间;

c(x,y,t)——坐标点(x,y)处的传导函数。

针对本研究案例,利用KAZE算法实现图像特征点检测与匹配的步骤如下:

(1) 将2张相邻待拼接图像Qn、Qn+1灰度化并确定匹配区域。

(2) 分别检测Qn、Qn+1中的KAZE特征点,并保存特征点的坐标值与对应的64维特征向量,坐标值集合分别记为Location(n)、Location(n+1)。

(3) 使用全检的方式匹配Location(n)、Location(n+1)中对应特征向量,删除无匹配特征向量的坐标点。

(4) 将Location(n+1)中的坐标点重新排序,使其与匹配的Location(n)中坐标点按顺序一一对应。

3.3 配准模型优化

利用KAZE算法对特定区域进行检测与匹配后,再利用RANSAC(RANdom SAmple Consenses)方法消除错误匹配点。本研究实例由于图像不存在旋转,判定依据为2幅图像每组特征点坐标差值,采用先求取每组坐标点差值,再进行随机选取并计算所占比率的方法。这种方法相较于传统的先进行匹配点选取,再计算坐标差的方法可减少运算次数。算法步骤如下:

(1) 分别计算Location(n)与Location(n+1)的横纵坐标差ΔX和ΔY。

(2) 任选一组匹配点,获取该组的横、纵坐标差Δxi,Δyi。

(3) 计算所有匹配点的横、纵坐标差同时在Δxi,Δyi允许坐标误差范围内的比率Ri。

(4) 若Ri>inlierRatio,则保留所有允许误差范围内的匹配点,取inlierRatio=Ri,跳出循环。

(5) 反复执行步骤2,3,4,若iter次内未能跳出循环,则保留最大Ri值对应的一组匹配点,取inlierRatio=Ri。

上述步骤中,iter为最大迭代次数,允许的坐标匹配误差由零件轴承孔的检测精度决定,inlierRatio为满足同一坐标匹配条件的特征点对数占所有特征匹配点对数的比率,数值越高,表明匹配率越高,设定inlierRatio初值为0.6。

由此,将错误匹配点滤除。利用保留的匹配点进行图像拼接的过程为常规剪裁拼接。

3.4 拼接错误成因与影响

灌装设备轨迹控制零件在线检测过程中,图像拼接的成功率和精确度决定了检测结果的可靠性,图像拼接速度影响了检测系统的实用性。影响图像拼接成功率和精确度的主要因素是满足同一坐标匹配条件的特征点对数占所有特征匹配点对数的比率inlierRatio以及特征点的检测精度,而影响图像拼接速度的主要因素是特征点的检测速度与匹配速度。

造成特征点匹配数过少或inlierRatio值过低的主要原因有:① 待拼接图像中待检测零件占比偏少,背景占比偏高;② 照明系统选择不合理,局部过曝或过暗导致的信息点偏少;③ 相邻待拼接图像重合部分偏少;④ 检测算法精确度不高。本研究先采用智能识别轴承孔方式,再将待检测轴承孔空间位置坐标导入三轴运动载台的驱动程序,自动规划检测路径可以有效避免问题①、③。多光源大角度斜射的方法以及相机参数的合理选择可有效解决问题②。对于问题④针对本研究案例SURF特征点检测与匹配精确度较低,SIFT、KAZE算法检测与匹配精确度高。此外,试验表明SURF算法、KAZE算法特征点检测速度较快,而SIFT算法耗时非常长(详见4.2),因此本研究利用KAZE算法检测特征点可有效解决检测速度与准确率的矛盾关系。

4 试验与分析

4.1 识别分类试验

对如图3获得的边缘利用2.1的方法得到如表2所示的特征矩阵。

表2 特征矩阵

零件随机摆放,在训练5次后,使用高斯支持向量机判定结果为C、B、D、A。为突出关键,本研究仅列出用于C、D分类的高斯向量机相关参数。表3列出对特征矩阵进行标准化的均值Mu与标准差σ。表4列出求解得到的α值以及标准化后的支持向量、类标签。类标签里1对应特征C,-1对应特征D。

表3 标准化参数

表4 高斯支持向量机参数

表1中特征x1、x2、x3、x4对应的中心坐标分别为(2 004.1,1 049.2),(1 443.1,925.8),(1 723.4,551.8),(1 055.5,1 314.7)。使用线性支持向量机将x1、x2、x3、x4分别判定为C、B、C、A。对比标准图像A、B、C、D轴承孔中心坐标 (1 586.3,744),(1 551,1 265.9),(1 098.9,1 518.7),(1 575.5,1 734),利用2.3节方法可得L1=57.8,L2=1 119.1,将C2纠正为D。

4.2 图像特征检测与拼接试验

图2中轴承孔A的2张相邻局部图像如图5所示。

从获取的一系列图像中分别利用SIFT、KAZE、SURF特征检测算法对每相邻的2组图像进行匹配试验,图5所示的2张图像匹配结果如图6所示。

分别使用SIFT、KAZE、SURF算法进行拼接,模型拼接准确度、效率对比如表5所示,效率定义为1/logt0t,t0为利用SURF算法进行拼接的平均时间,将其作为标准时间,t为其他算法所用时间。

像素为4 608×3 288

图6 特征点匹配结果Figure 6 Feature points matching result

使用本文算法拼接图5所示的2张图,结果如图7所示。利用KAZE算法进行特征点匹配再进行拼接后的轴承孔边缘与纹理拼接误差均在2×2 pixel以内,拼接精度满足在线检测需求。

表5 拼接对比表

图7 拼接效果图Figure 7 Stiching result

5 结论

针对饮料罐装设备轨迹控制零件轴承孔几何参数的高精度在线检测问题,本研究基于该类零件的结构特点,提出一种从特征识别到局部拼接的快速检测方法。通过以中心位置关系构建特征描述矩阵的方法、SVM方法及基于特征唯一性的纠错方法较好地解决了待检测轴承孔的识别与定位问题;采用先确定匹配区域,再利用KAZE算法对图像特征点进行检测与匹配的方法,较好地解决了局部图像拼接的问题。试验表明,本方法可快速实现轴承孔的高精度测量,且测量效率和成功率较高。

本研究提出的从特征识别到局部拼接的在线检测方法适用于零件待检测特征形状规则的情况,未给出针对零件不规则待检测特征的试验结果,下一步可针对零件的不规则待检测特征研究在线检测方法。

猜你喜欢
轴承向量矩阵
轴承知识
轴承知识
向量的分解
轴承知识
轴承知识
聚焦“向量与三角”创新题
初等行变换与初等列变换并用求逆矩阵
向量垂直在解析几何中的应用
向量五种“变身” 玩转圆锥曲线
矩阵