APP下载

基于改进YOLOv3网络模型的茶草位置检测算法

2023-06-17王根江晓明黄峰方迪张宇钦

中国农机化学报 2023年3期

王根 江晓明 黄峰 方迪 张宇钦

摘要:精准高效的茶草识别是智能茶园植保机械进行除草工作的关键。针对目前茶园除草智能化程度较低等问题,提出改进YOLOv3网络模型的茶草检测算法。首先,分季节和时间段,在多个茶叶品种的种植园中以自适应的距离和角度采集茶草混合图像并建立试验数据集。接着,使用K均值聚类算法重新设计先验锚框尺度。然后,以YOLOv3网络模型为基础,选取17×17的网格划分图像区域;采用残差网络(ResNet)作为主干网;加入过程提取层,增强草株检测性能。最后在原损失函数中引入广义交并比损失。通过消融试验和不同目标检测算法对比试验验证此改进算法对茶树与杂草的检测效果。试验结果表明,改进 YOLOv3网络模型对杂草的检测精确率和召回率分别为85.34%和91.38%,对茶树的检测精确率和召回率最高达到82.56%和90.12%;与原YOLOv3网络模型相比,检测精确率提高8.05%,并且每秒传输帧数达到52.83 Hz,是Faster R-CNN网络模型的16倍。这些数据说明所提算法在茶园复杂环境下,不仅对于茶树和杂草具有更好的识别效果,而且满足实时检测的要求,可以为智能茶园植保机械提供技术支持。

關键词:茶园植保机械;茶草检测;YOLOv3网络模型;GIoU损失

中图分类号:TP391.4

文献标识码:A

文章编号:2095-5553 (2023) 03-0199-09

Abstract: Precise and efficient teaweed identification is the key to weed control of intelligent tea plantation protection machinery. In response to the current problems of low level of weeding intelligence in tea gardens, a teaweed detection algorithm based on the improved YOLOv3 network model is proposed. Firstly, during different seasons and periods, teaweed images are collected with a selfadaptive distance and angle in the plantations of multiple tea varieties and to build experimental data sets. Secondly, the prior anchor box scales are redesigned by the Kmeans clustering algorithm. Then, based on the YOLOv3 network model, an image area is divided by the grids of 17×17, the residual network (ResNet) is utilized as the backbone network, and the process extraction layer is added to it to improve the detection performance for weeds. Finally, the generalized intersection over union loss is introduced in the original loss function. The effectiveness of the improved algorithm is verified for teaweed detection via ablation study and comparison experiment of different target detection algorithms. The experimental results show that the detection precision and recall rate of the improved YOLOv3 network model for weeds are 85.34% and 91.38%, respectively, the highest detection precision and recall rate of tea bushes are 82.56% and 90.12%, respectively; compared with the original YOLOv3 network model, the precision is improved by 8.05%, and the frames per second transmission reaches 52.83 Hz, 16 times of the Faster R-CNN network model. These datas demonstrate that proposed algorithm in the complex environment of tea plantations not only provides better detection effect for tea bushes and green weeds, but also satisfies the requirement of realtime detection, which can provide technical support for intelligent tea plantation machinery.

Keywords: tea plantation protection machinery; teaweed detection; YOLOv3 network model; GIoU loss

0引言

中国是历史悠久的茶叶种植大国,各类茶叶制品产量巨大,闻名海外。据联合国粮食组织的数据,2017年我国茶叶出口量为350 kt,且呈现出逐年增加的趋势。在普通茶田春夏两季茶叶种植与采摘过程中,需要频繁进行人工除草和喷洒除草剂的相关作业[1],这些除草操作与粗放的农药喷洒,产生相应人力成本的同时,亦会一定程度损伤茶叶的生长与品质。在农业植保机械的定位操作功能中,集成先进的图像智能处理技术,准确识别茶草位置区域并进行目标判决,提升除草操作的工作效果,正在成为现代智能化、精细化、自动化茶园作业的重要研究方向和应用趋势。

