基于ArcGIS-Addin 的激光点云断面数据提取应用研究
2019-10-28李升甫徐选清杨天宇
李升甫 徐选清 杨天宇 杨 洪
(四川省公路规划勘察设计研究院有限公司,四川成都 610041)
1 概述
激光雷达扫描测量技术拥有数据采集速度快、密度大、精度高等特点,在道路建设行业中得到越来越多的应用[13]。 已有许多学者对基于激光雷达数据的地面线采集和应用进行了相关研究[68],但尚未形成系统化、规模化的生产模式。 基于ArcGIS-Addin,开发了激光点云断面数据处理软件,实现了道路设计所需纵、横断面数据的自动化提取,可生成“纬地”、“金思路”等多种道路设计软件通用的断面数据,以期推动激光雷达技术在公路工程中的推广应用。
2 激光点云断面数据自动提取
2.1 作业方法简述
地面线提取步骤:先利用地面的激光点云数据生成数字高程模型,然后利用数字高程模型生成各种地面线信息。 在激光点云数据基础上,构建不规则三角网模型,然后对高程进行插值,进而得到道路设计所需的各种地面线数据。
2.2 ArcGIS Add-in 开发方式概述
ArcGIS Add-in 开发方式支持. net、java 和Python等多种开发语言,用于定制和扩展ArcGIS 桌面软件功能。 它具有易于掌握和安全性高等特点,支持菜单、工具条、按钮、组合框、可停靠窗口、应用扩展和编辑扩展等功能。
Add-in 方式在ArcGIS 桌面软件的基础上进行功能的定制和扩展,开发人员只需专注于业务数据的处理,很大程度上减轻了开发者的工作量。 以下选用C#语言,以Add-in 插件开发方式进行激光点云断面数据的自动化提取。
2.3 精度影响因素分析
基于激光点云提取地面线的误差主要包括:点云数据采集误差、分类误差和稀疏点云插值误差:数据采集误差不可避免,但是经过外业采集方法优化和点云数据后处理可得到一定程度的减小;分类误差主要存在于茂密植被覆盖区域,此类误差的大小与作业员的技能熟练程度和经验有关;稀疏点云插值误差对断面精度影响最大,主要分布于茂密植被覆盖区域、地形变化较大区域。
2.4 激光点云断面数据提取软件设计
根据总体功能设计,软件的数据处理流程如图1 所示。
图1 断面数据处理流程
系统主要包括以下几个方面的功能:
(1)道路中线恢复
道路中线是纵、横断面地面线提取工作的基础。道路中线类型主要有直线、缓和曲线和圆曲线,其中缓和曲线一般采用多段线来表示,直线也可看做是多段线。 因此,道路中线可认为只包含多段线和圆曲线两种线型。
为获取横断面,首先要得到过中线点处的法线;多段线中,其法线为过中桩点且垂直于中线的直线;圆曲线中,其法线为圆心与中线点的连线。 ArcGIS 软件的个人地理数据库和文件地理数据都支持圆弧和多段线数据类型,系统可直接读取dwg 格式的路线图形文件,且不存在精度损失。
(2)法线生成
ArcGIS 软件提供了生成法线的方法,可以在程序开发中直接使用,减轻了程序开发难度。 ARCObject中的IPolyline 接口提供了QueryNormal()方法,可根据给定的长度返回曲线在该长度位置的法线。QueryNormal()方法中的DistanceAlongCurve 参数为沿曲线长度距起点的距离,Length 参数为法线的长度,通过输入正、负Length 参数值就可以得到中线左侧和右侧的法线,并自动添加桩号、法线方向(左侧/右侧)、角度(0 ~180°,默认为90°)等属性。
(3)斜交线生成
除正交法线外,还有很多桥、涵、沟、渠、地方道路等与主线斜交的情况。 生成这种斜交线有两种方法:①将切线直接旋转实际交叉角度得到斜交线;②先生成90°的垂直法线,然后将垂直法线旋转一个角度至所需方向,从而得到斜交线。 以下选用第二种方法,即先生成90°的垂直法线,然后进行一次旋转(见式(1)及图2)。
图2 二维旋转示意
(4)中桩和边桩点生成
IPolyline 接口提供了QueryPoint()方法。 使用该方法,结合中线和生成的法线,可以获得任意中桩点和边桩点的平面坐标。
(5)高程值提取
在取得了纵、横断面的平面数据之后,就可以在Terrasolid 软件中使用“drop element on surface”工具,或者在ArcMap 软件中使用3D Analyst Tools 工具箱中的Interpolate Shape 工具(也可使用GP 工具调用“InterpolateShape_3d”命令)。 对激光点云构成的不规则三角网进行插值,可提取各种断面点的高程值。 受数据结构的影响,同数据量情况下,Terrasolid 较ArcGIS 渲染速度快。 因此,可在Terrasolid 软件中提取高程值,然后在ArcGIS 软件中进行后续处理。 经过处理,纵断面点包含桩号、方向、角度、偏距和高程5 个属性,横断面点包含桩号、方向、角度和高程4 个属性,实现了路线任意桩号、任意方向的断面数据自动提取。系统主要界面如图3 所示。
图3 断面数据处理工具条界面
(6)数据检查与融合
为了便于检查所提取地面线的真实性和可靠性,系统可将所提取的三维地面线与DTM 叠加,也可与实测地面线叠加,进而进行对比分析(如图4 所示)。 另一方面,系统还实现了激光点云断面和实测断面的融合使用。
图4 横断面图形结果
(7)数据输出
在断面数据处理过程中,所有数据都以shapefile格式进行存储。 在数据导出过程中,只需根据指定的数据格式,将shp 格式原始数据进行简单的计算和转换,即可得到想要的成果数据。
3 工程应用
在四川省某高速公路改扩建施工图测设项目中,因各种原因,无法上路进行野外测绘作业。 在既有机载激光点云数据的基础上,利用该软件工具进行纵、横断面的自动提取,生成纵断面点12 402个(6 条纵向地面线),横断面2 067个。 对部分路段横断面在既有路基外侧进行了实测,并与路基范围内激光点云断面进行了融合(见图5、表1 和表2)。 使用该软件可缩短测设周期45 d,极大提高了测设效率。
表1 路面激光点云数据与实测数据对比精度统计 m
图5 实测断面与点云断面图形对比和融合
表2 路面外边桩激光点云数据与实测数据对比精度统计m
4 结论
激光点云数据自身精度是影响所提取公路断面数据质量的关键,在既有高精度LiDAR 点云数据的基础上,基于GIS 技术和ArcGIS Add-in 平台,设计并实现了激光点云断面的自动提取。 该软件能够快速地自动提取道路设计所需的断面数据,也可实现激光点云断面数据与野外人工实测断面数据的融合,最后生成不同道路设计软件所需的数据文件,极大地提高了公路勘测设计的工作效率。 另一方面,软件实现了三维地面线与DOM 叠加的检查功能,保证了所提取数据的可靠性。