APP下载

基于图像处理的刹车片表面裂纹识别提取方法

2021-01-07江松张坤张华

信阳农林学院学报 2020年4期
关键词:刹车片角点滤波

江松,张坤,张华

(安徽科技学院 机械工程学院,安徽 凤阳,233100)

汽车刹车片的摩擦系数在任何条件下,都必须保持稳定。当汽车刹车片表面产生裂纹时,它的摩擦系数就会降低,磨损率会加大[1]。同时,刹车片表面裂纹可能会使刹车片崩落,影响汽车的制动效果,给驾驶员和同行人员的人身安全和财产安全带来隐患。为增强汽车安全系数,减少因刹车片裂纹导致的安全事故,本文研究了基于图像处理的刹车片裂纹有效识别提取的方法。

目前已经存在大量对裂纹检测的图像处理算法,但是任何一个单一的算法都不能处理所有的图像[2]。针对刹车片表面裂纹检测需求,本文利用经典的方向梯度直方图(Histogram of Oriented Gradient, HOG)和局部二值模式(Local Binary Pattern,LBP)等算法对刹车片裂纹特征进行提取,并使用支持向量机(Support Vector Machine, SVM)算法构建刹车片表面裂纹识别模型。进一步提出基于亚像素角点检测方法对裂纹线进行提取,使裂纹更直观可见。

1 裂纹线识别

1.1 图像预处理

在对裂纹图像进行特征提取之前,利用图像滤波算法先对图像进行滤波,将图像中的细节特征信息保留且更明显分离出来,抑制目标图像的自身噪声和因拍摄和收集图像时产生的噪声。图像滤波算法分为线性滤波和非线性滤波,对纹理图像滤波时,非线性滤波有更好的滤波效果。由于裂纹在图像中主要是它的边缘信息,而双边滤波可以有效地保留边缘信息、抑制噪声达到平滑的效果。因此本文采用属于非线性滤波的双边滤波(Bilateral Filters)算法[3-4]对裂纹图像进行滤波。

双边滤波采用基于高斯分布的加权平均的方法,把周边像素亮度值的加权平均代表某个像素的强度,避免高斯滤波会导致的像素移位问题。双边滤波不仅考虑了空间域还考虑了像素范围域,令空间域Gs和颜色项Gr的乘积作为滤波核系数。具体的滤波算法为:

(1)

(2)

采用双边滤波处理后的刹车片裂纹图像效果如图1(b)所示,与原图像图1(a)对比可以明显看出,原图像中的非裂纹元素得到了很好的去除。

图1 图像预处理效果 图2 灰度图像直方图

1.2 图像分割

分析并统计刹车片图像滤波处理后的灰度直方图(如图2所示),可以发现其仅有单峰,并且裂纹灰度图像背景区域像素主要分布于148到176之间。针对刹车片裂纹的这一特点,本文应用基于阈值的二值化图像分割方法对裂纹图像分割[5]。思路为:选定一个阈值,将待分割图片中像素值大于阈值的像素点的像素值设置为255,小于阈值的像素点设置为0,得到仅有黑白色的二值图像,具体算法如式(3)所示,其中z为图像二值化设定的阈值。

(3)

将图1(b)中双边滤波后的RGB图像转换为灰度图像,再将灰度图像转换为二值图像,本文转换的最佳阈值为149,将大于149的像素点值设置为255,小于149的设置为0。分割示意图如图3所示,该方法能将图像背景区域与裂纹目标区域有效分割,并加强裂纹图像特征。

1.3 特征提取

从图3可以看出经二值图像分割方法处理后,刹车片裂纹图像的目标裂纹和背景已经被有效分割。将分割后的图像分别使用HOG算法和LBP算法进行裂纹特征提取。

1.3.1 HOG特征提取 给定如图3所示裂纹目标对象的图像,设置一个检测窗口。计算检测窗口中每个像素的梯度大小和方向。将检测窗口划分成很

