周 玲,陳 強(qiáng)
上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海201620
城市地下管網(wǎng)主要由8種管道組成,其鋪設(shè)范圍遍及水下和路面下,起到傳遞信息、輸送能源、減災(zāi)排澇、排棄廢物等作用,城市地下管網(wǎng)管理系統(tǒng)是智慧城市建設(shè)的基礎(chǔ)。隨著城市的高速發(fā)展,提高管網(wǎng)建設(shè)的信息化和科學(xué)化是城市高效運(yùn)行的必然要求,傳統(tǒng)依靠二維“平面圖+剖面圖”的規(guī)劃設(shè)計(jì),畫(huà)面空間感不強(qiáng),不利于準(zhǔn)確掌握管網(wǎng)詳細(xì)信息,可能出現(xiàn)管道鋪設(shè)沖突,發(fā)生施工事故,甚至導(dǎo)致規(guī)劃失敗等問(wèn)題。
目前,國(guó)內(nèi)有不少學(xué)者采用基于計(jì)算機(jī)的虛擬地理環(huán)境(Virtual Geographic Environments,VGE)[1]來(lái)解決上述問(wèn)題并實(shí)現(xiàn)管網(wǎng)的可視化,例如,吳學(xué)明[2]等基于SuperMap GIS 開(kāi)發(fā)了二維、三維管網(wǎng)智能信息系統(tǒng)和成圖系統(tǒng);陶迎春等[3]設(shè)計(jì)了基于場(chǎng)景圖進(jìn)行三維場(chǎng)景組織管理系統(tǒng)。但基于計(jì)算機(jī)的VGE無(wú)法為決策提供及時(shí)和直觀的參考,且需渲染地面建筑的模型數(shù)據(jù)[4],這些海量數(shù)據(jù)的存儲(chǔ)、細(xì)節(jié)處理、快速顯示等問(wèn)題,仍然是不可規(guī)避的難題,對(duì)硬件設(shè)備性能也有較高要求。近年來(lái),在地下管網(wǎng)建設(shè)方面,國(guó)際上的學(xué)者對(duì)增強(qiáng)現(xiàn)實(shí)技術(shù)(Augmented Reality,AR)與地理信息系統(tǒng)(Geographic Information System,GIS)相結(jié)合的研究較為廣泛,例如,Soria[5]利用AR技術(shù)在移動(dòng)端實(shí)現(xiàn)地下管網(wǎng)設(shè)施生命周期管理過(guò)程中的主要功能,該研究利用增強(qiáng)現(xiàn)實(shí)的硬件設(shè)備Tango 實(shí)現(xiàn)對(duì)真實(shí)世界的三維注冊(cè)和動(dòng)態(tài)跟蹤;Lee[6]開(kāi)發(fā)了檢索并可視化鉆井日志的AR系統(tǒng),在鋪設(shè)地下管線過(guò)程中有利于地面打孔的實(shí)地工作;Schubert[7]基于地下管網(wǎng)、城市和交通等數(shù)據(jù)通過(guò)定位和AR技術(shù)對(duì)城市建設(shè)進(jìn)行規(guī)劃和設(shè)計(jì)等。在移動(dòng)設(shè)備中將AR 可視化與GIS 相結(jié)合,可滿足地下管網(wǎng)可視化、實(shí)時(shí)交互、自由導(dǎo)航等需求,將三維模型顯示到現(xiàn)實(shí)場(chǎng)景中沉浸感更強(qiáng),同時(shí)為工作者提供了更加直觀的理解。根據(jù)上述問(wèn)題和分析,本文設(shè)計(jì)了一種城市地下管網(wǎng)增強(qiáng)現(xiàn)實(shí)系統(tǒng),實(shí)現(xiàn)管網(wǎng)的虛實(shí)融合和實(shí)時(shí)交互等功能,有效解決VGE決策不靈活、海量數(shù)據(jù)存儲(chǔ)和顯示的問(wèn)題。
如圖1 是移動(dòng)端的地下管道實(shí)時(shí)定位增強(qiáng)現(xiàn)實(shí)系統(tǒng)的硬件架構(gòu)和整體邏輯結(jié)構(gòu),主要由微處理器單元、信號(hào)采集單元、傳輸單元、通信單元和顯示單元這5 部分組成。系統(tǒng)硬件設(shè)備的微處理單元主要是由ARM(Advanced RISC Machine)微處理器組成,用于整個(gè)系統(tǒng)協(xié)調(diào)和控制各個(gè)單元的工作。通信單元通過(guò)無(wú)線網(wǎng)絡(luò)和通信協(xié)議與遠(yuǎn)程服務(wù)中心通信,用于手機(jī)向服務(wù)中心發(fā)送包傳輸請(qǐng)求和獲取管道屬性數(shù)據(jù)。顯示單元主要由手機(jī)屏幕組成,用于顯示虛擬管道模型疊加在真實(shí)場(chǎng)景中的AR效果。傳輸單元主要由藍(lán)牙模塊組成,用于GNSS(Global Navigation Satellite System)接收機(jī)在CORS(Continuously Operating Reference Stations)模式下與微處理器單元的連接工作,天線和接收模塊構(gòu)成了GNSS接收機(jī)的主要功能,用于接收導(dǎo)航信息并轉(zhuǎn)發(fā)處理后的導(dǎo)航信號(hào)。
手機(jī)的位置信息、移動(dòng)速度、仰俯旋轉(zhuǎn)等角度信息是管道AR 系統(tǒng)實(shí)現(xiàn)實(shí)時(shí)定位和管道模型跟蹤的關(guān)鍵信息,它們由多種傳感器進(jìn)行采集。信號(hào)采集單元主要包括手機(jī)攝像頭、陀螺儀、重力加速度計(jì)、GPS(Global Positioning System)等多種傳感器,手機(jī)攝像頭用于獲取現(xiàn)實(shí)環(huán)境的影像并渲染成虛擬攝像頭的背景影像,通過(guò)視頻處理模塊,管道模型被疊加到攝像頭獲取的影像上;陀螺儀、重力加速度計(jì)用于采集手機(jī)六軸姿態(tài)信息,通常在高頻率下進(jìn)行平移和旋轉(zhuǎn)加速;GPS用于獲取手機(jī)的經(jīng)緯度信息進(jìn)行實(shí)時(shí)定位。
本設(shè)計(jì)基于上海地區(qū)已有的3個(gè)參考站,利用多基站網(wǎng)絡(luò)實(shí)時(shí)動(dòng)態(tài)差分(Real-Time kinematic,RTK)技術(shù)建立的連續(xù)運(yùn)行參考站進(jìn)行位置測(cè)量,根據(jù)3個(gè)已知參考站的坐標(biāo)可求得移動(dòng)設(shè)備的精確位置坐標(biāo),測(cè)量精度可達(dá)到厘米級(jí)甚至毫米級(jí),通過(guò)藍(lán)牙將測(cè)地型GNSS接收機(jī)與小米8 智能手機(jī)連接,導(dǎo)出精確坐標(biāo)文件。AR系統(tǒng)讀取定位信息,并通過(guò)手機(jī)攝像頭識(shí)別真實(shí)場(chǎng)景的平面和興趣點(diǎn)[8],確保管道模型疊加到真實(shí)世界的確定位置,實(shí)現(xiàn)虛實(shí)融合效果。
圖1 總體設(shè)計(jì)方案框圖
表1 AR SDK比較
2.2.1 軟件環(huán)境
針對(duì)移動(dòng)端能根據(jù)用戶位置實(shí)時(shí)定位,本設(shè)計(jì)選擇基于移動(dòng)端設(shè)備進(jìn)行開(kāi)發(fā)。目前AR設(shè)備在移動(dòng)端的應(yīng)用主要分為兩類[9]:頭戴式和手持式,實(shí)際場(chǎng)景中智能手機(jī)要比頭戴式設(shè)備更適用,主要是智能手機(jī)的普及性、便攜性、移動(dòng)網(wǎng)絡(luò)基礎(chǔ)設(shè)施方面等優(yōu)勢(shì)更為突出。因此,采用Android 系統(tǒng)的智能手機(jī)作為地下管道實(shí)時(shí)定位AR系統(tǒng)的應(yīng)用平臺(tái),采用ARCore SDK(Software Development Kit)進(jìn)行AR 功能開(kāi)發(fā),基于Unity3D 和Visual Studio 2017 開(kāi)發(fā)平臺(tái)運(yùn)用C#語(yǔ)言進(jìn)行AR 系統(tǒng)的邏輯和交互功能開(kāi)發(fā),服務(wù)器選用是Apache Tomcat 7.0,使用MySQL關(guān)系型數(shù)據(jù)庫(kù)。
系統(tǒng)的管道增強(qiáng)現(xiàn)實(shí)功能通過(guò)增強(qiáng)現(xiàn)實(shí)軟件開(kāi)發(fā)包進(jìn)行二次開(kāi)發(fā),表1比較了市面上應(yīng)用較廣泛的六款增強(qiáng)現(xiàn)實(shí)開(kāi)發(fā)包。其中免費(fèi)的開(kāi)源SDK主要是ARCore、ARKit 和ARToolKit,但ARKit 不支持Android 系 統(tǒng)、ARToolKit[10]在環(huán)境光預(yù)估處理沒(méi)有ARCore真實(shí),總體評(píng)估后ARCore更適用本系統(tǒng)。
2.2.2 系統(tǒng)的主要軟件設(shè)計(jì)
系統(tǒng)的功能模塊主要體現(xiàn)在三方面:多方位實(shí)時(shí)查看管道模型,模型與攝像頭不存在直接關(guān)聯(lián),模型可隨用戶位置的變換而實(shí)時(shí)更新、動(dòng)態(tài)跟蹤;沉浸式體驗(yàn),在不同光照條件下,管道模型與現(xiàn)實(shí)環(huán)境中物體的明暗度、陰影方向和角度保持一致;實(shí)時(shí)交互,點(diǎn)擊屏幕中的模型,可實(shí)時(shí)顯示管道存檔時(shí)的相關(guān)屬性,再次點(diǎn)擊UI界面任意位置則隱藏UI,能為用戶決策提供及時(shí)、直觀的參考。軟件設(shè)計(jì)流程如圖2所示。
圖2 軟件設(shè)計(jì)流程圖
(1)初始化。用戶開(kāi)啟地下管道AR系統(tǒng),系統(tǒng)初始化,主程序自動(dòng)啟動(dòng)攝像頭并調(diào)用攝像頭接口,將攝像頭拍攝的真實(shí)世界渲染為附加的Unity攝像頭組件的背景,保證了現(xiàn)實(shí)場(chǎng)景的實(shí)時(shí)呈現(xiàn)。
(2)實(shí)時(shí)定位。GPS 探測(cè)到手機(jī)目前所在位置,羅盤判斷攝像頭對(duì)準(zhǔn)的方向,將兩者相結(jié)合實(shí)現(xiàn)跟蹤配準(zhǔn),程序獲取相關(guān)傳感器接口的數(shù)據(jù)進(jìn)行處理和轉(zhuǎn)換,讀取GNSS接收機(jī)導(dǎo)出的手機(jī)定位數(shù)據(jù)文件,通過(guò)微處理器的數(shù)據(jù)計(jì)算將兩部分?jǐn)?shù)據(jù)建立連接,利用七參數(shù)坐標(biāo)變換法得到Unity3D所需數(shù)據(jù)。
(3)虛實(shí)融合。OpenGL實(shí)現(xiàn)管道模型繪制,根據(jù)讀取的定位數(shù)據(jù)查詢MySQL 數(shù)據(jù)庫(kù),檢索出經(jīng)緯度小數(shù)點(diǎn)后第5 位數(shù)值的變化幅度在3~4 之間的管線測(cè)量數(shù)據(jù),即檢索出用戶周圍10 m左右的管線數(shù)據(jù),將平面坐標(biāo)和高程轉(zhuǎn)換成Unity3D的數(shù)據(jù),進(jìn)而將管線數(shù)據(jù)利用Unity3D引擎進(jìn)行可視化處理,并呈現(xiàn)在手機(jī)屏幕上,利用VIO算法來(lái)計(jì)算位置變化并實(shí)現(xiàn)對(duì)管線模型的跟蹤。
(4)實(shí)時(shí)交互。為增加沉浸式體驗(yàn)、實(shí)時(shí)交互等功能,還設(shè)計(jì)了用戶與管線模型的交互方案,通過(guò)Unity3D在每個(gè)管線模型上都添加了碰撞器組件,在Update方法中每幀監(jiān)測(cè)觸發(fā)事件是否發(fā)生,若檢測(cè)到屏幕被點(diǎn)擊,則從屏幕點(diǎn)擊處發(fā)出射線并指向管線模型,觸發(fā)事件并顯示UI界面。
3.1.1 基于RTK的定位設(shè)計(jì)
本文設(shè)計(jì)是基于位置的增強(qiáng)現(xiàn)實(shí)的[11],利用GPS、加速度計(jì)等傳感器獲取的信息在真實(shí)場(chǎng)景顯示AR 對(duì)象,即管線模型?,F(xiàn)有移動(dòng)端定位方式[12-13]主要有移動(dòng)基站、A-GPS、Wi-Fi 等定位方式,但移動(dòng)基站和A-GPS定位精度在百米級(jí)和十米級(jí),Wi-Fi 適用于室內(nèi)定位。由于本系統(tǒng)對(duì)定位精度要求較高,故采用北斗衛(wèi)星導(dǎo)航系統(tǒng)(BeiDou navigation Satellite system,BDS)和網(wǎng)絡(luò)傳輸獲得手機(jī)的精確位置,定位精度可達(dá)到厘米級(jí)甚至毫米級(jí)。圖3 簡(jiǎn)單示意了高精度實(shí)時(shí)定位[14]的架構(gòu),衛(wèi)星為全球定位導(dǎo)航系統(tǒng)的空間部分,用于發(fā)送導(dǎo)航定位的衛(wèi)星信號(hào);地面增強(qiáng)系統(tǒng)為CORS 系統(tǒng)的地面參考站,負(fù)責(zé)采集和處理導(dǎo)航衛(wèi)星觀測(cè)數(shù)據(jù),實(shí)時(shí)向用戶提供載波相位、偽距、改正數(shù)等信息;GNSS接收機(jī)用于測(cè)量所在位置點(diǎn)的高精度位置坐標(biāo),可依據(jù)精確位置通過(guò)服務(wù)器在數(shù)據(jù)庫(kù)中檢索附近管道信息。
圖3 高精度實(shí)時(shí)定位示意圖
定位信息的傳輸流程是首先將接收機(jī)的數(shù)據(jù)輸出方式設(shè)置為GGA(Global Positioning System Fix Data)數(shù)據(jù),然后登錄CORS賬號(hào),接入CORS網(wǎng)開(kāi)始測(cè)量,通過(guò)接收到的衛(wèi)星星歷及CORS 網(wǎng)解算的差分改正信息解算出高精度坐標(biāo),最后接收機(jī)通過(guò)串口將精確坐標(biāo)傳輸?shù)剿{(lán)牙模塊,并導(dǎo)出到已經(jīng)配對(duì)的手機(jī)端。通過(guò)此方法,提高了手機(jī)的定位精度。
3.1.2 基于七參數(shù)坐標(biāo)變換的管道數(shù)據(jù)設(shè)計(jì)
通過(guò)網(wǎng)絡(luò)傳輸從GIS(Geographic Information System)服務(wù)器[15]輸出到客戶端的管道位置的測(cè)量數(shù)據(jù)主要包括空間數(shù)據(jù)和屬性數(shù)據(jù)??臻g數(shù)據(jù)用于Unity3D 中對(duì)象坐標(biāo)、角度、比例和紋理的轉(zhuǎn)換,屬性數(shù)據(jù)用于數(shù)據(jù)檢索。如表2體現(xiàn)了管道的空間數(shù)據(jù)結(jié)構(gòu)。
表2 管道的空間數(shù)據(jù)結(jié)構(gòu)
利用七參數(shù)坐標(biāo)變換方法[16],將管道的經(jīng)緯度坐標(biāo)(B,L,H)先轉(zhuǎn)換成空間直角坐標(biāo)系下的坐標(biāo)(X,Y,Z),然后將(X,Y,Z)轉(zhuǎn)換成世界坐標(biāo)(X1,Y1,Z1)。七參數(shù)坐標(biāo)轉(zhuǎn)換方法采用至少3個(gè)點(diǎn)來(lái)計(jì)算7個(gè)參數(shù),分別是3個(gè)平移參數(shù)即世界坐標(biāo)系和空間直角坐標(biāo)系的坐標(biāo)原點(diǎn)(X1,Y1,Z1)和(X,Y,Z)之間差值,3個(gè)旋轉(zhuǎn)參數(shù)為兩個(gè)坐標(biāo)系的XYZ 軸重合在一起的角度,1 個(gè)尺度變化參數(shù)m 可實(shí)現(xiàn)管道尺度的比例轉(zhuǎn)換。通過(guò)測(cè)試得知,ARCore 初始化時(shí),世界坐標(biāo)系和攝像機(jī)坐標(biāo)系具有相同的原點(diǎn)和軸,攝像頭的當(dāng)前位置和旋轉(zhuǎn)都為(0,0,0)。添加C#腳本可通過(guò)手機(jī)的傳感器獲取位置O1(X0,Y0,Z0)和滾動(dòng)、仰俯、方位角這3個(gè)姿態(tài)參數(shù),姿態(tài)參數(shù)可表示為(rx,ry,rz)。若將世界坐標(biāo)視為現(xiàn)實(shí)世界中的局部坐標(biāo),則要求O1是世界坐標(biāo)的原點(diǎn)并且其坐標(biāo)軸與空間直角坐標(biāo)系的坐標(biāo)軸大致平行,所以在初始化導(dǎo)出的ARCore 項(xiàng)目時(shí),需要保持智能手機(jī)屏幕的垂直方向與北方平行,然后根據(jù)七參數(shù)坐標(biāo)轉(zhuǎn)換將空間直角坐標(biāo)系中的管道坐標(biāo)數(shù)據(jù)轉(zhuǎn)換為世界坐標(biāo)。等式(1)~(4)是從空間直角坐標(biāo)系中的(X,Y,Z)到世界坐標(biāo)中的(X1,Y1,Z1)的轉(zhuǎn)換。
依據(jù)公式(1)~(4)對(duì)原始數(shù)據(jù)進(jìn)行計(jì)算,得到管道起始點(diǎn)(X1b,Y1b,Z1b)和終點(diǎn)(X1e,Y1e,Z1e)的世界坐標(biāo),對(duì)象渲染由網(wǎng)格的樞軸位置、旋轉(zhuǎn)、尺度變化和材質(zhì)決定。其中,樞軸點(diǎn)即管道的中點(diǎn),樞軸點(diǎn)、長(zhǎng)度和直徑是Unity3D中管道模型的3個(gè)組成部分,如等式(5)~(8)所示,Unity3D 中對(duì)象的樞軸坐標(biāo)為(X1p,Y1p,Z1p),由管道世界坐標(biāo)下的起點(diǎn)和終點(diǎn)計(jì)算得到,管道長(zhǎng)度為R,管道直徑即數(shù)據(jù)庫(kù)中Diameter參數(shù),可直接讀取。
增強(qiáng)現(xiàn)實(shí)技術(shù)[17]是一種將真實(shí)世界信息和虛擬世界信息“無(wú)縫”集成的新技術(shù)。ARCore SDK 無(wú)須任何額外的硬件,就可擴(kuò)展到Android 生態(tài)系統(tǒng),其中,ARCore 主要通過(guò)構(gòu)建地圖實(shí)現(xiàn)對(duì)模型的動(dòng)態(tài)跟蹤。它可將現(xiàn)實(shí)世界的環(huán)境信息存儲(chǔ)在內(nèi)存中實(shí)現(xiàn)地圖構(gòu)建,追蹤器根據(jù)已存儲(chǔ)的部分圖中的“關(guān)鍵幀”進(jìn)行現(xiàn)實(shí)世界與圖的匹配,利用VIO算法和追蹤器完成環(huán)境感知。當(dāng)移動(dòng)設(shè)備位置變化越大,則構(gòu)建的地圖越大,易產(chǎn)生內(nèi)容丟失等情況,導(dǎo)致追蹤效果變差。但利用ARCore 創(chuàng)建錨點(diǎn)可將地圖內(nèi)容進(jìn)行固定,且可多次設(shè)定錨點(diǎn)以擴(kuò)大地圖覆蓋的物理面積,保證環(huán)境內(nèi)容不被丟棄,從而提高了系統(tǒng)動(dòng)態(tài)跟蹤的魯棒性。
通過(guò)ARCore SDK 進(jìn)行C#編程開(kāi)發(fā)時(shí),利用不同的API(Application Programming Interface)讓手機(jī)感知其周圍環(huán)境、管道模型虛實(shí)融合以及交互等功能。例如,通過(guò)ARCoreBackgroundRenderer接口將手機(jī)攝像頭拍攝的現(xiàn)實(shí)環(huán)境渲染為附加的Unity 攝像頭組件的背景,Anchor 接口將管道模型附加到現(xiàn)實(shí)環(huán)境中,并將該點(diǎn)的環(huán)境信息存儲(chǔ)到內(nèi)存中,DetectedPlane接口用來(lái)檢測(cè)和跟蹤現(xiàn)實(shí)環(huán)境中的平面,完成平面識(shí)別。ARCore將虛擬管道模型與手機(jī)攝像頭看到的真實(shí)世界融合,通過(guò)以下3 個(gè)主要功能構(gòu)建對(duì)周圍環(huán)境的理解:運(yùn)動(dòng)跟蹤,手機(jī)通過(guò)攝像頭標(biāo)識(shí)興趣點(diǎn),將這些點(diǎn)的移動(dòng)與手機(jī)慣性傳感器的讀數(shù)進(jìn)行組合,讓手機(jī)可以確定它的位置和姿態(tài),并保持管道模型在確定位置;環(huán)境理解,讓手機(jī)可以檢測(cè)平坦的表面(例如地面)的大小和位置,放置醒目的標(biāo)記,作為觀察管道模型的參照點(diǎn);光估測(cè),讓手機(jī)估測(cè)環(huán)境當(dāng)前的光照條件,使得管道模型的明暗程度與真實(shí)世界相協(xié)調(diào),增強(qiáng)管道模型的沉浸感。
為了測(cè)試虛擬管道在現(xiàn)實(shí)環(huán)境中的可視化效果,做了以下兩組對(duì)比實(shí)驗(yàn)。
(1)評(píng)估管道模型漂移情況。在世界坐標(biāo)系中(1,-1.5,1)處放置一個(gè)醒目的標(biāo)記模型,記錄標(biāo)記模型的平移距離來(lái)定量的評(píng)估管道模型漂移長(zhǎng)度。實(shí)驗(yàn)過(guò)程是手持移動(dòng)設(shè)備在5 m×5 m的區(qū)域中走動(dòng),保持移動(dòng)設(shè)備的攝像頭高度距離地面1.5 m,實(shí)驗(yàn)時(shí)長(zhǎng)為10分鐘,分別在第1分鐘、4分鐘、7分鐘、10分鐘記錄標(biāo)記模型的位置。由于手機(jī)長(zhǎng)時(shí)間運(yùn)行會(huì)發(fā)熱,影響位置數(shù)據(jù)的精準(zhǔn)度,因此將實(shí)驗(yàn)時(shí)長(zhǎng)定為10分鐘。以標(biāo)記模型為中心,從標(biāo)記模型的前后左右4個(gè)角度進(jìn)行觀察,前方和后方兩個(gè)視角的測(cè)試圖如圖4 所示。由于現(xiàn)實(shí)環(huán)境光線的存在入射傾角,標(biāo)記模型在前后視角下呈現(xiàn)明暗程度不同的效果且漂移范圍較小。
圖4 前方和后方視角的漂移測(cè)試圖
上述4 組實(shí)驗(yàn),每組實(shí)驗(yàn)做了20 次,每組實(shí)驗(yàn)結(jié)束后,退出AR程序并關(guān)閉后臺(tái)運(yùn)行程序,等到手機(jī)冷卻下來(lái)再進(jìn)行下次實(shí)驗(yàn)。實(shí)驗(yàn)時(shí)長(zhǎng)越長(zhǎng),X 軸和Y 軸坐標(biāo)產(chǎn)生的漂移越大,10 分鐘內(nèi)產(chǎn)生的漂移值在0.1 m 左右。實(shí)驗(yàn)結(jié)果如表3所示,該偏差主要由VIO算法產(chǎn)生的漂移誤差造成,統(tǒng)計(jì)20次實(shí)驗(yàn)的X 軸和Y 軸位置的偏差范圍是0.01~0.02 m。
表3 標(biāo)記模型15 min內(nèi)的漂移長(zhǎng)度
(2)測(cè)試對(duì)管道模型的跟蹤情況。圖5展示了每天同一時(shí)刻測(cè)試的從左前方、右后方、正視、俯視4個(gè)不同角度觀察的管道模型,管道位置和軸向基本符合實(shí)際情況。手持移動(dòng)設(shè)備可在管網(wǎng)中穿行,能夠清楚知道管道之間的空間關(guān)系。
本設(shè)計(jì)根據(jù)城市地下管網(wǎng)的管理需求設(shè)計(jì)了用戶與管道模型之間的交互方式,用戶通過(guò)移動(dòng)設(shè)備的屏幕可看到虛擬管道疊加在現(xiàn)實(shí)環(huán)境中,用戶需了解附近管道的詳細(xì)信息時(shí),可點(diǎn)擊手機(jī)屏幕中的管道模型,在被點(diǎn)擊的管道旁邊會(huì)出現(xiàn)一個(gè)虛擬的UI 界面,顯示了從服務(wù)器獲取到的管道屬性數(shù)據(jù),通過(guò)添加C#腳本可控制UI 界面始終正對(duì)著用戶屏幕,當(dāng)用戶從不同角度觀察管道模型時(shí),可清楚看到UI 界面的內(nèi)容。可點(diǎn)擊UI界面的其他按鈕來(lái)實(shí)現(xiàn)更多交互,點(diǎn)擊界面的任意位置即可關(guān)閉UI界面。交互測(cè)試結(jié)果如圖6所示。
圖5 管道模型的空間關(guān)系
圖6 交互界面
本設(shè)計(jì)利用AR 技術(shù),提出了新的地下管道可視化管理方式,并且是一種基于智能手機(jī)的實(shí)時(shí)定位系統(tǒng),通過(guò)采用虛實(shí)融合的設(shè)計(jì),極大提高了沉浸感和交互體驗(yàn),且提供了管網(wǎng)管理的空間決策支持能力。通過(guò)ARCore SDK開(kāi)發(fā)管道虛實(shí)融合的功能,提高了管道模型渲染和跟蹤的魯棒性;采用基于BDS 的定位服務(wù)和七參數(shù)坐標(biāo)轉(zhuǎn)換法,實(shí)時(shí)獲取用戶的高精度位置坐標(biāo);采用人機(jī)交互設(shè)計(jì)理念實(shí)現(xiàn)管道模型的交互方式,可靈活觀察管道的空間和屬性信息。本設(shè)計(jì)有效解決了用戶依靠傳統(tǒng)管道圖紙和VGE進(jìn)行城市地下管道設(shè)計(jì)和施工過(guò)程中,決策不靈活、管道數(shù)據(jù)查詢不便捷、管道空間感不強(qiáng)等問(wèn)題,為城市地下管道智慧化管理提供了技術(shù)方案探索,可更好地服務(wù)于智慧城市建設(shè)。