基于改进Mask,R-CNN,的番茄茎秆分类方法

来源:优秀文章 发布时间:2023-04-28 点击:

项荣,张茂琛

(中国计量大学 质量与安全工程学院,浙江 杭州 310018)

农业机器人是实现农业自动化的重要方式,而视觉系统是农业机器人实现作业目标自动识别和定位的主要部件.目前农业机器人视觉系统研究多集中于果蔬识别[1-5],对果蔬植株其他器官尤其是茎秆的识别研究较少.实现果蔬植株茎秆识别是农业机器人实现对靶喷施、剪枝、疏叶、成簇采摘等作业自动化的前提[6-7],同时也有助于实现农业机器人作业时的自动导航和避障[8].

传统的果蔬植株器官识别方法主要应用于场景简单[9]、与背景异色的目标识别.在目标与背景近色,存在遮挡、重叠及光照不均匀的复杂应用场景中,其目标识别正确率不高[10].与传统的茎秆识别方法相比,深度学习方法识别正确率更高,受环境因素影响更小,在复杂场景下的果蔬植株器官,尤其是与背景近色的果实识别中得到了广泛应用[11].然而,当前基于深度学习的植株茎秆识别方法研究主要集中于主茎或与其他器官异色的树枝的识别[12-13].比较而言,与背景近色的果实个体轮廓分界分明,形状相对规则,与背景异色的树枝,颜色特征鲜明,而番茄茎秆相互贯通,形状呈细长的近似直线或不规则弧线,且与叶片等背景颜色相近,识别难度大.

Mask R-CNN(Mask Region-Convolutional Neu⁃ral Network)作为一种可对多个目标同时进行分割和识别的深度学习框架[14],在植株器官识别中已得到初步应用[15-16].本文针对日间自然光条件下和夜间主动照明条件下番茄植株不同区域光照条件不一致、茎秆与其他器官近色等带来的番茄茎秆的分类难题,提出了一种基于改进Mask R-CNN 的番茄茎秆分类方法.基于最小外接矩提取算法对Mask RCNN 模型的Mask 分支进行了改进,使其在生成茎秆掩膜的同时生成对应的最小外接矩,同时提出了用于实例分割深度学习模型综合性能评价的像素级评价指标和掩膜边框精确率评价指标Re,以提高实例分割深度学习模型性能评价的准确性.

1.1 试验材料与设备

1.1.1 试验材料与图像采集

试验材料为温室大棚中种植的虹越大番茄植株.分别采集了日间和夜间番茄茎秆图像.

参照文献[17],夜间照明系统如图1(a)所示,其中ACDF长×宽为700 mm×600 mm.通过开关 控制可实现不同的光源布局.图像采集系统实物如图1(b)所示.使用PointGreyResearch 公司的 Bumblebee2型双目立体相机进行夜间番茄植株图像采集.相机安装于三脚架,通过1394 连接线和采集卡MOGE1394 与计算机相连.所用计算机为DELLE4300,内存2GB,CPU 为IntelCore2DuoP9400,操作系统Windows7.图像存储为JPG 格式(800 像素×600像素).

图1 夜间图像采集系统Fig.1 Night image acquisition system

2018 年6―7 月使用两盏2W LED 对角布局(AF)在温室大棚采集夜间番茄植株图像192 幅;
2019 年6―7 月使用两盏1W LED 对角布局(AF)在温室大棚采集夜间番茄植株图像272 幅,使用四盏1W LED 四角布局(ACDF)采集图像63幅.2021年8月采集日间番茄植株图像,其中于7:00―11:00 采集图像106 幅,于14:00―18:00 采集图像107 幅.图像采集距离为300~600 mm.

1.1.2 深度学习软硬件环境及数据制备

使用联想拯救者R7000p 笔记本电脑进行深度学习模型训练和测试,其内存16 G,CPU为AMD Ry⁃zen 7 4800H with Radeon Graphics,显卡为NVIDIA RTX 2060.操作系统Windows 10,基于Python,使用深度学习框架Tensorflow 1.6.0 和Keras 2.1.6 搭建深度学习环境.

