APP下载

基于超像素分割和随机森林的橡胶柱塞缺陷检测方法

2020-04-02孙世凡

计算机与现代化 2020年2期
关键词:柱塞圆柱分类器

孙世凡,叶 明,刘 凯

(南京航空航天大学机电学院,江苏 南京 210016)

0 引 言

橡胶件的检测是机器视觉检测中的一个难点[1-2],其原因大致有以下几点:橡胶件大部分为黑色件易吸光,因此表面为哑光表面,如果打光不合理会导致缺陷不能很好地凸显出来;其次橡胶的弹性形变很好,有些缺陷尺度较小,不拉伸很难被发现;最后橡胶件表面纹理和亮斑等噪声经过放大后较为复杂,也加大了检测难度。张伟等人[3]针对复杂纹理缺陷提出利用总变分模型和共轭矩阵法进行纹理抑制后再通过Roberts边缘检测[4]获取缺陷轮廓,但该方法容易造成误识别并且增加了计算复杂度;赵文宏等人[5]提出基于形态学去噪分割[6]和骨架提取[7]的方法获取划痕缺陷,但该方法不适用提取尺度小和复杂背景下的划痕;神经网络算法[8]一直是较为热门的研究主题,也被广泛应用于缺陷识别和分类,具有很好的泛化能力,但是其受限于庞大的样本数量以及丰富的经验来调整参数,其训练过程也要耗费大量时间,不适用于在线检测。

本文根据某企业实际的检测要求,需要在生产线上在线检测风机壳体圆柱塞的顶面缺陷,如图1所示。针对小尺寸橡胶件的缺陷检测,本文研发了一套圆柱塞缺陷检测系统,包括硬件平台的搭建和软件的设计。该系统通过相机拍照获得的圆柱塞顶面图像,先采用霍夫变换和各向异性扩散滤波对图像进行预处理,然后采用基于超像素分割的简单线性迭代聚类(Simple Linear Iterative Clustering, SLIC)算法提取缺陷轮廓,最后通过随机森林(Random Forest, RF)算法对缺陷进行识别和分类。本系统针对复杂噪声和纹理干扰以及低对比度下的橡胶柱塞面,能够准确快速地提取出缺陷轮廓,与传统人工肉眼检测相比,大大降低了漏检率与误检率,同时也满足了检测系统实时性的要求。

图1 橡胶圆柱塞实物图

1 视觉检测系统

1.1 硬件组成

橡胶圆柱塞缺陷检测系统由光源、CCD相机、工件托盘、光学支架以及工控机组成,其中光源选用穹顶光源,均匀散射照明能够减少镜面反射。由于圆柱塞直径为3 mm,因此需选用放大镜头才能清晰拍摄到圆柱塞顶面图片,相机安装于光学支架上,正面垂直拍摄被测件,光源略低于镜头,并且与相机同轴照射。风机壳体安装在专用工件托盘上,圆柱塞安装在壳体柱塞基座孔内。整个检测系统的示意图如图2所示。

图2 缺陷检测系统示意图

通过调节光学支架调整相机和光源与工件的距离,使得圆柱塞被测端面能够清晰成像。目前已知的拍摄到的缺陷有龟裂、裂缝、凹坑,如图3所示。

(a) 龟裂 (b) 凹坑 (c) 裂缝

1.2 软件设计

软件系统包括图像处理模块与PLC通讯模块。工件随托盘到达检测位置后,主挡块抬升,PLC通过串口通信给工控机检测信号,工控机控制相机拍照,图像处理模块对获取的图片通过一系列图像算法进行处理后,将检测结果发回给PLC,挡块放行,工控机等待下一次检测信号,整体检测系统流程如图4所示。

图4 整体检测系统流程图

2 基于SLIC的缺陷轮廓提取

2.1 图像预处理

