摘要
为提高果园中高遮挡和密集的李(Prunus salicina Lindl.)的检测精度,提出一种改进YOLOv5s模型,在促进模型轻量化的同时提高模型对李的检测精度。首先,使用新的结构Focus-Maxpool模块替换主干网络中的下采样卷积,使改进模型在下采样时能够保留更多高遮挡目标和小目标的特征信息。其次,使用focal loss和交叉熵函数的加权损失作为改进模型的分类损失,提升改进模型对粘连目标的识别能力。最后,设计若干组检测试验来评价改进模型的性能。结果显示,改进YOLOv5s模型的平均精度优于YOLOv5s、YOLOv4、Faster-RCNN、SSD和Centernet;与YOLOv5s模型的检测结果相比,改进YOLOv5s模型的平均精度、召回率和精度分别提高2.84、9.53和1.66百分点,检测速度可达到91.37帧/s,能够满足实时检测需求。研究结果表明,改进的YOLOv5s模型在真实果园环境下具有较高的检测精度和鲁棒性。
李(Prunus salicina Lindl.),蔷薇科李属木本植
近年来,为了解决目标因遮挡带来的漏检的问题,许多学者进行了相关研究。李欣
随着深度学习的应用与发展,利用卷积神经网络对水果果实检测获得了优异的效
另一方面,需要提高模型本身的性能,提高模型对果实的定位精度。郜统哲
上文所述模型中,YOLOv3的参数量较大,不适用于实时检测,改进YOLOv5s模型则引入了额外的参数量,而CornerNet不适用于遮挡目标的检测。
目前,针对李的目标检测研究较少,并且由于李具有自然环境复杂、枝叶遮挡等特点,使得现有模型很容易出现漏检、误检等问题,不能满足实时精确的检测。针对以上问题,本研究基于YOLOv5s提出了一个能在复杂的果园环境下识别李的目标检测方法,旨在辅助果农检测李果实以及为果园采摘机器人等智能产品提供算法依据。
数据集采集于四川省成都市的李产业园区,采集设备使用佳能800D单反相机和荣耀V9智能手机。采集到的原始图像共621张,其中使用单反相机采集到的图像包括6 000像素4 000像素和3 9842 656像素2种分辨率,分别有429和89张,使用手机相机采集到103张图像,分辨率为3 9682 976像素。另外,为增加数据丰富性,从网络上爬取各种分辨率的图像79张,共700张图像。
为了增强模型的鲁棒性以及数据的丰富性,同时为了防止由于数据过少发生过拟合,本研究对数据集进行数据增强处理,包括随机亮度调节、随机对比度调节、随机饱和度调节、加入高斯噪声、水平翻转、运动模糊和旋转15

图1 图片标注示例
Fig.1 Example of image annotation
本研究以YOLOv5s为基础进行了改进。
1)Focus-Maxpool(FM)模块。使用常规33卷积对特征图进行下采样,不仅反向传播的参数大,而且会损失特征图信息。在果园的大视场条件下,部分李目标就显得非常小,使用常规卷积对其进行下采样时,会损失这些小目标和高遮挡目标的特征信息,从而造成漏检。在YOLOv5中,将Focus放在网络的输入位置,用于将输入的特征图进行2倍下采样。其原理如

图2 Focus模块
Fig.2 Focus module
虽然Focus模块在下采样过程中不会丢失信息,但下采样之后特征图通道数会变为原来的4倍,因此,在Focus模块之后一般会连接1个卷积用于降维。YOLOv5输入端的Focus模块之后连接的是1个33的卷积层,若是在模型中大量使用此模块,将会极大程度地增加模型的参数量和计算量。
为了弥补常规卷积在下采样时出现信息丢失的缺点,以及解决Focus模块参数量过大的问题,我们基于Focus模块提出了一种新的Focus-Maxpool结构(

图3 Focus-Maxpool模块
Fig.3 Focus-Maxpool module
该模块由Focus模块、11的常规卷积和1个最大池化层组成,其中卷积层用于压缩特征图的通道数。YOLOv5模型中的下采样卷积的感受野是33,而Focus模块的感受野机制相当于一个全局感受野,它对目标具体特征的观察能力有限,因此在后面连接一个感受野为33的最大池化层用于优化Focus模块的感受野,该池化层不改变特征图大小。该模块在进行反向传播计算时,只会增加用于降维的卷积层的参数,而此卷积层的卷积核为11,因此,FM结构的参数量仅是使用33卷积下采样时的4/9。
2)改进YOLOv5s网络结构。

