基于迁移学习的Faster R-CNN自然环境下香梨识别与检测研究*
2022-11-02曹冰玉邢文宣张洚宇
曹冰玉 , 邢文宣 , 周 鹏 , 张洚宇 , 张 立 , 张 龙
(新疆科技学院,新疆 巴州 841000)
0 引言
随着农业自动化的迅速发展,自然环境下的香梨识别成为香梨采摘机器人视觉系统中的关键环节,但由于光照、枝叶遮挡或多果实重叠等复杂环境的存在,导致香梨采摘机器人不能迅速、精确地定位目标,影响采摘任务的执行。因此,自然环境下对香梨的有效识别和检测,对提高香梨采摘机器人采摘效率、促进香梨产业发展具有重要意义。近年来,很多水果识别算法相继被提出,Ji等[1]提出了颜色特征分割法,通过SVM支持向量机识别提取苹果颜色和形状特征,但是对于叶面遮挡引起的平均误差率较大;Si等[2]提出了通过RGB颜色通道色差阈值和色差比例定位苹果的像素位置,但其操作步骤复杂,时效性较低;廖崴等[3]利用随机森林算法结合Otsu阈值法[4]对草莓图像进行分割和滤波处理,并使用霍夫变换进行轮廓重建,但其在光线不同的时间段对水果的识别率较低;孙飒爽等[5]利用K-means聚类算法结合三点定圆法对苹果进行分割和轮廓重建,但其对小目标水果检测效果不佳。
通常自然环境下采集到的水果图像有很大的差异性,有很多干扰和背景噪声,上述传统识别模式无法消除背景噪声,影响水果识别效果。随着人工智能技术的不断发展,Krizhevsky等[6]提出的AlexNet卷积神经网络CNN架构在分类识别中崭露头角,对图像的识别精度具有里程碑式的贡献。Inkyu等[7]提出了Faster R-CNN水果检测,提高了水果识别率。傅隆生等[8]提出了一种基于Le Net卷积神经网络的深度学习模型,通过CNN对复杂背景下的猕猴桃果实进行识别,实现复杂环境下的水果识别。因此本文利用迁移学习法来优化VGGNet卷积网络,从而实现自然环境下香梨的快速精准识别。
1 迁移学习
迁移学习是深度神经网络中较为常用的网络训练模型,它通过共享大数据集下预训练模型的底层结构权值来消除不同数据集之间的差异性,可以在数据集较小的情况下,提高模型的准确率。本文采用在COCO数据集上预训练的权重模型作为Faster R-CNN检测框架的初始权重模型,在预训练后的模型中对自然环境下香梨的检测模型进行微调,提高识别效率,节约训练时间和训练资源。
2 数据增强
数据增强是提高算法鲁棒性的常用方式,因在一些特殊环境中无法收集满足各类条件的数据用于模型预训练和算法测试,因此,本文利用图片的裁剪、翻转、平移、去噪等方式来提高训练集数据的准确度,从而提高所设计算法的泛化能力。
3 自然环境下香梨目标检测
3.1 Faster R-CNN原理
Faster R-CNN目标检测模型如图1所示,该模型工作原理为:首先,对图片进行归一化,调整为卷积网络模型所需的格式,并提取图片卷积后的泛化特征。其次,利用Select Search算法提取出候选区域并分别映射到卷积后的特征图中,此操作不仅解决了多个目标尺寸不一的问题,还节省了大量运行时间。最后,在测试训练集时,用Softmax替换传统的SVM(Support Vector Machines)支持向量机,大大节约运行时间的同时也实现了训练集与数据集的特征权值共享。
图1 Faster R-CNN目标检测模型
3.2 改进Faster R-CNN目标检测模型
改进后的Faster R-CNN目标检测模型如图2所示,该模型在Faster R-CNN模型的基础上将Select Search候选框选取整合到整张网络上,实现端-端的训练,大大提升检测速度。其模型由VGGNet特征提取、RPN区域建议网络和Classifier分类网络三部分组成。
图2 改进后的Faster R-CNN目标检测模型
3.3 VGG网络模型
V G G网络模型如图3所示,其工作原理为:VGGNet卷积网络[9]利用3×3的小卷积核和2×2的池化核提取图片的特征,得到特征图,并提高数据集的泛化能力,提高识别准确率。
图3 VGGNet卷积网络模型
3.4 训练集数据获取
本文训练集数据主要通过网络爬取图片的方式获取水果图片,并对图片进行处理,剔除不符合条件的图片,共获得8 000张与香梨外观相近的图片,经过分类得到15种水果图片。为加快训练速度,将图像分辨率处理为400×300像素。15类水果数据集如图4所示。
图4 15类水果数据集
3.5 测试集数据获取
本文测试集数据是利用佳能850D相机在库尔勒梨园对不同角度、不同天气、不同遮挡程度的香梨树进行拍摄得到的,共拍摄各类照片5 000张,图片为JPEG格式,分辨率为2 800×1 900像素。部分数据集如图5所示。
图5 自然环境下采集的香梨数据集
3.6 实验平台
软件环境:PyTorch,Python(版本号:3.7.2),TensorFlow(版本号:1.11.13),阿里云GPU服务器;硬件环境:AMD-3600X,八核CPU,16 G内存,NVIDIA GeForce GTX 1660S 6 GB显卡,NVIDIA JETSON TX2 GPU 8 G服务器,双目相机,实验平台如图6所示。
图6 实验平台
3.7 实验结果与分析
验证模型好坏,可通过模型的召回率和准确率来评价,其中召回率和准确率公式分别为公式(1)和公式(2):
式中,P为准确率;R为召回率;TP为正确识别香梨个数;FP为将背景识别为香梨的个数;FN为已标识但未识别个数。
由于Resnet网络层数不同,最终训练出的识别模型数据也有优劣之分,为此特选取ResNet50和ResNet101来做对比,训练结果如图7、8所示。
由图7、图8可知,仅图7(b)呈先减少后微增状态,训练集损失及图8(b)验证集损失均在不断减少,过拟合状态趋于平衡。经过不断叠加训练和迁移学习,可得到训练后的模型运行结果图,如图9所示。
图7 ResNet50训练30批次后整体损失变化曲线图
图8 ResNet101训练30批次后整体损失变化曲线图
图9 基于迁移学习的Faster R-CNN模型检测效果图
为更清楚地看到模型分割结果,利用MATLAB进行图像处理[10],将识别后的图像进行二值化分割,MATLAB-GUI界面搭建如图10所示,其二值化分割结果如图11所示。
图10 MATLAB-GUI水果识别处理界面
图11 二值化分割结果
通过实验分析可知,在迁移学习的训练模型下,利用COCO数据集预训练Faster R-CNN模型,可提高香梨的准确率,降低错误数据召回率,并通过二值化分割结果验证香梨识别的准确率。
4 结论
本文以自然环境下成熟香梨为研究对象,采用卷积神经网络和机器视觉以及迁移学习模型,通过Faster R-CNN算法模型实现了自然环境下成熟香梨的快速识别。
本文主要内容及研究工作如下:1)使用迁移学习的方法,将大数据集(VGGNet网络框架)下的权重模型共享给香梨识别检测任务,这大大节约了运行时间。2)使用ResNet卷积网络进行模型训练,提高Faster R-CNN算法的精度,能够准确识别不同环境下的香梨,并提取其特征图像。