基于Mask R-CNN的单株柑橘树冠识别与分割

2021-06-09 09:49韩娜娜吕程序毛文华李沐桐
农业机械学报 2021年5期
关键词:树冠单株柑橘

王 辉 韩娜娜 吕程序 毛文华 李沐桐 李 林

(1.中国农业机械化科学研究院土壤植物机器系统技术国家重点实验室,北京 100083;2.广东省现代农业装备研究所,广州 510630;3.江苏大学农业工程学院,镇江 212013)

0 引言

精准管理是现代果业发展的必然趋势,其关键在于根据果园的果树个体差异,定位、定时、定量开展农事作业。冠层尺寸或三维体积是精准管理中非常重要的参数,可为对靶喷药、病虫害防护、作物长势识别与预估等提供重要依据,对管控化学药品过量投入、高效利用农业资源、提高果园生产效益具有重要意义[1]。

我国大多数果园处于非标准化经营状态,同一果园中果树的冠形、间距、树龄、树高等均不相同[2],果园地形多变、种植密度不确定,这些都增加了在复杂果园背景中快速识别并分割单株果树冠层的难度。目前,果树树冠识别与分割包括超声波[3-4]、激光雷达[5-6]、多光谱[7-8]、机器视觉和图像处理[9-10]等方法。虽然这些方法可精准识别分割单株树冠,但是超声波的识别结果易受到地形的影响,激光雷达和多光谱方法的硬件成本较高,因此一些学者尝试利用低成本的机器视觉和图像处理方法来进行果树树冠的识别和分割。传统图像处理方法分割复杂果园背景中目标的识别精度不能满足精准果园作业需求,研究表明,深度学习方法可高精度识别果园复杂环境中的树枝和果实[11-15]。但目前对单株果树冠层相关分割方法的研究较少。

Mask R-CNN是文献[16]提出的对复杂背景中目标进行检测与分割的卷积神经网络模型,该模型采用特征金字塔网络(Feature pyramid networks, FPN)[17]与Anchor技术优化不同尺度目标的检测效果,并结合全卷积网络(Fully convolutional networks, FCN)[18],从而实现目标的精准分割。Mask R-CNN是先由区域推荐网络产生兴趣区域,而后进行对象检测和分割的两步探测器。该方法检测准确率高、分割速度快,在复杂果园环境下具有准确检测目标树冠、精准分割冠层的潜力。

本文构建单株树冠的Mask R-CNN识别与分割模型,并从预测准确率、精确率、召回率、平均精度、扩展性等方面对模型进行评估,分析影响模型性能的关键因素,提出模型改进及应用建议,以期实现柑橘单株树冠的精准识别。

1 材料与方法

1.1 图像采集

本文设计的图像采集平台如图1a所示,将ZED stereo(Stereolabs)相机搭载在手推车上,离地高度为80 cm,与地面平行,采集的图像存储于计算机中。相机参数为视频模式720P、60 f/s、单目分辨率1 280像素×720像素、深度范围0.5~20 m,计算机配置为Windows 10、CORE i7、8 GB内存、NVIDIA GeForce 940MX。图像采集于广东省广州市从化区和江门市新会区2个柑橘种植园,采集时间为2019年11月,采集距离保持在90~130 cm,采集天气晴朗,采集场景如图1b所示。广州市从化区的柑橘品种为玫瑰柑,果园地形为丘陵,树形为自然圆头形;江门市新会区柑橘品种为新会柑,果园地形为坡地,树形为自然开心形。

1.2 数据集构建

从化区果园(果园1)地形复杂、杂草茂密,单株树冠识别难度较大,共采集柑橘图像1 700幅,构建了数据集D1,其中1 200幅图像用于模型训练,200幅用于模型验证,300 幅用于模型测试。为了测试模型的适应性,在新会区果园(果园2)采集了柑橘图像500幅,构建了数据集D2,只用于模型测试,未参与模型训练。为了对比数据集参与建模与未参与建模对识别结果的影响,构建了数据集D3,训练集1 400幅图像,包含果园1图像1 200幅、果园2图像200幅;验证集只包含果园1图像200幅;测试集只包含果园2图像300幅。数据集结构如表1所示。

表1 数据集结构

柑橘图像采用 LabelMe[19]进行人工手动标注,生成json标签文件。本文主要针对当前作业的柑橘树冠(目标树冠)进行识别分割,因此在标签制作时只考虑将柑橘图像分为目标树冠与背景两类,只需标注目标树冠即可,图像其他部分LabelMe自动标注为背景。标记结果如图2所示。

1.3 基于柑橘树冠识别与分割算法

