基于机载LiDAR点云数据的建筑物提取方法研究

2022-09-02 02:20张帅哲张聪王小宁
城市勘测 2022年4期
关键词:邻域坡度高程

张帅哲,张聪,王小宁

(山东科技大学测绘与空间信息学院,山东 青岛 266000)

1 引 言

近些年来“智慧城市”这一概念逐渐被人们所认同,LiDAR技术因其能够准确快速获取空间三维数据的能力,已经成为“智慧城市”建设的重要技术之一[1]。在“智慧城市”的建设方面,建筑物的相关信息发挥着重要的作用。通过传统的测量方法获取城市建筑物的信息,需要耗费大量的人力物力,且需要花费大量时间才能完成。但随着LiDAR技术的迅速发展,通过对点云数据的处理获取建筑物信息已经成为一种有效方法。

从机载LiDAR数据中提取建筑物点云主要包括两步:①从原始机载LiDAR点云数据中实现地面点与地物点的分离;②从地物点中实现建筑物点与非建筑物点的分离。其中第一步为建筑物点云提取的前提,通常采用地面滤波实现,对于地面滤波众多学者在此领域展开了研究,如我国长安大学的隋立春教授提出了区域分块法结合数学形态学的方法来选取地面种子点,根据地面种子点采用向上加密三角网的方法提取地面点[2];Rashidi使用大小两种尺度的虚拟网格,并结合坡度和高差两种方法进行点云滤波[3]。对于建筑物点云提取,国内外众多学者也展开了深入的研究,如张皓提出利用灰度级共生矩阵的点云高程变化纹理特征进行建筑物提取[4],该方法能够有效将建筑物与植被分离;赵传利用点云的邻域信息并结合建筑物顶面点云的特征[5],实现对建筑物点的提取,通过该方法可以有效克服噪声点的影响。Gilani S提出机载LiDAR的点云数据结合正射影像的建筑物提取方法[6],该方法首先将点云数据划分为规则的格网,再通过点云信息和正射影像进行建筑物的特征识别,最终实现建筑物的提取。

本文在总结现有论文的基础上,提出基于多尺度虚拟格网的坡度滤波方法实现地面点与地物点的分离,在地物点中基于建筑物的特征采用格网八邻域搜索的滤波方法实现建筑物主体点云的提取,最后根据建筑物特征,对建筑物边缘进行二次提取,最终实现建筑物整体点云的提取。

2 基于多尺度虚拟格网的坡度滤波算法

在对城市地区的机载LiDAR点云数据进行地面滤波时,通常选取每个格网中的最低点作为地面种子点,最低点为地面点的可能性最大。但城市地区的建筑物通常为平顶建筑物,所以在每个格网中选取地面种子点时会出现将建筑物顶面的激光脚点作为地面种子点的情况,从而影响地面滤波的精度。

基于城市地面点云的特点,本文提出的滤波算法为基于多尺度虚拟格网的坡度滤波算法。首先构建虚拟格网[7],用具有一定边长的正方形将点云数据划分,其中每个正方形都有自己的行列号。通过每个激光脚点的坐标利用式(1)、式(2):

GridROWNum=int((Y-Ymin)/T)+1

(1)

GridCOLNum=int((X-Xmin)/T)+1

(2)

计算出激光脚点所在格网的行列号,其中X和Y代表激光脚点的平面坐标,Xmin和Ymin代表点云数据中的X坐标最小值和Y坐标最小值,T代表格网的尺寸大小。在构建完虚拟格网后,本文又将多尺度的概念引入其中,如图1所示为构建多尺度虚拟格网的示意图,其中浅色代表小尺度的虚拟格网,随着颜色的加深虚拟格网的尺寸逐渐变大。

图1 多尺度虚拟格网的平面示意图

在构建完多尺度虚拟格网后,需要从每一级格网的原始点云数据中选取地面种子点,这些地面种子点是下一步地面滤波的依据。在划分的虚拟格网中,大尺度虚拟格网中的地面种子点为地面点的概率最高。为了能够得到比较可靠的地面点,以最大尺度虚拟格网的地面种子点为基准,对次级虚拟格网中的地面种子点进行筛选,筛选原理如图2所示。

