基于深度学习的果树资源调查

2021-06-24 06:23陈佰鸿
林业机械与木工设备 2021年6期
关键词:全景图株数切片

史 浩, 冯 全*, 陈佰鸿

(1.甘肃农业大学机电工程学院,甘肃 兰州 730070;2.甘肃农业大学园艺学院,甘肃 兰州 730070)

白凤桃树作为一种优质的果树资源,是甘肃省兰州市的著名桃树品种。但从21世纪开始,随着城市建设的推进,白凤桃的种植面积逐年减少,桃树资源受到了很大的威胁,保护桃资源、桃文化和桃品牌迫在眉睫。进行白凤桃果树资源的常态性调查与监测,针对当地政府协调发展与保护的矛盾,制定科学合理的规划非常必要。目前对于白凤桃果树的种植面积一直都是依靠人力进行实地调查,效率低,费人费工,无法持续、动态地开展该项工作。而无人机遥感作为一种新型的调查工具,能够在复杂地形条件下获取遥感数据,具有高效、灵活的特点,能节省大量的人力和物力[1-2]。

对无人机拍摄的果树遥感影像中的果树进行准确地检测计数是非常具有挑战性的工作,研究者通常采用分割或目标检测的方法。目前在计算机图像处理中分割和目标检测任务中普遍采用基于深度学习的方法。在图像分类、物体识别、行人检测、人脸识别等领域,都引入了深度学习技术且取得了很好的应用效果。在农林领域,深度学习广泛用于分类识别、病害识别与预测、生长信息监测等方面,大大提升了生产效率和产量[3-5]。也有研究者将深度学习应用在林果资源调查方面[6-8],李越帅等[9]利用U-net卷积神经网络对胡杨树株数进行提取,精度达93.29%,L等[10]利用CNN对研究区油棕树株数检测的准确率达到96%以上。

笔者将深度学习与无人机遥感技术相结合应用于果树资源调查,探索新型的资源调查方法。选取兰州市安宁区仁寿山白凤桃示范基地作为研究区,以白凤桃株树作为调查对象,利用无人机拍摄大量的影像数据,采用深度学习的方法,目标检测网络在图像中用边框给出果树的位置,判断其是否是白风桃,对判断类型正确的边框计数,从而获得研究区内桃树的具体数量。该方法是一种低成本、快速、准确的白凤桃株数统计方法,展示了深度学习和无人机遥感技术相结合在白风桃树资源调查领域中的强大潜力,该方法也可以推广到其他树种的资源调查,以减轻调查人员负担,提高工作效率。

1 研究区概况和数据获取

1.1 研究基地概况

甘肃省兰州市安宁区位于甘肃省中部,地处黄河兰州段河谷,地势南低北高,大陆性气候显著,区内森林覆盖率达43.4%,不仅拥有秀丽的自然风光和众多的人文景观,而且还是全国十大产桃基地之一,享有“十里桃乡”的美誉,其中国白凤桃示范基地(36°8′21.41″N~36°8′24.74″N,36°8′21.41″N~36°8′24.74″N)位于安宁区仁寿山风景区,基地属于浅山温和半干燥气候区,四季分明,光照较充足,降水少,蒸发量较大,气候干燥,年降水量350 mm,年蒸发量1 664 mm,年日照时数2 476.4 h,如图1所示。

1.2 无人机数据获取

采用大疆MAVIC AIR无人机作为数据采集平台,其上搭载一颗1 200万像素的摄像头,CMOS尺寸为1/2.3英寸,等效焦距为24 mm,像幅尺寸为4 048×2 272。数据采集时间为2020年10月16~23日。

2 研究方法

2.1 YOLOv3网络介绍

