基于边缘检测的芒果表面缺陷检测研究

高佳文,费树岷

(东南大学,江苏南京,210096)

芒果是世界五大热带水果之一,味道鲜美,营养丰富,我国于20世纪60年代开始大规模种植,2019年我国芒果种植面积32.3万公顷,产量达278.2万吨,位居世界第三[1]。然而,由于生产规模和采后分级不标准,我国芒果出口优势小,出口量较低,甚至还需大量进口芒果[2]。芒果采后分级的主要指标是颜色、尺寸以及有无缺陷,其中,表面缺陷检测一直是芒果分级中的重难点。

目前,国内外关于水果表面缺陷检测的研究主要基于计算机视觉和图像处理的方法,如常英基于机器视觉实现对樱桃番茄表面缺陷的检测[3],曾磊等通过图像处理来检测椪柑表面缺陷[4],代秋芳等基于图像处理完成了苹果表面的缺陷检测系统的设计[5]。

边缘检测是图像处理中常用的缺陷检测方法之一,本文主要采用基于边缘检测的图像处理方法进行芒果表面缺陷的检测,主要涉及图像的采集、预处理、改进Canny边缘检测方法、背景分离、阈值分割等。

1.1 图像采集

本文选择比较常见的台芒作为研究对象,在超市购买了具有腐烂、磨损、划伤等多种常见缺陷的芒果和正常无缺陷的芒果。具体图像采集装置如图1所示,包括箱体、自带采光效果的相机、白色背景板等。拍摄时为了尽最大可能避免拍摄阴影对后期芒果图像处理造成的影响,应当尽量保证摄像头置于芒果正上方。

图1 图像采集装置

1.2 图像预处理

首先对图像预处理,将采集的RGB图像进行R、G、B通道分离,彩色图像和R、G、B分量图如图2所示。从图中可以比较明显地看出B分量图中前景与背景灰度值对比最为明显,可以通过B分量图进行背景分离;
R分量图中缺陷比较明显,可以用于后续的缺陷检测。

图2 原图与R、G、B分量图

2.1 自适应中值滤波

传统的Canny边缘检测算法使用高斯滤波的方式对原始图像进行平滑滤波,但高斯滤波对于消除椒盐噪声方面没有特别好的效果,可能会使得图像丢失重要的边缘信息[6]。为了进一步减少椒盐噪声对图像边缘信息的干扰影响,本文将高斯滤波更换为自适应中值滤波。

自适应中值滤波降噪原理与中值滤波相同,不过加入了判断条件来调整窗口大小。建立一个大小可变的滑动窗口,将滑动窗口中最大灰度值和最小灰度值设为Gmax与Gmin,灰度中值设为Gmid。如果满足Gmid<Gmax且Gmid>Gmin,则滑动窗口满足需求,不需要调整窗口大小。反之,则增大窗口大小,重复该过程,直到找到合适的Gmid,或窗口尺寸无法再增大为止。之后验证窗口中心点像素G(x,y),如果Gmin<G(x,y)<Gmax,则G(x,y)为该窗口的灰度值,否则Gmid代替G(x,y)成为该窗口的灰度值。

分别使用高斯滤波和自适应中值滤波方法对含椒盐噪声的图像进行滤波,图3为滤波结果。可以明显看出,相较于传统的高斯滤波方法,本文的自适应滤波方法滤波效果更好,能够更加精准确定图像边缘信息。

图3 噪声图与两种滤波方法效果图

2.2 四方向梯度计算

传统的Canny算法在边缘检测时使用的是2×2邻域来计算图像梯度,对于噪声过于敏感,忽略其他方向的像素点,导致丢失部分边缘细节信息,影响后续的边缘检测结果[7]。

本文在原有Canny算法水平和垂直方向梯度计算的基础上,采用了四方向梯度计算方法,增加了45°与135°方向的梯度计算。四个方向的梯度计算模板如图4所示。

图4 四方向梯度计算模板

