基于YOLOv5s的神经网络麦穗识别算法研究
Research on Wheat Ears Recognition Algorithm Based on YOLOv5s Neural Network
DOI: 10.12677/AIRR.2022.112010, PDF, HTML, XML, 下载: 114  浏览: 259  国家科技经费支持
作者: 姜 月, 肖 萌, 李海霞:重庆科技学院,重庆
关键词: 麦穗识别YOLOv5s算法Global WheatWheat Recognition YOLOv5s Algorithm Global Wheat
摘要: 神经网络算法在人工智能领域有着广泛的应用,如本文中智慧农业中的麦穗识别。本研究采用YOLOv5s 算法研究麦穗的目标检测,将目标检测算法和神经网络算法相结合。研究的数据集来自Global Wheat Head detection (GWHD) dataset2020和AI crowd中GWHD dataset 2021,利用LabelImg软件进行标注,将标注后的数据先采用PIL中的旋转、翻转、亮度提升等对数据进行增强预处理,其次,选用YOLO系列算法对预处理后的数据集进行目标检测。增大麦穗训练集的规模,提高模型的泛化能力。通过YOLO算法进行麦穗检测,确保对数据集进行目标检测的准确性。利用该模型对麦穗图像进行检测。其中YOLOv5算法在输入端增加了Mosaic数据增强、自适应anchor以及图像缩放板块。并在neck上使用FPN和PAN结合板块,其精确率、召回率和平均精度在测试集上的精度分别为78.1%、85%、52.1%,比YOLOv3的检验结果高,该方法可以高效地检测并标注麦穗。
Abstract: Neural network algorithm has a wide range of applications in the field of artificial intelligence, such as wheat ear recognition in Intelligent Agriculture in this paper. In this study, YOLOv5s algorithm is used to study the target detection of wheat ears, which combines the target detection algorithm with neural network algorithm. The data sets studied are from global wheat head detection (GWHD) dataset 2020 and GWHD dataset 2021 in AI crowd. LabelImg software is used to label the marked data. Firstly, the rotation, turnover and brightness improvement in PIL are used to enhance the preprocessing of the data. Secondly, YOLO series algorithms are selected to detect the target of the preprocessed data set, increase the scale of wheat ear training set and improve the generalization ability of the model. The ear of wheat is detected by YOLO algorithm, and the target of the data set is detected accurately. The model is used to detect the wheat ear image. Among them, YOLOv5 algorithm adds mosaic data enhancement, adaptive anchor and image scaling plates at the input. Using FPN and pan combined plates on neck, the accuracy, recall and average accuracy on the test set are 78.1%, 85% and 52.1% respectively, which is higher than the test result of YOLOv3. This method can detect and label wheat ears efficiently.
文章引用:姜月, 肖萌, 李海霞. 基于YOLOv5s的神经网络麦穗识别算法研究[J]. 人工智能与机器人研究, 2022, 11(2): 84-90. https://doi.org/10.12677/AIRR.2022.112010

1. 引言

小麦可以解决粮食安全的问题,提高农产品的出口量。发挥着营养、饲养、经济价值。检测期间会碰到视觉的挑战,如小麦植株重叠,风动下的模糊图像。这些问题加剧了识别单个小麦头的难度。目前,小麦的研究方法有:人工观测技术、遥感图像预测 [1]、电容量测产 [2] 方法等。人工观测主观因素较多,导致观测不准确,且耗费人力较多。遥感技术主要采取卫星图像,拍摄距离较远,导致遥感技术不适合用来观测小范围的麦穗数据;电容量测量产量,电力成本消耗较大且耗时较长。