YOLOv3[11]是一种基于深度学习的目标检测网络,结构如图2所示。该算法的骨干网络为darknet53,由一系列1×1和3×3的卷积层组成,共有53个卷积层,并且在每个卷积层后面都有一个batch normalization层和Leaky Relu层。darknet53取消了全连接层和最大池化层,利用卷积和步长的改变来达到最大池化的目的,并且借鉴了FPN(feature pyramid networks)网络中对于多尺度融合的结构,引入了残差网络解决在训练模型时梯度消失和梯度爆炸的发生[12-13]。YOLOv3采用K-means聚类获取先验框的大小,在图片大小为416×416时,对于每种下采样尺寸预先设计了三种特征图尺寸13×13、26×26和52×52,并通过聚类得出COCO数据集上9种尺寸的先验框。这九种先验框分别是10×13、16×30、33×23、30×61、62×45、59×119、116×90、156×198和373×326,当检测目标具有较大的视野感时,优先采用较大的先验框,如116×90、156×198和373×326,当检测目标具有中等左右的视野感时,优先采用中等的先验框,如30×61、62×45和59×119,当检测目标具有较小的视野感时,优先采用较小的先验框,如10×13、16×30和33×23,然后通过多尺度融合结构使训练模型可以学习到更深层次的特征信息,利用YOLO层将学习到的特征信息进行类别判定和边界框预测,使用非极大值抑制(NMS)合并三种尺度下的预测结果,最后输出检测结果。

图2 YOLOv3网络结构

图2中,A×B×C表示长*宽*通道数,res代表残差网络块,后面的数字表示每个残差网络块具有的残差单元数量,concat表示连结,upsample表示上采样。

YOLOv3检测时首先将输入图片分成K×K个网格(grid),并且每个网格有三个预测框,若检测目标ground truth的中心坐标落在某个网格内,则这个网格就会对该目标进行检测,Darknet53中的卷积层将特征提取出来,每一个网格会预测多个边界框,每个边界框包含框的相对位置信息、相对尺寸信息和置信度评分。

2.2 YOLT3网络介绍

Adam在 YOLOv3的基础上对网络结构做修改,提出了YOLT3[14-15]。原来的YOLO网络结构是以32倍的比例下采样,并且返回了13×13的预测网格,如果检测对象之间的距离小于32个像素,则会导致检测目标的区分有问题,为了解决部分检测目标过于密集的问题,YOLT3下采样的比例由32变为16,当416×416的图像输入到网络中时,产生26×26的预测网格。为了提升对小目标检测的准确性,借鉴了Resnet中的表示映射,在网络中添加一个直通层,该层与倒数第二的卷积层连接起来,允许检测器访问扩展特征映射的细粒度特征,每一个卷积层后都是一个批归一化层,该层的激活函数是带泄露的修正线性单元,在网络的最后一层输出的是边框预测以及目标的类别,大小为:

Nf=Nboxes×(Nclasses+5)

(1)

式中:Nboxes为每个网格中所含框数量;Nclasses为检测目标的类别数。

在检测时,YOLT3使用OpenCV将测试图像分割成固定尺寸的切片,该尺寸是任意的,可以在程序中根据自己的实际进行调节,该切片过程通过滑动窗口实现,每张切片图像具有固定的重叠度,该重叠度也可由用户自己设置,程序对于每张切片图像进行检测。在每张切片图像检测完后,将所有的切片按照原来的位置拼接起来,但在重叠区域会出现检测重复的情况,为解决这个问题,YOLT3通过非极大值抑制方法减少重复检测现象。

3 试验结果与分析

3.1 试验环境

本次试验中计算机的CPU配置为Intel(R)Core(TM)i5-9400F CPU @ 2.90GHz,GPU为NVIDIA GeForce 2060Super 8 GB,内存为32 G,操作系统为Ubuntu16.04,软件环境为python3.6、CUDA Toolkit9.0、CUDNN7.3.0.29。

3.2 数据集

果树目标检测试验数据集是在40 m左右高度拍摄的,选取在白凤桃种植基地拍摄的1 000张图片,每张的图片都为4 048×2 272像素,按照4:1的比例,从1 000张图片中随机抽取750张图片作为训练集,剩下的250张图片作为测试集,并通过旋转、改变对比度、添加噪声、改变色相饱和度、改变曝光值等方式对数据集进行增广,使用Lableimg软件对数据集进行标注,标记的桃树图片数据集如图3所示。

