張加丁,陳崇成,葉曉燕,方 薈,
一種智能手機室內位置共享的方法
張加丁1,陳崇成1,葉曉燕1,方 薈1,2
(1. 福州大學 空間數據挖掘與信息共享教育部重點實驗室/地理空間信息技術國家地方聯合工程研究中心,福州 350116; 2. 閩江學院 數字福建智能化生產物聯網實驗室,福州 350108)
針對GPS室內定位精度較低,難以實現準確的室內位置共享的問題,提出一種智能手機室內位置共享的方法,主要包括室內定位和路徑規劃2個部分:室內定位方法采用行走采集的方式快速構建WiFi指紋數據庫,分析3種智能手機獲取航向的方法,并采用球面線性插值算法來融合陀螺儀和旋轉矢量傳感器以獲得更為穩定的航向,再將WiFi定位與航跡推算結果進行粒子濾波融合;路徑規劃方法利用環信即時通訊云作為通訊服務器實現位置共享,并采用Dijkstra算法計算最短路徑,為用戶提供地圖導航。實驗結果表明,該方法能夠在有效提高室內定位精度的同時,結合室內位置共享和路徑規劃實現快速準確的室內尋人尋址。
位置共享;室內定位;粒子濾波;無線保真(WiFi)指紋數據庫;行人航跡推算 (PDR);路徑規劃
近年來,由于無線局域網和智能移動設備的普及滲透,基于位置的服務(location based services, LBS)越來越成為日常生活、公共安全、商業服務等不可或缺的一部分。位置共享是LBS的一種基本功能,其目的是將用戶當前的位置信息提供給指定的用戶,是移動在線社交網絡提供的最流行的服務之一[1]。全球定位系統(global positioning system, GPS)定位技術低成本、高精度,是移動設備位置信息的主要來源[2]。用戶借助地圖應用服務商,如百度地圖等,將位置發送給請求位置共享的用戶或群組,便可實現用戶之間的位置共享[3]。人們大部分時間在室內度過,然而GPS信號受到鋼筋混凝土等障礙物的遮擋,無法獲取人在建筑物內的準確位置。當人們位于建筑物內時,定位誤差較大,因而無法實現準確的位置共享。實現高精度的室內位置共享在緊急救援、室內尋人尋址等方面有著重要的意義。
基于智能手機的室內定位通常利用無線保真(wireless fidelity, WiFi)和傳感器來實現。WiFi定位系統的部署因不需要額外的基礎設施投資而具有較高的成本效益[4]。WiFi定位通常采用指紋定位算法,定位方法簡單,但需要耗費大量的時間和人力成本建立WiFi指紋數據庫。智能手機中內置了許多傳感器,在運動過程中可解算出設備的速度、姿態等信息,結合行人航跡推算(pedestrian dead reckoning, PDR)算法可實現行人的導航定位。由于制造工藝的限制,智能手機中的傳感器精度不高,且室內環境對傳感器有干擾作用,使得測量得到的傳感器數值存在噪聲,給PDR定位帶來誤差,且誤差隨著時間不斷增大[5]。
單一的定位技術往往無法滿足定位穩定性和精度的要求,結合WiFi絕對定位和PDR短時間內精度較高的優點,通過多傳感器信息融合方法可以實現傳感器間的優勢互補,提高定位精度。文獻[6]利用WiFi指紋修正人的步長來輔助傳感器定位,在WiFi指紋稀疏的區域存在較大偏差。文獻[7]采用最小二乘估計剔除較大誤差的WiFi指紋,并利用卡爾曼濾波來融合2種定位方法。文獻[8]采用1種自適應加權擴展卡爾曼濾波來對WiFi定位和PDR進行松耦合,提高了定位的準確性。但以上方法依然需要花費大量的時間建立WiFi指紋數據庫。文獻[9]在特定區域采集WiFi信號,通過粒子濾波融合PDR、WiFi定位結果和墻壁信息,減少了WiFi指紋數據庫的建庫成本;但當初始定位點離特定區域較遠時,定位誤差較大,給后續定位帶來影響。
針對以上問題,本文利用行走采集的方法來快速建立WiFi指紋數據庫,改進智能手機傳感器融合方法來獲得更為穩定的航向。接著通過粒子濾波算法來融合WiFi定位與PDR,提高室內定位的精度。最后利用環信即時通訊云作為通信服務器實現信任用戶之間的室內位置共享,并設計和實現路徑規劃算法,方便用戶進行室內尋人尋址。
WiFi指紋定位分為2個階段:①離線訓練階段,在室內環境中確定若干參考點,記錄所有參考點的位置及接收到的各個無線接入點(access point, AP)的信號強度序列(received signal strength indication, RSSI)形成指紋數據庫;②在線定位階段,將待定位點上實時測量的RSSI與指紋庫進行相似度匹配,將相似度最高的參考位置作為估計位置[10]。
1.1.1 WiFi指紋匹配算法