随着深度学习的发展,智慧农业也可通过深度学习解决一系列难题 [3],如粮食产量的估算、种子选种、种子选择优良基因性等 [4]。随着神经网络在目标检测中的发展,人们用深度学习网络来检测小麦,本文将对粮食生产的麦穗图像识别方法进行研究讨论。为了克服小麦植株重叠、风动图像模糊这些干扰因素,我们尝试利用神经网络设计合理的算法运用到麦穗识别中 [5],为智慧农业下的小麦穗识别提供服务。本文结合图像处理技术 [6] [7] [8],设计了一套基于YOLOv5的麦穗识别算法,有助于农村小麦管理决策去评估小麦的健康和成熟度,以便选择优良种,提高播种的参考性,为小麦的智能识别监控系统提供理论依据。

2. YOLO算法简介

计算机视觉是近几年发展起来的一种新方法,而YOLO一系列算法是领域中一种典型的目标检测方法。它将图片作为算法的输入端,并在图片不同位置,回归该位置的目标框及目标检测类型。YOLOv5系列有轻量级模型的大小,且具有较好的检测精度和速度,用途广泛,用于电路缺陷检测、医学肿瘤图像检测、车牌号检测等 [9]。

YOLOv5 [10] 是基于YOLOv4的改进而来,用于目标检测。于YOLO系列其他几个算法相比,YOLOv5s网络最小,速度最少,AP进度也最低。

其中,比较出名的为YOLOv3,YOLOv5。就大体的结构而言,YOLO系列算法的网络结构都是由输入端、Backbone、Neck和Prediction4个部分组成。YOLOv5的网络结构如图1所示。

YOLOv5系列 [11] 中YOLOv5s [12] 的网络最小准确率稍低于其他三种(YOLOv5m,YOLOV5l和YOLOV5x),但其检验速率却是最快的。另外其它3种网络基于YOLOv5s的网络结构进一步拓宽,精度逐渐提高,但检测速率稍显缓慢。基于该方法所需要的较高的检测速度,故选用YOLOv5s [13] 目标检测模型。

Figure 1. YOLOv5 Network Structure

图1. YOLOv5网络结构

3. 麦穗的检测

本文在输入端放入麦穗的图像,将其输入到训练好的YOLOv5s算法中进行麦穗的目标检测。目标检测算法会输出结果中带有麦穗的边界框且上方有麦穗可能性百分比的图像。

3.1. 数据集

本文从Global Wheat2020和AI crowd中Global Wheat2021抽取了3000张图像作为模型的数据集,其中包括由7个不同国家如法国、英国、中国、瑞士的麦穗图像。我们对预处理后标签发生变换的图片数据,由于缺少适合YOLO算法的标注文件,故本文使用LabelImg软件对麦穗数据集重新进行了标注操作,其中图片用于模型训练和模型测试的比例为80%:20%,其麦穗的数据集局部标注示例图片如图2所示。

Figure 2. Sample image of dataset annotation

图2. 数据集标注示例图片

标注完数据集之后,采用PIL (Python imaging library)库对图片进行预处理 [14],如下图3所示:

Figure 3. Example of effect of preprocessing wheat ear image with PIL

图3. 利用PIL对麦穗图像进行预处理的效果示例

图3可知,采用以上的数据增强策略可以增大麦穗训练集的规模,提高模型的泛化能力,有效地提升模型的鲁棒性 [15]。

为了更直观的比较YOLO系列算法的异同,列出YOLOv3-YOLOv5的input、backbone、neck、prediction板块如表1所示。

Table 1. Structure comparison of YOLO series models

表1. YOLO系列模型结构对比

相比较于YOLOv3以及YOLOv4,YOLOv5在网络结构的4个部分进行了创新:

1) 输入端部分:采用Mosaic增强数据的方式,并采用一个可调整的锚框,一个可调整缩放的图片;Mosaic是参照仅在两张图像上进行拼接的数据增强的方式(CutMix),选取了四张图片,利用随机排布、缩放、裁剪后的图像进行拼接;

2) Backbone部分:采用Focus和CSP架构;Focus切割图像,在每一章图片中每隔一个像素拿到一个数值,最后在不损失信息的条件下获得二倍下的采样特征图片;CSP在输入block之前,其输入由:通过block计算完成以及通过shortcut进行concatenate的两部分操作组成;

