基于地基激光雷达数据和深度学习的Faster R-CNN的橡胶树个体分割
Posted fish小余儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于地基激光雷达数据和深度学习的Faster R-CNN的橡胶树个体分割相关的知识,希望对你有一定的参考价值。
Paper题目:Individual Rubber T ree Segmentation Based on Ground-Based LiDAR Data and Faster R-CNN of Deep Learning
Abstract
中国南方的橡胶树经常受到可能导致树体倾斜的自然干扰的影响。从扫描点云中对单个橡胶树进行准确的树冠分割是准确检索树参数的必要先决条件。本文以不同橡胶树无性系PR107、CATAS 7-20-59和CATAS 8-7-9三个样地为研究对象。通过基于地面的移动光探测和测距(LiDAR)数据采集,提出了一种基于扫描树干数据的体素化方法,并通过正面和横向投影变换生成深度图像(即通常用于深度学习的图像)每个体素中点云的长度为 8 m,宽度为 3 m。这些图像为深度学习中更快的基于区域的卷积神经网络(Faster R-CNN)提供了训练和测试样本。因此,Faster R-CNN 结合生成的训练样本(包含 802 个带有预先标记的躯干位置的深度图像)被训练为自动识别测试样本中的躯干位置,其中包含 359 个深度图像。最后,从测试样本中识别出的树干位置,通过反投影变换提取每个树干下部的点云,作为区域生长算法的种子点,完成橡胶树个体树冠的分割。与目视检查结果相比,当图像包含一个或两个树干或树干信息被树叶轻微遮挡时,我们的方法对测试样本的深度图像的识别率达到 100%。对于复杂的情况,即一张深度图像中有多个树干或重叠的树干,或者一个树干出现在两个相邻的深度图像中,我们的方法的识别准确率大于 90%。我们的工作代表了一种新方法,它将深度学习框架与点云处理相结合,用于基于地面移动 LiDAR 扫描数据的单个橡胶树树冠分割。
关键词:深度学习;树冠分割;地面移动激光雷达;橡胶树;更快的R-CNN
1. Introduction
橡胶树(Hevea brasiliensis Muell. Arg.)是热带地区广泛种植的硬木属,是天然橡胶和木材的重要来源。海南作为中国最大的橡胶生产基地,拥有近800万亩橡胶林,形成了最大的人工生态系统[1]。由于地理位置的原因,海南岛的树木经常受到台风和冷害的侵扰[2]。短时间发生的台风会造成严重的破坏,如树干和树枝折断和连根拔起。冷害通常伴随着橡胶园的长期次生危害,如树木枯死、树皮开裂、出血等[2]。为了确定橡胶树的抗风性能指标,培育强壮、抗风的品种,准确的橡胶树个体分割算法对于获取不同无性系橡胶树的结构参数和动态变化信息是必不可少的[3]。
橡胶树(Hevea brasiliensis Muell. Arg.)是热带地区广泛种植的硬木属,是天然橡胶和木材的重要来源。海南作为中国最大的橡胶生产基地,拥有近800万亩橡胶林,形成了最大的人工生态系统[1]。由于地理位置的原因,海南岛的树木经常受到台风和冷害的侵扰[2]。短时间发生的台风会造成严重的破坏,如树干和树枝折断和连根拔起。冷害通常伴随着橡胶园的长期次生危害,如树木枯死、树皮开裂、出血等[2]。为了确定橡胶树的抗风性能指标,培育强壮、抗风的品种,准确的橡胶树个体分割算法对于获取不同无性系橡胶树的结构参数和动态变化信息是必不可少的[3]。
基于上述不同扫描模式获得的数据,提出了一系列个体树分割方法,这些方法根据扫描模式的不同可分为两类:基于(1)ALS数据的个体树分割和(2) TLS 或 MLS 数据。基于 ALS 数据,通过计算树冠高度的局部最大值,提取树木上部器官的特征(例如,树冠顶部或树冠形状),已经做出了一些努力来提取个体树木模型 (CHM) [6] 或散点云 [7]。图像处理算法已广泛用于分割单个树冠并定位局部最大值以定义树顶的位置,例如均值漂移算法[8]、K-均值聚类[9]、区域生长算法[10]、和分水岭算法[11]。此外,其他源自计算机科学的概念,如体素化[12]、图切割算法[13]、自适应大小窗口滤波[14]、多级形态学活动轮廓法[15]、关于时频分解的小波变换[16] 和拓扑关系分析方法 [17] 也被扩展到从 ALS 数据中描绘树冠。对于其他基于TLS和MLS数据的方法,以树下部(如树干)的树器官为基本元素,完成个体树的分割。例如,随机样本一致性(RANSAC)算法和圆的霍夫变换已采用检测来识别树干的水平横截面并确定树干位置 [18,19]。拓扑方法(例如,比较最短路径算法 [20] 或从根点开始的体素尺度标记邻域搜索 [21])已被用于描述树木非光合作用成分的结构,而基于最小二乘拟合在树干的点云上,已被用于检索树木的生长方向和树冠的中心 [22]。最后,利用形态学方法[23]的旋转门示意图模式,自动识别MLS数据中的树冠,同时排除电线杆和建筑物的干扰。
尽管学者们提出了多种单树分割方法,但基于 ALS 和 MLS 数据的准确单树冠分割仍然需要进一步改进,特别是对于树冠极不规则且经常严重交叉的生态林。同时,出现了两个不同的问题:(1)研究树木因常年遭受飓风灾害而导致的木材结构变形;(2)现有方法(即霍夫变换)检测到的一般圆圈不适用于某些情况具有椭圆形或不规则形状的水平横截面的树干或源自树干的野生树枝或小叶的并发症。因此,现有模型根据地面移动 LiDAR 数据提供准确的个体树木分割的稳健性、通用性和能力需要进一步研究。
深度学习是机器学习的一个新领域,它起源于人工神经网络。与支持向量机 [24] 或神经网络 [25] 等机器学习方法不同,深度学习具有更复杂的网络结构,并利用多种尺寸的卷积神庙执行固有图像分解的任务,并完成迭代后向或前向传播以调整神经元的权重。同时,深度学习设计预测边界框(锚点)并将这些框与从大量训练样本中导出的地面真实数据进行比较,并评估损失函数的各种梯度以自动识别目标位置。深度学习方法采用特殊的网络模型结构,学习海量图像的内部特征,与人工设计程序中提取单一特征相比,可以提高图像识别和分类的准确性和稳定性[26]。卷积神经网络( CNN) [27] 作为深度学习框架中最常用于分析视觉图像的方法,与其他图像分类算法相比,使用相对较少的预处理,学习海量图像的内部特征,而不是单一的人工设计的特征。因此,CNN 在一些基于图像的表型识别任务中实现了最先进的性能,例如蔬菜分类 [28]、识别西红柿的成熟度水平 [29]、分割单个玉米植物 [30] 和检测植物病[31]。
在本文中,提出了一种新的个体树分割方法结合Faster R-CNN的深度学习方法。本文的研究目标主要包括:(1)利用地基移动激光雷达对三个不同无性系的橡胶树林样地进行数据采集; (2) 应用体素化方法和投影策略将橡胶树树干的3D扫描点转换为深度图像(即深度学习的Faster R-CNN投影策略生成的图像); (3) 通过训练和测试 Faster R-CNN 对许多橡胶树的扫描点进行体素化生成的许多深度图像上的橡胶树树干定位; (4) 基于检测到的扫描树干点和区域生长算法对个体树进行分割。我们的方法使用深度学习的概念,通过大训练样本分析提供强大的识别能力,自动识别树干信息,而不受倾斜的树干或野生树枝或树叶的影响。我们方法的工作流程如图 1 所示。
图 1. 基于深度学习的个体树分割方法的工作流程概述
2. Materials and Methods
2.1. Study Area
研究区位于海南省儋州市中国热带农业科学院橡胶研究所试验站(19°32047.89” N,109°28029.33” E)(图2)。作为中国最大的橡胶生产基地,海南岛属热带季风气候,5-10月为雨季,11-4月为旱季。年平均降水量为1815毫米,年平均气温约为23.2℃。这种气候有利于农业发展,橡胶树的种植在该地区不断增加。该种植园自1957年建立以来,开垦了5000多公顷的耕地和热带雨林。60多年来,海南岛遭受了100多次飓风袭击,一次飓风发生的时间虽然很短,但这些风暴造成了严重的初级损伤,如树干和树枝折断和连根拔起。如图2所示,橡胶树PR107(橡胶林样地(1))、橡胶树CATAS 7-20-59(橡胶林样地(2))和橡胶树CATAS 8-7-9(橡胶林样地)三个树无性系(3)、在橡胶树人工林中选取典型树种进行试验。
创建了三个橡胶林地块的三个子集,并将其用作后续实验的训练地点。每个子集包含约 0.6 × 0.6 km 的区域,代表相应的橡胶林地块,三个子集内的树高测量于 2016 年 2 月 11 日使用 Vertex IV 测压计(Haglöf,Långsele,瑞典)进行。此外,我们从三个森林地块中选择了另外三个子集(与用作训练地点的子集不相交),每个子集由大约0.3×0.6 km的区域组成,用作测试地点.
图 2 研究区概况。左图:研究区的位置和中国海南岛儋州实验农场内的三个橡胶林地块。中:从谷歌地球获取的遥感图像,其中不同颜色的矩形标记了不同橡胶林地块的边缘,蓝色虚线代表使用地面光探测和测距(LiDAR)的测量路线。右图:照片显示了我们使用便携式移动激光雷达在橡胶林地块中进行扫描的过程。
2.2. Laser Data Acquisition
LiDAR 数据于 2016 年 10 月 10 日使用 Velodyne HDL-32E 激光扫描仪测量(表 1)。实验者部署了 Velodyne HDL-32E 扫描系统,将扫描仪设置为“连拍模式”来采集数据。调查路线被编程为遵循预定的矩形平行计划,该计划旨在覆盖三个研究地点,由于复杂的地形,实验者以大约 0.5 m/s 的速度追踪调查线(图 1 中的蓝色虚线)橡胶树种植园,因为实验者需要携带沉重的扫描仪。由于Velodyne HDL-32E传感器在工作模式下持续发射激光束,而实验者在追踪测量线时,在加载激光扫描仪时平台运行速度较慢时,获得的扫描透视图更多,扫描数据的密度更高。 Velodyne采用LiDAR技术,结合GPS提供的激光回波实时参考,自动生成带空间坐标的点云。 Velodyne LiDAR系统将激光扫描与SLAM(同步定位与建图)技术相结合[32],快速完成每次扫描的配准,为每个目标橡胶林地块生成高密度点云。
表 1. Velodyne HDL-32E 的规格。
2.3. Data Pre-Processing
来自激光扫描仪扫描的实验地块的点云数据首先使用布料模拟过滤(CSF)[33]地面过滤方法分类为地上点和地面点。橡胶树树冠经常相交,严重影响了该区域的生长结果。因此,本研究对试验田地上点进行木叶分离操作[34],旨在将LiDAR点分为木材和树叶图 3 为 3 种橡胶树无性系中几种典型树种的放大木叶分离结果,其中分类叶点用绿色表示,分类木点用深红色表示。
图 3. 三个橡胶森林地块的数据预处理和多角度投影结果:(a) 克隆 PR107,(b) CATAS 7-20-59 和 © CATAS 8-7-9。左:三个林地典型树木扫描数据的木叶分类结果,其中分类的叶点用绿色表示,分类的木点用深红色表示。中:三个林地样地典型树木的体素化,体素的长宽根据实际株距设置,体素的高度根据三个橡胶树无性系的冠基高设置。右图:使用三个森林地块中树木下部扫描点的正面和横向投影生成的深度图像。
本文研究的人工橡胶林具有相似的树龄、株距和林分结构。因此,计算冠基高度相对容易。为了生成躯干的二维图像,对这三个训练点的躯干点云进行体素化操作。人工橡胶林的行距和行距一般约为6~8 m和2.8~3 m。因此,在体素化过程中,我们定义了长度为 8 m、宽度为 3 m 的体素。同时,根据三个橡胶树无性系的冠基高度,对三个训练点设置不同的体素高度。
体素化后,三个训练点的所有激光点都被分配到相应的体素 V。如图 3 所示,对于每个体素 vi(vi ∈ V),通过从 Y 轴投影生成两个相应的深度图像正方向和 X 轴正方向。来自三个训练点的扫描点生成的深度图像数量分别为 233、268 和 301(表 2)。所有这些图像都用于构建用于训练 Faster R-CNN [35] 模型的训练集,以学习深度图像中的橡胶树树干位置。
表 2. 收集到的数据和算法相关参数的详细描述。
2.4. Faster R-CNN
采用更快的 R-CNN 从每个深度图像中识别树干的位置,它由两个 CNN 组成,即提出区域的区域建议网络(RPN)和基于区域的快速 CNN(Fast R-CNN)检测使用建议区域的网络。 RPN 从图像中的随机区域采样信息作为建议区域,并训练它们以确定可能包含目标的区域 [36]。 Fast R-CNN 检测网络进一步处理 RPN 网络收集的区域信息,确定区域内的目标类别,并精确调整该区域的大小,以定位目标在图像中的具体位置 [26]。图 4 说明了基于 Faster R-CNN 模型的自动橡胶树树干检测和识别模型的体系结构。
训练过程主要包括四个步骤。首先,使用预训练模型初始化整个 Faster R-CNN 网络的参数,然后使用我们的训练集训练 RPN 网络。其次,使用经过训练的 RPN 生成的建议区域来训练 Fast R-CNN 检测网络。最后,RPN 和 Fast R-CNN 构成一个联合网络,通过重复上述过程调整联合网络的权重,直到训练损失达到阈值 [26]。
图 4. 用于检测深度图像中的橡胶树干的 Faster R-CNN(更快的基于区域的卷积神经网络)的流程图。从三个橡胶树地块的子集生成的训练样本的深度图像被输入 Faster R-CNN,以对深度图像中树干的锚点(边界框)进行分类和回归。从三个橡胶树地块的其他子集生成的测试样本的深度图像被训练的 Faster R-CNN 测试以获得树干的锚点。
基于预训练的 CNN,构建包括橡胶树树干在内的深度图像作为训练集,以优化 Faster R-CNN 的参数。如 2.3 节所述,训练样本从体素投影,根据图像中橡胶树树干的数量和状态,将图像分为 6 种情况进行分析:(a) 仅包含一个的图像完整的树干; (b) 包含两个完整树干的图像; © 包含多个树干的图像,这些树干的树枝出现在体素中; (d) 树干信息被树叶或树枝遮挡的图像; (e) 属于多棵树的树干信息重叠在一个体素中的图像; (f) 树干出现在由两个相邻体素投影生成的两个相邻图像中的图像。为了准备后续的训练过程,必须考虑训练样本。请注意,六种情况的标记方法分别进行了讨论: (a) 标记整个树干; (b) 在一幅图像中标出两棵树的树干; © 在一幅图像中标出两棵树的树干,包括树的树枝; (d) 只标记树干,不标记树叶; (e) 标记所有重叠的树; (f) 只标记体素中的树干,不标记出现在相邻体素中的树干和树枝的上部。图5显示了训练图像的典型结果,其中我们标记的紧紧包围目标的蓝色矩形边界框在后续训练中被用作ground truth。
图 5. 包含生成的深度图像的六个训练样本示例:(a) 图像仅包含一个完整的树干; (b) 图像包含两个完整的树干; (c ) 包含多个树干的图像,这些树干的分支出现在体素中; (d) 树干信息被树叶或树枝遮挡的图像; (e) 属于多棵树的树干信息在一个体素中重叠的图像; (f) 树干出现在由两个相邻体素投影生成的两个相邻图像中的图像。这六个复杂案例的不同树干识别方法形成了训练样本:(a)标记整个树干; (b) 在一幅图像中标记两棵树的树干; © 在一幅图像中标记两棵树的树干,包括树的树枝; (d) 只标记树,不标记树叶; (e) 标记所有重叠的树; (f) 仅标记体素中的树干,不标记出现在相邻体素中的树干和树枝的上部。所有的蓝色矩形边界框紧紧围绕着目标树干,在后续训练中称为ground truth。
2.4.1. The Pre-Training CNN Model
如表2所示,构建训练集生成的深度图像总数为802张,但高精度训练需要大量样本[26]。因此,迁移学习方法被用来解决这个问题[37]。迁移学习方法可以使用通用数据获得预训练模型来构建RPN网络和检测网络。在本文中,ImageNet(首次发表于计算机视觉和模式识别 (CVPR) 会议 (2009))[38] 中的训练集(约 100,000 张图像,1000 个类别)用于预训练 VGG16 网络模型 [39 ]. VGG16网络是用于提取图像特征的特征提取网络。
2.4.2. Training Process of the RPN Network
作为 Faster R-CNN 的重要组成部分,RPN 神经网络以图像为输入并生成一组矩形建议区域。其特殊的网络结构可以提升区域提取速度。
通过特征提取网络的卷积层,生成输入图像的特征图。然后,对特征图的每个位置,通过一个3×3的滑动窗口进行卷积运算,得到同一位置对应的多维特征向量,在小定位窗口中体现深层特征。该特征向量被送入两个相关且完全连接的层:分类(cls)层和回归(reg)层。Anchors [35](即,以每个像素为中心的具有不同大小和纵横比的多个边界框,用于预测通过计算与ground truth数据的重叠度得到目标树干的理想位置、形状和大小)以3×3滑动窗口为中心。在这篇论文中,每个滑动窗口有 k = 9 个锚点,具有三种比例(1282、2562、5122)和三种纵横比(1:1、1:2、2:1)的组合(见图 4)。如果一个 anchor 与任何 ground truth 的重叠面积大于 0.7,我们就给这个 anchor 分配一个正标签(即正锚)。在极少数情况下,上述条件找不到正锚;此时,我们将与 ground truth 重叠面积最大的 anchor 指定为正 anchor。如果与所有基本事实的重叠面积低于 0.3,我们将负标签分配给非正锚。然后用概率值判断每个anchor是属于前景(即anchor中的信息被识别为目标)还是背景(即anchor中的信息被识别为非目标),相应地产生了anchor相对于ground truth的位置偏差。当anchor中的信息被识别为目标时,将anchor保留为proposal region,用于后续训练。在训练 Faster R-CNN 检测网络之前,将 RPN 网络生成的建议区域映射到特征图,并在特征图上生成一系列具有随机大小的感兴趣区域(ROI)(参见中的黑色补丁)图 4)。
2.4.3. The Training of the Fast R-CNN Detection Network
选择具有随机大小的 ROI 作为 ROI 池化层的输入(见图 4),并通过 ROI 池化将 ROI 归一化为固定大小。固定大小的 ROI 用于通过两个全连接层计算每个提案特定类别。一个全连接层用于实现对ROI中目标的分类。另一个全连接层用于通过区域回归来证明相应建议区域的位置。经过 Fast R-CNN 自适应修正后,proposal region 的位置被调整到 ground truth。
2.4.4. The Loss Function of the Training Process
在训练过程中,神经网络的参数通过损失函数[35]进行调整,其定义如下:
其中 i 是锚点的索引。分类损失 Lcls(ei, e* i ) 是两个类别(前景或背景)的对数损失函数。
其中ei是anchor i属于前景的概率,e* i是ground truth标签。如果 anchor i 是正的(即 anchor 中与 ground truth 的重叠区域高于 0.7),则 ground truth 标签 e* i 被分配为 1。如果 anchor i 是负的(即非-positive anchor with ground truth 低于 0.3),e* i 被分配为 0。
回归损失函数是
对于anchor i,如果ei = 0,则禁用回归损失函数;如果 e* i = 1,回归损失函数被激活。 ti = n tx, ty, tw, th o 是一个向量,表示在迭代训练过程中大小和位置不断变化的anchor的坐标。 t* i = n tx, ty, tw, t h o 表示与anchor i相关的ground truth的坐标(见图4)。在这个实验中,这里使用smooth L1来用函数R代替损失函数Lreg。
cls 和 reg 层的输出(见图 4)分别由 ei 和 ti 组成。 Ncls是feature map的大小(大约1750, 50×35),Nreg是batch size(在RPN网络中,Nreg = 256;在Fast R-CNN检测网络中,Nreg = 128)。参数λ用来平衡Lcls和Lreg,这样总的损失函数L就可以看作是两种损失。
使用标记的橡胶树干作为参考,生成预测区域信息与地面实况之间的差异。然后,使用反向传播算法调整网络的权重和偏移量。通过足够的训练,Faster R-CNN 可以从深度图像中检测到橡胶树树干的准确位置和识别。
2.4.5. The Testing Process for Using Faster R-CNN to Recognise Trunks
测试过程包括四个主要步骤。对于每个测试站点,点云通过体素化分配给不同的体素。其次,体素用于通过正面和横向投影变换生成深度图像。第三,生成的359张属于测试样本的深度图像通过训练好的网络模型进行分析,预测树干的位置,只保留预测置信度在90%以上的预测结果。最后,记录每个图像中体素的位置和预测的树干边界框的四个坐标,并用于执行反投影变换以提取相应的扫描树干点。这些为每棵橡胶树提取的树干点被作为区域生长的种子点[40]来提取个体树骨架。基于提取的每棵橡胶树的树骨架,利用聚类算法将未分割的叶点分类到对应的橡胶树骨架中。
对所有三个橡胶林地块的个体树冠分割结果进行了评估,并与目视检查结果进行了比较。 TP(true positive)是正确检测到的树的数量,FN(false negative)是没有检测到的树的数量(遗漏错误),FP(false positive)是不存在的额外树的数量字段(委托错误)。我们期望高 TP、低 FN 和低 FP 值会导致高精度。此外,使用以下等式计算每个站点的树木检测率 r(召回率)、检测到的树木 P(精度)的正确性以及检测到的树木 F(F 分数)的总体精度 [41]。
5. Conclusions
针对长期飓风扰动导致的橡胶树弯曲,设计了一种基于便携式激光雷达采集的扫描点云的深度学习方法来检测橡胶树树干的位置并完成个体橡胶树树冠分割。通过扫描树干点的体素化和扫描点的投影变换,共生成802张深度图像,为不同克隆的三个橡胶树地块提供树干信息,作为卷积网络优化的训练样本及相关参数选择。三个橡胶树图中的其他扫描数据子集用于生成 359 个深度图像的测试样本,以验证卷积神经网络的有效性。结果表明,我们基于深度学习的算法在大量测试样本中实现了树干识别的高准确率(> 90%)。尽管固定大小的体素化在一些深度图像中产生了多树干或不完整的树干表示,这使得计算机对深度图像中树干位置的理解变得复杂,但对于所有测试样本,树干检测的总体准确率仍然达到 90%。通过结合区域生长法和从检测到的树干中提取树骨架,完成了三个橡胶树样地的个体树冠分割。我们的工作为使用人工智能概念的森林管理提供了新的指导,以实现个体树冠分割的良好性能。
以上是关于基于地基激光雷达数据和深度学习的Faster R-CNN的橡胶树个体分割的主要内容,如果未能解决你的问题,请参考以下文章
IDA-3D 解读基于实例深度感知的自动驾驶立体视觉三维目标检测