基于Mask R-CNN的柑橘树冠识别与分割算法主要由两部分组成:①利用Mask R-CNN网络识别分割图像中的树冠;由于单株树冠背景复杂,图像中不止一株树冠,模型可能会识别出多株树冠。②过滤多余的非目标树冠,计算每株树冠的面积,面积最大的树冠即为目标树冠。算法流程如图3所示。

1.3.1Mask R-CNN网络

Mask R-CNN由特征提取网络、区域推荐网络(Region proposal network, RPN)、感兴趣对齐层(RoIAlign)、目标检测和分割4部分组成。将采集的柑橘园图像数据,首先利用卷积神经网络提取特征,然后RPN推荐可能存在目标的候选框(Region of interest, RoI),RoIAlign将RoI映射成固定尺寸的特征图,特征图通过检测分支的全连接层进行分类和边界框回归,通过分割分支的FCN进行上采样得到分割图。

特征提取网络利用卷积神经网络进行单株树冠特征提取和组合。特征提取选用ResNet101[20-21],特征深度分为5个阶段,得到特征图C1~C5,并输入特征组合阶段。特征组合选用FPN,特征C1~C5组合生成特征图P2~P6。组合方式如图4所示。

RPN利用Anchor技术在P2~P6每层中产生不同尺度和长宽比的多个RoI,输出每个RoI的目标与背景的置信度、边界框的4个坐标修正值,完成一次边界框修正。根据置信度和非极大值抑制算法(Non-maximum suppression, NMS)[22]选出较为精准的RoI输入到RoIAlign。

RoIAlign主要作用是将特征图中的RoI池化为固定尺寸的特征图。RoIAlign将RoI划分为7×7个单元,每个单元的像素由原图四周真实像素利用双线性插值计算该点像素。整个过程中没有用到量化操作,原图像素和特征图像素是完全对齐的,与Faster R-CNN[23]中的RoIPooling相比,避免了两次量化导致RoI与原位置产生偏差,提高了目标检测和分割准确率。

目标检测与分割是对RoIAlign输出的固定尺寸的特征图进行分类、回归和分割。检测分支产生每个RoI的类别和边界框坐标信息;分割分支针对每个RoI产生K个分辨率为m×m的二值掩膜,K为分类物体的种类数目。Mask R-CNN损失函数Lloss表示为

Lloss=Lcls+Lbox+Lmask

(1)

式中,Lcls为分类损失值,Lbox为边界框回归损失值,Lmask为分割损失值,只计算分类结果所属类的损失。

1.3.2模型训练

试验平台操作系统为Ubuntu 19.04,GPU型号为GTX 1060、运行内存为8 GB,显存容量为6 GB。本文所有模型训练及测试都在此环境下运行。采用随机梯度下降(Stochastic gradient descent, SGD)训练Mask R-CNN模型(数据集为D1),模型训练具体流程如下:①加载训练集和验证集图像数据,建立原图像和标签的对应关系。②修改模型配置参数,包括图像分类数目、图像输入尺寸、RPN的Anchor尺度、学习率、步长等参数。③加载Microsoft COCO数据集预训练模型。④设置迭代次数,训练模型并利用验证集验证模型的损失值。⑤根据训练集和验证集损失值,重复步骤②~④,得到最优模型。⑥利用最优模型对测试集中的柑橘树冠进行预测,计算树冠的面积,过滤非目标树冠。⑦根据目标树冠计算评价指标,评估模型性能。

最优模型的参数设置为:学习率为0.001、权重衰减率为0.000 1、动量值为0.9、IoU为0.7、迭代轮数为100(每轮100次),RPN的Anchor尺度为48、96、192、384、768。

1.4 模型评估

为了研究预测树冠与标注树冠之间的匹配程度,采用准确率(Accuracy,A)、精确率(Precision,P)、召回率(Recall,R)、调和平均数(F1score)作为评价指标[24],计算公式为

(2)

(3)

(4)

(5)

式中Tc——图像中预测树冠与标注树冠匹配像素数

Tb——图像中预测背景与真实背景匹配像素数

N——图像像素总数

Np——图像中预测树冠像素数

Nt——图像中标注树冠像素数

2 结果与分析

2.1 参与建模与未参与建模果园的预测结果对比

