基于迁移学习Faster R-CNN模型田间红提葡萄果穗的识别

2021-03-15 09:31查志华周文静吴杰
关键词:置信度果穗卷积

查志华,周文静,吴杰,2*

(石河子大学机械电气工程学院/绿洲特色经济作物生产机械化教育部工程研究中心,新疆 石河子 832003)

红提葡萄(红地球)是鲜食葡萄的优质品种,其产量在我国葡萄产量中居于首位[1-2]。新疆是红提葡萄的主要产区,年产量高达10万t以上[3],约占全国的五分之一。葡萄种植过程中的大部分工作由人工完成,劳动强度较大,生产效率低[4],因此,急需一种方法代替人工劳作,并提高工作效率。20世纪70年代起,机器视觉技术开始被应用于农业中代替人工劳作,降低了劳动强度,提高了工作效率[5]。

由于同一葡萄果穗中果粒的成熟度不全相同,轮廓不规则,使得葡萄的自动识别无法达到理想的效果。葡萄果穗自动识别可采用浅层机器学习算法[6-7],但识别准确率较低,且浅层机器学习算法需要人为提取分类特征,过程复杂[8]。近年来,因卷积神经网络(CNN)可自动学习图像特征而广泛用于田间复杂图像的目标识别[9-10],其中,Faster R-CNN模型是深度卷积神经网络中最成熟的目标检测算法。Faster R-CNN模型可将特征提取、候选区域提取、边框回归和分类整合到一个网络中,同时获得目标边界和置信度,并且采用共享卷积层提高了检测速度。目前,Faster R-CNN模型已用于多种果蔬的识别[11-12]。

CNN训练需要大量的已标注数据[13],但是现实情况下构建大规模数据集非常困难,而迁移学习可以解决训练数据不足的问题,将已学到的模型参数分享给新模型以加快模型的训练[14],具有资源利用率高、训练成本低的特点[15]。目前有很多关于Faster R-CNN模型采用已训练完成且准确率较高的CNN模型作为区域候选网络(RPN)进行迁移学习的研究,LIU Y等分别使用VGG16和VGG19作为Faster R-CNN模型的RPN进行迁移学习,使用较少的数据集检测田间玉米流苏,识别准确率分别为87.94%和91.51%[16];SA I等[11]、孙哲等[12]、HUNG J和CARPENTER A[17]、EZHILARASI R和VARALAKSHMI P[18]、LEE C K等[19]分别将VGG16、ResNet50、VGG16和Alexnet作为Faster R-CNN模型的RPN进行迁移学习,成功实现了目标的准确识别;SKRABANEK P[20]对比了ResNet50、VGG16、GoogLeNet和CaffeNet分别作为RPN的Faster R-CNN模型的识别结果,认为CaffeNet结构过于简单,其余3种迁移模型均对图像的识别有较高准确率。

以上文献研究表明,VGG16、VGG19、ResNet50、Alexnet、GoogLeNet均可作为Faster R-CNN模型的RPN进行迁移训练,并达到准确识别的目的,因此,本文采用VGG16、VGG19、ResNet50、GoogLeNet和Alexnet分别作为Faster R-CNN模型的RPN对田间环境下红提葡萄果穗图像进行迁移训练,进而实现田间红提葡萄果穗的准确识别与定位,从而为葡萄园的自动化管理提供研究基础。

1 材料与方法

1.1 采样区域概况

试验所需图像样本采自新疆维吾尔自治区石河子市石河子大学试验园(44°20′N,85°59′E),海拔373 m。该葡萄园管理良好,红提葡萄品种栽植龄均在3年以上,单篱架,南北成行,多主面扇形整枝,架面通风,透光良好,株距0.9~1.2 m,行距2.7 m。

1.2 红提葡萄图像采集

2019年8月10日至9月15日为红提葡萄采收期,本文在采收期采集田间自然生长条件下葡萄果穗图像。采样时间在每日上午8:00—12:00,采用3种带有不同图像处理器的智能手机,即iphone8、HUAWEI Mate 10、MI 5X分别获取红提葡萄RGB图像以保证样本的多样性,像素分辨率分别为4 032×3 024(4∶3),3 968×2 976(4∶3),4 000×3 000(4∶3)。手机摄像头距葡萄果穗13~57 cm,图像采集时,采用随机方式在同一株的上、中、下位置拍摄不同成熟度的红提葡萄,采集的图像包括逆光和顺光。每隔5天采集1次,每次采集红提葡萄图像后以采集日期命名,顺光和逆光图像分别为890张和450张,共1 340张图像。