使用自制的茎秆分类数据集对Mask R-CNN 模型进行训练.以夜间茎秆分类数据集的制作为例,方法如下:使用标注软件labelme 4.2.0对图像中茎秆轮廓进行标注,根据茎秆的生长位置将茎秆分为主茎和侧枝.主茎是直接生长在地面上的茎秆,竖直向上生长,较为粗壮,其标签为main stem.侧枝为生长在主茎上的茎秆,以主茎为中心向外侧生长,其标签为firstary side branch,如图2 所示.图像中的过暗茎秆、曝光茎秆不予标注.由于叶片、支撑杆、绳子等杂物的遮挡以及曝光等环境因素的影响,番茄茎秆被分割为若干大小不等的片段,因此每幅图像中标注的平均茎秆对象数为5~20个.

图2 茎秆分类示例Fig.2 Example of stem classification

对夜间采集所得529 幅图像进行翻转、平移等操作实现数据增强后,按比例划分获得的训练集含1 012 幅图像,验证集含200 幅图像,测试集含109 幅图像,3 个数据集含标注茎秆对象数合计超 16 000个.

日间茎秆分类数据集的制作类似.标注完成后,经数据增强、按比例划分后得到的数据集含训练集图像567幅,验证集图像47幅,测试集图像24幅.

1.2 番茄茎秆Mask R-CNN分类方法

1.2.1 番茄茎秆Mask R-CNN分类模型

如图3 所示,基于Mask R-CNN 的番茄茎秆分类模型结构可分为三部分.

图3 Mask R-CNN结构图Fig.3 Structure diagram of the Mask R-CNN

1)主干网络ResNet-FPN,是共享卷积层,用于提取输入图像的特征以生成特征图.选用残差网络ResNet-101(Residual Network-101)结合特征金字塔网络FPN(Feature Pyramid Networks)作为主干网络,FPN 主要解决了目标检测中的多尺度检测问题.通过自底向上的卷积神经网络得到四级特征图P2、P3、P4、P5,使用自顶向下和横向连接的方法将四组特征图融合起来,融合后的每层网络都具有深层次和浅层次的特征.

2)区域建议网络RPN(Region Proposal Net⁃work),用于生成可能含有检测目标的感兴趣区域RoI(Region of Interest).RPN 涉及的特征图来自FPN 中金字塔特征层,首先由P5 下采样得到P6,再分别在P2~P6 中提取5 种不同尺度,长宽比分别为0.5、1 和2 的总计15 种可能含有检测目标的矩形框anchor 作为RoI,然后对生成的anchor 进行分类和回归.

3)三分支,用于回归检测物体的类别class、边界框Bbox(Bounding box)及掩膜Mask.其中,边界框Bbox 是一个内含预测对象,且边与图像边平行或垂直的矩形.掩膜Mask 是在使用选定的图像、图形或物体,对处理的图像(全部或局部)进行遮挡,来控制图像处理的区域或处理过程中,用于覆盖的特定图像或物体.Mask 分支最后一层输出掩膜类别设置为2类(主茎和侧枝).

Mask R-CNN的损失函数为[18]:

式中:Lcls为分类损失,指的是RPN在预测anchor时分类是否正确的二分类平均交叉熵损失;
Lbox为边界框回归损失,指的是每个边界框结果与真实边界框之间各个偏移量之和的平均交叉熵损失;
Lmask为掩膜预测损失,将每个预测掩膜与人工标注前景各像素进行比较,其结果经过sigmoid 函数,最后计算平均交叉熵损失.

为了解决小样本数据集训练效果较差、收敛时间较长的问题,引入迁移学习的思想.迁移学习是指使用现有数据集,对为实现其他任务而训练得到的深度学习模型的各项参数进行微调(fine-tuning)得到目标模型[19].与传统训练方法相比,迁移学习可以减少模型训练所需时间,加速模型收敛速度,在使用样本数量较小的数据集进行训练时可有效避免模型的过拟合.利用MS COCO(Microsoft Common Ob⁃jects in Context)数据集上预训练好的参数模型对Mask R-CNN 进行初始化,结合完成标注的番茄茎秆分类数据集对整个网络层进行微调,获取番茄茎秆分类模型.

1.2.2 基于最小外接矩提取算法的Mask分支改进

