伍蓥芮,张志勇
(山西农业大学农业工程学院,山西太谷030801)
我国是世界上最大的番茄生产国,年产量高达6 300 万t,棚室种植是主要的种植方式。棚室番茄普遍采用人工采摘,人工成本费用较高,占总生产费用的比例约为50%~70%,且人工长时间工作,会影响采摘效率。相比于传统的人工采摘,采用果蔬采摘机器人进行作业可以降低劳动成本、减轻劳动强度。果蔬采摘机器人使用计算机视觉技术,根据形状、纹理、颜色等相关信息将番茄果实从原始图像中分割出来,通过控制末端执行器完成果实的采摘任务。利用计算机视觉技术完成果蔬识别任务是保证机器人精准作业的重要前提[1-3]。
目前,国内外众多学者基于计算机视觉技术开展了对果蔬目标识别的研究。TAO 等[4]提出一种基于点云数据的苹果自动识别算法,融合支撑向量机能够分辨苹果果实、树枝和树叶。JHAWAR[5]提出了一种基于模式识别的柑橘自动识别方法,能够判别柑橘果实的成熟度。YU 等[6]提出了一种基于目标区域卷积神经网络和深度学习的草莓识别算法。邓立苗等[7]基于MATLAB 建立了一个批量处理玉米叶片的特征提取与识别系统,使用了支撑向量机(SVM)和卷积神经网络(CNN)训练模型并自动提取和识别目标物。王茂林等[8]、杨天乐等[9]、冯晓等[10]分别使用图像识别技术识别水稻、蓟马和小麦。
棚室环境下,番茄图像中的果实部分可能会出现光斑现象,且棚室内棚顶曝光过强,背景较为复杂,该环境下识别番茄果实目标准确率不高。为提高棚室环境下番茄果实目标识别率,本研究分别使用色差法、K-means 算法和DBSCAN(Density-Based Spatial Clustering of Application with Noise)算法对棚室环境内的番茄果实图像进行分割识别,分析比较3 种算法的识别分割效果,为棚室环境下番茄采摘机器人准确识别番茄果实提供研究基础。
本研究所使用的棚室环境下的番茄图像拍摄于山西省晋中市太谷区巨鑫现代农业园区(经度112.48°,纬度 37.39°)。笔记本 CPU型号为Intelcorei5,内存4 G,硬盘容量500 G。拍摄相机为3D-1MP02-V92,CMOS 型感光元件,拍摄输出图像分辨率为2 560 像素×960 像素,拍摄时候最高帧数为60 帧,拍摄输出图像格式为JPG,支持win 7、win 8、win 10等电脑系统,所用软件为MATLAB2018B。在棚室环境内采集拍摄图像时,尽量保证光照较为合适,减少拍摄镜头的抖动,摄像机通过MICROUSB 口连接至计算机,便于将拍摄的图像随时保存至本地以供计算机处理。本试验共拍摄棚室环境下番茄原始图像60 张,随机选择的2 个样本的番茄果实图像如图1 所示。
1.2.1 色差法 色差法利用图像色域信息不同识别图像目标区域,亦是区分目标与背景最为直观的方式。在棚室环境内,成熟的番茄果实与背景内的茎秆、枝叶等颜色相差较大,因此,利用番茄果实与背景在色域上的差异性来提取目标果实具有较高的可行性。色差法通常基于RGB 模型进行分析,RGB 是由红(R)、绿(G)、蓝色(B)三原色混合叠加的颜色模型。
1.2.2 DBSCAN 算法 DBSCAN 算法是一种新型的基于密度的聚类算法,常应用于数据挖掘[11]、图像分割[12]、供应商优化[13]、空间聚类[14-16]等。其原理是找出输入数据集中密度最高的部分区域划分为一个聚类簇。DBSCAN 需设置2 个参数:领域半径R 和最少点数目MP(min points)。输入的数据点完成聚类后共有3 类标签:核心点、边缘点和噪声点。核心点是领域半径R 内的数据点数量大于等于最少点数目MP 的点,同一簇内不属于核心点的数据点称为边缘点,不属于上述2 类点的数据点称为噪声点。算法迭代完成后将图像中的目标区域与背景区域分割。
1.2.3 K-means 算法 K-means 是一种常见的基于欧氏距离的几何聚类算法。常用于数据的聚类划分[17-20]、模型的参数评价[21]等。该算法的思想将待聚类的数据划分为K 组,先随机选择K 个点作为聚类初始的中心,依次计算所有数据点到这K 个中心点的距离,将所有距离中心点最近的点划分为一个聚类簇,然后在簇内取所有同簇点的几何均值中心,作为新的聚类中心,重复上述步骤直到所有数据点的分不再发生改变或者达到最大迭代次数。此时所有数据点均完成聚类划分,实现对目标与背景的分割。DBSCAN 算法和K-means 算法基于HSV色域模型进行分析。
棚室内采集的原始图像存储格式为JPG,默认使用RGB 颜色模型。将拍摄的60 幅图像分为10 组,每组6 张。样本1 和样本2 的番茄原始图像与RGB三原色如图2 所示。
统计每组图像的R 和G 分量信息,结果如表1所示。从表1 可以看出,原始图像的R 与G 分量之间的差值比其他分量之间的差值更大,R-G 的平均值接近100,可选取合适的阈值T 来区分番茄果实与背景。
表1 样本番茄分量统计情况
棚室环境下,由于曝光较强会在番茄果实上形成光斑,经过多次试验调节,设置阈值T 为120,2 幅番茄果实图像的R-G 与R-G 阈值分割识别效果分别如图3、4 所示。由分割图可知,色差法能成功将果实区域与背景分离,但对光斑较为敏感,造成果实识别形状不完整。
DBSCAN 算法通常基于HSV 进行分析,原始图像在HSV 色域模型下成像效果如图5 所示,HSV 色域模型的H 分量直方分布如图6 所示。
由图6 可知,HSV 模型的H 分量有明显的双峰,设置DBSCANS 算法密度半径R 为10,最少点数量MP 为5,使用该算法对番茄果实图像的H 分量聚类的识别效果如图7 所示。从图7 可以看出,DBSCAN 算法对光斑和背景噪音的抑制能力较好,果实形状完整且与背景分割效果明显。
K-means 算法也以HSV 色域模型中H 分量为试验对象,设置聚类簇数为5,识别结果如图8 所示。由图8 可知,K-means 算法识别果实形状完整,无明显光斑,但是对棚室背景噪音的鲁棒性不强。
使用3 种算法对10 组番茄图像进行分割试验的信噪比和平均耗时结果如表2 所示。
由表2 可知,3 种算法中DBSCAN 算法的平均耗时最短,约为292 ms,对比色差法的503 ms 和K-means 算法的591 ms 有较大提升。且DBSCAN算法的信噪比最高,为95.2%,高于其他2 种算法。
表2 3 种算法的试验结果
本研究分别使用色差法、K-means 算法和DBSCAN 算法对番茄图像进行分割识别。色差法识别番茄果实图像原理较为简单,但对棚室环境下番茄果实图像出现的光斑问题较为敏感,识别番茄果实形状不完整;使用K-means 算法识别番茄果实图像时对果实区域识别效果较好,但对原图像中的边缘噪声以及棚室顶部的曝光噪声较为敏感,信噪比较低,受棚室环境的影响较大;使用DBSCAN 算法识别番茄果实图像时运行时间短,且对背景中的噪声抑制效果最佳,分割效果最好。棚室环境下使用DBSCAN 算法识别番茄果实图像能满足实际的采摘需要,为番茄自动采摘机器人的研发提供了一定的理论基础。