图4 YOLOv5s改进前后的主干网络结构
Fig.4 Backbone network structure before and after YOLOv5s improvements
A:YOLOv5s主干网络 YOLOv5s backbone network;B:改进YOLOv5s主干网络 Improved YOLOv5s backbone network.

图5 改进YOLOv5s网络结构
Fig.5 Improved YOLOv5s network architecture
3)损失函数。YOLOv5s的损失函数主要包含定位损失、分类损失和置信度损失。定位损失表示模型预测框的位置与真实框之间的差异,分类损失表示预测类别的概率与真实类别的概率的差异,置信度损失则是表示预测框位置有目标的概率。YOLOv5s的损失组成为:
(1) |
(2) |
(3) |
和分别代表2个不同框的面积,表示和的最小外接矩形面积。
果园环境中粘连目标和高遮挡目标比较多,若是使用常规的交叉熵计算损失,模型会将权重集中在易分类的目标上,而容易忽略图像中不明显的遮挡目标和小目标。为了解决这种正、负样本不平衡的问题,引入焦点损失(focal loss
(4) |
其中,FL表示focal loss,y表示样本标签的数量。表示目标类别的概率,是平衡正、负样本权重的系数,的取值范围一般是。为难分类样本的调制参数,并且。
作为目标类别的概率,可直接反映样本分类的难易程度,越大,样本越易分类,反之,越小,样本越难分类。而则是根据的值来调整样本在总损失中所占的比例,越大,易分类样本的损失就越低,难分类样本的权重就增大了,因此,模型在训练时更容易将权重集中在难分类的样本上。
focal loss容易受噪声影响,当数据集中存在噪声或者错误标签的时候,focal loss会将权重集中在这些错误的样本上,并且会抑制较易分类样本的损失,从而提高噪音在总损失中的比例。因此,直接用focal loss替换原分类损失可能会影响训练效果。为了降低噪音对focal loss的干扰,使用focal loss和交叉熵损失的加权损失作为模型的分类损失,其计算公式为:
(5) |
(6) |
式(
1)试验平台。本研究采用Windows10操作系统,基于Python 3.7.4和Pytorch 1.9.1搭建深度学习框架来完成网络模型的训练与测试。使用的计算机配置为Intel Core i9-10900K处理器,主频3.70 GHz,运行内存为128 GB,GPU使用NVIDIA Quadro RTX 5000,显存为16 GB,使用的CUDA版本是10.2,cudnn版本为7.6.5。
2)模型训练。本研究通过对所有图像中的目标的真实框进行K-means聚类得到先验框。本研究所使用的先验框为[8,10]、[12,17]、[18,23]、[22,35]、[36,30]、[31,48],[42,60]、[57,83]、[121,137]。模型训练时,将所有训练集图像的分辨率统一转换为608608。优化器使用SGD优化器。为了更有效利用显存,训练时使用混合精度训练模型,并且将批量(batch-size)设置为32。权值的衰减速率(weight-decay)设为0.000 5,动量(momentum)设为0.937。模型的总epoch数设为100,并自动保存模型识别精度最高的权重。训练时初始学习率为0.01,并使用余弦退火法来调整每个epoch的学习率。为了加快模型的收敛速度,先让模型在PASCAL VOC(http://host.robots.ox.ac.uk/pascal/VOC/index.html)数据集上训练并得到预训练模型,再将预训练模型用于本研究数据集的训练。
3)评价指标。采用推理速度作为模型检测速度的评判指标,推理速度代表每秒可识别的图像数量,帧/s。采用平均精度(average precision,AP;公式中用PA表示)作为模型识别精度的评判指标。平均精度与模型的准确率(precision,P)和召回率有关(recall,R)有关:
(7) |
(8) |
(9) |
式(
1)整体效果对比。分别将YOLOv5s模型和改进YOLOv5s模型在同一测试集上进行测试(
模型 Model | 目标种类 Target type | PA/% | R/% | P/% | 推理速度/(帧/s) Inference speed | 模型大小/MB Model size |
---|---|---|---|---|---|---|
YOLOv5s | 所有目标 All target | 94.72 | 84.56 | 96.29 | 94.16 | 27.1 |
小目标 Small target | 85.22 | 74.48 | 91.78 | |||
改进 YOLOv5s Improved YOLOv5s | 所有目标 All target | 97.56 | 94.09 | 97.95 | 91.37 | 23.8 |
小目标 Small target | 92.01 | 88.81 | 95.53 |

图6 YOLOv5s改进前后的检测结果
Fig.6 Detection results before and after the improvement of YOLOv5s
A:YOLOv5s;B:改进YOLOv5s Improved YOLOv5s.
YOLOv5s模型改进前后的损失图像如

图7 YOLOv5s改进前后的损失曲线
Fig.7 Loss curve before and after YOLOv5s improvements
2)不同密度情况下的检测结果。为了进一步验证改进YOLOv5s模型对不同密度情况下李的检测都有着较高精度,本研究对测试集中的图片根据目标密度进行分类。其中,单位距离间像素大于40的图片被归类于高密度。由于数据集中有些图片是大视场下的场景,这些图片中的目标数较多,但目标成簇分布,每个簇中目标较为密集,但簇之间的距离较远,直接计算密度会导致密度的值偏低,因此,本研究直接将图片中目标个数大于20的也归类于高密度。而单位距离间像素小于等于20且大于等于10的图片被归类于中密度,单位距离间像素小于10的图片被归类于低密度。最终高密度的图片有205张,中密度的图片有188张,低密度的图片有167张。从
模型 Model | 类型 Type | PA | R | P |
---|---|---|---|---|
YOLOv5s | 高密度 High density | 92.90 | 81.25 | 95.47 |
中密度 Medium density | 96.74 | 88.98 | 97.17 | |
低密度 Low density | 98.32 | 91.09 | 98.08 | |
改进YOLOv5s Improved YOLOv5s | 高密度 High density | 96.46 | 91.71 | 97.40 |
中密度 Medium density | 98.77 | 97.34 | 98.65 | |
低密度 Low density | 99.68 | 98.66 | 98.96 |
对比