3) Neck部分:使用FPN + PAN结合的结构。是自顶向下是FPN的模式,将特征由高层传输下来;PAN正好完美解决了FPN计算量较大的难题;

4) 预测:在bounding box中使用GIOU_Loss进行补偿回归的损失,其表达式如(1)所示。

G I o U = I o U | C \ ( A B ) | | C | (1)

考虑算法需要比较快的检测速度,本文选用YOLOv5系列中的YOLOv5s作为麦穗检测的算法。另外,在训练阶段,对模型进行适当的微调来加快训练及收敛速度 [15]。

3.2. 实验参数设置

训练阶段参数设置:

本算法使用3000张图片中90%作为训练集,采用数据并行的方式进行训练,设置epoch数为300,优化方法为随机梯度下降法(SGD),batch的大小为36,图片的大小为1024。

测试阶段参数设置:

本算法使用3000张图片中的10%作为测试集,在测试阶段,加载训练好的权重文件,设置图片的大小为1024 × 1024。

4. 结束分析

为了验证训练出YOLOv5s模型对麦穗检测的性能,本文在测试集上进行了总体的评估。

4.1. 评价指标

依根据图像识别中目标检测领域常采用的评价检测好坏的指标采用精确率(P)、召回率(R)以及平均精度均值(mAP)三个指标用于检测麦穗检测效果的评价 [16]。

式(2)是精确率和召回率的计算公式:

