基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法

文档序号:10489813阅读:745来源:国知局
基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法
【专利摘要】本发明涉及一种基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法,包括以下步骤:获取城墙待选区,矢量化得到顶部二维中心线,并插值得到完整的城墙顶部三维中心线;对城墙顶部三维中心线密集采样得到探测基点,计算每个探测基点断面上的点云;构建城墙断面格网;并基于城墙断面“横向探测—纵向探测”城墙顶部、垛口和侧面点云数据。本发明提出利用LiDAR点云数据提取古城墙的数据,解决了利用LiDAR技术进行数字存档的关键技术,有效的解决了传统测量耗时耗力,且无法获取城墙侧面细节信息的不足。本发明提出的“纵向探测?横向探测”的城墙侧面点精确提取方法,可以有效的实现城墙侧面细节信息和顶部信息的自动获取。
【专利说明】
基于城墙断面从Li DAR点云数据自动提取古城墙数据的方法
技术领域
[0001] 本发明涉及一种提取城墙点云数据的方法,特别是一种基于城墙断面从LiDAR点 云数据提取城墙点云数据的方法。
【背景技术】
[0002] 古城墙是中国文化遗产的重要组成部分,有着重要历史和文化价值。但由于人为 的破坏、战争的摧毁、自然的风化、洪水的毁坏等,古城墙正遭受严重的破坏。对古城墙进行 数字存档是重要的保护手段,这不仅有利于了解古城墙的现状,而且对于古城墙的复建和 保护有着重要的指导意义,也对于古城墙的展示和宣传有着重要作用。
[0003] 城墙构造的目的是用于城市的抵御,通常依据城池的布局而建,在空间上蜿蜒几 到几十公里;为了抵御敌人的攻击,往往建为城墙基部较厚、顶部较窄,呈现"上窄下宽"(如 图1所示城墙断面),且侧面呈现非线性变化的结构特点。目前获取城墙信息,大多采用人工 测量的方式,十分耗时耗力。由于测量技术的制约,人们对城墙的认识和了解一直不够全 面,历次城墙"现状"调查中,各种数据亦多有出入。现有的测量方式在古城墙的数字存档中 有很多不足,具体可以归纳为以下两点:
[0004] 1)测量中采用传统测量和影像量测相结合的方式,传统测量只能测得离散的点、 线信息,无法对城墙"上窄下宽"不规则变化的侧面细节进行面覆盖的数据采集,影像量测 由于卫星影像的分辨率和二维特性的制约,也无法实现侧面的信息采集;
[0005] 2)采用分段量测城墙的高度,无法完整地获取城墙整体的高度,不利于掌握城墙 的高度变化,不利于城墙信息的及时更新和数字存档。
[0006] 激光雷达技术是近年来快速发展的一种新型测量技术,能够大范围、高时效、无接 触式地获取空间信息,已经成为辅助文化遗产保护的重要手段。通过机载激光雷达对城墙 进行扫描,得到的点云数据包括地面点、城墙点、一般建筑物点、植被等。从上述原始点云中 自动提取城墙点云数据,是古城墙数字存档中的关键技术。利用机载激光雷达数据自动提 取城墙点云存在以下难点:
[0007] 1)"上窄下宽"且不规则变化的侧面造成点云精确提取困难。一般建筑物的侧面与 地面垂直,从机载激光雷达点云数据中提取建筑物,常用的方法有边缘检测、区域生长、数 学形态学等,这些方法的实质是依赖建筑物的高程突变,得到建筑物的顶部点云或者顶部 轮廓。而城墙点云提取包括顶部和侧面点云数据的提取,但城墙"上窄下宽"的结构使得其 侧面点云与地面点云在交界处,高程突变不明显,而且侧面呈现非线性的不规则变化,因此 难以用现有的算法提取城墙点云。
[0008] 2)如图1所示,城墙点云数据存在缺失且有其他干扰。点云数据的缺失主要由遮挡 引起,遮挡的类型有三类:一是由于航线引起的城墙自身遮挡,二是城墙附近植被的遮挡, 三是城墙附近棚户对城墙侧面的遮挡。遮挡造成城墙侧面数据不完整,而往往在缺失侧面 数据处,又通常存在紧邻的植被或者棚户和房屋(如图1所示),造成对城墙点云数据的干 扰。数据的缺失和其他地物的干扰,进一步增加了城墙侧面提取的难度。