用来测试白凤桃种植基地中桃树株数的图片分别在四个高度采集,分别是40 m、70 m、100 m和260 m的高度,利用DJI GS Pro软件对航线进行规划,每个高度布控的航点数分别为113个、40个、22个,最后使用Pix4Dmapper软件对图片进行正射校正,将40 m、70 m和100 m拍摄的图像拼接为三张全景图,260 m的图像已经能够覆盖到整片种植基地,不需要拼接就已经是一张全景图。其中,40 m高度的图像为18 877×17 409像素,分辨率为1.41 cm;70 m高度的图像为10 673×9 136像素,分辨率为2.49 cm;100 m高度的图像为7 861×6 147像素,分辨率为3.38 cm;260 m高度的图像为4 048×2 272像素,分辨率为6.57 cm。

3.3 模型训练

本研究分别对YOLOv3和YOLT3模型进行训练。训练前先修改配置文件,对输入图像进行预处理,解决训练数据集较小的问题,预处理方法有旋转、改变对比度、添加噪声、改变色相饱和度、改变曝光值等。YOLOv3和YOLT3均使用了在COCO数据集上的预训练权重,因为只有一类的原因,根据YOLO官方的建议,迭代次数为Nclass×2 000,其中Nclass为类别数,所以本次训练模型迭代次数设置为2 000次,其中batchsize设为32,subssion为8,初始学习率为0.001,并在epoch到达1 600和1 800时,学习率分别衰减为0.000 1和0.000 01,动量为0.9,权重衰减为0.000 5。

3.4 测试方法

设计了两种场景对检测效果进行评估:①按照通用目标检测常采用的AP(Average Precision)指标进行评价;②直接计数。

第1种场景的目的是对YOLOv3和YOLT3模型的检测效果进行对比研究。输入检测器的测试图像尺寸与训练图像一致,均为4 048×2 272像素。但由于YOLT3可以通过设置参数将图像切片,能在更高分辨率上做检测,而YOLOv3不行。为了公平起见,首先设置S1测试,YOLT3不做切片,与YOLOv3进行对比。其次,为了比较YOLT3切片方法比不做任何处理时检测性能的提升程度,设置了S2测试,每个切片图像尺寸为896×896,重叠度为50%。

第2种场景的目的是为了提供直观的果树计数效果,该测试在全景图上检测白粉桃树的株数,并与种植基地中实际的株数做比较。

3.5 评价指标

AP是通用目标检测任务的常规评价指标,综合了召回率和检测精度两个方面对检测效果进行评估,AP按照COCO的定义计算如下:

(2)

式中:R和P分别代表召回率和准确率;Ri和Pi分别为检测模型在测试数据集上测得P-R曲线上的点对,i∈{0,0.01,0.02…0.00,1.00 }。

准确率和召回率的公式分别为:

(3)

(4)

式中:P为准确率;R为召回率;TP为真实的正样本数;FP为虚假的正样本数;FN为虚假的负样本数。

3.6 试验结果与分析

在第1种场景下,对YOLOv3和YOLT3网络进行了果树检测效果对比研究,测试时两个网络的IoU都设置为0.5,Threshold(阈值)都为0.6,测试图片为250张。测试结果表明,在S1条件下,YOLOv3和YOLT3的AP分别是0.857、0.861,YOLT3高于YOLOv3,说明在无切片时,YOLT3对于较大尺寸图的目标检测改进方法有效。在S2条件下,YOLT3的AP值为0.890,即在设置896×896切片时,AP值提升了3.4%。S1条件下用YOLOv3、YOLT3对某局部区域桃树目标检测结果分别如图4和图5所示,图6为S2条件下使用YOLT3对同一区域中桃树检测的结果。

图4 基于YOLOv3的桃树检测

