APP下载

基于Halcon的钢球表面缺陷检测系统设计

2018-07-25吴秀东李东兴常晓刚王建军

轴承 2018年10期
关键词:钢球梯度边缘

吴秀东,李东兴,常晓刚,王建军

(山东理工大学 机械工程学院,山东 淄博 255049)

在工业强基工程中,轴承被列为机械基础零部件的首位,高转速高精度轴承更是被作为发展的重点方向[1]。钢球属于滚动轴承中的关键零件,其表面缺陷状况对轴承的动态性能、使用寿命等有着举足轻重的影响,统计表明,由于钢球表面缺陷导致的轴承失效占比高达61.2%[2],因此,钢球表面缺陷检测成为钢球生产中一道必不可少的检测工序。

目前,AVIKO-K型钢球表面缺陷检测仪广泛应用于钢球表面质量检测,其利用光电、涡流检测方法[3],具有效率高、操作简单等优点。然而,为减小对涡流传感器检测精度的干扰,对检测环境、仪器结构提出了很高要求;该检测仪的展开机构等只能使用非金属材料,耐磨性较差,必须频繁更换,且对麻点缺陷类型识别能力弱。文献[4-5]研制了均匀散射的光源照明系统,设计了基于双CCD相机的钢球表面一维滚动展开方法,使用水平、垂直投影粗略定位与Canny算子准确定位结合的方法确定直线轨道上每个钢球的位置,采用实时背景差分方法提取钢球表面缺陷;但该系统仅针对φ1.5 mm的钢球,适用性低,实时背景差分方法的连续性、稳定性也存在很大问题[6];文献[7-8]设计了基于最小圆形外接矩形得到钢球检测区域的方法,采用剪影法及BP神经网络方法提取钢球表面特征,但其所检测的钢球直径范围为10~20 mm,检测范围窄且油液介质和展开系统还有待研究。文献[9-10]运用光纤检测方法,但并未设计展开装置、上位机界面等;还有其他针对钢球表面展开方法[11]及模式识别方法[12]的研究,但均缺乏实际应用。

综上,结合Halcon软件提出一种钢球表面缺陷检测系统设计方案,将采集到的钢球表面图像实时传入计算机,通过建立的图像处理缺陷检测算法提取表面缺陷,能够有效地从复杂背景中计算出钢球表面缺陷面积,进而控制电动机带动机械手工作,准确实现钢球优劣的自动分拣,并在实际的钢球生产过程中取得了良好的效果。

1 钢球表面质量检测系统

1.1 硬件结构

钢球表面缺陷检测系统如图1所示,主要包括上料装置、照明装置、钢球表面展开装置、图像采集传输装置、计算机和分选控制装置。其工作原理为:装料箱中的被测钢球通过往复运动的出球滑板到达过渡通道,当过渡通道上的磁敏传感器判断钢球达到设定数量时,装料箱上的出球滑板停止运动从而停止出球。2个往复进球机械手之间的距离可以调节,用来控制每组检测钢球的数目,限位机械手将每组钢球限制在检测区域内。过渡通道上方装有保护液喷淋管,减少检测过程中的钢球碰撞、摩擦损伤,同时提高钢球表面清洁度。整个检测通道的宽度可以调节,检测钢球直径范围为10~50 mm。检测区域两侧为LED照明装置,检测区域下方是作往复、周向运动的展开盘,可使得钢球表面充分展开。在钢球表面展开过程中,光学镜头、CCD相机配合完成钢球表面图像采集,通过基于Halcon的钢球表面缺陷检测算法实时计算采集图像的钢球表面缺陷面积,从而判别钢球是否合格,分球机械手和分球板相互配合使钢球进入相应的品料仓。

图1 钢球表面缺陷检测系统示意图Fig.1 Diagram of detecting system for surface defects on steel ball

1.2 图像处理软件

该检测系统的图像处理软件基于Halcon 10.0编程开发[13]。根据实际使用需求,所设计的系统主界面如图2所示。主要包括开始与停止检测控制、检测方案设置、相机设置、电动机控制、缺陷面积与检测结果显示。通过这些功能模块的相互结合,可高效、准确地实现钢球优劣的自动化分拣。

图2 检测系统主界面Fig.2 Main interface of detecting system

2 基于Halcon的钢球表面缺陷检测算法

2.1 感兴趣区域选取

图像过大、背景复杂、对象过多都会干扰对目标的处理。为提高图像处理的针对性和准确度,去掉无用区域,提高图像处理速度,通常会采用感兴趣区域(Region of Interest,ROI)选取[14-15],从而优化系统性能。

检测过程中,钢球每4个一组进入展开盘,每组钢球所在位置固定。由于LED灯两侧式照明方式的影响,钢球正上方存在反射盲区,相邻钢球表面也会存在光线的相互反射,使得CCD相机所采集到图像如图3所示。

图3 CCD相机采集到的钢球图像Fig.3 Steel ball image captured by CCD camera