Mask R-CNN 对目标进行像素级分割,在生成掩膜的同时生成Bbox 作为掩膜的边框.Bbox 内往往包含大量冗余的背景信息.通过调用Numpy、OpenCv_Python(cv2)中函数,对Mask R-CNN 网络三分支中的Mask 分支进行了改进,使模型生成掩膜的同时生成其最小外接矩.其中,一个凸多边形的最小外接矩是指外接该凸多边形且面积最小的矩形.使用最小外接矩作为掩膜的新边框可有效减少边框内的背景信息,更为精确地反映茎秆掩膜的轮廓和位置.

Mask 分支掩膜最小外接矩提取算法流程如图4所示.首先,针对输入Mask 分支的每个RoI 生成掩模二值图,对每张二值图的尺寸进行调整并将其映射到一幅空白图像上.然后,提取每幅图像中掩膜的坐标,据此生成其最小外接矩坐标.最后,将掩膜及其最小外接矩绘制到原图像中,得到一幅含掩膜及其最小外接矩的预测图像.

图4 掩膜最小外接矩提取算法流程Fig.4 Algorithm for the extraction of the minimum external moment of masks

为比较Mask 分支改进前后掩膜边框的精确性差异,提出了一种掩膜面积与其边框面积比的评价指标Re,如式(2)所示:

式中:N为测试集中被模型识别出的目标数;
SMask(i)为第i个目标对应掩膜的面积,其中1≤i≤N;
SRect(i)为第i个目标的掩膜边框面积.

1.2.3 像素级Mask R-CNN性能评价指标

当前实例分割评价指标多为基于交并比IOU(Intersection over Union)的目标级评价指标,IOU 计算如式(3)和图5所示:

图5 IOU计算原理Fig.5 The calculation principle of IOU

式中:SD∩G为图中D与G的交集面积;
SD为图中D的面积;
SG为 图中G的面积.

IOU 计算完成后对其大小进行判定,若其大于预设阈值且预测对象与真实对象标签一致,则该对象预测正确.根据预测正确的对象数目计算模型的精确率、召回率、F1值等目标级评价指标[20-22].目标级评价指标适用于目标检测深度学习模型的性能评估,但无法准确评价实例分割深度学习模型性能.基于实例分割模型性能评价的关键是判断模型对目标区域分割的正确性,本文提出了像素级实例分 割模型评价指标,包括:像素精确率PP、像素召回率PR、像素F1值PF1score和像素平均正确率PAP,分别如 式(4)~(7)所示.

式中:PTP为掩膜的真阳性像素数,表示和人工标注前景重合的掩膜像素数;
PFP为掩膜的假阳性像素数,表示背景被误判为前景的掩膜像素数;
PFN为掩膜的假阴性像素数,表示前景被误判为背景的掩膜像素数.

式中:M为测试图像数目.

为评价多类别对象实例分割模型的性能,基于目标级全类平均正确率mAP提出了像素级全类平均正确率PmAP.当模型识别对象仅有1 种类别时,PAP和PmAP等价.

1.2.4 Mask R-CNN分类模型训练

夜间番茄茎秆分类模型训练步骤如下:

1)设置模型配置参数,包括RPN 的anchor 尺度、学习率、迭代步长等.

2)加载预训练好的MS COCO 模型参数,开始 训练.根据模型损失值loss 的变化规律,重复步骤1)~2)直至得到最优配置参数.

3)以夜间茎秆分类训练集对Mask R-CNN 模型进行迭代,每进行完1 轮迭代后输出模型当前的损失值loss和权重文件.迭代100轮后,完成训练.

4)使用测试集对模型性能进行测试.

最优模型参数设置为:模型训练的学习率为0.001,动量因子为0.9,权重衰减系数为0.000 1,每轮迭代步长为506,Batch Size 为2.RPN 的anchor 尺度为8、16、32、64和128.

日间茎秆分类模型使用日间茎秆数据集进行训练与测试,其训练步骤和参数设置均与夜间茎秆分类模型相同.

2.1 基于像素级评价指标的分类性能分析

为验证像素级评价指标的有效性,以夜间番茄茎秆分类测试集图像为例进行分析.测试图像、预测结果及人工标注的茎秆分类真实结果Ground Truth的对比如图6所示.

图6 测试图像、预测结果及Ground Truth二值图对比Fig.6 Comparison of test image,predicted image,and binary image of Ground Truth

