高云龍,張 帆,黃先鋒,2,張 飛,江 宇
(1.武漢大學測繪遙感信息工程國家重點實驗室,湖北武漢430079;2.測繪遙感信息工程國家重點實驗室深圳研發中心,廣東深圳510000;3.天津市星際空間地理信息工程有限公司,天津300000)
三維數字城市是將城市地理、資源、環境、人口、經濟、社會社情和各種社會服務等復雜系統進行數字化、網絡化、虛擬仿真、優化決策支持和可視化,在國土安全、城市規劃、市政管理等方面應用廣泛。近年來,三維數字城市信息化工程建設已大面積開展[1-3],而建筑物三維模型重建是其中的一項重要工作。經過二十幾年的發展,激光掃描(light detection and ranging,LiDAR)由于可以快速準確地獲取大面積對象表面密集的三維采樣點數據,因此日益成為建筑物三維重建的一種重要的數據源[4]。
然而,目前國內外的大多數研究都是針對一定程度上的自動化處理算法,并沒有形成一套完整的建筑物建模實用系統。只有芬蘭TerraSolid公司的TerraScan軟件具有完整的點云處理的航帶調整、點云分類、建筑物檢測等由激光點云重建建筑物三維模型的全部流程,可用于城市三維模型數據生產。但是,TerraSolid中建筑物重建算法魯棒性不高,不能自動融合影像提供的良好邊緣信息進行建筑物重建;同時,它包含的實用編輯工具有限,輸出成果難以滿足三維城市建模的軟件需求,從而導致從機載激光掃描點云進行建筑物三維重建人工交互工作量大、效率低下等問題。
針對目前利用激光掃描在城市三維模型重建中存在的問題,本文設計了一種融合影像的機載激光點云建筑物三維重建系統,系統利用影像較好的邊緣信息和激光點云的面片信息,集成了基于法向分割的面片檢測算法、帶約束的空間二元分裂合并(BSP)算法,整合了模型編輯修改、模型內部面消除、女兒墻生成、屋檐改正等工具,提供了建筑物三維模型重建的整套解決方案。系統以MicroStation V8i SS2(以下簡稱MS)平臺為基礎,結合TerraSolid軟件開放的點云API函數接口進行組件式開發[5-7];利用經典BSP算法[8]完成建筑物模型幾何拓撲結構重建;利用MS系統的CAD功能開發實現模型后期編輯、修改工具;支持多種三維數據格式導出。最終,完成建筑物三維模型重建。
根據機載激光點云和影像的數據特點,本系統對建筑物三維重建采用建筑物外輪廓采集、屋頂結構重建、模型編輯、模型導出4個層次的技術流程,技術流程如圖1所示。
1)多源數據融合模式下的建筑物外輪廓采集層融合點云和影像建立單片測圖環境,對建筑物外輪廓進行人工采集。
2)模型屋頂結構重建層首先采用法線分割方法[7]檢測屋頂面片和屋頂結構線,再利用BSP算法重建屋頂結構。
3)模型編輯層可對一些特定要求的模型和自動生成效果不理想的模型提供系列編輯工具進行修改。
4)成果導出層支持模型以多種三維格式文件導出。

圖1 技術流程圖
系統輸入原始數據,構建單片測圖環境,勾繪建筑物外輪廓。首先通過計算每個點局部法向量,依照法向分割方法進行面片檢測,構建面片間的空間關系提取屋頂階躍線和屋脊線;再通過BSP約束分割、合并面片,生成初級的屋頂面拓撲結構。對于部分屋頂面片模型進行特征線人工干預修正,利用影像底圖輔助編輯、增加特征線、刪除特征線、編輯特征線等功能,最后完成經過拓撲關系檢查的建筑物模型并輸出。
為了滿足測繪、規劃相關部門的業務需求,系統包括單片測圖和三維模型重建兩個功能模塊,具體如圖2所示。
單片測圖模塊向作業員提供可交互編輯的環境和建筑物外輪廓采集工具,主要包括構建測圖環境、建筑物外輪廓采集和編輯功能。構建測圖環境利用空三加密成果作為初值加上同名特征匹配解算航片的外方位元素,恢復攝影瞬間姿態,構建透視投影模型,結合點云搭建單片測圖環境。建筑物外輪廓采集、編輯工具被設計為對建筑物邊界幾何信息進行人機交互采集、編輯。