在茶树与茶叶照片的检测与定位技术中,已经具有一些模式识别的传统算法。吴雪梅等[2]在典型茶树照片中,使用颜色变换和区域过滤等方法,将茶叶的嫩枝与老叶分离;Tang等[3]利用关键帧提取、大米计数法、光流和Prewitt算子来计算茶芽数量。然而一方面,茶园环境下植株分布密集、光照变化复杂、目标间特征相似度高,以致于在实际识别过程中,传流算法计算耗时长且精度不足;另一方面,传统图像识别的效果,主要依赖于算法设计的精确度与鲁棒性,基本不具备机器学习的先验性与自适应性。随着卷积神经网络等理论的持续研究与不断进步,运用预先经过学习训练的现代人工智能算法,进行目标植物的智能定位与自动分类,能够得到更好的工作效果[45],其中,R-CNN(RegionConvolutional Neural Network)算法[6]和YOLO(You Only Look Once)算法[7],具备代表性与适用性。

鉴于R-CNN算法的检测速度较慢,Ren等[8]基于其改进算法Fast R-CNN[9]提出Faster R-CNN升级型算法,即同时使用两组网络进行图片数据训练并预测目标的精确位置;Gan等[10]结合热图像和彩色图像的多模式处理平台,使得该算法在识别绿色柑橘的作业中得到了验证;Chen等[11]借助Faster R-CNN算法识别茶株中的茶叶采摘点。但是,在茶园环境的茶草识别作业中,该算法过于复杂的网络模型,造成识别帧数较低。相比于R-CNN系列为代表的两阶段(twostage)检测算法,YOLO系列算法作为单阶段(onestage)检测算法,可以一次性直接计算并输出预测与分类结果,运算处理速度具备优势。基于此,Redmon等[12]引入锚框作为辅助工具,提出YOLOv2算法,使得精确率与召回率均有所提升;张成标等[13]通过改进其主干网结构和激活函数等,用于检测违章车辆。在YOLOv2算法的基础上,Redmon等提出YOLOv3算法,通过对特征提取主干网络进行改进,输出多维度特征图,补偿特征参数的损失,进一步提升小目标检测性能;成伟等[14]利用YOLOv3网络模型检测温室番茄果实。然而,在目标间相似度与重叠度高、光线条件复杂的茶园环境中,需要进行多方面分析以提高检测精度和速度。

由于茶园环境中植株分布密集、杂草生长不规律、光照条件复杂,不合理的茶草图像采集方式会造成采集图像中茶草重叠度高。因此,通过模拟植保机械作业视角,以自适应的距离和角度采集茶草混合图像。考虑到茶草检测在实际应用中需要兼顾运算及时性与识别精确度,提出基于改进YOLOv3网络模型的茶草检测算法。

1茶草图像采集与数据集制作

1.1图像数据采集

为了符合实际茶园环境中植保操作的要求,通过模拟自动植保机械工作视角,选取合理的角度和高度采集茶草混合图像。首先确立拍摄角度,如图1所示,以俯瞰角度拍摄的茶草图像时,一方面,拍摄范围中的茶株会遮蔽光线,造成茶草图像中的杂草噪点较高,另一方面,获取的茶草图像中植株分布密集,导致数据标注与模型检测困难。由于这些原因,所以面向茶株拍摄茶草混合图像,如图2所示,图中茶株与杂草色彩纹理清晰、聚集度高、遮蔽程度低。

然后根据摄像头拍摄范围选取拍摄高度,如图3所示,菱形、矩形以及圆形色块分别表示摄像头距离地面的高度位置,R表示摄像头拍摄范围,L表示茶树平均高度。假设摄像头位于菱形色块所示高度,摄像头不能完整拍摄杂草图像;假设摄像头位于圆形色块所示高度,拍摄图像中茶树信息存在部分损失;而摄像头位于矩形色块所示高度时,可以完整捕捉茶树及其周围杂草信息,因此设定摄像头距离地面高度为茶树平均高度的2/3,即25 cm。