由人工定性评价图6(b)和图6(c)可见,模型对于该图像茎秆的分类效果较好.分别使用目标级评价指标和像素级评价指标对图像预测结果进行评价,目标级F1值F1score 为30.30%,mAP 为30.20%,像素级F1值PF1score为70.23%,PmAP为67.99%.可见,像素级评价指标与定性评价结果一致性更高,能更精确地反映番茄茎秆分类模型性能.

为定量评价模型性能,分别使用夜间和日间茎秆分类数据集对模型进行测试,结果如表1 所示.可见:目标级评价指标值显著低于像素级评价指标值,结合图6,进一步验证了像素级评价指标的有效性;
像素召回率与像素精确率存在较大差距;
日间番茄茎秆分类模型的像素F1值和像素全类平均正确率均高于夜间分类模型,说明日间茎秆分类模型性能优于夜间分类模型.

为与其他分类模型进行性能对比,分别使用支持向量机SVM(Support Vector Machine)、基于迁移学习的YOLACT(You Only Look At CoefficienTs)训练番茄茎秆分类模型.支持向量机SVM是一类按监督学习方式对数据进行分类的广义线性分类器[23].YOLACT 在目标检测模型YOLO(You Only Look Once)的基础上添加Mask 分支,继承了YOLO 系列目标检测模型训练耗时短、识别速度快的优点[24].SVM 属于传统图像分割算法,无法使用目标级评价指标.对比表1 中的测试结果可见,Mask R-CNN 茎秆分类模型性能最优.茎秆分类错误包括漏识别、分割不精确和误识别,如图7所示.

表1 不同数据集茎秆分类试验结果Tab.1 Test results of stem classification of different data sets

漏识别,即未识别出茎秆,如图7(a)所示;
分割不精确,即生成的掩膜未精确地覆盖茎秆,如图7(b)所示;
误识别,即茎秆识别错误,包括将背景识别为茎秆,将主茎识别为侧枝等,如图7(c)所示.分析原因,包括:

图7 识别与分割错误示例Fig.7 Examples of recognition and segmentation errors

1)番茄茎秆分类数据集中标注的茎秆对象数量庞大,不同茎秆对象,即使是同类茎秆,其长度、直径、形状、颜色、亮度、清晰度等存在较大差异,Mask R-CNN学习同类茎秆共同特征的难度极大.

2)图像中存在曝光和光照过暗茎秆区域.一方面,存在曝光或光照过暗的标注茎秆对象数目较少,使模型难以学习该类茎秆的特征.另一方面,曝光或光照过暗使得茎秆的颜色特征缺失,进而导致其大小、形状等特征也缺失,导致模型性能下降.

3)茎秆与叶片、未成熟果颜色差异小,且部分细长叶片区域与茎秆区域形状相似,部分图像背景中含非番茄绿色植株,增大了模型分类难度.

4)茎秆区域光照不均匀,使同一茎秆不同区域颜色特征存在较大差异,造成部分茎秆区域被误判为背景,产生分割不精确的错误.

为检验番茄茎秆分类模型对不同类茎秆的分类性能,分别使用夜间和日间茎秆分类模型对相应测试集中的2类茎秆进行检测,结果如表2所示.

表2 测试集不同种类茎秆分类试验结果Tab.2 Classification results of different types of stalks in the test set

由表2 可知,无论是夜间还是日间茎秆分类模型,主茎分类性能均优于侧枝.此外,日间茎秆分类模型对主茎的分类性能优于夜间模型,对侧枝的分类性能较差,可能原因如下:

1)主茎较粗,生长方向竖直向上,特征明显.日间光照充足且相对均匀,降低了主茎分类难度.

2)侧枝较细,生长方向具有随机性,难以学习其共同特征.日间图像中含有大量绿色非番茄植株,增大了模型对侧枝的分类难度.

为测试在不同光照条件下的茎秆分类模型性能,将测试集按照光照条件进行划分,使用茎秆分类模型进行测试,结果如表3所示.

表3 不同图像采集条件下茎秆分类试验结果Tab.3 Test results of stem classification under different image acquisition

由表3 可见,对于夜间茎秆分类模型,1W LED条件下的茎秆分类性能更优.可能是由于相较于2W LED,1W LED 条件下茎秆表面照度适中,曝光区较少,降低了模型对主茎和侧枝的分类难度.

