基于卷积块注意力胶囊网络的小样本水稻害虫识别

2022-05-19 00:40曾伟辉胡根生
中国农业大学学报 2022年3期
关键词:卷积准确率胶囊

曾伟辉 唐 欣 胡根生* 梁 栋

(1.安徽大学 农业生态大数据分析与应用技术国家地方联合工程研究中心,合肥 230601;2.安徽大学 互联网学院,合肥 230039;3.科大国创软件股份有限公司,合肥 230088)

水稻害虫危害是影响水稻产量的重要因素。加强水稻害虫诊断和防治,不仅对农村地区经济发展具有重大意义,而且关系到农业稳定发展和国家粮食安全。

传统农作物害虫诊断主要通过农业专家识别[1],既费时费力,又容易产生误判。近年来,深度学习技术迅速发展,较多研究采用基于卷积神经网络(Convolutional neural network, CNN)的识别方法,使用诸如AlexNe[2]、VGG16[3]、GoogLeNet[4]、Faster R-CNN[5]等对病虫害进行识别[6-9];也有研究提出基于CNN的改进方法,诸如引入滑动窗口[10]、迁移学习[11]等,一定程度上提高了CNN的识别率。然而,训练一个CNN网络需要大量数据,如liu等[12]在试验中使用了88 670张实验室环境下的16类水稻害虫图像,Lu等[13]收集了9 230张图像用于小麦病害分类。在水稻田间,害虫活动范围大,拍摄过程较为困难[14],能获得图像数据相对较少,难以满足CNN的大数据集需求;而使用其他数据集迁移学习获得的模型泛化能力弱,无法适应实际环境的识别需求。另外,CNN会在池化层丢弃大量的信息,导致其对于图像目标中特征的组合方式和位置信息不敏感[15],而特征组合方式和位置信息对于水稻害虫识别是至关重要的。因此,在样本数量不足及真实复杂背景条件下,目前基于CNN的识别方法很难满足水稻害虫识别实际应用的性能需求。

针对实际中监督数据的有限性,小样本学习应运而生[16],从数据增广、模型简化和算法优化等方面研究改进方法,最终目标是利用有限的数据集获得良好的学习性能。在模型简化和改进方面,Hinton等[17]提出的胶囊网络,能较为敏锐地提取图像特征的位置信息以及组合方式,克服CNN的不足。很多研究[18-20]采用胶囊网络进行分类都达到了比CNN更好的性能,在处理复杂数据时具备更好的精度和收敛性。Baydilli等[21]证明在样本量有限的情况下,胶囊网络能达到较高的识别准确率。Peng等[22]证明自注意力胶囊网络能有效地捕捉词的位置信息。注意力机制能够对输入的不同部分赋予不同的权重,关注目标中的重要信息,提升模型性能[23]。Google Mind[24]团队提出在RNN模型上使用注意力机制来进行图像分类,并取得了很好的性能。梁星星等[25]证明了带注意力机制的模型所需要的样本量更少。因此,结合注意力机制的胶囊网络既能克服CNN的不足,又能更好的关注目标中的重要信息,有望解决真实复杂背景下少样本水稻害虫识别的实际应用性能需求。

基于以上研究分析,本研究拟以常见的5种水稻害虫为研究对象,采用一种基于卷积块注意力模型和胶囊网络的小样本水稻害虫识别方法,以期解决现有方法对复杂背景下的小样本水稻害虫识别精度不足的问题,实现真实复杂背景下小样本水稻害虫的精准识别。

1 材料与方法

1.1 水稻害虫图像获取

本试验中农田环境水稻害虫图像主要来源于由Xie等[26]在安徽省农业科学院的试验田等真实条件下收集的数据集。该数据集有40类作物害虫图像,共计4 500张,包含了大多数常见农作物害虫图像。所有图像均采用数码相机(如佳能、尼康和移动设备)拍摄。为了消除光照变化的潜在负面影响,所有图像都在田间采用均匀照明设置进行预处理。本研究从中选取5种常见的水稻害虫:稻赤斑沫蝉(Callitetixversicolor)、稻棘缘蝽(CletuspunctigerDallas)、黑尾叶蝉(Nephotettixbipunctatus)、稻绿蝽(Nezaraviridula)、稻黑蝽(Scotinopharalurida),每类害虫的图片数量分别为146、159、62、164和117张。

此外,本研究还使用佳能EOS 80d彩色数码相机补充拍摄了一些田间水稻害虫的图像,丰富了原有的数据集,以使得所用的模型更能适应于多种实际环境害虫图像的识别。本试验自行拍摄的图像分辨率为6 000像素×4 000像素,拍摄地点位于安徽省无为县襄安镇,拍摄时间为2020年8月7日。由于真实自然场景下拍摄的害虫数量较少,共拍摄了每类害虫图像10张。

