基于迁移学习和改进残差网络的复杂背景下害虫图像识别
2023-05-23温艳兰陈友鹏王克强程杏安林钦永蔡肯马佳佳孔翰博
温艳兰 陈友鹏 王克强 程杏安 林钦永 蔡肯 马佳佳 孔翰博
摘要:在农业生产中,虫害已经成为影响作物产量和质量的主要威胁之一,针对传统识别方法对复杂背景下虫害图像识别准确率和效率低等问题,本研究提出一种基于迁移学习和改进残差网络的虫害图像识别方法。首先,利用数据增强技术对采集的橘小实蝇虫害图像进行样本数据的扩充;再在ResNet-34模型的基础上,增加了2个注意力模块层,并重新设计了全连接层模块,获得能够改进后的网络模型;最后利用迁移学习的方法将预训练的参数权重迁移到本模型中进行训练,并在试验过程中分析学习方式、样本量、学习率、批量大小等参数对模型性能的影响。结果表明,采用旋转、翻转和亮度变换操作对图像进行数据扩充的数据集,在训练模型的全部层的迁移学习方法中获得99.77%的测试准确率。本研究提出的模型具有较高的识别准确率和较强的鲁棒性,可为实现复杂背景下虫害的识别提供参考。
关键词:迁移学习;卷积神经网络;注意力机制;图像识别
中图分类号:TP391.41 文献标志码:A
文章编号:1002-1302(2023)08-0171-06
基金项目:国家自然科学基金(编号:62003379);广东省科技计划(编号:KA1721404);广东省普通高校重点领域专项(编号:2019GZDXM007)。
作者简介:温艳兰(1995—),女,广东梅县人,硕士研究生,主要研究方向为机器视觉。E-mail:164734302@qq.com。
通信作者:王克强,硕士,教授,主要研究方向为农业机器人。E-mail:wangkq2003@126.com。
柑橘味道鲜美且营养丰富,深受广大消费者的喜爱。据国家统计局数据了解,2020年我国柑橘种植面积近270万hm2,柑橘产量达到5 121.9万t[1],已成为我国栽培面积最大、产量最高的水果。柑橘是橘小实蝇偏好的寄主水果,其产量和质量受橘小实蝇影响严重,进而造成严重的经济损失[2]。因此,实现快速准确地识别橘小实蝇,能够使管理者及时采取有效的防治措施,提高柑橘的产量和品质。
近年来,随着机器视觉和计算机技术的深入发展,深度学习算法在图像识别中发挥着越来越重要的作用,并在苹果[3-5]、柑橘[6-8]、棉花[9-10]、大豆[11-12]、玉米[13-15]、水稻[16-18]等作物病虫害识别[19-23]中取得了不错的研究成果。赵立新等在棉花病虫害的识别中,通过改进AlexNet模型中的全连接层的结构,获得了97.16%的平均测试准确率,为棉花叶部病虫害识别提供了可靠依据[24]。He等采用双层Faster R-CNN对褐飞虱进行不同数量和不同虫龄的检测[25]。而李衡霞等则将Fast R-CNN与VGG16进行结合,实现对油菜害虫94.12%的平均分类准确率[26]。李昊等采用DenseNet网络模型对柑橘病害的平均识别精度达到95.46%,可实现柑橘智能监控的管理,为病虫害物联网监控提供了参考[27]。孙鹏等将注意力机制运用到卷积神经网络模型中,通过串联的方式将提取的粗尺度图像作为细尺度图像的输入来提取更细的特征,不仅实现了大豆蚜虫的准确识别,而且为农业信息化的技术可行性提供了可靠的理论依据[28]。
Malathi等通过对ResNet-50模型的超参数和层次进行微调,再引入迁移学习方法,实现对10种水稻害虫准确分类识别[29]。Zhang等在残差网络中引入离散卷积,实现对储粮害虫进行识别,平均识别准确率达96.72%[30]。曹跃腾等通过调整底层卷积尺寸、改进残差块结构和模型剪枝操作,得到一种轻量化的植物叶片病虫害识别算法——Simplify-ResNet,并在人工采集图像和PlantVillage数据集图像中,获得更高的准确率和更好的稳定性能,为移动端植物病虫害识别解决了最重要的算法设计问题[31]。贾少鹏等在卷积神经网络(CNN)架构中加入了胶囊网络进行结构优化,弥补了CNN在输出时丢失大量信息的缺陷,优化后的模型对番茄灰霉病病害的识别精度比原模型提高了3.55%[32]。王铎等将深度卷积条件加入到生成对抗网络中,增强了模型稳定性,能够适应于不同成长阶段的虫害和种类繁多的分类场景[33]。
在上述研究中,大多数试验样本都是在简单的背景下取得的,对复杂背景的适应性较差,存在一定的局限性。本研究基于ResNet-34模型,采用遷移学习的方法,对复杂背景下的橘小实蝇虫害图像进行训练,以期实现复杂背景下柑橘虫害的高效准确识别。
1 材料与方法
1.1 图像数据采集
本研究以橘小实蝇为研究对象。橘小实蝇成虫体长6~8 mm,翅展14~16 mm,全体深黑色和黄色相间,胸部背面大部分黑色,但黄色的“U”字形斑纹明显,腹部呈黄色[34]。由于在自然环境中,橘小实蝇移动迅速,其图像难以获取,本研究在实验室内搭建了一套模拟自然环境的图像采集系统,在复杂背景中对橘小实蝇进行多角度拍摄。选用德国IDS工业相机(型号:UI-3070CP-C-HQ Rev.2)作为图像采集设备,分辨率为2 056像素×1 542像素。采集成虫在复杂背景下的样本图像1 700幅及无成虫的图像1 700幅,共3 400幅清晰彩色图像作为本研究的原始数据集。
1.2 图像数据预处理及数据增强
首先,将采集到的原始图像利用图像处理工具包OpenCV批量裁剪出520像素×520像素大小的JPG图像,橘小实蝇虫害图像和无虫害图像各1 700幅,2种样本共计3 400幅。然后,通过旋转变换和翻转变换扩充图像数量,分别旋转90°、180°、270°、水平翻转和垂直翻转,以模拟拍摄的角度差异。并通过明亮度变换(变亮、变暗)进行扩充,模拟拍摄的光线差异。通过上述图像扩充操作后,图像总计27 200幅。最后,把图像尺寸统一缩放到224像素×224像素,得到最终的样本图像数据集。本研究按照6 ∶2 ∶2的比例将获得的图像数据集划分为训练集、验证集和测试集,样本示例如图1所示。
1.3 模型结构设计
ResNet是何恺明等提出来的一种深层次的深度学习网络[35],本研究使用ResNet-34基本网络模型进行迁移学习,其模型结构如图2所示。ResNet-34除第1层7×7卷积和最后一层全连接外,共有4组残差组,每个残差组各有3、4、6、3个残差单元,而且1个残差单元包含2个3×3卷积。本研究在残差网络中加入注意力机制模块,如图3所示,包含通道注意力和空间注意力。加入注意力机制模块后的ResNet-34结构如图4所示。
ResNet-34利用ImageNet数据集中上百万幅图像完成训练,得到一个较好的分类识别模型。在目前条件下,橘小实蝇虫害图像还没能够达到如此巨大的数据集,因而想要训练出效果理想的分类模型是比较困难的。而迁移学习能够将一个基础数据集和基础任务上训练所得的网络模型迁移到目标数据和目标任务的训练网络中。因此,可以采用迁移学习的方法来进行柑橘虫害的分类识别。本研究采用的方法是保留图2中前5个卷积模块,并且加入注意力模块,再重新设计全连接层模块,然后利用迁移学习的方法将预训练ResNet-34模型的权重和参数运用到柑橘虫害的检测与识别中,具体的流程图如图5所示。
1.4 试验环境与参数设计
1.4.1 试验环境
试验在Python 3.7.11、torch-GPU 1.10.2软件环境下完成。试验中训练模型的硬件环境为64位Windows10系统,并配置有11th Gen Intel CoreTM i7-11700K CPU,主频3.6 GHz,图形处理单元(GPU)采用NVIDIA GeForce RTX 3060,12 GB显存。试验在GPU模式下进行,采用Python语言进行编程,利用OpenCV图像处理库及pytorch框架相关的深度学习库完成网络的搭建。
1.4.2 试验参数的设计
在深度学习中,模型的性能受到诸多因素的影响。本研究综合考虑4个影响因素,包括模型的训练方式、数据增强方法、学习率和批量大小(batch_size)对模型性能的影响,总共进行了15组模型训练,每组试验都运行100次迭代(epoch),并且每次迭代前都打乱训练集的输入顺序。
2 结果与分析
2.1 学习方式对模型性能的影响
在学习率为0.01、batch_size为16的条件下,采用2种不同的训练机制对原始图像数据集进行训练,并对改进前后的模型进行对比试验,得到训练集、验证集和测试集的准确率如表1所示。
从表1可以看出,在相同的试验条件下,2种不同的训练机制下所得到的验证准确率与测试准确率相符,而且对模型所有层的所有参数都进行目标域的训练获得了最佳的识别效果,训练集平均准确率为97.17%,测试集准确率为99.55%。2种训练方式改进模型前后的识别准确率和损失值如图6所示。
从图6-a中可以看出,对模型所有层的所有参数都进行目标域训练的迁移学习比仅训练分类器参数的训练精度更高、更稳定,而且修改后的模型的收敛速度更快。而且从图6-b中可以看出,2种模型的损失值均在0.06以下,而且对模型所有层的所有参数都进行训练的迁移学习的损失值下降速度更快,到达稳定点基本可以维持在0.001左右,训练效果比较理想。
2.2 圖像数据扩充对模型性能的影响
从“2.1”节中可知,对改进后的模型所有层的所有参数都进行目标域训练的迁移学习模型获得了更好的性能,因此,本节采用这一模型对图像数据扩充进行进一步的研究。为研究模型在不同扩充图像的泛化能力,本研究对原始图像数据集、原始+翻转扩充图像数据集、原始+亮度变换扩充图像数据集、原始+旋转扩充图像数据集、原始+旋转+翻转扩充图像数据集以及原始+旋转+翻转+亮度变换扩充图像数据集进行训练、验证和测试。在初始学习率均为0.01的情况下,采用不同的数据扩充方式对模型进行训练,识别准确率情况如表2所示。
从表2可知,不同数据增强情况下的训练与测试准确率相差不大,一方面可能是因为数据图像采集时采用了明亮度不同的多角度拍摄,因而数据增强操作对图像的质量改变不大,另一方面是迁移学习使用的模型是从大型数据集ImageNet上获得的,对特征的提取能力较高,对样本的数量扩充依赖性较低。由此可见,迁移学习对复杂背景下小样本的橘小实蝇虫害识别也具有较高的鲁棒性,而且能够有效地减少训练所需时间。
2.3 学习率对模型性能的影响
对原始数据集采用3种不同的学习率对模型进行训练,识别准确率情况如表3所示,训练和验证曲线如图7所示。
由表3可知,模型测试集的平均识别准确率均达到99%以上,模型都得到了较好的鲁棒性。但是从图7可以看出,学习率为0.000 1训练集和测试集准确率都能够稳定维持在较高水平上,而学习率为0.01和0.001的模型虽然也能够获得较高的训练精度,但是在验证集上存在一定的波动,模型的稳定性相对较差。因此,学习率为0.000 1的模型识别效果最佳。
2.4 批量大小对模型性能的影响
由“2.3”节可知,学习率为0.000 1时模型的识别效果最佳,训练、验证和测试准确率均达到99%以上,如果在此基础上对batch_size设置对比试验,试验对比效果不太明显,因此,在学习率为0.01的情况下,采用5种不同batch_size对模型进行训练,识别准确率情况如表4所示。
从表4可以看出,随着batch_size的增加,平均训练时间相对减少,但是模型的识别准确率呈现正态分布的趋势,因此,batch_size选取得过大或者过小都会使得模型的泛化能力降低。
2.5 模型用户界面开发
为了方便使用者操作,将程序开发成用户界面,只需选择好自己需要检测的图像即可进行检测。现随机选择2幅橘小实蝇图像进行检测,检测结果如图8所示,识别的准确率分别为99.996%和98.526%,具有良好的应用效果。
3 讨论与结论
本研究以ResNet-34为基础模型,融入了注意力机制,并对其全连接层的结构进行了改进,用于复杂背景下橘小实蝇的虫害图像识别建模。通过设置15组模型训练试验,选取出鲁棒性高、泛化能力强的模型。根据试验结果,可以得出以下结论。
(1)在相同的试验条件下,对模型所有层的所有参数都进行目标域训练的迁移学习模型的整体性能比仅训练分类器参数的模型更好,能够在橘小实蝇虫害图像识别中获得97.17%的平均识别准确率。
(2)迁移学习弱化了模型对样本数量扩充的依赖性。虽然数据扩充会使得训练时长增加,但是充足的样本量能够在一定程度上提高模型的识别性能。将采集的图像数据扩充到原来的8倍后,训练集准确率从97.17%的基础上提升了2.12%。
(3)在迁移学习中,3种学习率均获得了良好的训练效果,但是学习率为0.01和0.001的模型在测试集中识别准确率波动比较大,而学习率为0.000 1的模型测试集准确率高且稳定,识别效果最佳。
(4)batch_size较小时花费时间较长,且实际测试精度相对较低;batch_size较大时,不同batch的梯度方向没有任何变化,容易陷入局部极小值,使得实际测试精度较低。
本研究结合深度卷积神经网络和迁移学习,对复杂背景下的橘小实蝇进行识别,获得了较好的应用效果。下一步研究计划搜集更多复杂环境下的其他虫害的图像,进一步丰富虫害数据,然后对多种虫害进行混合并研究其识别方法,以提升模型的应用价值。
参考文献:
[1]国家统计局. 中国统计摘要2021[M]. 北京:中国统计出版社,2022.
[2]王明召,阳廷密,赵小龙,等. 橘小实蝇田间消长动态及对柑橘果实危害研究[J]. 应用昆虫学报,2019,56(3):485-491.
[3]Ding W G,Taylor G. Automatic moth detection from trap images for pest management[J]. Computers and Electronics in Agriculture,2016,123:17-28.
[4]于洪涛,袁明新,王 琪,等. 基于VGG-F动态学习模型的苹果病虫害识别[J]. 科学技术与工程,2019,19(32):249-253.
[5]周宏威,沈恒宇,袁新佩,等. 基于迁移学习的苹果树叶片病虫害识别方法研究[J]. 中国农机化学报,2021,42(11):151-158.
[6]Xing S L,Lee M,Lee K K. Citrus pests and diseases recognition model using weakly dense connected convolution network[J]. Sensors,2019,19(14):3195.
[7]Morteza K,Ezzatollah A A,Ehsan K. Citrus pests classification using an ensemble of deep learning models[J]. Computers and Electronics in Agriculture,2021,186:106192.
[8]Partel V,Nunes L,Stansly P,et al. Automated vision-based system for monitoring Asian citrus psyllid in orchards utilizing artificial intelligence[J]. Computers and Electronics in Agriculture,2019,162:328-336.
[9]Alves A N,Souza W S R,Borges D L. Cotton pests classification in field-based images using deep residual networks[J]. Computers and Electronics in Agriculture,2020,174:105488.
[10]張建华,孔繁涛,吴建寨,等. 基于改进VGG卷积神经网络的棉花病害识别模型[J]. 中国农业大学学报,2018,23(11):161-171.
[11]Tetila E C,Machado B B,Menezes G K,et al. Automatic recognition of soybean leaf diseases using UAV images and deep convolutional neural networks[J]. IEEE Geoscience and Remote Sensing Letters,2020,17(5):903-907.
[12]Amorim W P,Tetila E C,Pistori H,et al. Semi-supervised learning with convolutional neural networks for UAV images automatic recognition[J]. Computers and Electronics in Agriculture,2019,164:104932.
[13]李 静,陈桂芬,安 宇. 基于优化卷积神经网络的玉米螟虫害图像识别[J]. 华南农业大学学报,2020,41(3):110-116.
[14]Waheed A,Goyal M,Gupta D,et al. An optimized dense convolutional neural network model for disease recognition and classification in corn leaf[J]. Computers and Electronics in Agriculture,2020,175:105456.
[15]许景辉,邵明烨,王一琛,等. 基于迁移学习的卷积神经网络玉米病害图像识别[J]. 农业机械学报,2020,51(2):230-236,253.
[16]Jiang F,Lu Y,Chen Y,et al. Image recognition of four rice leaf diseases based on deep learning and support vector machine[J]. Computers and Electronics in Agriculture,2020,179:105824.
[17]Wang F Y,Wang R J,Xie C J,et al. Convolutional neural network based automatic pest monitoring system using hand-held mobile image analysis towards non-site-specific wild environment[J]. Computers and Electronics in Agriculture,2021,187:106268.
[18]Yao Q,Feng J,Tang J,et al. Development of an automatic monitoring system for rice light-trap pests based on machine vision[J]. Journal of Integrative Agriculture,2020,19(10):2500-2513.
[19]余小东,杨孟辑,张海清,等. 基于迁移学习的农作物病虫害检测方法研究与应用[J]. 农业机械学报,2020,51(10):252-258.
[20]万军杰,祁力钧,卢中奥,等. 基于迁移学习的GoogLeNet果园病虫害识别与分级[J]. 中国农业大学学报,2021,26(11):209-221.
[21]Kamal K C,Yin Z D,Wu M Y,et al. Depthwise separable convolution architectures for plant disease classification[J]. Computers and Electronics in Agriculture,2019,165:104948.
[22]Wang D W,Deng L M,Ni J G,et al. Recognition pest by image-based transfer learning[J]. Journal of the Science of Food and Agriculture,2019,99(10):4524-4531.
[23]温艳兰,陈友鹏,王克强,等. 基于机器视觉的病虫害检测综述[J]. 中国粮油学报,2022,37(10):271-279.
[24]赵立新,侯发东,吕正超,等. 基于迁移学习的棉花叶部病虫害图像识别[J]. 农业工程学报,2020,36(7):184-191.
[25]He Y,Zhou Z Y,Tian L H,et al. Brown rice planthopper (Nilaparvata lugens Stal) detection based on deep learning[J]. Precision Agriculture,2020,21(6):1385-1402.
[26]李衡霞,龙陈锋,曾 蒙,等. 一种基于深度卷积神经网络的油菜虫害检测方法[J]. 湖南农业大学学报(自然科学版),2019,45(5):560-564.
[27]李 昊,刘海隆,刘生龙. 基于深度学习的柑橘病虫害动态识别系统研发[J]. 中国农机化学报,2021,42(9):195-201,208.
[28]孙 鹏,陈桂芬,曹丽英. 基于注意力卷积神经网络的大豆害虫图像识别[J]. 中国农机化学报,2020,41(2):171-176.
[29]Malathi V,Gopinath M P.Classification of pest detection in paddy crop based on transfer learning approach[J]. Acta Agriculturae Scandinavica,Section B-Soil & Plant Science,2021,71(7):552-559.
[30]Zhang Y Y,Zhong W B,Pan H. Identification of stored grain pests by modified residual network[J]. Computers and Electronics in Agriculture,2021,182:105983.
[31]曹跃腾,朱学岩,赵燕东,等. 基于改进ResNet的植物叶片病虫害识别[J]. 中国农机化学报,2021,42(12):175-181.
[32]贾少鹏,高红菊,杭 潇. 基于深度学习的农作物病虫害图像识别技术研究进展[J]. 农业机械学报,2019,50(增刊1):313-317.
[33]王 铎,温长吉,王希龙,等. 基于深度卷积条件生成对抗网络的虫害分类算法研究[J]. 中国农机化学报,2020,41(6):179-187.
[34]杨丽英,李之洪. 橘小實蝇的形态特征、影响因素和防治措施[J]. 湖北农机化,2020(1):58.
[35]He K M,Zhang X Y,Ren S Q,et al. Deep residual learning for image recognition[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas,NV,USA:IEEE,2016:770-778.