图2 设置坡度阈值筛选地面种子点示意图

图中所示的边长为S的格网为最大尺度虚拟格网,边长为S/2的格网为次级虚拟格网,白色的P1点表示最大尺度虚拟格网中的地面种子点,黑色的点表示次级虚拟格网中的候选地面种子点。通过P1点的坐标与P2、P3、P4点的坐标,利用式(3):

(3)

计算出每一点的坡度,通过坡度阈值判断该点是否为地面种子点[8]。使用上述方法可以得到次级格网中真实的地面种子点,然后用同样的方法对下一级格网的地面种子点进行筛选,最终得到所有真实的地面种子点。通过这种方法可以避免将建筑物顶面的激光脚点误认为是地面种子点的情况,从而提高了地面滤波的精度。

在选取地面种子点后,再通过地面种子点进行地面点的选取。通过计算格网中地面种子点与该格网内其他各点的坡度,利用坡度阈值判断该点是否为地面点。若该格网中不含地面种子点,则认为该格网中的全部点云为非地面点。在进行坡度滤波时,首先设置地形坡度S1、坡度增量S2、最大坡度S3三个阈值参数。地面点选取的原理如图3所示。在同一方向格网剖面内,P0为筛选出的最终地面种子点,Pi和Pj是其他格网中激光脚点,S0i为P0与Pi的坡度,S0j是P0与Pj的坡度,Sij为坡度增量。其中Sij=S0i-S0j。

图3 地面点选取原理示意图

滤波算法的步骤如下:

(1)通过点云数据的特征,确定阈值参数S1,S2,S3;

(2)根据点云数据计算Soi,如果Soi小于等于S1,则判定Pi为地面点;

(3)如果S0i大于S1且小于S3,且Sij小于S2,则也可判定Pi为地面点;

(1)实现更高效、便捷的预约报账服务。优化预约报账业务流程,实现报账系统由以会计核算为中心向以用户体验为中心的转变。一方面,通过简化预约流程,分析报账人行为模式,推动报销流程自动化,提高财务数据利用率,通过更友好、更易于操作的程序,完善细节设计,提升用户体验,缓解“报账难”现象,为广大老师营造出一个潜心研究的良好环境。另一方面,在做好财务日常工作的同时,要不断缩短财务信息处理流程,减少业务处理环节,改进信息处理手段,逐渐提高信息资源利用效率,不断强化财务管理功能,进而提高预约报账服务效能。

(4)重复以上步骤,对格网中的所有点进行逐级筛选,得到最终的地面点。

3 基于格网八邻域搜索的建筑物提取算法

3.1 典型地物的点云分布特征

由于不同地物具有不同的结构、空间分布和表面材料,所以所获得的点云数据中会包含不同的点云分布信息、回波信息和激光强度信息,根据这些信息可以将点云分为不同的类别,主要类别如下所示:

(1)建筑物:建筑物与其他地物相比通常面积较大,且从高度方面来讲,其高度要比其他地物高。由于建筑物顶面较为平滑,所以所获得的建筑物点云通常比较规则且点云密度均匀。建筑物顶面的相邻激光脚点之间会存在一定的高差,但高差变化幅度比较小。在建筑物边缘部分,由于建筑物立面也可采集到点云数据,所以点云的高度会产生突变,高程变化比较大。

(2)植被:植被通常分为低矮灌木和高大的树木。由于树叶间存在间隙,所以激光脉冲通常会产生多次回波信息。其点云分布一般为松散不规则的簇状点云。对于低矮灌木而言,其高程大都在 1.5 m以下。

(3)地面低矮突出物:低矮突出物主要是包括汽车、人群、围墙等,这些地物的点云通常成团簇状散乱地分布在近地面处。

3.2 建筑物提取算法描述

将地面点与地物点分离后,需要从地物点中提取出建筑物点,根据不同地物的形态特征可以实现建筑物的提取,本文提出基于建筑物特征的格网八邻域搜索的滤波算法实现建筑物的提取。对于提取建筑物的具体步骤如下:

(2)在分离出的较高地物点中主要包括建筑物、高大植被以及路灯电杆等,这些地物在高程上与建筑物比较相似,所以仅通过高程特征很难实现建筑物与非建筑物的分离。从所分离的地物点云数据中不难发现,建筑物通常包括以下特征:通常建筑物所占的面积较大,对于建筑物的顶面点云,取其中一块区域,该区域与其周围区域的高程差异较小。对于植被、电杆和路灯来说,所占面积通常要比建筑物的面积小很多,且取其中一块区域,该区域与周围区域会存在较大的高程差异。根据这些特点,计算待选区域的八邻域与该区域的高差,若八邻域中大部分区域的高差符合高差阈值,则可判定该区域为建筑物点。对于八邻域中具体有几部分的高差符合高差阈值时才可判定为建筑物点,可以通过设置面积阈值实现[10]。算法具体步骤如下:

①首先对地物点云用规则格网进行划分,格网的尺寸不能太小,太小将会出现非建筑物区域与其周围区域高差较小的情况,从而将其误判为建筑物点。设定高度阈值trd和面积阈值N,建立一个3×3的数组A,将数组的值初始化为0。

②由于建筑物顶面可能会有其他微小地物,所以在每个格网中随机选择两个点作为初始种子点。

③由于每个格网中包含两个种子点,所以先选一个种子点,搜索种子点的八邻域,计算与八邻域中任意一种子点的高差,得到高差矩阵H:

(4)

其中di表示种子点与其邻域种子点的绝对高差。再对格网中另一个种子点进行同样的计算。

④将高差矩阵中的元素与高程阈值进行比较,若该值小于高程阈值,则在数组A相对应的位置加1,比较完一个种子点后,再对格网中的另一个种子点进行相同的操作。将数组A中所有的元素求和,该值代表了种子点邻域内的面积统计值,若该值大于面积阈值,则代表该格网内的点云为建筑物点。

⑤按从左到右,从上到下的顺序搜索格网,重复③④步直到所有的格网处理完。

(3)由于建筑物的边缘格网与建筑物的主体格网只是部分相接,通过设定面积阈值进行建筑物的提取时会造成建筑物的边缘部分不能完整的提取,所以对于建筑物的边缘部分需要进行二次提取。由于建筑物的边缘格网与建筑物主体格网相接,且格网内激光脚点的高程大体相等,通过这一特点可以实现建筑物边缘部分的提取。在上一步中已经提取出建筑物的主体部分,对于建筑物边缘部分提取,只需遍历所有格网,若格网与建筑物的主体部分相接,且格网内部分激光脚点的高程与建筑物主体部分的激光脚点的平均高程大体相等,则可以判断该格网内的激光脚点为建筑物的边缘部分。

4 实验结果与分析

为了验证本方法从机载LiDAR数据中提取建筑物的可行性,选取青岛市一处具有独立建筑物的区域进行测试。该区域的点云扫描个数为 260 471,地形较为平坦,并无太大的陡坡,测区中央具有一栋独立的建筑物,建筑物周围存在大量的车辆和比较高大的植被。建筑物的前方存在一顶面点云较为稀疏的矮小建筑物,如图4所示。

图4 测区原始点云

4.1 地面滤波结果分析

在选用多尺度虚拟格网进行地面滤波时,如果所选的初级格网太小,会出现将建筑物的顶面的点云误认为地面点的情况。经过实验,对于此区域初级格网的尺寸设为 15 m,共建立三级格网。对于坡度阈值的选取,由于该地区并无太大的陡坡,所以将坡度阈值设置为25°,坡度增量阈值设置为10°,最大坡度阈值设置为40°。图5、图6为分离后的地面点与地物点的示意图。

图5 地面滤波后的地面点

图6 地面滤波后的地物点