最后如图4实线箭头所示,将手机面向茶树并固定于如图5所示的小型履带式机器车上,进一步操作履带式机器车按照图4虚线箭头所示的行驶路径与方向,在茶园中匀速行进采集图像。利用上述图像采集方式,在春夏两季茶园环境中,分别于早晨、正午、傍晚采集白茶、大叶茶以及龙井茶三类茶草的混合图像作为研究的基础素材。

1.2构建数据集

由于各个季节不同时段茶草图像的色彩呈现度均有所差异,如图6(a)所示,初春时节气温较低,茶叶表面浮现淡紫色斑跡;如图6(b)所示,夏季茶叶颜色翠绿;如图6(c)所示,正午阳光充裕,茶叶色彩饱和度高,偏黄;如图6(d)所示,傍晚阳光稀少,色彩加深,图像噪点较明显,因此选取早晨、正午及傍晚所采集到的图像比例为2∶2∶1;晴天图像为阴天的2倍;春季图像为夏季的2倍。考虑到不同种类茶树周围杂草分布数量不同,如表1所示,白茶图片中杂草比例最高,为52%,龙井茶其次,大叶茶图片中杂草比例为37%,分别选用2 800张白茶杂草混合图片,2 400张龙井茶杂草混合图片和1 700张大叶茶杂草混合图片共6 900张,构建数据集。

构建数据集时,首先将图片尺寸缩放为544×544,可以提升网络训练速度。然后使用LabelImg图像标注程序构建矩形边界框,如图7所示,在图像中标注茶株和草株的位置,得到其中心坐标和边长数据,保存为.xml形式。最后随机划分80%用作训练数据集,20%作为测试数据集。

2网络模型设计与优化

网络模型在图片中检测茶株与杂草可分为以下几个阶段,如图8所示,首先将图像输入特征提取主干网中抽取特征,得到输出特征图;接着根据输出特征图、网格划分区域以及先验锚框尺度共同计算得到预测结果,包含目标边界框的中心点坐标、宽高尺寸及其置信度;最后基于置信度计算预测边界框得分,并结合阈值过滤、预测结果中不理想的边界框。本文通过优化网格划分数量、先验锚框尺度、主干网结构及网络中相关超参数,提升此网络模型对于茶草图像的检测性能,并计算精确率和召回率进行验证。

鉴于YOLOv3算法中的先验锚框尺度主要面向自然界中的通用检测目标,与茶草尺度相差较大,所以需要重新设计先验锚框尺度。基于标注的茶草边界框数据,采用K均值聚类算法生成先验锚框尺度,使锚框与茶草边界框更加匹配,进而提升网络模型拟合速度和检测精确度。具体分为以下几个步骤。

第一步,随机设定K个先验锚框的宽高作为初始聚类中心。

第二步,将这K个锚框与每个标注边界框固定于同一中心点,计算交并比(Intersection over Union,IoU)。

2.2特征提取主干网

YOLOv3网络模型采用DarkNet53作为特征提取主干网,虽然通过增加不同尺度的特征图层,将输入图像划分为3种不同规格的网格,能够提高对不同大小目标的检测性能。但是在茶草数据集中,茶株与杂草的大小相差较大,因此需要重新设计网络结构,提高杂草的检测精度和速度。

He等[15]通过设计残差模块解决神经网络层数过多导致的梯度消失等问题,提出ResNet网络模型。此网络模型深度可达到152层,并且参数量低于VGG Net网络模型,在ILSVR-2015比赛中取得了冠军。为了兼顾检测速度和精度,本文选用ResNet50网络模型,并引入过程提取层构建主干网。其中ResNet50网络模型是包含49个卷积层和1个全连接层的深度卷积神经网络,由于目标检测算法不同于图像分类算法,网络抽取图像特征后需要输出目标位置与类别两个信息,因此移除最后一层全连接层。同时为了提高模型收敛速度,达到稳定训练的目的,在每次卷积运算后添加批规范化层(Batch Normalization Layer),将输入数