由于训练深度学习模型需要大量的训练样本,样本数量不足可能会造成模型过拟合,降低识别精度[27],本研究将随机划分得到的训练样本水稻害虫图像旋转90°、180°、270°、以及左右翻转和上下翻转,以实现样本数量的扩充。扩充后的样本数量虽然达不到训练CNN的理想样本数的要求,但能有效提高小样本下CNN的性能。各类别水稻害虫的原始训练样本数、扩充后的训练样本数及测试样本数见表1。

表1 本研究中水稻害虫种类和图像数量Table 1 Species and quantities of rice pests in this study 张

1.2 小样本水稻害虫背景去除

1.2.1GrabCut算法

本研究使用的水稻害虫图像是在农田环境下拍摄,图像中存在水稻稻穗、枝叶等复杂的背景,若不进行背景分割,这些复杂背景会参与害虫图像的特征提取和识别,可能会影响识别效果。将水稻害虫主轮廓从水稻稻穗、枝叶等复杂的背景中分割出来,将有利于后续的害虫识别。GrabCut[28]算法是一种高效的小样本分割算法。传统分割算法应用纹理或边界信息中的一种进行分割,而GrabCut算法综合利用了纹理及边界2种信息进行图像分割,具有样本数少,分割精度高等优点。

使用GrabCut算法对水稻害虫图像进行背景分割的主要实现步骤如下:

1)定义目标矩形,划分前景和背景:在水稻害虫图像中定义出包含害虫目标的矩形(不倾斜且完全包含害虫目标的最小矩形),矩形外的区域被自动认为是背景,并用背景中的数据来区分定义的矩形区域内的前景和背景;

2)前景和背景的建模及标记:用高斯混合模型GMM对前景和背景进行建模,将未定义的像素标记为可能的前景或背景;

3)前景和背景的概率设定:基于害虫图像每个像素之间的边与周围像素颜色上的相似性,给定其属于前景或背景的概率;

4)前景和背景的分割:将每个像素与一个前景或背景节点相连接,若节点之间的边的前景或背景属性不同,则切断边,即可将害虫图像的前景与背景分割(图1)。

图1 GrabCut对水稻害虫图像去背景效果Fig.1 Effect of Grabcut on background removal of rice pest image

1.2.2水稻害虫去背景后的优化与调整

使用GrabCut去背景后的图像,可能存在较多冗余背景,且害虫所在图像部位也不尽相同,为了减小上述情况对害虫识别准确率的影响,通过阈值法确定水稻害虫的范围,选取包含害虫的最小矩形对图像进行剪裁;通过填充部分背景将最小矩形图片调整为正方形(正方形的边长取最小矩形长和宽的最大值),这样处理是为了在去除多余黑色背景的同时确保图像被resize时害虫形状不会发生扭曲变形;通过resize处理得到分辨率大小为128像素×128像素×3的模型输入图像。优化和调整过程见图2。

图2 去背景后水稻害虫图像的优化与调整Fig.2 Optimization and adjustment of pest image after background removal

1.3 小样本水稻害虫识别

1.3.1卷积块注意力胶囊网络

为了提高小样本水稻害虫的识别精度,本研究网络架构(图3)在胶囊网络的基础上作了以下改进:在卷积部分采用2个卷积层,以适应128像素×128像素的输入图像;在2个卷积层之间插入CBAM注意力模块[29]作为本试验特征提取模块的最终结构,CBAM用于提高卷积层对水稻害虫特征的提取能力。其中,2个卷积层均为3×3,滤波器步长设置为2,以使得最终输入主胶囊层的特征分辨率压缩至32像素×32像素,胶囊尺寸设置为32,动态路由迭代次数设置为4次。

图3 基于卷积块注意力模型和胶囊网络的小样本水稻害虫识别网络架构Fig.3 Network architecture of rice pests identification with small sample size problems based on CBAM and capsule network

1.3.2胶囊网络

与传统的卷积神经网络相比,胶囊网络对图像中的位置、角度等信息更加敏感,输出的向量也能更好的反应图像的各种状态。因此,胶囊网络使用较少的数据,就能达到很好的效果,较适合于本研究中的小样本水稻害虫识别。胶囊网络由卷积层、主胶囊层和数字胶囊层组成。胶囊网络结构如图4所示,对上一层得到的特征图,用5组卷积核进行卷积操作,得到5组特征图;将5组特征图都展成1维,并且对应位置合并,即可得到2 592个胶囊;通过动态路由算法[30]得到数字胶囊层,数字胶囊层的模长大小即预测结果。

图4 胶囊网络结构Fig.4 Structure of capsule network

