APP下载

改进Faster R-CNN的田间苦瓜叶部病害检测

2020-07-25李就好林乐坚AlAasmiAlaa

农业工程学报 2020年12期
关键词:苦瓜特征提取病害

李就好,林乐坚,田 凯,Al Aasmi Alaa

(华南农业大学水利与土木工程学院,广州 510642)

0 引 言

农作物病害不仅影响作物品质,还影响其质量与经济效益,是限制农业生产发展的主要因素之一[1-2]。面对复杂多变的气候与环境,苦瓜的病害更容易爆发,如果不能得到及时治理,病原体依靠气流,风雨传播,导致其他植株乃至整片菜地感染,严重时可对农业生产者造成极大的经济损失[3]。根据中国农业技术推广服务中心对2019年中国农作物重大病虫害发生趋势发出的预报,中国农作物病虫害总体呈现频发、重发态势,病虫害发生将重于2018年,中国累计病虫害发生面积约为3亿hm2[4]。因此,如何快速准确地进行苦瓜病害的自动检测,是保证了苦瓜丰收的重要基础,也是对其他作物的保护。

图像识别分析中,目标检测任务是定位人们关注的目标的位置及大小,学者对此也做了大量的研究和应用。孙钰等[5]结合 K-means算法和更快速区域卷积神经网络(Faster Region with Convolutional Neural Network Features,Faster R-CNN)对诱捕器内红脂大小蠹进行目标检测,取得了93.5%以上的精确率;谭红臣等[6]提出一种基于单次多框检测器(Single Shot Multi-Box Detector, SSD)的特征增强算法(Feature Enhancement Single Shot Multi-Box Detector, FE-SSD),在PASCAL VOC2007数据集上的检测精度达 78%;魏宏彬等[7]提出一种改进型 YOLOV3算法,可对黄瓜、番茄、蘑菇等蔬菜进行目标检测,平均精度达 93.2%;李丹等[8]基于掩码区域卷积神经网络(Mask Region with Convolutional Neural Network Features,Mask R-CNN)算法提出对猪只及其爬跨行为的识别算法,在测试集上的准确率为94.5%。在农业上,闫建伟等[9]改进Faster R-CNN算法中的感兴趣区域池化方法,对11类刺梨果实进行检测,识别精度可达83.74%以上,为果实自动化采摘做出了贡献。张乐等[10]提出了基于 Faster R-CNN的油菜杂草识别方法。目标检测广泛应用导航[11]、人脸识别[12]、行人检测[13]、道路障碍检物检测[14]、果实检测、杂草检测等诸多领域,却极少应用于农作物病害检测。

基于图像处理的病害识别研究一直是重要的课题。近年来,大多数研究人员把目光聚集在卷积神经网络上,杨晋丹等[15]利用卷积神经网络对草莓白粉病设计了一种病害识别模型,正确识别率达到98.61%,但并未在自然环境下进行测试,且识别病害种类单一;马浚诚等[16]利用了机器学习将黄瓜病害分割出来,再导入基于LeNet5[17]中训练,分类精确度最高可达98.4%。但在计算机视觉任务中,分割与分类具有很大的相似性,且分割难度更大,先分割再分类可能存在由于分割错误导致分类错误的风险;Kamilaris等[18]总结了40篇关于深度学习在农业上的应用,总结了许多实用的方法,如图像数据获取、图像预处理、数据增强、分类方法等,为后来的研究人员提供了宝贵的经验。上述文献均利用卷积神经网络出色的学习能力和应对环境的灵活性与适应性,但多数应用是对一张图进行分类,而不是对病变部分进行定位和识别,实际上应用于自然状态下农作物病害的目标检测研究甚少。

本研究基于Faster R-CNN对自然环境下苦瓜叶部病害识别的研究,致力于对叶部病斑区域的自动检测,包括对苦瓜白粉病、灰斑病、蔓枯病和斑点病的定位与识别。为了节约计算成本与时间,利用预训练的ImageNet[19]深度网络模型进行迁移学习,并针对小病斑识别能力低的情况相应优化了区域建议框的尺寸与数量,并在ResNet-50的基础下结合特征金字塔网络结构,结果显示模型性能得到有效提高。通过对苦瓜叶部病害数据集的训练,最终得到一个融合特征金字塔网络的Faster R-CNN苦瓜叶部病害识别模型,该模型拥有快速有效地识别自然环境下的苦瓜叶部病害的优势。