据做均值为0、方差为1的归一化处理,进一步地选用Elu函数作为激活函数,此激活函数不仅覆盖了Relu激活函数的优点,而且避免出现负梯度被置0,导致神经元不会被任何数据激活的问题。

在ResNet50提取图像特征的过程中,由浅至深,得到不同深度的特征图。其中,浅层特征图具有较小的感受野,对小目标敏感度高,而深度特征图相反,具有更强的语义信息,但对于图像中的细节感知能力较差。为了增强模型对于小尺度杂草的检测性能,利用分治思想,首先提取淺层特征图,通过一个卷积核大小为1×1的卷积层与批规范化层计算后,将输出维度N,34,34,512的特征图四等分。然后进行拼接得到维度为N,17,17,2 048维度的小尺度目标检测特征图。最后将此小尺度目标检测特征图与ResNet50输出特征图拼接,这一过程称为特征提取层。

最终特征提取主干网结构如图10所示。

2.4网络模型训练和预测

模型训练时,设置训练参数 batch size为64,learning rate为0.001,每轮更新率为0.95,权重衰减为0.000 5。将训练好的模型应用于测试数据集上,预测得到维度N,17,17,7×(B+C+Class)的张量,该张量包含N张图片17×17×7个预测框的坐标、置信度及分类信息。然而一方面,由于图像中包含目标数量小于网格划分数量289,许多网格不包含目标中心点,造成结果中存在无效预测框;另一方面,由于先验锚框数量较多,导致结果中存在预测目标相同但位置预测偏差较大的低精度预测框。为了得到精确结果,通过以下两步分别过滤无效预测框和低精度预测框。

首先计算每个预测框的评估分数Score,如式(15)所示。然后设定阈值1,若评估分数低于阈值1,则认为该预测框为无效预测框。为了防止阈值1设定过小,过滤部分有效预测框;反之设定过大,过滤效果差,分别对比0.5、0.6及0.65三个阈值的过滤精度,结果如表2所示,可以看出0.5作为阈值1效果最佳,因此选用0.5作为阈值1过滤无效预测框。

对于低精度预测框,采用非极大值抑制(NonMaximum Suppression,NMS)进行过滤。将每个预测框的评估分数从大到小排序,依次计算两两预测框之间的IoU值,如果IoU值高于阈值2,认为预测目标相同,则去除两者间评估分数较低的预测框,这里设定阈值2与阈值1相同,为0.5。

2.5评价指标

模型预测结果筛选后,得到最终预测框。通过计算精确率(Precision)和召回率(Recall)来准确评估模型性能。

其中,真正样本(True Positive,TP)表示检测到的目标类别与真实目标类别一致的样本数量;假正样本(False Positive,FP)为检测到的目标类别与真实目标类别不一致的样本数量;假负样本(False Negative,FN)为真实目标存在但未被网络检测出来的样本数量。为了更好地评估模型的稳定性,引入F1-Score进行衡量。

3试验结果和分析

试验环境配置选择CPU为Intel第九代酷睿处理器,GPU为RTX2080TI,内存32G的计算机,基于Python3.8,采用Pytorch开发。模型训练及测试均在此试验环境中完成。

3.1不同网格划分下的杂草检测性能

为了验证以17×17网格划分图像区域对杂草检测性能的影响,与采用15×15和13×13网格划分图像区域的网络模型进行对比,试验结果如表3所示。

由表3可以看出,以17×17网格划分图像区域,杂草识别精确率分别比在15×15和13×13网格划分区域下高5.71%和8.04%,召回率分别提升4.63%和13.06%,F1-Score分别提升5.22%和10.45%。这些结果说明采用17×17网格划分图像区域,能够提升模型对于杂草的检测性能。

