田 靜
(1.正元地理信息有限責(zé)任公司 山東分公司,山東 濟(jì)南 250101)
一種在三維場(chǎng)景中的定位算法
田 靜1
(1.正元地理信息有限責(zé)任公司 山東分公司,山東 濟(jì)南 250101)
針對(duì)三維場(chǎng)景中興趣點(diǎn)定位問(wèn)題,分析三維場(chǎng)景中旋轉(zhuǎn)時(shí)地面興趣點(diǎn)的偏移情況。根據(jù)三角形的相關(guān)定理,計(jì)算出偏移距離,得出一種用于三維場(chǎng)景中興趣點(diǎn)定位的技術(shù)。與二維和2.5維地圖中興趣點(diǎn)定位效果進(jìn)行比較,證明本方法在三維場(chǎng)景中定位準(zhǔn)確。
二維GIS;2.5維;三維GIS;興趣點(diǎn);定位
傳統(tǒng)地圖中的興趣點(diǎn)定位方法主要集中在二維方面,對(duì)平面的顯示、查詢和分析已經(jīng)較為成熟,但在空間信息的顯示和利用方面難以滿足需求[1]。雖然二維GIS、科學(xué)計(jì)算可視化、數(shù)據(jù)庫(kù)系統(tǒng)技術(shù)和影像處理技術(shù)已有較成熟的理論和較豐富的實(shí)踐,能為三維GIS的研究和開(kāi)發(fā)提供許多理論和實(shí)踐方面的借鑒,但作為三維GIS系統(tǒng)本身,還存在很多沒(méi)有解決或解決不好的問(wèn)題[2]。在三維地圖的查詢定位展示方面也只是在2.5維中展示,2.5維地圖彌補(bǔ)了二維GIS圖形表現(xiàn)的局限性,雖然直觀上是三維產(chǎn)品,但不具備三維產(chǎn)品的一些特定屬性[3]。
隨著數(shù)字城市建設(shè)的推進(jìn)、開(kāi)放式城市空間信息共享平臺(tái)的建設(shè),三維GIS憑借其立體、直觀、逼真的視覺(jué)效果,越來(lái)越受到關(guān)注[4]。在三維場(chǎng)景中處理興趣點(diǎn)數(shù)據(jù),不僅可以為用戶提供豐富的信息資源,而且增強(qiáng)了三維場(chǎng)景的真實(shí)感和表達(dá)力[5-6]。
本文在某市三維地圖中,研究了興趣點(diǎn)的定位問(wèn)題,尤其對(duì)于三維場(chǎng)景中的定位效果進(jìn)行了深入探討,設(shè)計(jì)了一種在三維場(chǎng)景中準(zhǔn)確定位的算法。
本系統(tǒng)采用Skyline6.1為三維GIS平臺(tái),Skyline系列軟件是基于GIS、RS、GPS和虛擬現(xiàn)實(shí)技術(shù)的三維可視化地理信息系統(tǒng)[7-8]。其軟件模塊包括3部分:Terra Builder、Terra Explorer和 Terra Gate。TerraBuilder將海量的遙感航測(cè)影像數(shù)據(jù)、高程和矢量數(shù)據(jù)融合成一個(gè)三維地理信息數(shù)據(jù)庫(kù);Terra Explorer為開(kāi)發(fā)人員提供二次開(kāi)發(fā)包;TerraGate發(fā)布地形數(shù)據(jù)庫(kù)的服務(wù)器,用戶可以通過(guò)網(wǎng)絡(luò)訪問(wèn)地形數(shù)據(jù)庫(kù)。
興趣點(diǎn)是地圖查詢中常用的搜索定位數(shù)據(jù),本文興趣點(diǎn)數(shù)據(jù)結(jié)構(gòu)詳見(jiàn)表1。合理有效地組織管理這些數(shù)據(jù),不僅對(duì)地圖查詢、定位及可視化效果有很大的幫助,而且可以提高系統(tǒng)的效率。目前應(yīng)用最廣泛的地圖查詢?nèi)匀皇窃诙S地圖上進(jìn)行查詢,隨著“數(shù)字城市”的建設(shè),三維地圖逐漸進(jìn)入人們的生活,并因?yàn)槠渲庇^、逼真的可視化效果越來(lái)越受重視。
對(duì)于三維場(chǎng)景中的數(shù)據(jù)查詢采用類(lèi)似二維的查詢方法,通過(guò)連接oracle數(shù)據(jù)庫(kù),構(gòu)造查詢語(yǔ)句,返回滿足查詢條件的結(jié)果。對(duì)每個(gè)查詢結(jié)果,通過(guò)唯一標(biāo)識(shí)碼關(guān)聯(lián)其位置坐標(biāo),從而在三維場(chǎng)景中進(jìn)行定位。
3.1 興趣點(diǎn)數(shù)據(jù)庫(kù)的組織
表1 興趣點(diǎn)數(shù)據(jù)表結(jié)構(gòu)
其中ID是唯一標(biāo)識(shí)字段;名稱是興趣點(diǎn)的具體名稱,它是查詢時(shí)需要進(jìn)行匹配查詢的字段;地址名稱是該興趣點(diǎn)的詳細(xì)地址。一級(jí)分類(lèi)是地理信息公共服務(wù)平臺(tái)中興趣點(diǎn)的一級(jí)分類(lèi),包括15大類(lèi);二級(jí)分類(lèi)是在一級(jí)分類(lèi)基礎(chǔ)上的細(xì)化;經(jīng)度和緯度字段確定地名中心點(diǎn)的位置;描述信息是該興趣點(diǎn)的文字描述信息。
3.2 傳統(tǒng)視角定位方法
傳統(tǒng)的興趣點(diǎn)定位方法是針對(duì)平面地圖,僅通過(guò)經(jīng)緯度坐標(biāo)和視角高度即可定位,視角與興趣點(diǎn)垂直成90°,且興趣點(diǎn)在屏幕的中心位置。此種方法在二維地圖和2.5維地圖中取得了很好的效果。
1)傳統(tǒng)視角定位方法在二維地圖中的定位效果。二維地圖是根據(jù)地圖投影、地理坐標(biāo)和比例尺,用各種點(diǎn)狀、線狀、面狀符號(hào)及文字注記和色彩等表示地形、地貌、地物地理現(xiàn)象及社會(huì)經(jīng)濟(jì)現(xiàn)象,至今仍是人們認(rèn)識(shí)空間信息的重要工具。但二維地圖只對(duì)處于三維空間中的各種地理對(duì)象進(jìn)行向二維平面投影的簡(jiǎn)單處理,導(dǎo)致第三維方向(垂直方向)上的幾何位置、空間拓?fù)湫畔⒑筒糠终Z(yǔ)義信息受損失,不能完整地反映客觀世界[9],如圖1a所示。
2)傳統(tǒng)視角定位方法在2.5維地圖中定位效果。2.5維地圖是以三維電子地圖數(shù)據(jù)庫(kù)為基礎(chǔ),按照一定的比例對(duì)現(xiàn)實(shí)世界或其中一部分的一個(gè)或多個(gè)方面的三維、抽象描述。它比二維地圖更美觀、形象,但是只能從某個(gè)視角查看地圖,無(wú)法360°旋轉(zhuǎn)觀察,如圖1b所示。
圖1 傳統(tǒng)視角在二維和2.5維地圖中的效果
3)傳統(tǒng)視角定位方法在三維地圖中的定位效果。在三維地圖中,如果按照此方法定位則無(wú)法突顯三維顯示的優(yōu)點(diǎn),如圖2a所示。垂直俯視效果,只能確定其位置,無(wú)法看清興趣點(diǎn)。三維地圖中當(dāng)視角和興趣點(diǎn)的角度介于0~90°之間時(shí),可以看到地圖的三維立體效果,但是此時(shí)如果按照興趣點(diǎn)的經(jīng)緯度坐標(biāo)直接定位,則興趣點(diǎn)無(wú)法位于屏幕顯示區(qū)的中心位置,如圖2b所示,甚至興趣點(diǎn)無(wú)法顯示在屏幕顯示區(qū)。
圖2 未改進(jìn)的三維地圖定位效果
3.3 改進(jìn)后的定位方法
通過(guò)查詢到的興趣點(diǎn)信息,按照興趣點(diǎn)的唯一標(biāo)識(shí)碼搜索到該部件的經(jīng)緯度坐標(biāo),同時(shí)由于在三維地圖中可以360°旋轉(zhuǎn)地圖,因此在定位時(shí)需要考慮視角與興趣點(diǎn)的角度。
如圖3所示,假設(shè)A點(diǎn)為觀察點(diǎn),線段BC為從A點(diǎn)垂直俯視地圖時(shí)所能觀察到的地面(正好鋪滿顯示屏),興趣點(diǎn)D位于視野范圍的中心位置(即顯示屏的中心)。
將三維地圖旋轉(zhuǎn)一個(gè)角度∠BCE,在觀察點(diǎn)A處所能觀察到的地面變?yōu)镋C段(興趣點(diǎn)D移至F處),可見(jiàn)旋轉(zhuǎn)后視野范圍擴(kuò)大了,但顯示屏大小不變,因此EC段地面是按比例壓縮至BC段顯示的,從而導(dǎo)致興趣點(diǎn)F的位置相應(yīng)地偏移至D'處。此時(shí)興趣點(diǎn)不在屏幕的中心,如果旋轉(zhuǎn)角度更大,興趣點(diǎn)甚至無(wú)法顯示在屏幕中,因此需將地面平移DD'的距離使興趣點(diǎn)居中。
圖3 計(jì)算視角示意圖
已知觀察點(diǎn)A距地面高度AD,鋪滿顯示屏的地面BC,D為BC的中點(diǎn),地面旋轉(zhuǎn)角度∠BCE,CF長(zhǎng)度與CD長(zhǎng)度相等。根據(jù)三角形的正切定理:
根據(jù)三角形角的外角等于不相鄰的2個(gè)內(nèi)角和:
因?yàn)镈'E平行于AC,有:
三角形正弦定理為:
根據(jù)已知條件和式(1)~(4),可以得出:
當(dāng)在三維地圖中進(jìn)行定位時(shí),需將觀察點(diǎn)的維度坐標(biāo)平移DD'的距離。按此方法的定位效果如圖4a所示,可以放大、旋轉(zhuǎn)查看該興趣點(diǎn),如圖4b所示。
P208
B
1672-4623(2016)08-0067-02
10.3969/j.issn.1672-4623.2016.08.022
2014-09-22。