李 健, 王順利, 潘 華, 馬玉榮
(1. 鄭州大學 水利與環(huán)境學院 河南 鄭州 450001; 2. 鄭州大學 基建處 河南 鄭州 450001;3.鄭州大學 圖書館 河南 鄭州 450001)
近年來,隨著城市建設(shè)步伐的加快,各類建筑和道路設(shè)施的改建、擴建和新建,使得地下管線發(fā)生了很大的變化.地下管線具有種類繁多、隱蔽性強的特點.一方面,傳統(tǒng)的手工管理、管線資料收集、桌面端管理已經(jīng)不能滿足日益發(fā)展的城市地下管線資料更新、維護和信息檢索的需要[1];另一方面,傳統(tǒng)的二維或2.5維GIS難以很好地表達管線間的三維空間關(guān)系.三維GIS的管線可視化,其復雜的建模不僅花費巨大,而且數(shù)據(jù)更新緩慢.因此,傳統(tǒng)的GIS系統(tǒng)難以勝任地下管線的管理及可視化.維護、修理管線時經(jīng)常導致事故的發(fā)生,造成斷電、斷水、斷氣以及斷通訊的現(xiàn)象,不僅影響市民的正常生活,而且影響城市建設(shè),給國家?guī)碡敭a(chǎn)和經(jīng)濟的巨大損失[2].
增強現(xiàn)實(augmented reality,AR)是一種將現(xiàn)實世界信息和虛擬世界信息無縫集成的技術(shù),它使虛擬增強的信息疊加在現(xiàn)實場景上呈現(xiàn)給用戶,增強了用戶對現(xiàn)實世界的感知能力和與現(xiàn)實世界的交互能力[3].在移動GIS應(yīng)用中引入增強現(xiàn)實技術(shù),使得地理要素的識別更具直觀性[4].事實上,在地下管線管理中,人們往往更加注重管線的走向、相互位置以及管道本身的屬性,而不是其周邊環(huán)境[5].如果只將人們所關(guān)心的三維模型放置在其所在的現(xiàn)實環(huán)境中,就省去了對周邊環(huán)境的建模,也使得用戶能更加直觀地獲取地下管線信息.本文研究了基于移動終端的增強現(xiàn)實地下管線可視化技術(shù),針對城市地下管線管理存在的問題,提出了基于Android移動端開發(fā)地下管線增強現(xiàn)實系統(tǒng)的全新解決方案(簡稱PipeAR).PipeAR系統(tǒng)結(jié)合了移動GIS技術(shù)和增強現(xiàn)實技術(shù),形成一套針對城市地下管線的管理及可視化方法.借助移動GIS技術(shù),用戶可以隨時隨地對管線進行定位、管理,通過增強現(xiàn)實技術(shù)將管線的位置直觀地顯示給用戶,同時依托空間數(shù)據(jù)庫,準確地顯示管線屬性信息.
系統(tǒng)通過移動設(shè)備的攝像頭獲取現(xiàn)實世界的影像信息,根據(jù)移動設(shè)備的位置、姿態(tài)、朝向,并依據(jù)空間數(shù)據(jù)庫中的數(shù)據(jù)等,查詢攝像頭前方一定范圍內(nèi)的管線,將經(jīng)過渲染的三維模型疊加到現(xiàn)實實景影像上,用戶可以直觀地獲取管線位置及屬性信息,又可以看到管線周圍環(huán)境的實景,使原本不可見的管線準確、實時地顯示在用戶面前,并隨著用戶位置和移動設(shè)備的姿態(tài)改變而變化,從而達到地下管線的虛擬場景與現(xiàn)實實景融合的效果.如果系統(tǒng)在現(xiàn)實實景中識別到檢查井等地上可見標志時,會調(diào)整虛擬管線在現(xiàn)實實景中的位置,提高虛擬場景與現(xiàn)實實景融合的準確度.
PipeAR系統(tǒng)技術(shù)路線如圖1所示.系統(tǒng)主要由傳感器子系統(tǒng)、影像獲取子系統(tǒng)、數(shù)據(jù)處理子系統(tǒng)和三維渲染子系統(tǒng)組成.空間數(shù)據(jù)庫存儲地下管線的地理信息及屬性信息,系統(tǒng)從本質(zhì)上講也是對地下管線空間數(shù)據(jù)的管理、分析及可視化.傳感器子系統(tǒng)負責獲取移動設(shè)備的位置和姿態(tài)數(shù)據(jù);影像獲取子系統(tǒng)負責獲取現(xiàn)實世界的影像信息;數(shù)據(jù)處理子系統(tǒng)根據(jù)傳感器子系統(tǒng)的參數(shù)和影像獲取子系統(tǒng)的影像信息,查詢、計算和處理空間數(shù)據(jù)庫中的管線數(shù)據(jù),向上供三維渲染子系統(tǒng)動態(tài)渲染三維虛擬場景及現(xiàn)實實景,最終可視化顯示在移動設(shè)備屏幕上.
圖1 PipeAR系統(tǒng)技術(shù)路線Fig.1 Technical route of PipeAR system
傳感器子系統(tǒng)是感知現(xiàn)實世界的主要途徑,也是融合虛擬場景與現(xiàn)實實景的主要途徑.一方面,通過GPS等定位傳感器獲取移動設(shè)備的位置,并依據(jù)移動設(shè)備的位置信息處理空間數(shù)據(jù)以減少三維渲染的數(shù)據(jù)量;另一方面,通過移動設(shè)備的方向傳感器和重力傳感器獲取移動設(shè)備的姿態(tài)和朝向信息,進一步精細地計算和處理空間數(shù)據(jù)庫中的數(shù)據(jù),保證始終顯示移動設(shè)備前方的管線以及虛擬場景與現(xiàn)實實景的融合.
影像獲取子系統(tǒng)是獲取現(xiàn)實世界信息的次要途徑,使虛擬場景與現(xiàn)實實景的聯(lián)系更加緊密.一方面,現(xiàn)實實景可以作為三維虛擬場景的底圖;另一方面,系統(tǒng)根據(jù)實景中的管井、篦子等地下管線附屬地物的位置減少傳感器子系統(tǒng)的誤差,使虛擬場景更加緊密地貼合在現(xiàn)實實景中.
數(shù)據(jù)處理子系統(tǒng)是整個系統(tǒng)的關(guān)鍵,根據(jù)傳感器子系統(tǒng)和影像獲取子系統(tǒng)獲取的信息對空間數(shù)據(jù)進行計算分析.數(shù)據(jù)處理子系統(tǒng)對移動設(shè)備附近的管線進行緩沖區(qū)分析,得到附近的管線,然后對附近的管線進行拓撲操作,得到當前視景一定范圍內(nèi)的管線,遍歷管線節(jié)點,得到節(jié)點的坐標及高程信息,把坐標從地理坐標系轉(zhuǎn)換到OpenGL坐標系,再轉(zhuǎn)換到屏幕笛卡爾坐標系,最終供三維渲染子系統(tǒng)在移動設(shè)備前方的視景內(nèi)渲染三維虛擬管線.當視景內(nèi)出現(xiàn)管井等可見附屬地物時,計算其在虛擬場景中的位置,進而提高虛擬場景與現(xiàn)實實景融合的準確度和精度.
三維渲染子系統(tǒng)是用戶直接接觸的,其渲染效果直接影響用戶體驗.該子系統(tǒng)包括現(xiàn)實實景渲染、虛擬場景渲染、地下管線屬性信息的可視化、二維管線顯示等.現(xiàn)實實景渲染主要是將移動設(shè)備前方的現(xiàn)實世界影像顯示在屏幕上;虛擬場景渲染是根據(jù)數(shù)據(jù)處理子系統(tǒng)中得到的管線數(shù)據(jù)渲染三維虛擬場景;二維管線顯示可以輔助用戶了解周圍管線分布,提高對周邊環(huán)境的整體認知.
管線空間數(shù)據(jù)的獲取處理是PipeAR系統(tǒng)的基礎(chǔ),也是三維場景渲染以及二維管線可視化的基礎(chǔ).PipeAR系統(tǒng)通過查閱相關(guān)檔案并進行數(shù)字化錄入、遙感數(shù)據(jù)處理、數(shù)據(jù)轉(zhuǎn)換以及數(shù)字測量等方式獲取空間信息和非空間信息,并對相關(guān)空間信息和非空間信息進行空間數(shù)據(jù)編碼處理,該技術(shù)實現(xiàn)了管線的二、三維可視化表達.
三維場景渲染部分能可視化表達管線之間的三維空間關(guān)系及管線類別.系統(tǒng)獲取管線的埋深等表達管線的位置關(guān)系,并對不同類型的管線采用不同的材質(zhì)渲染.為了減少計算量和提高三維渲染效率,系統(tǒng)以移動設(shè)備當前位置為中心,一定距離為半徑生成緩沖區(qū),然后將緩沖區(qū)和管線空間數(shù)據(jù)疊置分析(求交疊置),得到所需的管線數(shù)據(jù).數(shù)據(jù)包含管線的線段數(shù)量和管線節(jié)點的經(jīng)緯度、埋深等空間數(shù)據(jù)以及管線名稱、類型、材質(zhì)等屬性數(shù)據(jù).
二維管線可視化部分為方便用戶把握周圍管線分布,系統(tǒng)以天地圖底圖分類可視化二維管線數(shù)據(jù),并圈出虛擬場景中對應(yīng)的管線,以區(qū)分未渲染的管線.
三維注冊跟蹤技術(shù)是PipeAR系統(tǒng)的關(guān)鍵,也是虛擬場景與現(xiàn)實實景準確融合的關(guān)鍵.三維注冊跟蹤技術(shù)就是實時、精確地確定目標地物的位置和用戶的視線方向,從而將虛擬信息準確地添加到真實環(huán)境中[6].系統(tǒng)采用的三維注冊方法分為基于硬件傳感器和基于機器視覺[7]兩類.首先基于硬件傳感器大致獲取移動設(shè)備附近的管線;然后基于機器視覺在小范圍內(nèi)跟蹤注冊,提高傳感器注冊的準確度,減少特征提取和三維渲染的計算量.
在系統(tǒng)中,使用方向傳感器即通過加速度傳感器和磁場傳感器軟件計算獲得移動設(shè)備的朝向信息[8].使用重力傳感器即通過測量重力加速度方向判斷重力的方向,通過陀螺和加速度計的積分計算獲得移動設(shè)備的姿態(tài).系統(tǒng)提取現(xiàn)實世界影像中地物的特征,將這些特征和預(yù)存的地物影像進行相關(guān)度匹配[9],根據(jù)空間數(shù)據(jù)庫中對應(yīng)地物的真實位置計算得到管井模型在虛擬場景中的位置,提高虛擬場景與現(xiàn)實實景融合的準確度和精度.
系統(tǒng)虛擬場景與現(xiàn)實實景融合的效果最終通過視覺傳達給用戶,其渲染的真實感直接關(guān)系到用戶體驗效果.因此,增強現(xiàn)實渲染技術(shù)是PipeAR系統(tǒng)的一項關(guān)鍵技術(shù).虛擬場景在視覺上是否真實主要取決于以下三點:① 地下管線模型是否逼真;② 地下管線之間的遮擋關(guān)系是否正確;③ 真實環(huán)境光照的影響.
系統(tǒng)由OpenGL ES圖形接口驅(qū)動底層圖形硬件,向上提供三維圖形建模支持.在數(shù)據(jù)處理子系統(tǒng)支持下,根據(jù)移動設(shè)備的姿態(tài)實時改變模型的俯仰和傾斜等參數(shù),渲染三維管線場景.為了增加地下管線的真實感,系統(tǒng)對管線的光線一致性及遮擋關(guān)系進行處理.系統(tǒng)根據(jù)真實環(huán)境的光照分布和地物的表面材質(zhì)計算管線表面的光照效果以及相應(yīng)的虛實陰影效果.根據(jù)管線之間的空間關(guān)系渲染相應(yīng)的遮擋,防止因錯誤的位置破壞虛擬場景的真實感.系統(tǒng)通過增強現(xiàn)實渲染技術(shù),使得系統(tǒng)虛擬場景模型更加貼近現(xiàn)實,并且實現(xiàn)了真實光照和陰影效果.
3.1.1二維管線功能 PipeAR系統(tǒng)針對地下管線,提供二維管線地圖的瀏覽功能.系統(tǒng)使用天地圖作為在線底圖,并在此之上疊加二維管線數(shù)據(jù).如圖2(a)所示,通過二維管線,用戶可以通覽管線的整體布局,以對管線有整體的認識和定位.針對地下管線分類較為復雜的特點,為準確清晰地可視化用戶感興趣的管線,如圖2(b)所示,系統(tǒng)支持管線分類顯示.此外,系統(tǒng)還支持在線底圖的切換以及底圖標注的顯示與否.
圖2 二維管線地圖Fig.2 Two-dimensional pipeline map
3.1.2增強現(xiàn)實功能 PipeAR系統(tǒng)增強現(xiàn)實功能模塊會監(jiān)聽移動設(shè)備的位置、姿態(tài)以及朝向變化,融合虛擬場景和現(xiàn)實實景.如圖3所示,增強現(xiàn)實界面下半部分是在實景影像之上疊加顯示當前視野的三維管線模型,上半部分以二維地圖的形式顯示二維管線,提示用戶周圍管線的分布情況.針對不同類型的管線,系統(tǒng)在二維地圖中以不同的顏色進行區(qū)分.與二維管線相對應(yīng),在三維場景中以不同的材質(zhì)渲染管線.
圖3 增強現(xiàn)實Fig.3 Augmented reality
在鄭州大學地下管線管理中進行PipeAR系統(tǒng)的實際應(yīng)用試驗,以驗證系統(tǒng)的有效性.鄭州大學綜合管網(wǎng)可以分為電力、給水、燃氣、熱力、弱電、污水、雨水7類.校區(qū)地下管線種類繁多、關(guān)系復雜,難以精確定位管線位置,直觀地獲取管線信息.PipeAR系統(tǒng)可以融合虛擬管線和現(xiàn)實實景,增強用戶對周邊環(huán)境的認知,并以方向引導用戶,極大方便了對地下管線的管理.
鄭州大學地下管線管理如圖4所示.用戶實際所處的位置見圖4(a),對應(yīng)的增強現(xiàn)實界面見圖4(b).可以看出:一方面,增強現(xiàn)實實景中管線和實景有較高的契合度;另一方面,增強現(xiàn)實可以有效提示實景中不可見管線的空間位置和屬性信息等內(nèi)容,很明顯地區(qū)分管線的類別.結(jié)果表明,該系統(tǒng)可以將地下管線疊加到現(xiàn)實場景,用戶可以快速得到所需的管線信息,在短時間內(nèi)加強對地下管線的認識.由此表明,該PipeAR系統(tǒng)是有效可行的.
圖4 鄭州大學地下管線管理Fig.4 Underground pipeline management in Zhengzhou University
結(jié)合移動GIS和增強現(xiàn)實技術(shù),設(shè)計并實現(xiàn)了基于Android移動端的地下管線增強現(xiàn)實系統(tǒng),有效地融合了現(xiàn)實實景與虛擬管線場景.PipeAR系統(tǒng)充分利用智能手機多傳感器的特點,結(jié)合本地空間數(shù)據(jù)庫,通過GPS獲取手機的位置,根據(jù)用戶的位置信息從空間數(shù)據(jù)庫獲取管線數(shù)據(jù),通過方向傳感器獲得移動設(shè)備朝向,通過重力傳感器獲得移動設(shè)備姿態(tài),動態(tài)渲染用戶附近地下管線并疊加到現(xiàn)實場景,同時識別管井等管線附屬地物,提高三維注冊的準確度和精度,達到了融合現(xiàn)實世界與虛擬場景、實時動態(tài)地對地下管線的各種信息進行可視化的目的.