3.2不同品种茶树的检测结果

在本节中,分别比较此改进型YOLOv3网络模型对于不同品种茶树的检测性能,如表4所示。

由表4可得,此模型对于白茶、大叶茶以及龙井茶三类茶树的识别精确率分别为82.38%、79.37%、82.56%,召回率分别为90.12%、88.72%、89.36%,F1-Score分别为86.08%、83.79%、85.95%。而对于杂草的识别精确率、召回率以及F1-Score均高于三类茶树,这是由于茶园环境复杂,茶树之间纹理特征差别较小造成的,但是在实际除草等典型应用中,茶草区分精确率更为关键,符合对于实际除草作业的需求。

3.3消融试验

为进一步验证重新设计先验锚框尺度、优化特征提取主干网及其相关参数对于模型性能提升的有效性,通过5组试验详细对比,其检测性能对比结果如表5所示。

由表5中改进算法A对比YOLOv3(Darknet)发现,通过重新设计先验锚框尺度,改进算法的精确率提升0.99%,召回率提升1.44%,F1-Score提升1.20%。

对比改进算法A和改进算法B可知,使用ResNet50作为特征提取主干网,并基于特征金字塔与分治思想来引入过程提取层,使得精确率、召回率以及F1-Score分别比采用DarkNet53作为主干网的网络模型高2.77%、2.13%、2.47%,验证了重新设计特征提取主干网有助于提升网络检测性能。

由改进算法B和改进算法C对比可得,通过引入GIoU损失函数,分别使精确率提升2.91%,召回率提升3.23%,F1-Score提升3.07%;将此改进的YOLOv3与改进算法C对比可知,通过优化损失函数中的超参数,使得精确率提升1.11%,召回率提升4.58%,F1-Score提升2.87,验证了重新设计先验锚框、改进YOLOv3主干网及优化相关参数能够有效提升网络模型在茶园植株分布密集环境中的茶草检测性能。

3.4常用目标检测算法对比试验

将此算法与FasterR-CNN算法、YOLOv2算法以及采用DarkNet的YOLOv3算法等常用目标检测算法进行对比试验。

试验结果如表6所示,此改进型YOLOv3算法精确率达到82.41%,FPS达到52.83 Hz,虽然检测精确率稍低于FasterR-CNN算法,但是其速度为FasterR-CNN的16倍,从而验证了采用单阶段目标检测算法相对于两阶段目标检测算法,运算处理速度具备优势,同时说明将此改进算法应用于茶园植保机械作业中,满足检测实时性等要求。

相较于YOLOv2和采用DarkNet的YOLOv3算法等其他单阶段目标检测算法,此改进型YOLOv3算法精确率比YOLOv3(DarkNet)算法高8.05%,比YOLOv2算法高12.59%,并且检测速度最高高出9.63 Hz。

以上结果说明此改进算法在进一步提升运算速度的前提下,具有一定的目标检测精确率。

3.5不同场景下的检测效果

为了验证此模型的鲁棒性,应用该模型对春季早晨、春季中午、夏季早晨以及夏季中午场景下的茶树和杂草进行检测。

检测结果如图11所示,其中,红色方框内为杂草,黄色方框内为白茶。由图11(a)、图11(b)、图11(d)可以看出,此模型能够精确识别小型草株,并且在草株被茶树部分遮蔽的条件下同时茶叶表面有紫色斑迹时,仍然可以检测图片中的茶树和草株。综上所述,此模型在实际茶园检测中,具有一定的精确度和鲁棒性。

4结论

在人工智能算法与农业自动化不断发展的背景下,针对茶园复杂环境,提出改进YOLOv3网络模型的茶草位置检测算法。