1.3 红提葡萄图像数据集的建立

由于3种手机拍摄图像大小不一致,本文将所有图像尺寸统一调整为3 968×2 976像素,再压缩为298×397像素以提高网络训练速度。在卷积神经网络学习数据时,图像中的高频特征容易导致神经网络过拟合[12]。高斯噪声的添加可以使图像样本在所有位置上都产生数据点,能够有效抑制图像的高频特征,减弱其对模型的影响。因此,如图1所示,本文对训练图像添加高斯噪声,噪声对图像平均值的偏移量(均值)为0,图像噪声的躁动范围(方差)为0.01。

训练样本的数量一定程度上决定了卷积神经网络的识别效果[20]。本文数据集所包含样本数量及多样性较少,因此,采用水平、垂直翻转、随意旋转图像的方法扩增数据集,将总样本数扩大4倍,扩增后图像共5 360张;本文按照PASCAL VOC数据集的格式标注并保存样本图像,从数据集图像中随机选择75%图像(4 020张样本)用于训练模型;采用Matlab中Image Labeler APP以最小外接矩形框标注训练数据集的红提葡萄果穗,保证每个边界框内只有一穗红提葡萄,且包含背景像素尽可能少;图像逐一标注完成后,将其保存为.mat格式数据集。

图1 红提葡萄果穗图像预处理示例

1.4 红提葡萄果穗Faster R-CNN模型识别模型的迁移学习

本文选择Faster R-CNN模型对红提葡萄图像数据集进行训练(图2),以达到红提葡萄果穗识别的目的。由Faster R-CNN模型利用共享的卷积层提取红提葡萄图像特征图,分别输送至区域候选网络(RPN)和感兴趣区域(ROI)池化层;由RPN网络通过Softmax分类器判断该特征图属于前景(葡萄果穗)还是背景,通过边框回归得到该葡萄果穗较为准确的边界框,并输出至ROI池化层;ROI池化层采用空间金字塔池化,通过多个池化窗口使输入的不同尺寸特征图以固定尺寸输出;最后,由全连接层和Softmax分类器判断候选区域是否为葡萄果穗并输出精确的边界框。

图2 Faster R-CNN模型结构

本文使用5个预训练好的卷积神经网络VGG16、VGG19、Resnet50、Googlenet和Alexnet分别作为RPN进行迁移学习,使Faster R-CNN模型先获得图像的底层特征权重,再将这些特征信息迁移学习至葡萄果穗识别的任务中,达到用少量图像训练使Faster R-CNN模型得到较高识别性能的目的,并使网络模型具有一定的泛化能力。

采用随机梯度下降法(stochastic gradient descent method,SGDM)[12]对网络进行训练,将动量因子(Momentum)设置为0.9,初始学习率(learning rate)设置为0.1,Dropout设置为0.1,最大循环次数(MaxEpochs)设置为20,分别对5种区域候选网络进行训练。训练过程中损失函数L[12]为

(1)

其中

(2)

(3)

(4)

式(1)至(4)中,pi表示葡萄果穗的预测概率(%);ti表示预测边界框的坐标向量;Ncls为分类样本数量;Lcls表示分类层损失;Nreg表示回归样本数量;ti*表示真实边界框的坐标向量;pi*表示锚点判别值,锚点为葡萄果穗时pi*为1,锚点为背景时pi*为0。

本文试验在同一设备运行,数据处理使用的硬件设备为SAMSUNG台式电脑,Windows7操作系统,处理器为Intel(R) Xeon(R) CPU E5-2620@2.10 GHz,内存16 GB,显示适配器NVIDIA GeForce GTX 960,驱动程序软件为ACPI×64-based PC,图像处理及网络训练的软件为Matlab 2018a,并调用CUDA 10.1.168版并行计算架构以提高模型训练速度。

1.5 红提葡萄果穗Faster R-CNN模型识别模型的性能评价方法

本文采用精确率P(Precision)、召回率R(Recall)和平均精度AP(Average Precision,AP)作为目标检测的评价指标来评估训练出的模型。

(5)

(6)

(7)

式(5)~(7)中,TP为正确划分的正样本数量,FP为错误划分的正样本数量,FN为错误划分的负样本数量。

对于每一个识别出的葡萄果穗,以置信度来评判其可靠度,表示模型对识别出葡萄果穗的确定程度,置信度越高表明模型输出的结果越可靠。

最后绘制精确率-召回率曲线,召回率反应分类器对正样本的覆盖程度,精确率反应其预测正样本的准确程度,平均精度为精确率-召回率曲线的积分,即精确率-召回率曲线与x轴和y轴所围成的面积。平均精度的值越大,模型识别效果越好。

