APP下载

橡胶圈缺陷检测算法研究

2010-05-11朱红莉朱红岩

网络安全与数据管理 2010年22期
关键词:橡胶圈算子灰度

朱红莉,朱红岩

(1.河南工业大学 信息科学与工程学院,河南 郑州450001;2.合肥工业大学 电气与自动化工程学院,安徽 合肥230009)

图像的边缘是指图像灰度值的不连续点或变化剧烈的点的集合,橡胶圈边缘检测是要提取缺陷和背景的边界线。工业用橡胶圈在生产过程中不可避免地会出现各种各样的缺陷,例如切割不平、厚度不均、毛边和气泡等。本文以橡胶圈的气泡缺陷为例,提出了一种基于数字图像处理的混合边缘检测算法,并给出了分析过程与实验结果[1]。

1 算法研究

目标图像一般都含有噪声,所以在边缘检测前必须进行图像预处理以消除噪声,然后再对其分别用Sobel算子和Canny算子进行边缘检测,最后把两者结果相加,即得到较好的检测效果。算法框图如图1所示。

1.1 图像预处理

橡胶圈图像在拍摄、存储、传送的过程中会受到噪声的污染,从而导致图像出现失真、模糊等退化现象。常用的滤波算法有均值滤波、维纳滤波、自适应中值滤波等。实验证明,自适应中值滤波能有效去除橡胶圈图像噪声,更为重要的是,在去除噪声的同时,自适应中值滤波还能保护图像细节[2]。所以本文采用自适应中值滤波来进行图像预处理。实验效果如图2所示。

1.2 边缘检测

图1 算法框图

1.2.1 Sobel算子边缘检测

基于微分方法的边缘检测算子包括Roberts算子、Prewitt算子、Sobel算子、Laplacian算子、LoG算子等,其中前三者是基于一阶导数的边缘检测算子,后两者是基于二阶导数的边缘检测算子。在算法实现过程中,通过模板与图像中的每个像素点做卷积和运算,然后选取合适的阈值以提取边缘。一阶导数和二阶导数的不同在于,一阶导数认为最大值对应边缘位置,而二阶导数则以过零点对应边缘位置。

基于微分方法的边缘检测算子中,Roberts算子采用对角线方向相邻两像素之差近似梯度幅值检测边缘,检测水平和垂直边缘效果好于斜向边缘,定位精度较高,但对噪声敏感。Prewitt算子和Sobel算子是实践中最常用的两种算子,两者都是利用像素点上下、左右邻点的灰度加权算法,根据在边缘点处达到极值这一原理来检测边缘。Prewitt算子实现起来更为简单,但在抑制噪声方面不如Sobel算子。Sobel算子能够较为精确地检测出边缘点,对噪声具有平滑作用,但检测出的边缘较宽。

Laplacian算子是一种线性二阶微分算子,对噪声非常敏感,一般不直接用于边缘检测。LoG算子是Laplacian算子的改进方式,它选用Gaussian函数对图像进行平滑滤波,然后对平滑后的图像进行Laplacian运算。使用Laplacian算子是为了提供一幅能确定边缘位置的图像。

Sobel算子是一组方向算子,从不同的方向检测边缘。方向算子是利用一组模板对图像中的同一像素求卷积,选取其中最大的值作为边缘强度,而将与之对应的方向作为边缘方向。

其梯度为:

一幅图像的3×3区域如图3所示,其中z是图像的灰度值,则Sobel算子模板如图4所示,用以实现上述梯度公式。

图3 3×3大小的区域

图4 Sobel算子模板

Prewitt算子是平均滤波,而Sobel算子是加权平均滤波。在Prewitt算子中像素邻域与当前像素产生的影响是等价的,而Sobel算子中邻域像素与当前像素的距离有不同的权值,一般距离越小,权值越大。Sobel算子的权值2意味着通过增加中心点的重要性来达到一些平滑效果,由于引入了平均因素,因而对图像中的随机噪声有一定的平滑作用。Sobel算子是相隔两行或两列之差分,所以边缘两侧元素得到了增强,边缘显得粗而亮[3]。

实验证明,当阈值设为0.017时,用Sobel算子对橡胶圈缺陷检测效果最好。而上述其他算子均不能有效检测出橡胶圈图像的缺陷边缘。

1.2.2 Canny算子边缘检测