用构建的模型对数据集D1和D2测试集中的柑橘树冠进行预测,根据树冠面积过滤非目标树冠,过滤前后对比如图5所示。由图5可以看出,过滤前图像中识别出多个树冠,过滤后可以得到目标树冠。根据目标树冠的识别和分割结果计算准确率、精确率、召回率和调和平均数,如表2所示。由表2可以得出,D1测试集的准确率、精确率和召回率均达到91%以上,表明模型可实现参与建模果园的单株树冠的精准识别与分割;数据集D2未参与建模,并且与D1在地理位置、地形、柑橘品种和树形等方面存在一定的差异,但是D2测试集的单株树冠准确率、精确率和召回率均在84%~89%之间,略低于D1,本测试集结果表明模型对于不同果园环境的单株树冠识别分割具有一定的适应性,可实现未参与建模果园的单株树冠的精准识别与分割。模型对D1和D2测试集中的单幅图像识别时间均为0.26 s,因此可满足对靶喷药、病虫害防护、作物长势识别等作业的实时性要求。

表2 参与建模和未参与建模果园的预测结果

为了进一步对比参与建模与未参与建模果园图像的识别结果,利用数据集D3重新训练模型,模型参数与最优模型保持一致。用构建的新模型对D3的300幅测试集图像中的柑橘树冠进行预测,结果如表2所示,相较于数据集D2的准确率提高了4个百分点,精确率和调和平均数提高了3个百分点,召回率提高了2个百分点。此结果表明果园参与建模可获得更好的识别效果,应使模型训练集尽可能包含不同的果园,增加数据多样性。

综上所述,参与建模果园与未参与建模果园相比,单株树冠预测结果的准确率、精确率和召回率高,识别分割效果更好。因此,后续研究中将增加模型训练集数据多样性,包括品种、季节、高度、树龄、采集时间、相机角度等,尽可能使类似预测的数据存在于数据集中。针对模型用于指定果园作业的情况,后续在建模过程中增加作业果园图像,以提高模型识别和分割性能。

2.2 与SegNet模型预测结果对比

SegNet[25]与Mask R-CNN同样是基于FCN的语义分割网络,结构简单,在道路场景分割、行人检测和工件缺陷检测等任务中有较高的准确率,因此将SegNet模型对树冠识别效果与本文对比。SegNet主要包括编码(Encoder)和解码(Decoder)2个过程。在Encoder过程中,利用卷积进行下采样提取特征;在Decoder过程中,利用卷积进行上采样,变大图像丰富信息,使得在Pooling过程丢失的信息可以通过学习在Decoder中得到。SegNet中的卷积与传统CNN的卷积并没有区别。2种模型识别结果如图6所示,SegNet模型背景的误识别区域更多。

表3为本文模型和SegNet模型在数据集D1和D2测试集上的评价指标结果,SegNet模型的召回率高于精确率,进一步说明SegNet模型更容易将背景误识别为目标树冠;并且与本文模型相比准确率、精确率、召回率低约5个百分点,识别分割效果略差,表明本文模型相较于SegNet模型有更好的识别分割效果。

表3 2种模型评价指标结果对比

2.3 模型影响因素分析

通过对准确率和调和平均数较低图像的共性分析,确定模型的影响因素。准确率和调和平均数较低图像(图7)的共性主要有2点:①图像树冠中树枝暴露、叶片较少,健康状态欠佳。②非目标树冠占比较多,目标树冠边缘不明显,且由于图像光线暗、饱和度低,人工标注目标树冠难度已较大。因此,模型的影响因素为树冠形态、非目标树冠占比、光线强度。图像中目标树冠和非目标树冠深度信息有所不同,在接下来的研究中将尝试利用3D相机,结合图像深度信息,提高单株树冠识别准确率。

3 结论

(1)构建的基于Mask R-CNN单株树冠的识别与分割模型,能精准快速识别并分割复杂环境下的单株柑橘树冠,基本上可满足果园精准作业过程中的树冠识别要求。分割参与建模的果园树冠,准确率为97%,识别时间为0.26 s。该模型对不同品种、不同环境的果园具有一定的适应性,对未参与建模的新柑橘品种和不同地貌环境的果园预测准确率为89%。

(2)与SegNet模型相比,本文模型准确率、精确率和召回率均高约5个百分点,说明在非目标树冠较多的复杂果园图像中具有较好的识别分割效果。

(3)所建模型的影响因素为树冠形态、非目标树冠占比以及光线强度。在后续研究中将利用3D相机,结合图像深度信息,进一步提高单株树冠识别准确率。

猜你喜欢
树冠单株柑橘
无为市太平山枫香树不同单株叶片性状多样性分析
影响间作马铃薯单株块茎产量的主要农艺性状
柑橘家族
树冠羞避是什么原理?
榕树
福鼎大白茶有性系后代优良单株品比试验初报
树冠
5TR—20型水稻单株单穗脱粒机的设计
柑橘的秘密
一个早晨