基于自适应阈值“双K算法”的零件缺陷边缘检测

2019-10-08 09:03任浪管声启洪奔奔
软件 2019年2期
关键词:边缘检测

任浪 管声启 洪奔奔

摘  要: 针对传统边缘检测方法难以实现边缘信息的准确检测问题,提出了一种零件缺陷边缘检测的新方法.首先对采集到的零件缺陷图像进行灰度化和Wiener滤波,以减少噪声等因素对后期检测的影响;然后,以kalman算法预估图像分割阈值作为Krisch算法的初始阈值;在此基础上,进行零件缺陷边缘检测,以提高零件缺陷检测的准确性. 最后,利用MATLAB软件对零件缺陷图像进行仿真试验,验证边缘检测算法的检测效果.实验结果表明,推荐算法检测的平均准确率达到94.38%,能够有效实现零件缺陷边缘信息的检测.

关键词: 自适应Wiener滤波;分割阈值;Krisch算法;边缘检测

【Abstract】: Aiming at the problem that the traditional edge detection method is difficult to accurately detect the edge information, a new method for edge detection of part defects is proposed. Firstly, the collected part defect image is grayed and Wiener filtered to reduce noise and other factors for later detection. The influence of the image segmentation threshold is estimated by the kalman algorithm as the initial threshold of the Krisch algorithm. On this basis, the edge detection of the part defect is performed to improve the accuracy of the defect detection of the part. Finally, the MATLAB software is used to image the defect of the part. The simulation experiment verifies the detection effect of the edge detection algorithm. The experimental results show that the average accuracy of the recommended algorithm detection is 94.38%, which can effectively detect the edge information of the part defect.

【Key words】: Adaptive wiener filtering; Segmentation threshold; Krisch algorithm; Edge detection

0  引言

在产品的生产加工,以及储存运输等过程中,受到设备磨损,外部环境等因素的影响,难免会出现各种缺陷,而传统人工检测方法效率低下、精度差等问题,很难满足工业需要[1]。随着机器视觉技术的发展,基于机器视觉的边缘自动检测成为可能.为此广大学者展开了深入研究,提出了各种边缘检测的优化算法[2],使得边缘检测技术已经开始广泛

应用于各种检测领域[3-4]。

目前,零件缺陷边缘检测算法主要有基于大数据检测方法[5]、基于结构化局部二值Kirsch模式[6]、和激光扫描法[7]等。文献[9]针对带钢表面缺陷的特点,提出了一种基于图像零均值化的检测方法,有效地抑制了图像背景的干扰,实现了带钢缺陷的实时性检测;文献[10]采用将canny思想和Kirsch算法相结合的边缘检测算法,既可以抑制噪声,又可以检测到弱边缘;文献[11]主要针对遥感影像道路,在图像预处理之后,采用了Krisch算子进行边缘提取,利用改进的Harris算子提取特征点,为后期信息的矢量化提供了解决方案。这些算法虽然能够在某些特定环境实现对缺陷进行检测,但其检测阈值往往很难适应工业现场环境变化。

针对零件表面缺陷边缘难以准确检测问题,本文提出一種自适应阈值的缺陷边缘检测算法.通过引入最优估计技术Kalman算法[12]到边缘检测算法Kirsch中,实现零件缺陷边缘信息的有效提取,从而实现图像的背景与目标的精确分割.

1  零件缺陷图像边缘检测

为了提高零件缺陷边缘检测的准确性,本文提出了一种新的边缘检测方法。在零件图像预处理基础上,通过kalman阈值预估,得到缺陷与背景的最优阈值,结合krisch边缘检测,实现零件缺陷边缘信息的准确提取,其检测过程如图1所示。

1.1  图像预处理

工业现场所采集的机械零件缺陷图像,往往含有大量噪声信息,因而需要图像预处理。本文首先对采集的图像进行图像灰度化,以减少后期计算量;在此基础上,通过滤波算法滤除噪声信息,减少噪声等对后期缺陷检测的干扰。在滤波除噪时,滤波算法选择直接影响滤波效果。中值滤波虽然对缺陷图像细节保留较好,但其对零件缺陷的纹理破坏很严重;高斯滤波对零件缺陷图像的噪声敏感,但会使缺陷边缘模糊,进而丢失弱边缘信息,造成缺陷检测不准确等问题;均值滤波由于其本身固有缺陷,在去噪的同时,也破坏了图像的细节部分,无法兼顾图像细节与噪声点之间的平衡。相较于其他滤波器,Wiener滤波器的适应面更广泛,并非针对解决某一问题的滤波器,其实用性较好,因而本文采用Wiener滤波器对零件缺陷图像进行自适应滤波。