图 8 YOLOv5s模型改进前后对不同密度李的检测结果
Fig.8 Detection results of different densities of plums before and after improvement of YOLOv5s model
A-C:YOLOv5s;D-F:改进YOLOv5s Improved YOLOv5s;A,D:高密度High density;B,E:中密度Medium density;C,F:低密度Low density.
NO. | 模型Model | PA | R | P |
---|---|---|---|---|
1 | YOLOv5s+FM | 97.43 | 93.90 | 97.82 |
2 | YOLOv5s+FM+focal loss | 97.40 | 90.88 | 98.81 |
3 |
YOLOv5s+FM+加权分类损失 YOLOv5s+FM+ Weighted classification loss | 97.56 | 94.09 | 97.95 |
为了进一步证明改进YOLOv5s模型的有效性,本研究将同样的数据集分别在Faster-RCNN、YOLOv4、SSD和Centernet上进行了训练。
模型 Model | PA/% | R/% | P/% | 模型大小/MB Model size | 推理速度/(帧/s) Inference speed |
---|---|---|---|---|---|
Faster-RCN | 83.87 | 85.64 | 74.70 | 521 | 17.07 |
YOLOv | 88.79 | 78.44 | 89.88 | 244 | 32.02 |
SS | 90.82 | 72.99 | 95.26 | 90.6 | 36.06 |
Centerne | 91.57 | 72.20 | 98.20 | 124 | 55.53 |
改进YOLOv5s Improved YOLOv5s | 97.56 | 94.09 | 97.95 | 23.8 | 91.37 |
对于改进YOLOv5s模型,其平均精度比Faster-RCNN、YOLOv4、SSD和Centernet模型分别高13.69、8.77、6.77和6.02百分点。其中,Faster-RCNN在处理密集目标时会出现重叠区域较多的情况,这会使得检测结果不准确,从而导致准确率低。对于YOLOv4,其颈部网络中采用的都是普通的卷积操作,对来自不同层的特征信息的融合能力有限,而YOLOv5s的颈部网络中,采用的CSP结构,拥有更强的网络特征融合的能力,能够提取更多浅层的关于小目标的特征信息。SSD和Centernet虽然有着较高的准确率和平均精度,但它们的召回率较低,对小目标和遮挡目标的识别能力有限。Centernet则是因为需要预测中心点来预测目标位置,在处理遮挡目标和小目标时会丢失细节信息,从而导致召回率较低。综上所述,改进YOLOv5s模型的综合性能最好,其模型大小仅为SSD的1/4,推理速度也比Centernet高35.84帧/s,可以快速有效地识别出李。