1.3.3注意力机制

运用在深度学习中的注意力机制与人类的注意力机制类似,皆从众多信息中选择出重点关注的信息,并投入更多的注意力资源[31]。本研究使用CBAM注意力机制,将其加入到胶囊网络的特征提取过程中,实现对水稻害虫重点信息的关注。

CBAM结合了通道注意力模块和空间注意力模块,分别在通道和空间位置上设置注意力机制,并且合并起来对特征进行优化(图5)。通道注意力模块(图6)关注输入图像中有意义的内容,空间注意力模块(图7)专注信息的位置,这2个注意力模块可以按照并行或不同顺序串行连接[29]。由于CBAM是轻量级模块,将其运用到胶囊网络中,在保留图像信息并提升小样本水稻害虫识别准确率的同时,不会增加过多的网络参数。水稻害虫图像特征经过CBAM处理后,输出更具害虫本质特性的精细特征。

图5 CBAM结构Fig.5 Structure of CBAM

h,w,c分别为卷积核的高、宽和通道数,图7同。h,w and c are the height, width and channel number of convolution kernel, respectively. Same as Fig.7.图6 CBAM中的通道注意力模块流程Fig.6 Flow chart of channel attention module in CBAM

图7 CBAM中的空间注意力模块流程Fig.7 Flow chart of spatial attention module in CBAM

1.3.4小样本水稻害虫识别步骤

本研究中小样本水稻害虫识别的主要步骤(图8)如下:

图8 水稻害虫识别流程Fig.8 Flow chart of rice pest identification

1)水稻害虫图像获取。选取水稻害虫图像,将公共数据集与自己拍摄的数据集合并构成新的数据集。

2)水稻害虫图像背景分割。使用GrabCut对水稻害虫图像进行背景分割,并将结果进行优化,得到去除复杂水稻背景后的水稻害虫图像。

3)将去背景后的水稻害虫resize成128像素×128像素的图像,并随机分为训练集和测试集。

4)利用水稻害虫图像训练集来训练本研究提出的卷积块注意力胶囊网络,得到小样本水稻害虫识别模型。

5)将测试集中的害虫图像输入训练好的小样本水稻害虫识别模型,获得害虫图像的识别结果。

2 试验结果与分析

2.1 评价指标

为表明网络的性能,使用精确度(Accuracy,Acc)、准确率(Precision,P)、召回率(Recall,R)和F1得分衡量网络模型对小样本水稻害虫识别的性能,计算公式如下:

(1)

(2)

(3)

(4)

式中:TP(True positive)为被模型预测为正的正样本;TN(True negative)为被模型预测为负的负样本;FN(False negative)为被模型预测为正的负样本;FP(False positive)为被模型预测为负的正样本。

2.2 GrabCut算法对水稻害虫的分割效果

图9示出GrabCut算法对4种常见的水稻害虫(稻棘缘蝽、黑尾叶蝉、稻绿蝽和稻黑蝽)的分割结果。可以看出,GrabCut算法对复杂场景水稻害虫的分割效果较好,对复杂背景的去除比较干净。

图9 GrabCut算法分割4种常见水稻害虫图像结果Fig.9 Segmentation result Graph of GrabCut algorithm

2.3 引入不同注意力机制的试验结果

在对小样本水稻害虫数据集进行数据扩充和去背景后,为了提取到更多精细有价值的特征以提升模型对水稻害虫识别的性能,进行了如下试验:在对水稻害虫图像进行去背景和数据扩充后,分别将CBAM 和 SE 模块[32]这2种注意力模型以不同的引入方式(如设置不同的引入位置及各注意力模块间不同的连接方式等),加入到特征提取网络中,测试模型的识别准确率。

由在不同位置引入不同组合方式的 CBAM 模块的试验结果(表2)可知,当采用本研究模型的方式,即将CBAM通道注意力模块和空间注意力模块顺序引入到图3中的卷积块Conv1与Conv2之间时,识别准确率最高,达到99.19%。由此可见,本研究模型采用的这种组合方式优于其他组合方式,能实现高精度的识别。

表2 CBAM通道和空间注意力模块不同组合方式的识别准确率Table 2 Recognition accuracy of different combinations of CBAM channel and spatial attention module

表2(续)

在不同位置引入SE模块的试验结果(表3)可知,随着引入位置不同,准确率会不同。当在Conv1与Conv2中间插入1个SENet时,识别准确率高达97.58%;当在2个卷积层后分别插入SENet[32],虽也能获得97.58%的识别准确率。但是考虑到模型的轻量化,选择在Conv1与Conv2中间插入1个SENet。

表3 SENet模块不同引入位置的识别准确率Table 3 Recognition accuracy of different locations of SENet