1.1.2 WiFi指紋庫構建
傳統的指紋采集工作首先在室內環境中劃分格網,每個格網確定1個參考點。接著測繪人員在各個參考點上采集信號強度,空間越大,參考點越密集,需要花費的時間就越多。所以,WiFi指紋數據庫的構建是個非常耗時的過程[11]。本文依據PDR算法,采用行走采集的方式來快速構建指紋庫,即測繪人員手持智能手機沿預定路線在室內環境中行走,在記錄軌跡坐標的同時采集RSSI,從而建立試驗區指紋庫。
行人航位推算是根據行人的運動傳感信息對步態進行檢測和劃分,并對行進距離和方向進行計算來完成自主導航定位。本文利用智能手機中的傳感器作為慣性測量單元來確定行人的位置為

1.2.1 步態檢測
人的行走是1個連續的周期性過程,隨身攜帶的智能手機中的加速度計數據也呈現周期性變化,因此對加速度曲線周期的識別即是對于人步態的識別[12]。人的行走會導致加速度曲線周期性地呈現波峰波谷狀態,傳統基于加速度閾值的峰值檢測法[13]精度不夠高,本文首先設定加速度閾值來剔除抖動、傳感器誤差,再設定時間閾值來排除轉身、起坐等造成的偽波峰。符合以上條件的波峰波谷納入動態閾值計算,再記錄最新幾個波峰波谷的差值作為動態閾值并梯度化,若當前波峰波谷差值符合閾值,則記錄為1步。
1.2.2 步長估計

1.2.3 航向估計
航向是造成PDR定位誤差累積的最主要因素[15]。基于智能手機的航向估計通常由加速度計和磁力計制作電子羅盤來獲得設備與北方向的夾角,進而得出航向角,或者對陀螺儀采集的角速度進行積分得到轉角。磁力計容易受到周圍磁場影響,陀螺儀在短時間內精度高,但會隨時間產生漂移,二者在實際定位中誤差較大。
Android已將陀螺儀數據與來自磁力計、加速度計的測量值進行卡爾曼濾波處理,提供了校準后的陀螺儀與旋轉矢量(rotation vector, RV)傳感器[16]。校準后的陀螺儀提高了精度和靈敏度,且只存在較小的漂移;RV傳感器提供了設備的絕對方向,但存在輕微的延遲和較小的方向校正,當傳感器處于校正狀態時,需要等待其校正完成。校準后的陀螺儀在短時間內較精確,但長時間內存在一定的漂移;結合RV傳感器進行角度校正可以提供更為準確的設備方向。
本文利用四元數球面線性插值(spherical linear interpolation, SLERP)來融合校正后的陀螺儀和RV傳感器。四元數是空間中表示物體旋轉的1種表示方式,四元數可表示為