{ p r e c i s i o n = t p t p + f p r e c a l l = t p t p + f n (2)

其中: t p 表示实际为正样本,且划分正确的数量; f n 表示实际为负样本,且划分正确的数量; f p 表示实际为正样本,但被分为负样本的数量。

mAP的计算公式如式(3)所示。

MAP = 1 N i = 1 N A v e P ( i ) (3)

其中:N为类别数; A v e P ( i ) 为第i类的平均精确率。

4.2. 算法性能分析

相关研究建立在PyTorch1.7上,基于一个Python3.6语言的深度学习框架。实验平台处理器使用Intel(R) Core(TM) I7-8750H CPU,显卡使用NVIDIA GeForce RTXmobel net2060,内存为16G,操作平台为Ubuntu18.04。为了量化本文使用的YOLOv5算法的性能表现,将YOLOv5,YOLOv3检测算法在麦穗目标检测任务上的Precision、Recall以及mAP@.5作对比,结果见表2

本文使用的YOLOv5是Precision为78.1%,Recall为85%,mAP@.5为52.1%,3个指标均高于YOLOv3检测算法。

Table 2. Test results of two algorithms on data sets

表2. 两个算法在数据集上的测试结果

4.3. 结果展示

本文利用YOLO一系列算法对麦穗进行目标检测,将进度较高的两种YOLO算法YOLOv3和YOLOv5s比较,检验结果局部展示如图4图5所示,结果表示,针对麦穗目标检测问题,YOLOv5s相对于YOLOv3准确率更高。

Figure 4. Partial display of YOLOv3 target detection results

图4. YOLOv3目标检测结果局部展示

Figure 5. Partial display of YOLOv5s target detection results

图5. YOLOv5s目标检测结果局部展示

5. 结束语

本实验通过对Global Wheat Head detection (GWHD) dataset2020和AI crowd中GWHD dataset 2021中小麦植株重叠、风动下的图像,采用PIL库对原始数据集进行扩充,利用LabelImg软件对数据进行重新标注,同时提出一种基于YOLOv5s模型,并通过实验与YOLOv3等模型进行对比,结果表明其能有效提高对麦穗识别的精度。该算法让YOLOv3的精确度、召回率、mAP@.5分别提高了4.5%、2.7%,3.1%。

对于目标检测网络来讲,大量的训练数据必不可少。实验中虽已利用GWHD数据集,并利用PIL库对原始数据做了多种数据预处理来进行数据扩充,但由于原始数据的麦穗数据有小麦植株重叠、风动等干扰因素的影响,且麦穗图像场地过于单一,因此即使经过数据增强,本文算法对自然影响因素下的麦穗目标检测结果仍然有待提高。为进一步提高该方法的精度和实用性,后续研究计划拓宽收集数据样本的途径,或利用智能算法GAN等生成数据,增强模型的实用性以及对不同场景的处理能力。

基金项目

国家大学生科技创新训练项目(202111551024)。

参考文献

[1] 侯英鱼, 王健林, 毛留喜, 宋迎波. 美国玉米和小麦产量动态预测遥感模型[J]. 生物学杂志, 2009, 28(10): 2141-2146.
[2] 甘肃省科学院生物所. 小麦测产新方法[P]. 中国专利, CN88102447.3. 1989-03-01.
[3] 王佳方. 智慧农业时代大数据的发展态势研究[J]. 技术经济与管理研究, 2020(2): 124-128.
[4] 杜颖, 蔡义承, 谭昌伟, 李振海, 杨贵军, 冯海宽, 韩东. 基于超像素分割的田间小麦穗数统计方法[J]. 中国农业科学, 2019, 52(1): 21-33.
[5] 谢元澄, 何超, 于增源, 沈毅, 姜海燕, 梁敬东. 复杂大田场景中麦穗检测级联网络优化方法[J]. 农业机械学报, 2020, 51(12): 212-219.
[6] 刘云玲, 张品戈, 王千航, 周睿琪, 赵佳, 肖永贵, 马韫韬. 基于多列空洞卷积神经网络的麦穗计数方法研究[J]. 吉林农业大学学报, 2021, 43(2): 171-180.
[7] 杜世伟, 李毅念, 姚敏, 李玲, 丁启朔, 何瑞银. 基于小麦穗部小穗图像分割的籽粒计数方法[J]. 南京农业大学学报, 2018, 41(4): 742-751.
[8] 任泽民, 王洪珂, 葛永新, 王晓峰, 王伟. 自适应的非局部总变分图像复原算法[J]. 小型微型计算机系统, 2017, 38(9): 2086-2089.
[9] 张路遥, 韩华. 基于YOLOv5s的人脸是否佩戴口罩检测[J]. 智能计算机与应用, 2021, 11(9): 196-199.
[10] 王淑青, 顿伟超, 黄剑锋, 王年涛. 基于YOLOv5的瓷砖表面缺陷检测[J/OL]. 包装工程: 1-10. http://kns.cnki.net/kcms/detail/50.1094.TB.20220218.1422.010.html, 2022-02-24.
[11] 郝帅, 杨磊, 马旭, 马瑞泽, 文虎. 基于注意力机制与跨尺度特征融合的YOLOv5输电线路故障检测[J/OL]. 中国电机工程学报: 1-12. http://kns.cnki.net/kcms/detail/11.2107.tm.20220126.1718.008.html, 2022-02-24.
[12] 杨永波, 李栋. 改进YOLOv5的轻量级安全帽佩戴检测算法[J/OL]. 计算机工程与应用: 1-8. http://kns.cnki.net/kcms/detail/11.2127.TP.20220118.1827.006.html, 2022-02-24.
[13] 赵睿, 刘辉, 刘沛霖, 雷音, 李达. 基于改进YOLOv5s的安全帽检测算法[J/OL]. 北京航空航天大学学报: 1-16.
https://doi.org/10.13700/j.bh.1001-5965.2021.0595, 2022-02-24.
[14] 田庆, 胡蓉, 李佐勇, 蔡远征, 余兆钗. 基于SE-YOLOv5s的绝缘子检测[J]. 智能科学与技术学报, 2021, 3(3): 312-321.
[15] 谭显东, 彭辉. 改进YOLOv5的SAR图像舰船目标检测[J]. 计算机工程与应用, 2022, 58(4): 247-254.
[16] 田港, 张鹏, 邹金霖, 赵晓林. 基于改进YOLOv4的无人机目标检测方法[J]. 空军工程大学学报(自然科学版), 2021, 22(4): 9-14.