基于改进U-Net 网络的大棚草莓果实识别

2022-05-20 09:41贾宗维姚思敏张如意王瑞彬张举
关键词:编码器卷积草莓

贾宗维,姚思敏,张如意,王瑞彬,张举

(山西农业大学 信息科学与工程学院,山西 太谷 030801)

我国草莓栽培面积和产量均位居世界首位,以其含有丰富的维生素等营养物质成分而备受人们青睐,近年来草莓的栽培面积在不断扩大[1]。成熟后的草莓需要及时采摘,采摘工作是最为耗时、耗力的阶段;人力采摘工作者的劳动成本高、效率低,显然已经成为制约草莓种植业发展的2 大因素,需要发展智慧农业,依靠机器人等一系列智能设备来推进农业现代化。但草莓形状较为不规则,且草莓的表皮较薄,易损伤,机器人采摘草莓工作较为复杂,实施难度较高,所以针对基于图像处理的自动采摘草莓机器人的研究有很强的实际意义[2]。实现机器人草莓采摘首要解决的核心问题是区分草莓成熟度以及空间定位,首先要将草莓图像从复杂环境背景下分割出来,利用计算机视觉技术根据颜色,轮廓等特征将草莓果实分割提取出来,再根据双目摄像机的定位情况,控制末端执行器完成机器采摘工作[3]。草莓图像分割是草莓自动化采摘工作中的重要一环,草莓图像分割效果将会影响机器人的下一步工作。

目前国内外学者均在果蔬图像分割方面有所研究,但大多选用固定背景[4]。Yuan 等[5]所采用的图像分割技术是利用线性滤波器所提供的各个像素位置与输入图像波段的局部直方图结合生成局部光谱直方图,并提出了光谱和纹理特征的线性关系。Yi 等[6]所研究的尺度合成方法适用于更多种类的图像分割任务。图像被划分为多个区域,每个区域由具有相似理想分割率的对象组成,然后对每个区域的次理想分割进行综合,得到最终的分割结果。该方法更适用于简单比例的图像。Mylonas 等[7]针对图像分割提出了一种新的方法。提出将基于监督像素的分类器的结果与从图像分割中提取的空间信息相结合。先进行像素分类,利用的是像素的光谱、纹理特征,分类后生成一组模糊的隶属关系图[8],提出了一种遗传序列图像分割算法,将图像分割成均匀的区域。

U-Net 作为一个较为优秀的语义分割模型,现在也被广泛应用于农业图像分割,但因其网络深度不够所导致无法提取到更深层次的特征,不能满足精细化表型提取[9]。而VGG16 网络可以提取到更深层次的特征,结合U-Net 网络结构可以实现对图像的精细分割[10]。在对大棚草莓图像进行精细分割之后,可为大棚草莓自动化采摘后期的色彩分级或者果形分级提供数据来源。

在大棚复杂环境背景下,草莓叶片遮挡严重,草莓识别精度较低,为了更好的解决这一问题,提高草莓果实的识别精度,本文采用了VGG16 作为U-Net 的主干特征提取网络用于大棚草莓的图像分割工作,旨在为草莓采摘机器人更好的完成采摘工作提供基础。

1 数据采集

本文所采用的大棚草莓图像均来自山西省晋中市太谷区巨鑫现代农业园区(东经112.48°,北纬37.39°)。由于大棚草莓叶片遮挡严重,受复杂环境背景和光照或拍摄设备等影响都会影响数据集效果,拍摄时间为2021年5 月下旬晴天,选用索尼FDR-AX45 相机拍摄。本文共采集了大棚草莓图像1287 张,之后将图像处理为608×608 像素的jpg 图像。采用labelme 软件对处理后的大棚草莓图像进行数据标注,选择逐点标注的方式对图像中的草莓区域进行标注。草莓图像含有3个数据标签:1代表红色已成熟草莓,2代表绿色未成熟草莓,3代表背景区域。标注数据存储为json 文件,并通过编写程序将数据标签转换为png 图。

由于试验数据是真实大棚环境下拍摄,数据量不足,直接训练原始数据容易使模型出现过拟合问题,为了增加数据集的多样性,提高模型的泛化能力,对大棚草莓数据集进行了数据增强。采用了2种数据增强方式:色彩抖动和旋转变换。经过2种变换后的数据集扩充到14 147 张。