WiFi定位不穩定,但提供絕對定位位置;PDR在短時間內誤差較小,但需要設置起點,且存在誤差累積。所以,可以結合2種定位方式以提高定位精度。本文將行人的運動狀態信息和WiFi定位通過粒子濾波來融合。系統觀測值為WiFi指紋定位結果,PDR用于狀態更新,系統狀態為用戶實際位置。
結合WiFi定位和PDR的粒子濾波定位算法如圖1所示,PDR作用于定位的2個階段:①離線階段,采用行走采集的方式,記錄修正后的PDR坐標和WiFi信號,構建WiFi指紋數據庫;②在線定位階段,將PDR定位和WiFi定位結果進行粒子濾波融合,最終得到用戶位置。粒子濾波算法具體步驟如下:

圖1 結合WiFi定位與PDR的粒子濾波算法流程
步驟1:初始化粒子集,以WiFi定位位置為粒子初始位置。
步驟2:當檢測到行人的步態事件時,依據航位推算算法對每個粒子進行狀態更新,得到的粒子狀態方程為

步驟3:將粒子的權重進行更新,權重大小取決于粒子與觀測值之間的距離:距離越近,權重越大;反之,距離越遠,權重越小。再對更新后的權重進行歸一化。
步驟4:經多次迭代后,除了少數粒子之外,絕大多數粒子權值趨于0,造成計算資源的浪費,即粒子的退化現象。本文利用系統重采樣[17]方法來抑制粒子的退化,權重越大的粒子被復制的次數越多,從而剔除權重小的粒子。

實時地理位置共享旨在將當前用戶與目標用戶的地理位置信息互相傳達,明確信息發送者的實時位置,以便于用戶之間信息的交流與分享[18]。當前的位置共享應用或系統主要以GPS定位結果作為信息主體,當用戶位于建筑物內時,無法獲取到對方的準確位置。例如在大型商場或者博物館內,常常需要花費大量的時間才能找到對方或到達指定地點。實現用戶之間的室內位置共享并提供路徑規劃,能為用戶的出行、集會帶來便利。
本系統遵循客戶機/服務器(client/server, C/S)的架構模式,客戶端為Android系統開發的室內定位應用程序(application, APP),集成了帶有消息會話功能的軟件開發工具包(software development kit, SDK),可發送消息并接收消息。服務端選用環信即時通訊云作為通訊服務器,接收用戶請求并將處理結果返回給客戶端。服務端的消息回調以超文本傳輸協議(hypertext transfer protocol, HTTP)的方式實現,消息正文采用JS對象簡譜(JavaScript object notation, JSON)格式傳輸,并做加密簽名,保證數據的安全性。用戶的身份(identification, ID)、頭像、好友列表等個人信息保存在自己的APP后臺服務器中,而不是位于第三方平臺,保證用戶的隱私。用戶之間位置共享的實現過程如圖2所示。

圖2 用戶位置共享的實現過程
首先,用戶在室內定位APP上注冊,后臺服務器向通訊服務器發起請求,創建賬號。用戶創建賬號之后,可獲得唯一登錄ID來登錄APP。接著輸入對方的ID可添加為信任用戶,同時發起位置共享請求的用戶可在地圖上顯示當前定位位置,并將定位消息以JSON格式傳輸給對方。最后用戶可以觀察到對方在地圖上的位置,實現室內實時地理位置共享。
當室內空間大、道路復雜的時候,為用戶提供準確的路徑規劃能夠幫助用戶快速到達目的地。Dijkstra算法是解決賦權圖的單源最短路徑問題的經典算法,本文依據Dijkstra算法為用戶提供路徑規劃。
Dijkstra算法基于1個包含頂點和弧的有向圖,在室內地圖中,頂點即為道路節點,弧的長度為節點之間的距離。所以,需要預先建立定位區域的導航路網:將地圖中所有的拐點、道路終點、進出門口的兩側設為節點;若相鄰節點之間的距離大于5 m,則每隔5 m在室內道路上設定1個節點;連接所有相鄰節點并標記節點之間的距離即形成到導航路網。
用戶開啟導航功能時,以距離用戶定位位置最近的道路節點為起點,距離目標位置最近的道路節點為終點,Dijkstra算法便能計算得到1條起點到終點的最短路徑,結合航向就能夠為用戶提供路徑導航。
本文的實驗場地為福州大學陽光科技大廈8樓,樓中已安裝實驗所需的數十個WiFi無線路由器。實驗所用設備為榮耀6 Plus智能手機,操作系統為Android 6.0。由于本文WiFi指紋數據庫依賴PDR算法來建立,所以先進行PDR實驗,再進行其它定位實驗。
為驗證本文步態檢測和步長估計的準確性,在長度為50 m直行道路上,實驗者手持終端在該路徑上進行多次測試,記錄實時行走數據。實驗結果表明,本文的步態檢測與步長算法計算得出的行走距離與實際距離的平均誤差為2.2 m,相對精度達95.6 %,穩定性與相對精度均滿足PDR運用。


