机载LiDAR点云滤波综述 下载: 2156次
1 引言
机载激光雷达(LiDAR)技术的发展为我们提供了一种全新的获取高时空分辨率地球空间信息的观测手段[1]。机载LiDAR系统主要由全球定位系统(GPS)、激光扫描仪(LS)以及惯性导航系统(INS)组成。该系统通过主动向地面发射激光脉冲来获取多种地表信息,例如点位信息、距离信息、地面反射物材质信息等。此外,该系统通常集成成像传感器,以增强对地表的描绘能力。
机载LiDAR技术由于采用主动测量的方式,突破了传统单点测量技术[如实时动态(RTK)测量、全站仪测量等]的限制,能够快速、精确地获取物体的三维坐标信息,具有速度快、精度高等特点[2]。而且该技术不受光照、明暗变化等外界环境的影响,能够24小时全天候地进行数据采集。现如今,此项技术已广泛应用于数字地面模型获取[3-4]、道路提取[5]、电力线提取[6]、森林参数估测[7]、三维城市模型建立[8]、点云分类[9-10]等地球空间信息学科的众多领域。
在上述大多数应用中,一个非常关键的环节便是点云滤波,即从LiDAR点云中去除地物点而保留地形点的过程。近二十多年来,大量的国内外研究人员对点云滤波进行了针对性的研究。根据各种滤波算法理论背景的不同,可以对这些算法进行分类,如基于坡度、基于形态学、基于曲面拟合、基于不规则三角网等[11-13]。近年来,具有新的理论背景的滤波策略不断出现,如聚类分割、神经网络、深度学习等,因而急需对现有点云滤波算法进行更为系统、细致的归纳与总结,以便相关研究人员对各种点云滤波算法的优缺点有更为清晰的认识。本文在前人研究的基础上,结合近年来新提出的滤波算法,将点云滤波算法归纳总结为六类,包括基于坡度的滤波算法、基于形态学的滤波算法、基于曲面拟合的滤波算法、基于不规则三角网的滤波算法、基于分割的滤波算法以及基于机器学习的滤波算法。采用国际摄影测量与遥感学会提供的标准数据对各类代表性算法的滤波精度进行横向比较,综合分析各类算法的优缺点。该研究将有利于相关研究人员在实际应用中根据地形条件的不同选择更为合适的滤波算法,进而获得更高的滤波精度。
2 点云滤波
2.1 基于坡度的滤波算法
基于坡度的点云滤波算法最早由Vosselman提出[14]。该方法的基本思想是地面点间的坡度值较小,而地面点与非地面点间的坡度值较大。依次计算各个点与其周围邻近点间的坡度值,如果坡度值的最大值大于阈值,则将该点判定为非地面点,否则,判定为地面点。
Vosselman[14]指出最优坡度阈值可根据实验区域的先验知识进行设定,或通过对样本数据进行训练而得出。但是,地形通常是复杂多变的,对整个实验区域设定统一的坡度阈值明显是不合理的。Sithole[15]针对上述缺点对该方法进行了改进。在Sithole的方法中,坡度阈值不再是固定的常量,而是根据实际地形坡度的变化而变化。此改进增强了此类型算法在复杂地形区域的精度。Susaki[16]从分层迭代的粗略数字地面模型(DTM)中计算得到坡度阈值,同样实现了坡度阈值随着地形坡度的变化而变化。张皓等[17]认为在陡坎、斜坡等处的坡度往往会很大,如果靠单一的坡度阈值,这些有效的地形点都会被误判为地物点而被剔除。为减小此类误差,张皓等采用坡度、坡度增量、最小坡度、最大坡度四个参数共同进行滤波判断。
基于坡度的点云滤波算法具有原理简单、易于实现的特点,但此类型算法仍然存在以下两个问题:1) 需要找到邻近点,并逐点计算坡度值,当点云数量很大时,占用内存多且计算量大;2) 算法依赖于阈值设定,如果坡度阈值设定不准确,就难以获得理想的滤波结果。虽然现有的一些算法可以根据实际地形动态地调整阈值,但在地形断裂区域,此类型算法依然不能取得良好的滤波效果。
2.2 基于形态学的滤波算法
形态学滤波的主要原理是非地面点在形态学开运算前后高程变化较大,而地面点在形态学开运算前后高程变化小,通过设定阈值将高程变化较大的点判定为非地面点并进行剔除,其滤波过程如
对形态学滤波而言,关键之处在于滤波窗口的选择。滤波窗口选择过小不能滤除大型建筑物,而滤波窗口过大则容易导致地形过于平滑。为解决上述问题, Zhang等 [18]提出一种经典的渐进式形态学滤波法。在该方法中,窗口同样是从小变大,不同的窗口对应不同的高差阈值。通过计算形态学开运算前后点云的高差变化,将高差变化大于阈值的点判定为地物点并进行滤除。进行持续迭代,直至滤波窗口大于该区域最大建筑物的尺寸。之后许多学者基于该方法在以下三个方面进行改进:1) 针对格网内插引起误差的改进[19-21];2) 针对地形坡度假定常量的改进[22-23];3) 针对细节地形方块效应的改进[24-26]。例如,Hui等[26]结合克里金插值计算出各层级局部区域的地形起伏度,并以此对滤波准则进行优化,有效地保护了地形细节。
图 1. 形态学滤波过程示意图。(a)二维地面;(b)形态学腐蚀运算;(c)形态学膨胀运算;(d)点云滤波结果
Fig. 1. Sketch map of morphological filtering process. (a) Two-dimensional surface; (b) morphological erosion operation; (c) morphological dilation operation; (d) point cloud filtering result
整体而言,基于数学形态学的点云滤波算法原理简单、实现效率高,其难点在于滤波窗口大小的选取。虽然近年来不少学者采用渐进变化窗口大小的方式取得了不错的滤波效果,但在用大窗口进行点云滤波时依然容易将起伏的地形点误判为地物点予以剔除,从而造成Ⅰ类误差过大。尽管陆续有不同的算法对此进行改进,但现有的形态学滤波算法依然无法在复杂地形区域获得好的滤波效果。如何增强此类型算法在地形起伏较大区域的稳健性,提高其整体精度将是此类算法的研究重点。
2.3 基于曲面拟合的滤波算法
基于曲面的点云滤波算法通常采用一定的插值拟合方法建立一个粗糙地形曲面,然后通过设定某些滤波准则,如点到曲面的距离,将不满足条件的点逐步剔除。进行持续迭代,直至所获取的地形曲面精度达到所需的分辨率。
Kraus和Pfeifer[27]采用线性预测的方法,通过设定权重函数,将不满足阈值条件的点逐步删除,该方法能在森林区域取得良好的滤波效果。Mongus和Žalik[28]提出了一种无参数的多层级渐进加密点云滤波法。该方法首先对最上层级的控制点进行薄板样条(TPS)插值,获取地形曲面;然后计算下层级各控制点到该地形曲面的距离,将距离大于阈值的控制点用内插点取代;逐步迭代,直至最底层;对LiDAR点云中的各个点依次进行滤波判断,获取最终的滤波结果。该方法无需进行参数设置,大大增加了算法的通用性。随后,Chen等[29]在种子点选取以及滤波判断方面对上述方法进行了改进,提高了滤波的整体精度。Hu等[30]同样采用TPS插值方法来实现点云滤波,但是在各层级进行TPS拟合曲面的同时,计算出各层级局部区域的弯曲能量,从而实现滤波阈值的自动计算。该算法不需要过多的参数设置,拓展了算法的自适应能力,并能获得2.85%的平均总误差。
基于曲面拟合的点云滤波算法由于采用多层级迭代的方式,每一层级的滤波结果都会受到上一层级滤波结果的影响。如果初始地形曲面不准确,后续滤波结果就会出现误差传递与累积。此外,所选取的内插方法对滤波结果影响也很大。因此,选取何种插值方法,如何建立更准确的初始数字地面模型,如何控制误差传递将是此类型方法今后研究的重点。
2.4 基于不规则三角网的滤波算法
经典的渐进加密不规则三角网(PTIND)滤波算法最早由Axelsson提出,该方法通常简称为PTD滤波算法[31]。该方法首先获取地面种子点,然后对这些地面种子点建立不规则三角网(TIN)并进行迭代加密。在每次迭代过程中,都对其余各点到所在三角形的反复角和反复距离进行阈值判断,将满足条件的点加入TIN。迭代过程一直持续到没有点可以再加入TIN为止。
Zhang和Li[32]指出传统PTD方法无法在地形凸起区域有效地保护地形细节,导致Ⅰ类误差偏大。为解决该问题,Zhang和Lin将光滑约束分割法与PTD方法相结合,经实验验证,该方法能够有效地减小Ⅰ类误差。隋立春等[33]首先对各个格网内的点云按升序进行排序,然后依照排序顺序再对TIN进行加密。实验表明,与传统PTD方法相比,此改进能够有效减小Ⅱ类误差,提高滤波的可靠性。此外,传统PTD法在地形起伏较大区域容易过度腐蚀地形,造成Ⅰ类误差过大。为解决上述问题,高广等[34]在原有滤波准则的基础上增加了地形预测角判断准则。吴芳等[35]在选择地面种子点前首先去除非地面点的影响,此改进有效保证初始TIN模型能够最大程度地契合原有地形。
渐进加密不规则三角网的滤波算法是近年来表现最为稳健的滤波算法。在Sithole和Vosselman对八种主流滤波算法的实验对比中,Axelsson提出的PTD算法能获得最小的平均总误差以及最高的Kappa系数 [11]。并且该方法在各种复杂地形中均能获得良好的滤波效果。该方法最主要的弊端是需要占用大量的内存空间,当点云数据量特别大时,运算处理时间稍长[36]。此外,初始构建的TIN对后续滤波判断的影响很大。而PTD算法对低位噪声敏感,极易将低位噪声点或者低势地物点误判为地面点。因此,如何针对上述缺点进行改进将是此类型算法的研究重点。
2.5 基于分割的滤波算法
基于聚类分割的滤波算法通常包含两步,首先采取某种分割方法对点云进行分割,然后再对分割的结果按照某种设定的规则进行点云滤波。点云聚类分割的方法有很多,例如扫描线的分割方法、Mean Shift分割法、区域生长法、随机抽样一致法(RANSAC)等。在对分割结果进行滤波判断时,大多数算法通常都基于地面点聚类区域低于地物点聚类区域这一假设[37]。
Tóvári和Pfeifer[38]首先对点云进行分割,然后对分割后的每一部分计算残差值,并根据残差值对属于同一部分的点云设置相同的权重,再按照Kraus和Pfeifer所提的方法进行迭代滤波。实验表明,此改进方法无论是在城市区域还是在森林区域都具有较强的稳健性,并能获取较好的滤波结果。Lin和Zhang[37]首先采用区域生长法将点云分割成不同的部分,再设定规则选择地面种子点,然后对地面种子点所在部分的所有点建立初始TIN,最后按照PTD算法不断迭代获取最终的地面点云。实验结果表明,此方法能够使Ⅰ类误差减小18.26%,使总误差减小11.47%。Chen等[39]同样采用区域生长法对点云进行分割,并以此为基础改进此前提出的多分辨率渐进分类算法(MHC)。改进后的算法能够使平均总误差降低至2.99%。
整体而言,基于聚类分割的点云滤波算法能够获得更好的点云滤波效果,这是因为:1) 点云聚类分割后,点云块能够提供更多的语义信息,更有利于后续的滤波判断;2) 分割后的点云能准确地到达地形断裂线或者高程跳跃边缘。尽管如此,此类点云滤波算法的滤波效果过分依赖聚类分割的结果,如果聚类分割结果不准确,后续的点云滤波就会受到很大的影响,因此选择合适的点云分割方法是十分必要的。
2.6 基于机器学习的滤波算法
基于机器学习的滤波算法往往将点云滤波视为LiDAR点云的二分类问题。通过采用某种机器学习算法,如条件随机场、支持向量机、Adaboost等,对训练样本进行训练获取训练模型,然后采用此训练模型对点云进行0,1标记(0表示地面点,1表示非地面点),从而实现点云滤波。
Lu等[40]建立了一种基于离散和连续隐含随机变量的条件随机场模型,以区分地面点和非地面点,该模型可以获得3.46%的平均总误差。Jahromi等[41]提出一种基于人工神经网络(ANN)的点云滤波算法。该方法分别采用半自动化获取训练样本和人工获取训练样本两种策略来实现点云滤波。实验结果表明以上两种滤波策略都能获得良好的滤波精度。近来,Hu和Yuan[42]采用卷积神经网络(CNN)通过对点云进行深度学习从而实现点云滤波。该方法将点云滤波问题转化为图像的分类问题,通过对1.728×107个标记的点云进行训练学习,可以获得一个超过1.5×108个参数的深度卷积神经网络模型。利用该模型进行点云滤波,可以获取1.22%的平均总误差,这也是现有滤波算法所能获得的最好的滤波精度。
尽管基于机器学习的滤波算法能够获得良好的滤波精度,但该类型算法仍然具有以下问题。首先,此类型算法需要大量的标记点云作为训练样本,而将点云标记为地面点、地物点将耗费大量的人力。此外,训练样本一般要求覆盖所有的地形特征,这一点是很难实现的。最后,机器学习算法往往需要占用大量的计算机资源,想要取得好的滤波结果将会非常耗时。
3 点云滤波精度对比分析
3.1 实验数据
为便于比较各种滤波算法的滤波精度,国际摄影测量与遥感学会(ISPRS)提供了15组机载LiDAR样本数据用于滤波测试(http://www.itc.nl/isprswgⅢ-3/filtertest/)。这15组样本数据由Optech ALTM扫描仪获取,分别位于Vaihingen/Enz测试场和Stuttgart市中心的7个场景,其中4个位于城市区域,3个位于森林区域,点间距分别为1~1.5 m(样本S12~S42)和2~3.5 m(样本S51~S71)。样本区域包含多种复杂地形、地物,例如大型建筑物、陡坡、低矮植被等[11]。详细的样本数据特点如
表 1. 样本数据特征
Table 1. Sample data features
|
图 2. 实验数据示意图。(a)样本S11点云示意图;(b)样本S12点云示意图
Fig. 2. Sketch map of experimental data. (a) Sketch map of S11; (b) sketch map of S12
3.2 实验对比分析
从以上六种滤波算法中分别选取一种代表性的算法进行精度比较。这六种算法分别为Susaki提出的自适应坡度滤波算法,Hui等提出的基于渐进克里金插值形态学滤波改进算法,Hu等提出的自适应曲面滤波算法,Axelsson提出的PTD算法,Chen等提出的改进的多分辨率渐进分类算法,以及Hu和Yuan提出的深度学习算法。以上六种算法,除Susaki只采用了ISPRS提供的前九组实验数据,其余五种算法均采用了15组实验数据进行实验。本文采用Ⅰ类误差、Ⅱ类误差以及总误差对以上六种算法的滤波精度进行横向比较。15组样本数据中,前五种算法均给出了各个样本数据对应的总误差,其对比结果如
1) 滤波算法在平坦区域滤波效果比较好(如样本S21、S31、S42、S61、S71),而在地形复杂区域滤波效果比较差(如样本S11、S41、S53)。
2) 相较于其他三种类型滤波算法,基于坡度和基于形态学的滤波算法的滤波精度较低,且算法对复杂地形的适应能力较差。
3) 在城市区域,Hu等提出的自适应曲面滤波算法能够获得最好的滤波效果,如在样本S11、S12、S21、S22、S24、S31、S42中,自适应曲面滤波法能够获得最小的总误差;在森林区域,Chen等提出的改进的多分辨率渐进分类算法能够获得最好的滤波效果,如在样本S51、S52、S53、S61、S71中,改进的多分辨率渐进分类算法能够获得最小的总误差。
六种算法的平均Ⅰ类误差、平均Ⅱ类误差以及平均总误差对比结果如
4 结束语
机载LiDAR点云滤波是点云数据处理中一个非常重要的环节。准确的滤波结果将有利于提高建立DTM、提取道路、估测树高等点云后处理结果的精度。本文根据各种算法理论背景的不同,将现有的主流滤波算法归纳总结为六类,分别为基于坡度、基于形态学、基于曲面拟合、基于TIN、基于分割以及基于机器学习的滤波算法。系统阐述了各种算法的滤波原理、实现步骤以及优缺点。并针对ISPRS提供的测试数据,对各类算法进行精度比较。整体而言,基于机器学习的滤波算法在训练样本足够多的情况下能够获得最好的滤波效果。但是其较为复杂的样本标记以及较长的数据处理时间将会限制此类型算法的进一步发展。相较而言,在其他五种类型算法中,基于分割的滤波算法因能获得更多聚类后的语义信息而能够获得更高的滤波精度。此外,采用渐进迭代方式的滤波算法也能获得较好的滤波结果。
探索复杂环境下更加有效且稳健的滤波方法依然是研究的热点。将传统滤波算法加以融合,利用各种滤波算法的优势,将有利于提高算法在各种复杂地形中的滤波精度。此外,结合一些数学判定方法,如模糊判别法、贝叶斯判别法,增强算法在地形起伏区域的滤波判断,将更有利于地面点和地物点的准确分类。
就点云滤波的发展而言,如何提高针对海量点云数据的滤波效率,如何减少参数设置提高滤波算法自动化程度,以及如何在控制Ⅰ类误差时抑制Ⅱ类误差增大,将是点云滤波今后的研究重点。
[1] 张小红. 机载激光雷达测量技术理论与方法[M]. 武汉: 武汉大学出版社, 2007.
Zhang XH. Airborne LiDAR measure technique theory and method[M]. Wuhan: Wuhan University, 2007.
[2] 李德仁, 王艳军, 邵振峰. 新地理信息时代的信息化测绘[J]. 武汉大学学报(信息科学版), 2012, 3(1): 1-6.
Li D R, Wang Y J, Shao Z F. Geo-information of new geographic information era[J]. Geomatics and Information Science of Wuhan University, 2012, 3(1): 1-6.
[3] 惠振阳, 胡友健. 基于LiDAR数字高程模型构建的数学形态学滤波方法综述[J]. 激光与光电子学进展, 2016, 53(8): 080001.
[4] 黄作维, 刘峰, 胡光伟. 基于多尺度虚拟格网的LiDAR点云数据滤波改进方法[J]. 光学学报, 2017, 37(8): 0828004.
[5] 程效军, 程小龙, 胡敏捷, 等. 融合航空影像和LIDAR点云的建筑物探测及轮廓提取[J]. 中国激光, 2016, 43(5): 0514002.
[6] 林祥国, 宁晓刚, 段敏燕, 等. 分层随机抽样的单档电力线LiDAR点云聚类方法[J]. 测绘科学, 2017, 42(4): 1-11.
Lin X G, Ning X G, Duan M Y, et al. Clustering of airborne LiDAR point cloud of 3D powerline reconstruction in a span using stratified sampling[J]. Science of Surveying and Mapping, 2017, 42(4): 1-11.
[7] 赵宗泽, 张永军. 基于植被指数限制分水岭算法的机载激光点云建筑物提取[J]. 光学学报, 2016, 36(10): 1028002.
[8] 杨威, 万幼川, 何培培. 张量投票的机载LiDAR数据建筑物自动提取[J]. 测绘科学, 2016, 41(9): 7-10.
Yang W, Wan Y C, He P P. Automated detection of building region from airborne LiDAR data based on tensor voting[J]. Science of Surveying and Mapping, 2016, 41(9): 7-10.
[9] 程效军, 郭王, 李泉, 等. 基于强度与颜色信息的地面LiDAR点云联合分类方法[J]. 中国激光, 2017, 44(10): 1010007.
[10] 张爱武, 肖涛, 段乙好. 一种机载LiDAR点云分类的自适应特征选择方法[J]. 激光与光电子学进展, 2016, 53(8): 082802.
[12] Liu X Y. Airborne LiDAR for DEM generation: some critical issues[J]. Progress in Physical Geography, 2008, 32(1): 31-49.
[17] 张皓, 贾新梅, 张永生, 等. 基于虚拟网格与改进坡度滤波算法的机载LIDAR数据滤波[J]. 测绘科学技术学报, 2009, 26(3): 224-227.
Zhang H, Jia X M, Zhang Y S, et al. Filtering of airborne LiDAR data based on pseudo-grid concept and modified slope filtering algorithm[J]. Journal of Geomatics Science and Technology, 2009, 26(3): 224-227.
[19] 张永军, 吴磊, 林立文, 等. 基于LiDAR数据和航空影像的水体自动提取[J]. 武汉大学学报(信息科学版), 2010, 35(8): 936-940.
Zhang Y J, Wu L, Lin L W, et al. Automatic water body extraction based on LiDAR data and aerial images[J]. Geomatics and Information Science of Wuhan University, 2010, 35(8): 936-940.
[20] 董保根, 秦志远, 朱传新, 等. 关于机载LiDAR点云数据形态学滤波的几点思考[J]. 测绘科学, 2013, 38(4): 19-21.
Dong B G, Qin Z Y, Zhu C X, et al. Perspectives of morphological filtering for airborne LiDAR point clouds data[J]. Science of Surveying and Mapping, 2013, 38(4): 19-21.
[21] 李鹏程, 王慧, 刘志青, 等. 一种基于扫描线的数学形态学LiDAR点云滤波方法[J]. 测绘科学技术学报, 2011, 28(4): 274-277.
Li P C, Wang H, Liu Z Q, et al. A morphological LiDAR points cloud filtering method based on scan lines[J]. Journal of Geomatics Science and Technology, 2011, 28(4): 274-277.
[23] 李峰, 崔希民, 袁德宝, 等. 改进坡度的LiDAR点云形态学滤波算法[J]. 大地测量与地球动力学, 2012, 32(5): 128-132.
Li F, Cui X M, Yuan D B, et al. Slope improved morphological filtering algorithm for LiDAR point clouds[J]. Journal of Geodesy and Geodynamics, 2012, 32(5): 128-132.
[25] 谷延超, 范东明, 余彪, 等. 基于形态学与区域生长的机载LiDAR点云数据滤波[J]. 大地测量与地球动力学, 2015, 35(5): 811-815.
Gu Y C, Fan D M, Yu B, et al. Filtering of airborne LiDAR point cloud data based on mathematical morphology and region growing[J]. Journal of Geodesy and Geodynamics, 2015, 35(5): 811-815.
[33] 隋立春, 张熠斌, 张硕, 等. 基于渐进三角网的机载LiDAR点云数据滤波[J]. 武汉大学学报(信息科学版), 2011, 36(10): 1159-1163.
Sui L C, Zhang Y B, Zhang S, et al. Filtering of airborne LiDAR point cloud data based on progressive TIN[J]. Geomatics and Information Science of Wuhan University, 2011, 36(10): 1159-1163.
[34] 高广, 马洪超, 张良, 等. 顾及地形断裂线的LiDAR点云滤波方法研究[J]. 武汉大学学报(信息科学版), 2015, 40(4): 474-478.
Gao G, Ma H C, Zhang L, et al. A ground filtering algorithm for airborne LiDAR in consideration of terrain break lines[J]. Geomatics and Information Science of Wuhan University, 2015, 40(4): 474-478.
[35] 吴芳, 张宗贵, 郭兆成, 等. 基于机载LiDAR点云滤波的矿区DEM构建方法[J]. 国土资源遥感, 2015, 27(1): 62-67.
Wu F, Zhang Z G, Guo Z C, et al. Method of deriving DEM in the mining area based on filtering of airborne LiDAR data[J]. Remote Sensing for Land & Resources, 2015, 27(1): 62-67.
[38] TóváriD, PfeiferN. Segmentation based robust interpolation - a new approach to laser data filtering[C]. Proceedings of the ISPRS Workshop Laser Scanning, 2005, 36( Part 3/W19): 79- 84.
[39] Chen CF, Li YY, Yan CQ, et al. An improved multi-resolution hierarchical classification method based on robust segmentation for filtering ALS point clouds[J]. International Journal of Remote Sensing, 37( 4): 950- 968.
Article Outline
惠振阳, 程朋根, 官云兰, 聂运菊. 机载LiDAR点云滤波综述[J]. 激光与光电子学进展, 2018, 55(6): 060001. Zhenyang Hui, Penggen Cheng, Yunlan Guan, Yunju Nie. Review on Airborne LiDAR Point Cloud Filtering[J]. Laser & Optoelectronics Progress, 2018, 55(6): 060001.