黃佳彪,熊岳山,何鴻君
(國防科技大學 計算機學院,湖南 長沙 410073)
基于無人機航拍序列的建筑三維模型重建
黃佳彪,熊岳山,何鴻君
(國防科技大學 計算機學院,湖南 長沙 410073)
近年來,隨著計算機技術的快速發展和裝備高清相機的四旋翼無人機的普及,基于被動視覺法的建筑物三維重建逐漸成為計算機視覺和圖形學領域的熱點。然而,現有的被動視覺法針對建筑建模時存在耗時長、局部細節重建效果差等問題。針對這些不足,提出一種基于無人機航拍序列的建筑三維模型重建方法。首先,利用運動恢復結構的方法,對無人機針對目標建筑航拍采集的照片序列恢復建筑周邊場景的稀疏點云;同時,采用RANSAC方法,提取地面和建筑立面;進而對點云進行聚類,以提取出構成建筑的稀疏點云,再依據建筑稀疏點云得到建筑的柱狀模型;最后,對該模型進行平整化處理,得到保持建筑頂部輪廓細節的三維模型。實驗結果表明,利用所提方法可以快速得到建筑的三維模型,同時能較好地保持建筑頂部的輪廓細節。
無人機;航拍序列;三維重建;建筑物;三維輪廓
隨著信息時代的迅速發展,各類應用對于真實世界場景尤其是建筑三維模型的需求不斷增長。建立真實世界中建筑的三維模型,在數字地圖、虛擬現實、軍事等領域具有廣闊的應用前景,正不斷受到越來越多相關研究者的關注。基于視覺的三維重建方法可以分為主動視覺法和被動視覺法兩種。其中,主動視覺法通常依賴大型的昂貴設備來采集三維數據;而被動視覺法通常只需要消費級相機即可以獲取數據,并可以基于輸入圖片間的匹配關系來重建場景的三維模型。被動視覺法重建場景一般分3個步驟:運動恢復結構[1-2](structure from motion,SFM)、多視角立體視覺[3](multi-view stereo,MVS)及模型表面網格重建。其中,MVS和表面網格重建過程的計算時間開銷很大,并且該方法對室外場景重建的結果存在若干“空洞”。針對這兩點不足,本文在對建筑三維建模時,直接在SFM得到的稀疏點云上重建模型,在大幅降低建模時間的同時,較好地保持了建筑頂部的輪廓細節。
無人機被廣泛地應用于偵察、監測、搜救、消防、導航、運輸等諸多領域,其發展呈現出智能化、微型化、隱形化、多功能化等諸多特點[4]。四旋翼無人機也稱作四軸飛行器和四轉子,是一種依靠4個旋翼來維持姿態、懸停以及進行水平和豎直飛行的多軸飛行器[5]。近年來,消費級無人機發展迅猛,無人機廠商大疆提供了移動端應用程序編程接口(application programming interface,API)以支持開發者對無人機的路徑規劃、航拍任務進行編程控制[6]。
在已有研究的基礎上,本文基于消費級無人機航拍平臺,提出了一種基于無人機航拍序列的建筑三維模型快速重建方法。該方法首先利用SFM對目標建筑進行三維重建恢復稀疏點云,并提取地面及建筑立面,同時從場景整體點云中分離出建筑部分點云,最后得到建筑的三維輪廓模型。其要點包括:
1)直接基于SFM得到的稀疏點云進行建筑模型的重建,時間開銷小;
2)提出一種從稀疏點云中檢測建筑在地面二維輪廓的算法;
3)建筑模型重建方法基于消費級無人機,成本較低,生成的模型可被應用于數字地圖和虛擬現實等領域。
SFM的思想最早源于R. I. Hartley[7]的三維重建工作,并已被廣泛地應用于場景的稀疏三維點云重建中。SFM通過對一組無序未標定的圖像進行特征檢測和匹配,使用數值方法恢復三維信息,同時能夠從中求解相機的外部參數(相機的位置和朝向)和內部參數(鏡頭的焦距和徑向畸變)。SFM對圖像的要求很低,數據來源可以是同一相機或者不同相機在不同位置拍攝的圖像序列。SFM借助先進的特征提取和匹配算法,具有極好的魯棒性,并且支持對大規模場景(如自然景觀和城市建筑群)的三維重建,輸入圖像的數目可以達到上萬張。然而,SFM的重建效果依賴特征點的密集程度以及場景紋理的強弱,對于特征點少和弱紋理的場景重建效果一般。N. Snavely等人[2]利用從互聯網搜集的知名景點照片,恢復景點三維點云以及照片拍攝位置,使用戶能夠以全新的方式來瀏覽景點照片。A. Irschara等人[8]利用SFM對真實場景進行了三維點云重建,再通過將在場景中移動時錄制的視頻幀配準到場景點云中,實現了對移動軌跡的追蹤。
隨機抽樣一致算法(random sample consensus,RANSAC)最早由M. A. Fischler和R. C. Bolles[9]在1981年提出,是一種非確定性算法。它的輸入是一組觀測數據,輸出是能夠適應觀測數據的參數化模型。RANSAC通過反復選擇數據中的一個隨機子集來迭代,以達成估計模型參數的目標。該算法主要包括以下步驟:
1)在觀測數據中隨機選擇幾個點設為局內點;
2)計算擬合局內點的模型;
3)將除局內點外的觀測數據代入模型,計算是否符合模型并記錄數量;
4)重復以上步驟直到預設的迭代次數;
5)若某次局內點計算得到的模型擁有數量最多的符合點,那么這些局內點對應的模型就是待求解的模型。
RANSAC需要根據實際的應用場景確定局內點的個數以及迭代次數。RANSAC的這一思想在點云的處理上具有諸多應用。王植等人[10]基于RANSAC提出了從機載LiDAR數據提取建筑物屋頂面片和二維輪廓的算法。R. Schnabel等人[11]將RANSAC應用于對點云中基礎幾何體的檢測,例如平面、球體、圓柱、圓錐等,在點云壓縮、形狀分類、混合渲染等方面有諸多應用前景。Yang M. Y.等人[12]使用RANSAC方法對激光掃描得到的臺階點云進行了平面檢測,取得了較好的檢測結果。
點云聚類常用算法包括歐式聚類、K均值聚類以及區域增長[13]。其中,歐式聚類基于點云之間的歐式距離進行聚類,是最常用的聚類算法之一。歐式聚類的原理較為簡單,首先為點云集合P創建Kd樹索引,根據點間的歐式距離確定若干點云子集,且每個子集中的某點與集合中其他點的最小歐氏距離小于閾值。在歐式聚類算法中,通過選擇合適的閾值,可以有效地將點云分割成若干連通區域。李亮等人[14]利用歐式聚類算法從機載LiDAR點云數據中提取建筑物區域,實現了從機載點云數據中快速提取建筑屋頂點云。
本文考慮立面垂直于地面的建筑,基于前述已有研究,提出基于無人機航拍序列的建筑三維輪廓重建算法,該算法可描述如下:
輸入 無人機針對目標建筑航拍的照片序列I;
輸出 目標建筑的三維輪廓模型M。
步驟1 使用SFM方法對照片序列I進行處理,得到含有建筑點云的場景點云;過濾點云局外點和噪聲,得到點云集合P。
步驟2 使用RANSAC方法檢測P中平面,得到地平面G以及建筑各立面的表達式;根據建筑立面與地平面的交線得到建筑在地面的二維輪廓范圍B。
步驟3 對剔除地面和立面的點云進行歐式聚類,得到點云子區域的集合C,其中C的子集CB由屬于建筑的點云子區域構成。
步驟4 任取地平面G上某點為原點,以地平面為X-Y平面,垂直地平面且指向建筑點云所在方向為Z方向,建立空間直角坐標系,并計算CB中點云在新坐標系下的坐標。步驟5 將包圍B的最小矩形區域劃分為等大小方格,其中m、n是區域內方格行列數。將CB中的點云垂直投影到平面G,于是可構成建筑的點云與方格之間存在的映射關系:。對所有滿足f(p)=g(i, j)的p,取其中點云平均高度(Z坐標)作為方格高度,若某方格無點云投影在其內,則該方格高度為0。步驟6 對高度為0的方格,利用其鄰近且位于B內部的方格高度進行插值,更新其高度,得到建筑的柱狀模型。對柱狀模型進行平面擬合,即可得到建筑平整的三維輪廓模型。
由于點云較稀疏,故步驟6局部區域內立柱高度參差不齊,且部分區域產生“凹陷”現象。解決這一問題的有效方法是調整各局部區域內的立柱至一致高度,這可以用平面擬合的方法完成,從而得到建筑平整的三維輪廓模型。
基于上述方法,本文針對若干建筑進行實驗,并選取長沙市中山亭作為示例。實驗硬件平臺包括無人機、iOS設備和PC,軟件平臺包括Visual Studio和XCode開發環境。本文使用的無人機是大疆公司的御Pro,質量為734 g,所搭載的高清相機可以拍攝4 000*3 000分辨率的照片,且裝載GPS模塊和視覺避障系統,最大水平飛行速度為18 m/s,最長飛行時間為27 min,云臺相機的俯仰角范圍為-90°~+30°。圖1顯示了無人機、遙控器、iOS設備實物以及長沙市中山亭紀念館航拍照片樣例。
圖2給出了中山亭場景點云的地面檢測結果。檢測出地面后,根據建筑立面法向量和地平面法向量垂直的特征,可以進一步將建筑的立面及立面與地面相交形成的建筑二維輪廓邊界提取出來,以便后續界定模型邊界。


