張智安,趙燕,顏秉軍,吳萱橋
(1.山東省遙感技術應用中心,山東 濟南 250013 ;2.龍口礦業集團有限公司,山東 龍口 265701;3.龍口市國土資源局,山東 龍口 265701;4.山東黃金金創集團有限公司大柳行金礦,山東 煙臺 265615)
?

基于數字攝影測量的城市建筑三維快速建模方法
張智安1,趙燕2,顏秉軍3,吳萱橋4
(1.山東省遙感技術應用中心,山東 濟南 250013 ;2.龍口礦業集團有限公司,山東 龍口 265701;3.龍口市國土資源局,山東 龍口 265701;4.山東黃金金創集團有限公司大柳行金礦,山東 煙臺 265615)
數字城市的基礎地理數據庫正在由傳統的二維形式向三維形式轉變,建設城市三維模型已成為數字城市工程的重要基礎工作。作為城市三維模型的核心構成部分,建筑模型的數量巨大,生產成本高。數字攝影測量技術為建筑矢量數據的采集提供了有效途徑,但要進一步縮減三維建模的工作量,需要對基于矢量線條的建筑結構識別、建筑體面構造以及各種復雜建筑構型等方法和算法進行研究,并開發輔助人工的建筑三維建模軟件系統。該文以數字城市測量提取的建筑結構線為基礎,對計算機三維建模中涉及的關鍵算法進行研究,提出了一種城市建筑三維快速建模的方法。
快速建模;三維模型;測繪技術;數字城市
當前,數字城市工程建設正在我國各地、各級城市大量展開,城市真實三維場景的搭建是這一工程的重要基礎和主要工作內容,建筑三維模型又是城市三維場景的核心構成部分。因此,城市建筑的三維建模工作便成為當前數字城市建設中最主要的內容,各地的測繪數據生產部門均投入了較大的人力和精力來構建城市建筑的三維模型。
在建筑三維建模工作中,首先是根據建筑表面或內部的幾何形體信息,構建出表達建筑外觀或內部結構的三維模型。由于模型表面完全由統一的顏色填充或疊加一致的紋理圖案,與真實建筑在外觀上不一致,因此,創建的模型被稱為“白模”,即不包含真實建筑紋理的建筑三維模型。然后將獲得的建筑現場照片通過裁剪、校正和紋理映射等步驟,使其疊加到建筑“白模”上,獲得與真實建筑非常相似的三維模型。建筑體“白模”的構建是三維建筑建模的基礎,也是最復雜的核心步驟,是建筑三維建模的核心。
不論是采用精細建模還是粗建模,目前的方法決定了建筑三維建模成為一項“勞動密集型”工作。從建筑“白模”的構建,到建模表面紋理的獲取與貼圖,都需要大量的人力參與,并耗費大量的時間。對于結構稍微復雜的一棟建筑而言,構建精細模型經常需要一個熟練建模人員數天的時間才能完成,而即使是建立粗模型,也需要近一天時間。這種方式使得建筑模型構建的經濟成本變得較高,數字城市工程的建設費用也因此被抬升。更為重要的是,這種繁瑣的工作其生產效率并不高,因為大量的人工操作都在完成重復性勞動。而如果要提升建模的效率,引入計算機系統并由程序來完成重復的建模工作將是必然之路。
目前,國內外對于建筑三維建模的自動構建都處于探索階段,每項研究均有各自的側重點,采用的方法也有所不同。例如,利用激光雷達(Light Detection And Ranging, LIDAR)點云數據來提取建筑輪廓信息并構建線框模型[1],使用形態學尺度空間的圖像處理方法來從影像中提取建筑參數化信息進而構建模型[2],以及利用傾斜影像來快速提取建筑4個方向紋理特征的方法[3]。綜上采用的自動建模方法對比,激光雷達點云建模可批量進行大范圍掃描建模,但是只能構建建筑的表面模型,無法對復雜結構體進行細化;基于傾斜攝影的快速提取建筑結構體方法即擁有大規模建模的優點,另外也增加了對復雜建筑體精細建模的能力。該文以利用數字城市測量技術提取的建筑結構矢量線為基礎,對計算機三維“白模”構建中涉及的關鍵算法進行了研究,系統提出了一種基于傾斜攝影測量的城市建筑三維快速建模方法。
1.1 方法設計
在數字攝影測量系統的輔助下,利用立體像對技術和人工交互,可以提取建筑頂部的輪廓線,再由人工依據影像和實景照片,創建出建筑的三維模型。與傳統依據城市地形圖的“自底向上”的建模方式相比,這種方式是一種“自頂向下”的方法,而且可以不依賴城市地形圖,建模周期極大縮短,因此成為一種重要的城市建筑快速建模方法。
現有的一些數字攝影測量工作站已經具有了根據建筑頂部矢量線和地面DEM自動生成建筑體模型的功能,例如適普公司的VirtuoZo數字攝影測量系統。這些系統的實現中,用戶需要對建筑頂部的每個面分別進行采集,系統將多邊形垂直投影到地面DEM上,并從投影覆蓋范圍內提取DEM最高點或最低點作為建筑底面的高程,再利用三維體造型方法創建出建筑三維模型。這個過程存在的一個問題是過多依賴人工操作,包括當建筑頂面由相鄰多個面構成時,每個平面都要獨立采集,這樣面間的分割線將被多次重復采集。另外,當多次采集的邊界線不能準確吻合時,每個創建的體模型間或存在夾縫或存在交疊。這不僅使人工數據采集的工作量增大,而且為后期模型修飾和紋理映射帶來了麻煩。
為解決以上問題,對現有工作流程進行了重新設計,增加了建筑結構的跟蹤與識別功能,以及針對各種復雜建筑的體模型合并等算法。新的流程要求用戶可以以線段形式采集建筑頂部的結構線,避免了分割線被多次采集,創建的體模型也不會有縫隙等問題。圖1給出了新的建筑快速建模流程,包括識別建筑結構面、創建建筑體模型和重構建筑體模型3個主要步驟,屋頂結構線為輸入,建筑體為輸出,頂部結構面和獨立體模型為中間結果。