1.2  Kalman阈值预估

在对零件图像进行缺陷目标提取时,阈值的选择是一个关键,阈值过大或过小,都会对边缘检测的准确性有影响,所以既要减少伪边缘的影响,又要防止弱边缘信息的丢失.因此引入Kalman自適应阈值估计,为边缘检测提供更精确的分割阈值.具体算法如下:

1.3  Krisch边缘检测算法

边缘检测方法有很多种[14],包括常见的边缘检测算法Sobel算子、Roberts算子、Prewitt算子、Canny算子、Kirsch算子、Laplace算子等,以及新的算法如基于亚像素的检测方法[15]和融合阈值与形态学的边缘检测方法[16]等。随着边缘检测技术的日新月异[17-18],文献[19]给出了各类边缘检测算法的最新研究进展,从信噪比、定位精度、单边缘响应和计算效率等方面对一阶和二阶微分算子进行算法对比,分析了各算法的优缺点。以下详细介绍边缘检测Kirsch算法.

传统Kirsch算子是一种3×3的非线性方向算子,是将目标与背景的像素各取同类平均值及平均值之差,同时取其中最大的值作为边缘强度,达到边缘检测的目的。Kirsch不仅能够定位目标,还能够很好的保护边缘细节的信息[20]。

Krisch边缘检测算法是由8个卷积核组成,通过使用8个卷积核分别对图像像素进行卷积,然后取最大值点作为边界点.具体算法可以归结为两大部分:第一部分为扫描图像,对图像像素进行遍历,用8个卷积核做卷积操作以此定位图像缺陷边缘;第二部分比较这8个模板的结果,取最大值为目标特征.八个模板如下:

2  实验仿真及分析

2.1  实验环境

为验证本文算法有效性,实验时采用本文算法与其他文献经典方法进行对比的方法,以验证本文的边缘检测方法的效果;实验中采集机械零件缺陷图像作为测试对象;实验平台是基于处理器为Intel(R) core(TM) i5-4210U,内存4G的硬件配置系统下,使用matlab R2016a软件作为仿真平台。

2.2  实验步骤

首先在实验环境下采集机械零件缺陷图像,并进行裁剪和预处理;然后,分别用本文算法与经典算法进行零件缺陷边缘提取,分析各种检测算法边缘提取的效果;在此基础上,对提取的零件缺陷几何特征参数进行客观评价,以证明本文推荐算法的有效性。

2.3  实验结果及其分析

2.3.1  边缘检测效果对比分析

为验证本文算法的效果,实验分别与其他文献中经典算法进行对比实验,实验结果如图2所示。图2(a)为零件缺陷原图,图2(b)为文献[8]采用Otsu改进Canny算子的图像边缘检测(即算法1);图2(c)为文献[21]采用人工设定阈值进行分割的方法(即算法2);图2(d)为人工标记效果图。

由图2分析可知,在图2(b)中算法1无法提取到缺陷目标,由于采用自适应滤波器改进传统高斯平滑滤波,同时用Otsu代替传统双阈值检测算法,不适用于本文实验对象;图2(c)算法2可定位到缺陷区域,但含有大量噪声信息,而且边缘连续性较低;图2(e)采用本文提出的“双K算法”,边缘检测效果与图2(d)中人工标记效果基本相同,在很好抑制噪声的基础上,准确得到目标缺陷特征.因此证明本文边缘检测算法是合理有效的,并取得不错的检测效果。

2.3.2  边缘几何特征评价及分析

为客观评价本文算法结果的准确性,以几何特征参数的误差率为指标来衡量检测的效果.选取检测目标的面积、周长、形状因子作为特征,误差率的计算公式如下

其中,P实际表示算法实际像素值,P人工表示人工标注得到的像素值,D表示误差率。

为了证明本文边缘检测算法的准确率,选用平均误差率作为综合评价指标,采用类比的方法对零件几何特征进行对比实验,如表1所示。

根据表1可知,算法1的零件边缘检测准确率在1.55%~13.18%,检测准确率较低,主要原因可能是Otsu方法在目标与背景面积相差较大时分割效果不佳。

算法2的边缘检测准确率在40.31%~91.48%,准确率较算法1有很大提高,可能原因是对图像空间信息相差大、不敏感,但采用人工设定阈值进行分割会降低边缘检测的准确率;而本文算法的边缘检测算法准确率在91.48%~99.01%,高于算法1和算法2,主要原因在于本文采用自适应阈值的方法,能有效提取零件缺陷图像边缘信息。