圖2 基于RANSAC的地平面檢測結果Fig. 2 Ground plane detection results based on RANSAC
圖3給出了剔除地面和建筑立面點云后的點云聚類結果。從圖3中可明顯看出,點云被分割成地面附近部分、樹木部分(綠圈內)和建筑部分(紅圈內)等子區域。雖然聚類后得到的建筑部分的點云可能不夠完整,但只要建筑的上表面部分的點云完好,就能用來獲取建筑的三維輪廓模型。

圖3 基于歐式聚類的建筑點云提取結果Fig. 3 Extraction results of the architectural point clouds based on Euclidean clustering
圖4是對中山亭柱狀模型的重建結果,其中黃色立柱表示該立柱占據的二維方格有點云投影在其內,藍色立柱表示該立柱高度由鄰近方格高度插值得到。對比建筑照片和柱狀模型可以看出,建筑頂部的幾何體(頂部兩立方體區域和水管)得到了較好的重建(分別用綠圈和紅圈標出)。
圖5顯示了由于建筑點云較為稀疏導致的柱狀模型出現“凹陷”現象,利用前述RANSAC過程檢測到的建筑立面可以確定柱狀模型的二維邊界。同時,利用平面擬合的方法對立柱的高度進行調整,最后得到齊整的建筑三維輪廓模型(見圖6a)。

