APP下载

联合点云压缩的多特征融合点云语义分割方法

2023-11-06

地理空间信息 2023年10期
关键词:压缩算法压缩率曲率

夏 旺

(1.中铁第四勘察设计院集团有限公司,湖北 武汉 430063;2.水下隧道技术国家地方联合工程研究中心,湖北 武汉 430063)

随着机载平台和激光硬件发展,机载LiDAR点云密度逐渐变高。为点云的处理与分析带来了挑战。由于深度神经网络受到硬件显存的限制,不能一次性输入大规模点云,而少量的点云不足以描述地物的全局特征。原始PointNet++[1-2]的输入点的个数为1 024,而1 024个点对应的地表面积太小,不足以提取描述地物整体的全局特征。

通过压缩点云可以降低点云密度,用少量点云表征地物,但是过于稀疏的点云使得地物失去了细节信息,降低了对地物的识别能力[3]。因此点云压缩算法需要在尽量降低点云密度的基础上,保留表征地物有效信息的点云,达到点云数据量与模型精度的平衡。目前常用的点云压缩算法有基曲率的压缩算法[4]、基于网格拓扑信息[5]的压缩算法、基于法矢夹角的压缩算法[6]等。

针对以上问题,本文提出一种联合点云压缩与PointNet++的多特征融合LiDAR 点云语义分割方法。针对PointNet++难于适用于高密度点云语义分割的问题,首先利用点云压缩算法降低点云密度,并使用PointNet++网络提取简化点云的深度语义特征,再利用拟合算法求得完整点云的深度特征;之后提取人工设计的空间相关性特征与深度特征进行串联以解决PointNet++对点云空间相关性特征的提取能力不足的问题;最后利用随机森林算法对完整点云进行语义分割,并进行精度评定。

1 本文方法

本文方法技术路线(见图1)如下:首先利用点云压缩算法得到简化点云和剩余的冗余点云;然后将简化点云输入PointNet++网络模型得到简化点云的深度特征,并利用距离插值计算冗余点云的拟合深度特征;之后将深度特征与人工提取的空间相关性特征合并,作为点云的分类特征;最后利用样本的分类特征训练随机森林分类器,得到语义分割模型,并对测试数据进行预测,进行精度评定。

图1 技术路线

1.1 基于最优邻域的点云压缩算法

曲率是点云压缩、建模过程中的重要属性,因此基于曲率的点云简化算法是最常用的点云压缩算法之一[7]。曲率值小的点往往在平面区域[8],被认为是冗余点。因此可以通过设置一个曲率阈值,保留曲率大的点而舍去曲率小的冗余点,以此来剔除近似为平面的点以达到点云压缩的目的。

但是曲率的计算需要首先确定点的邻域大小或者邻域点的数量,而邻域的大小会影响到曲率值大小,进而影响到点云压缩的效果。本文通过信息熵[9]来计算最优邻域[10],以获得最佳曲率值。信息熵由香农提出,用于描述信息的不确定度,即量化对信息的度量。利用KNN算法确定点p的K个邻域点,以此计算点p 的协方差矩阵和协方差矩阵的3个特征值,按照大小排序记为:λ1(K),λ2(K),λ3(K),令点p的信息熵记为E(K),那么最优的邻域为:

得到拟合参数a,b,c,进一步计算点p 的平均曲率为:

得到平均曲率后,就可以进行点云压缩。令点p的平均曲率记为Hp,设定的阈值为T,将点云分为简化点云CP和冗余点云RD2个集合,于是有:

经过压缩后,令压缩后的点云数量为Nc,冗余点云数量为Nr,原始点云数量为No,那么压缩率d为:

阈值越低,压缩率越高,说明点云被更大程度的压缩,压缩后的点云更加稀疏。

1.2 PointNet++网络模型

机载LiDAR点云是一组无序离散的点集,即一个点云集合可以由不同的矩阵进行表征。因此可以直接输入点云集合的深度神经网络需要满足2 种性质。第一是无序性,即点云处理的结果不会受输入点顺序的影像;其次是旋转不变性,即点云旋转不会影响最后语义分割的结果。