1 图像采集与数据增强处理

为了识别苦瓜叶部病害,需要采集相关图像,以建立图像数据集。本研究的苦瓜叶部病害图像数据采集于广东省广州市南沙区东升农场,采集时间段为2019年6月,在自然光下(时间段为9:00-12:00、14:00-17:00)对田间苦瓜叶片进行多个方位拍摄。在自然光下更有利于拍摄作物病害的主要特征,如病害的纹理、颜色、形状等,也更能贴切实际,适应农作物病害检测。图像采集设备为微型单镜头数码相机,型号为 SONY DSC-HX400,图像分辨率为5 184×3 888。采集的图像样本如图1所示。

在训练深度学习模型时,训练数据越多、越全面,其识别能力越强,因此本研究采用多种数据增强方法[20]实现更复杂的数据描述,对田间采集的1 204张苦瓜叶部图像随机进行逆时针90°、180°、270°旋转[21],以及水平镜像翻转和垂直镜像翻转[22]处理,最后得到10 627张扩展图像数据集,根据病斑情况对图像进行了分类,其分类情况如表 1所示,此方法使有限的图像数据模型获得具有鲁棒性的模型,并增加模型的泛化能力。

表1 图像数据集种类和数量Table 1 Category and quantity of image data sets

对扩展后的图像数据集进行标注,以便训练检测模型。本研究采用 Labelme图像标注工具对数据集中的目标进行标注,标注时对每一个病斑或健康叶片采用一个矩形框标注,以确保矩形框的内容尽可能单一,且每张图像至少包含一个对像。

在总样本中随机选取90%(9 564张)图像作为训练集,在训练集中随机选取15%(1 435张)作为验证集,对模型的参数进行修正,在总样本中随机选取10%(1 063张)作为测试集,用于评估最终模型的泛化能力。训练集中健康的苦瓜叶片样本数为3 067,苦瓜白粉病样本数为3 001,苦瓜灰斑病样本数为3 201,苦瓜蔓枯病样本数为3 217,苦瓜斑点病样本数为6 875。

2 改进Faster R-CNN深度学习模型建立

2.1 Faster R-CNN简述

建立目标检测模型的目的是将目标物体进行定位和识别。Faster R-CNN[23]则是目标检测领域中最流行的模型之一,被广泛应用于人体姿势识别和目标追踪等方面,在相同的数据集上准确率要高于其他检测算法诸如YOLO、SSD等。原始的Faster R-CNN的网络结构包括特征提取网络(Feature Extraction Network)、区域建议网络(Region Proposal Network,RPN)和区域卷积神经网络(Region with Convolutional Neural Network Features,R-CNN)[24]3个部分(图2)。

图2 Faster R-CNN结构框架图Fig.2 Framework diagram of Faster R-CNN

Faster R-CNN 的特征提取网络能够自动提取图像目标特征,并将所得特征共享后续的RPN和R-CNN。目前,ResNet[25]、ZF-Net[26]、VGG-16[27]等卷积神经网络都具有很强的特征提取能力,因此,本研究选取ResNet-50卷积神经网络作为Faster R-CNN的特征提取网络,同时选取了ZF-Net、VGG-16两个卷积神经网络作为本研究的对比试验,以便对比分析不同特征提取网络模型的性能。

Faster R-CNN 的区域建议网络是一个全卷积神经网络。通过 RPN可输出一系列目标物体的分数和对应的区域建议框,用于判断该区内的目标属于前景或背景(图3)。

图3 区域建议网络结构框架图Fig.3 Framework diagram of region proposal network

RPN总体的损失函数[23]如式(1)所示

式中L为RPN的损失;Lcls为分类层损失;Lreg为回归层损失。