圖4 中山亭照片及其柱狀模型重建結果Fig. 4 A comparison of the building and its columnar model

圖5 柱狀模型部分區域的“凹陷”Fig. 5 Sunken parts of the columnar model

圖6 兩種不同方法得到的模型Fig. 6 A comparison between the results by MVE and the proposed method
本文針對若干目標建筑進行了三維輪廓重建,實驗運行環境為Intel四核處理器4.00 GHz,16 GB內存,64位操作系統。整個重建過程的時間消耗絕大部分在SFM,但是本文選用的方法相比多視角立體視覺重建的方法,時間消耗仍然很低。例如,圖6是分別利用本文給出的方法和MVE[15]軟件得到的中山亭模型,輸入圖片均為122張,本文給出方法耗時約0.3 h,而MVE整個重建過程耗時約3.0 h,相比本文方法的高出一個數量級。另外,MVE得到的模型表面有若干“空洞”(圖6b紅圈所示),而本文的模型相對更加完整,在一些應用場景下(如Google Earth)可以作為真實建筑的代替模型。
針對當前建筑三維重建設備昂貴、重建過程耗時長的問題,本研究利用相對廉價的無人機硬件平臺,提出了一種快速進行建筑三維重建的方法,得到了保持建筑幾何結構和部分細節的三維輪廓模型。與基于昂貴三維重建設備的方法和基于多視角立體視覺的方法相比,本文的方法不僅更加經濟,而且能大大減少重建時間,非常適合在對模型細節要求不高的場合下對建筑進行快速建模。
當然,本文的方法也存在一些不足,需要進一步改進。首先,本文的方法只適用于立面垂直地面的建筑,對于表面結構復雜、立面為曲面的建筑不能取得很好的重建效果;其次,本文的方法只針對場景中單個建筑進行了實驗,今后可以考慮針對大場景內多建筑進行三維輪廓重建。
[1] GOESELE M,SNAVELY N,CURLESS B,et al.Multi- View Stereo for Community Photo Collections[C]//IEEE 11th International Conference on Computer Vision.Rio de Janeiro: IEEE,2007:1-8.
[2] SNAVELY N,SEITZ S M,SZELISKI R. Photo Tourism:Exploring Photo Collections in 3D[J]. ACM Transactions on Graphics (TOG),2006,25(3):835-846.
[3] SEITZ S M,CURLESS B,DIEBEL J,et al. A Comparison and Evaluation of Multi-View Stereo Reconstruction Algorithms[C]//IEEE Conference on Computer Vision and Pattern Recognition. New York:IEEE,2006:519-528.
[4] 方 璇,鐘伯成. 四旋翼飛行器的研究與應用[J]. 上海工程技術大學學報,2015,29(2):113-118.FANG Xuan,ZHONG Bocheng. Research on and Application of Four-Rotor Aircraft[J]. Journal of Shanghai University of Engineering Science,2015,29(2):113-118.
[5] 聶博文,馬宏緒,王 劍,等. 微小型四旋翼飛行器的研究現狀與關鍵技術[J]. 電光與控制,2007,14(6):113-117.NIE Bowen,MA Hongxu,WANG Jian,et al. Study on Actualities and Critical Technologies of Micro/Mini Quadrotor[J]. Electronics Optics & Control,2007,14(6):113-117.
[6] DJI. Mobile SDK[EB/OL]. [2017-08-20]. https://developer.dji.com/cn/mobile-sdk/.
[7] HARTLEY R I. Euclidean Reconstruction from Uncalibrated Views[C]//The Second Joint European-US Workshop on Applications of Invariance in Computer Vision. Heidelberg: Springer,1993:237-256.
[8] IRSCHARA A,ZACH C,FRAHM J M,et al. From Structure-from-Motion Point Clouds to Fast Location Recognition[C]// IEEE Conference on Computer Vision and Pattern Recognition. [S. l.]:IEEE,2009:2599-2606.
[9] FISCHLER M A,BOLLES R C. Random Sample Consensus:a Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography[J]. ACM,1981,24(6):381-395.
[10] 王 植,李慧盈,吳立新,等. 基于 RANSAC 模型的機載 LiDAR 數據中建筑輪廓提取算法[J]. 東北大學學報 (自然科學版),2012,33(2):271-275.WANG Zhi,LI Huiying,WU Lixin,et al. Building Outline Extraction from Airborne LiDAR Data Based on RANSAC Model[J]. Journal of Northeastern University(Natural Science),2012,33(2):271-275.
[11] SCHNABEL R,WAHL R, KLEIN R. Efficient RANSAC for Point-Cloud Shape Detection[J]. Computer Graphics Forum,2007,26(2):214-226.
[12] YANG M Y,F?RSTNER W. Plane Detection in Point Cloud Data[C]//Proceedings of the 2nd International Conference on Machine Control Guidance. Bonn:[s.n.],2010:95-104.
[13] RUSU R B. Semantic 3D Object Maps for Everyday Manipulation in Human Living Environments[J]. KIKünstliche Intelligenz,2010,24(4):345-348.
[14] 李 亮,王 成,李世華,等. 基于機載 LiDAR 數據的建筑屋頂點云提取方法[J]. 中國科學院大學學報,2016,35(4):537-541.LI Liang,WANG Cheng,LI Shihua,et al. Building Roof Point Extraction Based on Airborne LiDAR Data[J].Journal of University of Chinese Academy of Sciences,2016,35(4):537-541.
[15] FUHRMANN S,LANGGUTH F,GOESELE M.MVE-A Multi-View Reconstruction Environment[C]//The Eurographics Workshop on Graphics & Cultural Heritage.Darmstadt:GCH,2014:11-18.
Reconstruction of 3D Architectural Model Based on UAV Images
HUANG Jiabiao,XIONG Yueshan,HE Hongjun
(School of Computer Science,National University of Defense Technology,Changsha 410073,China)
In recent years, with the rapid development of computer technology and the popularity of four-rotor unmanned aerial vehicles equipped with high-de fi nition cameras, three-dimensional reconstruction of buildings based on passive scanning has become a hot issue in the research fi eld of computer vision and graphics. However, current passive scanning methods for modeling are characterized with such fl aws as time-consuming reconstruction and poor quality in the reconstruction of local details. In view of these shortcomings, a three-dimensional model reconstruction method has thus been proposed based on UAV aerial sequences. First, the SFM method is adopted to recover the sparse point cloud of the surrounding scene from the aerial image collection of the target building. Next, by adopting the RANSAC method, an effort has been made to extract the ground and the building facades. And then the point clouds are clustered and extracted to obtain the columnar model of the building. Finally, the 3D model of the building is obtained by smoothing the columnar model. The experimental results show that the 3D model of the building can be obtained quickly by adopting the above-mentioned method, with the contour details of the top of the building well preserved.
UAV;aerial sequence;3D reconstruction;building;3D contour model
TP391.9
A
1673-9833(2017)05-0006-05
10.3969/j.issn.1673-9833.2017.05.002
2017-08-20
國家自然科學基金資助項目(61379103)
黃佳彪(1993-),男,江西撫州人,國防科技大學碩士生,主要研究方向為三維重建,E-mail:754635991@qq.com
熊岳山(1963-),男,湖南沅江人,國防科技大學教授,博士,博士生導師,主要從事圖形圖像處理和智能計算方面的研究,E-mail:ysxiong@nudt.edu.cn
(責任編輯:廖友媛)