图3图像分割

多块,将每一块分成很多单元,为每个单元创建一个直方图,在单元内,将梯度投影到单元的梯度方向,将所有单元格在块上归一化,将所有块中的所有标准化直方图收集到一个称为HOG描述符的特征向量中[6-7]。

设置图像检测窗口的尺寸为64×64,窗口移动步长为(8,8),bin为9。刹车片裂纹图像经过滤波和图像分割处理后,HOG可以提取出裂纹边缘的结构特征,描述裂纹的局部形状,消除光照带来的影响。通过OpenCV实时显示矩阵MAT类的信息得到的裂纹特征如图4所示:

(a:裂纹图像特征,b:裂纹、无裂纹图像特征)

图5 LBP特征提取

1.3.2 LBP特征提取 LBP是一种广泛应用于描述局部纹理特征的算法,具有灰度不变性和旋转不变性[8],可以有效提取物体表面纹理特征。基本LBP算法算子在3×3像素窗口的邻域内,将窗口中心像素作为阈值与剩下8个像素作比较,大于中心像素的记为1,小于中心像素的记为0,将产生的八位二进制数作为窗口中心像素的LBP 值,并用该值来描述纹理情况。对于一张刹车片裂纹图像,相邻像素之间的像素值间有数量关系,将中间点像素值与中间点相邻像素值比较得到八位二进制数的LBP值,这个LBP值就能很好地表示点和相邻点像素之间的模式,可以得到裂纹图像中的细节描述。通过LBP算法提取的裂纹特征如图5所示:

1.4 分类

支持向量机是一种有监督机器学习方法,其思路是找到一个最优超平面,使最优超平面最近样本的距离最大或最小,并且能保证该超平面分类的精度[9]。本文训练样本为二分类,设二分类的SVM的训练样本集为{(xi,yi)|i=1,2,3,…,n},xi∈Rn,其中xi,yi分别为输入、输出,样本超平面为:

(w·xi)+b=0

(4)

利用Lagrange函数得到最优超平面为:

(5)

进一步计算,可得到最终的最优分类函数为:

(6)

本文将利用SVM算法构建识别模型,用HOG算法提取的裂纹特征向量和LBP算法提取的裂纹特征向量分别作为模型输入变量。本实验共采集样本总量260个,其中训练样本为215个,剩余45个作为测试样本用来验证模型的精度。基于不同特征的模型测试识别正确率如表1所示:

表1 基于不同特征的SVM模型的识别率

从表1可以看出,在不做任何图像处理的情况下,SVM模型的识别正确率只有60%;基于HOG特征变量的SVM模型的识别正确率为95.56%,基于LBP特征变量的SVM模型的识别正确率最高,达到97.78%;基于LBP特征变量的模型比基于HOG特征变量的模型的识别效果更好。

2 裂纹线提取

利用训练好的识别模型检测到图像有裂纹后,进一步对图像裂纹线进行提取。角点检测算法以往主要用于三维场景重建、运动估计、视觉跟踪以及图像配准与图像匹配等计算机视觉领域[10],并已取得良好的应用效果。

亚像素角点检测方法是基于原始角点检测方法的改进算法,具有更高的检测精度。经大量文献调研,目前未发现亚像素角点检测方法在汽车零件裂纹识别方面的应用,本文将首次尝试利用亚像素角点检测方法来提取裂纹角点信息。最后本文利用角点位置信息提出一种连接算法对裂纹线进行提取,并在原图上标注出裂纹线。

2.1 亚像素角点检测

如果图像上一个点的两个正交方向上都有明显的导数,则称这个点是独一无二的,并将该点称为角点[11]。角点即两条边缘线的交点,或局部邻域内有两个不同边界的方向。角点检测的基本思路是在一个灰度图像上,利用一个检测窗口以确定的步长移动,窗口在任意方向移动时,移动前后产生明显灰度值变化,则认为窗口中存在角点。对识别为有裂纹的图像,利用亚像素角点检测方法可以得到刹车片裂纹特征角点的亚像素角点位置信息。

