基于机器学习的免套袋苹果缺陷分级
2019-04-23王风云郑纪业
张 琛,房 胜,王风云,李 哲,郑纪业,沈 宇
(1.山东省农业科学院 科技信息研究所,山东 济南 250100; 2.山东科技大学 计算机科学与工程学院,山东 青岛 266000)
苹果受众多,市场大,是目前我国种植面积最大的水果。近年来,随着生活水平的提高,消费者对苹果的外观、口味有了更高的要求,不同的消费者对苹果的大小、色泽、糖度、硬度、表面完好度有不同的需求,苹果分级势在必行。
随着农业现代化以及生产的集中,大批量苹果手工分级的方法已逐步被淘汰,取而代之的是机械分级。最初的机械分级是根据苹果的大小、质量进行的,但这种分级无法将有缺陷的苹果区分出来[1]。为区分出有缺陷的苹果,国内外基于计算机视觉的苹果分级研究逐渐增多[2-7]。另外,果梗与花萼在颜色和灰度上与缺陷接近,易被判别为缺陷,影响缺陷检测的精度,为避免果梗、花萼对缺陷的影响,对果梗、花萼与缺陷进行区分的研究也日渐增多。刘禾等[8]采用基于知识的坏损点检测,利用特定图像中果梗、花萼与形心的距离关系区分出果梗、花萼。徐娟等[9]利用图像在形态学操作前后的差异进行果梗判别。赵娟等[10]利用苹果全方位图像中必然存在果梗、花萼的常识,通过判断缺陷数量是否>2,以及检测可疑区域形状的方法,消减果梗、花萼对缺陷统计的影响。李聪等[11]通过对苹果图像逐行扫描,累加缺陷像素的方法计算缺陷面积,再用缺陷面积与总面积的比值计算缺陷程度。黄辰等[12]在利用多个特征对苹果进行分级的过程中,根据灰度值判断缺陷区域,再利用像素当量与图像压缩率比值的平方与像素的乘积,计算出缺陷面积。除了上述比较常见的图像处理方法,高光谱技术与深度学习也被应用到缺陷检测中。田有文等[13]利用感兴趣区域的纹理特征与高光谱技术结合,对虫伤与果梗、花萼进行区分。刘云等[14]通过卷积神经网络[15-16]对果梗、花萼、边界及腐烂、疤痕、虫伤等缺陷进行分类。根据缺陷程度进行的分级有直接计算缺陷面积的,也有计算缺陷与苹果面积比值的,却鲜有根据缺陷数量进行的分级,不能满足对缺陷数量有要求的分级需求。并且在分级的过程中,对果梗、花萼的区分度普遍不高,难以保证分级准确性,本研究将果梗、花萼、缺陷分类结果与缺陷数目、面积结合进行缺陷分级。
当前对苹果进行的分级研究大多是针对套袋苹果[17-18]。虽然套袋苹果是目前苹果种植业发展的主流,但是免套袋苹果因日照充足而具有较高的甜度,始终在市场中占有一席之地。免套袋苹果相对于套袋苹果而言分级难度大,因为前者在外形和缺陷上更具有多变性。本研究利用固定阈值分割及形态学方法[19]提取完整苹果图像,并计算其像素。利用HSV(Hue saturation value,色调、饱和度、明度)颜色空间[20]将疑似缺陷区域从苹果图像中提取出来并生成二值图像,利用种子填充法在二值图像中标记连通区域,计算连通区域的数量和面积。记录每个区域的坐标,根据记录的坐标确定灰度图上疑似缺陷区域的位置,并计算该区域的灰度共生矩阵特征值。将特征值输入训练后的SVM(Support vector machine,支持向量机)[21-22]进行果梗、花萼与缺陷的区分,确定真正缺陷的数量与面积,最终对免套袋苹果进行正确分级。
1 材料和方法
1.1 试验材料与设备
试验苹果样品为山东通达现代农业集团有限公司提供的直径80~85 mm的免套袋红富士(包括表面完好的苹果、表面带有不同程度人为损伤或病虫害造成缺陷的苹果),共180个。其中,120个为训练集,用于建立机器学习模型;60个为测试集,用于测试模型准确度。
试验装置如图1所示。以传送带上的槽位固定苹果。传送带为黑色,可以避免反光造成影响,且便于图像处理过程中苹果图像的提取。相机分别位于传送带的上、左、右3个方位。为保证所获取图像不受其他光源的干扰,3个相机位于传送带前进方向的不同位置,且拍照背景均为黑色。每个相机均配备环形光源,保证光照均匀。
试验所用软件为语言开发工具VS2013,处理图像的函数库为Opencv。
1.传送带上方相机;2.传送带右侧相机;3.传送带
1.2 检测流程
将苹果放置在传送带上,传送带匀速前进,相机拍照范围为当前槽位,即每次可以拍1个苹果,拍照频率根据传送带速度进行调节。每次拍照获得的图像传送到计算机进行缺陷识别,计算缺陷数量及缺陷部分像素。每个苹果根据3个相机获取的不同侧面图像,计算3个侧面图像中缺陷总像素与苹果总像素的比值,结合缺陷数量,对当前苹果进行分级。
2 结果与分析
2.1 免套袋苹果图像获取
利用3个位置的相机获取被检测苹果3个不同侧面的RGB(红绿蓝)颜色空间图像,导入计算机并作为一组连续的数据,方便后续将3个侧面图像处理结果进行综合分析,以便对苹果进行分级。采集到的其中1个苹果的3个侧面图像如图2所示。
图2 免套袋单个苹果3个侧面Fig.2 Three side images of one non-bagged apple
2.2 免套袋苹果图像分割与面积计算
对目标图像处理之前,先将其从原始图像中提取出来[23-24]。阈值分割法[2]是用1个或多个阈值将图像分为几部分的常用方法。该方法优点是较为直观、易实现,且计算速度快;缺点是仅考虑图像的灰度信息,忽略了其他有价值的信息。本研究图像分割是为了提取图像中的苹果区域,不需考虑图像的其他灰度信息,因此,可采用阈值分割法。阈值分割法包括固定阈值分割、自适应阈值分割,在对多幅图像做分割时,固定阈值分割、自适应阈值分割分别适用于图像间场景变化较小、较大的情形。本研究中,被分割的苹果图像均是在同一场景中采集的,不同图像间场景变化不大,因此,采用固定阈值分割的
方法从灰度图像中提取苹果二值图像[2]。
获得苹果二值图像后,计算苹果区域像素,将其作为苹果面积。但获得的二值图像受低于阈值的深色缺陷干扰,致使苹果部分深色缺陷区域的像素提取不到。排除苹果图像中深色缺陷部分影响可通过形态学闭运算实现,即通过试验确定边长大于缺陷直径的矩形结构元,对目标图像实施膨胀操作,填充较小的深色缺陷区域。随后,腐蚀操作可以恢复因膨胀操作而增长的边界。
经过以上操作,得到如图3所示的苹果图像掩膜[25],再通过计算整幅二值图像值为1的像素,求出当前苹果图像的面积。
图3 免套袋苹果3个侧面图像掩膜Fig.3 Three side image masks of the non-bagged apple
2.3 免套袋苹果感兴趣区域提取
免套袋苹果在光照不均匀的环境下生长,因此,表面颜色不均匀,局部颜色相差较大,在转换为灰度图后深色正常区域与缺陷区域灰度值接近甚至一致,进行固定阈值分割时,容易将这类深色区域判别为疑似缺陷区域。图4为苹果局部图像,其中,图4a为苹果表面的深色区域,图4b、4c为带有缺陷的苹果表面。图4a中深色区域像素灰度值大多在70~90,部分可低至65。图4b缺陷部分灰度值普遍在55~70,相对图4a的深色区域具有一定的区分度。图4c缺陷部分灰度值相差较大,部分缺陷区域灰度值<40,同时,又有不少区域灰度值>90。因此,对灰度图像采用固定阈值提取疑似缺陷区域的方法不适用于免套袋苹果分级。
a.苹果表面的深色区域;b、c.苹果表面的缺陷
自适应阈值分割是对固定阈值分割的扩展[26],但在苹果灰度图像中采用自适应阈值分割方法提取疑似缺陷区域也有不足之处,这是因为免套袋苹果表面颜色极不均匀,易对正常区域判断产生干扰,导致产生边缘效应,致使错误提取出大量轮廓,对后面分析结果造成干扰。
灰度图像在免套袋苹果分级中的短板可在彩色图像中得到弥补。彩色图像可用多个颜色空间分别表示,其中,最常用的是RGB和HSV。RGB颜色空间由红、绿、蓝3个通道构成。相机获取的初始图像信息即为RGB 3个通道的数据,但是RGB颜色空间并不能很好地反映物体具体的颜色信息。相对于RGB颜色空间,HSV颜色空间能够非常直观地表达色彩的色调、鲜艳程度以及明暗,方便颜色之间进行对比,因此,本研究将图像由RGB颜色空间转到HSV颜色空间,进行疑似缺陷区域提取。转化如下:
V=max(R,G,B)
(1)
(2)
(3)
其中,R、G、B分别为颜色空间转换前像素在红、绿、蓝3个通道的值,V、S、i分别为颜色空间转换后像素在明度、鲜艳度、色调3个通道的值。
利用前面得到的掩膜,从彩色原图(图5a)中提取出苹果图像,再根据其在HSV颜色空间试验确定的阈值分割疑似缺陷区域,经过滤波操作后得到图5b所示疑似缺陷区域的二值图像。图5b中白色部分为提取疑似缺陷区域得到的果梗和缺陷区域,但也包含了部分被错误提取的正常区域。正常区域被提取主要由果梗区域提取遗漏以及类似缺陷的斑点造成,可通过后续处理消除或降低其对结果的影响。
a.苹果原图;b、c.苹果疑似缺陷区域的二值图像
2.4 计算免套袋苹果缺陷数目及面积
用种子填充法在二值图像中按序标记出所有的连通区域,计算每个连通区域像素,记录其四周最外侧坐标。连通区域在灰度图像中对应的位置有可能为果梗、花萼或者误判的正常区域,因此,需要根据记录的每个连通区域最外侧坐标在原图对应位置取出最小矩形区域,做进一步判别。图6为根据记录的坐标提取的疑似缺陷区域。其中,图6a为果梗,图6b、6c为较小缺陷放大后的图像。
a.果梗;b、c.苹果表面的缺陷
果梗、花萼以及病虫害造成的缺陷各自具有比较固定的静态特征[27],本研究采用纹理特征对缺陷与非缺陷进行分类。苹果摆放是随机的,没有固定方向,因此,在区分过程中还要考虑到其方向的变化。灰度共生矩阵法具有旋转不变性[28],能适应苹果方向的变化,因此,本研究采用灰度共生矩阵特征值对连通区域作进一步判别。
利用灰度共生矩阵的能量(ASM)、熵(Ent)、对比度(Con)和逆差矩(IDM)等特征值对缺陷与非缺陷进行区分。其中,能量值表征纹理均一和规则化程度,熵值表征纹理复杂程度,对比度值表征纹理灰度差程度,逆差矩值表征纹理间变化程度。计算公式如下:
(4)
(5)
(6)
(7)
其中,i和j表示灰度分别为i和j的像素按确定的间距和角度出现的次数,P(i,j)则为(i,j)像素的联合分布概率。以上4种特征足以完成分类任务,采用更多的特征虽然会提升准确率,但是会造成各特征提升不明显且冗余,因此,本研究采用以上4种特征作为分类依据。
分类可以用求出的特征值分别直接与其经验阈值比较,但是该方法分类效率较低。为提升分类效率,本研究采用SVM进行分类。一般情况下,被误判为缺陷区域的正常区域面积都较小,因此,为简化分类过程,设定阈值T,对面积
(8)
其中,xc为核函数中心,σ为函数宽度参数,σ越大,显著影响核函数的样本范围越大,学习能力越强。表1为训练集样本数∶测试集样本数为2∶1时将正常区域、果梗区域、花萼区域分别作为正样本,与负样本缺陷区域进行区分的分类正确率。可以看出,正常区域、果梗区域与缺陷区域的区分度较高,花萼则因为部分个体外观与缺陷过于接近而导致分类正确率较低。
表1 免套袋苹果不同区域分类正确率Tab.1 Classification accuracy of different parts of non-bagged apples
完成分类后,用疑似缺陷区域的数量、面积减去误判区域的数量、面积,得到缺陷的数量、面积,并将该结果与苹果另外2个侧面图像的处理结果相结合,求总缺陷数量(C)、总缺陷面积比(R)。计算公式如下:
C=C1+C2+C3
(9)
(10)
2.5 免套袋苹果缺陷分级结果
无论是国家标准、行业标准还是地方标准,苹果分级标准均涉及到缺陷面积与缺陷数量。在本研究的分级标准中,用缺陷区域像素与苹果区域像素比值表示缺陷面积,综合缺陷像素比值及缺陷数量进行分级。确定缺陷像素比值的阈值时,根据《中华人民共和国国家标准鲜苹果(GB/T 10651—2008)》对缺陷面积、缺陷数量以及果径大小的要求,给出基于苹果3个侧面图像的苹果缺陷分级标准,见表2。
表2 免套袋苹果缺陷分级标准Tab.2 Standard for defect classification of non-bagged apples
计算机对图像进行处理分析时,将缺陷数量与缺陷像素比值都作为必要条件,苹果同时满足某一等级的上述2个条件才能分类到该等级,不能同时满足上述2个条件的,以其满足的较低标准为最终分级结果。
对60个测试集样品进行分级后,与提前进行的人工分级结果作比较,得到表3所示分级结果。
表3 免套袋苹果分级正确率Tab.3 Overall classification accuracy rate of non-bagged apples
对测试集60个免套袋苹果进行分级,结果显示,优等品、一等品、二等品分级正确率分别为89.5%、91.9%、75.0%。将测试集60个免套袋苹果作为整体考虑,其分级正确率为90.0%。从上述结果可以看出,一等品分级效果最好,优等品较一等品分级效果差,原因是总有部分正常区域被错误归类为缺陷,而优等品不具备容错性。二等品的分级效果较差,但因为二等品样本较少,所以不能排除其偶然性,后续试验将增加二等品的数量继续对模型进行测试。测试样本是随机选出的,测试样本与总体样本中样本的等级分布基本一致,因此,认为测试结果具有代表性,即本研究的缺陷分级准确率为90.0%。
3 结论与讨论
前人研究缺陷分级中常用颜色或纹理等图像处理的方法对果梗、花萼进行简单判别,以统计二值像素的方法计算缺陷面积,具有一定分级能力,但准确率较低。本研究将图像处理方法与机器学习方法相结合,从缺陷判别、缺陷程度计算方面提升了缺陷分级的准确率。在缺陷判别方面,利用颜色判断结果提取疑似缺陷区域,再将纹理特征与SVM结合做最终判别,提升了缺陷判别的准确率;在缺陷程度计算方面,采用种子填充法标记连通区域,计算缺陷的数量与每个缺陷的面积,与以往只判断缺陷的有无或只笼统计算缺陷总面积相比,更为精准。
对测试集60个免套袋苹果进行分级,得到了90.0%的分级正确率。通过分析发现,影响正确率的主要因素一是对疑似缺陷区域的提取准确率不够高,有部分果梗、花萼区域因颜色变化不规律导致图像提取不完整;二是受果梗、花萼识别正确率的限制,其中,又以花萼与缺陷的识别难度较大。除此之外,部分苹果果形异常,致使苹果侧面图像果梗、花萼不完整,因免套袋造成的其他种类斑点及特殊纹理,缺陷区域与果梗、花萼区域重叠,破损伤不易识别等,均会对分级结果造成影响。
苹果表面为曲面,无法完全避免光照不均匀的现象,降低了疑似缺陷区域提取的准确度,增大了后续缺陷判别的计算量。因此,下一步继续从图像处理与机器学习相结合的角度出发,提升果梗、花萼与缺陷判别的准确率。另外,研究苹果表面的光强度校正方法,降低光照不均匀对分级结果的影响。