为去除与钢球表面图像无关的背景、反射盲区以及相邻钢球反射成像的区域,系统通过4个椭圆区域取并集,然后与矩形区域取差集的方法获取含有钢球表面缺陷图像作为感兴趣区域,具体步骤如下:

1)在钢球成像的固定位置分别绘制4个椭圆区域Ellipse1~Ellipse4,对于包含钢球表面缺陷区域进行合并,同时去除图像背景和相邻钢球反射成像的区域,如图4所示。椭圆区域灵活性强,可以充分包含每个钢球的表面图像。

图4 合并区域Fig.4 Union region

2)根据所检钢球尺寸以及反射盲区大小绘制矩形区域Rectangle,如图5所示。矩形区域应包含钢球表面图像的盲区以及盲区相邻的偏暗区域,若矩形区域过大会减小钢球表面有效面积,造成缺陷漏检;若矩形区域偏小会使得背景图像残留在检测区域中,造成钢球的误检。

图5 矩形区域Fig.5 Rectangle region

3)令合并区域UnionRegion与矩形区域Rectangle取差集,最终得到感兴趣区域ROI_0,如图6所示。

图6 感兴趣区域Fig.6 Region of interest

2.2 形态学滤波

由于采集装置、传输方式、工作环境等因素的影响,采集到的钢球表面图像往往夹杂噪声,使得表面质量下降,所计算的缺陷面积不准确,从而产生误判。

通过形态学滤波处理[16]可有效除去图像中含有的噪声成分,保护钢球外部轮廓与缺陷区域细节特征,并且使得图像亮度有所增强,滤波结果如图7所示。

图7 感兴趣区域形态学滤波Fig.7 Morphological filtering of region of interest

2.3 钢球表面缺陷边缘检测

边缘是图像最基本的特征,边缘检测是图像处理的重要组成部分,其准确性直接影响后续的图像处理、分析和识别。为计算钢球表面缺陷面积,进行判别分选,需要运用边缘检测算法提取钢球表面缺陷边缘。

2.3.1 多方向计算梯度幅值并进行非极大值抑制

设不同方向的模板分别为

将形态学滤波后的图像J(x,y)分别与各模板卷积,得到的梯度分量分别为L0°(x,y),L45°(x,y),L90°(x,y),L135°(x,y),则

(2)

式中:L(x,y)为梯度幅值;θ(x,y)为梯度方向。对J(x,y)内的像素点,比较3×3邻域中心点像素的梯度幅值与梯度方向上相邻2个像素点的梯度幅值,如果邻域中心点像素的梯度幅值比梯度方向上相邻2个像素点的梯度幅值都大,则将当前邻域的中心点记为可能的边缘点,否则当前邻域的中心点为非边缘点,赋值为0。

2.3.2 类间方差和类内方差比值最大化

将非极大值抑制后的图像分为前景区域和背景区域,使这两类的总类间方差与总类内方差比值最大,从而自适应获得高低阈值。

假设非极大值抑制后的图像中灰度值i的像素数为ni,灰度范围是[0,255],总像素数目为V,各个灰度值出现的概率为pi=ni/V。把图像中的像素由阈值T分为前景区域类C0=[0,T-1]和背景区域类C1=[T,255],则C0和C1产生的概率分别为

(3)

对应的平均灰度分别为

(4)

整幅图像的平均灰度为

(5)

P0P1(μ0-μ1)2。

(6)

(7)

(8)

(9)

(10)

比值函数α(T)只有一个自变量T,比值函数α(T)取最大值时,即总类间方差与总类内方差比值最大。

在[0,255]内阈值T从小到大顺次取值,令α(T)最大的T值便是高阈值Th,则低阈值Tl=Th/2。使用高低阈值在3×3邻域内检测和连接边缘,即若像素点(x,y)的梯度值大于Th,则为边缘点;若梯度值小于Tl,则不是边缘点;若像素点(x,y)的梯度值位于Th与Tl之间,在3×3邻域内如果存在梯度值大于Th的像素点,则为边缘点,否则不是边缘点。最终得到边缘检测图像,如图8所示。

图8 边缘检测图像Fig.8 Edge detection image

2.4 计算钢球表面缺陷面积

对钢球表面缺陷图像进行边缘检测后,为防止属于同一区域的缺陷像素被分为不同区域,以及方便计算缺陷面积,需要进行连通区域,在Halcon 10.0中,连通区域算子为connection。

常用判别连通性的方法有4连通区域和8连通区域,如图9所示。4连通区域包括中心像素相邻的上、下、左、右4个位置;8连通区域包括中心像素相邻的上、下、左、右、左上、左下、右上、右下8个位置[17]。擦痕、划条等缺陷往往有一定的倾斜角度,4连通区域容易把这类属于同一区域的缺陷错误地分为不同区域,而8连通区域可更好的根据周围像素对缺陷区域分类,故本系统采用8连通区域。