尽管通过上述的打光方式和相机镜头的合理选取能够获得清晰的检测图像,但是在被检目标圆柱塞之外的区域还存在着很多无用信息和特征,这对后续的图像分割不仅会带来很大干扰,同时也会增加计算量,为了降低检测难度和节省检测时间,考虑到柱塞形状与圆基本一致,因此采用霍夫圆变换[9]提取感兴趣区域(Region Of Interest, ROI)。根据圆柱塞实际尺寸和镜头视野,遍历获得圆心,并设定搜索半径值在0~400像素之间,然后对筛选出来的半径排序获得最大半径,就可以准确地得到圆柱塞的外轮廓拟合圆,最后将其作为掩模模板,对原图进行掩模计算,从而成功提取到ROI区域,如图5所示。

(a) 柱塞原图像 (b) 掩模模板 (c) ROI图像

由于采用放大镜头检测圆柱塞端面,端面上受光照、灰尘沾染、表面纹理等多种因素影响,图像上有很多噪声严重干扰了检测,需要对图像进行平滑滤波。MeanShift平滑算法[10]能够对图像进行保边滤波,但是其平滑窗口难以确定了容易使图像细节被模糊。文献[11]提出的非局部均值滤波(Non Local Means, NLM)算法充分利用图像冗余信息,保留了细节特征,但是其算法耗时过长不适用于在线检测。通过后续各算法实验对比,综合考虑各算法的优劣性,本文最终采用各向异性扩散滤波[12]对图像进行处理。

假设原图像为I(x,y),其滤波公式[13]为:

It+1=It+λ(cNx,yN(It)+cSx,yS(It)+

cEx,yE(It)+cWx,yW(It)

图6 各向异性扩散滤波图

2.2 超像素分割

由于本文中柱塞的缺陷区域属于简单背景下的低对比度分割,传统的分割算法不能准确地提取缺陷轮廓,并且由于采用放大镜头拍摄图片,其图片大小为2048×1536,对每个像素点操作将无法满足检测实时性的要求,而过度下采样又会导致图片细节的大量丢失,对检测带来很大的困难,因此本文采用基于超像素分割的缺陷轮廓提取算法。

超像素分割[14]是把具有相似特征的一些像素点归为一类,从而形成一个大的超像素区域,其作为后续图像处理中的新的基本操作单位,从而大大降低了算法处理的复杂度,也能剔除个别异常像素点。近几年来超像素算法大致分为2类:1)基于图论法,例如Graph-based[12]、Ncut[15]等;2)基于梯度下降法,例如分水岭算法、Mean-shift、SLIC等,其中SLIC是一种简单的线性迭代聚类方法[16],其优点在于运算速度快、调参简单、分割的紧凑度高,但是分割边缘精确度和后期区域合并处理没有分水岭算法和Mean-shift好。

综合考虑,本文采用SLIC算法,具体步骤如下[17-18]:

m=5 m=10 m=15 m=20 m=30

本文对3类缺陷图分别取m=5,10,15,20,30,得到的分割效果如图7示,可以看出m=5时,超像素边缘扭曲,对边缘附着能力不强;当m=15时,边缘整齐并且对缺陷区域分割效果较好;随着m增大,边缘呈直线状态,分割效果也较差,因此本文取m=15。

2.3 缺陷轮廓提取

通过上述基于超像素分割的算法,能够快速准确地将缺陷区域分割出来,对比每个超像素区域,可以发现存在缺陷的超像素区域灰度值与没有缺陷的区域有很大的差异,即使有些没有缺陷的区域存在亮斑或者杂质的干扰,其区域灰度均值与缺陷区域可以区分,因此只需要遍历所有的超像素区域,分别求得每个区域像素灰度均值,然后设定阈值T,大于阈值T的区域则标注为缺陷区域。最终获得3类缺陷的轮廓图,如图8所示。

图8 提取的缺陷轮廓图

3 基于RF的缺陷识别分类

本文考虑到在多分类问题上,随机森林[19]的泛化能力显著优于支持向量机,并且有无需设置和调整过多参数的优点,适用于圆柱塞缺陷的识别与分类,因此最终采用随机森林来对上述提取到的缺陷特征进行识别分类实验,具体步骤如下[20-22]:

1)样本采集。

