A method for pig gait scoring based on 3D convolution video analysis
-
摘要:目的
猪肢蹄病是种猪淘汰的重要原因之一,给养殖场带来巨大的经济损失。猪蹄疾病判断通常依赖人工肉眼观察猪只步态进行排查,存在效率低、人力成本高等问题。本文旨在实现自动化猪步态评分,高效判断猪只肢蹄健康状况。
方法本文提出一种“端到端”的猪步态评分方法,在单头种猪经过测定通道时采集视频,并制作四分制步态数据集。采用深度学习技术分析视频,设计了一种基于3D卷积网络的时间注意力模块(Time attention module,TAM),有效提取视频帧图像之间的特征信息。将TAM与残差结构结合,构建猪步态评分模型TA3D,对步态视频进行特征提取与步态分类评分。为进一步提升模型性能并实现自动化处理,本文设计了步态关注模块(Gait focus module,GFM),能够自动从实时视频流中提取有效信息并合成高质量步态视频,在提高模型性能的同时降低计算成本。
结果试验结果表明,GFM可以实时运行,步态视频大小可以减少90%以上,显著降低存储成本,TA3D模型步态评分准确率达到96.43%。与其他经典的视频分析模型的对比测试结果表明,TA3D的准确率和推理速度均达到最佳水平。
结论本文提出的方案可应用于猪只步态自动评分,为猪肢蹄病的自动检测提供参考。
Abstract:ObjectiveSwine limb and hoof disease is one of the significant reasons for culling breeding swine, resulting in substantial economic losses for livestock farms. The diagnosis of swine limb and hoof disease typically relies on manual observation of pig gaits, which consumes high labor costs and has low efficiency. The aim of this study is to achieve automated pig gait scoring, and efficiently determine the health status of swine limb and hoof.
MethodThis study proposed an “end-to-end” pig gait scoring method. Videos of individual breeding swine passing through designated channels were collected and a four-point gait dataset was created. Deep learning techniques were employed for video analysis. A time attention module (TAM) based on a 3D convolutional neural network was designed to effectively extract feature information between video frame images. By combining TAM with residual structures, the pig gait scoring model TA3D was constructed for feature extraction and gait classification scoring in the gait videos. To further improve model performance and achieve automation, the gait focus module (GFM) was designed. GFM could autonomously extract effective information from real-time video streams to synthesize high-quality gait videos, improving model performance while reducing computational costs.
ResultThe experimental results demonstrated that GFM could operate in real-time and reduced the size of gait videos by over 90%, significantly reducing storage cost, and the gait scoring accuracy of the TA3D model was 96.43%. Moreover, the comparison test results with other classic video analysis models showed that TA3D achieved optimal levels of accuracy and inference speed.
ConclusionThis paper proposes a solution that can be applied to the automatic scoring of pig gait, providing a reference for the automatic detection of swine limb and hoof disease.
-
Keywords:
- Image processing /
- Deep learning /
- Pig /
- Gait scoring /
- Attention mechanism /
- Video analysis /
- Limb and hoof disease
-
广佛手是首批受法律保护的8种岭南中药材之一,其根、茎、叶、花、果均可入药,具有疏肝理气、和胃止痛、燥湿化痰的功效[1]。除药用外,广佛手提取出的精油,气味清香淡雅,具有舒缓压力、提神解乏的作用,被广泛应用于食品、药品、化妆品等行业[2]。广佛手的种植规范要求严格,禁止滥用农药和化学药剂,因此,对广佛手早期的病虫害进行精准识别与防治,是提高广佛手产量与质量的关键。
随着农业机械化与信息化的快速发展,农作物病虫害识别的方法由传统的人工识别方法,发展为基于深度学习技术的识别方法[3-5]。Yuan等[6]将迁移学习与2种深度学习结构相结合,对8种作物病害图像进行分类,准确率为 95.93%。Chen等[7]利用VGGNet增强模型,对水稻病虫害进行分类,准确率为92.00%。Lü等[8]基于AlexNet网络,从不同角度验证了特征增强算法能有效提高网络识别能力,所提出的方法能准确识别自然环境中采集的玉米病害图像。陆健强等[9]提出一种基于Mixup算法和卷积神经网络的柑橘黄龙病果实识别模型,最终模型的准确率达到94.29%。Hassan等[10]提出了一种用于植物病虫害识别的新型深度学习模型,并在3个公开的植物病虫害数据集上进行验证,均取得了良好的识别效果。上述基于深度学习的农作物病虫害叶片分类研究,为深度学习技术应用于农作物病虫害识别提供了参考。
随着深度学习的快速发展,基于深度学习的目标检测算法被广泛应用于农作物病虫害识别,该方法不仅能快速识别病虫害的类别,还能准确定位病斑、害虫在图像中的位置,进一步促进了精准农业的发展[11]。常用的目标检测网络有Faster RCNN[12]、SSD[13]、YOLO系列[14-17]等,可用于识别农作物病虫害[12-21]。其中,YOLO 网络模型是一种one-stage的目标检测算法,基于回归分析可直接获得目标分类结果与目标定位信息,具有结构简单、计算量小、运算速度快等特点,被广泛应用于农作物病虫害识别研究[21-23]。Mamdouh等[21]提出了改进的YOLOv4模型,利用数据增强和加入负样本的方法提高橄榄果蝇的检测精度,最终的识别准确率为96.68%。张博等[22]提出了一种基于改进YOLOv3的农作物害虫识别算法,平均识别准确率为88.07%。胡嘉沛等[23]提出了一种改进YOLO4-tiny模型的柑橘木虱识别方法,平均识别精度为 96.16%。YOLOv5s是YOLO系列网络的最新模型,具有检测精度高、推理速度快等特点,能有效识别小目标或被遮挡目标。
自然环境下拍摄的广佛手早期病虫害图像背景复杂,部分病斑与枝干和光斑相似,且病斑、病虫体积较小,易造成病虫害目标的误检与漏检。为提高广佛手病虫害的识别准确率,结合SqueezeNet网络[24]以及YOLO系列网络的优点,提出一种轻量级目标检测模型YOLOv5-C,以期为实现田间快速精准监测广佛手早期病虫害提供参考。
1. 材料与方法
1.1 试验数据采集
试验数据采集于广东省肇庆乐城镇广佛手园,采集时间为2021年8月和10月。使用手持式Nikon单反相机D3100和高清手机,对自然环境下的广佛手幼苗盆栽和成熟植株叶片上早期的病斑、病虫进行拍摄,拍摄时相机距离病斑叶片约0.5 m,图像分辨率为4608×3072和3000×3000。为真实还原田间复杂环境,本研究的试验数据采集天气包括晴天、阴天和雨后,采集时间为08:30—12:00和14:00—18:00,拍摄角度包括东、南、西、北4个方向。在自然环境下采集的广佛手早期病虫害图像中,病虫害类别包括褐斑病、溃疡病、煤烟病、附生绿球藻、潜叶蛾、双钩巢粉虱和玉带凤蝶,共7类,最终数据集共5969张原始图像。
1.2 构建广佛手病虫害数据集
使用labelImg工具对5969张原始图像中的广佛手病虫害目标进行标注,并将构建的广佛手发病早期的病虫害数据集,按照72%、18%和10%的比例随机划分为训练集(4292张)、验证集(1076张)和测试集(601张)。数据集的基本信息如表1所示。
表 1 广佛手病虫害数据集基本信息Table 1. Basic information of bergamot pest and disease dataset类别 Category 原始图像 Original image 褐斑病病斑 Labeled brown spot 溃疡病病斑 Labeled canker 煤烟病病斑 Labeled dark mildew 附生绿球藻 Labeled chlorococcum 潜叶蛾 Leaf miner 玉带凤蝶 Papilio polytes 双钩巢粉虱 Mealworm 训练集 Training set 4292 608 1150 1654 638 1463 1258 740 验证集 Validation set 1076 145 272 438 155 348 301 200 测试集 Test set 601 91 155 214 90 200 200 91 合计 Total 5969 844 1577 2306 883 2011 1759 1031 1.3 构建广佛手病虫害识别网络
针对在自然环境下,广佛手早期病斑和幼虫体积较小、田间拍摄的图像背景复杂、病变叶片褶皱导致部分病斑特征被破坏等问题,本研究提出了能快速、准确地检测田间广佛手病虫害的YOLOv5-C目标检测模型。根据广佛手病虫害数据集的实际情况,参照SqueezeNet网络的模型压缩思想对网络模型结构进行压缩,降低模型的复杂度。同时,参照不同的多尺度特征融合思想[25-27],添加改进的多尺度特征融合模块,进一步提升网络模型的识别准确率。
1.3.1 YOLOv5网络模型
YOLOv5网络模型检测精度高、推理速度快,能够有效识别小目标和被遮挡的目标。该网络包含4种基础架构,根据网络特定位置的特征提取不同数量的模块和卷积核,将网络分为YOLOv5s、YOLOv5m、YOLOv5l 和 YOLOv5x,对应的网络参数量依次为7.08×106、2.11×107、4.67×107、8.73×107,模型大小依次为14.4、42.5、93.8、175.2 Mb。随着网络模型参数的增加,基础网络模型的复杂度随之增加,虽然网络模型的准确率有所提升,但需要消耗更多的计算资源及硬件资源,网络模型的实时性也随之降低。为实现广佛手病虫害的快速精准识别,选择实时性最优、权重文件最小、最适合部署至嵌入式设备的YOLOv5s网络作为基础网络。YOLOv5s的主干网络为Darknet-53,颈网络为PANet路径聚合网络[27],主干网络由Focus模块、卷积单元、C3模块(含有3个卷积模块的CSP模块[28])以及SPP模块[29]组成。本研究使用YOLOv5s作为基础网络,网络结构如图1所示。
1.3.2 多尺度特征融合模块
广佛手早期病虫害的病斑、病虫体积较小,为有效提高广佛手病虫害目标的识别准确率,本研究针对广佛手病虫害数据集的特点,提出了一种多尺度特征融合模块(Multi-scale feature fusion module,MSFFM),以提高网络模型特征提取、特征融合的能力。该模块在骨干网络中选定3个特征图,包括顶层特征图U1、中层特征图U2和足够低层特征图U3。其中,顶层特征图U1通过上采样操作使得特征图尺寸、通道数与中层特征图保持一致,得到特征图U12;低层特征图通过下采样操作同样将特征图尺寸、通道数与中层特征图保持一致,得到特征图U32。将特征图U12、U2、U32进行融合,获得信息更丰富的特征图U0,将融合后的特征图U0与YOLOv5s的颈网络PANet路径聚合网络相结合使用,进一步提高网络模型的识别准确率。图2为MSFFM的多尺度特征融合示意图。
1.3.3 注意力机制模块
针对广佛手病虫害目标体积较小、形状多变且部分病斑和病虫与光斑、背景枝干相似等问题,本研究在网络模型中添加了注意力机制模块(Convolutional Block Attention Module,CBAM)[30],该模块由通道注意力模块和空间注意力模块组成,输入特征图依次经过通道注意力模块和空间注意力模块,获得通道维度和空间维度的注意力图,将输入特征图与获得的注意力图相乘以实现特征图的自适应优化,使得网络模型更加关注于目标的特征信息,弱化图像中的背景信息,提高网络模型的识别性能。
其中,通道注意力模块通过探索不同通道间特征图的关系,选择目标特征的关键信息并提高这部分信息的表达能力,使得网络模型更加关注目标相关的特征信息,更有效地提取目标特征。
1.3.4 C3模块的改进
由于广佛手病虫害的类别相对较少,在不影响网络识别准确率的前提下,可适当对YOLOv5s 网络模型结构进行压缩剪枝。其中,YOLOv5s中的C3模块由3个卷积模块和1个Bottleneck模块构成,C3_X表示C3模块中的Bottleneck模块数量为X个。Bottleneck模块和C3模块的结构分别如图3a、3b所示。
图 3 Bottleneck瓶颈模块(a)和C3模块(b)的结构示意图卷积单元Conv模块括号内的参数依次表示输入通道数、输出通道数、卷积核大小和步长Figure 3. Structural diagram of the Bottleneck module (a) and C3 module (b)The number of input channels, output channels, the size of the convolution kernel and the step size are indicated by the parameters in parentheses of Conv module本研究借鉴SqueezeNet网络的模型压缩思想,对C3模块进行改进,提出了C3-S模块。C3-S模块中的Bottleneck-S瓶颈模块,由2个1×1卷积模块和1个3×3卷积模块构成,首先通过1×1卷积模块Conv1将输入特征图的通道数Cin压缩至输入的四分之一,即Cin/4;将压缩后的特征图分别传入1×1卷积模块Conv2和3×3卷积模块Conv3,得到两个通道数都为Co/2的特征图;将2个特征图进行维度拼接,所获得的便是Bottleneck-S瓶颈模块的输出特征图。Bottleneck-S模块和C3-S模块的结构分别如图4a、4b所示。
在卷积神经网络模型中,无偏置情况下,每个卷积层的参数数量计算如下:
$$ \begin{split}&\;\\ &\mathrm{p}\mathrm{a}\mathrm{r}\mathrm{a}\mathrm{m}\mathrm{s}={C}_{\mathrm{o}}\times \left({k}_{\mathrm{w}}\times {k}_{\mathrm{h}}\times {C}_{\mathrm{i}\mathrm{n}}\right), \end{split} $$ (1) 式中,params表示卷积层的参数数量,Co表示输出通道数,kw表示卷积核宽,kh表示卷积核高,Cin表示输入通道数。
原始C3模块中的Bottleneck瓶颈模块,由1个1×1卷积模块和1个3×3卷积模块构成,2个卷积模块的输入和输出通道数量相同,均为C,则Bottleneck瓶颈模块的2个卷积层所需的参数数量P1如式(2)所示:
$$ {P}_{1}=C\times (1 \times 1 \times C)+C\times \left(3 \times 3 \times C\right)= 10{C}^{2}, $$ (2) 式中,P1表示所需的参数数量,C表示2个卷积层的输入和输出通道数。
使用C3-S模块替换C3模块,在网络模型相同位置的Bottleneck-S瓶颈模块中,3个卷积层所需的参数量为P2,计算如式(3)所示:
$$ \begin{split} {P}_{2}=&\dfrac{C}{4}\times \left(1 \times 1 \times C\right)+\dfrac{C}{2}\times \left(1 \times 1 \times \dfrac{C}{4}\right)+\\ &\dfrac{C}{2}\times \left(3 \times 3 \times \dfrac{C}{4}\right)=\dfrac{3}{2}{C}^{2}, \end{split} $$ (3) 式中,P2表示所需的参数数量,C表示Bottleneck-S瓶颈模块的输入和输出通道数量。
虽然在卷积模块中还包含了批量归一化操作,需要少量的参数,但是在改进的YOLOv5-C模型中,使用C3-S模块替换C3模块的部分,卷积层的参数远远多于批量归一化操作所需的参数,故直接使用卷积层的参数近似代表2个瓶颈模块所需的参数。根据式(2)和式(3)所得的参数数量P1和P2,可知Bottleneck-S瓶颈模块的参数数量约为Bottleneck瓶颈模块的参数数量的15%。
为进一步提高网络模型的特征提取能力,将CBAM模块与C3-S模块相结合,构成C3-SC模块,结构如图5所示。
1.3.5 YOLOv5-C广佛手病虫害识别网络
以YOLOv5s网络模型为基础网络,使用所提出的C3-SC模块替换颈网络PANet中的C3模块,有效减少网络模型参数的同时,增强网络模型对广佛手病虫害目标的特征提取能力、弱化干扰背景特征;在PANet结构中添加MSFFM,提高网络模型的特征融合能力,进一步提高网络模型在复杂自然环境下对广佛手病虫害目标的识别准确率。YOLOv5-C网络模型结构参数如表2所示。
表 2 YOLOv5-C网络模型结构参数1)Table 2. Structural parameters of YOLOv5-C network model序列号 Serial No. 当前层的输 入来源 Input source of current layer 网络层 Network layer 输入尺寸 Input size 通道数 No. of channels 0 −1 Focus 640×640×3 32 1 −1 Conv3×3 320×320×32 64 2 −1 C3_1 160×160×64 64 3 −1 Conv3×3 160×160×64 128 4 −1 C3_3 80×80×128 128 5 −1 Conv3×3 80×80×128 256 6 −1 C3_3 40×40×256 256 7 −1 Conv3×3 40×40×256 512 8 −1 SPP 20×20×512 512 9 −1 C3_1 20×20×512 512 10 [−1, 6, 4] MSFFM 256 11 −1 C3-SC 40×40×256 256 12 9 Conv1×1 20×20×512 256 13 −1 Upsample 20×20×256 14 [−1, 6, 11] Concat 15 −1 C3-SC 40×40×768 256 16 −1 Conv1×1 40×40×256 128 17 −1 Upsample 40×40×128 18 [−1, 4, 11] Concat1 19 −1 C3-SC 80×80×512 128 20 −1 Conv3×3 80×80×128 128 21 [−1, 16] Concat 22 −1 C3-SC 40×40×256 256 23 −1 Conv3×3 40×40×256 256 24 [−1, 12] Concat 25 −1 C3-SC 20×20×512 512 26 [19, 22, 25] Detect 1)序列号10为多尺度特征融合模块,序列号11、15、19、22、25为C3-SC模块,序列号18为多尺度维度拼接模块;C3_X表示C3模块中串联的瓶颈模块为X个 1) Serial number 10 is the proposed multi-scale feature fusion module, serial number 11, 15, 19, 22, 25 are the proposed C3-SC modules, serial number 18 is the multi-scale dimension module; C3_X represents the number of bottleneck modules in series of C3 module is X 1.4 试验参数设置与评价指标
1.4.1 试验平台与模型参数设置
在Windows 10操作系统下,基于Python3.8.1和Pytorch1.8.0搭建的深度学习框架进行网络模型的训练与测试。试验所采用的CPU为Intel Xeon Glod 6240@2.60 GHz,192 Gb RAM,GPU为NVIDIA GeForce GTX 3090Ti×2,使用CUDA 11.1版本并行计算框架配合CuDNN 8.0.5版本的深度神经网络加速库。YOLOv5-C模型训练时输入图像大小为640×640,采用Adam优化器,训练批次为16,训练迭代次数为300。在网络模型的训练阶段,设置初始学习率为0.001,使用余弦退火衰减策略更新学习率,目标类别数为7。
1.4.2 网络模型评价指标
本研究使用准确率(Precision)、召回率(Recall)、F1分数、平均准确率(Average precision,AP)、平均精度均值(Mean of average precision,mAP)、模型大小和检测速度作为网络模型的评价指标。其中,准确率、召回率、F1分数及平均准确率的计算如式(4)~(7)所示。
$$ \mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}=\dfrac{\mathrm{T}\mathrm{P}}{\mathrm{T}\mathrm{P}+\mathrm{F}\mathrm{P}}\times 100{\text{%}}, $$ (4) $$ \mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}=\dfrac{\mathrm{T}\mathrm{P}}{\mathrm{T}\mathrm{P}+\mathrm{F}\mathrm{N}}\times 100{\text{%}}, $$ (5) $$ F1 =\dfrac{2\times \mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}\times \mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}}{\mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}+\mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}}\times 100{\text{%}}, $$ (6) $$ \mathrm{A}\mathrm{P}={\displaystyle\int }_{0}^{1}\mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}\left(\mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}\right)\mathrm{d}\mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}\times 100{\text{%}}, $$ (7) 式中,TP表示被正确检测到的病虫害目标数量,FP表示被网络错误认为是病虫害目标的数量,FN表示漏检的病虫害目标数量。
2. 结果与分析
2.1 YOLOv5-C与YOLOv5s检测结果对比
为了直观地体现改进的YOLOv5-C网络模型的性能,分别使用YOLOv5s和YOLOv5-C网络模型对测试集图像进行检测,图6对比展示了这2种网络模型对不同天气拍摄的不同病虫害图像的检测效果,图7对比展示了2种网络模型对与枝干或光斑相似的病斑的检测效果。
图 6 不同天气情况下YOLOv5-C和YOLOv5s检测结果图中数据为置信度;图中红色框为网络模型的检测结果,黄色框为人工标注的被网络模型漏检或误检的目标Figure 6. Detection results of YOLOv5-C and YOLOv5s under different weather conditionsThe data in figures represent confidence levels; The red box in the figure is the detection result of network model, the yellow box is the artificially labeled target that is missed or misdetected by the network model图 7 与枝干或光斑相似的病虫害目标的检测效果图中数据为置信度;图中红色框为网络模型的检测结果,黄色框为人工标注的被网络模型漏检或误检的目标Figure 7. The detection effect of pests and diseases similar to branches or spotsThe data in figures represent confidence levels; The red box in the figure is the detection result of network model, the yellow box is the artificially labeled target that is missed or misdetected by the network model如图6所示,2种网络模型均能准确识别阳光直射和非阳光直射的广佛手病虫害图像。通过对比图6a、6c、6e和6g可知,YOLOv5-C网络模型识别的目标置信度更高。雨后拍摄的潜叶蛾图像中,叶片和枝干均有水珠,增加了目标检测的难度,通过对比图6d和6h可知,YOLOv5s网络模型存在误检的病虫害目标,即图6d中黄色框内的红色目标框,误将水珠识别为潜叶蛾病虫,而YOLOv5-C网络模型能准确识别病虫害目标,抗干扰能力更强。
部分广佛手病虫害的病斑与枝干或光斑相似,直接使用YOLOv5s网络模型进行检测易造成病虫害目标的误检或漏检,YOLOv5s网络模型的检测结果如图7中的a~c所示,其中,图7a中存在重复框选同一目标的情况,图7b中误将枝干上的光斑检测为褐斑病目标,图7c中漏检了枝干处的玉带凤蝶目标。YOLOv5-C网络模型能有效抑制环境干扰,准确识别与枝干或光斑相似的广佛手病虫害目标,检测结果如图7d~7f所示。由图6、7可知,YOLOv5-C网络模型具有更优的抗干扰能力,能更准确地识别复杂背景下广佛手病虫害目标。
2.2 消融试验
为验证所提出的各种改进策略的有效性,本研究进行了一系列消融试验,在同一平台同一试验框架,使用相同的训练参数对网络模型进行训练,在测试集中分别验证了所提出的改进模块对网络模型性能的影响,以及多个模块共同作用对网络模型性能的改进效果,结果如表3所示。
表 3 各个模块消融试验Table 3. Ablation experiments for each module网络 模型 Model 准确 率/% Precision 召回 率/% Recall F1 分数/% F1 score 精度 均值/% Mean average precision 模型大 小/Mb Model size YOLOv5s 90.82 86.50 88.61 90.61 14.4 YOLOv5s+MSFFM 92.31 86.43 89.27 91.93 15.8 YOLOv5s+C3-S 92.62 86.41 89.41 91.20 12.7 YOLOv5s+C3-SC 93.41 88.06 90.66 92.32 12.7 YOLOv5-C 93.00 88.99 90.95 93.06 14.1 从表3可以看出,添加了MSFFM模块的网络模型,相比于原始的YOLOv5s网络模型,准确率提高了1.49个百分点,平均精度均值提高了1.32个百分点,说明MSFFM模块能提高网络模型的特征提取和特征融合能力,丰富所提取的特征信息,提高网络模型的识别准确率。使用C3-S模块替换YOLOv5s原始网络中PANet结构中的C3模块,使网络模型减小了1.7 Mb,小幅度提高了网络检测效果,进一步说明了C3-S模块能在不影响网络模型识别性能的基础上,使网络模型轻量化。C3-SC模块是在C3-S模块中添加CBAM注意力机制模块,使用C3-SC模块替换原始YOLOv5s网络模型PANet结构中的C3模块,相较于原始YOLOv5s网络模型,准确率提高了2.56个百分点,召回率提高了1.56个百分点,说明C3-SC模块能提高检测目标的特征提取能力,抑制背景干扰,提高网络模型的识别准确率;F1分数提高了2.05个百分点,说明C3-SC模块能提高网络模型的综合性能,使网络模型更稳健;由于CBAM模块的参数少,所以网络模型的大小仍保持为12.7 Mb。
试验结果表明,本研究所提出的每个改进策略均能提高网络模型的性能。相比原始的YOLOv5s网络模型,YOLOv5-C网络模型具有更好的识别性能,mAP提高了2.45个百分点,F1分数提高了2.34个百分点,网络模型减小了0.3 Mb。
2.3 消融试验中各个类别的平均准确率对比
为进一步分析所提出的网络模型对各个病虫害类别识别准确率的影响,消融试验中广佛手潜叶蛾虫害、双钩巢粉虱虫害、玉带凤蝶虫害、褐斑病、附生绿球藻病、溃疡病和煤烟病的AP如图8所示。
观察图8可知,原始的YOLOv5s网络模型,呈现出各个病虫害类别的AP差异较大,所提出的MSFFM模块和CBAM模块能改善这一情况。经计算,原始YOLOv5s网络模型各个类别AP的标准差为7.14,变异系数为7.88%;所提出的YOLOv5-C网络模型各个类别AP的标准差为3.13,变异系数为3.36%,各个病虫害类别的AP更均衡。
所提出的YOLOv5-C网络模型,在提高网络模型识别准确率的同时,综合考虑了各个病虫害类别的识别效果,该网络模型的平均精度均值为93.06%。相比于原始的YOLOv5s网络模型,潜叶蛾病虫害和煤烟病的平均准确率分别提高了14.17和2.71个百分点。所提出的YOLOv5-C网络模型各个类别的AP情况,更符合广佛手病虫害识别的实际应用需求。
2.4 不同检测模型性能对比
将本文所提出的算法与RetinaNet、SSD、Efficientdet-D1、YOLOv4、主干网络为MobilenetV1的YOLOv4、YOLOv4-tiny和YOLOv5s目标检测网络进行对比,不同网络的检测结果如表4所示。由表4数据可知,YOLOv5-C算法获得了最高的召回率、F1分数、平均精度均值,其中平均精度均值比RetinaNet、Efficientdet-D1、SSD、YOLOv4的分别高22.30、20.65、4.84和2.36个百分点,其中,所提出的YOLOv5-C网络模型大小仅为YOLOv4网络模型的5.77%。相比于轻量级结构YOLOv4-mobilenet和YOLOV4-tiny,YOLOv5-C的平均精度均值分别高了7.43和24.06个百分点。本研究所构建的广佛手病虫害数据集,是由自然环境下拍摄的发病早期的病虫害目标构成,图像背景复杂,病斑、虫体的体积较小,且形态多变,常用的目标检测网络易产生漏检、误检,检测精度不高。
表 4 不同网络的检测结果对比Table 4. The detection results of different network网络模型 Network model 骨干网络 Backbone network 准确率/% Precision 召回率/% Recall F1分数/% F1 score 精度均值/% Mean average precision 模型大小/Mb Model size 检测时间/s Test time RetinaNet ResNet-50 89.13 63.49 74.16 70.76 139.4 0.037 SSD VGG16 91.59 76.71 83.49 88.22 93.7 0.018 Efficientdet-D1 EfficientNet 93.85 63.77 75.94 72.41 25.7 0.084 YOLOv4 CSPDarknet53 90.55 87.28 88.88 90.70 244.5 0.042 YOLOv4-mobilenet MobileNetV1 85.61 80.60 83.03 85.63 51.2 0.026 YOLOV4-tiny CSPDarknet53-tiny 90.50 63.50 74.63 69.00 22.5 0.012 YOLOv5s CSPDarknet53 90.82 86.50 88.61 90.61 14.4 0.010 YOLOv5-C CSPDarknet53 93.00 88.99 90.95 93.06 14.1 0.010 相较于上述常用的目标检测算法,本研究所提出的YOLOv5-C网络模型具有更优的识别性能,其中,F1分数为90.95%,平均精度均值为93.61%,网络模型大小仅为14.1Mb,每张图像的平均检测时间仅为0.01s,YOLOv5-C网络模型更适合完成在自然环境下对广佛手病虫害的识别任务。
3. 结论
本研究提出了1种基于YOLOv5-C目标检测网络的复杂背景下广佛手病虫害识别方法。为均衡提高每一类广佛手病虫害的识别准确率,提出了一种多尺度特征融合模块MSFFM,该模块与CBAM注意力机制模块共同作用,使得每一类广佛手病虫害的平均识别准确率均高于89.11%。在保障每一个病虫害类别都有较高识别准确率的前提下,综合提高网络模型的识别准确率。
本研究为减少网络模型的参数,提出了一种改进的C3-SC模块,在不影响网络模型识别性能的前提下,将该模块与MSFFM、CBAM模型相结合,构建了轻量级目标检测网络YOLOv5-C,网络模型大小为14.1Mb。
本研究构建了自然环境下的广佛手病虫害数据集用于网络模型的训练与测试,试验结果表明,所提出的YOLOv5-C网络模型的检测准确率为93%,召回率为88.99%,F1分数为90.95%,平均精度均值为93.06,在GPU上每张图像的平均检测时间为0.01 s,本研究所提出的网络模型的各项性能均高于常用的目标检测算法,具有较高的应用价值,可为后续自然场景下农作物病虫害的精准识别研究提供参考。
本研究仍存在一定的局限性,广佛手病虫害的数据采集与标注需要耗费大量时间和精力,今后将进一步研究病虫害数据集的智能构建,促进智慧农业的发展。 -
图 5 TAM模块结构
T、C、H和W分别表示特征图的时间维度、通道数、高度和宽度;3D Conv表示3D卷积层;3D Global Max-Pool表示3D全局最大池化层;3D Global Avg-Pool表示3D全局平均池化层
Figure 5. Structure of TAM module
T, C, H and W represent the time dimension, number of channels, height, and width of the feature map, respectively; 3D Conv represents a 3D convolutional layer; 3D Global Max-Pool represents a 3D global maximum pooling layer; 3D Global Avg-Pool represents a 3D global average pooling layer
图 6 TA3D网络结构
3D Conv表示3D卷积层;3D Max-Pool表示3D最大池化层;FC表示全连接层;TAM表示时间注意力模块;TABlock表示残差结构
Figure 6. TA3D network architecture
3D Conv represents 3D convolutional layer; 3D Max-Pool represents 3D maximum pooling layer; FC represents fully connected layer; TAM represents time attention module; TABlock represents residual structure
表 1 四分制步态评分标准
Table 1 Four point gait socring scale
步态评分
Gait scoring步态级别
Gait level状态描述
State description1 不及格 猪只行走困难,背部扭曲,难以承重 2 及格 猪只行走犹豫,步幅较短,略有弓背 3 良好 猪只行走正常,步幅较长 4 优秀 猪只行走稳健,步态对称,步频稳定 表 2 数据集中不同步态级别数据的占比
Table 2 The proportion of different gait levels in the dataset
步态级别
Gait level数量
Quantity占比/%
Percentage不及格 Fail 71 17.5 及格 Pass 58 14.3 良好 Good 101 24.9 优秀 Excellent 176 43.3 表 3 改进YOLOv8n试验结果
Table 3 Experimental results of improved YOLOv8n
模型1)
Model精确率/%
Precision召回率/%
Recall帧率/(帧·s−1)
Frames per second浮点运算量/(×109)
Floating point operationsYOLOv8n 99.8 99.7 185 8.2 YOLOv8n-2h 99.7 99.8 200 6.9 YOLOv8n-1h 99.8 99.7 217 6.2 1)YOLOv8n-2h表示YOLOv8n保留大、中2种尺度的检测头;YOLOv8n-1h表示YOLOv8n只保留大尺度检测头
1)YOLOv8n-2h represents YOLOv8n keeps two detection heads with large and medium scales; YOLOv8n-1h represents YOLOv8n keeps only one detection head with large scale表 4 评分测试结果混淆矩阵
Table 4 Confusion matrix of score testing results
真实步态级别
Real gait level不同预测评分的样本数
Sample size with different predicted score召回率/%
Recall1分 1 point 2分 2 points 3分 3 points 4分 4 points 不及格 Fail 15 100.00 及格 Pass 9 2 1 75.00 良好 Good 21 100.00 优秀 Excellent 36 100.00 精确率/% Precision 100.00 100.00 91.30 97.30 表 5 各视频分析模型对比
Table 5 Comparison of various video analyzing models
模型
Model准确率/%
Accuracy单视频平均推理时间/s
Average inference time per videoI3D 82.14 2.02 Slowfast 91.67 2.12 VideoSwin 94.05 1.28 TANet 92.86 1.24 TA3D 94.05 1.18 I3D+GFM 91.67 0.40 Slowfast+GFM 86.90 0.44 VideoSwin+GFM 96.43 0.43 TANet+GFM 92.86 0.26 TA3D+GFM 96.43 0.26 表 6 使用GFM前各视频分析模型对比
Table 6 Comparison of various video analyzing models before using GFM
模型
Model精确率/% Precision 召回率/% Recall 不及格
Fail及格
Pass良好
Good优秀
Excellent不及格
Fail及格
Pass良好
Good优秀
ExcellentI3D 57.14 76.92 95.24 93.10 80.00 83.33 95.24 75.00 Slowfast 71.43 100.00 100.00 96.88 100.00 83.33 100.00 86.11 VideoSwin 93.33 88.89 91.30 97.30 93.33 66.67 100.00 100.00 TANet 82.35 90.91 95.45 97.06 93.33 83.33 100.00 91.67 TA3D 83.33 100.00 95.45 97.06 100.00 83.33 100.00 91.67 平均值 Average 77.52 91.34 95.49 96.28 93.33 80.00 99.05 88.89 表 7 使用GFM后各视频分析模型对比
Table 7 Comparison of various video analyzing models after using GFM
模型
Model精确率/% Precision 召回率/% Recall 不及格
Fail及格
Pass良好
Good优秀
Excellent不及格
Fail及格
Pass良好
Good优秀
ExcellentI3D+GFM 88.24 80.00 95.00 94.59 100.00 66.67 90.48 97.22 Slowfast+GFM 66.67 100.00 91.30 94.44 93.33 33.33 100.00 94.00 VideoSwin+GFM 93.75 91.67 95.00 100.00 100.00 91.67 90.48 100.00 TANet+GFM 83.33 100.00 91.30 97.06 100.00 75.00 100.00 91.67 TA3D+GFM 100.00 100.00 91.30 97.30 100.00 75.00 100.00 100.00 平均值 Average 86.40 94.33 92.78 96.68 98.67 68.33 96.19 96.50 -
[1] 黄建平. 种猪肢蹄病的常见原因分析[J]. 猪业科学, 2020, 37(5): 106-107. doi: 10.3969/j.issn.1673-5358.2020.05.028 [2] JØRGENSEN B. Influence of floor type and stocking density on leg weakness, osteochondrosis and claw disorders in slaughter pigs[J]. Animal Science, 2003, 77(3): 439-449. doi: 10.1017/S1357729800054382
[3] 刘瑞玲. 猪群肢蹄病发病症状、病因及防治措施[J]. 国外畜牧学(猪与禽), 2011, 31(1): 88-90. [4] 王怀中, 张印, 孙海涛. 猪肢蹄病的预防[J]. 养猪, 2010(2): 39-40. doi: 10.3969/j.issn.1002-1957.2010.02.019 [5] 王超, 魏宏逵, 彭健. 广西公猪站公猪淘汰原因及在群猪肢蹄病发病规律调查研究[C]//中国畜牧兽医学会动物营养学分会. 第七届中国饲料营养学术研讨会论文集. 郑州: 中国农业大学出版社, 2014: 1. [6] 杨亮, 王辉, 陈睿鹏, 等. 智能养猪工厂的研究进展与展望[J]. 华南农业大学学报, 2023, 44(1): 13-23. doi: 10.7671/j.issn.1001-411X.202209050 [7] 刘波, 朱伟兴, 杨建军, 等. 基于深度图像和生猪骨架端点分析的生猪步频特征提取[J]. 农业工程学报, 2014, 30(10): 131-137. doi: 10.3969/j.issn.1002-6819.2014.10.016 [8] 朱家骥, 朱伟兴. 基于星状骨架模型的猪步态分析[J]. 江苏农业科学, 2015(12): 453-457. [9] 李前, 初梦苑, 康熙, 等. 基于计算机视觉的奶牛跛行识别技术研究进展[J]. 农业工程学报, 2022, 38(15): 159-169. doi: 10.11975/j.issn.1002-6819.2022.15.017 [10] ZHAO K, BEWLEY J M, HE D, et al. Automatic lameness detection in dairy cattle based on leg swing analysis with an image processing technique[J]. Computers and Electronics in Agriculture, 2018, 148: 226-236. doi: 10.1016/j.compag.2018.03.014
[11] 康熙, 李树东, 张旭东, 等. 基于热红外视频的奶牛跛行运动特征提取与检测[J]. 农业工程学报, 2021, 37(23): 169-178. doi: 10.11975/j.issn.1002-6819.2021.23.020 [12] JIANG B, SONG H, WANG H, et al. Dairy cow lameness detection using a back curvature feature[J]. Computers and Electronics in Agriculture, 2022, 194: 106729. doi: 10.1016/j.compag.2022.106729
[13] POURSABERI A, BAHR C, PLUK A, et al. Online lameness detection in dairy cattle using Body Movement Pattern (BMP)[C]//IEEE. 2011 11th International Conference on Intelligent Systems Design and Applications. Cordoba, Spain: IEEE, 2011: 732-736.
[14] TRAN D, BOURDEV L, FERGUS R, et al. Learning spatiotemporal features with 3d convolutional networks[C]//IEEE. Proceedings of the IEEE International Conference on Computer Vision (ICCV). Santiago, Chile: IEEE, 2015: 4489-4497.
[15] YANG K, QIAO P, LI D, et al. Exploring temporal preservation networks for precise temporal action localization[C]//AAAI. Proceedings of the AAAI Conference on Artificial Intelligence. Palo Alto, California, USA: AAAI, 2018: 7477-7484.
[16] WANG X, GIRSHICK R, GUPTA A, et al. Non-local neural networks[C]//IEEE. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Salt Lake City, UT, USA: IEEE, 2018: 7794-7803.
[17] WOO S, PARK J, LEE J Y, et al. CBAM: Convolutional block attention module[C]//Springer. Proceedings of the European Conference on Computer Vision (ECCV). Munich, Germany: Springer, 2018: 3-19.
[18] HU J, SHEN L, SUN G. Squeeze-and-excitation networks[C]//IEEE. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Salt Lake City, UT, USA: IEEE, 2018: 7132-7141.
[19] ZHANG X, ZHOU X, LIN M, et al. Shufflenet: An extremely efficient convolutional neural network for mobile devices[C]//IEEE. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Salt Lake City, UT, USA: IEEE, 2018: 6848-6856.
[20] HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition[C]//IEEE. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, NV, USA: IEEE, 2016: 770-778.
[21] SRIVASTAVA N, HINTON G, KRIZHEVSKY A, et al. Dropout: A simple way to prevent neural networks from overfitting[J]. Journal of Machine Learning Research, 2014, 15(1): 1929-1958.
[22] CARREIRA J, ZISSERMAN A. Quo vadis, action recognition? a new model and the kinetics dataset[C]//IEEE. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Honolulu, HI, USA: IEEE, 2017: 6299-6308.
[23] LIU Z, NING J, CAO Y, et al. Video swin transformer[C]//IEEE/CVF. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). New Orleans, LA, USA: IEEE, 2022: 3202-3211.
[24] FEICHTENHOFER C, FAN H, MALIK J, et al. Slowfast networks for video recognition[C]//IEEE/CVF. Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV). Seoul, Korea (South): IEEE, 2019: 6202-6211.
[25] LIU Z, WANG L, WU W, et al. TAM: Temporal adaptive module for video recognition[C]//IEEE/CVF. Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV). Montreal, QC, Canada: IEEE, 2021: 13688-13698.
[26] LIU Z, LIN Y, CAO Y, et al. Swin transformer: Hierarchical vision transformer using shifted windows[C]//IEEE/CVF. Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV). Montreal, QC, Canada: IEEE, 2021: 10012-10022.