留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

一种多尺度自适应点云坡度滤波算法

汪文琪 李宗春 付永健 何华 熊峰

汪文琪, 李宗春, 付永健, 何华, 熊峰. 一种多尺度自适应点云坡度滤波算法[J]. 武汉大学学报 ● 信息科学版, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
引用本文: 汪文琪, 李宗春, 付永健, 何华, 熊峰. 一种多尺度自适应点云坡度滤波算法[J]. 武汉大学学报 ● 信息科学版, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
WANG Wenqi, LI Zongchun, FU Yongjian, HE Hua, XIONG Feng. A Multi-scale Adaptive Slope Filtering Algorithm for Point Cloud[J]. Geomatics and Information Science of Wuhan University, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
Citation: WANG Wenqi, LI Zongchun, FU Yongjian, HE Hua, XIONG Feng. A Multi-scale Adaptive Slope Filtering Algorithm for Point Cloud[J]. Geomatics and Information Science of Wuhan University, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016

一种多尺度自适应点云坡度滤波算法

doi: 10.13203/j.whugis20200016
详细信息
    作者简介:

    汪文琪,硕士生,主要研究方向为激光雷达点云数据处理。wenqi_xd@163.com

    通讯作者: 李宗春,博士,教授。13838092876@139.com
  • 中图分类号: P237

A Multi-scale Adaptive Slope Filtering Algorithm for Point Cloud