圖2 三維模型重建系統功能圖
三維模型重建模塊提供建筑物三維重建、屋頂結構編輯、特色工具編輯及成果輸出功能。模塊中建模功能子模塊實現了全自動建模算法生成屋頂初級模型,在自動算法結果不是最優的結果上利用增加線、刪除線、合并點等編輯修改工具進行編輯;同時,模塊提供女兒墻生成、屋檐改正、內部面消除等特色編輯功能,可滿足特定需求。最后,模塊支持DWG、OBJ、STL通用三維文件格式,以及TerraScan軟件識別的中間文件的文件格式。
屋頂面片是構成屋頂結構的基本元素,它的檢測是建筑物結構模型重建過程中重要而基礎的工作。首先構建三角網建立點鄰接關系;然后計算點鄰域法向量并統計,劃分不同法向的面片;接著計算相同法向點集到原點距離,分離平行面片;對于在空間中相離的同一平面上的多個面片,通過區域增長方法進行聚類分離。最終效果如圖3所示。

圖3 面片分割效果
BSP算法是建筑物模型拓撲重建的核心算法。在面片檢測結束后,根據空間面片之間的幾何關系獲取屋頂結構中的結構線。利用建筑物外輪廓和檢測到的屋頂結構線進行空間二元分裂,分裂規則如下:
1)找到當前多邊形內最長的屋頂結構線。
2)利用步驟1)結構線分割多邊形,一分為二,將多邊形內的線和點云面片按空間分配到兩個多邊形內。
3)多邊形內無線段時終止,否則返回步驟1)。
空間二元合并即合并空間上鄰接并且要求面片類別一致的屋頂面片,多邊形類別以內部最多的點云類別標識。至此,BSP二元分裂合并完成,建筑物屋頂初級結構重建完畢,如圖4所示。

圖4
通過機載LiDAR數據檢測建筑物模型屋頂面片后,建立三維模型面片之間的空間關系,計算面片兩兩之間相鄰、相切、相離、包含、相交的不同狀態,針對不同狀態進行對應處理,從而消除模型內部面,捏合歧義點,生成沒有內部面片的建筑物模型。此方法可消除后期在模型紋理貼圖過程中的閃面、漏面、縫隙等模型拓撲不一致的現象,如圖5所示。

圖5 模型拓撲結構檢查
測圖模塊和建模模塊在邏輯上是順序關系,功能上相互獨立,針對對象不完全一樣,因此系統由兩個不同功能的插件模塊組成并加載到MS中,這樣更有利于系統的模塊化管理和后期擴展。系統利用NativeCode應用程序掛接動態鏈接庫(DLL)形式進行底層算法整合,采用mdl語言對系統主界面的菜單欄、工具條進行設計。測圖模塊包括主菜單欄、一個地物采集工具條和一個地物編輯工具條;建模模塊由一個主菜單欄和工具欄組成。主界面如圖6所示。

圖6
基于MicroStation V8i SS2的機載LiDAR建筑物三維建模系統已初步應用于實際生產,實現了基于激光點云的建筑物三維模型快速重建目標。系統充分利用了點云高程精度高、航片中的地物邊界信息豐富的優點進行建模。與現有的商業軟件Terra-Solid生成方式相比,本系統支持批量重建并逐個檢查,對于建筑物復雜程度相對不高的建筑建模效率優勢明顯。系統已在天津市星際空間地理信息工程有限公司多個數字城市項目中投入使用,經上千平方千米的建筑物建模生產實踐,可滿足數字城市建筑物三維建模高程精度、平面精度,達到了作業要求,縮短了建模周期,提高了50%以上效率。
[1]肖劍平.基于MicroStation實現數字城市3維仿真[J].測繪通報,2002(12):46-49.
[2]郭仁忠,林亨貴.數字城市及其數字國土支撐[J].測繪通報,2008(9):1-5.
[3]郭仁忠,陳學業.數字城市測繪體系初探[J].測繪通報,2010(6):1-4.
[4]VOSSELMANG.Building Reconstruction Using Planar Faces in Very High Density Height Data[J].International Archives of Photogrammetry and Remote Sensing,1999(32):87-92.
[5]王密,陳克明,陳少勤,等.基于MicroStation V8的立體采編系統開發與實現[J].測繪信息工程,2006,31(2):17-19.
[6]宋關福,王爾琪.MicroStation開發語言(MDL)應用教程[M].北京:科學出版社,1996.
[7]WINTER S J.學習 MicroStation VBA[M].BENTLEY軟件(北京)有限公司,譯.北京:中國水電水利出版社,2007.
[8]黃先鋒.機載LiDAR點云數據的建筑物重建研究[D].武漢:武漢大學,2006.