, ,,, ,
(1. 中國海洋大學信息科學與工程學院,山東 青島 266000; 2. 青島海洋科學與技術國家實驗室區域海洋與數值模擬實驗室,山東 青島 266000; 3. 聯想(北京)有限公司,北京 100089; 4. 中車青島四方機車車輛股份有限公司,山東 青島 266000)
當今世界信息技術發展迅猛,綜合利用地理信息系統(GIS)、大數據、云計算等先進技術,研發智能化、多維度、全方位的旅游管理信息系統,已成為旅游信息化的發展趨勢[1-3]。移動互聯網的發展大大提升了智能設備的便攜性和高速網絡的普及性,智能手機與信息搜索、通信、娛樂、社交等功能的整合,可以為用戶提供動態信息服務和個性化推薦服務[4-6]。然而,傳統基于GIS的旅游信息管理系統受限于數據組織方式和承載平臺,存在使用靈活性差、信息展示維度單一、用戶體驗性差等問題,已無法滿足用戶的多元化需求,制約了旅游信息化服務水平的進一步提升。近年來虛擬現實(virtual reality,VR)和增強現實(augmented reality,AR)技術的迅速發展,不僅為用戶提供高沉浸感的交互操作,還在多時空維度上展現用戶所需信息,為旅游業的進一步發展提供了新的思路[7]。虛擬現實以其身臨其境的視覺感,為用戶提供逼真的場景展示;增強現實在虛擬現實的基礎上融入真實的場景或要素,將虛擬事物與真實場景相融合,借助文字、圖形、語音等信息,強化用戶對現實環境的感知與認識,實現對現實的擴張和補充[8]。另外,隨著智能設備性能的提升,基于移動平臺的AR+VR技術開始興起。移動AR+VR不僅滿足傳統AR+VR虛實融合和實時交互的需求,更具有較強的靈活性和便攜性,受空間環境的約束較小。現階段基于移動平臺的AR+VR技術已在安全、教育、城市管理等多個領域成功應用,并取得了較好的應用效果,為解決目前旅游信息服務中存在的問題提供了重要借鑒。綜上所述,將AR+VR技術和移動智能終端有機整合,研發基于移動AR+VR的旅游GIS系統具有重要意義。
對于傳統的旅游GIS系統,目前國內相對成熟的旅游應用包括“愛旅游(iTravels)”“杭州智慧旅游”和“武漢智慧旅游”軟件。這幾款軟件均以二維地圖為背景實現基本導覽功能,但體驗性和交互性較差,信息獲取及空間分析功能需進一步完善。“VR+旅游”改變了傳統以照片文字獲取景點信息的方式,使用戶以最直觀清晰的三維視角對旅游景區有初步了解,同時還為游客提供更多的景區體驗。如首都博物館推出VR觀展模式,游客通過VR頭盔近距離走進商代婦好墓,切身感受考古、挖掘、整理的全過程;暴風平臺上線全景的澳旅風光VR視頻,用戶可以身臨其境體驗澳旅人文風情及旅游美景。“AR+旅游”則能把旅游目標物的歷史、故事、文化等虛擬出來,疊加在現實場景中,用戶能夠與實時空間中的虛擬信息進行交互,為游客提供與環境相關的多媒體旅游服務[9]。如倫敦的Street Museum軟件,利用增強現實技術使游客通過手機攝像機獲取景點的相關信息,獲得與現代倫敦景點相匹配的歷史圖像[10];希臘研究人員開發的基于AR的雅典古神廟的漫游導覽[11]系統Archeoguide,極大提高了用戶的旅游體驗性;搭載在諾基亞Lumia 920機型下的“城市萬花筒”應用,利用AR以全新的方式感受周圍事物與信息。
綜上所述,目前的旅游信息服務主要存在以下幾方面問題:①部分旅游服務仍以網頁形式停留在電腦端,靈活性差,無法實現實時旅游服務;②現有移動端旅游服務系統大多只能滿足單一的導航功能或單一的場景重現功能,其直觀性、全面性和交互性較差。因此,本文在移動平臺上將AR和VR進行整合,研發基于移動AR+VR的旅游GIS系統,極大地提高系統的直觀性和交互性。主要從以下3個方面進行突破:①提供基于三維景觀地圖的線路規劃、路徑導航;②利用VR技術進行旅游景區的虛擬漫游,實現“身臨其境”的真實感;③利用AR環境識別技術,將虛擬的物體、場景或信息疊加到真實場景,為游客提供大量的相關信息,實現對現實的增強,增加用戶對真實世界的感知。
系統采用網絡GIS架構,以旅游景區地理空間數據和三維景觀地圖為基礎,實現線路規劃并進行虛擬漫游,讓用戶身臨其境,提前了解路線及景點信息。利用基于位置的服務技術、增強現實技術將虛擬的環境、圖形和文字標簽深度融合到游客所看到的現實環境中,為游客提供認知的全新視角,帶來傳統軟件不能提供的互動應用體驗。系統架構如圖1所示。
(1) 用戶層。系統功能主要分為3部分:導航模塊,以三維景觀地圖為地圖底圖,實現虛擬漫游、路徑導航、路徑規劃等功能。智能服務模塊,以AR技術為支撐,實現周邊環境識別、物體三維模型查看;同時利用GPS定位和數據挖掘分析,對景區人流量以熱力圖形式展示。社交模塊則主要為用戶提供社交分享功能,包括好友足跡、個人足跡查看及微信分享等。
(2) 技術層。系統主要技術包括4部分:基于位置與多傳感器的跟蹤注冊技術為空間數據獲取提供服務,實現空間分析及時空數據挖掘;瓦片地圖技術為三維景觀地圖呈現提供技術支撐,有效提高地圖加載速度[12];基于三維景觀地圖的三維虛擬導航,利用GIS空間分析和數據調度,實現三維地圖上的虛擬導航和線路規劃;移動增強現實虛實疊加技術則在多傳感器融合的基礎上,通過環境識別、三維注冊、虛實疊加和圖形渲染等手段實現了虛擬物體和現實世界的疊加。
(3) 數據層。系統數據中心包括2部分:GIS空間數據庫,主要為針對景區搭建的空間環境數據中心,包括軌跡數據、路網數據、景點位置等;屬性數據包括文字、圖片、視頻等形式的景點信息、建筑信息、三維模型等。移動端數據存儲采用Android系統的SharedPreferences、文件存儲、SQLite數據庫存儲3種方式。
系統的環境識別功能模塊采用基于位置與多傳感器的跟蹤注冊技術[13-14]實現。由GPS確定用戶位置與周圍環境,通過移動終端相機等傳感器數據融合實現對終端姿態的監聽,最后對兩種數據進行計算處理,得出與真實環境相匹配的虛擬數據,進而實現虛實場景的結合。
獲取定位功能首先要在系統的配置文件中聲明權限,必要的屬性聲明包括:ACCESS_FINE_LOCATION、ACCESS_COARSE_LOCATION。定義LocationManager對象,通過設定LocationProvider選擇GPS定位方式。通過調用onLocationChanged()方法的location.getLongitude()與location.getLatitude()方法獲取用戶經緯度。
通過注冊和監聽加速度傳感器與磁場傳感器,可以獲取傳感器數據,當手機姿態發生變化時獲取傳感器旋轉矩陣M。
當M為3×3時,矩陣原型為
(1)
當M為4×4時,矩陣原型為
(2)
最終通過矩陣的值獲取移動設備的方位參數信息(value[0],value[1],value[2])。
當M為3×3時
value[0]=(float)Math.atan2(M[1],M[4])
(3)
value[1]=(float)Math.asin(-M[7])
(4)
value[2]=(float)Math.atan2(-M[6],M[8])
(5)
當M為4×4時
value[0]=(float)Math.atan2(M[1],M[5])
(6)
value[1]=(float)Math.asin(-M[9])
(7)
value[2]=(float)Math.atan2(-M[8],M[10])
(8)
將value數組的值轉換為角度,可得到移動設備正確的姿態信息。
系統采用瓦片地圖技術實現三維景觀地圖的呈現,地圖投影方式為墨卡托投影[15-16]。
(1) 瓦片切割。采用虛擬現實技術對八大關景區進行建模,以獲得完整景觀地圖。對景觀地圖與下載的谷歌整體地圖進行比對矯正,并切割為邊長為2n×256像素的正方形圖片,進而對圖片進行瓦片切割。
(2) 數據調度。將切割完成的地圖瓦片按層級建立索引,并按照網絡地圖服務(web map service,WMS)接口標準發布,服務器端通過解析移動終端發送的數據,返回與接收到的數據范圍相匹配的瓦片數據。移動端通過瓦片信息緩存,進行實時拼接渲染顯示,實現地圖的完整調度。
(3) 坐標變換。由于三維景觀地圖渲染后為固定側視圖視角,為實現正確的導航功能,需將真實的經緯度進行公式變換后投影到景觀地圖上。
在圖2中,正方形A0B0C0D0表示瓦片原型,正方形A1B1C1D1表示過度圖形,正方形A2B2C2D2表示最終變換結果。橫軸X代表經度,縱軸Y代表緯度。可得經緯度變換公式為
(9)
通過上述經緯度轉換公式可得到實際經緯度坐標,將其進行差值計算后根據墨卡托投影方式進行坐標轉換即可得到真實的對應坐標,如圖3所示。
本系統將傳統的二維矢量地圖導航應用到三維景觀地圖中,采用GIS空間分析及弗洛伊德最短路徑算法[17]實現導航功能,并為用戶提供虛擬漫游模式。同時在三維景觀地圖的俯視圖下,系統通過移動傳感器實時監聽移動設備的方向傳感器數據,確定移動設備的朝向,以此動態調整地圖的旋轉視角,使移動終端屏幕內的地圖方向和范圍與用戶當前視角范圍一致,如圖4所示。
為實現移動增強現實系統的真實性和實時性,本系統在移動增強現實模塊采用了基于定位識別的移動終端戶外三維注冊技術[18]。該技術提升了三維環境注冊技術的實時性、穩定性和穩健性,增強了虛實結合場景的真實性、融合性,讓用戶具有更真實的視覺體驗[19]。主要包括攝像機的空間定位和虛擬物體在真實空間定位兩方面內容[20],在此基礎上實現對虛擬物體的渲染繪制,如圖5所示。
(1) 用戶空間定位。通過GPS實現用戶實時定位,同時利用多傳感器融合,實時跟蹤用戶在真實場景中的位置及視線方向,獲取用戶所在位置的周邊信息,實現對終端姿態的監聽。
(2) 虛擬物體空間定位。根據獲取的位置信息,通過GIS空間分析方法從空間數據庫和屬性數據庫中讀取對應位置的空間和屬性信息,計算周圍景點的虛擬標簽在用戶觀察坐標系中的坐標,實現景點虛擬標簽與真實場景的精準匹配。
(3) 虛實融合。在移動終端使用OpenGL ES對虛擬物體進行繪制渲染。通過監聽方向傳感器的數據變化來獲取手機實時方位信息,將方位數據實時映射到OpenGL ES的三維坐標系中,使信息標識根據手機姿態的變化而變化,實現虛擬物體與真實場景更逼真地無縫融合[21]。
(1) 三維景觀地圖。在景觀地圖模式下,八大關景區全貌以三維景觀地圖的方式呈現,同時配有地圖縮放、移動、信息查看等功能。
在漫游模式下,實現景觀地圖的旋轉與漫游角度的調節,景點標簽隨旋轉角度旋轉,用戶視角始終為正面視角。
(2) 路線導航。通過景點標簽確定起始點進行路線規劃,也可以實現多景點路線規劃,在漫游模式下提前對游覽路線進行漫游操作,如圖6所示。
(1) 環境識別。利用手機相機對周圍環境進行拍攝,景點信息以三維標簽的形式顯示在屏幕上。點擊景點標簽,可查看景點信息詳情,如圖7所示。
(2) 熱力圖顯示。選擇熱力圖可查看實時人流熱力圖,為游客避開擁擠景點和管理部門調流提供決策依據,如圖8所示。
(3) 三維建筑查看。通過環境識別功能獲取景點三維建筑模型,可對模型進行旋轉、漫游等操作,如圖9所示。
社交模塊為游客提供旅游數據共享服務。
(1) 好友足跡:獲取用戶的好友信息,并可顯示好友的軌跡及照片信息。
(2) 個人軌跡:系統記錄用戶的軌跡信息,并實現軌跡重現,如圖10所示。
(3) 微信分享:將個人旅游游記或景點照片等信息通過微信分享,如圖11所示。
本文設計和實現了基于移動AR+VR的旅游GIS系統,重點突破了基于位置與多傳感器的跟蹤注冊技術、瓦片地圖技術、三維景觀地圖技術和移動增強現實系統虛實疊加技術,實現了一個多維度、全方位的智能化移動旅游信息服務系統。該系統在傳統旅游GIS系統的基礎上,融入了AR+VR技術,以三維形式極大地提高了系統的直觀性和用戶的交互式體驗;同時系統加入了數據共享機制,滿足了新技術條件下數據交流共享的要求,提高了用戶使用群體間的溝通交流和共享。系統的主要創新之處在于:實現了移動端的虛擬三維景區導航服務和虛實結合的景區信息服務。
雖然本系統基本實現所需功能,并且能較好地提高用戶的交互體驗,但仍然存在一些問題需要進一步完善:
(1) 本系統中基于位置的服務主要依靠GPS系統,其定位精度不高。在下一步的工作中考慮選用輔助定位或差分GPS等方式提高系統的定位精度,使軌跡數據更加準確。
(2) 地圖瓦片數據是指定視角的景觀地圖,具有一定的視角局限性,在下一步的開發中可選擇多個視角,使地圖具有動態效果。