基于3D基元拟合的复杂屋顶点云三维重建
张文元(1983— ),男,湖北武汉人,博士,副教授,主要从事三维GIS与文化遗产数字化方面的研究。E-mail: zhangwy@ccnu.edu.cn |
收稿日期: 2022-11-28
修回日期: 2023-04-15
网络出版日期: 2023-07-14
基金资助
国家自然科学基金项目(41801295)
国家文化和旅游科技创新工程项目(2019-008)
Complex Roof Structure Reconstruction by 3D Primitive Fitting from Point Clouds
Received date: 2022-11-28
Revised date: 2023-04-15
Online published: 2023-07-14
Supported by
National Natural Science Foundation of China(41801295)
National Culture and Tourism Science and Technology Innovation Project(2019-008)
几何语义一体化三维建筑物模型是智慧城市建设的重要基础数据,有利于促进建筑设施的精细化管理和智能化应用。当前基于点云的三维重建算法大多关注简单屋顶结构的几何模型构建,忽略了模型的语义表达,且基于数据驱动方法的重建结果容易受噪声影响,存在几何和拓扑错误。为了解决复杂屋顶高精度三维重建难题,本文提出一种基于3D基元拟合的复杂屋顶点云三维自动化重建算法。首先,设计了一套可参数化表达的建筑物3D基元库,包含简单和复杂屋顶。其次,通过点云分割和屋顶拓扑图比较来识别点云对应的基元类型。然后,提出了一种点云与3D基元整体拟合的目标优化函数,采用序列二次规划算法估计基元的正确参数。最后,利用城市地理标记语言(City Geography Markup Language, CityGML)构建几何、语义和拓扑一体化表达的三维模型。采用几种不同屋顶风格的建筑物点云数据进行实验,定性和定量对比分析结果表明本文方法能够高效生成几何和拓扑均正确的CityGML模型,对噪声和局部点云缺失具有一定的鲁棒性,有利于促进几何语义一体化建筑物模型快速自动化构建。
张文元 , 陈江媛 , 谈国新 . 基于3D基元拟合的复杂屋顶点云三维重建[J]. 地球信息科学学报, 2023 , 25(8) : 1531 -1545 . DOI: 10.12082/dqxxkx.2023.220927
Geometric and semantic integration of 3D building models are important infrastructure data for smart city, they are conducive for promoting the refined management and intelligent application of building facilities. However, most of the existing point cloud-based modeling methods focus on the reconstruction of geometric models with simple roof structure, and semantic and topological relations are ignored. Moreover, these methods are sensitive to noise, which are difficult to assure topological consistency and geometric accuracy. To solve these problems, this paper proposes a 3D primitive fitting algorithm for automatically reconstructing building models with complex roof structure from point clouds. Firstly, a 3D building primitive library is designed, including various 3D building primitives with simple and complex roof types. Secondly, an individual building point cloud input is segmented into multiple planes using RANSAC algorithm. The Roof Topology Graph (RTG) is then generated according to the relationship of roof planes, and the roof type of point cloud is subsequently recognized by comparison of RTG between point cloud and building primitives. Thirdly, the reconstruction is formulated as an optimization problem that minimizes the Point-to-Mesh Distance (PMD) between the point cloud and the candidate meshed building primitive. The sequential quadratic programming optimization algorithm with necessary constraints is adopted to perform holistically primitive fitting, so as to estimate the shape and position parameters of a 3D primitive. Finally, the parameterized model is automatically converted into City Geography Markup Language (CityGML) building model based on the prior 3D building primitive. The generated CityGML LoD2 (second level of detail) models are different from mesh models created by conventional building modeling methods, which are represented with geometric, semantic, and topological information. To evaluate the quality and performance of the proposed approach, airborne lidar and photogrammetric building point clouds with different roof structures are collected from public datasets for test. Several building models with complex roof types are successfully reconstructed by using this approach, and the average PMD of five models is 0.17 m. The proposed algorithm is also compared with three other methods. Experimental results indicate that the proposed method achieves the best geometric accuracy, because the average PMD of each model is less than that of other methods. Moreover, this automatic primitive fitting method is efficient, and it is also robust to noise and local data missing. This study demonstrates that the resulting building models can well fit the input point cloud with topologic integrity and rich semantic. This method provides great potential for accurate and rapid reconstruction of geometric-semantic coherent building models with complex roof condition.
Key words: building; complex roof; point cloud; 3D reconstruction; 3D primitive; CityGML; semantic; model-driven
表1 建筑物3D基元形状参数初值Tab.1 Initial values of shape parameters for some building primitives |
形状参数 | 数学表达 | 描述 |
---|---|---|
坐标的最大值与最小值之差 | ||
坐标的最大值与最小值之差 | ||
取一定数量的 坐标最大的点,求其 坐标最大值与最小值之差 | ||
取一定数量的 坐标最大的点,求其 坐标最大值与最小值之差 | ||
坐标最大值与最小值之差×0.3 | ||
坐标最大值与最小值之差×0.7 | ||
X轴方向上的屋脊线候选点的最大 坐标 | ||
Y轴方向上的屋脊线候选点的最大 坐标 |
表2 点云屋顶类型识别结果Tab. 2 Roof type recognition results of different point clouds |
ID | 点云分割结果 | 邻接矩阵 | 建筑类型 | 参考影像 |
---|---|---|---|---|
sensefly_1 | ![]() | 双坡L型 | ![]() | |
sensefly_2 | ![]() | 四坡L型 | ![]() | |
sensefly_3 | ![]() | 四坡L型 | ![]() | |
ISPRS_1 | ![]() | 双坡L型 | ![]() | |
ISPRS_2 | ![]() | 四坡T型 | ![]() |
表3 点云与3D基元拟合结果Tab. 3 3D primitive fitting result of point clouds with different roof types |
ID | 点云数据 | 点云与基元拟合结果 | 参考影像 |
---|---|---|---|
sensefly_1 | ![]() | ![]() | ![]() |
sensefly_2 | ![]() | ![]() | ![]() |
sensefly_3 | ![]() | ![]() | ![]() |
ISPRS_1 | ![]() | ![]() | ![]() |
ISPRS_2 | ![]() | ![]() | ![]() |
点云对象PMD值/m ![]() |
表4 建筑点云三维重建结果的几何精度统计Tab. 4 Geometric accuracy statistics of building reconstruction from several point clouds |
建筑ID | 点数/个 | 屋顶类型 | 平均PMD/m |
---|---|---|---|
sensefly_1 | 5 463 | 双坡L型 | 0.086 0 |
sensefly_2 | 5 879 | 四坡L型 | 0.102 0 |
sensefly_3 | 12 082 | 四坡L型 | 0.102 7 |
ISPRS_1 | 3 864 | 双坡L型 | 0.386 6 |
ISPRS_2 | 1 665 | 四坡T型 | 0.164 5 |
表5 CityGML LoD2模型构建结果Tab. 5 Generated CityGML LoD2 building models from parameterized models |
ID | 参数化几何模型 | CityGML LoD2模型 |
---|---|---|
sensefly_1 | ![]() | ![]() |
sensefly_2 | ![]() | ![]() |
sensefly_3 | ![]() | ![]() |
ISPRS_1 | ![]() | ![]() |
ISPRS_2 | ![]() | ![]() |
注:红色表示屋顶面,灰色表示墙面和地面。 |
表6 不同建模方法的几何精度比较Tab. 6 Comparison of geometric accuracy for different methods |
建筑ID | 平均PMD/m | |||
---|---|---|---|---|
Delaunay | RANSAC | Li[15]方法 | 本文方法 | |
sensefly_1 | 0.989 5 | 0.097 2 | 0.420 7 | 0.086 0 |
sensefly_2 | 0.511 1 | 0.138 2 | 1.491 6 | 0.102 0 |
sensefly_3 | 0.491 8 | 0.106 9 | 0.297 9 | 0.102 7 |
ISPRS_1 | 0.593 8 | 0.596 3 | 1.025 0 | 0.386 6 |
ISPRS_2 | 0.275 0 | 0.827 3 | 1.618 6 | 0.164 5 |
表7 不同建模方法的效率对比Tab. 7 Comparison of efficiency for different methods |
建筑ID | 耗时/s | |||
---|---|---|---|---|
Delaunay | RANSAC | Li[15]方法 | 本文方法 | |
sensefly_1 | 0.70 | 1.49 | 517.79 | 84.27 |
sensefly_2 | 1.02 | 1.35 | 1 274.70 | 162.99 |
sensefly_3 | 2.98 | 1.68 | 2 158.06 | 302.87 |
ISPRS_1 | 0.96 | 1.15 | 219.10 | 44.76 |
ISPRS_2 | 0.83 | 0.98 | 99.98 | 47.47 |
[1] |
单杰, 李志鑫, 张文元. 大规模三维城市建模进展[J]. 测绘学报, 2019, 48(12):1523-1541.
[
|
[2] |
文学东, 陈为民, 谢洪, 等. 一种融合多源特征的建筑物三维模型重建方法[J]. 武汉大学学报·信息科学版, 2019, 44(5):731-736,764.
[
|
[3] |
杨必胜, 梁福逊, 黄荣刚. 三维激光扫描点云数据处理研究进展、挑战与趋势[J]. 测绘学报, 2017, 46(10):1509-1516.
[
|
[4] |
杜建丽, 陈动, 张振鑫, 等. 建筑点云几何模型重建方法研究进展[J]. 遥感学报, 2019, 23(3):374-391.
[
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
赵传, 郭海涛, 卢俊, 等. 结合区域增长与RANSAC的机载LiDAR点云屋顶面分割[J]. 测绘学报, 2021, 50(5):621-633.
[
|
[10] |
|
[11] |
张良培, 张云, 陈震中, 等. 基于分裂合并的多模型拟合方法在点云分割中的应用[J]. 测绘学报, 2018, 47(6):833-843.
[
|
[12] |
|
[13] |
|
[14] |
|
[15] |
|
[16] |
|
[17] |
|
[18] |
|
[19] |
|
[20] |
|
[21] |
|
[22] |
|
[23] |
|
[24] |
|
[25] |
ISPRS. ISPRS test project on urban classification and 3D building reconstruction[EB/OL]. [2022-3-16]. https://www2.isprs.org/commissions/comm3/wg4/detection-and-reconstruction.html
|
[26] |
Sensnfly. Explore how senseFly drone solutions are employed around the globe[EB/OL]. [2022-3-8]. https://www.sensefly.com/education/datasets/?dataset=1419
|
/
〈 |
|
〉 |