圖1 建筑快速建模流程
1.2 識別建筑結構面
根據數字攝影測量提取的表示建筑屋頂結構的矢量線,通過線段間的相互連接關系,設計算法對可構成建筑屋頂面的線段進行跟蹤和識別,生成建筑的各個頂面。每個頂部結構面是一個閉合且共面的三維多邊形,屋頂結構線可以是三維的線段、多段線或者多邊形。這一過程又劃分成以下3個步驟。
(1)提取相關線
相關線指在三維空間中彼此相互接觸或相交的線段或多邊形,提取過程是以隨機獲取的種子線開始,使用深度優先的遞歸搜索算法實現。種子線是指在所有結構線中還未被納入相關線集合的線段或多邊形。提取算法的過程如下所示:
QRL (種子線e, 相關線集合A)
e加入A
選擇e的相交線構成集合T
For i = 1 to T的元素數
QRL (T[i], A )
EndFor
圖2顯示了使用以上算法提取一個種子線的所有相關線的過程,紅色為輸入的種子線,每個遞歸依次獲取一條相關線,待遞歸結束時所有相關線被提取。

圖2 相關線的提取圖
(2)重構相關線
相關線集合構成了一個建筑頂部的結構面。由于算法的輸入可以為線段、多段線和多邊形,因此,集合中也會包含以上類型的矢量線。為方便識別處理,需要對相關線進行重構。
首先,相關線可以根據是否可直接參與構面而劃分為3類:確定的、參與的和未確定的相關線。確定的相關線指自身已經滿足構面條件(三維空間中閉合且共面),且不參與其他線的構面過程的線。參與的相關線指自身可構面并且可能還會參與到其他線的構面過程中(與其他相關線相交)。未定的相關線指自身不能構面,但可能會與其他線共同構面。圖3a中紅色線指示了3種類型的相關線。
其次,對于確定的相關線直接提取用于構面,而其他兩類相關線則構成了待構面線的集合。為便于后續構面算法的處理,將待構面線在每個結點和交點處進行打斷,形成只包含首尾結點的簡單線段。圖3b給出了打斷待構面線的結果。
(3)識別頂部結構面
為識別出頂部的結構面,將重構后的線依據連接拓撲關系創建為一個有向圖。其中,線段表示為圖的邊,線段的首尾結點表示為圖的頂點,每個頂點保存一個鏈集合來記錄與該頂點相連的所有邊。圖4給出了有向圖的一個例子。
依據有向圖,設計了一個提取面邊界線和創建多邊形的深度優先遞歸搜索算法。算法以任意一條邊為起始,沿線段某一方向進行搜索,不斷將可共面的邊加入集合,當加入邊與起始邊形成閉合多邊形時,記錄該集合并繼續搜索其他路徑。當所有邊均被作為起始邊完成搜索后,所有的多邊形均已找到。
最后,對于找到的多邊形,對其頂點進行重新排序,使其按照逆時針排列。對于可能搜索出的豎直多邊形(圖4a),在拉伸生成建筑體模型時是無用的,因此需要進行剔除。判斷豎直面可以求取多邊形的法向量,如果法向量處在[-□,□]內(□為設定的接近0的一個值),則多邊形為豎直,否則不為豎直。
1.3 創建建筑體模型
利用提取出的結構面,通過三維構型中的拉伸方法可以創建出建筑體模型。這主要由2個步驟構成。
(1)查詢建筑基底面高程。 垂直投影每個結構面到地面的DEM上,從其覆蓋范圍內查詢出基底面的高程值。在此,采用該范圍內的最低高程作為基底面的高程。
(2)拉伸創建體模型。 根據基底面高程,對結構面向下拉伸,創建建筑體模型。此時,得到的體模型是獨立構成的,因此,需要進行進一步合并和加工來獲取最終復合要求的體模型。圖5a是一個通過拉伸創建體模型的例子。