圖3 幾種智能手機航向估計方法的對比
由于室內環境存在許多磁干擾源,由加速度計和磁力計組合的電子羅盤存在方向不穩定的缺點,輸出軌跡不平滑,且偏離真實路徑;卡爾曼濾波校正后的陀螺儀與RV傳感器獲取的方向較為穩定,抖動很小,存在較小的方向偏差,但誤差逐漸變大;由SLERP融合算法提供的設備方向誤差小于陀螺儀和RV傳感器,且依然保持良好的響應性和穩定性。由實驗結果分析可知,SLERP融合算法計算得到的航向準確性明顯高于其他幾種方法。
本實驗設計2種指紋數據庫構建方案來進行對比:
方案1為行走采集:由于SLERP融合的PDR在短時間能夠提供穩定位置估計,所以在較短的行走路程內,PDR的軌跡坐標與行走的實際坐標差距較小。實驗中測繪人員手持移動終端沿著實驗樓主干道勻速行走,記錄行走坐標的同時采集WiFi信號,建立實驗區指紋庫。首先,從已知起點開始行走采集,當經過拐點時,將當前的PDR坐標修改為拐點的已知坐標;接著依據起點與拐點之間的距離和PDR行走距離等比例修正之前每一個步伐的坐標,這樣PDR軌跡將基本與實際行走路徑重合,保證指紋庫的準確性。
方案2為單點采集:利用傳統的單點采集的方式建立指紋數據庫,用于比較方案1的精度和可行性,參考點均位于方案1的行走軌跡上,間隔為2 m。


圖4 2種指紋數據庫構建方法的WiFi定位精度對比
將PDR、WiFi定位、結合WiFi定位和PDR的粒子濾波融合定位3種方法進行對比實驗,其中WiFi指紋庫由行走采集的方法來構建。實驗中每隔2.5 s獲取1次WiFi定位的結果,粒子初始數量為1500,行走過程保持勻速。
圖5為3種定位方法在地圖上的定位結果,可以看出:WiFi定位為單點定位,定位結果總體在真實軌跡附近,但存在重復堆積點和回跳點,無法形成連續軌跡;改進航向的PDR在短時間內保持了很好的穩健性,軌跡與真實路徑重合度較高,但誤差隨著行走距離不斷增大,這是PDR算法的固有問題;粒子濾波融合定位軌跡與真實路徑的重合度最高,定位結果優于PDR和WiFi定位。

圖5 WiFi、PDR和粒子濾波的定位結果
3種定位方法的誤差對比如表1所示。WiFi定位的最大誤差為9.2 m,存在誤差較大的定位點;PDR短時間內的誤差小于WiFi定位,但誤差會不斷累積;粒子濾波融合后的定位誤差均小于PDR和WiFi定位,且平均誤差為3.06 m,比傳統指紋構建方法的WiFi定位精度更高。