对比表2和表3可得,本研究模型采用CBAM注意力机制,并将其插入到Conv1和Conv2之间的结构(图3)达到了比仅使用通道注意力机制更高的识别准确率。这是由于与SE相比,CBAM注意力机制能更加关注到区分度高的特征。

2.4 去背景及数据扩充对不同模型试验结果的影响

为了提高模型的学习性能,提升训练精度,本研究对训练样本中的水稻害虫图像进行了数据扩充,增加训练样本的多样性,避免过拟合,以实现模型性能的提升。

使用SVM[33]、Inception V2[34],以及本研究模型对去背景前后和数据扩充前后的水稻害虫进行识别准确率对比结果见表4。可知:

表4 水稻害虫去背景及数据扩充前后不同模型的识别准确率Table 4 Recognition accuracy of different rice pest models before and after background removal and data expansion %

1)数据未扩充的样本,无论去背景前还是去背景后,所提模型识别精度都高于SVM和Inception V2,表明本研究模型对小样本水稻害虫具有较好的识别性能;

2)去背景前数据扩充后,Inception V2的识别精度稍高于本研究模型,这是因为Inception V2网络能提取到更丰富的尺度特征;

3)去背景后,所有对比方法的识别准确率都提高了,这说明去背景对于本研究中少样本水稻害虫识别的有效性;

4)去背景后,本研究模型的识别精度无论是在扩充还是不扩充数据时,都相对较高。对比结果验证了本研究方法采用的去背景算法和数据扩充策略是有效的,设计的模型架构是合理的,达到了预期的目的,实现了少样本水稻害虫的精准识别,准确率达99.19%。

2.5 不同水稻害虫识别模型识别结果对比分析

在对小样本水稻害虫去背景以及数据扩充后,将SVM、kNN[35]这2种浅层网络,以及VGG16[3]、GoogleNet (试验中用InceptionV1和 InceptionV2)[4]、Mobilenet[36]等深层卷积神经模型与本研究所提模型进行对比试验,结果见表5。可知:对于去除背景和数据扩充后的小样本水稻害虫,本研究模型识别准确率可达到99.19%,优于SVM、kNN这2种浅层网络模型,以及VGGNet、GoogLeNet和MobileNet等深度学习网络模型;比原始的胶囊网络提高了1.61%。这是因为在胶囊网络基础上引入CBAM注意力可以获取更精细的特征,提升了模型的识别性能。此外,由识别结果可得,在数据量充足的情况下,基于深度学习方法的水稻害虫的识别精度普遍高于传统的机器学习方法。

表5 不同水稻害虫识别模型的识别准确率Table 5 Recognition accuracy of different rice pest identification networks

由水稻害虫识别结果混淆矩阵(图10)可知,各类别的识别准确率都较高,只有黑尾叶蝉的准确率相对低一些,这可能是由于该类样本量较少导致的。对于样本量相对其他类别较少的类而言,识别准确率会明显的降低,因为数量相对较少,则多样性不足,导致识别准确率相对较低(图10(b)可知,准确率为0.92)。因此,采用相同的方法识别水稻害虫时,样本的数量尤其是多样性对识别准确率具有一定的影响。

为展现本研究模型对于少样本水稻害虫识别的性能,对图10(a)混淆矩阵参数分析计算评价指标,结果见表6。可知:对于不同种类的水稻害虫,召回率、准确率和F1得分分别为0.917~1.000、0.968~1.000和0.957~1.000。由此可见,本研究提出的方法对复杂背景下小样本水稻害虫的识别具有较好的效果。

图10 使用本研究模型的水稻害虫识别结果混淆矩阵Fig.10 Confusion matrix of rice pest identification using the research model

表6 水稻害虫识别结果混淆矩阵参数分析Table 6 Parameter analysis of confusion matrix of rice pest identification results

3 结 论

本研究针对水稻害虫识别中的复杂背景和小样本问题,利用GrabCut对水稻图像中的害虫进行背景分割,在胶囊网络中引入CBAM实现对水稻害虫的关键信息提取和准确识别;构建了基于卷积块注意力胶囊网络的小样本水稻害虫识别模型。试验结果表明,本研究方法可达到99.19%的识别精度,高于kNN和SVM这2种浅层网络以及MobileNet、VGG16、Inception V1和Inception V2等深度学习网络。下一步将针对真实环境少样本水稻害虫的多样性扩充以及遮挡害虫识别问题进行研究,以期实现真实环境水稻少样本害虫全自动化和智能化诊断。

猜你喜欢
卷积准确率胶囊
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
基于深度卷积网络与空洞卷积融合的人群计数
胶囊要用凉开水服
卷积神经网络概述
我有一颗神奇胶囊