图9 连通区域示意图Fig.9 Diagram of connected regions

钢球表面缺陷面积S实际上是指一个缺陷区域包括的像素点的总数目,可以使用Halcon 10.0中的算子area_center计算缺陷区域的中心位置和缺陷面积。钢球表面缺陷检测软件系统坐标系如图10所示,从图10b可以看出,根据缺陷区域的横坐标值和每粒钢球图像的横坐标区间即可确定每个缺陷的具体位置。

图10 软件系统坐标系示意图Fig.10 Diagram of software system coordinates

2.5 算法流程

综上可知,基于Halcon的钢球表面缺陷检测算法流程如图11所示。

图11 本文算法的流程图Fig.11 Flow chart of textual algorithm

3 系统的测试与分析

实际检测过程中,采用分辨率1 032×778,像素尺寸4.65 μm×4.65 μm的IK081M-30面阵CCD相机和TEC-M55光学镜头进行图像采集。

钢球质量判别前需要进行缺陷面积阈值设定。根据钢球感兴趣区域选取图像,在Halcon 10.0中分别进行缺陷边缘连通和缺陷面积计算。某3粒钢球缺陷的计算结果如图12所示,图中从左至右分别为感兴趣区域选取图像、缺陷边缘连通结果和缺陷面积。由于钢球表面缺陷面积数据较多,因此将缺陷面积从大到小进行排列,只截取了部分缺陷面积数据。

图12 钢球的部分缺陷面积数据Fig.12 Partial defect area data of steel balls

为说明判别方法,以φ12.7 mm的钢球为例说明判别阈值的选择。选择不合格钢球和合格钢球各20粒,在检测区域观察并记录每粒钢球的缺陷面积数值(为保证钢球表面充分展开,同时最小程度避免缺陷重复检测,根据展开盘的运行速度,应保证观察时间4~5 min),每粒钢球的缺陷面积峰值见表1。由表可知:不合格钢球的最小峰值为23,合格钢球的最大峰值为17。为减少误检,可将第1判别阈值设定为20。

表1 钢球的缺陷面积峰值Tab.1 Peak defect area of steel balls

将每粒钢球的表面缺陷图像的缺陷面积S建立数组,并从大到小排列,则数组中第1个数值Smax为最大值,第2个数值S2为次大值。如果仅仅以Smax>20作为判别钢球不合格的标准,会造成误判,因为当满足20≥Smax>10且次大值S2大于10时钢球也是不合格的,故添加了第2个判别步骤,则钢球表面合格与否的判别方法为:

1)若Smax>20,则钢球不合格,否则执行第2步;

2)若Smax>10且S2>10,则钢球不合格,否则钢球合格。

在确定钢球表面缺陷面积的阈值后,需要对系统进行性能测试。由于该检测系统用于流水线作业的工业生产,应具备较高的实时性与准确性。为验证系统在实际检测过程中的效率,将企业生产的5 000粒φ12.7 mm钢球进行实时分拣,每组所检测钢球数量为4粒,每组钢球采集的图像数为5幅,通过往复、周向运动的展开盘相互作用,使得钢球表面充分展开。检测结果见表2。

表2 钢球表面缺陷检测结果Tab.2 Testing result of surface defects on steel ball

由表2可知:钢球表面缺陷检测系统的错检率小于2%,可达到工业生产中检测准确性的要求。虽然分球机械手的协同作用会对检测速度产生一定影响,但在钢球合格率较高的情况下,该系统每小时可检测钢球仍可达6 000粒,保证了检测的实时性,能够满足企业实际生产的需要。

4 结束语

针对传统钢球表面质量检测所存在的检测效率低、错检率高、劳动力需求大等缺点,提出了一种基于Halcon图像处理平台的钢球表面缺陷检测系统设计方案。根据建立的图像处理算法,对工业相机采集的钢球表面图像进行缺陷检测,然后通过缺陷面积计算并与缺陷面积阈值比较完成钢球的自动分拣,实现钢球表面缺陷的非接触性检测。实际检测结果表明,该系统结构简单,检测速度快,误检率低,满足大批量的钢球生产过程,可大大提高工业生产的效率和自动化水平,具有很大理论研究和实际应用价值。但检测系统的照明方式以及表面展开机构仍存在缺陷,在实际检测过程中会出现光照不均匀及表面展开不充分等问题,这将成为后续研究的重点。

猜你喜欢

钢球梯度边缘
硬度测量法测定20号钢球化等级的实验
一个带重启步的改进PRP型谱共轭梯度法
一个改进的WYL型三项共轭梯度法
昆钢球团生产降事故率降消耗的生产实践
一种自适应Dai-Liao共轭梯度法
8Cr4Mo4V钢球压碎载荷不合格的原因及返修
一个具梯度项的p-Laplace 方程弱解的存在性
一张图看懂边缘计算
MTZ3573型钢球磨煤机应用高铬球的经济性分析
在边缘寻找自我