基于卷积神经网络的害虫分类*

2022-10-27 04:02陈继清韦德鹏龙腾罗天王桦彬
中国农机化学报 2022年11期
关键词:特征提取尺度害虫

陈继清,韦德鹏,龙腾,罗天,王桦彬

(广西大学机械工程学院,南宁市,530007)

0 引言

农作物病虫害是一种严重的自然灾害,具有种类多、影响大以及时常暴发成灾的特点[1]。病虫害在全球范围内造成了巨大的经济损失,据研究表明,世界各国有接近一半的农作物产量是由于病虫害而损失掉的[2]。为了降低病虫害造成的损失,Bernardo[3]在1993年提出了有害生物综合治理(IPM)方法,该方法要求对农作物中的害虫种类进行识别和分类,以便农业工作者能够选择准确的农药类别和有效的防治方法来阻止病虫害的发生。传统的害虫种类识别和分类方法主要是由昆虫学家或农业工作者周期性的进入农田,对农作物中的昆虫类别进行调查,以寻找病虫害发生的迹象。然而,Chapman等在2009年的研究表明,地球上的昆虫类别超过500万种。传统的方法要求每个农业工作者对每一种昆虫都能够进行精准识别以及分类是不现实的,而且存在工作量大、消耗时间长、识别准确度低的问题[4]。

随着卷积神经网络(CNN)技术的发展,越来越多基于卷积神经网络(CNN)的病虫害识别方法被提出,王丹丹等[5]采用卷积神经网络识别了多特征分量的苹果目标;陆雅诺等[6]提出了一种基于注意力机制的啤酒花病虫害识别方法,试验表明该方法的准确率达到93.11%;蒲秀夫等[7]提出了使用二值化卷积神经网络模型对植物病虫害进行识别的方法,该方法以VGG16模型作为基准,采用深度网络模型对植物病虫害进行分类,平均识别准确率达到96.8%;闫建伟等[8]通过神经网络对深层次的果实特征进行提取,将提取到的特征与低层次特征进行多次融合,有效提升了识别精度;项小东等[9]提出了一种基于改进的Xception模型的植物病虫害识别方法,试验表明该方法的识别准确率达到了91.9%,精确率达到了88.7%;Zhang等[10]通过对GoogLeNet增加Droupout层、ReLU函数和减少分类器的数量进行优化。改进后的模型在玉米的9种病害中达到了98.9%的识别精度;Mique等[11]利用基于CNN的模型,对采集到的图像与现有的水稻病虫害图像进行了检索和比较,该模型能够达到90.9%的最终训练精度;曹乐平等[12]提出了BP神经网络模型用于柑橘病虫害的识别,平均准确率达到92.67%;Khan等[13]实现了深度预训练模型用于提取深度特征,对6种苹果和香蕉水果病害进行分类,提高了分类的精度和准确性;Liu等[14]提出了一种用于解决害虫目标自动识别和定位问题的害虫检测网络,可检测16类农业害虫;Lu等[15]提出了基于深度卷积神经网络(DCNN)技术的水稻病害识别方法,对10种常见水稻病害进行了识别,提高了收敛速度和识别精度,并引入迁移学习对预训练的深度网络进行微调,以提高学习效率。

综上所述,早期提出的方法依然存在识别精确度低、网络结构复杂和没有充分利用图像的多尺度特征信息等问题。为了解决这些问题,本文提出了一种基于多尺度特征融合(MFF)的网络模型对作物害虫进行精准识别与分类。该模型采用空洞卷积[16]设计了多尺度特征提取模块(MFEM),以获取到害虫图像的多尺度特征图;同时,使用深层特征提取模块(DFEM)提取图像的深层特征信息;最后,将分别由多尺度特征提取模块(MFEM)和深层特征提取模块(DFEM)提取到的特征图进行融合,以充分利用害虫图像的多尺度特征信息,从而实现以端到端的方式对作物害虫进行精准分类与识别。

