开放科学(资源服务)标志码(OSID):
林业害虫泛指危害森林的昆虫。当病虫害爆发时,通常会给林业发展造成重大经济损失。因此,在病虫害发生早期,通过智能喷洒装置对害虫进行消杀具有重要意义[1]。因此,对林业害虫图像进行快速精确检测成为目标检测领域的研究热点。昆虫检测主要由工作人员对诱捕到的昆虫进行人工识别与计数,其效率低、劳动量大且及时性差[2]。随着图像采集技术和机器学习的发展,昆虫检测技术通过将人工提取图像特征与支持向量机等机器学习分类方法相结合,并将其应用于自然场景下的昆虫数据分析,但该方法的鲁棒性和泛化能力较差[3]。
近年来,研究人员开始将深度学习算法应用于昆虫图像检测领域中。文献[4]提出基于深度卷积神经网络的油菜虫害检测方法,使用VGG16[5]网络提取图像特征,并生成初步候选区域,再通过Fast R-CNN[6]对候选框进行分类和定位,但是该方法的检测速度较慢。文献[7]提出基于改进的SSD[8]深度学习模型的虫情检测系统,实现了对红脂大小蠹虫情的全自动化监测,然而该系统是针对特定场景设计的,因此只能对一种类型的害虫进行检测,无法实现多类别害虫检测需求。
为实现对林业害虫的实时精确监测,本文提出一种基于YOLOv4-TIA的昆虫图像检测方法。将检测速度较快且可以进行多目标检测的深度学习模型YOLOv4[9]引入到林业害虫监测领域中,并对其进行改进,通过融合三分支注意力[10]机制与改进的PANet[11]结构,提高模型对林业害虫图像的综合检测能力。
1 YOLOv4目标检测算法YOLO系列算法是一种将目标检测问题转换为回归问题[12-13]的目标检测算法。该模型采用端到端的网络结构,在产生候选区域的同时完成分类和位置调整,从而节省了检测时间且降低了计算资源使用率。
YOLOv4是YOLO系列算法的最新版本,其网络结构如图 1所示。与YOLOv3[14]不同,YOLOv4在数据处理过程中引入mosaic数据增强,CSPDarkNet53和PANet分别作为主干网络和颈部网络,并通过多种训练方式优化激活函数与损失函数。这些方式能够加快YOLOv4的检测速度,且实现速度和精度的最佳平衡[15]。
![]() |
Download:
|
图 1 YOLOv4网络结构 Fig. 1 Structure of YOLOv4 network |
YOLOv4模型将CSPDarkNet53作为骨干网络,CSPDarkNet53主要由CBM模块和CSP模块构成,其中CBM模块由卷积层(Conv)、批归一化层(Batch Normolization,BN)和Mish激活功能组成,CSP模块包括两条支路,一条是主干部分的卷积,另一条用于生成大的残差边,通过对两条支路的跨级拼接与通道整合,以增强卷积神经网络(Convolutional Neural Network,CNN)的学习能力。CSP结构如图 2所示,其中CBL模块由卷积层(Conv)、批归一化层(Batch Normolization,BN)和Leaky ReLu激活功能组成。此外,YOLOv4模型在检测部分使用了空间金字塔池化层SPP模块,使得任意大小的特征图都能够转换成固定大小的特征向量,利用K-means聚类生成不同尺度的先验框,并在不同层级的特征图上进行预测。与YOLOv3相比,YOLOv4是基于PANet的原理对不同层级的特征进行融合。
![]() |
Download:
|
图 2 CSP网络结构 Fig. 2 Structure of CSP network |
YOLOv4模型是在输入图片上生成一系列锚框,锚框是w和h固定的初始候选框,也是生成预测框的前提,anchor的选用会直接影响模型的性能[16]。YOLOv4模型使用的锚框是在COCO数据集上统计较合适的锚框大小。因此,本文通过对林业昆虫数据集进行聚类,得到合适的anchor大小。利用K-means++聚类算法代替YOLOv4模型中使用的K-means算法。K-means算法流程如图 3所示。
![]() |
Download:
|
图 3 K-means算法流程 Fig. 3 Procedure of K-means algorithm |
K-means算法需要人为设定初始聚类中心,然而不同的初始聚类中心对聚类结果的影响较大。因此,本文使用K-means++对林业昆虫数据集中昆虫对象的w和h进行聚类。K-means++在对初始聚类中心的选择上进行了优化,首先随机选择一个点作为第1个初始类簇中心点,然后选择距离该点最远的点作为第2个初始类簇中心点,最后再选择距离前2个点距离最远的点作为第3个初始类簇的中心点,以此类推,直至选出k个初始类簇中心点[17]。在初始点选出后,本文使用标准的K-means算法进行聚类。
聚类评估标准通常用轮廓系数来表示,如式(1)所示,轮廓系数取值范围为[-1, 1],取值越接近1,则说明分类效果越好。
$ {s}_{i}=\frac{{b}_{i}-{a}_{i}}{\mathrm{m}\mathrm{a}\mathrm{x}({b}_{i}, {a}_{i})} $ | (1) |
其中:i为已聚类数据中的样本;bi为i到其他各个族群所有样本的距离平均值中的最小值;ai为i到本身簇的距离平均值。
经过聚类与计算轮廓系数后,聚类类别数与轮廓系数的对应关系如图 4所示。
![]() |
Download:
|
图 4 聚类类别数与轮廓系数的对应关系 Fig. 4 Corresponding relationship between the number of clustering categories and contour coefficient |
聚类类别数的取值为3~9。经分析可得,以k表示聚类类别数,当k为3时,轮廓系数最高,聚类效果最好;当k为6时,聚类效果次之;当k为7时,聚类效果较好。本文将三者相结合,最终得到候选区域参数,分别为(51,52)、(68,69)、(63,91)、(88,64)、(92,137)、(99,140)、(136,91)、(140,100)、(146,144)。
2.2 基于三分支注意力机制的YOLOv4-TIA网络YOLOv4网络平等对待每个通道特征,在一定程度上限制了算法的检测性能。为进一步提升模型精度,本文利用三分支注意力机制对YOLOv4中的CSPDarkNet53特征提取网络进行改进,改进后的模型命名为YOLOv4-TIA。三分支注意力机制模块是一种可学习参数少、不涉及维数降低且有效的注意力机制[18],其网络结构如图 5所示。
![]() |
Download:
|
图 5 三分支注意力机制网络结构 Fig. 5 Structure of three branch attention mechanism network |
三分支注意力机制网络的原理是通过旋转操作和残差变换建立维度间的依存关系,主要包含3个分支,其中2个分支分别用于捕获通道C维度和空间维度W/H之间的跨维度交互,剩下的1个分支捕捉(H,W)维间的依赖关系,通过均衡3个分支的输出,实现跨维度交互。
传统通道注意力的计算是通过选取高层特征图进行全局池化,将每个通道的二维特征压缩为1个实数,如式(2)所示:
$ {z}_{c}={F}_{s}\left({u}_{c}\right)=\frac{1}{H\times W}\sum\limits_{i=1}^{H}\sum\limits_{j=1}^{W}{u}_{c}(i, j) $ | (2) |
由于zc是根据二维特征的所有值计算得到,因此在某种程度上具有全局的感受野。但该计算方式会丢失大量的空间信息,也无法体现通道维数和空间维数之间的相互依赖性,传统的空间注意力计算同理。虽然基于空间和通道的卷积模块注意力机制(CBAM)可以体现通道与空间之间的相互依赖性,但是通道注意与空间注意是分离的,其计算也是相互独立的。三分支注意力机制的优点主要有以下3个方面:1)不会丢失大量的空间与通道信息;2)可以进行跨维度交互;3)需要的可学习参数量少,算力消耗小。
本文使用三分支注意力模块对CSPDarkNet53网络进行改进,使网络可以通过自动学习获取跨维度交互,以提高有效的特征通道权重,从而使网络重点关注重要的特征通道。结合三分支注意力模块改进的YOLOv4-TIA骨干网络结构如图 6所示。
![]() |
Download:
|
图 6 YOLOv4-TIA骨干网络结构 Fig. 6 Structure of YOLOv4-TIA backbone network |
通过YOLOv4-TIA网络中的骨干网络提取输入图片特征后,经过检测颈部网络进行预测输出。YOLOv4采用PANet作为颈部网络,其网络结构如图 7所示。该网络采用自上而下和自下而上的路径聚合方式,利用准确的低层定位信号增强整个特征层次,从而缩短低层与顶层特征之间的信息路径。
![]() |
Download:
|
图 7 PANet网络结构 Fig. 7 Structure of PANet network |
图 7中C表示输入特征图,P表示输出特征图。PANet网络结构虽然可以将高层特征图的强语义信息与低层特征图的定位信息进行双向融合,但是在融合时是将不同层级的特征直接进行相加。为了使网络可以融合更多的特征及学习不同输入特征的权重,本文提出一种改进的PANet结构,如图 8所示。
![]() |
Download:
|
图 8 改进的PANet网络结构 Fig. 8 Structure of improved PANet network |
改进的PANet网络结构去除了PANet结构中只有一条输入边和输出边的节点,并且当输入和输出节点是同一层级时,通过残差的方式增加一条额外的边,这样可以在不增加计算开销的同时融合更多的特征[19]。输入图片经过CSPDarkNet53骨干网络得到各层级的特征图后,通过跨级连接和同级跳跃连接的多尺度特征融合方式获得尺度分别为152、76、38和19的4个层级的特征图,并在此基础上进行预测。
2.4 Focal loss函数在林业监测中采集到的昆虫数据存在样本不均衡且不容易分类的问题,为此,在YOLOv4-TIA中使用Focal loss函数优化分类损失。Focal loss函数可以用于解决一阶段模型中背景分类不均衡和正负样本严重失衡的问题[20]。YOLOv4中的损失函数分为位置损失、置信度损失和类别损失3个部分,将Sigmoid与交叉熵损失函数相结合进行计算。在多分类任务中,交叉熵表示激活函数实际输出值与期望输出值的距离,交叉熵越小表示两者的概率分布越近[21],如式(3)所示:
$ L=-\sum\limits_{j=1}^{C}y\mathrm{l}\mathrm{n}{y}^{\mathrm{\text{'}}} $ | (3) |
其中:L为交叉熵;C为分类类别数;y为期望输出;
$ {L}_{f}=-\alpha {\left[1-{y}^{\mathrm{\text{'}}}\right]}^{\beta }\mathrm{l}\mathrm{n}{y}^{\mathrm{\text{'}}} $ | (4) |
其中:
本文实验所使用的数据集(北京林业大学昆虫)共有2 183幅图像,其中1 693幅作为训练集,245幅作为验证集,其他245幅作为测试集。数据集共有Boerner、Leconte、Linnaeus、acuminatus、armandi、coleoptera和linnaeus7类昆虫目标。在使用模型对数据集进行训练前先对训练集中每类目标样本数量进行统计,以均衡检测样本分布,统计结果如表 1所示。
![]() |
下载CSV 表 1 在训练集中每类目标样本的统计结果 Table 1 Statistical results of each target sample in the training set |
从表 1可以看出,Linnaeus、acuminatus和linnaeus3类目标的样本数较少。为了使每类样本数量分布更均衡,本文对包含这3类目标的图片进行数据增强操作。每幅图片包含多类目标,因图像旋转、色调变换等常见数据增强方式会导致其他样本数目增加,因此增强后的整体样本数据分布仍不均匀。
本文采用的增强方式是将数目较少的类别目标区域进行复制,经过放大、旋转、平移等方式粘贴回原图,以达到精准类别增强。本文以Linnaeus目标为例进行数据增强,增强前后的效果对比如图 9所示。
![]() |
Download:
|
图 9 精准数据增强前后的效果 Fig. 9 Effect of data before and after accurate enhancement |
本文对数据集进行预处理后,每类目标样本数目如表 2所示。
![]() |
下载CSV 表 2 数据增强后每类目标样本的统计结果 Table 2 Statistical results of each target sample after data enhancement |
本文使用调整后的数据集作为训练集,分别对改进前后的模型进行训练。本文实验的操作系统为windows10,CPU为E5-2630L v3,内存16 GB,GPU为1080 Ti,显存11 GB。训练时batchsize设置为16,学习率为0.001,优化器为Adam,根据训练日志绘制出模型损失函数值的变化曲线如图 10所示。从图 10可以看出,当YOLOv4训练进行到约9 000次时,整体曲线趋于平稳并无明显震荡,模型收敛。改进后YOLOv4-TIA模型的最终损失函数值明显低于原模型,损失函数最低值仅为0.12。
![]() |
Download:
|
图 10 改进前后模型的训练结果 Fig. 10 Training results of models before and after improvement |
在完成模型训练后,本文将YOLOv4、VGG16、Faster R-CNN作为对比模型,在测试集上采用以下评定指标分别对4个模型进行综合性能对比,结果如表 3所示。
![]() |
下载CSV 表 3 不同检测模型进行林业害虫检测的综合性能对比 Table 3 Comprehensive performances comparison among different detection models for forestry pests detection |
1)精确率(P),通过计算正确检测目标数量与整体检测到的目标数量的比例,以衡量模型的分类能力。
2)召回率(R),通过计算正确检测目标数与验证集目标总数的比例,衡量模型的查全能力。
3)面积交并比(IoU),通过计算模型预测目标的矩形区域与验证集中目标标定的矩形区域的面积交并比,衡量模型的位置预测能力。
从表 3可以看出,改进的YOLOv4-TIA模型检测速度与YOLOv4相差不大,比SSD快1.6倍,比Faster R-CNN快6.7倍。相比SSD、Faster R-CNN和YOLOv4方法,改进的YOLOv4-TIA的准确率更高,且在比Faster R-CNN模型检测速度加快了6倍的情况下,准确率仍提高了6.5%。因此,YOLOv4-TIA通过捕捉跨维度交互增强了网络特征表达能力,利用高效的多尺度连接方式与Focal loss函数,进一步提高模型的检测精确率,能够检测到更小的目标,YOLOv4-TIA的召回率相比于YOLOv4提升了8.3%。
根据精确率和召回率,本文对每类目标的平均精准度(Average Precision,AP)和模型整体的mAP(mean Average Precision)进行计算对比,结果如表 4所示。优化后YOLOv4-TIA模型的整体mAP相比于YOLOv4提升了5.6%,结合表 3的对比数据,优化后模型的鲁棒性较优。YOLOv4-TIA与YOLOv4模型的mAP值分别为85.7%和80.7%。YOLOv4-TIA与YOLOv4模型的FLOPs分别为57×109和52×109。本文对每类目标的的AP值进行分析,由于YOLOv4样本数量分布不均导致AP值差异较大,而YOLOv4-TIA模型经过数据增强后每类AP值较均衡,且无明显波动。
![]() |
下载CSV 表 4 YOLOv4-TIA与YOLOv4模型的AP对比 Table 4 AP comparison of YOLOv4-TIA and YOLOv4 models |
在测试集上YOLOv4模型和YOLOv4-TIA模型的昆虫图像实际检测效果对比如图 11和图 12所示。从图中可以看出,所有昆虫对象检测结果用矩形框标示,在直接使用YOLOv4模型进行检测时,存在一些昆虫对象漏检的情况,然而使用YOLOv4-TIA模型均无漏检情况。
![]() |
Download:
|
图 11 YOLOv4模型检测结果 Fig. 11 Detection results of YOLOv4 model |
![]() |
Download:
|
图 12 YOLOv4-TIA模型检测结果 Fig. 12 Detection results of YOLOv4-TIA model |
因此,YOLOv4-TIA的目标检测精确率和召回率都要高于YOLOv4,其小目标的检测能力也更优。
4 结束语本文提出基于YOLOv4-TIA的林业害虫目标检测方法,通过对数据集进行精准数据增强,利用三分支注意力机制对CSPDarkNet53网络进行改进,并将其与优化的PANet网络相结合,获取更丰富的语义信息和位置信息,实现对诱捕器镜头下林业害虫的监测。实验结果表明,YOLOv4-TIA方法的精确率和召回率分别达到85.9%和91.2%,相比SSD、Faster R-CNN、YOLOv4方法,在保证实时性的前提下,能够有效提高检测精度。
[1] |
王正宏. 基于分形理论的林业害虫识别与分类方法的研究[D]. 哈尔滨: 东北林业大学, 2010. WANG Z H. Research on recognition and classification method of forestry pests based on fractal theory[D]. Ha'er bin: Northeast Forestry University, 2010. (in Chinese) https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CMFD&dbname=CMFD2011&filename=2010242936.nh&uniplatform=NZKPT&v=gcdfyBBO53Ri9IWZ8Zm2Nix2foGIKLrmAkXhkSoiKbl0d_PYpCsbtOmgshQnQ9zI |
[2] |
周爱明. 基于深度学习的农业灯诱害虫自动识别与计数技术的研究[D]. 杭州: 浙江理工大学, 2019. ZHOU A M. Automated recognition and counting technique for agricultural light- trap pests based on deep learning[D]. Hangzhou: Zhejiang Sci-Tech University, 2019. (in Chinese) https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CMFD&dbname=CMFD201901&filename=1019023619.nh&uniplatform=NZKPT&v=ZNTS98tBWFQgSeLXz8zlLOsE3fOP5TYJUBvDGG0iABjjN-JOghVuyPAsiYQz4kmi |
[3] |
潘春华, 肖德琴, 林探宇, 等. 基于SVM和区域生长结合算法的南方主要蔬菜害虫分类识别[J]. 农业工程学报, 2018, 34(8): 192-199. PAN C H, XIAO D Q, LIN T Y, et al. Classification and recognition for major vegetable pests in Southern China using SVM and region growing algorithm[J]. Transactions of the Chinese Society of Agricultural Engineering, 2018, 34(8): 192-199. (in Chinese) |
[4] |
李衡霞, 龙陈锋, 曾蒙, 等. 一种基于深度卷积神经网络的油菜虫害检测方法[J]. 湖南农业大学学报(自然科学版), 2019, 45(5): 560-564. LI H X, LONG C F, ZENG M, et al. A detectiong method for the rape pests based on deep convolutional neural network[J]. Hunan Agricultural University(Natural Sciences), 2019, 45(5): 560-564. (in Chinese) |
[5] |
SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[EB/OL]. [2020-12-10]. https://arxiv.org/pdf/1409.1556.pdf.
|
[6] |
GIRSHICK R. Fast R-CNN[C]//Proceedings of IEEE International Conference on Computer Vision. New York, USA: IEEE Press, 2015: 1440-1448. https://ieeexplore.ieee.org/document/7410526
|
[7] |
李想. 基于物联网的虫情监测系统[D]. 北京: 北京林业大学, 2019. LI X. The pest monitoring system based on the Internet of Things[D]. Beijing: Beijing Forestry University, 2019. (in Chinese) http://cdmd.cnki.com.cn/Article/CDMD-10022-1019195459.htm |
[8] |
LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multibox detector[C]//Proceedings of European Conference on Computer Vision. Berlin, Germany: Springer, 2016: 21-37. https://link.springer.com/chapter/10.1007/978-3-319-46448-0_2
|
[9] |
BOCHKOVSKIY A, WANG C Y, LIAO H Y M. YOLOv4: optimal speed and accuracy of object detection[EB/OL]. [2020-12-10]. https://arxiv.org/abs/2004.10934.
|
[10] |
SONG H, WILLI M, THIAGARAJAN J J, et al. Triplet network with attention for speaker diarization[EB/OL]. [2020-12-10]. https://arxiv.org/pdf/1808.01535.pdf.
|
[11] |
LIU S, QI L, QIN H, et al. Path aggregation network for instance segmentation[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. New York, USA: IEEE Press, 2018: 8759-8768. https://ieeexplore.ieee.org/document/8579011
|
[12] |
REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-timeobject detection[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. New York, USA: IEEE Press, 2016: 779-788. https://ieeexplore.ieee.org/document/7780460
|
[13] |
高宗, 李少波, 陈济楠. 基于YOLO网络的行人检测方法[J]. 计算机工程, 2018, 44(5): 215-219, 226. GAO Z, LI S B, CHEN J N. Pedestrian detection method based on YOLO network[J]. Computer Engineering, 2018, 44(5): 215-219, 226. (in Chinese) |
[14] |
REDMON J, FARHADI A. YOLOV3: an incremental improvement[EB/OL]. [2020-12-10]. https://arxiv.org/pdf/1804.02767.pdf.
|
[15] |
WU D, LV S, JIANG M, et al. Using channel pruning-based YOLOv4 deep learning algorithm for the real-time and accurate detection of apple flowers in natural environments[J]. Computers and Electronics in Agriculture, 2020, 178: 105742. DOI:10.1016/j.compag.2020.105742 |
[16] |
鞠默然, 罗海波, 王仲博, 等. 改进的YOLOV3算法及其在小目标检测中的应用[J]. 光学学报, 2019, 39(7): 253-260. JU M R, LUO H B, WANG Z B, et al. Improved YOLOV3 algorithm and its application in small target detection[J]. Acta Optica Sinica, 2019, 39(7): 253-260. (in Chinese) |
[17] |
MISRA D, NALAMADA T, ARASANIPALAI A U, et al. Rotate to attend: convolutional triplet attention module[C]//Proceedings of IEEE/CVF Winter Conference on Applications of Computer Vision. New York, USA: IEEE Press, 2021: 3139-3148. https://ieeexplore.ieee.org/document/9423300
|
[18] |
TAN M, PANG R, LE Q V. Efficientdet: scalable and efficient object detection[C]//Proceedings of IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York, USA: IEEE Press, 2020: 10781-10790. https://ieeexplore.ieee.org/document/9156454
|
[19] |
卞永明, 高飞, 李梦如, 等. 结合Kmeans++聚类和颜色几何特征的火焰检测方法[J]. 中国工程机械学报, 2020, 18(1): 1-6. BIAN Y M, GAO F, LI M R, et al. Fire detection method using Kmeans++ clustering and features of mixed color and geometry[J]. Chinese Journal of Coustruction Machinery, 2020, 18(1): 1-6. (in Chinese) |
[20] |
YU Z, SHEN Y, SHEN C. A real-time detection approach for bridge cracks based on YOLOv4-FPM[J]. Automation in Construction, 2021, 122: 1-10. |
[21] |
杨明欣, 张耀光, 刘涛. 基于卷积神经网络的玉米病害小样本识别研究[J]. 中国生态农业学报, 2020, 28(12): 1924-1931. YANG M X, ZHANG Y G, LI T. Research on small sample recognition of corn disease based on convolutional neural network[J]. Chinese Journal of Eco-Agriculture, 2020, 28(12): 1924-1931. (in Chinese) |