【发明内容】

[0009]本发明要解决的技术问题是:提出一种从LiDAR点云数据中提取古城墙数据的自 动高效的方法,该方法可以克服原始数据中数据缺失和其他地物的干扰,能够完整呈现城 墙侧面的非线性不规则变化,从而实现对古城墙点云数据的数字存取。
[0010]本发明为解决上述技术问题提出的技术方案是:一种基于城墙断面从LiDAR点云 数据自动提取古城墙数据的方法,包括以下步骤:
[0011]第一步、提取城墙待选区
[0012]获取预定区域的机载LiDAR点云数据,从所述LiDAR点云数据中分离出地面点云数 据,得到该预定区域的DEM数据和DSM数据,通过栅格计算从DSM数据中减去DEM数据得到归 一化的DSM数据,即得到nDSM数据;从所述nDSM数据中滤除城墙附近的建筑物和植被,得到 多个连通区域,其中面积最大的连通区域即为城墙待选区;
[0013]第二步、从所述城墙待选区中找出城墙顶部
[0014]构建三维体元坐标系,得到所述城墙待选区的三维体元格网,记录所有体元内部 所含的LiDAR数据点,剔除没有LiDAR数据点的空体元后计算剩余每个体元的粗糙度;遍历 所述城墙待选区所有的体元,若以每个体元为中心的3X3X3空间邻域中的相邻体元的粗 糙度差值小于预设的第一粗糙度差值阈值,则该中心体元与相邻体元内的LiDAR数据点属 于同一类别;计算各类别的体元中所有LiDAR数据点的平均高程值,其中平均高程值大于预 设的高程阈值且体元个数最多的一类体元即为城墙顶部;
[0015] 每个体元的粗糙度的计算方法如下:假设一个体元中共有n个LiDAR数据点,Iu为该 体元中第i个LiDAR数据点的高程值,其中I < i Sn;则该体元的粗糙!
式I
[0016] 第三步、提取城墙顶部的三维中心线
[0017] 将城墙顶部的点云数据转换为面状要素,然后对所述面状要素进行细化和跟踪并 矢量化后得到城墙顶部的二维中心线;对所述二维中心线进行等间距重采样得到多个采样 点,按d e I a u n a y三角剖分算法找到每个采样点周围构成三角形的属于城墙顶部的三个 LiDAR数据点,然后对上述三个LiDAR数据点的高程值进行线性内插得到每个采样点的高程 值;将每个采样点赋予高程值后再矢量化从而得到城墙顶部的三维中心线;
[0018] 第四步、构建城墙断面空间格网
[0019] 将所述城墙待选区的LiDAR点云数据和所述三维中心线均投影至一个二维平面, 沿所述三维中心线投影至该二维平面得到的城墙中心线按小于平均点间距的距离进行等 间距重采样得到m个探测基点,依次是0^02,…几,!!! 2 2,所述平均点间距是机载LiDAR点云 数据在扫描测量时的采样间隔,是数据本身的一个属性,可以通过查看原始LiDAR数据获 得;对每个探测基点〇i,l < I <m,计算与探测基点&邻近的探测基点构成的直线L1,该直 线Ll为探测基点O1的探测基准线,与探测基准线Ll垂直且交于0:点的垂线L2即为探测基点 (^的断面;遍历投影至所述二维平面的城墙待选区所有LiDAR点云数据,每个到垂线L2的距 离小于为断面厚度length的LiDAR数据点均属于所述探测基点0〗的断面;构建探测基点0:的 断面空间格网,令城墙断面体元的宽度width等于平均点间距,城墙断面体元的高度height 为所述城墙顶部的LiDAR数据点的最大高度和最小高度之差;计算探测基点O 1的断面上的 每个LiDAR数据点到直线LI的平面距离dl,并根据该LiDAR数据点在直线LI的不同侧赋予 flag值为1或-1,从而得到该LiDAR数据点的行、列、层号(e,j,k) = (I,Int(flag*dl/ width),Int((z-Zi)/height)+Number),式中e是该LiDAR数据点在城墙断面体元格网中的 行号,j是该LiDAR数据点在城墙断面体元格网的中的列号,k是该LiDAR数据点在城墙断面 体元格网中的层号,number是用于保证k 2 O的常数,z是该LiDAR数据点的高程值,Z1是探测 基点Oi的高程值;
[0020]第五步、基于城墙断面格网提取城墙顶部、垛口和城墙侧面 [0021 ] 对每个探测基点O1进行横向探测,以探测基准线Ll为基准在城墙断面格网内向两 侧探测,若探测的体元内有LiDAR数据点,则该体元为顶部体元,计算该体元的粗糙度,然后 计算此体元与后一体元的粗糙度差值,若该粗糙度差值小于预设的第一粗糙度差值阈值, 则后一体元也为顶部体元;若该粗糙度差值大于预设的第二粗糙度差值阈值,则后一体元 为垛口体元,并向上探测下一体元,若下一体元内有LiDAR数据点,则该下一单元也为垛口 体元;当探测到垛口体元后向外探测一个体元,若该体元内有LiDAR数据点,则该体元为顶 部体元;若在同一个方向连续探测到两个或两个以上没有LiDAR数据点的空体元时,则到达 顶部边缘,停止该方向扫描;
[0022] 对每个探测基点O1进行纵向探测,以探测基点O1所在层为基准往下移动一层,以纵 向探测基准线Ll为基准向两侧扫描探测,直至探测次数超过预定次数或者扫描到体元内有 LiDAR点数据,则停止该侧扫描,内有LiDAR点数据的体元为城墙侧面;继续往下移动一层, 重复向两侧扫描探测,直到探测基准线Ll两侧的体元内均没有LiDAR数据点,则停止纵向探 测。
[0023] 本发明中DEM为数字高程模型(Digital Elevation Model),DSM为数字表面模型 (Digital Surface Model),两者均为常用的地理信息数据。本发明第一步中从所述LiDAR 点云数据中分离出地面点云数据后,提取得到预定区域的DEM数据和DSM数据为现有技术, 可以采用多种现有方法实现。第三步中delaunay三角剖分算法也为现有技术。
[0024]优选的,第一步中采用不规则三角网加密滤波算法从所述LiDAR点云数据中分离 出地面点云数据。
[0025]优选的,第一步中所述nDSM数据中滤除城墙附近的建筑物和植被的方法是:对所 述nDSM数据的高程值进行二值化操作,滤除高程值低于所述预设的高程阈值的nDSM数据即 滤除了城墙附近的植被和建筑。
[0026]由于城墙侧面高度渐变,与地面分界不明显,为了保证城墙点云数据的完整性,对 第一步中得到的城墙待选区进行缓冲操作,即对所述城墙待选区向外扩充预定距离。
[0027]本发明带来的有益效果如下:
[0028] 1)本发明利用LiDAR点云数据提取古城墙的点云数据,可以方便对古城墙进行数 字化存档,有效的解决了古城墙传统测量方式耗时耗力,且无法获取城墙侧面细节数据(信 息)的不足。
[0029] 2)本发明通过"纵向探测-横向探测"提取精确城墙侧面点云数据,可以有效的实 现城墙侧面细节信息的自动获取,解决了传统测绘方式因城墙侧面不规则变化导致的难以 获得城墙侧面细节?目息的难题。
[0030] 3)本文提出的"城墙待选区提取-中心线获得-顶部侧面点云提取"技术方案,可以 有效从大区域机载LiDAR点云数据中,可以非常准确地分离出城墙侧面和顶部的完整信息, 解决了利用机载LiDAR点云数据进行古城墙数字存档的关键难题。
[0031] 4)本发明方法适应性强,经实践证明,使用本发明方法以南京城墙为例的古城墙 点云数据进行提取,与人工提取结果相比,其提取正确率和完整率均达97 %以上,完全可以 实现自动化提取古城墙的点云数据。
【附图说明】
[0032] 下面结合附图对本发明进一步说明。
[0033]图1是一般古城墙的断面示意图。
[0034]图2是本发明实施例待测实验区的LiDAR点云数据示意图。
[0035]图3是本发明实施例中试验区A提取的城墙数据示意图。
[0036]图4是图3中a部的放大示意图。
[0037I图5是图3中b部的放大示意图。
[0038]图6是图3中c部的放大示意图。
[0039] 图7是本发明实施例中试验区B提取的城墙数据示意图。
[0040] 图8是图7中d部的放大示意图。
[0041] 图9是图7中e部的放大示意图。
[0042] 图10是本发明实施例中试验区C提取的城墙数据示意图。
[0043]图11是图10中f部的放大示意图。
[0044]图12是图10中g部的放大示意图。
[0045] 图13是本发明实施例中提取城墙顶部三维中心线并构建城墙断面格网的方法示 意图。
[0046] 图14是本发明实施例中对每个探测基点进行横向探测和纵向探测的方法示意图。 [0047]图15是本发明实施例的流程不意图。
【具体实施方式】 [0048] 实施例
[0049]如图2所示,本实施例的实验数据是江苏省南京市城区内的机载LiDAR点云数据, 其平均点间距为lm,高程精度为20cm,平面精度为50cm〇
[0050] 本实施例选择图2中城墙上的三段实验区域进行验证,参见图2中A、B、C所示区域, 对LiDAR点云数据按高程进行渲染。第一段城墙实验区域A覆盖面积1300m*1000m,包含 5589094个LiDAR数据点,城墙全长2062m,侧面数据缺失较多,城墙顶部边缘附着一定植被, 另外侧面有城门结构。第二段城墙实验区域B,覆盖面积630m*630m,包含1674059个LiDAR数 据点,城墙全长674m,城墙数据整体较为完整,城墙周围附着的植被和房屋较少。第三段城 墙实验区域C,覆盖面积1500m*630m,包含1127355个LiDAR数据点,城墙全长1544m,侧面数 据较为完整,侧面有城门结构,顶部和侧面边缘附着大量植被,且城墙顶部上有少量茂盛的 植被。这三段墙实验区域几乎包含了城墙点云数据的所有特点,非常具有代表性。
[0051] 本实施例利用LiDAR云数据对古城墙进行信息采集,并且对获取图2中所示的三段 城墙实验区域A、B和C都做基于城墙断面的点云自动提取,方法基本相同。
[0052]本实施例以实验区域A为例进行说明基于城墙断面从LiDAR点云数据自动提取古 城墙数据的方法,如图15所示,具体包括以下步骤:
[0053]第一步、提取城墙待选区
[0054]获取图2中所示实验区域A机载LiDAR点云数据,从所述LiDAR点云数据中分离出地 面点云数据,得到该预定区域的DEM数据和DSM数据,通过栅格计算从DSM数据中减去DEM数 据得到归一化的DSM数据,即得到nDSM数据;从所述nDSM数据中滤除城墙附近的建筑物和植 被,得到多个连通区域,其中面积最大的连通区域即为城墙待选区。
[0055]本实施例对城墙实验区域A的LiDAR点云数据使用基于不规则三角网加密滤波算 法实现地面点云数据和非地面点云数据的分离,得到城墙实验区域A的地面点云数据。计 算城墙实验区域ADSM和DEM,用DSM减去DEM,得到nDSM数据,也就是得到非地面物体。非地面 物体包括城墙、一般建筑和植被等,有的建筑物之间,建筑物与植被之间可能存在连接。这 里设置一个高程阈值进行二值化操作以滤除较低的植被和低矮的建筑,使得连接起来的建 筑物被分开,得到一个二值化的建筑物标记影像。在标记影像中,将所有连通的区域标记为 候选的建筑物区域并计算面积,筛选出面积最大的连通区域,该连通区域就是我们所需要 的城墙待选区。
[0056]由于城墙侧面高度渐变,与地面分界不明显,为了保证城墙点云数据的完整性,对 所述城墙待选区进行缓冲操作,即对所述城墙待选区向外扩充预定距离,缓冲操作可以很 方便地通过现有软件Arcgis 10.1实现。
[0057]第二步、从所述城墙待选区中找出城墙顶部
[0058]以所述城墙待选区中的LiDAR点云数据的坐标最小值为原点并设定体元大小来确 定,构建规则三维体元坐标系统,规则体元坐标系统中的体元是一个标准的立方体,得到所 述城墙待选区的三维体元格网,记录所有体元内部所含的LiDAR数据点,剔除没有LiDAR数 据点的空体元后计算剩余每个体元的粗糙度;遍历所述城墙待选区所有的体元,若以每个 体元为中心的3X3X3空间邻域中的相邻体元的粗糙度差值小于预设的第一粗糙度差值阈 值,则该中心体元与相邻体元内的LiDAR数据点属于同一类别;计算各类别的体元中所有 LiDAR数据点的平均高程值,其中平均高程值大于预设的高程阈值且体元个数最多的一类 体元即为城墙顶部。
[0059] 每个体元的粗糙度的计算方法如下:假设一个体元中共有η个LiDAR数据点,Iu为该 体元中第i个LiDAR数据点的高程值,其中I < i ^ η;则该体元的粗糙启 式I

[0060] 第三步、提取城墙顶部的三维中心线
[0061] 将城墙顶部的点云数据转换为面状要素,然后对所述面状要素进行细化和跟踪并 矢量化后得到城墙顶部的二维中心线;对所述二维中心线进行等间距重采样得到多个采样 点,按d e I a u n a y三角剖分算法找到每个采样点周围构成三角形的属于城墙顶部的三个 LiDAR数据点,然后对上述三个LiDAR数据点的高程值进行线性内插得到每个采样点的高程 值;将每个采样点赋予高程值后再矢量化从而得到城墙顶部的三维中心线。
[0062]本实施例通过ArcGIS软件平台,将得到的城墙顶部LiDAR点云数据转换为面状要 素,然后通过ArcScan的扩展模块,进行细化和跟踪等操作,完成城墙顶部二维中心线的自 动提取。
[0063]第四步、构建城墙断面空间格网
[0064]如图13所示,将所述城墙待选区的LiDAR点云数据和所述三维中心线均投影至一 个二维平面,沿所述三维中心线投影至该二维平面得到的城墙中心线按小于平均点间距的 距离进行等间距重采样得到m个探测基点,依次是0^02,2,所述平均点间距是机 载LiDAR点云数据在扫描测量时的采样间隔,是数据本身的一个属性,可以通过查看原始 LiDAR数据获得;对每个探测基点(h,l < I <m,计算与探测基点&邻近的探测基点Oh构成的 直线Ll,该直线Ll为探测基点O1的探测基准线,与探测基准线Ll垂直且交于0:点的垂线L2即 为探测基点&的断面;遍历投影至所述二维平面的城墙待选区所有LiDAR点云数据,每个到 垂线L2的距离小于为断面厚度length的LiDAR数据点均属于所述探测基点0〗的断面;构建 探测基点&的断面空间格网,令城墙断面体元的宽度width等于平均点间距,城墙断面体元 的高度height为所述城墙顶部的LiDAR数据点的最大高度和最小高度之差;计算探测基点 (^的断面上的每个LiDAR数据点(如图13中p点)到直线Ll的平面距离dl,并根据该LiDAR数 据点在直线Ll的不同侧赋予flag值为1或-1,从而得到该LiDAR数据点的行、列、层号(e,j, k) = (I,Int(flag*dl/width),Int((z_Zi)/height)+Number),式中e是该LiDAR数据点在城 墙断面体元格网中的行号,j是该LiDAR数据点在城墙断面体元格网的中的列号,k是该 LiDAR数据点在城墙断面体元格网中的层号,number是用于保证k 20的常数,z是该LiDAR数 据点的高程值,Z1是探测基点O1的高程值;
[0065] 第五步、基于城墙断面格网提取城墙顶部、垛口和城墙侧面
[0066] 如图14所示,将城墙断面格网内的体元分为顶部单元和一般体元。对每个探测基 点Oi进行横向探测,以探测基准线Ll为基准在城墙断面格网内向两侧探测。以左侧为例若 探测的体元内有LiDAR数据点,则该体元为顶部体元,计算该体元的粗糙度,然后计算此体 元与后一体元的粗糙度差值,若该粗糙度差值小于预设的第一粗糙度差值阈值(第一粗糙 度差值阈值,应略小于城墙顶部体元粗糙度和城墙顶部边缘垛口体元粗糙度差值),则后一 体元也为顶部体元;若该粗糙度差值大于预设的第二粗糙度差值阈值,则认为探测到达城 墙顶部的垛口处,体元粗糙度出现突变,即后一体元为垛口体元,并向上探测下一体元,若 下一体元内有LiDAR数据点,则该下一单元也为垛口体元,标记垛口体元为了获取完整的城 墙点云数据,避免图中顶部边缘体元中数据的丢失;当探测到垛口体元后向外探测一个体 元,若该体元内有L i DAR数据点,则该体元为顶部体元;若在同一个方向连续探测到两个或 两个以上没有LiDAR数据点的空体元时,则认为扫描达到顶部边缘,此处垛口数据缺失,即 到达顶部边缘,停止该方向扫描。右侧的扫描探测与左侧相同。
[0067] 对每个探测基点O1进行纵向探测,以探测基点O1所在层为基准往下移动一层,以纵 向探测基准线Ll为基准向两侧扫描探测,直至探测次数超过预定次数或者扫描到体元内有 LiDAR点数据,则停止该侧扫描,内有LiDAR点数据的体元为城墙侧面;继续往下移动一层 (以图14所示为移动到K层),重复向两侧扫描探测,直到探测基准线Ll两侧的体元内均没有 LiDAR数据点,则停止纵向探测。
[0068]完成以上五个步骤后,就可以得到完整的实验区域A的城墙点云数据,包括顶面、 侧面、垛口等,如图3-6所示。
[0069]采用同样的方法可以从实验区域B提取出如图7-9所示的城墙点云数据,以及从实 验区域C提取出如图10-12所示的城墙点云数据。
[0070] 以手动提取的城墙点云数据作为真实城墙点云数据,将本实施例的实验城墙点云 数据点云和真实点云真实城墙点云数据进行叠合,获得两者的重叠点(正确提取的点云数 据)、手动提取独有而实验结果缺失的点(遗漏点)以及实验结果独有而手动提取缺失的点 (错误点),点云提取的正确率和完整率计算公式如下: Γ ? TP
[0071] 完整率二妒+份 TP
[0072] 正确率- TP+ FP
[0073] 其中,TP(True Positive)是指正确提取的城墙点云数据;FN(False Negative)是 指遗漏的城墙点云数据;FP(False Positive)是指误分为城墙点的非城墙点,即错误提取 的城墙点云数据。分别统计这三类点云数据的点数,按照上述公式计算正确率和完整率。 [0074]实验区域A的城墙点云数据提取结果的完整率和正确率为97.12%,98.23%,实验 区域B的城墙点云数据提取结果的完整率和正确率为99.15%,98.97%,实验区域C的城墙 点75Γ数据提取结果的完整率和正确率为97.02%,98.28%。由上可知,米用本发明提取古城 墙数据的方法提取结果的完整率和正确率均达到97%以上,这表明本发明利用LiDAR点云 数据对古城墙进行信息采集并基于城墙断面自动提取城墙点云的方法可行,且有着较高的 精度。
[0075]本发明不局限于上述实施例,本发明的上述各个实施例的技术方案彼此可以交叉 组合形成新的技术方案,另外凡采用等同替换形成的技术方案,均落在本发明要求的保护 范围内。
【主权项】
1. 一种基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法,包括w下步骤: 第一步、提取城墙待选区 获取预定区域的机载LiDAR点云数据,从所述LiDAR点云数据中分离出地面点云数据, 得到该预定区域的DEM数据和DSM数据,通过栅格计算从DSM数据中减去DEM数据得到归一化 的DSM数据,即得到nDSM数据;从所述nDSM数据中滤除城墙附近的建筑物和植被,得到多个 连通区域,其中面积最大的连通区域即为城墙待选区; 第二步、从所述城墙待选区中找出城墙顶部 构建Ξ维体元坐标系,得到所述城墙待选区的Ξ维体元格网,记录所有体元内部所含 的LiDAR数据点,剔除没有LiDAR数据点的空体元后计算剩余每个体元的粗糖度;遍历所述 城墙待选区所有的体元,若W每个体元为中屯、的3X3X3空间邻域中的相邻体元的粗糖度 差值小于预设的第一粗糖度差值阔值,则该中屯、体元与相邻体元内的LiDAR数据点属于同 一类别;计算各类别的体元中所有LiDAR数据点的平均高程值,其中平均高程值大于预设的 高程阔值且体元个数最多的一类体元即为城墙顶部; 每个体元的粗糖度的计算方法如下:假设一个体元中共有η个LiDAR数据点,hi为该体元 中第i个LiDAR数据点的高程值,其中1 < i < η;则该体元的粗糖虔电 中第Ξ步、提取城墙顶部的Ξ维中屯、线 将城墙顶部的点云数据转换为面状要素,然后对所述面状要素进行细化和跟踪并矢量 化后得到城墙顶部的二维中屯、线;对所述二维中屯、线进行等间距重采样得到多个采样点, 按delaunayS角剖分算法找到每个采样点周围构成Ξ角形的属于城墙顶部的Ξ个LiDAR数 据点,然后对上述Ξ个LiDAR数据点的高程值进行线性内插得到每个采样点的高程值;将每 个采样点赋予高程值后再矢量化从而得到城墙顶部的Ξ维中屯、线; 第四步、构建城墙断面空间格网 将所述城墙待选区的LiDAR点云数据和所述Ξ维中屯、线均投影至一个二维平面,沿所 述Ξ维中屯、线投影至该二维平面得到的城墙中屯、线按小于平均点间距的距离进行等间距 重采样得到m个探测基点,依次是化,〇2,…,Om,m > 2,所述平均点间距是机载LiDAR点云数据 在扫描测量时的采样间隔,是数据本身的一个属性,可W通过查看原始LiDAR数据获得;对 每个探测基点化,1含I含m,计算与探测基点化邻近的探测基点〇1-1构成的直线L1,该直线L1 为探测基点化的探测基准线,与探测基准线L1垂直且交于化点的垂线L2即为探测基点化的 断面;遍历投影至所述二维平面的城墙待选区所有LiDAR点云数据,每个到垂线L2的距离小 于为断面厚度length的LiDAR数据点均属于所述探测基点化的断面;构建探测基点化的断面 空间格网,令城墙断面体元的宽度wi化h等于平均点间距,城墙断面体元的高度height为所 述城墙顶部的LiDAR数据点的最大高度和最小高度之差;计算探测基点化的断面上的每个 LiDAR数据点到直线L1的平面距离dl,并根据该LiDAR数据点在直线L1的不同侧赋予flag值 为1或-1,从而得到该LiDAR数据点的行、列、层号(e , j ,k) = (I, Int(f lag*dl/width), Int ((z-Zi)/height)+Numbe;r),式中e是该LiDAR数据点在城墙断面体元格网中的行号,j是该 LiDAR数据点在城墙断面体元格网的中的列号,k是该LiDAR数据点在城墙断面体元格网中 的层号,number是用于保证k含0的常数,Z是该LiDAR数据点的高程值,Zi是探测基点化的高 程值; 第五步、基于城墙断面格网提取城墙顶部、煤口和城墙侧面 对每个探测基点化进行横向探测,W探测基准线L1为基准在城墙断面格网内向两侧探 测若探测的体元内有LiDAR数据点,则该体元为顶部体元,计算该体元的粗糖度,然后计算 此体元与后一体元的粗糖度差值,若该粗糖度差值小于预设的第一粗糖度差值阔值,则后 一体元也为顶部体元;若该粗糖度差值大于预设的第二粗糖度差值阔值,则后一体元为煤 口体元,并向上探测下一体元,若下一体元内有LiDAR数据点,则该下一单元也为煤口体元; 当探测到煤口体元后向外探测一个体元,若该体元内有LiDAR数据点,则该体元为顶部体 元;若在同一个方向连续探测到两个或两个W上没有LiDAR数据点的空体元时,则到达顶部 边缘,停止该方向扫描; 对每个探测基点化进行纵向探测,W探测基点化所在层为基准往下移动一层,W纵向探 测基准线L1为基准向两侧扫描探测,直至探测次数超过预定次数或者扫描到体元内有 LiDAR点数据,则停止该侧扫描,内有LiDAR点数据的体元为城墙侧面;继续往下移动一层, 重复向两侧扫描探测,直到探测基准线L1两侧的体元内均没有LiDAR数据点,则停止纵向探 测。2. 根据权利要求1所述的基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法, 其特征在于,第一步中所述nDSM数据中滤除城墙附近的建筑物和植被的方法是:对所述 nDSM数据的高程值进行二值化操作,滤除高程值低于所述预设的高程阔值的nDSM数据即滤 除了城墙附近的植被和建筑。3. 根据权利要求1所述的基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法, 其特征在于:第一步中得到所述城墙待选区后对其进行缓冲操作,即对所述城墙待选区向 外扩充预定距离。4. 根据权利要求1所述的基于城墙断面从LiDAR点云数据自动提取古城墙数据的方法, 其特征在于:第一步中采用不规则Ξ角网加密滤波算法从所述LiDAR点云数据中分离出地 面点云数据。
【文档编号】G06T17/05GK105844707SQ201610148169
【公开日】2016年8月10日
【申请日】2016年3月15日
【发明人】程亮, 王娅君, 李满春, 许浩, 袁, 袁一, 陈焱明, 谌颂, 伍阳, 夏南, 孙越凡
【申请人】南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1