陈焯岩,郭建亮,陈永清,陈廉清
(宁波工程学院 机器人学院,浙江 宁波 315211)
我国不但是自行车生产大国,更是出口大国。自行车的品质要求越来越高,其生产变成专门化,不同的零配件有专门的企业生产。自行车也是零部件更换率高的商品,尤其是脚踏属于一类磨损件,更换周期比较短。脚踏分左、右两只,通常脚踏的安装方式是螺纹连接;左脚踏是左旋螺纹,右脚踏是右旋螺纹,配对使用。在国内,自行车脚踏生产厂家,用透明薄膜包装好每对脚踏,人工目检其安装螺纹旋向不同,即为合格品,然后装箱出货。人工目检生产方式,效率低、易受人为因素影响,且难免出现漏检、误判,因此经常收到客户投诉两只脚踏相同。因此,本文中结合自行车脚踏生产现状,应用计算机视觉技术,开发脚踏自动检测系统,发挥计算机视觉检测的客观、可靠、不疲劳的优点,提高生产效率,提升企业竞争力。
计算机视觉自行车脚踏自动检测系统硬件设计如图1所示,系统主要包括工控机、可编程序逻辑控制器(PLC)控制系统、大恒MER-230-168U3M相机、远心镜头BT2364、平板光源(与脚踏螺纹成45°夹角安装)、送料装置、剔除装置等。
图1 硬件系统
脚踏自动检测过程:每对脚踏在传送带流水线上以设定的速度在相机下方流过,两只脚踏的安装螺纹全部进入相机的采集区域时,相机自动采集图像,并将图像信息送至工控机;检测程序系统读取图像信息,以设计好的算法处理图像,并将结果数据通过串口送至PLC控制系统,控制系统接收到结果信息,驱动剔除装置作相应动作。
外螺纹是圆柱体,正向平板光源照明形成径向扇形反射。采集到的成对包装踏板螺纹图像,如图2所示,两踏板螺纹距离较大,左、右螺纹一致性较差,分别设置检测感兴趣区域(ROI),如图2所示左、右两绿色矩形。
图2 感兴趣区域(ROI)设置:(a)左脚踏;(b)右脚踏
首先把螺纹特征从背景中分割出来,[1]本文采用Niblack算法二值化处理图像。
Niblack算法是局部阈值方法的一种,基本思想是对图像中的任一个点(x,y),在它的n×n邻域内,计算邻域像素点的灰度均值m和标准差s。[2-3]阈值T计算公式:
k为修正系数,通常取0.1~0.9。[4]
以求得阈值T对该点g作二值化处理:
对左、右脚踏ROI分别作Niblack二值化处理,本文系数k取0.1,邻域n取32。处理结果如图3所示。
图3 二值化处理:(a)左脚踏;(b)右脚踏
2.3.1 腐蚀处理腐蚀的作用是从二值图中消除不相关的细节。[5]设f为二值图像,b为结构元素,则基本定义为:
既要消除螺纹线不相关的细节,又要保证螺纹线连贯,采用小结构元素b=[111,111,111]对二值图像f作腐蚀处理。螺纹特征腐蚀处理,如图4所示。
图4 腐蚀处理:(a)左脚踏;(b)右脚踏
2.3.2 骨架处理
骨架,就是由单个像素的点组成,可以有效地反映出原物体形状的连通性和拓扑结构。[6]本文采用Khalid Sheed的K3M算法,对腐蚀后的螺纹图像作处理。该算法属于迭代腐蚀边界的一类算法[7-8],考虑到计算的速度要求和算法的准确,对图像边界点的3×3邻域内进行检查,判断是否满足要求。
K3M算法骨架处理步骤:
①标记出图像的边界;
②如果边界点的邻域中存在3~7个非零点相邻,删除该点;
③重复步骤②;
④如果步骤①中没有点被修改,剩余的边界点取消标记,停止迭代,否则返回步骤①。
骨架处理结果,如图5所示。
2.3.3 凸壳处理
如果连接集合A内任意两个点的直线段都在A的内部,称A是凸形。[9]即给定二维平面上的点集,凸壳就是将最外层的点连接起来构成的凸多边型,它包含点集中所有的点。[10]凸壳处理步骤:
①在二维坐标系中,目标特征图像的像素总数为n,设纵坐标值最大的像素点(即目标图像的最低点)为原点,记作P0。
②计算目标特征像素点Pi(i=1…n-1)相对于P0的幅角α,按从小到大的顺序对各个点排序,当α相同时,离P0近的排在前面,可得像素点P1,…,Pn-1。由几何学可知,第一个点P1及最后一个点Pn-1必定是凸壳的点。
③将P0和P1压入栈中,然后从P2开始,计算栈顶两个点与该点三点向量是否是逆时针转动,若是,则将该点压入栈中,否则将栈顶元素推出。
④最后,栈中的元素就是凸包上的点。
凸壳处理后,消除毛刺、不平滑,螺纹线特征如图6所示。
图6 凸壳处理:(a)左脚踏;(b)右脚踏
2.3.4 二次骨架处理
螺纹线特征再作骨架处理,二次骨架处理螺纹线特征如图7所示。
图7 二次骨架处理:(a)左脚踏;(b)右脚踏
经过腐蚀—骨架—凸壳—骨架的形态学组合算法处理,左、右脚踏螺纹的螺旋线段平行、光滑、斜度正确、螺距均匀。
2.3.5 螺纹线夹角测量
设直线方程
k,b为常数。
选取左脚踏中间螺纹轮廓线,其方程为:
k1,b1为常数。
右脚踏中间螺纹轮廓线,其方程为:
k2,b2为常数。
可求得两直线夹角θ
某款脚踏为M16粗牙螺纹,中径右旋升角2.48°,左旋升角-2.48°。可以左、右螺旋线夹角为检测对象,判断左、右脚踏是否包装正确。左、右螺旋线理论夹角4.96°,同向螺旋线夹角0°,考虑到误差及可靠性,系统判断标准值φ取2.48°;若θ≥φ,为左、右脚踏(合格),装箱;若θ<φ,为同向脚踏(不合格),由剔除装置剔除,从不合格通道流出。检测系统流程如图8所示。检测系统界面如图9所示。
图8 检测系统流程
图9 系统检测结果界面
脚踏生产企业提供1 278套脚踏,其中混有50套人为配对错误。系统检出合格品1 228套,不合格品50套,经人工复检确认正确无误,检测系统在正确性、效率、可靠性方面均达到生产要求。
本文从脚踏生产实际问题出发,提出了利用计算机视觉技术实现自行车左右脚踏自动检测代替人工视觉检测,并设计了检测硬件系统。针对脚踏外螺纹图像灰度差异大,螺纹曲面信息一致性差,合理设置了ROI,采用局部阈值二值化方法分割图像;然后运用形态学组合方法处理,提取到平滑、连贯的螺纹线特征;最后,以左右螺纹线夹角大小作为检测对象,开发检测程序系统。生产使用结果表明,本研究算法检测结果准确、可靠,系统稳定性好。计算机视觉技术应用到企业生产中,能进一步提高科技水平和产品的技术含量,增加产品的附加值。随着数字图像处理技术、计算机视觉技术的发展,计算机视觉检测应用将越来越广。