由此可见,RPN整体的损失可以分为分类层损失和回归层损失,分类层损失函数与回归层损失函数[28]如式(2)和式(3)所示

式中Ncls为分类样本数;Nreg为回归样本数;pi为目标的预测概率;为区域建议的判别值;ti为预测边界框的坐标向量;为真实边界框的坐标向量;i为第i个区域建议框;λ为权重参数,令λ=10;smoothL1为平滑损失函数。

R-CNN连接在特征提取网络之后,用于提取图像的感兴趣区域,进而对目标物体的坐标信息进行回归修正,最终准确实现苦瓜叶部病害的目标识别。

已有Zhang等[13]在多尺度目标检测中,Faster R-CNN对小物体的检测精度相对于较大目标下降 10%左右。主要原因是小物体所在图像的尺寸较小,经过原始 Faster R-CNN生成高度集中的特征提取图中,小物体的特征被高度卷积变成低分辨率的特征图,甚至使得特征消失,这会给Faster R-CNN后续的分类器带来极大的困难;其次,小物体的检测还受背景的干扰,背景的颜色、形状、纹理等与目标的颜色、形状、纹理等相似时对检测也存在一定的阻碍,因此,有必要对Faster R-CNN的特征提取方式进行改进,生成更多对小物体的多维度特征表达,以便于分类器对其进行定位与识别,提高识别精度。

2.2 改进Faster R-CNN

在深度学习中,图像在经过多次的卷积与池化操作之后,小物体的特征会变得模糊且不易提取,甚至会发生变形和丢失。Lin 等[29]在 2017年提出的特征金字塔网络(Feature Pyramid Networks,FPN)主要解决的是物体自动检测中的多尺度问题,通过对原有网络中不同层次的特征图分别进行预测与叠加连接(图4)。实际上,每一层所提取的特征图都拥有不同深度和不同强度的特征,通过融合不同深度的特征图,并在新的特征图上进行物体检测,这样保证了小物体的特征不轻易被忽视掉从而提高了小目标的检测精度。同时,特征金字塔网络只进行了不同层次特征图的连接,没有修改原有网络的参数,在实际应用中几乎不增加额外的时间和计算量。

图4 特征金字塔网络简图Fig.4 Sketch of Feature pyramid networks

为了进一步提高 Faster R-CNN对小病斑的检测精度,本研究在ResNet-50的基础上,融合了FPN(图5),将各子网络提取的特征图自高层(P6)往底层(P2)叠加,在叠加后的特征图再分别进行一次区域建议框提取操作,然后输入最后的R-CNN,进而对目标物体的坐标信息进行回归修正,实现对图像中的叶部病害的自动检测。

图5 融合特征金字塔网络后的Faster R-CNN简图Fig.5 Diagram of Faster R-CNN combined with feature pyramid network

3 结果与分析

3.1 试验环境与参数设置

本次试验操作平台为台式计算机,运行环境为Ubuntu 18.04,处理器为Intel Core i7-3750,主频3.7GHz,8G运行内存,1T机械硬盘,显卡为NVIDIA GeForce GTX 1080Ti,运行显存为11G,使用GPU加速计算,在Python编程语言下搭建Caffe深度学习框架。

试验按表 2初始化模型参数,特征提取网络权重值利用了预训练好的ImageNet 分类模型的参数,此方法可以大大的减少模型计算成本和计算时间,同时,采用近似联合的训练方式,相比于交替训练在时间上减少大约25%~50%[23],且精确率相近。

表2 Faster R-CNN训练参数值设置Table 2 Setting of training parameter value for Faster R-CNN

3.2 不同模型测试结果分析

本试验采用不同的图像特征提取网络(ZF-Net、VGG-16、ResNet-50)对苦瓜叶部病害进行目标检测。模型训练完成后使用平均精度(Average Precision,AP)作为本次试验各个目标检测的评价指标,并将平均精度均值(Mean Average Precision,MAP)作为整个模型性能的评价指标,对比结果如表 3所示。结果表明,相较于其余2种特征提取网络,以ResNet-50为特征提取网络的Faster R-CNN深度学习网络表现出良好的性能,平均准确率均值达到了78.85%,比ZF-Net和VGG-16分别多出11.11%和4.01%,然而在小病斑上的平均精度较低,最低仅有56.21(以ResNet-50为例)。其主要原因,一是在保证梯度传递稳定下,深层神经网络模型的效果比浅层的神经网络好很多;二是灰斑病,斑点病的目标尺度较小,而区域建议框尺度较大,冗余信息较多导致区域建议框的损失较大导致无法被检测。