PointNet 不需要对点云进行体素化或者投影的预处理,是第一种直接处理无序点云数据的深度神经网络。PointNet 通过在网络中增加一个旋转矩阵即空间变换网络(T-Net)来给予点云旋转不变性,并通过最大池化来解决点云无序性问题,即提取每个点的特征后,逐维度计算所有点的特征最大值,以此对点云的整体提取全局特征。

PointNet++[8]在PointNet 基础上增加了一个多层次结构以提取点云的多尺度特征,称为集合抽象模块(set abstraction module,SAM)。如图2是PointNet++语义分割网络的框架,与U-Net[12]类似,PointNet++分为编码模块和解码模块。编码模块逐级提取点云特征,直至一个全局特征;解码模块通过欧氏距离插值逐步上采样到输入点云的分辨率;编码和解码模块之间通过跳跃连接相连,将编码模块内分组层之后的特征拼接到解码模块对应的上采样层后。最后得到简化点云的深度特征后,通过softmax层得到点云的语义分割结果。本文在网络训练完成后,直接输出深度特征用于后续步骤的处理,而不通过softmax层得到语义分割的结果。

图2 Pointnet++语义分割网络

简化点云输入到PointNet++网络后可以获取对应的深度特征,但是冗余点云无法通过网络计算特征。因此,本文利用欧氏距离插值来计算冗余点云的拟合深度特征。

计算冗余点云中某点p在简化点云中的K个最近邻点,令点p与K个近邻点的距离记为disi,K个简化点的深度特征向量记为,那么点p的拟合深度特征向量为:

1.3 空间相关性特征提取

PointNet++虽然提取了点云的多尺度特征,但是对点云空间相关性建模能力不足。为了提高语义分割精度,本文提取了点云的结构张量特征,即各向同性O,各向异性A,平面度H,特征熵E,计算公式如下:

式中,λ1,λ2,λ3为协方差矩阵的3个特征值,在曲率计算的时候已经求得,因此不需要额外计算,提高了分类效率。

此外点云归一化高度特征H[13]和强度特征I也有助于提高语义分割精度,因此提取的人工特征向量为:

本文的语义分割特征向量为:

1.4 基于随机森林的点云语义分割与精度评定

随机森林[14]分类器是由多个决策树组成的一个集成分类器,每个决策树用于训练样本和特征的随机子集,最后使用从所有决策树集合中得出的预测结果来产生可靠的分类。对样本点云提取公式(9)中特征,输入到随机森林分类器中进行训练后,即可用训练好的随机森林分类器对测试数据进行预测和精度评定。

本文采用总体精度和F1-score来评价算法的语义分割精度,总体精度用于描述分类器对整个场景所有地物的识别能力,而F1-score用于衡量分类器对每一个地物的识别能力。令TP为分类正确的点的个数,FP为分类错误的点的个数,TPi、FPi、FNi分别为第i类分类正确的点的个数、其他类错分为第i类的点的个数,第i类错分为其他类的点的个数,则第i类的F1-score 定义为:

总体精度定义为:

2 实验与分析

2.1 实验数据与设计

实验采用ISPRS 提供的3D 语义分割数据集,该数据包含德国Vaihingen 区域机载LiDAR 点云以及对应的人工标注。如图3 为ISPRS 提供的语义分割点云数据,根据ISPRS 官方的设置,图3a 点云为训练数据,图3b点云数据用于测试和精度评定。ISPRS官方总共标注了9个类别,分别是电力线,矮植被,不透水层,汽车,栅栏,屋顶,立面,灌木,树。

本文通过实现、对比5 种方法以证明本文提出方法的有效性。

1)直接使用人工特征训练随机森林分类器;

2)使用PointNet++的语义分割网络对点云进行分类,且模型仅输入点云的三维坐标;

3)将PointNet++提取的压缩点云深度特征和冗余点云拟合特征送入随机森林分类器进行训练;

5)使用PointNet++进行点云语义分割,但是模型除了输入点云的三维坐标外,还叠加了六维的人工特征;

