自然场景下花椒果实分割算法研究
2022-08-02徐志博孙浩博万芳新马国军
徐志博, 黄 元, 孙浩博, 万芳新, 马国军
(甘肃农业大学机电工程学院,甘肃 兰州 730070)
花椒(ZanthoxylumbungeanumMaxim)又名川椒,芸香科花椒属落叶小乔木,是中国西部地区重要的经济作物,具有温中散寒、除湿等用途,是生活中的重要调味品。甘肃省是我国花椒主产区之一,2020年花椒种植面积约有178.76万hm2[1,2]。目前,我国花椒采摘主要采用高枝剪切法、机械振动法、负压虹吸法等,其劳动强度大、作业效率低、人工成本高,严重制约了我国花椒产业的发展,因此花椒收获机器人的开发成为了必然。花椒采摘作业因其背景复杂、光暗条件变化、果实串重叠等因素,造成视觉系统对采摘对象的识别定位不准确。因此,有必要对花椒进行目标识别与图像分割,以实现花椒智能采摘的高效识别定位。
近年来,随着深度学习算法的不断成熟,许多学者利用深度学习,机器学习的方法在林果采摘机器人中进行目标检测、目标定位、算法定位。齐锐丽[3]等研究了R-G色差法、Its法及k-means法等聚类算法得出使用outs能很好地分割花椒果实,使用Canny算法提取果实轮廓后使用双目视觉算法与形心匹配法可得到花椒三维坐标。万芳新[4]等在RGB颜色空间下对花椒果实串进行一系列图像形态学处理并进行图像识别,使用优化腐蚀噪点和隔离带法去除非目标,再求取花椒串的位置。张永梅[5]等对比了花椒果实在HSV和RGB颜色空间分量结合使用合适的阈值进行分割,将形心偏差法与惯性主轴结合得到果实的采摘点。杨萍[6]等结合使用k-means算法和Ostu算法进行图像相减得到主枝位置,将小孔成像与凸包理论结合得出花椒的深度信息。付隆生[7]等采用LeNet卷积神经网络对多簇猕猴桃图像识别,对遮挡果实、重叠果实、相邻果实和独立果实的识别率分别达到78.97%、83.11%、91.01%和94.78%。RAKUN[8]等使用将果实的纹理和颜色结合的方法识别苹果果实。Fu[9]等提出基于R-G颜色特性对果实图像分割,并结合最小外接矩形法和Hough变换识别果实。Ji[10]等利用矢量中位数滤光片去除苹果的彩色图像噪声,研究基于区域生长和色彩特征的图像分割,成功率约为89%。上述研究主要是在成簇果实串且背景复杂形态特征差异大[11-16]的情况下进行,对果实的识别受样本和人为主观性影响,自然场景下的花椒果实图像特征多样、背景多变且多受到枝叶的遮挡,特别是光照阴影的不确定性使得花椒果实串的识别率以及定位精度受到了一定影响[17-19],很难具有普适性,鲁棒性差,不能满足果实采摘机器人在花椒园中的作业要求。
本文在采集大量林间花椒果实样本图像的基础上,基于HSV颜色空间对不同拍摄时间、不同遮盖程度、不同光暗条件下成熟花椒果实串进行图像分割,然后使用HED优化网络模型对图像进行边缘提取,为后续实现花椒采摘机器人采摘作业的研究提供理论依据。
1 花椒果实区域分割
1.1 基于漫水填充算法的花椒果实区域分割
漫水填充算法是选取与种子点周围相连的区域并将该区域填充为相同的颜色。即在联通的区域内用同一种颜色填充,设置可连通像素的上下限和改变连通方式以达到填充效果。
在图像分割算法中,漫水填充算法是最受研究者欢迎的算法模型之一。漫水填充算法包含了不带掩膜和带掩膜的两种算法模型,掩膜(mask)用于对区域进行填充颜色控制(对同一图像进行多次填充时进行控制)。无论是不带掩膜版本还是带掩膜的版本,首先都需要在图像中选择一个像素点作为填充的中心元素点,然后模型会将相邻区域内所有像素值相近的点用同样的颜色进行填充操作。当邻近像素点位于给定的像素阈值范围内时,就会对这个像素点填充相同的颜色,分割效果如图1所示。
图1 漫水填充分割图
1.2 基于K-means算法的花椒果实区域分割
基于k-means的图像分割算法模型,是将每个像素点聚集出不同的类别,形成不同的簇,并将每个簇的质心(簇质心的计算特指簇中所含值的均值)的值来代替这个簇的所有像素点的值,以完成对目标图像的区域分割,分割效果如图2所示。
图2 K-means算法分割图
式中:i表示第i个样本,c表示第c个聚类中心;j表示rgb的第j个通道值。
K-means算法具有原理简单、编码容易实现、对低维数据具有较好的聚类效果等优点,但该算法在运行之前需输入所聚类的数目K值,而对于一个没有进行过先验操作的数据而言,其聚类的簇是不可知的,增加了实验的繁复性。除此之外,K-means算法在运行之初随机从数据集中选取样本作为运算初始的聚类中心,若选取的聚类中心并不能很好的对类簇进行表达,则会造成算法收敛变慢,效果变差。
1.3 基于HSV颜色空间的阈值分割
HSV颜色空间模形相比于RGB颜色空间模型更具颜色的直观特性,也被称之为六角锥模形,分别对应色调、饱和度和透明度等参数分量。色调H在360°~0°之间调节,0°表示为红色色调,120°表示为绿色色调,240°表示为蓝色色调;饱和度s在0~1之间表示颜色浓淡程度,例如黄色(255,255,0)、绿色(0,255,0)饱和度为1,而黑色(0,0,0,)饱和度为0;明度V在0%~100%间调节,黑色为0%,白色为100%。由于在自然条件下花椒生长环境有不同的光暗条件,因此使用HSV颜色空间的分量调节对图像进行分割,可以很好地解决因为光线造成的分割误差。
通过查阅HSV颜色范围表可知H明暗分量在0~10和156~180区间红色会较突出,S色调分量、V分量在43~255区间表达红色。大红袍花椒成熟果实串表现为大红色,因此以表现红色为阈值分割条件,对三组不同光暗条件下的花椒图进行对比分割,效果如图3所示。
图3 分量阈值调节图
通过对比分析三种算法的分割效果,基于定阈值区间的HSV颜色空间对花椒串图像分割效果表现较好,因此采用该方法对花椒果实进行图像分割如图3所示,为了有利于后续采摘点的确定,对分割后的多组图像进行开运算擦除小的干扰块、闭运算填充空洞区域、黑白转换等图像形态学算法对图像预处理,得到果实串的大致范围如图4所示。
图4 形态学处理图
2 果实边缘提取
目前对于花椒果实串的边缘提取大多使用Canny边缘检测,本文提出了一种基于VGG网络与HED网络的HED优化网络模型。HED是从Traning independent inputs中演化而来类似于一个相互独立的多网络多尺度的预测系统,主要是对整体图片的训练和预测,以及具有多尺度的特征。HED有效地使用了中间层的输出,由于在五个不同层侧面生成的特征图的大小有所区别,因此可以在不同的尺度上输出图像,增加了一个混合权重层,将所有输出层侧面链接训练学习,同时利用高层网络丰富的数据和低层网络准确的位置数据,得到更准确的边缘检测结果。
HED构建了一个将同一个深度学习网络的不同层级侧面提取并混合权重的整体嵌套结构。侧面输出层的结果由于卷积次数的不同感受野也不同,HED在感受野大的、具有丰富信息的高特征层上采样,与感受野大的、具有详细信息的低特征层通过混合权重学习训练,得到更准确的边缘检测结果。Canny算法使用高斯函数对图像平滑处理,同时将边缘链接与双阈值算法相结合进行边缘检测,虽然较好地抑制了噪声,减小了噪声的干扰,能够检测到部分的弱边缘且连续性较好,但是Canny算子也同时将一些高频边缘平滑处理,造成边缘丢失。HED边缘检测网络可以将许多弱边缘显示出的同时没有受到环境的影响,很完整地显示出花椒果实串的整个边缘,且加入了独立的思考预测并对每一层的结果特征进行融合,使精度得到提升,不会出现断线等精度问题。
HED优化网络模型基于VGG网络与HED网络思想,去除第五层网络后的池化层,连接五层网络最后的卷积层并进行卷积、池化处理后通过混合权重得到花椒果实串的边缘轮廓。其中4个侧输出层链接了监督信息层,即进行卷积操作,另一个直接链接池化层与另四层在混合权重训练中起互补作用,该算法将每一层网络独立而又互相连接,将不同感受野下的训练结果产生映射,如图5、6所示。选取600张光暗条件不同的花椒果实图像对比HED优化模型与HED模型、Canny模型边缘提取结果,420幅图片为训练集,120幅图片为测试集,60张幅图片检验集。在BSDS500上对比ODS实时轮廓检测效果值与OIS评估训练中的最高值。如表1与图7所示,优化HED相比于Canny算法与传统HED网络效果更好,轮廓更精细。
图5 HED优化模形流程图
图6 HED优化模形网络图
图7 canny与HED处理效果图
表1 模型结果对比
3 结论
本文提出融合多种算法的识别定位方法,对比多种分割算法后采用基于定阈值区间的HSV颜色空间对花椒果实串进行图像分割,然后对分割图像做图像形态学操作去除噪音;提出了一种基于VGG网络与HED网络的HED优化网络模型,在BSDS500上其ODS达到0.765。所用模型可以应用于花椒园多花椒串识别,为实现花椒采摘机器人采摘作业的研究提供理论依据。