1 试验数据采集与处理

1.1 数据集收集

本文试验所用的害虫数据集一方面通过网络爬虫[17]技术从百度、谷歌和Yahoo这3个主流搜索引擎下载获取,另一方面通过使用小米8 SE手机在广西大学农学院试验田进行现场拍摄获取,通过图像裁剪技术将每张图像的大小统一裁剪为512×512。该数据集总共有4 200张图像,包含12种常见农作物害虫成虫和幼虫阶段的RGB图片,分别是蚜虫、粘虫、甲虫、棉铃虫、蚱蜢、螨虫、蚊子、锯蝇、螟虫、穿孔蛾、瘿蝇和蝗虫,其形态特征如图1所示。

(a) 蚜虫 (b) 粘虫 (c) 甲虫

1.2 数据集增强

为了提升网络的鲁棒性和泛化能力,同时,使其具有更高的识别分类性能,防止出现过拟合的问题,本文采用数据增强技术[18]对收集的数据集进行扩充。具体来说就是,使用旋转、平移、翻转和添加噪声这4种数据增强算法对原始图像进行处理。其中,旋转的范围在[10°, -10°]之间,步长为1°;添加的噪声系数范围在[0, 1.5]之间,处理结果如图2所示,从而使得害虫数据集的图片量从4 200张增加到67 200张。将增强后的数据集划分成训练集和测试集,其中,训练集包含57 600张图片,测试集包含9 600张图片。各类害虫的图片数量如表1所示。

(a) 原图 (b) 旋转 (c) 平移

表1 各类害虫图片数量分布Tab. 1 Number distribution of pictures of various pests

2 多尺度特征融合网络(FFNet)结构

2.1 深层特征提取模块(DEFM)

深层特征提取模块(DFEM)采用编码器-解码器[19]结构,如图3所示。编码网络由1个输入层、7个3×3卷积层和3个最大池化层组成,在每一个卷积层后,采用批归一化[20](BN)层对卷积层的输出结果进行归一化处理,以加快模型的收敛速度,且在一定程度上缓解深层网络中“梯度弥散”的问题,从而使得训练本文的网络模型时更加容易和稳定。假设输入为一个d维向量X=[x(1),x(2),…x(d)],则向量X的第k维经过归一化处理后的结果如式(1)所示。

图3 深层特征提取模块结构图

(1)

式中:x*(k)——向量X中的第k维归一化处理后的结果;

x(k)——向量X中的第k维;

E[x(k)]——第k维的均值;

Var[x(k)]——第k维的方差。

同时,本文在批归一化(BN)层后面还设置了一个采用线性整流函数[21](ReLU)作为激活函数的激活层,以克服网络模型的梯度消失问题,从而进一步加快训练速度。线性整流函数(ReLU)的函数式如式(2)所示。

f(y)=max(x,wTy+b)

(2)

式中:y——输入向量;

wT——权重系数向量;

b——偏置量。

解码网络由6个3×3反卷积层、3个2×2反卷积层和1个输出层组成,其结构与编码网络呈镜像,本文不仅采用2×2的反卷积层作为上采样层,还采用3×3反卷积层进行高级特征的提取。同时,在编码器与解码器间还采用跳级连接结构将高、低级特征进行融合,从而进一步提高网络的分类性能。

反卷积[22]是一种将图像由低分辨率到高分辨率的映射操作,主要用于将特征图恢复到原始图像尺寸的大小,以减少特征信息的丢失,其原理如图4所示。经过反卷积操作后输出图像的尺寸计算方法如式(3)所示。

Output=S×(W-1)+K-2×P

(3)

式中:W——输入图像尺寸;

K——卷积核大小;

S——步长;

P——填充数;

Output——输出图像尺寸。

图4 反卷积原理示意图

2.2 多尺度特征提取模块(MEFM)