6)使用本文方法,提取深度特征后,与人工特征合并,送入随机森林分类器进行训练。

本实验所有方法使用的人工特征相同,皆为公式(8)所描述的特征。

实验中采用Tensorflow 2.4 深度学习框架,通过两块Geoforce 2080Ti 显卡进行训练与测试。模型输入点个数为1 024,batch_size 设为32,优化器选择Adam,模型其他参数设置与PointNet++相同[1]。随机森林分类器的实现使用的是Scikit-learn 1.0.2机器学习算法库,其中决策树的数目设置为100,特征参数设置为输入特征向量维度的平方根。

2.2 实验结果与分析

图4 展示了5 种方法语义分割结果的错误区域可视化影像,其中绿色代表分类正确的区域,红色代表分类错误的区域,从图中可以直观显示本文方法的错误区域最少。

图4 语义分割错误区域可视化影像

5 种方法的量化精度评价如表1 所示。仅仅使用人工特征的点云语义分割方法精度最低,总体精度仅为65.8%,且大部分地物的F1-score 是5种方法最低的,而PointNet++模型的语义分割精度相较于人工特征有了明显提升,总体精度为77.6%,说明Point-Net++模型通过多层MLP 提取的深度特征对地物相较于人工特征对地物有更好的识别能力。

表1 不同方法的语义分割精度

第3 种方法将压缩后的点云输入PointNet++提取的深度特征,并计算冗余点云的拟合特征一起送入随机森林分类器进行训练,得到的总体精度优于仅使用PointNet++的语义分割结果,说明点云经过压缩后可以更好地表征地物,提取的特征具有更高的识别能力。

第4种方法在PointNet++模型的输入点云中加上人工特征后,总体精度提升了2.6%。说明Point-Net++提取的深度特征不能完全代替人工特征,PointNet++难以提取表征点云空间相关性的特征,通过融合人工特征和深度特征,可以提高语义分割的精度。

本文提出的方法总体精度最高,相较于Point-Net++提升了5.3%,相比于第3 种方法提高了3.1%,同时除了栅栏和立面以外所有地物的F1-score 都是最高的,说明人工特征可以很好地补充深度特征,提高对地物的识别能力。

表2 展示了不同压缩率下本文方方法的语义分割精度。压缩率反映了点云的压缩程度,压缩率越高,说明点云压缩程度越高,越稀疏。由表可知,当压缩率小于0.8 时,语义分割精度随着压缩率的提升而提升。说明压缩率的提高,通过PointNet++提取的特征具有更高的识别能力,因为同样1 024个点可以更好的表征地物的全局特征。但是当压缩率大于0.8 时,语义分割精度会下降,尤其当压缩率为0.95时,总体精度仅为67.1%。这是由于当压缩率提高时,虽然可以更好地提取地物的全局特征,但是细节信息会损失,尤其要通过拟合算法计算冗余点云的特征,进一步丢失了细节信息。

表2 不同压缩率下本文方法的语义分割精度

3 结论

本文提出一种联合点云压缩的多特征融合LiDAR点云语义分割方法。首先利用点云压缩算法降低点云密度,并使用PointNet++网络提取简化点云的深度语义特征;再利用拟合算法求得完整点云的深度特征;之后提取人工设计的空间相关性特征与深度特征进行串联以解决PointNet++对点云空间相关性特征的提取能力不足的问题;最后利用随机森林算法对完整点云进行语义分割。通过5 种方法的语义分割实验对比,证明本文提出方法可以有效提升语义分割精度,总体精度较PointNet++提升了5.3%。

猜你喜欢

压缩算法压缩率曲率
大曲率沉管安装关键技术研究
一类双曲平均曲率流的对称与整体解
半正迷向曲率的四维Shrinking Gradient Ricci Solitons
基于参数识别的轨道电路监测数据压缩算法研究
水密封连接器尾部接电缆的优化设计
缠绕垫片产品质量控制研究
更正声明
多载波通信系统中CQI无损压缩法研究
分布式多视点视频编码在应急通信中的应用
PMU数据预处理及压缩算法