2 结果与分析

2.1 红提葡萄果穗Faster R-CNN模型识别模型区域候选网络的选择

在1.4节所设置的训练参数下,对5种Faster R-CNN模型迁移学习训练后绘制P-R曲线进行比较,取模型检测葡萄果穗的平均时间评估算法的运行效率,结果(表1)显示,Resnet50模型的平均精度最高,识别出的葡萄果穗置信度可达0.995 3(图3a),但该网络层数较多(50层),且平均检测时间较长(87.19 ms);Alexnet平均检测时间最短(15.22 ms),但得到的平均识别精度最低(76.42%),该网络模型甚至将颜色相近的背景识别为葡萄果穗;VGG16平均精度略低于Resnet50,为93.85%,但平均耗时较低,仅26.00 ms,由图4 d所示识别出的葡萄果穗置信度达0.999 8,且框出的葡萄果穗最为完整。此外,VGG16使用了大小为3×3的较小卷积核,使得VGG16收敛速度加快,从而提高了葡萄果穗识别的速度。因此,本文选择基于VGG16的Faster R-CNN模型作为识别葡萄果穗的模型。

表1 不同区域候选网络训练结果

图3 基于不同RPN的Faster R-CNN模型识别结果

2.2 葡萄果穗识别迁移学习模型的优化

不同训练参数对网络模型的训练结果影响极大,所以迁移学习训练时循环次数和学习率的选择很重要。为了得到最佳的网络识别模型,本文针对VGG16作为RPN的Faster R-CNN模型识别模型,对其学习率和循环次数做了如表2所示的调整,分别进行迁移学习,得到的结果用平均精度表示。由表2结果可知:

(1)不同学习率下VGG16迁移学习模型随着训练次数增加,识别葡萄果穗的平均精度得到提升;

(2)在同一训练次数下,降低网络模型的学习率可以有效提高模型的识别效果。可见在一定范围内,可以通过降低学习率提高模型识别精度。

(3)当模型学习率为0.000 1,训练次数达到20次后,模型平均识别精度可以达到99.07%,继续增大训练次数,模型识别精度基本不再升高。

表2 不同Epochs及学习率训练模型结果

当VGG16迁移学习模型在学习率为0.000 1条件下训练20次后,得到的P-R曲线(图4),可见曲线几乎完全覆盖坐标系,由式(7)计算出平均精度为99.07%。基于VGG16的Faster R-CNN模型识别葡萄果穗结果(图5)显示:

(1)该模型对红、绿葡萄果穗的识别置信度多数能达到0.98以上,识别红葡萄果穗时,最小矩形框标注较为完整。

(2)识别绿色葡萄果穗时(图5b),最小矩形框标注稍有偏移,存在标注框过大或者标注的葡萄果穗不完整,主要是由于绿色葡萄果穗与背景颜色相近,使得识别效果较差。

(3)对于阴影中的葡萄果穗(图5c),VGG16迁移学习模型也能较准确识别,置信度为0.88以上。

图4 基于VGG16的Faster R-CNN模型P-R曲线

图5 基于VGG16的Faster R-CNN模型网络模型对不同葡萄图像的识别结果

3 结论

采用迁移学习的方法选择Resnet50、Googlenet、VGG16、VGG19和Alexnet 5种网络作为Faster R-CNN模型的RPN进行训练,对5种迁移学习的Faster R-CNN模型的识别性能进行对比分析,结果表明:

(1)基于VGG16的Faster R-CNN模型综合识别效果最好,当模型学习率为0.000 1,训练次数为20次时,平均检测时间为26 ms,识别模型平均精度高达99.07%,模型识别置信度均在0.88以上,表明模型能够准确且较完整地识别葡萄果穗。

(2)从检测速度看,Faster R-CNN识别模型能够满足田间葡萄果穗采摘识别的实时作业要求。

(3)Faster R-CNN模型识别时计算量较大,对设备要求较高,今后可尝试采用其他神经网络进一步提高葡萄果穗的识别性能。

猜你喜欢
置信度果穗卷积
基于数据置信度衰减的多传感器区间估计融合方法
一种基于定位置信度预测的二阶段目标检测方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
浅谈玉米畸形的原因及防治措施
设施番茄果穗弯折影响因素的研究
卷积神经网络的分析与设计
从滤波器理解卷积
正负关联规则两级置信度阈值设置方法
基于傅里叶域卷积表示的目标跟踪算法
校核、验证与确认在红外辐射特性测量中的应用