多尺度特征提取模块(MFEM)的结构如图5所示,由1个输入层、4个空洞卷积层、1个1×1卷积层和1个输出层组成。空洞卷积的原理如图6所示,当扩张率为1时,空洞卷积与普通卷积没有差异,卷积后的感受野均为3×3;当扩张率为2时,空洞卷积的感受野扩大到5×5;当扩张率为3时,空洞卷积的感受野扩大到7×7。采用空洞卷积来设计多尺度特征提取模块(MFEM),一方面能够在不增加计算量的前提下,以较大的感受野提取到更丰富的特征信息;另一方面可以将多个不同扩张率的空洞卷积层叠加使用,从而获取到多个尺度的特征信息。

图5 多尺度特征提取模块结构图

(a) 扩张率为1 (b) 扩张率为2 (c) 扩张率为3

首先,采用4个空洞率分别为6、12、24和36的空洞卷积层分别对输入图像进行多尺度特征信息提取,获得4个包含有不同尺度特征信息的特征图,然后将提取到的多尺度特征信息进行融合,以减少特征信息的丢失,并使用1×1的卷积层对融合特征图进行通道数的调整,从而实现多尺度特征的提取。同时,为了加快模型的收敛速度和避免梯度消失的情况发生,本文在每个空洞卷积层和卷积层后面均使用批归一化(BN)层和ReLU激活层对输出结果进行处理。

2.3 FFNet结构体系

本文提出的FFNet框架结构如图7所示,主要由深层特征提取模块(DFEM)和多尺度特征提取模块两个部分组成。将害虫图像输入FFNet模型,一方面通过深层特征提取模块(DFEM)提取害虫图像的高级特征信息,另一方面通过多尺度特征提取模块(MFEM)提取害虫图像多个尺度的特征信息,然后将提取到的害虫图像的高级特征信息和多尺度特征信息进行融合,以减少特征信息的丢失,最后将融合的特征信息输入分类层,从而实现害虫的识别与分类。

图7 FFNet结构体系

为了表明本文提出的FFNet的轻量性,将几个主流的神经网络(CNN)模型的参数量与内存占用量进行了对比,如表2所示。可以看出,FFNet的参数量和内存消耗量分别为9 170 773和34.9 M,比主流的ResNet50和VGG16模型分别降低了85.2%和74.8%,这表明提出的FFNet结构简便,有效降低了整体参数量。

表2 主流网络框架的参数量及内存比较Tab. 2 Parameter quantity and memory comparison of mainstream network frameworks

3 试验结果与分析

3.1 试验参数设置

为了证实FFNet模型对农作物害虫图像识别与分类拥有良好的分类性能,在PyTorch 1.8.1框架上使用在本文第1节中提到的数据集进行了试验,试验平台的其他软、硬件信息如表3所示。

表3 试验环境详细信息表Tab. 3 Experimental environment details table

本文所用到的网络模型的数据是在同一试验条件下测试得出,即均采用随机梯度下降(SGD)法进行优化,学习调度器设为Poly,动量参数设为0.9,权重衰减设为0.000 1,学习率设为0.001,损失函数设为交叉熵损失函数[28],迭代次数设为80 000次,以保证试验数据的可靠性。

同时,本文还引用准确率、精准率、召回率和混淆矩阵[29]四个评价指标对FFNet模型的分类性能进行评估。其中,准确率表示预测结果中预测正确的次数占总预测次数的比例;精准率表示在所有预测结果中某个类别预测正确的概率;召回率表示在所有真实值中某个类别被预测正确的概率。各指标的计算如式(4)~式(6)所示。

(4)

(5)

(6)

式中:Accuary——准确率;

Precision——精准率;

Recall——召回率;

TP——预测为正例而实际是正例;

FP——模型预测为正例而实际是反例;

FN——模型预测为反例而实际是正例;

TN——模型预测为反例而实际是反例。

3.2 结果与分析