在图像边缘检测中,抑制噪声和边缘精确定位是无法同时满足的,边缘检测算法通过平滑滤波去除图像噪声的同时,也增加了边缘定位的不确定性;反之,提高边缘检测算子对边缘的敏感性的同时,也提高了对噪声的敏感性。Canny算子在抗噪声干扰和精确定位之间寻求最佳折中方案[4]。

Canny算子边缘检测的原理与上述几个不同,它不是通过微分算子检测边缘,而是在满足一定约束条件下推导出边缘检测最优化算子。

Canny算子边缘检测的基本原理是:采用二维高斯函数的任意方向上的一阶导数为噪声滤波器,通过与图像卷积进行滤波;然后对滤波后的图像寻找图像梯度的局部极大值,以确定图像边缘。Canny算子是一种最优边缘检测算子,其实现检测图像边缘的步骤与方法如下:(1)选择一定的高斯滤波器平滑图像,抑制图像噪声,然后计算滤波后图像梯度的幅值和方向;(2)对梯度幅值应用非极值抑制,寻找图像梯度中的局部极值点,把其他非局部极值点置零以得到细化的边缘,再用双阈值算法检测和连接边缘,实现边缘提取。

Canny算子边缘检测的三条准则是[5]:

(1)低误判率,既要尽可能地检查出真实的边缘,同时又要尽量避免检测中出现的虚假边缘;

(2)高定位精度,即检测出的边缘位置要尽量接近真正的边缘位置;

(3)对同一边缘要有低的响应次数,即同一边缘产生多个响应的概率要低[6]。

实验证明,当阈值设为0.08时,用Canny算子对橡胶圈缺陷检测效果最好。

1.2.3 图像相加

Sobel算子对灰度渐变的图像处理较好,这点在橡胶圈缺陷检测中得到了验证。Sobel算子对垂直和水平方向上的边缘有较好的检测结果,但对其他方向的检测效果一般,且对边缘的定位不是很准确,图像的边界宽度要大于或等于2个像素。

Canny算子虽然是基于最优化思想推出的边缘检测算子,但实际效果并不一定最优。Canny算子也会将一些高频边缘平滑掉,造成边缘丢失[4]。

橡胶圈缺陷的灰度和橡胶圈的灰度非常接近,对比度较低,边缘两侧的灰度变化不明显。经过大量实验,发现Sobel算子和Canny算子对橡胶圈的缺陷检测有较好的效果,但又有些瑕疵,如果把二者检测结果相加,可以使两者的优势互补,能大大提高边缘检测的效果,取得令人满意的结果。

2 实验结果与分析

图5(a)为Sobel算子的边缘检测结果,图 5(b)为Canny算子的边缘检测结果,图6为两者相加的结果。可以看出,由于橡胶圈缺陷部分和背景部分灰度非常相近,边缘检测难度较大,因此尽管分别采用了对灰度渐变处理效果较好的Sobel算子和最优边缘检测算子——Canny算子,但边缘检测的结果仍不是很理想。而图6所示的混合边缘检测结果要明显优于图5,缺陷边缘被清晰地分割出来,并且没有出现受到噪声干扰的伪边缘。

本文讨论了橡胶圈缺陷检测算法,分析了几种常用算法的优缺点,提出了一种基于Sobel算子和Canny算子的混合边缘检测算法,并用Matlab软件进行了实验仿真,证明了其检测精度要高于传统的边缘检测算子。

[1]刘春,利新琴,鲁昌华,等.密封橡胶圈凸点缺陷检测的研究[J].电子测量与仪器学报,2008(增刊):178-181.

[2]GONZALEZ R C,WOODS R E.数字图像处理 [M].阮秒琦,阮宁智,译.北京:电子工业出版社,2007.

[3]蔡立晶,蔡立娟,杨立.基于指纹图像边缘检测算法的比较研究[J].中国新技术新产品,2009(1):3-4.

[4]姚敏.数字图像处理[M].北京:机械工业出版社,2006.

[5]秦襄培.Matlab图像处理与界面编程宝典[M].北京:电子工业出版社,2009.

[6]田岩,彭复原.数字图像处理与分析[M].武汉:华中科技大学出版社,2009.

猜你喜欢

橡胶圈算子灰度
手动装配橡胶圈的装配机构
与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性
手动装配橡胶圈的装配机构
采用改进导重法的拓扑结构灰度单元过滤技术
矩形顶管隧道接头橡胶圈防水安全限值研究
拟微分算子在Hp(ω)上的有界性
Heisenberg群上与Schrödinger算子相关的Riesz变换在Hardy空间上的有界性
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
一种橡胶圈修边设备