表1 3種定位算法的誤差分析 m
根據以上關于WiFi、PDR和粒子濾波定位的精度分析做出以下總結:
1)基于粒子濾波的融合定位平均誤差和最大誤差均小于PDR和WiFi定位,有效地抑制了PDR誤差累積的問題,并且提升了定位的穩定性。
2)WiFi定位所需的指紋數據庫采用行走采集的方式快速建立,結合WiFi和PDR的粒子濾波融合方法的定位精度優于傳統指紋構建方法的WiFi定位精度。實驗結果表明本文的方案在保證了室內定位精度的同時,大大減少了數據庫構建的人力成本。
用戶B告知用戶A當前位于陽光科技大廈8樓北801室,用戶A位于大廈1樓大門口,需要快速準確地到達目的地。
首先用戶A和B登錄后向對方發送位置共享請求,開啟實時位置共享功能。用戶A手持智能手機從1樓大門進入大樓,乘坐電梯到8樓走出電梯口,終端定位位置為結合WiFi定位和PDR的粒子濾波融合定位結果,此時用戶A、B均可在地圖上觀察到對方的實時位置。接著用戶A開啟路徑導航功能,終端顯示從當前位置到用戶B所在位置的最短路徑,用戶A便可根據導航路徑快速到達B所在的辦公室附近。實驗結果如圖6所示,其中虛線為導航路徑,實線為用戶A的行走軌跡。