本文采用ISPRS国际委员会所推荐的评价体系,对滤波后的点云数据进行评价,ISPRS将机载LiDAR点云误差分为三类:第Ⅰ类误差,该类误差是指将地面点错误的分类为非地面点的误差。第Ⅱ类误差,该类误差是指将非地面点错误的分类为地面点的误差。最后一类误差为总误差。各类误差的计算公式如(5)、式(6)、式(7)所示:

(5)

(6)

(7)

式中α表示滤波得到的真正地面点数量,β表示滤波过程中将地面点错误分为非地面点的数量,γ表示滤波过程中将非地面点错误分为地面点的数量,δ表示滤波得到的真正非地面数量。该区域所得的实验参数如表1所示,三类误差分析如表2所示。

表1 实验参数统计结果

表2 实验误差统计结果

通过实验数据可以看出,第Ⅰ类误差、第Ⅱ类误差以及总误差均很小,由此可以得出利用该方法,选取的地面种子点准确,能够实现地面点与地物点的分离。

4.2 建筑物提取结果分析

通过本文所提出的地面滤波方法可以有效地将地面点与地物点分离,对于从地物点中提取建筑物,首先要做的就是对于一些低矮地物的去除。在该实验区域中存在一些车辆以及低矮的灌木,通过设置高程阈值3 m可以将这些低矮的地物点去除,去除效果如图7所示。

图7 低矮地物去除后地物点

与图6对比可知,对于大部分低矮的灌木和车辆,通过设置高程阈值都能够有效去除。

在将低矮的地物点去除后,地物点主要是包括建筑物点以及一些高大的植被点,根据其形态特征设定面积阈值和高程阈值,可以有效地提取出建筑物点。在将地物点进行格网划分时,格网的尺寸不能太小,太小将会导致部分植被点被误认为建筑物点。所以根据该区域的特点将面积阈值设置为12,高程阈值设置为 0.15 m,每个格网尺寸设置为 1.5 m,提取效果如图8所示。

图8 建筑物提取点云

为了验证提取的效果,本文采用检测率和正确率两个指标进行评价。其中,检测率指正确提取的建筑物点云数占实际总建筑物点云数的比值,反映了算法的实际提取率;正确率指正确标记的建筑物点数占提取结果中建筑物点数的比值,反映提取算法的准确性。其计算公式如(8)、式(9)所示。

(8)

(9)

在上式中,tp表示正确归类的建筑物点云数目,fp表示错误归类为建筑物的点云数目,fn表示漏提的建筑物点云数目。该区域的建筑物提取统计结果,如表3、表4所示。

表3 实验参数统计结果

表4 评价指标统计结果

通过实验得出的检测率与正确率可以看出,利用本文提出的方法能够检测出该区域绝大部分的建筑物点云,且提取的建筑物点云较为准确。但所提取的建筑物的点云仍存在部分非建筑物点。

5 结 语

本文首先介绍了基于机载LiDAR点云数据的地面滤波与建筑物提取的研究现状,在分析和总结各种方法的基础上提出一套完整的技术流程。首先利用多尺度虚拟格网的坡度滤波算法,实现地面点与地物点的分离,再利用基于格网八邻域搜索的滤波方法实现建筑物的提取。实验证明通过多尺度虚拟格网的坡度滤波算法,能准确选取地面种子点,避免将建筑物顶面点云误认为地面种子点的情况,能够有效实现地面点与地物点的分离。根据建筑物的特征,通过格网八邻域搜索的滤波方法可以实现对建筑物主体点云的提取。最后经过建筑物边缘的二次提取,可以提取出较为完整的建筑物点云。

猜你喜欢
邻域坡度高程
红树林宜林地滩面高程及潮水退干时间时长的测量方法
基于混合变邻域的自动化滴灌轮灌分组算法
基于双轴加速度的车辆坡度优化算法研究
场景高程对任意构型双基SAR成像的影响
8848.86m珠峰新高程
Aqueducts
基于远程监控的道路坡度提取方法
放缓坡度 因势利导 激发潜能——第二学段自主习作教学的有效尝试
基于近邻稳定性的离群点检测算法
基于二次曲面函数的高程拟合研究