为验证夜间茎秆分类模型在不同光照条件下的泛化能力,测试了模型对1W LED 四角布局(ACDF)光照条件下采集的63 幅图像的茎秆分类性能,结果如表3 所示.可见,在该光照条件下,模型分类性能与1W LED 对角布局光照条件相近.该结果表明模型在不同的光照条件下具有一定的泛化能力.

对于日间茎秆分类模型,当图像采集时间段为9:00―11:00 时,像素F1值和像素全类平均正确率 要优于其他时间段采集的图像.可能原因为:在 9:00―11:00 时段,由于太阳持续升高,光照逐渐变强却不强烈,为茎秆表面提供了适宜光照,从而减少了茎秆区域的曝光和阴影,为模型提供了更多的茎秆特征.

2.2 基于掩膜边框精确率的性能分析

Mask 分支改进前后模型预测结果对比如图8 所示.使用Re对改进前后模型的掩膜边框精确率进行评估,结果如表4所示.

表4 Mask分支改进前后不同数据集掩膜边框精确率对比Tab.4 Comparison of mask border accuracy of different datasets before and after Mask branch improvement

结合图8 与表4 可知,改进后茎秆分类模型的Re有了显著提升,预测结果内包含的无用背景信息显著减少,掩膜边框的精确率有了明显提升.

图8 Mask分支改进前后模型预测结果对比Fig.8 Comparison of model prediction results before and after Mask branch improvement

由表4 可知,夜间茎秆分类模型的掩膜边框精确率优于日间,可能原因是日间茎秆分类模型的分割不精确问题较夜间严重,对茎秆掩膜生成最小外接矩作为新边框时,框内包含较多背景信息,导致日间茎秆分类模型的Re相对较差.

2.3 实时性能分析

以夜间茎秆分类测试集的100 幅图像对夜间茎秆分类模型的实时性进行测试.共计耗时30.20 s,平均每幅图像耗时0.31 s,其中最长耗时为0.39 s,最短耗时为0.26 s,说明本文提出的番茄茎秆分类模型具有较强的实时性.

本研究对日间、夜间相互贯通、形状呈细长的近似直线或不规则弧线、与叶片等背景颜色相近的目标分类方法研究具有参考价值,可为剪枝机器人的研发提供方法基础,主要结论如下:

1)对Mask R-CNN 模型的Mask 分支进行了改进,使模型在生成掩膜的同时生成最小外接矩,可有效减少分割结果中冗余的背景.

2)基于迁移学习训练的日间、夜间番茄茎秆分类模型,可实现日间、夜间番茄主茎和侧枝的正确分类.

3)与常用的目标级评价指标相比,像素级评价指标和掩膜边框精确率评价指标Re可更准确地评价实例分割模型的综合性能.

猜你喜欢掩膜主茎茎秆不同来源小麦品种主要产量性状的比较分析安徽农业科学(2022年19期)2022-10-29金荞麦收集系株型相关性状遗传变异分析安徽农业大学学报(2022年3期)2022-10-25利用掩膜和单应矩阵提高LK光流追踪效果导航定位学报(2022年5期)2022-10-13水稻茎秆接触物理参数测定与离散元仿真标定江西农业大学学报(2022年3期)2022-07-07甘蓝型油菜双主茎YD 4899的选育及表型性状比较分析种子(2021年7期)2021-08-19宽周期掩膜法HVPE侧向外延自支撑GaN的研究人工晶体学报(2021年3期)2021-04-17谷子茎秆切割力学特性试验与分析农业机械学报(2019年4期)2019-04-29施肥量与施肥频率对紫花苜蓿茎秆直径及长度的影响畜牧与饲料科学(2018年5期)2018-06-13光纤激光掩膜微细电解复合加工装置研发制造技术与机床(2017年10期)2017-11-28马铃薯品种‘荷兰15号’主茎密度与植株性状及块茎产量的关系中国马铃薯(2017年1期)2017-03-02推荐访问:番茄 改进 方法
上一篇:黔南州动物防疫社会化服务的探索
下一篇:“一点二源”适应性护理策略对糖尿病肾病患者疗效及生活质量的影响

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有