圖6 導航路徑與用戶A的行走軌跡
本文提供了一整套基于智能手機的室內位置共享解決方案,包括2個方面:室內定位方法采用行走采集的方式快速建立WiFi指紋數據庫,改進航向估計算法獲得更為穩健的設備航向和更為精確的行人導航定位結果,再通過粒子濾波融合WiFi定位和PDR;路徑規劃方法給出了一種室內實時位置共享和基于Dijkstra算法的路徑規劃方案,實現用戶之間的位置共享和地圖導航。實驗結果表明,該方案提高了定位精度的同時減少了離線階段WiFi指紋庫的建庫成本,并為用戶提供了快速的室內尋人尋址方法。在定位過程中用戶軌跡存在穿越墻壁、走廊等不合理現象,后續工作可結合地圖信息進一步提高定位準確性。
[1] LI J,YAN H Y, LIU Z L, et al. Location-sharing systems with enhanced privacy in mobile online social networks[J]. IEEE Systems Journal, 2017, 11(2): 439-448.
[2] 周源, 張慶全, 林富明. 基于GPS手機的定位終端軟件設計與研究[J]. 測繪與空間地理信息, 2010, 33(5): 106-111.
[3] 侯兆陽. 基于百度地圖的協同指揮系統[D]. 鄭州: 鄭州大學, 2016.
[4] HE S N, CHAN S H G. Wi-Fi fingerprint-based indoor positioning: recent advances and comparisons[J]. IEEE Communications Surveys&Tutorials, 2017, 18(1): 466-490.
[5] 陳銳志, 陳亮. 基于智能手機的室內定位技術的發展現狀和挑戰[J]. 測繪學報, 2017, 46(10): 1316-1326.
[6] ZHANG S Z, XIONG Y P, MA J, et al. Indoor location based on independent sensors and WIFI[C]//The Institute of Electrical and Electronic Engineers(IEEE). Proceedings of 2011 International Conference on Computer Science and Network Technology. Harbin: IEEE, 2011: 2640-2643.
[7] KOO B, LEE S, LEE M, et al. PDR/fingerprinting fusion indoor location tracking using RSS recovery and clustering[C]//The Institute of Electrical and Electronic Engineers(IEEE). Proceedings of 2014 International Conference on Indoor Positioning and Indoor Navigation (IPIN). Busan: IEEE, 2014: 699-704.
[8] HU A D, WANG J, WANG Y J, et al. An fusion positioning for PDR and WiFi based on fading adaptive weighted EKF[J]. Geomatics&Information Science of Wuhan University, 2016, 41(11): 1556-1562.
[9] 雷雨偉, 修春娣, 楊威, 等. WiFi與MEMS-IMU融合定位方法在室內定位中的應用[J]. 導航定位學報, 2016, 4(4): 81-87. DOI: 10. 16547/j. cnki. 10-1096. 20160416.
[10] LI Y, ZHUANG Y, LAN H Y, et al. A hybrid WiFi/magnetic matching/PDR approach for indoor navigation with smartphone sensors[J]. IEEE Communications Letters, 2016, 20(1): 169-172.
[11] BOLLIGER P. Redpin - adaptive, zero-configuration indoor localization through user collaboration[C]//Association for Computing Machinery(ACM). Proceedings of the first ACM International Workshop on Mobile Entity Localization and Tracking in GPS-Less Environments. San Francisco: ACM, 2008: 55-60.
[12] 陳國良, 李飛, 張言哲. 一種基于自適應波峰檢測的MEMS計步算法[J]. 中國慣性技術學報, 2015, 23(3): 315-321.
[13] YING H, SILEX C, SCHNITZER A, et al. Automatic step detection in the accelerometer signal[EB/OL]. [2018-10-21]. http: //mirlab. org/users/davidson. chen/relatedPapers/runMusic/2007%20IWWISN%20Automatic%20Step% 20Detection%20in%20the%20Accelerometer%20Signal. pdf.
[14] ZHAO K, LI B H, DEMPSTER A G. A new approach of real time step length estimation for waist mounted PDR system[C]//The Institute of Electrical and Electronic Engineers(IEEE). Proceedings of 2014 International Conference on Wireless Communication and Sensor Network. Wuhan: IEEE, 2014: 400-406.
[15] 陳偉. 基于GPS和自包含傳感器的行人室內外無縫定位算法研究[D]. 合肥: 中國科學技術大學, 2010.
[16] PACHA A. Sensor fusion for robust outdoor augmented reality tracking on mobile devices[M]. Münich: GRIN Verlag, 2013.
[17] LI T C, BOLIC M, DJURIC P M. Resampling methods for particle filtering: classification, implementation, and strategies[J]. IEEE Signal Processing Magazine, 2015, 32(3): 70-86.
[18] 彭藝蕾, 王莉莉, 孫紅濤, 等. 基于Android的多用戶位置共享及實時通信系統[J]. 智能計算機與應用, 2017, 7(3): 170-172.
An indoor location sharing method for smartphones
ZHANG Jiading1, CHEN Chongcheng1, YE Xiaoyan1, FANG Hui1,2
(1. Key Laboratory of Spatial Data Mining & Information Sharing of MOE,Fuzhou University/National and Local Joint Engineering Research Center of Geospatial Information Technology, Fuzhou University, Fuzhou 350116, China;2. Digital Fujian IoT Laboratory of Intelligent Production, Minjiang University, Fuzhou 350108, China)
Aiming at the problem that the indoor positioning accuracy of GPS is too low to achieve accurate indoor location sharing, the paper proposed an indoor location sharing method for smartphones, which mainly includes two parts, i.e. indoor positioning and path planning: for the indoor positioning method, WiFi fingerprint database was quickly built by using the method of walking acquisition, the methods of obtaining the headings by three kinds of smartphones were analyzed, and the more stable heading was acquired by using spherical linear interpolation algorithm integrated the gyroscope with the rotation vector sensor. then the WiFi positioning and the PDR were combined by particle filtering; for the path planning method, the location sharing was achieved by using HuanXin instant messaging as the communication server, and Dijkstra algorithm was used to calculate the shortest path to provide map navigation for users. Experimental results showed that the method could effectively improved the accuracy of indoor positioning, and achieve fast and accurate indoor search by combining indoor location sharing and path planning.
location sharing; indoor positioning; particle filter; wireless fidelity(WiFi) fingerprint database; pedestrian dead reckoning(PDR); path planning
P228
A
2095-4999(2019)03-0017-07
2018-12-27
福建省第二批科技創新領軍人才項目(00387005)。
張加丁(1993—),男,福建寧德人,碩士生,研究方向為移動設備室內定位。
陳崇成(1968—),男,福建福州人,博士,教授,博士生導師,研究方向為空間數據挖掘、地學可視化。
張加丁,陳崇成,葉曉燕,等.一種智能手機室內位置共享的方法[J].導航定位學報,2019,7(3):17-23.(ZHANG Jiading, CHEN Chongcheng, YE Xiaoyan, et al.An indoor location sharing method for smartphones[J].Journal of Navigation and Positioning,2019,7(3):17-23.)
10.16547/j.cnki.10-1096.20190304.