本文首先确定图像强角点,得到角点的初始坐标位置信息,然后采用亚像素角点检测得到亚像素级精度的位置,即精确的角点位置。检测的角点如图6所示。

图6 角点检测结果图

从图6可以看出,检测出来的角点基本在裂纹线上,由于污渍、斑点等原因在裂纹线旁边有极少数错误点也被检测出,但总体检测效果良好。经过多次试验结果表明,亚像素角点检测对裂纹角点位置信息的提取精度较高,结果可靠。

2.2 利用角点位置信息进行裂纹线提取

提取裂纹角点坐标信息后,本文提出一种针对刹车片裂纹角点的连接算法,实现在原图上标注裂纹线。算法的主要思想是对所有角点进行坐标值排序,排序后将第一个坐标点定义为起始点,将起始点与距离起始点最近的角点进行连接。当连接完成后,将被连接点为起始点重复上述连接过程。当所有的裂纹角点连接完成后,即可得到刹车片裂纹线。由于零件裂纹呈连续性,在连接过程中,对检测出孤立的远距离点不进行连接。主要实现步骤如下:

第一步:在角点数组中,对所有裂纹角点按角点横坐标从小到大排序,

当横坐标相等时按纵坐标从小到大排序。

图7 裂纹线提取效果图

第二步:排序后根据公式(7)计算第一个角点(x1,y1)到每一个角点(xn,yn)的距离d1、d2、d3、……、dn。

(7)

找到所有距离d的最小值dn,找到dn对应角点在所有角点数组中的位置,即可找到距离角点(x1,y1)最近的坐标点(xn,yn)。

第三步:将点(xn,yn)与角点(x1,y1)连接。手动设置阈值D,本文阈值D设置为30。当距离dn大于阈值D时,第一点与第二点不进行连接,以点(xn,yn)作为第一个点重复步骤二。

第四步:当完成第二个点的连接后,删除排序数组中的第一个点,并以第二个点作为起始点重复步骤二。

第五步:所有裂纹角点被连接后结束算法。

该算法流程简短,计算量小,拟合效果直观、突出。连接后的裂纹线如图7所示,从图中可以看出,2.1节检测出的错误角点未被连接,而裂纹上的角点基本上被连接。结果表明,该方法能正确标注裂纹,使裂纹更加清晰

可见。

3 总结

本文先利用双边滤波、图像二值化分割对图像预处理,然后分别利用HOG和LBP算法对裂纹特征提取,最后利用SVM算法构建裂纹识别模型,对有、无裂纹图像进行二分类。基于SVM模型发现LBP算法提取的特征比HOG算法提取特征在裂纹识别方面更具优势,识别准确率达97%以上。为了标注裂纹,进一步对识别为有裂纹的图像提出使用亚像素角点检测方法,能得到亚像素级精度裂纹坐标信息,然后通过编写算法将裂纹线高效、完整地拟合在的原始裂纹图像上,结果表明该算法拟合效果良好。当然本文算法也有不足之处,例如零件点蚀、摩擦划痕、零件磨损变色、污渍等均有可能降低裂纹识别和裂纹线拟合的精度,这将是今后研究的重点。

猜你喜欢

刹车片角点滤波
粉末冶金航空刹车片:三万里回国路,二十年砺剑心
船岸通信技术下舰船导航信号非线性滤波
多支撑区域模式化融合角点检测算法仿真
角点检测技术综述①
一种考虑GPS信号中断的导航滤波算法
使用道通MS908S更换2015年奔驰C180刹车片
基于灰度差预处理的改进Harris角点检测算法
高效LCL滤波电路的分析与设计
基于EKF滤波的UWB无人机室内定位研究
基于FAST角点检测算法上对Y型与X型角点的检测