王恒迪,李莎,杨建玺,刘盟盟
(1.河南科技大学 机电工程学院,河南 洛阳 471003;2.中国一拖集团有限公司 计量检测中心,河南 洛阳 471003)
在轴承生产和装配过程中,有少量轴承产品外表面会出现锈蚀、磕碰伤、凹坑、擦伤等缺陷,为配套主机的正常使用埋下重要隐患。传统轴承外观缺陷检测主要依靠人工进行,检测效率及精度相对较低,而且难以实现检测数据的实时自动化管理。鉴于此,提出了一种将计算机视觉检测技术应用于轴承外观缺陷检测的方法[1-2]。
计算机视觉检测系统中使用的预处理主要包括图像二值化、边缘检测等。图像采集卡得到的轴承原始图像如图1所示。
图1 轴承原始图像
图像二值化原理为
(1)
由此可见,阈值T决定了图像信息的去留,选择合适的阈值是进行图像二值化处理的关键,在此采用一种改进的最大类间方差(Otsu)法进行分割[3-4]。
设一幅图像的灰度级为L,根据阈值将图像像素分为2类:[0,1,2,…,t]和[t+1,…,L-1],则类间方差为
(2)
最佳阈值T的选取原则为
(3)
Otsu法实际上是一个穷举法,通过穷举搜索求得最佳阈值T,使目标与背景间的类间方差最大,该算法的核心是类间方差的计算,计算量较大。
经过大量试验分析可知,每一次二值化的阈值均在一个较小的灰度范围内变动,且必有umin≤T≤umax(umin,umax分别为图像灰度的最小值、最大值)。经过试验验证,将阈值上限设置为umax,阈值下限设置为灰度中值T0
(4)
在[T0,umax]灰度范围内运用快速Otsu法选取最佳阈值T对图像进行二值化处理,可有效减少运算次数。
此外,经过分析发现,一般情况下,轴承图像不能覆盖0~255的所有灰度,因此在Otsu法基础上进行了算法优化,可大大减少所需方差计算的次数,从而提高程序运行的效率。
假设图像中灰度值为t′的像素个数为0,即pt′=0,当选择灰度值t′-1为阈值时
(5)
(6)
当选择灰度值t′为阈值时
(7)
ω0(t′-1),
(8)
由上述分析及(2)式可知
(9)
依次假设图像中有连续灰度值t1,t2,…,tn的像素个数为0,参照上述方法可知
(10)
据此可知,对于像素个数为0的灰度值,可不必重复计算类间方差。改进后的算法如下:
1) 计算灰度图像的umin,umax及T0;
5) 当i≥umax时,循环停止,此时求出的T即为最优阈值。
Otsu改进算法可以使图像很好地收敛到全局最优,改善图像灰度级不连续性对图像分割的影响。利用传统及改进后Otsu法分割得到的轴承二值化图像如图2所示。
图2 轴承二值化图像示意图
在轴承检测过程中,经过对工业现场的统计分类,待检轴承到达检测工位时,轴承位置会有所变动,且约80%的轴承外观缺陷出现在轴承内、外圈上,因此,每次对轴承进行缺陷检测前需对轴承进行定位处理,并对定位后的轴承图像进行检测区域分割,即分离出轴承图像的内、外圈,分别对其进行缺陷检测。
图3 轴承定位图像 图4 内圈环带图像
经过分割后的轴承图像均为环形分布,为了方便后续的缺陷识别,需要将提取出来的环带转换为更易分析处理的矩形带。
1.3.1 坐标变换
环带图像可看作是矩形图像的一种几何畸变。而任何几何畸变都可描述为畸变图像坐标和原始图像坐标之间的关系,因此,可通过对畸变图像进行坐标变换处理,以恢复原始图像。如图5所示,展开后的矩形图像长度为外圆周长,保持内外最大尺度不变;宽度为内外径之差,以满足径向无畸变的要求。
图5 图像坐标变换
1.3.2 插值处理
经过坐标变换后,矩形图像各像素的灰度值应与环带图像的灰度值相对应,但环带图像展开后的像素往往无法落在对应坐标点上,这就需要根据临近像素坐标的灰度值对该坐标进行插值[6]。
选用双线性插值法,设4个邻点的坐标分别为(x1,y1),(x2,y2),(x3,y3)和(x4,y4),f(x,y)表示该点的像素,则插值处理后P点的灰度值为
I(x,y)=(1-Δx)(1-Δy)f(x1,y1)+
Δx(1-Δy)f(x2,y2)+
Δy(1-Δx)f(x3,y3)+
ΔxΔyf(x4,y4);
(11)
Δx=x-x1,Δy=y-y1。
以内圈环带为例,展开后矩形图像如图6所示。
图6 内圈展开图像
采用8连通域标记方法进行缺陷识别。首先对图像进行初始标记。根据从左到右、自上而下的扫描顺序,可知标记当前像素f(x,y)时,只与其左上点f(x-1,y-1)、上点f(x,y-1)、右上点f(x+1,y-1)及左点f(x-1,y)的标号有关[7]。若4个点均未标记,则为该点分配一个新的标记;若4点中有1个已标记或2个以上加相同的标记,则为当前点加相同的标记;若4点中有2个以上加不同的标记,则按照其扫描的优先顺序(即左上、上、右上、左)标记当前像素。
初次扫描后,会出现冲突标号,即属于同一连通域的像素加不同标号的情况。针对上述情况,可对轴承图像进行二次扫描,以更正不一致的连通域标号,将属于同一连通域缺陷的标记统一化。通过上述标记方法得到的连通域标号是不连续的,不利于后续的缺陷识别处理。可按照标号出现的先后顺序进行调整,重新分配连通域标号,得到每个缺陷区域唯一、准确的标记。通过该方法即可完成对图像中目标连通域的标记,给不同的连通域不同的标号,最后的标号也就代表不同的连通域数目。
在轴承图像里,轴承的外观缺陷可描述为大于一定面积尺寸的连通区域,在此,缺陷面积可用连通域的像素数G表示。设一阈值G0,作为缺陷特征像素数的最小允许值,当在上述轴承分割图像中找到的缺陷像素数大于G0时,则认为该轴承有缺陷,否则,认为该连通域为干扰并予以消除。利用该方法分别对轴承内、外圈展开图像进行缺陷检测,图7为程序自动标记后的轴承内圈缺陷图像。
图7 自动标记后的轴承内圈缺陷图像
利用上述算法对200套轴承进行了外观缺陷检测,其中,有缺陷轴承数量为73套,包括表面有锈蚀轴承20套,磕碰伤轴承16套,凹坑轴承19套,擦伤轴承18套。测试结果见表1,系统正确识别率达到98.5%,可以满足工业现场的要求。
表1 测试结果
根据多次试验结果分析,试验中出现的误检、漏检现象主要是由于光线和拍摄环境等因素的影响,曝光过度可突出缺陷区域,但是部分图像边缘信息易缺失;曝光不足则整体图像偏暗,且易出现毛刺等噪声。此外,拍摄过程中,自然光线也会对轴承图像的采集有一定影响,进而影响系统识别的效果和检测精度。针对上述情况,有待对算法进一步改进以提高系统检测精度。另外,每幅图像的处理及缺陷检测仅用时0.4 s,能够满足工业现场流水线对系统实时性的要求。
相对于人工检测,基于计算机视觉的检测方法是一种非接触测量,不会对检测者与被检测对象产生损伤,而且不易受检测人员熟练程度、精神状态等主观因素的影响,可重复性好且可靠性高。
该检测系统采用CCD数字摄像机作为光电转换器,通过制定合理的照明方案,并结合图像分析、处理技术对轴承图像进行了定位与分割,最后运用8连通域标记识别技术实现了对轴承端面缺陷的非接触检测。该系统不仅提高了检测速度,改善了检测精度,而且具有实时性好、重复性好等特点,实现了轴承端面缺陷的无损检测,特别适用于一些不能用接触法进行外观缺陷检测的工业产品,具有广泛的推广价值,为工业产品外表面缺陷的非接触检测开辟了一条新道路。