基于改进RANSAC算法的复杂建筑物屋顶点云分割
刘亚坤(1992— ),男,河南周口人,硕士生,主要从事点云数据处理研究。E-mail: 757899220@qq.com |
收稿日期: 2020-12-07
要求修回日期: 2021-03-24
网络出版日期: 2021-10-25
基金资助
国家自然科学基金项目(41771491)
国家自然科学基金项目(41701597)
国家自然科学基金项目(U1810203)
中国博士后科学基金项目(2018M642746)
版权
An Improved RANSAC Algorithm for Point Cloud Segmentation of Complex Building Roofs
Received date: 2020-12-07
Request revised date: 2021-03-24
Online published: 2021-10-25
Supported by
National Natural Science Foundation of China(41771491)
National Natural Science Foundation of China(41701597)
National Natural Science Foundation of China(U1810203)
China Postdoctoral Science Foundation Project(2018M642746)
Copyright
屋顶模型重建影响到建筑物完整模型重建质量,屋顶面点云分割质量对屋顶模型重建具有重要意义。针对传统RANSAC算法在屋顶点云面片分割时易产生错分割、过分割等问题,本文顾及点云位置信息,提出一种对点云重新分配的改进RANSAC点云分割算法。算法暂时剔除非平面内点,选取平面内点集中3个点作为初始样本,平面拟合判定邻域是否有效,从有效邻域中选取标准差值最小的3个点为初始模型。利用RANSAC算法对屋顶点云进行分割。利用K近邻算法统计误分类点与面片的距离降低误分类,优化过分割面片并进行连通性分析,利用距离及法向量一致性检验的方法重分配非平面内点。为验证本文算法有效性,选取芬兰Helsinki地区的3栋相互独立的复杂建筑物屋顶以及上海某小区的6栋建筑物群屋顶作为实验数据。在2组数据中,本文提出的改进RANSAC算法分割屋顶面片的平均准确率分别为92.17%、87.82%,78%的建筑物屋顶不存在过分割。在第2组数据中,所有分割面片上的点与其对应的最佳拟合平面的距离的标准差的平均值为0.030 m。实验结果表明,本文算法分割建筑物屋顶面片的准确率较高,较好的抑制了过分割现象,且抗噪能力强。
刘亚坤 , 李永强 , 刘会云 , 孙渡 , 赵上斌 . 基于改进RANSAC算法的复杂建筑物屋顶点云分割[J]. 地球信息科学学报, 2021 , 23(8) : 1497 -1507 . DOI: 10.12082/dqxxkx.2021.200742
Roof model reconstruction affects the quality of building complete model reconstruction, and the segmentation quality of roof point cloud is of great significance for roof model reconstruction. Aiming at the problems of wrong segmentation and over segmentation in the traditional RANSAC algorithm, this paper proposes an improved RANSAC algorithm to redistribute the point cloud, considering the location information of the point cloud. The algorithm eliminates the non planar points temporarily, and selects three points from the planar points set as the initial samples in the way of R radius neighborhood to fit them. The distance between the remaining points in the neighborhood and the fitting plane is calculated, and the neighborhood meeting the threshold requirements is classified as an effective neighborhood, three points with the minimum standard deviation are selected as the initial model, RANSAC algorithm is used to segment the roof point cloud. Aiming at the misclassification phenomenon in segmentation results, the distance between misclassification points and patches is calculated by k-nearest neighbor algorithm, and then the misclassification points are reclassified, at the same time, the angleθ and the distance d between patches are considered to merge the over segmented patches, the Euclidean distance based clustering segmentation algorithm is used to analyze the connectivity of the merged patches. By using the distance from a point to a plane and the consistency of the normal vectors between the point and the plane, the non planar points are redistributed. In order to verify the effectiveness of the algorithm, three independent roofs of complex buildings in Helsinki area of Finland and six roofs of buildings in a residential area of Shanghai are selected as experimental data. In the first group of experiments data, the average accuracy of the segmentation of roof patch is 92.17%, and the highest accuracy is 93.18%. In the second group of experiments data, the average accuracy of the segmentation of the roof patch is 87.82%, and the highest accuracy is 94.44%. The average standard deviation of the distance between the points on all the segmentation patches and the corresponding best fitting plane is 0.030 m. According to the above two groups of experiments data, 78% of the buildings have no over segmentation, and the average accuracy is 90%. The experimental results show that the algorithm has a high accuracy in extracting the roof plane slice, which can suppress the over segmentation and has a good anti noise ability.
图7 RANSAC算法在第1组实验中的分割结果Fig. 7 Segmentation results of RANSAC algorithm in the first group of experiments |
图8 区域增长算法在第1组实验中的分割结果Fig. 8 Segmentation results of region growing algorithm in the first group of experiments |
图9 基于局部约束RANSAC算法在第1组实验中的分割结果Fig. 9 Segmentation results of RANSAC algorithm based on local constraints in the first group of experiments |
图10 本文算法在第1组实验中的分割结果Fig. 10 Segmentation results of this paper algorithm in the first group of experiments |
表1 不同算法在第1组实验中的分割结果数量对比Tab. 1 Comparison of segmentation results number of different algorithms in the first group of experiments |
屋顶 | 屋顶实际 面片数量/个 | RANSAC 算法/个 | 区域增长 算法/个 | 基于局部约束RANSAC算法/个 | 本文算法/个 |
---|---|---|---|---|---|
A | 14 | 16 | 17 | 15 | 15 |
B | 44 | 51 | 48 | 49 | 41 |
C | 21 | 24 | 24 | 23 | 19 |
表2 不同算法在第1组实验中的分割结果质量分析Tab. 2 Quality analysis of segmentation results of different algorithms in the first group of experiments |
屋顶 | 脚点数/个 | 非面片 点云数/个 | 各算法分割准确率/% | |||
---|---|---|---|---|---|---|
RANSAC算法 | 区域增长算法 | 基于局部约束RANSAC算法 | 本文算法 | |||
A | 27 688 | 1749 | 85.71 | 78.57 | 92.86 | 92.86 |
B | 89 770 | 5865 | 84.09 | 90.90 | 88.64 | 93.18 |
C | 37 180 | 2011 | 85.71 | 85.71 | 90.48 | 90.48 |
平均值 | 85.17 | 85.06 | 90.66 | 92.17 |
表3 屋顶分割结果在第2组实验中的质量分析Tab. 3 Quality analysis of roof segmentation results in the second group of experiments |
屋顶 | 脚点数/个 | 非面片 点云数量/个 | 屋顶实际 面片数量/个 | 本文算法分割 面片数量/个 | 本文算法 分割准确率/% | /m |
---|---|---|---|---|---|---|
1 | 66 726 | 349 | 36 | 31 | 86.11 | 0.028 |
2 | 73 953 | 210 | 36 | 34 | 94.44 | 0.026 |
3 | 64 480 | 164 | 36 | 32 | 88.89 | 0.020 |
4 | 51 526 | 1275 | 27 | 22 | 81.48 | 0.039 |
5 | 72 862 | 576 | 27 | 31 | 87.10 | 0.034 |
6 | 67 602 | 721 | 27 | 24 | 88.89 | 0.035 |
平均值 | 87.82 | 0.030 |
[1] |
杨必胜, 梁福逊, 黄荣刚. 三维激光扫描点云数据处理研究进展、挑战与趋势[J]. 测绘学报, 2017, 46(10):1509-1516.
[
|
[2] |
景庄伟, 管海燕, 臧玉府, 等. 基于深度学习的点云语义分割研究综述[J]. 计算机科学与探索, 2021, 15(1):1-26.
[
|
[3] |
朱军桃, 王雷, 赵传, 等. 基于区域生长算法的复杂建筑物屋顶点云分割[J]. 国土资源遥感, 2019, 31(4):20-25.
[
|
[4] |
王雯, 任小玲, 陈逍遥. 一种改进的区域增长彩色3D点云分割算法[J]. 国外电子测量技术, 2018, 37(11):10-14.
[
|
[5] |
|
[6] |
|
[7] |
|
[8] |
李云帆, 谭德宝, 刘瑞, 等. 顾及建筑物屋顶结构的改进RANSAC点云分割算法[J]. 国土资源遥感, 2017, 29(4):20-25.
[
|
[9] |
|
[10] |
张强. 基于几何特征的规则激光点云分割方法研究[D]. 长沙:湖南科技大学, 2015.
[
|
[11] |
|
[12] |
党吉圣, 杨军. 多特征融合的三维模型识别与分割[J]. 西安电子科技大学学报, 2020, 47(4):149-157.
[
|
[13] |
侯琳琳. 基于几何特征的三维点云分割算法研究[D]. 北京:北京交通大学, 2019.
[
|
[14] |
|
[15] |
唐泽宇. 基于泊松分布K-means聚类的点云精简算法[D]. 太原:太原理工大学, 2019.
[
|
[16] |
吴燕雄, 李峰, 刘芳, 等. 平滑度欧式聚类算法分割点云数据[J]. 测控技术, 2016, 35(3):36-38.
[
|
[17] |
高广, 马洪超, 张良. 利用合成算法从LiDAR数据提取屋顶面[J]. 武汉大学学报·信息科学版, 2014, 39(10):1225-1230.
[
|
[18] |
|
[19] |
石爱军, 白瑞林, 田青华, 等. 遗传算法结合自适应阈值约束的ICP算法[J]. 光学技术, 2018, 44(1):63-68.
[
|
[20] |
陈付幸, 王润生. 基于预检验的快速随机抽样一致性算法[J]. 软件学报, 2005(8):1431-1437.
[
|
[21] |
|
[22] |
|
[23] |
兰军. LiDAR点云中实时平面检测算法研究与实现[D]. 北京:北方工业大学, 2019.
[
|
[24] |
张宏伟, 姜超, 张保明, 等. 基于局部约束的建筑物屋顶点云平面分割方法[J]. 测绘科学技术学报, 2017, 34(3):274-278.
[
|
[25] |
|
[26] |
|
[27] |
|
[28] |
|
[29] |
|
[30] |
|
[31] |
|
[32] |
徐博. 基于航空LiDAR数据的建筑物屋顶面三维重建关键技术研究[D]. 武汉:武汉大学, 2017.
[
|
[33] |
|
/
〈 |
|
〉 |