a—創建的獨立體模型;b—體模型的重構 圖5 建筑體模型的創建和重構圖
1.4 重構建筑體模型
重構體模型將獨立的體模型通過加工形成完整的體模型。由于現實中存在很多復雜的建筑形式,重構時并不能簡單使用體的合并操作。通過對多種類型建筑樣式的分析,設計了以下的體重構方法:
首先,對于獨立的建筑體集合,按照體的頂部最大高程進行排序,合并時按照由高到低的順序進行兩兩處理。其次,當處理2個體模型時,依據體間的干涉(相交)和包含關系,采用以下規則將體合并為一個整體:①干涉但不包含的進行并操作。②干涉且包含的進行差操作。
圖5b中有5個獨立的體模型a~e,干涉但不包含的共有3對:(a,c)(a,d)和(a,e),干涉且包含的共有2對:(a,c)和(a,e)。依據以上結果重構后的體模型如圖5b所示,其中c和e均在a的內部形成未貫穿的空洞。
通過以上重構操作,建筑體模型被完整創建出,而且對于塔式、連體、島狀等建筑都能夠得到正確模型。在取得模型后,還需要進行底面的刪除,因為在三維數字城市中,建筑需要坐落在由DEM和DOM共同構成的景觀層上,因此建筑底面是無用的。
根據以上方法,設計并開發快速建模系統。然后,選取了多種類型的建筑物來對其進行驗證。對于基于數字攝影測量的快速建模而言,所獲取的建筑信息是建筑頂部的結構線。因此,當建筑立面出現凹陷等特征時,要獲取建筑的精細模型,或者由人工對采集的結構線進行加工,或者對創建出的體模型進行修改。
根據“自頂向下”的特點,制定測試數據時主要考慮建筑頂部結構的差異,并對于立面存在凹陷的情況,由人工修改采集的結構線。測試選取的建筑類型包括:普通的平頂建筑、斜頂建筑、尖頂建筑,“島狀”建筑,普通的連體建筑和具有復雜連廊結構的連體建筑,以及拱形建筑。圖6給出了各種類型建筑采集或加工的結構線,以及由系統自動創建出的建筑三維模型。