采集裂缝、凹坑和龟裂3类缺陷图片各150幅,共构成450个样本集,其中每类100幅作为训练集,50幅作为测试集,每幅图片按本文上述算法处理最终获得缺陷轮廓区域,图片大小为256×192。

2)制作分类标签和输入向量。

3)构造RF分类器和训练参数设置。

本文是在VS2013平台下编译,结合OpenCV库函数中的RF分类器对样本集进行训练和测试,决策树数量n_estimators取k=500,最大特征数max_features取总特征数的平方根,m=2,其他参数选择默认。

4)得到检测结果。

最后将训练集得到的特征向量输入到分类器中进行训练,训练结束后,对测试集进行预测分类得到最终分类检测结果。

4 实验对比及分析

4.1 滤波实验

对提取ROI后的同一幅图像分别采用了MeanShfit平滑算法、非局部均值滤波算法和本文的各向异性扩散滤波算法,并通过去噪后的峰值信噪比(Peak Signal to Noise Ratio, PSNR)和算法处理时间这2项指标进行了对比,从表1可以看出,NLM滤波的去噪效果和效率都不是很好,本文采用的算法的去噪效果与MeanShift算法几乎一致,但效率上要远远高于该算法。

表1 各滤波算法结果对比表

滤波算法MeanShfit滤波各向异性扩散滤波NLM滤波PSNR/dB38.8336.6126.21耗时/ms45102389220

4.2 缺陷分割实验

对滤波后的图像采用自适应最大熵阈值分割法与本文SLIC算法对3类缺陷图做对比实验,结果如图9所示。与图8对比可知传统阈值分割算法分割效果受光照和纹理干扰严重,无法找到一个合适的阈值将缺陷单独分割出来,而本文算法能准确提取到3类缺陷的轮廓,证明了超像素分割算法提取缺陷准确性好。

图9 最大熵阈值分割结果图

4.3 缺陷分类实验

最后采用另一种常用分类器支持向量机(SVM)对上述同一批样本图片进行训练和预测,最终得到的分类结果如表2所示,表3为本文RF分类预测的结果表,对比可知,支持向量机的分类结果准确性只有94%,小于本文算法的97.3%,从而证明了随机森林分类器对柱塞缺陷识别的准确率更高。

表2 SVM分类器分类结果

检测类别测试集个数0类1类2类识别准确率/%裂缝50472194凹坑50149098龟裂50324590总计15051534694

表3 RF分类器分类结果

检测类别测试集个数0类1类2类识别准确率/%裂缝50491098凹坑500500100龟裂50124794总计15050534797.3

5 结束语

本文设计出了一套小尺寸橡胶柱塞端面缺陷在线检测系统,该系统的特点描述如下:

1)将SLIC算法用于图像分割,能够排除检测端面光斑、灰尘以及纹理的干扰,较准确地提取到缺陷轮廓,解决了传统阈值分割不能完全提取缺陷轮廓的问题,同时也为后续的图像处理减少了计算量和复杂度。

2)考虑工业实际情况,无法拿到足够多的缺陷样本,即不考虑神经网络训练前提下,RF算法由于其随机采样和随机特征选取的特点,在多分类问题上的泛化能力显著优于支持向量机。

3)将SLIC与RF结合的缺陷检测算法新颖有效,是一种可靠高效的橡胶件缺陷检测方法,适用于在线检测。

本文提出的检测算法不足之处在于SLIC和RF中参数的选择是固定的,在后续研究中,将考虑采用寻优算法自适应获取参数,提高系统整体泛化能力。

猜你喜欢

柱塞圆柱分类器
斜盘式柱塞泵柱塞副最佳间隙值的计算与仿真
圆柱的体积计算
“圆柱与圆锥”复习指导
一款弹簧式导向柱塞挡块替换方案设计
连续柱塞气举工艺设计及在塔里木凝析气田的应用
BP-GA光照分类器在车道线识别中的应用
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
削法不同 体积有异
基于LLE降维和BP_Adaboost分类器的GIS局部放电模式识别