分别使用传统的Canny算法梯度计算和本文方法,图5为梯度计算结果。可以看出,本文方法相较于传统Canny算法相比,增加了梯度计算方向,考虑了45°与135°方向梯度计算的影响,边缘信息更加完整。

图5 两种梯度计算方法效果图

2.3 高低阈值选取

Canny算法中选取双阈值进行边缘检测,其中的高阈值决定了正确检测到的边缘点和错误判断的边缘点的占比,而低阈值则会对未检测到的边缘点以及正确的非边缘点的占比产生重大影响。传统的Canny算法中,高低阈值是通过实验或前期经验人为设置的,算法自适应性低,不能适应不同图像检测需求[8]。

本文采用基于梯度直方图的大津法(Otsu)自适应的确定高低阈值,避免传统方法人工选取阈值的缺陷。若目标图像灰度等级L个,Otsu算法将图像灰度值在不同的灰度等级范围内计算对应的方差,方差越大,分类越准确,最终通过不断的比较,获得最大类间方差。

设每个灰度等级对应的像素点数量值为ni,1≤i≤L,那么图像中像素点总数N与图像中各灰度等级i的出现概率pi分别为:

假设图像使用阈值t将图像中的像素点根据灰度值分为前景与背景两类,设为C1和C2,其中C1类的灰度值等级为 1到 t,C2类的灰度值等级为t+1到L,这两类像素点出现的概率以及两类的平均灰度等级分别为:

在不同的t值的情况下求取类间方差,当类间方差最大时所对应的t值就是所需要的最优阈值,将这个最优阈值设置为高阈值,低阈值设置为高阈值的一半。

分别采用传统Canny算法和本文方法对图像进行边缘检测,图6为检测结果。相比于传统方法,本文的Otsu算法自适应求取阈值,增强了算法的自适应性,图像边缘信息提取更加全面准确。

图6 传统Canny算法与本文方法

为检验本文方法在实际缺陷检测中的效果,选取若干芒果图像样本进行实验。图7(a)为芒果原图,使用本文改进的Canny算法对图7(b)芒果的B分量图进行边缘检测,得到图7(c)芒果的边缘检测图,通过漫水填充算法进行填充,得到图7(d)背景分离图像。

将R分量图与得到的填充图像相对应,得到图7(e)芒果在R分量通道中的位置图,最后通过阈值分割完成缺陷检测,实验检测结果如图7(f)所示。从图中可以看出,本文方法可以精准检测出边缘信息,绘制出边缘图,完成缺陷检测的任务。

图7 缺陷检测

为了能够更好的滤除椒盐噪声,保留更多图像边缘信息,本文在原始的Canny算法上进行了改进,以自适应中值滤波代替高斯滤波,增加了两个方向的梯度计算,并通过大津法(Otsu)自适应确定高低阈值。实验表明,本文方法获取边缘信息更加全面,边缘检测结果更加精准,并具有更好的自适应性,实现了芒果的表面缺陷检测。

猜你喜欢 梯度芒果灰度 磁共振梯度伪影及常见故障排除探讨中国设备工程(2022年19期)2022-10-12基于应变梯度的微尺度金属塑性行为研究九江学院学报(自然科学版)(2022年2期)2022-07-02采用改进导重法的拓扑结构灰度单元过滤技术北京航空航天大学学报(2022年6期)2022-07-02天津港智慧工作平台灰度发布系统和流程设计集装箱化(2021年1期)2021-04-12Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值天津医科大学学报(2021年1期)2021-01-26我才不要穿动漫界·幼教365(中班)(2020年3期)2020-04-20Arduino小车巡线程序的灰度阈值优化方案中国信息技术教育(2020年2期)2020-02-02一个具梯度项的p-Laplace 方程弱解的存在性华东师范大学学报(自然科学版)(2019年3期)2019-06-24小洞会“咬”人动漫界·幼教365(小班)(2018年10期)2018-05-14小洞会“咬”人动漫界·幼教365(大班)(2018年10期)2018-05-14

推荐访问:检测 芒果 缺陷