(1)色彩抖动:通过随机调整图像的饱和度、亮度、对比度和锐度来模拟不同光照情况下的情况,每张原始图片色彩抖动后生成5 张增强图片,色彩抖动数据增强效果图如图1所示。

图1 大棚草莓原始图像以及色彩抖动效果图Fig.1 The original image of strawberry in the greenhouse and the effect of color dithering

(2)旋转变换:图像的大小不变,对图像进行随机任意角度(0~360°)旋转,上下旋转,左右旋转均可,来模拟不同角度摄像头所拍摄的情况,旋转变换数据增强效果图如图2所示。

图2 大棚草莓原始图像以及旋转变换效果图Fig.2 The original image of the strawberry in the greenhouse and the effect of the rotation transformation

2 试验方法

2.1 U-Net 网络结构

U-Net 是当前较为流行的语义分割模型,在医疗影像、植物表型领域均得到广泛应用,可将其结构看作3 部分。第1 部分是编码部分,主要负责提取原始图像多个浅层的特征层,将输入图像的上下文所包含的信息获取到,这些分层语义信息特征包括颜色、纹理、边缘轮廓等方面。U-Net 的编码部分与FCN 相似,是在其基础上的改进[11-12]。编码部分可实现5个不同深度的有效特征层的获取;第2 部分是解码部分,通过上采样的方式实现了对特征的精准定位,为了防止在恢复图像的过程中丢失细节信息,将解码部分所获得的特征图与编码中获得的同深度的有效特征层依次进行特征融合,获得1个最终的融合了所有特征的有效特征层;第3 部分是预测部分,利用获得的最后1个有效特征层,将其送入分类器对每1个特征点进行分类,相当于对每1个像素点进行分类,最终输出与输入图像同等大小的分割效果图[13]。

2.2 改进的U-Net 编码器

本文在编码部分采用VGG16 网络中的卷积层与池化层作为U-Net 模型的编码器,共计5个block。编码器卷积结构为2-2-3-3-3,并在每个block 卷积层后增加批归一化操作(Batch Normalization),来加快训练过程和避免梯度消失的问题,接着进行最大池化。编码器网络共计进行13次卷积,5次批归一化,4次池化。编码器卷积层保留VGG16 卷积核参数3×3,步长为1,保持感受野的同时减少参数量与计算量,同时选用same 填充保证了卷积后的特征图大小与前层一致,从而避免解码合并前的裁剪操作,采用ReLu 激活函数来加入非线性因素,防止过拟合。编码器通过不断增加通道数达到了更深的网络,提取到了更丰富的图像特征。改进的U-Net 编码器结构图如图3所示。

图3 改进的U-Net 编码器结构图Fig.3 Improved U-Net encoder structure diagram

用改进的U-Net 编码器进行训练时,输入的图像大小为608×608×3,参数配置如表1所示。

表1 改进的U-Net 编码器网络结构参数配置Table 1 Improved U-Net encoder network structure parameter configuration

2.3 模型构建

本文中的U-Net 改进模型分为编码器和解码器以及预测3 部分。相较原始U-Net 模型,本文在编码部分有所改进。原始U-Net 模型编码器由卷积层与池化层构成,共计5个block,卷积结构为2-2-2-2-2,前4次block卷积后均进行1次最大池化,共计10次卷积,4次最大池化,采用valid 填充方式[14]。本文模型选用VGG16 网络结构中的卷积层与池化层作为编码器,在block 数量不变的情况下,卷积数量增多,卷积结构为2-2-3-3-3,感受野扩大,提取到的特征更丰富,学习效果得以提升。选用same 填充,卷积后得到特征图大小与前层一致,不会丢失边缘信息,免去原始U-Net 模型在与解码器特征融合前的裁边操作。在每个block卷积层后增加批归一化操作,可以减少梯度消失,加快训练速度、防止过拟合等,缩短了网络训练时长的同时提高了精度[15-16],随着网络层数加深,网络训练速度越来越慢,收敛越慢,通过引入批归一化操作(Batch Normalization)有效解决这一问题。最终编码器得到5个不同尺度的有效特征层。