本文将ResNet50和VGG16这两种最先进的网络模型与提出的FFNet模型在搜集的12种害虫数据集上进行分类性能测试。为了保证数据的可靠性,每个网络训练时所使用的参数设置都相同,各个网络训练花费的时间和分类的准确率,如表4所示。

表4 各网络分类性能对比表Tab. 4 Comparison of network classification performance

由表4数据可以发现,FFNet在分类准确率指标上达到了98.2%,分别比ResNet50和VGG16模型提高了8.3%和19%;而训练花费的时间仅使用了197 min,分别比ResNet50和VGG16模型缩短了56.4%和39%。

同时,本文还把ResNet5、VGG16和提出的FFNet训练过程的损失曲线和精确率曲线进行对比分析,如图8所示。根据曲线图可以看出,VGG16的损失曲线和准确率曲线分别在迭代30 000次和第36个epochs时开始趋于平缓,其准确率为82.5%,损失值为0.213;ResNet50的损失曲线和准确率曲线分别在迭代25 000次和第26个epochs时开始趋于平缓,其准确率为90.7%,损失值为0.114;而FFNet损失曲线和准确率曲线分别在迭代20 000次和第21个epochs时就以开始趋于平缓,其准确率达到了98.2%,损失值仅为0.031。这表明本文提出的FFNet模型不仅收敛的速度快,而且对收集的12类害虫的分类性能更好。

(a) 各个网络的损失曲线图

为了更直观地表明FFNet的分类性能,采用混淆矩阵对其分类结果进行可视化分析。混淆矩阵的行代表预测的类别,列代表真实的类别,主对角线的数值代表分类模型在该类别上的分类精度,如图9所示。

图9 FFNet分类结果混淆矩阵

混淆矩阵主对角线上的数值均为各行各列的最大值,分别为782、794、789、800、778、781、789、771、783、784、787和793,这表明本文提出的FFNet模型对12类害虫的识别分类性能良好。与此同时,本文还测试了FFNet模型对数据集中每一类害虫识别分类的精准率和召回率,如表5所示。从表中数据可知,提出的FFNet不仅整体分类准确率高,对每一类害虫的识别分类精准率和召回率也取得了非常好的成绩,FFNet模型能够高效的完成农作物病虫害分类识别工作。

表5 FFNet对各类害虫分类结果Tab. 5 Classification results of various pests by FFNet

4 结论

本文提出了一种基于多尺度特征融合的网络模型(FFNet),采用多尺度特征提取模块(MFEM)在不增加模型参数量的情况下,以较大的感受野获取到害虫图像的多尺度特征信息,然后将获取到的多尺度特征与深层特征提取模块(DFEM)提取的特征进行融合,从而实现害虫类别的识别与分类。为了验证本文提出的FFNet模型的有效性和鲁棒性,将FFNet、ResNet50和VGG16在本文建立的12类害虫数据集上进行试验,测得FFNet模型的分类准确率达到了98.2%,分别比VGG16和ResNet50提高了19%和8.3%;在训练时间上,FFNet模型的训练仅需197 min,其损失函数Loss为0.031,分别比ResNet50和VGG16模型缩短了56.4%和39%,而且整个网络仅有34.9 M。本文提出的FFNet模型与主流的模型相比,不仅对自制的12类害虫数据集具有良好的性能,而且在模型的收敛速度和参数量方面也有很大程度的提高,能够高效地完成农作物病虫害分类识别工作。

猜你喜欢
特征提取尺度害虫
害虫的克星——七星瓢虫
蜗牛一觉能睡多久?
冬季果树常见蛀干害虫的防治
财产的五大尺度和五重应对
空间目标的ISAR成像及轮廓特征提取
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于特征提取的绘本阅读机器人设计方案
微动目标雷达特征提取、成像与识别研究进展
宇宙的尺度
高温干旱下的夏播玉米田害虫防治?