圖6 采集的測試建筑結構線和系統創建的三維模型
通過對測試建筑的建模,證實系統可以正確創建出各種常見建筑的三維模型,用戶在采集結構線時完全可以采用線段形式,對于共用邊也只需采集一次,這為用戶的數據采集提供了方便,使建筑三維建模的效率得以提升。該文算法的核心思想是“自上而下”的空間自動構建方法,能夠對建筑體進行整體性和細節兩方面兼顧,對于復雜的古建筑的三維模型也有較好的應用。
城市建筑的三維建模已成為數字城市建設的重要內容之一。較傳統建模方法相比,基于數字攝影測量的方法具有周期短、投入低等優點,因此已在實際生產中被大量應用。該研究以數字攝影測量提取的建筑結構矢量線為基礎,設計了一種計算機創建建筑體模型的方法,目的是解決當前現有建模系統中存在的一些局限性。
通過使用各種類型的建筑對所設計方法和系統的檢驗,研究成果能夠實現各類建筑三維模型的自動創建,而且可以降低人工數據采集的工作量,避免因重復采集建筑邊沿線而可能導致的模型夾縫等問題,對于提升建筑三維建模的工作效率具有作用。
[1] 李影,馮仲科,王海平,等.基于LIDAR點云的建筑物的三維建模[J].林業調查規劃,2011,36 (6): 29 -31.
[2] 楊淼. 基于圖像的城市建筑物三維自動重建參數化建模方法研究[D].青島:中國海洋大學,2009.
[3] 桂德竹,林宗堅,張成成. 基于傾斜航空影像的城市建筑物三維模型構建研究[J].測繪科學, 2012, (4): 1-8.
[4] 馬東洋,藍朝楨,周楊,等. 一種面向對象的數字城市三維空間數據模型[J].地理空間信息,2005, 3(1):4-5.
[5] 張燕芳.基于遙感圖像的大規模城市建模中的建筑物輪廓提取[D].西安:西安電子科技大學,2014.
[6] 袁紅星.多視目標重構和繪制方法研究[D].合肥:中國科學技術大學, 2010.
[7] Adiv G.Determining three-dimensional motion and structure from optical flow generated by several moving objects[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1985, 7(4):384.
[8] 張龍.基于多幅圖像的建筑物三維建模[D].合肥:中國科學技術大學, 2015.
[9] 張秀敏.基于輪廓匹配的單幅圖像中建筑物三維重建算法研究[D].北京:北京師范大學,2012.
Three Dimensional Modeling Method ofUrban Buildings Based on Digital Photogrammetry
ZHANG Zhi'an1, ZHAO Yan2, YAN Bingjun3, WU Xuanqiao4
(1. Shandong Provincial Remote Sensing Technology Application Center, Shandong Jinan 250013,China;2. Longkou Mining Group Limited Corporation, Shandong Longkou 265701, China;3.Longkou Bureau of Land and Resource, Shandong Longkou 265701, China;4. Daliuhang Gold mine of Shandong Gold Jinchuang Limited Corporation, Shandong Yantai 265615, China)
Basic geographic database of digital city is changing from traditional two-dimensional form to three-dimensional form. Establishment of 3D model is an important basic work in urban construction. As the core part of 3D model, the quantity of building model is huge, and the production cost is high. Digital photogrammetry technology provides an effective way for collecting building vector datas. In order to reduce the workload of 3D modeling furtherly, structural identification, vector lines of building structures and decent buildings with complex configuration method and algorithm based on the auxiliary building and the development of 3D modeling software system manual should be studied. In this paper, based on the building line of digital city survey, the key algorithms involved in 3D modeling have been studied.
Rapid modeling; 3D model; surveying and mapping technology; digital city
2017-03-01;
2017-04-24;編輯:陶衛衛
張智安(1961—),男,山東泰安人,工程師,主要從事遙感與地理信息系統工程工作;E-mail:sdrs7260@126.com
P231
B
張智安,趙燕,顏秉軍,等.基于數字攝影測量的城市建筑三維快速建模方法[J].山東國土資源,2017,33(8):75-79. ZHANG Zhi'an, ZHAO Yan, YAN Bingjun, etc. Three Dimensional Modeling Method of Urban Buildings Based on Digital Photogrammetry[J].Shandong Land and Resources, 2017,33(8):75-79.