运用LiDAR点云快速精确生成带状水域DEM的方法
2023-09-01陈建城
陈建城
(宁夏水利水电勘测设计研究院有限公司,宁夏 银川 750004)
0 引言
数字高程模型(Digital Elevation Model,DEM)作为一种反映地表起伏形态的精细基础测绘成果,它在城镇化建设、数字城市、军事等领域均扮演着极其重要的角色[1-6]。我国山区面积相对辽阔,有山之处必有江河。然而,水域DEM的生产在整个DEM的制作过程中是非常烦琐的,它需满足质量检查中的两个基本要求:1)水域与其周边地貌过渡的一致性,高程异常不可过大;2)在水域DEM内部,面状斑块水域应高程统一,水面平整,带状水域表面要自然平滑过渡[7-10]。传统生产模式中,水域部分是在最后DEM的基础上,对水域进行DEM编辑与重置,小面积的块状水域,其高程为一固定值,做单一水面置平处理即可,制作相对简单,而带状、长距离的河流,则具有一定的高差,要保证其从上游至下游水域表面自然平滑过渡,是极其困难的,需要参与大量的手工操作与细致化处理,生产效率低下,严重制约了DEM数字化成果生产的进度。本研究基于机载LiDAR点云原始数据,通过分析点云数据相对空间位置结构,着重探讨了水域边界线的程序自动识别、水域内部点云修复的处理方案,最后通过对某4.6 km长的河流进行了测试,在带状水域点云修复与DEM的生成中,获得了较好的测试效果,大大提高了带状水域DEM的制作效率。
1 带状水域点云修复方案
如上所述,水域DEM部分的最终质量需满足如下两个基本要求[11-12]:一是水域与其周边地貌过渡的一致性,高程异常不可过大;二是在水域DEM内部,带状水域表面需做到自然平滑过渡。在长距离的河流区域,其上游与下游高程差异非常明显,要满足带状水域DEM表面自然平滑,需内插、修复高程数据,即在生成DEM之前,对原始点云的带状河流区域内,进行点云修复。当然,若提高生产效率,应通过算法、程序完成。该过程涉及两个独立处理环节:一是原始点云中快速完成对数据的搜索,并识别水域,提取水域边界线;二是对水域边界范围内进行点云修复处理。其综合处理算法与流程如下所示。
1.1 水域边界线的提取
针对原始点云数据,快速识别其中水域边线,是后期进行点云修复的第一步,因此,如图1所示,水域边界线的提取方案如下:
1)获取原始点云LAS数据,对原始数据标记点云识别码并进行备份,用于后期的数据替换,把其中一份原始点云数据进行零高程面投影,投影后构建不规则TIN三角网,如图2(a)所示。
2)针对投影后构建的TIN三角网,计算各三角形外接圆半径,并赋值唯一标识码“unvisitied”,由于水体对机载激光信号具有较强的吸收作用,因此机载LiDAR在水域中并无点云数据存在,所以,根据三角形外接圆半径的大小不同,以区分地表点与水域空洞,即当TIN三角网外接圆半径大于初始阈值时,则判为水域,此时该三角网保留并重新进行编号,编号示意如图2(b)所示,反之,判定为普通地表、地物点,同时更改三角网属性标记“unvisitied”为“visitied”。
3)判断是否存在标识码“unvisitied”,若有,则重复第2)步,若无,则进行下一步。
4)对上述步骤识别后的水域三角网进行合并处理,设定合并后的多边形编号。
5)记录水域多边形各个节点识别码,根据此识别码提取备份数据中对应点云,串联点云形成水域多边形边界线(如图2(c)所示),同时提取各节点高程值Hi。如为块状水域,则对其内部进行点云内插,内插值统一为边界节点最低高程值,如图2(d)所示。
1.2 带状水域点云修复
在带状水域点云修复环节中,主要分为两个处理步骤:一是对具有范围边界线的带状水域提取中心线;二是依据流向中心线内插、修复高程点,具体修复方法如下:
1)依据上述带状水域多边形边界线,提取带状水域中心线。首先,根据水域边界点云数据构建TIN三角网,如图3(a)所示。
2)采用“TIN中点法”计算其中心点坐标。如图3(b)所示,三角形ABC,3个顶点坐标分别为A(xa,ya),B(xb,yb),C(xc,yc),计算、对比3条三角形边长,确定最短边长BC,取其中点L1(x1,y1),由L1(x1,y1)及其对角点A(xa,ya)解算中线AL1中点O1,以此类推,遍历所有水域范围内Delaunay三角网,计算各短边中线中点坐标Oi(xi,yi)。
3)按一定顺序连接各中心点Oi(xi,yi),形成带状水域中心线,如图3(c)所示。
4)依据水域中心线,进行分段内插高程点。根据图3(c)各三角网短边对应中心点,布设中线分段内插种子,如图4(a)所示,点云修复时,计算水域多边形边界点距各种子的距离,以种子为中心形成聚类分区,其效果如图4(b)所示,每种颜色区块代表一个聚类分区,其高程决定于该分区边界高程最小值的点云数据,取该最小值作为该分块区域的水面高程值。
5)至此生成的带状水域DEM为阶梯状带状DEM,若要做到水域内部自然平滑过渡,则需对每相邻两块点云高程作“高斯加权平滑处理”。即计算每个点云一定邻域范围内的高程值的反距离加权平均值作为该点的高程。
2 方案测试
为了测试本研究带状水域点云修复方法的效果,我们对宁夏某河流进行了实地数据采集,河流宽约160 m,测试距离约4.6 km,机载LiDAR点云采集的数学基准为:中央子午线105°,平面坐标为CGCS2000坐标系,高程采用1985国家高程基准。数据采集航高200 m,共飞行5架次,采集点云3 262 681个。基于本研究带状水域点云修复算法,借助C语言,编制了水域边界线快速识别、边界范围线内部点云清除、河流中心线提取以及点云修复程序。效果如图5所示,图5(a)为边界线提取效果,图中多边形红色为带状水域边界线,图5(b)为测试河流水面点云修复效果,图5(c)为测区DEM成果,同时,为了更为直观的检查河流水面的修复质量,我们对其中心线做了剖面处理,如图5(d)所示,直观的显示出,河流中心上游至下游河流水面的高程变化趋势,为线性递减,很好地表现了水面自然平滑过渡的状态,图5(e)为测区点云修复后侧视图效果,地形、修复点云等场景表现更为直观。
因此,从本次测试案例中可以得知,基于本研究带状水域点云快速修复方案,大大提高了DEM的生产效率,质量上亦满足了DEM相关质量检验规范要求,获得了一次较好的应用效果。
3 结语
通过探讨机载LiDAR点云数据的空间数据结构,引用、改进了带状水域点云快速识别与修复方法,然而,需要说明的是,由于水面时而存在漂浮物,在数据采集时,扫到漂浮物后会形成激光点数据,因此在对水域进行点云修复前,需对水域多边形边界内的点云做删除处理;同时,前期在对点云构建TIN三角网前,需将所有点云进行“零”高程面处理,是避免高植被点与附近地面点形成较大三角网,致使其外接圆半径大于设定阈值,被误认为水域边界,此外,构建TIN三角网前不做点云分类处理,若只用地面点,则原有建筑物、构筑物、高密度植被等所有位置均为点云空洞,同样会被程序误认为水域。本研究通过实测案例,对本研究方案进行了测试,获得了较好的测试效果,同时,在该方案的使用中亦获取了如下两点认识:
1)在初始设定三角网外接圆半径时,应根据实际点云密度而定,阈值设定过大,导致水域边界粗糙,忽略拐点角度过大的水域三角网;阈值设定过小,可将地面TIN误认为水域要素,致使程序识别精细度降低。因此,应根据实际采集点云密度及其空间间距,科学、合理地确定三角网外接圆半径阈值。
2)为确保带状水域修复后的DEM表面满足“自然平滑过渡”这一质检要求,则需提高前期水域中线种子布设密度,否则会导致水域DEM表面形成不平滑台阶状。
地表江河众多,其形状、特征各异,若使本研究探讨方案能够应对所有带状水域,则需后期对其进行大量的测试与验证,以逐步改进、完善该带状水域DEM点云修复方案。