图9 不同模型对不同大小目标的检测结果
Fig.9 Detection results of different models for targets of different sizes
A-E:大目标Bigger target;F-J:小目标Small target;A,F:Improved YOLOv5s;B,G:Faster-RCNN;C,H:YOLOv4;D,I:SSD;E,J:Centernet.
对比
综上所述,改进YOLOv5s模型不仅能够对较明显的目标有着高精度和高检出率,并且也能精确识别出尺寸较小和遮挡度较高的目标的位置。本研究提出的改进YOLOv5s模型在能保证比较高的精度的情况下,又不会使模型在推理过程中引入太多的参数而影响推理速度,改进后YOLOv5s模型规模较原模型有所降低,所需的算力资源较少,适合部署于嵌入式设备。
本研究基于YOLOv5s模型提出一种果园自然环境下李果实目标检测模型,制作了自然场景下的李果实数据集用于模型的训练和测试。试验结果表明,改进YOLOv5s模型识别李果实的平均精度提高到97.56%,识别小目标的平均精度达到92.01%,其模型大小只有23.8 MB,在GPU上的推理速度为91.37 帧/s,可以满足于嵌入式设备的部署条件。
本研究使用Focus-Maxpool模块替换主干网络中的下采样卷积,使模型在下采样时能够保留更多高遮挡目标和小目标的特征信息,使用focal loss和交叉熵函数的加权损失作为模型的分类损失,提升模型对密集目标的识别能力。本研究还设计不同的试验来对比模型改进前后的性能,并且将改进后的模型与YOLOv4、Faster-RCNN、SSD和Centernet的作对比,说明改进后模型的优越性。在以后的研究中,可将该模型进一步改良,丰富数据集,实现模型对李子成熟度和病虫害的识别。
参考文献 References
李东,李静雅,雷雨,等.李子的品质特性及其精深加工产品研究进展[J].北方园艺,2022(19):128-135.LI D,LI J Y,LEI Y,et al.Research progress on quality characteristics and intensive processing products of plum (Prunus salicina Lindl.)[J].Northern horticulture,2022(19):128-135(in Chinese with English abstract). [百度学术]
李欣,王玉德.基于颜色模型和阈值分割的有遮挡的柑橘果实识别算法[J].计算技术与自动化,2022,41(2):136-140.LI X,WANG Y D.Occluded Citrus fruit recognition algorithm based on color model and threshold segmentation[J].Computing technology and automation,2022,41(2):136-140(in Chinese with English abstract). [百度学术]
周文静,马晓晓,张洚宇,等.基于颜色因子逻辑与运算的田间红葡萄果穗识别[J].南方农机,2022,53(7):16-18.ZHOU W J,MA X X,ZHANG J Y,et al.Ear recognition of field red grape based on color factor logic and operation[J].China southern agricultural machinery,2022,53(7):16-18(in Chinese). [百度学术]
杨晓珍.基于数字图像技术的西红柿智能分类[J].单片机与嵌入式系统应用,2022,22(1):79-83.YANG X Z.Intelligent classification of tomatoes based on digital image technology[J].Microcontrollers & embedded systems,2022,22(1):79-83(in Chinese with English abstract). [百度学术]
吕佳,李帅军,曾梦瑶,等.基于半监督SPM-YOLOv5的套袋柑橘检测算法[J].农业工程学报,2022,38(18):204-211.LYU J,LI S J,ZENG M Y,et al.Detecting bagged citrus using a semi-supervised SPM-YOLOv5[J].Transactions of the CSAE,2022,38(18):204-211(in Chinese with English abstract). [百度学术]
姚松鹏,朱隆睿,乔波.基于目标检测的苹果探测与定位研究[J].电脑与信息技术,2022,30(5):22-24.YAO S P,ZHU L R,QIAO B.Research on fruit detection and location based on target detection[J].Computer and information technology,2022,30(5):22-24(in Chinese with English abstract). [百度学术]
周焜.基于深度学习的杨梅成熟度检测仪的研发[D].杭州:浙江科技学院,2022.ZHOU K.Development of myrica rubra maturity detector based on deep learning[D].Hangzhou:Zhejiang University of Science & Technology,2022(in Chinese with English abstract). [百度学术]
李竹,牟昌红,嵇康轩,等.基于深度学习的蓝莓成熟度预测[J].安徽农业科学,2023,51(5):232-236.LI Z,MOU C H,JI K X,et al.Prediction of blueberry maturity based on deep learning[J].Journal of Anhui agricultural sciences,2023,51(5):232-236(in Chinese with English abstract). [百度学术]
GIRSHICK R.Fast R-CNN[C]//2015 IEEE International Conference on Computer Vision (ICCV).December 7-13,2015.Santiago,Chile.Santiago:IEEE,2015:1440-1448. [百度学术]
REN S Q,HE K M,GIRSHICK R,et al.Faster R-CNN:towards real-time object detection with region proposal networks[J].IEEE transactions on pattern analysis and machine intelligence,2017,39(6):1137-1149. [百度学术]
REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once:unified,real-time object detection[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).June 27-30,2016.Las Vegas,NV,USA.Las Vegas:IEEE,2016:779-788. [百度学术]
REDMON J,FARHADI A.YOLOv3:an incremental improvement[DB/OL].arXiv,2018:1804.02767[2023-04-25]. https://doi.org/10.48550/arXiv.1804.02767. [百度学术]
BOCHKOVSKIY A, WANG C Y, LIAO H Y M.Yolov4: Optimal speed and accuracy of object detection[DB/OL].arXiv,2020:2004.10934[2023-04-25].https://doi.org/10.48550/arXiv.2004.10934. [百度学术]
LIU W,ANGUELOV D,ERHAN D,et al.SSD:single shot MultiBox detector[M]//Computer Vision–ECCV 2016.Cham:Springer International Publishing,2016:21-37. [百度学术]
DUAN K W,BAI S,XIE L X,et al.CenterNet:keypoint triplets for object detection[C]//2019 IEEE/CVF International Conference on Computer Vision (ICCV).October 27-November 2,2019.Seoul,Korea (South).Seoul :IEEE,2019:6569-6578. [百度学术]
LAW H,DENG J.CornerNet:detecting objects as paired keypoints[J].International journal of computer vision,2020,128(3):642-656. [百度学术]
石展鲲,杨风,韩建宁,等.基于Faster-RCNN的自然环境下苹果识别[J].计算机与现代化,2023(2):62-65.SHI Z K,YANG F,HAN J N,et al.Apples recognition in natural environment based on faster-RCNN[J].Computer and modernization,2023(2):62-65(in Chinese with English abstract). [百度学术]
WANG L L,ZHAO Y J,LIU S B,et al.Precision detection of dense plums in orchards using the improved YOLOv4 model[J/OL].Frontiers in plant science,2022,13:839269[2023-04-25].https://doi.org/10.3389/fpls.2022.839269. [百度学术]
杨福增,雷小燕,刘志杰,等.基于CenterNet的密集场景下多苹果目标快速识别方法[J].农业机械学报,2022,53(2):265-273.YANG F Z,LEI X Y,LIU Z J,et al.Fast recognition method for multiple apple targets in dense scenes based on CenterNet[J].Transactions of the CSAM,2022,53(2):265-273(in Chinese with English abstract). [百度学术]
曾乾,李博.基于改进SSD的青瓜检测算法[J].国外电子测量技术,2023,42(4):158-165.ZENG Q,LI B.Cucumber detection algorithm based on improved SSD[J].Foreign electronic measurement technology,2023,42(4):158-165(in Chinese with English abstract). [百度学术]
郜统哲,王亮,张晓,等.基于YOLOv3的杨梅关键发育期识别技术[J].现代农业科技,2023(5):79-82.GAO T Z,WANG L,ZHANG X,et al.Identification technology of key developmental stages of Myrica rubra based on YOLOv3[J].Modern agricultural science and technology,2023(5):79-82(in Chinese). [百度学术]
黄彤镔,黄河清,李震,等.基于YOLOv5改进模型的柑橘果实识别方法[J].华中农业大学学报,2022,41(4):170-177.HUANG T B,HUANG H Q,LI Z,et al.Citrus fruit recognition method based on the improved model of YOLOv5[J].Journal of Huazhong Agricultural University,2022,41(4):170-177(in Chinese with English abstract). [百度学术]
赵文清,孔子旭,赵振兵.隔级融合特征金字塔与CornerNet相结合的小目标检测[J].智能系统学报,2021,16(1):108-116.ZHAO W Q,KONG Z X,ZHAO Z B.Small target detection based on a combination of feature pyramid and CornerNet[J].CAAI transactions on intelligent systems,2021,16(1):108-116(in Chinese with English abstract). [百度学术]
李兆旭,蒋红海,杨肖,等.基于轻量化深度学习模型的豆角苗-杂草检测方法[J].农业装备与车辆工程,2022,60(9):98-102.LI Z X,JIANG H H,YANG X,et al.Bean seedling-weed detection method based on lightweight deep learning model[J].Agricultural equipment & vehicle engineering,2022,60(9):98-102(in Chinese with English abstract). [百度学术]
赵越,赵辉,姜永成,等.基于深度学习的马铃薯叶片病害检测方法[J].中国农机化学报,2022,43(10):183-189.ZHAO Y,ZHAO H,JIANG Y C,et al.Detection method of potato leaf diseases based on deep learning[J].Journal of Chinese agricultural mechanization,2022,43(10):183-189(in Chinese with English abstract). [百度学术]
祁金文.基于YOLOv5的苹果目标识别方法研究[J].电脑编程技巧与维护,2022(8):137-139.QI J W.Research on apple target recognition method based on YOLOv5[J].Computer programming skills & maintenance,2022(8):137-139(in Chinese). [百度学术]
邵良玉.基于迁移学习的花类图像分类方法研究[J].农业装备与车辆工程,2022,60(7):62-64.SHAO L Y.Flower image classification based on transfer learning[J].Agricultural equipment & vehicle engineering,2022,60(7):62-64(in Chinese with English abstract). [百度学术]
LIN T Y,GOYAL P,GIRSHICK R,et al.Focal loss for dense object detection[C]//2017 IEEE International Conference on Computer Vision (ICCV).October 22-29,2017.Venice.Venice:IEEE,2017:2980-2988. [百度学术]