为了提升小病斑的目标检测,对原始 Faster R-CNN 的区域建议网络进行修改,增加 16×16、32×32、64×64三个边框尺度,模型性能结果如表 3所示。通过对比可以发现,在增加区域建议的尺度后,虽然健康叶片、蔓枯病的检测精度有所下降,但并不影响整体检测性能,而灰斑病,斑点病的平均精度相比于修改前上升了不少,以 ResNet-50为例,分别提高了10.54%和 3.55%,在平均精度均值上提高了 2.95%。因此,在增加区域建议框之后可以有效提高对小目标的检测,但提高的精度有限。

表3 不同特征提取网络的模型结果对比Table 3 Comparison of model results of different feature extraction networks

残差神经网络 ResNet-50的识别性能比 ZF-Net和VGG-16更优秀,故以ResNet-50为基础融入了特征金字塔网络,利用特征金字塔网络提取多层次特征生产区域建议框,由表 3可见,灰斑病、斑点病的平均精度再次有所提升,分别提高了16.56%和5.92%,整体的平均精度均值提高了4.59%。相比原始的Faster R-CNN模型(以ResNet-50为特征提取网络),灰斑病、斑点病的平均精度分别提高了27.1%和9.47%,整体的平均精度均值提高了7.54%。在检测时间上,随着模型复杂性的增加,平均检测时间会有所增加,在融入特征金字塔网络的 Faster R-CNN对每幅图像的检测时间为0.322 s,虽然慢于之前的模型,但是也保持了实时性。

改进的Faster R-CNN深度学习网络能够较好地进行自动检测研究目标,其识别结果如图6所示。其中,有极少病斑由于模糊不清、或是过小而不能被模型检测到,对小目标的检测仍有优化的可能性。在光线较暗或明亮情况下,该识别模型对研究目标也能够检测到,适合在复杂的田间环境中对苦瓜叶部病害进行有效地检测,能够满足苦瓜叶部病害自动化识别定位喷药的要求。

图6 融合特征金字塔网络后的Faster R-CNN模型识别结果Fig.6 Faster R-CNN model recognition results combined with of feature pyramid networks

4 结 论

本研究以苦瓜健康叶片与叶片病害部位为研究对象,并且结合苦瓜叶部病害尺寸小的特点,对原始Faster R-CNN的区域建议网络(Region Proposal Network,RPN)进行修改,增加了训练时区域建议框的尺寸,同时在ResNet-50的基础上融入了特征金字塔网络(Feature Pyramid Networks, FPN),使之更适合自然环境下的苦瓜叶部病害的自动检测。

1)与ZF-Net、VGG-16对比可知,以ResNet-50为基础的特征提取网络的Faster R-CNN模型性能最佳。

2)在ResNet-50的基础上结合特征金字塔网络后,对小病斑的检测精度提升最大,相比于原始的 Faster R-CNN模型,灰斑病的平均精度提升了27.1%,斑点病提升9.47%,每幅图像的平均检测时间仅为0.322 s,保持了实时性。

3)模型在实际应用中表现优良,能够适应复杂的自然环境,对于后续的瓜果类病害目标定位及按需喷洒农药奠定了研究基础,减少化学农药的使用,具有保护农田生态的重要意义。

猜你喜欢

苦瓜特征提取病害
种植苦瓜 如何科学管理
早春养羊需防六大病害
小麦常见三种病害咋防治
种植苦瓜抓哪些管理
葡萄病害周年防治历
果树休眠期咋防病害
空间目标的ISAR成像及轮廓特征提取
吃苦瓜
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于特征提取的绘本阅读机器人设计方案