在解码部分,延用U-Net 结构,采用上采样与2×2 反卷积。上采样后得到的特征图采用Concatenate 函数与编码器同深度特征层融合,融合成新的特征图,利用特征融合来捕捉浅层特征承载的细节信息,使每次卷积结果不止依赖于前次操作,缓解梯度消失问题,最终实现高精度语义分割结果[17-18]。

预测部分采用1×1 卷积将每个64 分量的特征映射到所属类别中进行分类。整体网络结构如图4所示:

图4 整体网络结构图Fig.4 Overall network structure diagram

编码器在处理RGB 原始草莓图像输入时,通道数为3,如图5为编码器部分的草莓图像输入可视化,左侧为草莓原始图像输入,右侧依次显示为Red、Blue、Green 三个通道。

图5 大棚草莓图像输入可视化Fig.5 Visualization of Strawberry Image Input in Greenhouse

编码器中的卷积层的作用是用来特征提取,特征需要进行不断地压缩和提取才能获得更为复杂的特征,大棚草莓图像卷积层操作可视化,通过指定步长大小让卷积核窗口滑动,图6为对大棚草莓图像进行4次卷积操作的可视化,获得的特征更为精细。

图6 大棚草莓图像卷积层操作可视化Fig.6 Visualization of convolutional layer operation of strawberry image in greenhouse

在卷积操作之后通过池化层来实现对输入特征的选择和过滤,在保留特征的同时减少参数量的输入,池化的作用是保持特征的不变性以及扩大感受野。如图7为大棚草莓图像最大池化操作可视化,步长为1,卷积核为2×2。

图7 大棚草莓图像最大池化操作可视化Fig.7 Visualization of the maximum pooling operation of strawberry images in a greenhouse

3 训练与评估

3.1 评价指标

大棚草莓图像分割的目的是为了机器采摘时,识别草莓果实目标更为精准,并且为下一步草莓颜色特征分析以及果形等级评定提供数据支撑。为了更加直观的评估模型分割的效果,本文选用3个评价指标对模型性能进行分析[19-20]。采用了平均交互比(Mean Intersection Over Union,MIOU)、平均精度(Mean Pixel Accuracy,MPA)和F1_score 共3个指标作为衡量模型好坏的标准。MIOU 是评价模型精度的1个指标,其公式表示如(1)所示:

式中k代表图像总类别数,Txx代表的是实际上是x类被识别成x 类的像素总量,Txy则是表示实际是x类被错误识别为y 类的像素总值,Tyx代表的是实际y 类预测x 类的像素总数。MPA 则是每个类别像素准确率所求得的平均值数据,将其选为另一个评价指标,其计算过程如(2)所示:

F1_score 是分类问题的常用衡量指标,它是精确率和召回率的调和平均数,范围在0~1 之间。F1-score 越接近1,模型性能越好。其计算过程如(3)所示:

3.2 训练过程

试验环境为ubuntu18.04,TeslaK80 运算卡(24G),CUDA10.1 和cudnn7.5,选用Tensorflow作为深度学习框架,试验采用批量训练的方式,将14 147 张大棚草莓数据集按照9∶1 的比例划分为训练集、测试集,再将训练集按0.1 比例划分出验证集。训练集为11 457 张,测试集为1415 张、验证集为1274 张。模型初始学习率设置为1e-4,本文将迭代轮数设置为50 轮次,每轮输入4 张图片,前25轮,连续5 轮精度不提高,将学习率调低10%,后25 轮学习率调整为1e-5,调整策略同上。整体的大棚草莓果实分割模型具体流程如图8所示。

图8 大棚草莓果实分割模型流程图Fig.8 Flow chart of strawberry fruit segmentation model in greenhouse

3.3 对比分析

为了衡量本文所提出模型的有效性,对真实大棚环境草莓数据集使用改进后的U-Net 模型与原始U-Net 模型以及当下较为流行的PSPNet、DeeplabV3 分割模型采用同样的试验数据和参数进行试验训练,并对比训练过程以及结果。