More Information
    Author Bio:

    WANG Wenqi, postgraduate, specializes in data processing of LiDAR point cloud. E-mail: wenqi_xd@163.com

    Corresponding author: LI Zongchun, PhD, professor. E-mail: 13838092876@139.com
  • 摘要: 点云坡度滤波算法原理简单、易于实现,为进一步提升坡度滤波算法的自适应性,提出了一种多尺度自适应点云坡度滤波算法。首先,在数据预处理的基础上引入虚拟网格对点云数据进行分割;然后,利用距离加权的方式逐次计算网格点的坡度角,结合k均值聚类和正态分布自适应确定滤波阈值;最后,使用多尺度策略逐级缩小网格尺寸实现点云数据的精细滤波。采用两种密度不同的点云数据集对所提算法进行了验证,并将结果与两种坡度滤波算法及国际摄影测量和遥感学会提供的经典算法进行对比,实验表明所提算法整体滤波结果较好,稳定性更高,且适用于不同场景的点云数据。
  • 图  1  本文算法流程图

    Figure  1.  Flowchart of the Proposed Algorithm

    图  2  滤波8邻域网格

    Figure  2.  Eight Neighborhood Grid of Filtering

    图  3  坡度计算示意图

    Figure  3.  Diagram of Slope Calculation

    图  4  样本12地面点滤波

    Figure  4.  Ground Point Filtering of Sample 12

    图  5  数据集2

    Figure  5.  Dataset 2

    图  6  数据集2滤波结果

    Figure  6.  Filtering Result of Dataset 2

    表  1  数据集1样本地形特征及初始网格边长

    Table  1.   Topographic Features and Initial Grid Length of Dataset 1

    场景 样本数据 地形特征 边长/m
    城市 样本11 位于陡坡上的植被和建筑物 15
    样本12 小物体(汽车等) 25
    样本21 狭窄的桥梁 25
    样本22 桥梁、通道 30
    样本23 复杂、大型建筑物和不连续的地形 30
    样本24 斜坡 15
    样本31 不连续地形,存在低值噪声点 30
    样本41 多路径误差造成的低值噪声点 30
    样本42 细长、低矮地物,频繁的地形变化 50
    森林 样本51 位于斜坡上的植被 20
    样本52 低矮植被,不连续、陡峭山脊 20
    样本53 不连续的地形 15
    样本54 建筑物 30
    样本61 不连续地形,山脊,沟渠 15
    样本71 桥梁,不连续地形 20
    下载: 导出CSV

    表  2  数据集1滤波误差/%

    Table  2.   Filtering Errors of Dataset 1/%

    样本数据 第Ⅰ类误差 第Ⅱ类误差 总误差
    样本11 5.12 34.74 17.74
    样本12 4.22 6.51 5.34
    样本21 5.77 1.84 4.90
    样本22 8.97 6.39 8.17
    样本23 9.87 6.97 8.50
    样本24 6.09 15.74 8.75
    样本31 2.08 8.27 4.93
    样本41 5.32 10.51 7.91
    样本42 1.65 4.23 3.48
    样本51 0.64 30.25 7.05
    样本52 3.72 26.90 6.10
    样本53 2.87 38.96 4.33
    样本54 3.46 8.61 5.57
    样本61 2.59 22.13 3.26
    样本71 7.13 10.90 7.56
    下载: 导出CSV

    表  3  不同坡度滤波算法总误差/%

    Table  3.   Total Errors of Different Slope Filtering Algorithms/%

    场景 样本数据 文献[4] 文献[6] 本文算法
    城市 样本11 23.25 18.62 17.74
    样本12 10.21 7.08 5.34
    样本21 7.76 8.50 4.90
    样本22 20.86 7.29 8.17
    样本23 22.71 8.42 8.50
    样本24 25.28 6.71 8.75
    样本31 3.15 2.74 4.93
    样本41 23.67 3.93 7.91
    样本42 3.85 3.26 3.48
    均值 15.64 7.39 7.75
    均方差 9.21 4.74 4.21
    森林 样本51 7.02 7.05
    样本52 27.53 6.10
    样本53 37.07 4.33
    样本54 6.33 5.57
    样本61 21.63 3.26
    样本71 21.83 7.56
    均值 20.24 5.64
    均方差 11.91 1.63
    下载: 导出CSV

    表  4  各滤波算法城市场景总误差/%

    Table  4.   Total Errors of Different Filtering Algorithms in Urban Scene/%

    样本 Elmqvist算法 Sohn算法 Axelsson算法 Pfeifer算法 Brovelli算法 Roggero算法 Wack算法 本文算法
    样本11 22.40 20.49 10.76 17.35 36.96 20.80 24.02 17.74
    样本12 8.18 8.39 3.25 4.50 16.28 6.61 6.61 5.34
    样本21 8.53 8.80 4.25 2.57 9.30 9.84 4.55 4.90
    样本22 8.93 7.54 3.63 6.71 22.28 23.78 7.51 8.17
    样本23 12.28 9.84 4.00 8.22 27.80 23.20 10.97 8.50
    样本24 13.83 13.33 4.42 8.64 36.06 23.25 11.53 8.75
    样本31 5.34 6.39 4.78 1.80 12.92 2.14 2.21 4.93
    样本41 8.76 11.27 13.91 10.75 17.03 12.21 9.01 7.91
    样本42 3.68 1.78 1.62 2.64 6.38 4.30 3.54 3.48
    均值 10.21 9.76 5.62 7.02 20.56 14.01 8.88 7.75
    均方差 5.51 5.16 3.99 4.97 11.08 8.82 6.51 4.21
    下载: 导出CSV

    表  5  各滤波算法森林场景总误差/%

    Table  5.   Total Errors of Different Filtering Algorithm in Forest Scene/%

    样本 Elmqvist算法 Sohn算法 Axelsson算法 Pfeifer算法 Brovelli算法 Roggero算法 Wack算法 本文算法
    样本51 21.31 9.31 2.72 3.71 22.81 3.01 11.45 7.05
    样本52 57.95 12.04 3.07 19.64 45.56 9.78 23.83 6.10
    样本53 48.45 20.19 8.91 12.60 52.81 17.29 27.24 4.33
    样本54 21.26 5.68 3.23 5.47 23.89 4.96 7.63 5.57
    样本61 35.87 2.99 2.08 6.91 21.68 18.99 13.47 3.26
    样本71 34.22 2.20 1.63 8.85 34.98 5.11 16.97 7.56
    均值 36.51 8.74 3.61 9.53 33.62 9.86 16.77 5.64
    均方差 14.64 6.75 2.67 5.82 13.17 6.81 7.51 1.63
    下载: 导出CSV

    表  6  各滤波算法总误差综合/%

    Table  6.   Total Erros of Different Filtering Algorithms/%

    评价指标 Elmqvist算法 Sohn算法 Axelsson算法 Pfeifer算法 Brovelli算法 Roggero算法 Wack算法 本文算法
    均值 20.73 9.34 4.82 8.02 25.78 12.35 12.04 6.91
    均方差 16.48 5.63 3.56 5.27 13.26 8.09 7.77 3.49
    下载: 导出CSV
  • [1] 杨必胜, 梁福逊, 黄荣刚. 三维激光扫描点云数据处理研究进展、挑战与趋势[J]. 测绘学报, 2017, 46(10): 1509-1516 doi:  10.11947/j.AGCS.2017.20170351

    Yang Bisheng, Liang Fuxun, Huang Ronggang. Progress, Challenges and Perspectives of 3D Li-DAR Point Cloud Processing[J]. Acta Geodaetica et Cartographica Sinica, 2017, 46(10): 1509-1516 doi:  10.11947/j.AGCS.2017.20170351
    [2] 黄先锋, 李卉, 王潇, 等. 机载LiDAR数据滤波方法评述[J]. 测绘学报, 2009, 38(5): 466-469 doi:  10.3321/j.issn:1001-1595.2009.05.014

    Huang Xianfeng, Li Hui, Wang Xiao, et al. Filter Algorithms of Airborne LiDAR Data: Review and Prospects[J]. Acta Geodaetica et Cartographica Si-nica, 2009, 38(5): 466-469 doi:  10.3321/j.issn:1001-1595.2009.05.014
    [3] Vosselman G. Slope Based Filtering of Laser Altime-try Data[J]. International Archives of Photogramme-try and Remote Sensing, 2000, 33: 678-684
    [4] Sithole G. Filtering of Laser Altimetry Data Using a Slope Adaptive Filter[J]. International Archives of Photogrammetry and Remote Sensing, 2001, 34: 203-210
    [5] 张皓, 贾新梅, 张永生, 等. 基于虚拟网格与改进坡度滤波算法的机载LiDAR数据滤波[J]. 测绘科学技术学报, 2009, 26(3): 224-227 doi:  10.3969/j.issn.1673-6338.2009.03.018

    Zhang Hao, Jia Xinmei, Zhang Yongsheng, 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 doi:  10.3969/j.issn.1673-6338.2009.03.018
    [6] Susaki J. Adaptive Slope Filtering of Airborne Li-DAR Data in Urban Areas for Digital Terrain Model (DTM) Generation[J]. Remote Sensing, 2012, 4(6): 1804-1819 doi:  10.3390/rs4061804
    [7] Rashidi P, Rastiveis H. Extraction of Ground Points from LiDAR Data Based on Slope and Progressive Window Thresholding (SPWT)[J]. Earth Observation and Geomatics Engineering, 2018, 2(1): 36-44
    [8] 孙崇利, 苏伟, 武红敢, 等. 改进的多级移动曲面拟合激光雷达数据滤波方法[J]. 红外与激光工程, 2013, 42(2): 349-354 doi:  10.3969/j.issn.1007-2276.2013.02.014

    Sun Chongli, Su Wei, Wu Honggan, et al. Improved Hierarchical Moving Curved Filtering Method of Li-DAR Data[J]. Infrared and Laser Engineering, 2013, 42(2): 349-354 doi:  10.3969/j.issn.1007-2276.2013.02.014
    [9] 朱笑笑, 王成, 习晓环, 等. 多级移动曲面拟合的自适应阈值点云滤波方法[J]. 测绘学报, 2018, 47(2): 153-160 https://www.cnki.com.cn/Article/CJFDTOTAL-CHXB201802004.htm

    Zhu Xiaoxiao, Wang Cheng, Xi Xiaohuan, et al. Hie-rarchical Threshold Adaptive for Point Cloud Filter Algorithm of Moving Surface Fitting[J]. Acta Geo-daetica et Cartographica Sinica, 2018, 47(2): 153-160 https://www.cnki.com.cn/Article/CJFDTOTAL-CHXB201802004.htm
    [10] 李鹏程, 徐青, 邢帅, 等. 利用波形信息的加权曲面拟合LiDAR点云滤波[J]. 武汉大学学报∙信息科学版, 2018, 43(3): 420-427 https://www.cnki.com.cn/Article/CJFDTOTAL-WHCH201803014.htm

    Li Pengcheng, Xu Qing, Xing Shuai, et al. Weighted Curve Fitting Filtering Method Based on Full-Waveform LiDAR Data[J]. Geomatics and In-formation Science of Wuhan University, 2018, 43 (3): 420-427 https://www.cnki.com.cn/Article/CJFDTOTAL-WHCH201803014.htm
    [11] Pingel T J, Clarke K C, McBride W A. An Im-proved Simple Morphological Filter for the Terrain Classification of Airborne LiDAR Data[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2013, 77: 21-30 doi:  10.1016/j.isprsjprs.2012.12.002
    [12] 卢秀山, 刘如飞, 田茂义, 等. 利用改进的数学形态法进行车载激光点云地面滤波[J]. 武汉大学学报∙信息科学版, 2014, 39 (5): 514-519 https://www.cnki.com.cn/Article/CJFDTOTAL-WHCH201405002.htm

    Lu Xiushan, Liu Rufei, Tian Maoyi, et al. Ground Filtering of Vehicle-Borne Laser Point Cloud Based on Adaptive Mathematical Morphology[J]. Geomatics and Information Science of Wuhan University, 2014, 39(5): 514-519 https://www.cnki.com.cn/Article/CJFDTOTAL-WHCH201405002.htm
    [13] 王竞雪, 张雪洋, 洪绍轩, 等. 结合形态学和TIN三角网的机载LiDAR点云滤波算法[J]. 测绘科学, 2019, 44(5): 151-156 https://www.cnki.com.cn/Article/CJFDTOTAL-CHKD201905023.htm

    Wang Jingxue, Zhang Xueyang, Hong Shaoxuan, et al. Aerial LiDAR Point Cloud Filtering Algorithm Combining Mathematical Morphology and TIN[J]. Science of Surveying and Mapping, 2019, 44(5): 151-156 https://www.cnki.com.cn/Article/CJFDTOTAL-CHKD201905023.htm
    [14] Zhang W M, Qi J B, Wan P, et al. An Easy-to-Use Airborne LiDAR Data Filtering Method Based on Cloth Simulation[J]. Remote Sensing, 2016, 8(6): 501 doi:  10.3390/rs8060501
    [15] Wan P, Zhang W M, Skidmore A K, et al. A Sim-ple Terrain Relief Index for Tuning Slope-Related Parameters of LiDAR Ground Filtering Algorithms [J]. ISPRS Journal of Photogrammetry and Re-mote Sensing, 2018, 143: 181-190 doi:  10.1016/j.isprsjprs.2018.03.020
    [16] Sithole G, Vosselman G. ISPRS Comparison of Fil-ters[R]. Delft: ISPRS Commission Ⅲ, Working Group 3, 2003
    [17] Bartels M, Wei H. Threshold-Free Object and Ground Point Separation in LiDAR Data[J]. Pat-tern Recognition Letters, 2010, 31(10): 1089-1099 doi:  10.1016/j.patrec.2010.03.007
    [18] 范金城, 梅长林. 数据分析[M]. 2版. 北京: 科学出版社, 2010

    Fan Jincheng, Mei Changlin. Data Analysis[M]. 2nd ed. Beijing: Science Press, 2010
    [19] 马得利, 孙永康, 杨建英, 等. 基于无人机遥感技术的废弃采石场立地条件类型划分[J]. 北京林业大学学报, 2018, 40 (9): 90-97 https://www.cnki.com.cn/Article/CJFDTOTAL-BJLY201809010.htm

    Ma Deli, Sun Yongkang, Yang Jianying, et al. Site Condition Classification Based on Remote Sensing Technology of Unmanned Aerial Vehicle in Aban-doned Quarry[J]. Journal of Beijing Forestry Uni-versity, 2018, 40(9): 90-97 https://www.cnki.com.cn/Article/CJFDTOTAL-BJLY201809010.htm
    [20] Axelsson P. DEM Generation from Laser Scanner Data Using Adaptive TIN Models[J]. International Archives of Photogrammetry and Remote Sensing, 2000, 33: 110-117
    [21] Elmqvist M, Jungert E, Lantz F, et al. Terrain Modelling and Analysis Using Laser Scanner Data [J]. International Archives of Photogrammetry and Remote Sensing, 2001, 34: 219-227
    [22] Brovelli M A, Cannata M, Longoni U M. Managing and Processing LiDAR Data Within GRASS[C]// The Open Source GIS-GRASS Users Conference, Trento, Italy, 2002
    [23] Wack R, Wimmer A. Digital Terrain Models from Airborne Laser Scanner Data: A Grid Based Ap-proach[J]. International Archives of Photogramme-try and Remote Sensing, 2002, 35: 293-296
    [24] Pfeifer N, Reiter T, Briese C, et al. Interpolation of High Quality Ground Models from Laser Scanner Data in Forested Areas[J]. International Archives of Photogrammetry and Remote Sensing, 1999, 32: 31-36
    [25] Sohn G, Dowman I. Terrain Surface Reconstruc-tion by the Use of Tetrahedron Model with the MDL Criterion[J]. International Archives of Photogram-metry and Remote Sensing, 2002, 35: 336-344
    [26] Roggero M. Airborne Laser Scanning: Clustering in Raw Data[J]. International Archives of Photogram-metry and Remote Sensing, 2001, 34: 227-232
  • [1] 李健, 曹垚, 王宗敏, 王广印.  融合k-means聚类和Hausdorff距离的散乱点云精简算法 . 武汉大学学报 ● 信息科学版, 2020, 45(2): 250-257. doi: 10.13203/j.whugis20180204
    [2] 赵江洪, 董岩, 黄明, 张晓光, 马思宇, 孙铭悦.  具有孔洞的地下电缆工井模型拓扑重构研究 . 武汉大学学报 ● 信息科学版, 2019, 44(12): 1849-1858. doi: 10.13203/j.whugis20180126
    [3] 于安斌, 梅文胜.  一种R树与格网结合的海量地铁隧道点云管理方法 . 武汉大学学报 ● 信息科学版, 2019, 44(10): 1553-1559. doi: 10.13203/j.whugis20170419
    [4] 吴立新, 许志华, 范松滔, 王秋玲.  植被稀疏地区沟蚀变化的地面激光扫描监测与沟蚀量估算 . 武汉大学学报 ● 信息科学版, 2017, 42(10): 1343-1349. doi: 10.13203/j.whugis20160013
    [5] 黄荣刚, 杨必胜, 李健平, 田茂, 梁新美.  利用目标区域拓扑关系图提取建筑物点云 . 武汉大学学报 ● 信息科学版, 2017, 42(4): 475-481. doi: 10.13203/j.whugis20160112
    [6] 卢秀山, 刘如飞, 田茂义, 刘冰.  利用改进的数学形态法进行车载激光点云地面滤波 . 武汉大学学报 ● 信息科学版, 2014, 39(5): 514-519. doi: 10.13203/j.whugis20130020
    [7] 陈西江, 花向红, 杨荣华, 张青华.  分带K-均值聚类的平面标靶定位 . 武汉大学学报 ● 信息科学版, 2013, 38(2): 167-170.
    [8] 尹章才, 刘清全, 孙华涛.  全概率公式在时间地理中的应用研究 . 武汉大学学报 ● 信息科学版, 2013, 38(8): 954-957.
    [9] 杨建思.  一种利用面元拟合的地面点云数据三维R树索引方法 . 武汉大学学报 ● 信息科学版, 2013, 38(11): 1313-1316.
    [10] 胡举, 杨辽, 沈金祥, 吴小波.  一种基于分割的机载LiDAR点云数据滤波 . 武汉大学学报 ● 信息科学版, 2012, 37(3): 318-321.
    [11] 林雪原, 刘磊.  多传感器组合导航系统的多尺度分布式滤波算法 . 武汉大学学报 ● 信息科学版, 2012, 37(7): 823-826.
    [12] 隋立春, 张熠斌, 张硕, 陈卫.  基于渐进三角网的机载LiDAR点云数据滤波 . 武汉大学学报 ● 信息科学版, 2011, 36(10): 1159-1163.
    [13] 王海军, 邓羽, 王丽, 关兴良.  基于数据场的C均值聚类方法研究 . 武汉大学学报 ● 信息科学版, 2009, 34(5): 626-629.
    [14] 刘亚文, 宋守东.  利用航空影像、点云数据和矢量图进行简单房屋三维重建方法研究 . 武汉大学学报 ● 信息科学版, 2009, 34(8): 894-897.
    [15] 蒋晶珏, 张祖勋, 明英.  复杂城市环境的机载Lidar点云滤波 . 武汉大学学报 ● 信息科学版, 2007, 32(5): 402-405.
    [16] 闫利, 张毅.  基于法向量模糊聚类的道路面点云数据滤波 . 武汉大学学报 ● 信息科学版, 2007, 32(12): 1119-1122.
    [17] 翟亮, 唐新明, 王中元, 吴岚.  1∶5万数据库内容需求调查结果的分析 . 武汉大学学报 ● 信息科学版, 2005, 30(4): 362-365.
    [18] 阳凡林, 刘经南, 赵建虎.  多波束测深数据的异常检测和滤波 . 武汉大学学报 ● 信息科学版, 2004, 29(1): 80-83.
    [19] 唐亮, 黄培之, 谢维信.  顾及数据空间分布特性的模糊C-均值聚类算法研究 . 武汉大学学报 ● 信息科学版, 2003, 28(4): 476-479.
    [20] 郑肇葆.  正态分布伪随机数据的产生和检验 . 武汉大学学报 ● 信息科学版, 1980, 5(1): 85-92.
  • 加载中
图(6) / 表(6)
计量
  • 文章访问数:  572
  • HTML全文浏览量:  118
  • PDF下载量:  91
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-01-15
  • 刊出日期:  2022-03-05

一种多尺度自适应点云坡度滤波算法

doi: 10.13203/j.whugis20200016
    作者简介:

    汪文琪,硕士生,主要研究方向为激光雷达点云数据处理。wenqi_xd@163.com

    通讯作者: 李宗春,博士,教授。13838092876@139.com
  • 中图分类号: P237

摘要: 点云坡度滤波算法原理简单、易于实现,为进一步提升坡度滤波算法的自适应性,提出了一种多尺度自适应点云坡度滤波算法。首先,在数据预处理的基础上引入虚拟网格对点云数据进行分割;然后,利用距离加权的方式逐次计算网格点的坡度角,结合k均值聚类和正态分布自适应确定滤波阈值;最后,使用多尺度策略逐级缩小网格尺寸实现点云数据的精细滤波。采用两种密度不同的点云数据集对所提算法进行了验证,并将结果与两种坡度滤波算法及国际摄影测量和遥感学会提供的经典算法进行对比,实验表明所提算法整体滤波结果较好,稳定性更高,且适用于不同场景的点云数据。

English Abstract

汪文琪, 李宗春, 付永健, 何华, 熊峰. 一种多尺度自适应点云坡度滤波算法[J]. 武汉大学学报 ● 信息科学版, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
引用本文: 汪文琪, 李宗春, 付永健, 何华, 熊峰. 一种多尺度自适应点云坡度滤波算法[J]. 武汉大学学报 ● 信息科学版, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
WANG Wenqi, LI Zongchun, FU Yongjian, HE Hua, XIONG Feng. A Multi-scale Adaptive Slope Filtering Algorithm for Point Cloud[J]. Geomatics and Information Science of Wuhan University, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
Citation: WANG Wenqi, LI Zongchun, FU Yongjian, HE Hua, XIONG Feng. A Multi-scale Adaptive Slope Filtering Algorithm for Point Cloud[J]. Geomatics and Information Science of Wuhan University, 2022, 47(3): 438-446. doi: 10.13203/j.whugis20200016
  • 随着激光雷达技术的不断发展,点云数据处理成为研究的热点[1]。点云滤波是指区分点云数据中地面点和非地面点的过程[2],是提取地面信息、生成数字高程模型及其他地形产品的重要步骤。常见的滤波算法有基于坡度的滤波算法[3-7]、基于曲面拟合的滤波算法[8-10]和基于数学形态学的滤波算法[11-13]。另外,近几年发展起来的布料模拟滤波算法[14]也受到了很大的关注。对比其他算法,点云坡度滤波算法进展相对缓慢,但同时坡度也是其他一些算法[15]的重要参数,坡度算法的进步有利于整体滤波的发展。因此,本文针对坡度滤波算法中存在的问题,重点关注基于坡度的点云滤波算法的改进。

    基于坡度的滤波算法由文献[3]首先提出,其思想是依据坡度的差异区别出地面点和非地面点,但对整个点云区域采用固定坡度阈值的方式不够合理。在此基础上,文献[4]对滤波算法进行了改进,使坡度阈值随地形情况的不同而发生相应的变化,增强了算法的适用性,但同时需要设置较多的参数。虚拟网格技术可以方便点云数据的管理,在点云滤波中应用较为广泛,而且网格尺度逐渐从单一尺度发展为多尺度,文献[8-9]结合多尺度虚拟网格技术和曲面滤波方法对点云数据进行滤波取得了良好的效果。在坡度滤波方面,文献[5]在滤波中引入虚拟网格的概念,同时将坡度阈值个数增至4个,一定程度上克服了经典坡度滤波算法在地形急剧变化处可能产生的错误,但是该方法滤波参数多且自适应性差;文献[6]提出了一种从机载雷达点云数据中精确提取地面点的滤波算法,利用平面特征和局部最低点的连通性提升了地面点的提取率,在进行初始地形估计之后,对算法中使用的坡度参数进行更新,可以有效提取密集城市地区的地面点数据,但该算法适用场景具有一定局限性且计算过程比较复杂、计算效率低;文献[7]使用大小两种尺度的虚拟网格,并结合坡度和高差两种方法进行点云滤波,这种方法可以弥补单一尺度网格滤波的不足,但其滤波参数仍需人为确定。

    为进一步提升传统坡度滤波算法的自适应性,本文提出了一种多尺度自适应点云坡度滤波算法。该算法的重点在于结合k均值聚类和正态分布确定滤波阈值,与传统坡度滤波算法相比增强了自适应性。

    • 本文借鉴多尺度虚拟网格的思想,采用距离加权的方式计算网格点与周围8邻域网格最低点的坡度,结合k均值聚类和正态分布自适应确定网格的滤波阈值,按倍数逐级减小网格的尺寸,实现多尺度自适应的点云坡度滤波,具体流程如图 1(a)所示,滤波阈值确定流程如图 1(b)所示。

      图  1  本文算法流程图

      Figure 1.  Flowchart of the Proposed Algorithm

    • 原始点云数据在获取过程中通常会存在一些异常噪声点,包括高位噪声、低位噪声等[16]。高位噪声在后续滤波过程中可以当作非地面点直接滤除,不会影响滤波结果;而低位噪声点容易被当作地面点,对滤波结果影响较大,需要提前剔除。本文采用一种比较点云k近邻点距离的方法进行低位噪声剔除。首先,确定各点的k近邻点,并计算k近邻点到查询点距离的平均值dmean,以及最大距离值和最小距离值之差Δd这两个参数值,这两个参数分别搜索离群的单一噪声点和多个聚集噪声点。对于单一噪声点,其k近邻点都位于正常点云处,到查询点距离远,可以利用dmean搜索此类噪声点;对于多个聚集噪声点,其k近邻点一部分为周围较近的噪声点,另一部分位于正常点云处,因此k近邻点到查询点的最大距离值和最小距离值相差较大,可以利用Δd搜索此类噪声点。然后,根据参数值的频率分布直方图分别设置dmeanΔd的阈值,并将两类大于阈值的点进行合并,此即为异常点。最后,计算点云数据平均高程,将异常点中小于平均高程的点作为低位噪声予以剔除。

    • 网格分割就是将三维点云数据沿高程方向投影到对应的二维网格平面的过程。具体分割步骤如下:

      1)分别沿x轴和y轴方向按照一定的网格边长l进行网格分割,确定点云数据平面坐标中xy的最大值xmaxymax和最小值xminymin,以此作为网格的边界。

      2)将点云数据进行编号,利用式(1)按照顺序逐点计算所在网格的编号,计算公式为:

      Ix=xp-xminlIy=yp-yminl ]]>

      式中,(xp,yp)为任一点p的平面坐标;Ix,Iy为点p所在网格的编号;·为取整符号。

      3)确定每一个网格Ix,Iy中高程最低点的点号,为后续的坡度计算作准备。

      点云滤波时按照网格尺寸从大到小的顺序进行,滤波过程中需要确保每个网格中的最低点为地面点。因此,初始最大网格边长linitial应设置为大于测区中最大地物的尺寸,以保证每个网格中都存在地面点,后续层级网格边长为初始网格边长除以相应的级数,如二级格网边长为linitial/2

    • 坡度是表示地表起伏程度的变量。本文算法在进行坡度计算时采用8邻域网格结构,每个点计算得到8个坡度值。如图 2所示,Gc为待滤波点云网格,G1~G8Gc周围的8个邻域网格,将Gc中的n个点作为待滤波点,记为cii=1, 2n),取每个邻域网格中的最低点作为地面种子点,记为p1~p8

      图  2  滤波8邻域网格

      Figure 2.  Eight Neighborhood Grid of Filtering

      Gc中的待滤波点按照编号从小到大的顺序逐点计算坡度值,每个点分别与8个邻域网格中的最低点进行坡度计算,得到8个坡度值。由于坡度值按照正切函数的形式变化,在边缘处会剧烈地上升;而后续的k均值聚类中采用欧氏距离,各点的欧氏距离值按照线性的形式变化,所以,为了更好地进行后续的聚类分析,本文将计算得到的坡度值转化为坡度角,使用坡度角参与后续的滤波。

      Gc中每个点ci可以计算得到8个坡度角,在进行滤波时难以从中选择具体的坡度角进行阈值判断,因此需要将8个坡度角合并为1个,为了避免坡度角合并过程中出现正负相消的情况,所以坡度角计算时设为正值。如图 3所示,与某地面种子点pj距离较近的滤波点c1的坡度角要大于c2,而c1c2高程相同、属性相同,在进行阈值判断时有可能将两个点分为不同属性的点。因此,为了更好利用坡度角对Gc中滤波点属性进行判断,应该对计算得到的坡度角进行距离修正,使得c1c2两点能得到同等的判断。由此可以按照距离加权的方式对8个坡度角进行合并,距离近的坡度角权值小。合并公式为:

      θi=j=18SjSθij,i=1, 2nS=j=18Sj ]]>

      式中,Sj为待滤波点ci与地面种子点pj的距离;θij为点cipj计算得到的坡度角;θi为点ci坡度角的加权平均值。

      图  3  坡度计算示意图

      Figure 3.  Diagram of Slope Calculation

    • 本文算法的核心在于滤波阈值的确定,由于点云数据复杂多样,阈值设置需要随地形的变化而进行相应的改变,因此本文采用k均值聚类与正态分布结合的方法,自适应地确定坡度滤波的阈值。

      文献[17]认为点云数据中地面点高程在自然状态下呈正态分布,而非地面点则会影响地面点高程的正态分布。借鉴这一思路,本文考虑在同一待滤波网Gc中,若只存在地面点,则网格内坡度角数据应呈正态分布;然而由于非地面点的存在,Gc中的坡度角数据将呈现出两种不同的状态:一种是较小的地面点坡度角,另一种是较大的非地面点坡度角。

      1)聚类阈值。为了将Gc中的地面点和非地面点区分出来,本文采用k均值聚类的方法对坡度角数据进行聚类,区别出分别属于地面点和非地面点的坡度角数据。由于只存在两种状态,所以k值设置为2;聚类时采用最小最大原则[18],两个初始聚类中心分别选择Gc中的最小坡度角和最大坡度角,得到两个聚类结果——中心较小的聚类C1和中心较大的聚类C2;因为地面点坡度角较小,非地面点坡度角较大,所以将中心较小的C1视作地面点对应的坡度角数据,以C1中的点为基础计算出均值μ1和均方差σ1,将网格中所有坡度角大于μ1+1的点视作非地面点(t为均方差的倍数)。

      2)聚类条件。进行k均值聚类的前提条件是待滤波网格Gc中出现两种状态不同的坡度角数据。为了判断Gc中坡度角数据是否呈现两种不同的状态,本文利用图 2中9个网格的最低点对数据分布情况进行判断,计算出任意两个网格最低点之间的坡度角,从中选出最大的坡度角θmax来判断是否需要进行聚类,计算公式为:

      θmax=max{tan-1[zi-zjxi-xj2+yi-yj2]}i,j{1, 29},ij ]]>

      式中,(xi,yi,zi)(xj,yj,zj)分别为9网格中任意两个网格最低点的坐标。

      θmax可以粗略地代表 9网格区域中最大的地面坡度,反映该区域地表起伏情况。当Gc中的最大坡度角大于θmax时,认为其中坡度角数据存在明显的非地面点坡度角,需要进行聚类处理。当Gc中坡度角全都小于θmax时,此时网格中没有明显的非地面点数据,不对坡度角数据进行聚类处理,但其中依然有可能存在一些高程较低的非地面点。为了将这部分非地面点剔除,可以直接计算出所有坡度角数据的均值μ2和均方差σ2,将坡度角大于μ2+2的点作为非地面点剔除。

      3)特殊情况。滤波过程中还存在一种特殊情况。若Gc中坡度角数据全都较小,可以认为这些坡度角对应的点都为地面点,不需要再进行后续阈值的确定。因此可以设置一个小角度θmin,当最大坡度角小于θmin时,认为Gc中的点全为地面点,保留网格内所有点并进入下一尺度的滤波。根据地形坡度的分级标准,当坡度小于5°时,地形被划分为平地[19]。基于此,可以认为当Gc中的坡度角数据全都小于5°时,其中的点全为地面点。所以,本文将θmin设为5°。

      点云坡度滤波阈值确定的具体流程如图 1(b)所示。

    • 本文采用两个数据集进行实验:(1)数据集1:国际摄影测量与遥感学会(International Society for Photogrammetry and Remote Sensing,ISPRS)公开发布的点云滤波标准数据集,该数据集包含城市和森林两个场景下的15个样本,在城市和森林区域的点密度分别为0.67点/m2和0.18点/m2。(2)数据集2:Terrasolid软件官网提供的训练数据,该数据集的点密度为17 points/m2,本文选择其中部分数据进行实验,并对地面点和非地面点进行了手工标记。数据集1中各样本数据的地形特征和初始网格的边长见表 1;数据集2中包含有较为密集的植被、房屋等,初始网格边长取为35 m。本文采用ISPRS提供的滤波误差评价标准对滤波结果进行定量评价,包括第Ⅰ类误差、第Ⅱ类误差和总误差[16]

      表 1  数据集1样本地形特征及初始网格边长

      Table 1.  Topographic Features and Initial Grid Length of Dataset 1

      场景 样本数据 地形特征 边长/m
      城市 样本11 位于陡坡上的植被和建筑物 15
      样本12 小物体(汽车等) 25
      样本21 狭窄的桥梁 25
      样本22 桥梁、通道 30
      样本23 复杂、大型建筑物和不连续的地形 30
      样本24 斜坡 15
      样本31 不连续地形,存在低值噪声点 30
      样本41 多路径误差造成的低值噪声点 30
      样本42 细长、低矮地物,频繁的地形变化 50
      森林 样本51 位于斜坡上的植被 20
      样本52 低矮植被,不连续、陡峭山脊 20
      样本53 不连续的地形 15
      样本54 建筑物 30
      样本61 不连续地形,山脊,沟渠 15
      样本71 桥梁,不连续地形 20
    • 1)滤波层数选择。按照§1中所述流程逐个样本数据进行滤波,首先需要确定滤波层数。滤波过程按照网格尺寸从大到小的顺序逐级进行,初次滤波可以将点云数据中的一些大型地物滤除,后续滤波是在初次滤波的基础上进行精化,但如果滤波层级过多会导致精化过度,造成地面信息的损失,结合文献[8-9]的经验和本文滤波实际,选择一种适中的策略——三层网格进行滤波。

      2)参数t选择。在利用正态分布剔除异常值时通常选择2倍标准差或3倍标准差作为限值。因此,自适应阈值中的参数t可以取为2或3。经过实验验证,当t1=3、t2=3、t3=2时(t1t2t3分别对应第一层、第二层、第三层网格的参数),滤波总误差均值最小,是最优的一组滤波参数,这与滤波实际也相符合,即在滤波过程中,前两层网格中的非地面点主要是一些大型的地物,与地面点之间的差异较为明显,阈值可以适当放宽,避免剔除较多的地面点,所以参数t取为3;随着滤波的深入进行,后续网格滤波是在之前的基础上更为精细的滤波,此时网格中的非地面点比较零散,需要收缩阈值的范围,所以将t值设置为2,可以更好地剔除非地面点。

    • 1)数据集1滤波。为了更好地展示滤波过程和结果,以样本数据中样本12为例,具体展示多尺度自适应滤波的过程。样本12中地形较为平坦,主要包含一些建筑物和小型物体,地物零散、尺寸适中,具有一定的滤波代表性。滤波结果如图 4所示,从图 4中可以看出,第1次滤波中滤除了一些较大尺寸的地物,但还存在许多非地面点数据;第2次和第3次滤波在第一次滤波的基础上实现了更为精细的处理,进一步剔除非地面点数据。由此可以看出,该算法利用多尺度网格能够逐步滤除非地面点,滤波效果良好。

      图  4  样本12地面点滤波

      Figure 4.  Ground Point Filtering of Sample 12

      本文算法对数据集1中15个样本进行滤波的误差结果如表 2所示,对其中数据进行分析:(1)本文算法整体滤波效果较好,除样本11之外,其他样本数据滤波总误差均在10%以下,说明滤波算法的整体适应性强,对于不同场景下的点云数据都能得到较好的滤波结果;(2)样本21、样本31、样本42、样本53、样本61的滤波总误差均在5%以下,其中,样本31和样本61中含有不连续地形,样本42中含有高频率、不连续变化的地形,说明本文算法能够适用于不连续地形的点云数据;(3)样本11的滤波效果较差,主要是因为样本11中地形坡度较大、非地面点分布杂乱、低矮植被点多且部分非地面点与地面点存在交错分布现象,在进行地面点和非地面点区分时困难较大。

      表 2  数据集1滤波误差/%

      Table 2.  Filtering Errors of Dataset 1/%

      样本数据 第Ⅰ类误差 第Ⅱ类误差 总误差
      样本11 5.12 34.74 17.74
      样本12 4.22 6.51 5.34
      样本21 5.77 1.84 4.90
      样本22 8.97 6.39 8.17
      样本23 9.87 6.97 8.50
      样本24 6.09 15.74 8.75
      样本31 2.08 8.27 4.93
      样本41 5.32 10.51 7.91
      样本42 1.65 4.23 3.48
      样本51 0.64 30.25 7.05
      样本52 3.72 26.90 6.10
      样本53 2.87 38.96 4.33
      样本54 3.46 8.61 5.57
      样本61 2.59 22.13 3.26
      样本71 7.13 10.90 7.56

      2)数据集2滤波。相比于数据集1,数据集2中点云密度更大,数据集2场景如图 5所示,其中包含有较为密集的植被和房屋等,更能体现滤波算法的整体效果。数据集2的滤波结果如图 6所示,大部分植被和房屋都被滤除,整体滤波效果良好。另外,通过计算滤波误差进行定量分析,滤波的总误差为5.12%,第I类误差为4.46%,第II类误差为5.86%,各类误差均处于一个较小的范围,且第I类误差和第II类误差较为均衡,说明本文算法在高密度点云数据中也能取得良好的滤波结果。

      图  5  数据集2

      Figure 5.  Dataset 2

      图  6  数据集2滤波结果

      Figure 6.  Filtering Result of Dataset 2

    • 为了更好地说明本文滤波算法的效果,将ISPRS标准数据集滤波结果与其他算法进行对比。

      1)坡度滤波算法对比。将本文算法与文献[4]和文献[6]中的算法滤波总误差结果进行对比,结果如表 3所示。由于文献[6]算法只关注了城市区域的点云滤波,因此只列出了该算法在城市场景下的滤波结果。

      表 3  不同坡度滤波算法总误差/%

      Table 3.  Total Errors of Different Slope Filtering Algorithms/%

      场景 样本数据 文献[4] 文献[6] 本文算法
      城市 样本11 23.25 18.62 17.74
      样本12 10.21 7.08 5.34
      样本21 7.76 8.50 4.90
      样本22 20.86 7.29 8.17
      样本23 22.71 8.42 8.50
      样本24 25.28 6.71 8.75
      样本31 3.15 2.74 4.93
      样本41 23.67 3.93 7.91
      样本42 3.85 3.26 3.48
      均值 15.64 7.39 7.75
      均方差 9.21 4.74 4.21
      森林 样本51 7.02 7.05
      样本52 27.53 6.10
      样本53 37.07 4.33
      样本54 6.33 5.57
      样本61 21.63 3.26
      样本71 21.83 7.56
      均值 20.24 5.64
      均方差 11.91 1.63

      对比表 3中各算法滤波结果,均值代表了整体滤波的精度,均方差可以反映出整体滤波的稳定性。在城市场景区域中,本文算法明显优于文献[4]算法,不同样本数据的滤波总误差基本都小于后者,这说明相比于传统的坡度滤波算法,改进以后的坡度滤波算法取得了明显的效果;文献[6]算法借助于平面特征和局部最低点的连通性进行城市场景点云数据滤波,从滤波结果来看,其滤波总误差均值小于本文算法,说明在城市场景中的滤波效果优于本文算法,但从其滤波原理来看,该算法难以适用于不连续场景、地形复杂场景的滤波。在森林场景区域中,本文算法的滤波精度和滤波稳定性均优于文献[4]算法,文献[6]算法不适用于这种相对复杂场景的点云滤波。总体来看,本文算法滤波效果较好,且滤波场景更为宽泛,没有特殊的场景限制,文献[6]算法在城市场景区域滤波精度优于本文算法,但该算法重点关注城市场景的点云滤波,具有一定的场景限制要求。

      2)与其他算法对比。为进一步分析本文算法的滤波效果,将本文算法与ISPRS公布的7种经典算法结果[16]进行对比,城市场景滤波总误差、森林场景滤波总误差及综合结果见表4~6所示。

      表 4  各滤波算法城市场景总误差/%

      Table 4.  Total Errors of Different Filtering Algorithms in Urban Scene/%

      样本 Elmqvist算法 Sohn算法 Axelsson算法 Pfeifer算法 Brovelli算法 Roggero算法 Wack算法 本文算法
      样本11 22.40 20.49 10.76 17.35 36.96 20.80 24.02 17.74
      样本12 8.18 8.39 3.25 4.50 16.28 6.61 6.61 5.34
      样本21 8.53 8.80 4.25 2.57 9.30 9.84 4.55 4.90
      样本22 8.93 7.54 3.63 6.71 22.28 23.78 7.51 8.17
      样本23 12.28 9.84 4.00 8.22 27.80 23.20 10.97 8.50
      样本24 13.83 13.33 4.42 8.64 36.06 23.25 11.53 8.75
      样本31 5.34 6.39 4.78 1.80 12.92 2.14 2.21 4.93
      样本41 8.76 11.27 13.91 10.75 17.03 12.21 9.01 7.91
      样本42 3.68 1.78 1.62 2.64 6.38 4.30 3.54 3.48
      均值 10.21 9.76 5.62 7.02 20.56 14.01 8.88 7.75
      均方差 5.51 5.16 3.99 4.97 11.08 8.82 6.51 4.21

      表 5  各滤波算法森林场景总误差/%

      Table 5.  Total Errors of Different Filtering Algorithm in Forest Scene/%

      样本 Elmqvist算法 Sohn算法 Axelsson算法 Pfeifer算法 Brovelli算法 Roggero算法 Wack算法 本文算法
      样本51 21.31 9.31 2.72 3.71 22.81 3.01 11.45 7.05
      样本52 57.95 12.04 3.07 19.64 45.56 9.78 23.83 6.10
      样本53 48.45 20.19 8.91 12.60 52.81 17.29 27.24 4.33
      样本54 21.26 5.68 3.23 5.47 23.89 4.96 7.63 5.57
      样本61 35.87 2.99 2.08 6.91 21.68 18.99 13.47 3.26
      样本71 34.22 2.20 1.63 8.85 34.98 5.11 16.97 7.56
      均值 36.51 8.74 3.61 9.53 33.62 9.86 16.77 5.64
      均方差 14.64 6.75 2.67 5.82 13.17 6.81 7.51 1.63

      表 6  各滤波算法总误差综合/%

      Table 6.  Total Erros of Different Filtering Algorithms/%

      评价指标 Elmqvist算法 Sohn算法 Axelsson算法 Pfeifer算法 Brovelli算法 Roggero算法 Wack算法 本文算法
      均值 20.73 9.34 4.82 8.02 25.78 12.35 12.04 6.91
      均方差 16.48 5.63 3.56 5.27 13.26 8.09 7.77 3.49

      对比分析表4~6中的结果,从均值的角度可以看出,城市场景区域中本文算法优于7种经典算法中的5种,森林场景区域和综合结果优于7种经典算法中的6种,说明本文算法整体滤波效果较好,且能够适应不同的滤波场景。Axelsson算法[20]整体滤波精度最高,但该算法需要反复迭代构建不规则三角网网格并进行距离、角度的计算,滤波计算量大。Elmqvist算法[21]、Brovelli算法[22]和Wack算法[23]在森林场景下滤波效果较差,而森林场景中植被较多、地形不平坦,说明这些算法适用场景存在局限;Pfeifer算法[24]和Sohn算法[25]都是从整体场景出发进行滤波,综合利用点云场景的整体信息,所以在不同场景中基本都能取得稳定的结果,不会出现大的偏差;Roggero算法[26]需要根据先验知识确定阈值,不同的地形需设置不同的坡度阈值,阈值的自适应性较差,整体滤波效果也不理想。

      从均方差角度来看,在城市场景区域,本文算法滤波稳定性仅次于Axelsson算法;在森林场景区域以及最后的综合结果中,本文算法滤波稳定性都优于其他算法,表明本文算法整体滤波稳定性好,能够得到稳健的滤波结果。

    • 本文提出的多尺度自适应点云坡度滤波算法,结合k均值聚类和正态分布自适应确定阈值,重点解决了坡度滤波中存在的自适应问题。另外,借鉴多尺度虚拟网格的思想,对点云数据进行了精细滤波。与其他坡度滤波算法的对比结果表明,本文算法滤波效果好、稳定性高,且适用场景广泛;此外,与其他经典算法相比,本文算法继承了坡度滤波原理简单、易于实现的特点,同时滤波结果整体表现较好。但本文算法也存在一定的不足,特别是在非地面点过于密集、地面点和非地面点交错分布的情况下,滤波效果有待提高。

参考文献 (26)

目录

    /

    返回文章
    返回