基于图像处理的苹果检测与识别技术研究
2024-03-28孟倩楠安佳骏
孟倩楠,安佳骏
(河北经贸大学信息技术学院 河北 石家庄 050061)
0 引言
在乡村振兴的不断推进下,我国苹果种植生产量逐年增高,现已位居世界苹果生产国平均年产量之首,于是对苹果种植生产行业智能化检测提出了更迫切的要求。 传统苹果检测由果农肉眼并凭借经验对其做出应有的判断,后来无智能化机器代替了部分人工检测,但由于只具有死板的程序设计,仍无法代替人工。 而基于图像处理技术可以凭借训练数据集、图像形态学、二值化处理等技术将苹果的生长状态以及大小、形状、颜色等多项指标进行大数据分析以及特征提取,解决人力资源浪费问题与苹果品质问题。 本文归纳总结了图像训练集与数据库搭建、分类识别技术简述、图像采集与预处理、成熟度检测、特征提取和分级模式研究,为新一代苹果检测识别技术提供新思路。
1 图像训练集与数据库搭建
本实验采用图像数据集的形式进行处理,首先通过Github 与Model Whale 网站上寻找开源苹果图像数据集进行初步采集训练,最后选择Fruits 360 数据集,该数据集是目前最常用的苹果数据集之一,包括总数为47 593 张100×100 像素的图片,训练集包括35 625 幅图像,验证集包括11 968 幅图像。 同时还进行实地考察、采集来扩充数据库,对得到的图片数据进行预处理工作,构建优果劣果甄选数据库,并将不同环境下苹果产量、果实情况等数据导入后台处理。
2 苹果分类识别技术简述
本技术需要使用提前设定好的苹果特征进行提取处理,对数据集的图像用MATLAB 等工具进行预处理,提取相关主要特征,并放入训练分类装置中,等待系统输出最终反馈。
图像分类识别系统首先需要使用颜色全局二值模式处理来提取图片纹理的基本信息特征,然后通过直方图颜色模型提取相关颜色信息。 采用匹配分数融合算法将纹理特征与色彩特征相结合,用于最终的识别。 该方法可以在一定程度上提高识别率及准确率,还可以减少时间开销。 另外还有学者提出将系统分为三个阶段:预处理阶段、特征提取阶段与分级阶段。 预处理阶段用于减少颜色相关指数,特征提取阶段用于生成特征向量,分级阶段采用支持向量机(support vector machine, SVM)算法来识别苹果类型。
3 苹果图像采集与预处理
3.1 图像采集
3.1.1 机器视觉检测技术
本系统主要应用的是基于MATLAB 机器视觉的检测技术,机器视觉检测技术是用计算机来模拟人类视觉功能进行检测的技术,主要是以计算机和图像获取设备为工具,由图像获取设备将检测对象的外部特征信息高速输送给计算机进行图像处理、分析和模式识别,从而实现对检测对象外观品质的综合评价。[1]一套完整的机器视觉系统包括照明光源、光学镜头、电荷耦合器件(charge-coupled device,CCD)相机、图像采集卡、图像检测软件以及监视器、通信单元等组成部分。 这些部件协同工作,以实现对视觉数据的精确采集、处理和分析,从而用于机器视觉领域的各种应用。
3.1.2 技术路线
本系统采用CCD 相机和图像采集卡完成图像采集,并将图像传输至计算机,以便进行后续的图像处理。 通过对采集到的图像进行预处理,可以提高检测分类的准确性。 确定适当的图像分级参数,从尺寸、颜色和缺陷三个方面对苹果图像进行分级,并综合各方面的分级结果,得出果实的最终等级,如图1 所示。
图1 苹果图像采集装置示意图
3.2 图像预处理
3.2.1 流程简述
图像预处理的主要目的是消除无关信息,增强有关信息的可检测性,并尽可能简化数据。 在苹果图像的采集和预处理中,主要流程为:图像采集—图像分割—形态学去噪—边缘检测。 图像采集过程中使用到的颜色模型为RGB 模型;图像分割过程中运用到阈值分割,主要是灰度直方图双峰法,将RGB 分量的苹果彩色图像转化为灰度图像,简化了数据表示,便于后续的处理;形态学去噪过程中用到二值化处理,用0 和255 灰度值来区别实体与背景,提高图像识别,便于轮廓的提取,用于操作平滑目标边缘,并消除表皮的一些其他影响,例如毛刺等;边缘检测过程中先利用图像增强技术提高图像识别度,然后采用Canny 算子检测技术提取边缘。 Canny 算子检测技术的基本原理是先使用高斯滤波器进行平滑滤波处理,方便更好地保留图像的整体结构和细节,然后采用非极大值抑制技术,双阈值边缘点筛选处理来提取边缘信息。
3.2.2 颜色模型
在图像采集时使用RGB 模型来表示和处理图像的颜色信息。 RGB 模型是一种常用的颜色模型,它由红色(R)、绿色(G)和蓝色(B)三个分量组合而成。 在RGB 模型中,每个分量的取值范围是(0,255),代表了相应颜色的强度。 通过调整这三个分量的数值,可以得到不同的颜色。 同时,研究人员通过实验得到,苹果图像在R 分量下的亮度最高,与背景形成明显对比;而在G 分量和B 分量下目标亮度较暗,与背景之间差异不大。 所以,R 分量图适合用于作为图像分割任务的前提。
3.2.3 图像分割
在图像分割时使用灰度直方图双峰法来将彩色图像进行灰度化处理,此后可以在图像的灰度直方图中看到两个明显的峰值。 通过灰度直方图双峰法,可以根据苹果图像的灰度分布对图像进行分割,其中运用到了阈值分割技术,将阈值R 与原始灰度图像f(x,y)作比较,表达式如式(1)所示。
当图像中存在明显的目标与背景时,其灰度直方图将呈现双峰形态,双峰之间的谷底灰度值即为分割阈值。 将灰度值高于阈值的部分划分为目标,低于阈值的部分则为背景。 图像分割操作不仅可以简化数据的表示,还不会对后续的形态学去噪和边缘检测提取这两个操作的准确性产生影响,是图像预处理过程中必不可少的一步。
3.2.4 形态学去噪
形态学去噪时首先用到二值化处理,将目标与背景分别表示为黑色和白色,提高图像识别。 其次,使用形态学操作(膨胀和腐蚀)对二值图像进行处理。 膨胀操作可以扩大目标区域并填充其中的空洞,从而消除小的噪声。 腐蚀操作可以缩小目标区域并分离连在一起的目标结构,从而消除细小的尖峰噪声。 最后,本操作还采用了形态学操作中的开运算来消除图像分割后会出现一些孤立的像素点或目标边缘不平滑的现象。 因为上述现象会影响图像分割的效果,并导致后续的特征提取产生较大误差,所以这一操作为后续图像的处理提供了有效性和可靠性。
3.2.5 边缘检测
在边缘检测时先利用图像增强技术提高图像识别度,然后采用Canny 算子检测技术提取二值图像的边缘。 图像增强技术主要用于提高图像的清晰度和对比度,通过锐化技术增强图像的边缘和细节,更加突出图像边缘信息,通过对比度增强技术调整图像灰度级,使提取目标更加明显,通过图像恢复技术消除部分图像存在的模糊失真或者畸变,三种技术组合使用提高图像边缘的识别度。
Canny 算子检测先使用高斯滤波器进行卷积操作,运用到了高斯函数G(x,y),如式(2)所示,式子中σ表示高斯滤波器参数。 然后得到平滑图像g(x,y)并保留边缘细节,如式(3)所示,式子中F(x,y)表示原始图像。 随后进行梯度计算,计算g(x,y)中每个像素点的梯度值T(x,y)和方向θ(x,y),如式(4)、式(5)所示。
首先图像中灰度变化最剧烈的地方就是梯度值;其次通过非极大值抑制对每个像素点的梯度方向进行判断,只保留提取下来局部最大梯度值的像素点,去除其他非极大值的像素点;最后通过双阈值化将像素点分类为强边缘、弱边缘和非边缘,大于高阈值的强边缘点可直接判定为边缘,小于低阈值的非边缘点可去除,而处于高低阈值之间的弱边缘点则需要进一步检查,检测邻域是否有强边缘点,有则保留提取下来,没有则去除,最终连接起强边缘与弱边缘,形成完整的边缘线条并显示出来。 图像处理后如图2 所示。
图2 苹果图像预处理示意图
4 苹果成熟度检测
该模块主要用于检测苹果的成熟度。 主流的苹果成熟度检测技术包括两大类:有损检测技术与无损检测技术。 顾名思义,是根据是否会对苹果本身造成损伤来区分的技术。 本系统主要应用无损检测技术来进行苹果成熟度的检测。
4.1 有损检测技术
过去传统的苹果检测技术主要依靠人类的经验以及各种检测分析仪器,观察苹果的外观并检测苹果的硬度、可溶性糖含量、可滴定酸含量等指标以判断苹果的成熟度。 但这些方法只有人类凭经验来判断苹果成熟度不会对苹果造成损伤,其他方法都会对苹果造成不同程度损伤,因此传统的检测技术被称为有损检测技术。 针对不同的检测指标,有损检测技术主要分为外观质量检测、硬度检测、可溶性糖含量检测、可滴定酸含量检测。
4.2 无损检测技术
无损检测技术的优点就是不破坏苹果,不仅保证了苹果的完整性,还是一种具有快速准确、低成本和实时性优点的质量评价技术。 目前无损检测技术主要有以下几类:光学特性分析法、电学特性分析法、声学特性分析法、化学特性分析法、机器视觉分析法和其他成熟度无损检测法。可以举例为以下几种技术:近红外光谱检测技术、机器视觉检测技术、高光谱成像检测技术、声学分析检测技术、介电性质分析检测技术、核磁共振检测技术。
5 苹果特征提取
特征提取为进行苹果分级处理的重要前置条件,判断一个苹果优劣与否的重要依据由三部分构成:大小、形状与颜色。
5.1 苹果大小特征提取
在实际生活中售卖苹果时,苹果的大小常常作为主要定价标准,一般来说,直径大的苹果单价较高,直径小的苹果单价较低。 特征提取的主要办法有平均直径法、最大果宽法、模板匹配法、最小外接矩形法等等。 根据GB/T 10651—2008《鲜苹果》中的大小标准,苹果的大小是测量水平方向上苹果的最大直径,即为垂直于果轴的最大横截面直径。 通过选择苹果的俯视角度,获得初始苹果图像,由于苹果初始形状近于圆形,所以采用最小外接圆方法对图像进行处理。
首先应通过二值图像进行处理,利用式(6)、式(7)算出其最小外接圆的质心(Cx,Cy),式子中M0表示图像总像素数,M1表示水平向右的像素数,M2表示垂直向下像素数。
在此将苹果的质心作为最小外接圆的圆心,可以通过图像边缘和圆心坐标的距离来确定半径,根据式(8)计算出圆心与像素点的距离,其中xi为目标像素点的横坐标,yi为目标像素点的纵坐标。 遍历全部的边缘像素点,设置最小外接圆半径dmax来保存最大距离,若新距离大于当前存储的dmax,则进行更新直到遍历完成,得到最小外接圆的半径。
由于得到的最小外接圆半径单位是像素,需要将其与实际常用的苹果直径单位毫米进行转换操作。 通过选取m 个标准球体,将其实际直径长度D 的平均值和图像采集的像素点个数d 的平均值进行对比,得出其中的关系转换式(9)。
5.2 苹果形状特征提取
苹果在几何中近似于球体,在图像采集中可以用圆形的拟合度来判断其形状的优劣,这里采用圆形度法来进行判断描述。
对于标准圆而言,由周长C 推出的直径RC与由面积推出的直径RS应当相同,即RC=RS。 因此可以依据这一特质来估计苹果接近圆的程度E,如式(10)~式(12)所示。 由此可知,当圆形度E越接近1 时,RC与RS近乎相等,苹果的形状越规则。
5.3 苹果颜色特征提取
颜色可以反映苹果的成熟度与口感,为果农销售分类苹果的重要指标之一。 根据GB/T 10651—2008《鲜苹果》中的色泽标准,果面着色面积为色泽分类的主要依据,因此可以通过比较图像中红色所占比例,得出着色度。
由于六角锥体模型HSV(hue,saturation,value)更符合人类视觉对颜色的认知,所以这里采用HSV 模型。 首先,将RGB 图转化为HSV 图;其次,选取红色的提取范围H(156 ~180)、S(43 ~256)、V(46 ~255)[2];最后,再根据图像阈值处理后白色像素点数rwhite与图像像素点总个数r0的关系来计算着色度C,如式(13)所示。
6 苹果分级模式研究
实现对苹果进行分级时,首先需要搭建分类模型,对逐个苹果进行特征提取,再将其参数输入到模型当中进行果类识别分级工作。 图像预处理和特征提取技术都是为本模块的研究做铺垫,经过图像处理后,综合判断对苹果进行分级处理。 传统的分级模式为果农到果园现场进行肉眼鉴别,通过自身经验判断优果劣果。 这种模式受限于人力劳动量较大、主观判断过强等问题。 本文的分级模式可以结合苹果颜色特征、形状特征、颜色特征等产生特征向量,再根据实际情况做出选择,也可用标签标记特征向量,以便产生训练样本集。 实验综合参照GB/T 10651—2008 与实际测量标准,将苹果划分为一级果、二级果、三级果与四级果,如表1 所示。
表1 苹果品质等级分级标准表
6.1 数据规范化
在进行数据分类的过程中,可能会出现特征参数差距较大的情况,例如大小参数、形状参数、颜色参数有很大的出入时,这些数据显然是无效数据,必须舍弃。 分类器只能根据苹果参数的特征进行粗略分类,得到的结果会不够理想,误差较大。 数据规范化步骤如下:①将数据集中重复的数据图片记录移除,保证每条记录都是唯一的;②进行规范化字段,统一为特定相同的格式;③约束管理操作可以将特征向量的取值固定在特定范围之内;④缺失值处理会智能填充或删除缺失值的记录;⑤标准化数据范围会保证不同类型的字段数据范围相似,用于各个数据的比较与区分。 通过进行数据规范化,可去除无效数据、减少分级研究中的错误,并为后续分类器运行提供基础。
6.2 SVM 算法
SVM 算法是一种基于向量空间的机器学习方法,目标是找到两个类之间的决策边界,其在样本较小的数据训练集上效果较好,可以有效提高模型的泛化。 SVM 算法可以应用于数据的模式分类和非线性回归,能够解决小样本和非线性等常见的缺陷[3]。
模型利用制作的样本数据集可以训练SVM,具体决策树如图3 所示。
图3 SVM 分类决策树
该分类器名为基于决策树的一对多多类分类器,将训练好的SVM 进行苹果分级处理,设计过程参考苹果的直径尺寸、着色程度、纹理等特征的提取来将其分为一级果、二级果、三级果和四级果,其中一级果为最优果实,苹果的优质程度依次降低。 系统的分级标准可通过调整初始参数,实现对多个苹果种类的分类。
7 研究测试结果
本研究测试环节的编程环境为Python3.8.8 和OpenCV4.6.0。
测试环境首先导入预先准备的苹果图片数据库,对每一帧苹果图像进行图像预处理操作,随机选择100 张图像用于粒子群优化算法的SVM 决策树的模型训练样本集,其余图像作为模型测试样本集。 将样本的果径、果形、着色度3 个特征值输入模型中,测试将种群数量设置为30,最大迭代次数为120,进而计算得到相应的惩罚参数与核参数,其训练适应度曲线如图4 所示。
图4 适应度变化曲线
接下来测试环境,取出各等级苹果60 个为样本,利用SVM 决策树模型进行分类处理,并与人工处理结果进行对比得到其准确率。 结果如下:一级果91.7%、二级果90%、三级果98.3%、四级果96.7%,总准确率为94.2%。具体结果如表2 所示,由此可证明实验成功。
表2 分级检测结果
8 结语
本研究主要设计了一种基于图像处理的苹果检测识别技术,通过开源数据库图像与实验硬件采集的图像数据,利用MATLAB 进行检测处理,区分优果劣果。 本系统能够实现分级功能,解决了农场苹果分类检测困难、人力资源浪费严重的问题。 应用前景广阔,不仅可以用于苹果识别,还可用于其他水果、蔬菜的识别区分,助力农产品生产分拣,充分发挥智慧农业技术优势,为乡村振兴保驾护航。