摘 要: LBS的手機增強現(xiàn)實系統(tǒng)由于受到手機AGPS精度的限制,其定位存在著較大的誤差。針對手機LBS增強現(xiàn)實系統(tǒng)存在的定位問題,提出了一種提高其定位精度的新方法。在已有的系統(tǒng)中引入GEOSpots,然后在GEOSpots處提供相對應的全景圖背景,并通過匹配同一位置的手機攝像頭實時畫面與全景圖來校準系統(tǒng)定位。實驗結(jié)果表明,該方法不但有效地減少了LBS手機增強現(xiàn)實系統(tǒng)定位錯誤的發(fā)生,同時使得虛擬內(nèi)容與現(xiàn)實實景更加緊密地結(jié)合在一起。
關(guān)鍵詞: 智能手機; 增強現(xiàn)實; LBS;定位精度
在增強現(xiàn)實AR(Augmented Reality)與基于位置服務LBS(Location Based Service)發(fā)展的背景下,移動3G網(wǎng)絡(luò)的發(fā)展使得AR技術(shù)和LBS技術(shù)結(jié)合在了一起,帶來了增強現(xiàn)實系統(tǒng)的新浪潮。對于手機AR系統(tǒng)來說,早期HENRYSSON A[1]等開發(fā)了人機互動的雙人合作AR應用系統(tǒng),該系統(tǒng)采用基于圖像識別的三維注冊技術(shù),用戶通過手機控制疊加在真實圖像畫面上的虛擬的乒乓球進行三維互動。TAKACS G等[2]則進行了基于圖像匹配的手機AR三維注冊算法研究。
芬蘭的NetExpolorateur公司開發(fā)出了世界上第一款手機AR瀏覽器Layar[3],首次成功地將AR技術(shù)與LBS結(jié)合在一起。Wikitude GmbH公司開發(fā)出了基于LBS的AR應用Wikitude World Browser[4], Daniele等人發(fā)布了開源的LBS手機AR引擎mixare,為研究LBS手機AR系統(tǒng)提供了技術(shù)支持與指導。然而,這些LBS手機AR系統(tǒng)都受到手機設(shè)備AGPS定位精度較大的限制。
本文提出一種新的方法來提高LBS手機AR系統(tǒng)定位精度。它不但使得LBS手機AR系統(tǒng)定位的準確性大大提高,還為LBS手機AR系統(tǒng)的普及提供了便利。
1 LBS手機AR系統(tǒng)定位限制因素
目前LBS手機AR系統(tǒng)主要受到GPS和3G網(wǎng)絡(luò)定位精度的限制。智能手機LBS服務大多采用AGPS系統(tǒng),其精度在正常的工作環(huán)境下可達10 m左右。目前,LBS手機AR系統(tǒng)中都是利用手機GPS或3G網(wǎng)絡(luò)獲取用戶位置,指南針與傳感器獲取設(shè)備方向,得到終端設(shè)備當前的空間狀態(tài)。依靠設(shè)備空間狀態(tài)再通過AR技術(shù)在合適的位置疊加相應的虛擬畫面,因此其AR內(nèi)容的疊加會受到設(shè)備定位精度的影響。
對于當前手機設(shè)備的定位精度而言,在較好的情況下,放置在建筑物旁邊或疊加在地面上的AR內(nèi)容在屏幕上顯示的位置與理想位置有一定偏移。最壞的情況下,原先本應該在用戶背后的AR內(nèi)容可能會出現(xiàn)在用戶前方,因為手機設(shè)備上GPS顯示的位置可能會與實際位置偏移幾米甚至幾十米。
2 提高LBS手機AR系統(tǒng)定位精度
2.1 在系統(tǒng)中引入GEOSpot
GEOSpot服務器是一個旨在為AR瀏覽器通道服務器服務的地理數(shù)據(jù)提供者,GEOSpot服務體系結(jié)構(gòu)在特定的地理空間數(shù)據(jù)庫包或服務上提供了一個抽象層。首先讓用戶查看地圖附近那些已知的精確地理位置(GEOSpot),這些GEOSpot由定位人員通過專業(yè)的GPS精確設(shè)備多次測量,具有比較精確的GPS坐標。在屏幕上疊加提示信息框來指示用戶如何到達附近的GEOSpot。這大大提高了用戶在GEOSpot處的定位的精度,并且此精度可以被AR內(nèi)容定制者在系統(tǒng)運行時通過公共的API訪問到。當用戶由GEOSpot處移動到另外一個位置時,手機傳感器可以獲取用戶移動的距離。根據(jù)GEOSpot處的精確坐標與手機移動的距離可以計算出此位置空間坐標值,同時可以由手機GPS得到當前位置GPS坐標,然后使用合適的權(quán)值將它們加權(quán)平均。這樣由手機運動傳感器輔助AGPS來定位,不斷校準手機GPS坐標。
在目前的LBS手機AR系統(tǒng)框架中,一般是定位作者通過查詢追蹤定位服務器和當前設(shè)備的空間位置、方向來確定如何顯示AR內(nèi)容,AR作者通過AR通道設(shè)置需要在場景疊加AR內(nèi)容的位置。引入GEOSpot后,GEOSpot服務器存放由每個GEOSpot處計算得出的三維空間坐標,追蹤服務器存放由手機GPS定位顯示的GPS坐標。追蹤服務器通過GEOSpot服務器中的三維空間坐標來校準手機顯示的GPS坐標,如圖1所示。
2.2 在GEOSpot處提供全景圖背景
在每個GEOSpot處提供一幅合成的全景圖背景,這些全景圖背景是由在每個GEOSpot處拍攝的圖片合成的。當用戶站在GEOSpot處時,他們可以開啟全景圖模式,此時手機屏幕上顯示的是該GEOSpot處的全景圖而不是手機攝像頭拍攝到的實時畫面。當用戶改變手機的方向時,系統(tǒng)根據(jù)手機的指南針獲取手機的方向,并根據(jù)加速度傳感器獲取手機與地面的傾斜角度,讓屏幕上只顯示手機在該空間位置時能夠看到的那部分全景圖,它會隨著手機方向的改變而改變。此時屏幕上顯示的畫面類似于手機攝像頭的實時畫面,只是畫面是靜態(tài)的。
由于全景圖背景與手機攝像頭的實時畫面只是在同一地點的不同時間拍攝得到的,因此全景圖上顯示的畫面與手機攝像頭顯示的實時畫面應該是對應的。
手機在GEOSpot處某一空間位置時有相對應的全景圖與攝像頭畫面,通過圖像處理的方法分別提取兩者畫面中建筑物的輪廓,如圖2所示。攝像頭拍攝的實時畫面是準確的,而疊加的AR內(nèi)容是根據(jù)當前設(shè)備的GPS定位與傳感器確定的手機空間位置來決定的,它受到手機定位精度影響。但全景圖背景的顯示與疊加的AR內(nèi)容的位置都是依據(jù)手機GPS定位信息而決定的,因此即使GPS有較大的誤差,AR內(nèi)容總能精確地疊加在全景圖上??梢砸匀皥D作為標準,通過匹配提取的攝像頭畫面與全景圖的輪廓來進一步減小手機的定位誤差。先將全景圖縮放至與攝像頭畫面比例一致,然后將全景圖與攝像頭畫面輪廓重合,那么原本依靠GPS與傳感器定位的全景圖上的AR內(nèi)容就會產(chǎn)生相對位移。以全景圖上疊加的AR內(nèi)容的位置作為攝像頭畫面AR內(nèi)容的位置,此時AR內(nèi)容就準確地疊加在攝像頭畫面上了。
3 實驗結(jié)果
mixare是一個LBS手機AR開源框架,它通過手機GPS與傳感器獲取設(shè)備空間信息在屏幕的合適位置疊加AR內(nèi)容,它同樣受到手機GPS定位精度限制。以iPhone為平臺,以mixare框架為基礎(chǔ),引入了兩個GEOSpot點,并提供兩張全景圖,分別驗證AR內(nèi)容疊加在建筑物上與疊加在地面上的情況。
圖2(a)在mixar平臺上使用傳統(tǒng)GPS定位方法將AR內(nèi)容疊加在建筑物旁。圖2(b)是在GEOSpot處根據(jù)手機當前的空間位置自動從服務器上下載的全景圖畫面,因此就算GPS有一定誤差,其AR內(nèi)容總是可以正確疊加在全景圖上。通過匹配同一位置處全景圖畫面與攝像頭實時畫面,將全景圖畫面中的建筑與攝像頭畫面中的建筑物重疊,那么全景圖中的AR內(nèi)容就會準確地疊加到攝像頭實時畫面上,如圖2(c)所示。
同一GEOspot處疊加在地面上的AR內(nèi)容如圖3所示。從圖3可以發(fā)現(xiàn),傳統(tǒng)的GPS定位中AR內(nèi)容出現(xiàn)了定位錯誤,而全景圖畫面中AR內(nèi)容正確地顯示在了畫面中,校準后AR內(nèi)容也能大致疊加在相應位置。
本文進行了LBS手機AR系統(tǒng)定位精度的研究,提出了提高定位精度的新方法。引入GEOSpot,并在GEOSpot處提供全景圖背景來匹配校準AR內(nèi)容的顯示,最后以mixare開源框架為基礎(chǔ)進行實例驗證。
雖然目前LBS手機AR系統(tǒng)受到精度方面的影響,但是隨著未來GPS定位精度的提高與新的定位方法的出現(xiàn),實現(xiàn)LBS手機AR系統(tǒng)的精確定位是很有可能的,相信到時候LBS手機AR應用領(lǐng)域?qū)蟠笸卣埂?br />
參考文獻
[1] HAKKARAINEN M,WOODWARD C, BILLINGHURST M. Augmented assembly using a mobile phone[C].IEEE International Symposium on Mixed and Augmented Reality,2008.
[2] TAKACS G. Outdoors augmented reality on mobile phone using lox-el-based visual feature organization[R]. MIR, 2008.
[3] NetExpolorateur.What is Layar[EB/OL].[2012-08-01].http://www.layar.com/what-is-layar.
[4] Wikitude.The World’s leading Augmented Reality SDK[EB/OL].[2012-11-20].http://www. wikitude.org.