图9为大棚草莓数据集在优化后的U-Net 模型 与 原 始U-Net 以 及PSPNet、DeeplabV3 模 型 在训练过程中的F1_score 和loss 值对比效果图。由图9可见,4 条loss 曲线在50 轮迭代次数范围内均呈下降趋势趋于收敛,改进后的U-Net 模型在使用了重新设计的编码器网络后,初始loss 值较UNet 来看,表现更优,在训练过程中收敛速度也更快,效果更好。在不断迭代过程中,改进后的UNet 模型的F1_score 值处于稳步上升趋势且高于其余3种模型。由图可看出改进后的U-Net 模型训练效果较好,F1_score 值分数较高,模型鲁棒性较好。

图9 模型训练F1_score 和loss 值对比Fig.9 Comparison of model training F1_score and loss value

由表2可见改进后的U-Net 模型对于大棚草莓数据集分割精度最高,精度为96.05%,较UNet 模型提高了2.38%,较PSPNet 模型提高了13.15%,较DeeplabV3 模型提高了10.09%,训练的速度优于U-Net 模型。优化后的U-Net 模型F1_score 值为0.90,均高于其余3种模型。从训练结果可以看出优化后的U-Net 模型相比其它分割模型MIOU 值也表现最佳,MIOU 值为89.41,均高于其它3种对比模型。PSPNet 和DeeplabV3 模型在MIOU 和MPA 指标上数值较低,表现较差,综合对比,优化后的U-Net 模型在大棚草莓数据集分割取得了不错效果,性能更好。

表2 大棚草莓数据集在不同模型上实验结果对比Table 2 Comparison of experimental results of the greenhouse strawberry data set on different models

图10 为不同模型分割大棚草莓数据集效果对比。显然,在没有遮挡及粘连的情况下,改进后的U-Net 模型分割效果最好,可以将草莓边缘部分清晰的分割出来,且成熟与未成熟草莓分割准确;DeeplabV3 模型次之,草莓成熟度区分较为清晰,但有部分将草莓顶端叶柄误认为是未成熟草莓果实,不能有效的去除复杂背景,达不到理想效果;U-Net 模型对成熟草莓的分割效果较好,但对未成熟草莓的分割效果很差,不能将未成熟草莓的轮廓清楚的分割出来,并且容易将叶片误分割成未成熟草莓;PSPNet 模型效果最差,草莓边缘轮廓不清晰,对成熟与未成熟草莓的区分也不够准确,细节丢失严重,分割效果差;在有粘连有遮挡的情况下,受叶片、茎等干扰,极易产生误差,优化后的U-Net 模型在上述背景条件下,能将草莓果实清晰的从复杂背景中分割出来,DeeplabV3 模型表现较好一些,但在对茎叶的处理上,容易出现分割区域边界模糊,将其误认为是未成熟草莓,出现小部分粘连情况,U-Net 模型将未成熟草莓与叶片混淆,影响分割精度,PSPNet 模型效果最差,出现粘连以及误分割,在对茎叶与果实粘连情况的分割都没有达到好的效果。

图10 不同算法分割图比较Fig.10 Comparison of segmentation diagrams of different algorithms

因此,通过试验数据分析可知,改进后的UNet 模型对大棚草莓数据集进行分割,相较于UNet 模型、PSPNet、DeeplabV3 模型来说效果最好,分割效果更为精细,能有效的将草莓边缘部分以及与茎叶粘连部分草莓图像分割出来,各方面表现较优。

4 结论

本文从实际需求出发,考虑到草莓采摘机器人在采摘过程中对草莓果实图像识别精度还不高,无法准确的从获取的图像中精准分割出草莓的图像。对大棚草莓数据集采用色彩抖动和旋转变换进行了数据增强,选用了U-Net 模型以及基于VGG16 重新设计的网络作为编码器来对大棚草莓数据集进行分割,在解码部分通过上采样和特征融合捕捉到了更深层次的细节特征,最终模型取得了较好的效果,证明了该试验的可行性以及有效性。但本文算法的计算效率和强化特征学习仍有待提高,后续将把重点放在进一步提高模型的精度与效率上。

猜你喜欢
编码器卷积草莓
基于全卷积神经网络的猪背膘厚快速准确测定
WV3650M/WH3650M 绝对值旋转编码器
WDGP36J / WDGA36J编码器Wachendorff自动化有限公司
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
舞台机械技术与设备系列谈(二)
——编码器
草莓