综上所述,对比上述几种算法误差率,结果分析表明,本文算法的即平均准确率达到94.38%,实现了缺陷边缘的准确检测,因此证明本文算法有较高的准确性。

3  结束语

针对零件缺陷边缘的精确检测的需要,本文通过分析该零件缺陷的特征,提出了一种基于自适应阈值“双K算法”的缺陷边缘检测方法。该方法以Wiener自适应滤波,并结合kalman算法预估图像分割阈值,克服krisch算法阈值自适应性差的问题,最后较准确得到目标特征.本文方法有效抑制了背景噪声的干扰,较为完整的提取到零件缺陷边缘信息,证明本文算法的有效性和准确性。对于目标中存在少量的伪边缘信息处理,将成为下一步亟待解决的问题。

参考文献

何小嵩, 张占文, 荣伟彬. 基于计算机视觉的微球缺陷检测及分类方法[J]. 强激光与粒子束, 2017, 29(8): 75-79.

陈凯, 王舒憬. 基于机器视觉的图像边缘检测算法的优化研究[J]. 工业控制计算机, 2015(11): 91-92.

李敏花, 柏猛, 吕英俊. 自适应阈值图像边缘检测方法[J]. 模式识别与人工智能, 2016, 29(2): 177-184.

郭璇, 郑菲, 赵若晗, 等. 基于阈值的医学图像分割技术的计算机模拟及应用[J]. 软件, 2018, 39(3): 12-15.

Wells L J, Shafae M S, Camelio J A. Automated Surface Defect Detection Using High-Density Data[J]. Journal of Manufacturing Science & Engineering, 2016.

Kang G Y, Guo S Z, Wang D C, et al. Image Retrieval Based on Structured Local Binary Kirsch Pattern[J]. Ieice Transactions on Information & Systems, 2013, E96.D(5): 1230-1232.

Hong-Seok P, Mani T U. Development of an Inspection System for Defect Detection in Pressed Parts Using Laser Scanned Data[J]. Annals of Daaam & Proceedings, 2014, 69(6): 931-936.

张志强, 宋海生. 应用Otsu改进Canny算子的图像边缘检测方法[J]. 计算机与数字工程, 2014, 42(01): 122-128+141.

管声启, 师红宇, 王燕妮. 基于图像零均值化的带钢缺陷检测[J]. 钢铁研究学报, 2013, 25(4): 59-62.

康牧, 周震, 林晓. Canny思想和Kirsch算法相结合的边缘检测算法[J]. 河南大学学报(自然科学版), 2017, 47(1): 73-78.

杨孝翠, 孟万利. 基于对比度增强和形态学的遥感影像道路提取[J]. 测绘通报, 2017(08): 45-49.

陈政, 刘康. 闪烁噪声下的自适应无迹卡尔曼算法[J]. 软件, 2018, 39(01): 70-74

赵霆, 管声启, 王鹏. 基于目标面积特征分析的带钢缺陷图像分割方法[J]. 西安工程大学学报, 2015, 29(04): 477-481.

林王兵, 许燕, 韩飞, 吕超贤, 龚佳俊, 等. 实验室环境下的边缘检测技术研究综述[J].软件, 2015, 36(9): 29-32

刘成志, 李军成, 杨炼. 基于三次Bézier 曲线逼近的边缘亚像素定位方法[J]. 软件, 2015, 36(7): 31-35

崔丽群, 张月, 田鑫. 融合双阈值和改进形态学的边缘检测[J]. 计算机工程与应用, 2017, 53(09): 190-194+200.

Xie S, Tu Z. Holistically-Nested Edge Detection[C]// IEEE International Conference on Computer Vision. IEEE, 2016: 3-18.

Ren H, Zhao S, Gruska J. Edge detection based on single- pixel imaging[J]. Optics Express, 2018, 26(5): 5501.

張红霞, 王灿, 刘鑫, 等. 图像边缘检测算法研究新进展[J]. 计算机工程与应用, 2018, 54(14): 11-18.

康牧, 王宝树. 自适应Kirsch边缘检测算法[J].华中科技大学学报(自然科学版), 2009, 37(4): 47-50.

王诚诚, 李文森, 雷鸣, 等. 基于目标特征的机械零件表面缺陷检测方法[J]. 软件, 2016, 37(4): 32-34.

猜你喜欢
边缘检测
基于数学形态学的一种改进CO2焊熔池图像边缘检测算法
离散过程神经网络和CGA相融合的边缘检测