图5 基于YOLT3的桃树检测(S1)

图6 基于YOLT3的桃树检测(S2)

S1条件下用YOLOv3、YOLT3对某局部区域进行桃树目标检测,在图4椭圆圈出部分和图5中上部椭圆圈出部分,YOLOv3并没有检测出该部分的桃树,而YOLT3的检测效果明显优于YOLOv3,椭圆中的桃树与该局部区域中其他桃树相比,这部分桃树所占像素更少,即YOLT3对于小目标的检测更加优秀。在S1和S2条件下使用YOLT3对同一区域中桃树检测的结果进行对比,在图5下部和图6椭圆圈出部分,当果树之间距离较近、树冠重叠面积较大时,YOLT3在S2的条件下具有更好的检测效果,更加适合检测桃树之间比较拥挤的情况,图6箭头所指桃树部分,在S2条件下检出了比S1条件时更多的桃树。

鉴于上述结果,在第2种场景(全景图)的测试时,采用YOLT3(896×896图像切片)对研究区的桃树株树进行计数。分别对40 m、70 m、100 m以及260 m高度上拍摄的图像进行检测,比较不同分辨率对于桃树计数精度的影响。表1给出了整个桃树种植基地桃树株数的计数结果。

表1 不同高度种植基地全景图中桃树的计数结果

经过人工计数,该片白凤桃种植基地共种植2 518棵白凤桃树,使用YOLT3神经网络在40 m高度的全景图上检测的株数和准确率分别为2 237棵和88.84%。在资源调查实践中,通常树木的计数精度在80%~85%以上就可以满足要求,因此本方法对于树木资源调查是适用的。与40 m高度的检测效果相比,在70 m高度的全景图上检测的株数和检测率分别降低了376棵和14.93%,在100 m高度的全景图上检测的株数和检测率分别降低了848棵和33.68%,而在260 m高度的全景图上检测的株数和检测率分别降低了1 916棵和76.09%。

由于40 m高度的全景图拥有最高的分辨率,相应的YOLT3网络可以提取到的信息也是最多的,检测效果最好。随着飞行高度的增加,单株果树在图像中的分辨率逐步下降,计数精度也逐渐降低。在260 m高度时,全景图只有4 048×2 272像素,单株桃树最小面积约10个像素,只有40 m图像中最小果树面积的1/6,检测网络能够提取的信息很少,导致计数精度非常不理想。

本试验由于拍摄时间为深秋时分,有些桃树的叶子已经掉了大半多,而且叶片发黄发红,部分桃树的叶子甚至掉完,只剩枝干,树木与地表颜色接近,导致树木与背景区分性降低。此外,该种植区为梯田,地形起伏较大,处于下层的果树分辨率较低,也是导致检测精度下降的原因。

4 小结

本文基于深度学习的目标检测模型YOLT3对兰州市安宁区某桃树种植基地中白凤桃株数进行计数试验。该方法的最高精度达到了88.84%,可以满足实际应用的要求。试验表明,飞行高度对检测精度影响很大,要达到较高的计数精度,飞行高度不易过高。相对于传统的人工方法,本方法节省了大量的时间,提高了工作效率。该方法使用消费级无人机的相机拍摄图像,与激光雷达和高光谱相机相比,成本很低。

这种将深度学习和无人机遥感技术结合的方法,也可以推广到其他果树资源调查中,例如苹果树、橘子树、椰树等,可以快速、精准地掌握果树株数,对果园的精准化管理提供支持。

猜你喜欢
全景图株数切片
子午岭细裂槭天然分布及其重要性研究
新局势下5G网络切片技术的强化思考
5G网络切片技术增强研究
我院耐碳青霉烯类肠杆菌科细菌感染分布特点及耐药性分析
网络切片标准分析与发展现状
嫦娥四号月背之旅全景图
浅析5G网络切片安全
不同草种交播对春季冷暖季型草坪草消长的影响
巧解“植树问题”
环保概念股全景图