1) 在不同季节时段的茶园环境中,通过模拟自动化农业机械作业视角,拍摄多个品种茶树的茶草混合图像,进行标注以建立试验数据集,提高了网络模型的泛化能力;对YOLOv3网络模型主干网改进后,使用分治思想加入过程提取层,加强小型草株检测性能;引入GIoU损失函数,并优化损失函数中的超参数,提升目标定位损失计算的精确度。最终训练得到的模型在测试集上的精确率达到82.41%。

2) 将此网络模型分别与原YOLOv3模型、Faster R-CNN模型在测试集上进行对比试验,试验结果表明,此网络模型相比原YOLOv3网络模型精确率提高8.05%,速度提升9.63 Hz;相比Faster R-CNN模型,速度提升了16倍,有效说明此改进型YOLOv3模型具有一定的识别精确度和检测速度,能够应用于茶园植保机械中。

参考文献

[1]Tang J L, Chen X Q, Miao R H, et al. Weed detection using image processing under different illumination for sitespecific areas spraying [J]. Computers and Electronics in Agriculture, 2016, 122: 103-111.

[2]吴雪梅, 张富贵, 吕敬堂. 基于图像颜色信息的茶叶嫩叶识别方法研究[J]. 茶葉科学, 2013, 33(6): 584-589.

Wu Xuemei, Zhang Fugui, Lü Jingtang. Research on recognition of tea tender leaf based on image color information [J]. Journal of Tea Science, 2013, 33(6): 584-589.

[3]Tang J L, Wang D, Zhang Z G, et al. Weed identification based on Kmeans feature learning combined with convolutional neural network[J]. Computers and Electronics in Agriculture, 2017, 135: 63-70.

[4]Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]. Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2014: 580-587.

[5]Jiang H, Zhang C, Qiao Y, et al. CNN feature based graph convolutional network for weed and crop recognition in smart farming[J]. Computers and Electronics in Agriculture, 2020, 174: 105450.

[6]Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2014: 580-587.

[7]Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, realtime object detection[C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 779-788.

[8]Ren S, He K, Girshick R, et al. Faster R-CNN: Towards realtime object detection with region proposal networks [J]. Advances in Neural Information Processing Systems, 2015, 28.

[9]Girshick R. Fast R-CNN [C]. Proceedings of the IEEE International Conference on Computer Vision, 2015: 1440-1448.

[10]Gan H, Lee W S, Alchanatis V, et al. Immature green citrus fruit detection using color and thermal images [J]. Computers and Electronics in Agriculture, 2018, 152: 117-125.

[11]Chen YT, Chen SF. Localizing plucking points of tea leaves using deep convolutional neural networks[J]. Computers and Electronics in Agriculture, 2020, 171: 105298.

[12]Redmon J, Farhadi A. YOLO9000: Better, faster, stronger [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017: 7263-7271.

[13]張成标, 童宝宏, 程进, 等. 改进的Yolo_v2违章车辆检测方法[J]. 计算机工程与应用, 2020, 56(20): 104-110.

Zhang Chengbiao, Tong Baohong, Cheng Jin, et al. Improved Yolo_v2 illegal vegucle detection method [J]. Computer Engineering and Applications, 2020, 56(20): 104-110.

[14]成伟, 张文爱, 冯青春, 等. 基于改进YOLOv3的温室番茄果实识别估产方法[J]. 中国农机化学报, 2021, 42(4): 176-182.

Cheng Wei, Zhang Wenai, Feng Qingchun, et al. Method of greenhouse tomato fruit identification and yield estimation based on improved YOLOv3[J]. Journal of Chinese Agricultural Mechanization, 2021, 42(4): 176-182.

[15]He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 770-778.

[16]聂鑫, 刘文, 吴巍. 复杂场景下基于增强YOLOv3的船舶目标检测[J]. 计算机应用, 2020, 40(9): 2561-2570.

Nie Xin, Liu Wen, Wu Wei. Ship detection based on enhanced YOLOv3 under complex enviroments [J]. Journal of Computer Applications, 2020, 40(9): 2561-2570.