李思民,蔡成林,王亞娜,邱云翔,黃艷虎
(桂林電子科技大學(xué)信息與通信學(xué)院,廣西 桂林 541004)
隨著全球衛(wèi)星導(dǎo)航系統(tǒng)GNSS(Global Navigation Satellite System)技術(shù)日益成熟,它已成為室外定位的最佳選擇,在測繪、航空、航海、交通、氣象等諸多室外環(huán)境中被廣泛應(yīng)用。但在建筑物、礦井、隧道、地下、水下等室內(nèi)環(huán)境中,由于信號的遮擋,存在GNSS不可用的問題[1]。室內(nèi)定位作為導(dǎo)航定位的“最后一公里”,近年已成為導(dǎo)航界研究熱點,也是導(dǎo)航與位置服務(wù)的核心問題。
目前主流室內(nèi)定位技術(shù)大都需要部署足夠多的節(jié)點才能確保定位的精確性和穩(wěn)定性,其中最具代表性的有WIFI[2]、UWB[3]、藍牙[4]和RFID[5]室內(nèi)定位方法,由于它們需要部署額外的設(shè)備導(dǎo)致部署成本太高,不適合大規(guī)模使用。地磁定位無需部署任何信標節(jié)點,具有全天候、低成本等特征,其原理是地球磁場受到室內(nèi)鋼筋混泥土、電纜、各類電磁設(shè)備等影響,使其產(chǎn)生異常,造成室內(nèi)磁場高度不均勻,地磁定位就是利用室內(nèi)異常磁場進行定位[6]。
近年來,國內(nèi)外對地磁定位的研究已經(jīng)取得了一定的成果,宋鏢[7]等人設(shè)計了慣導(dǎo)輔助地磁的手機室內(nèi)定位系統(tǒng),以最小距離度量法校正慣導(dǎo)的累積誤差,并達到了1 m的定位精度。但在地磁指紋庫的采集方法上有不足之處,需要在劃分的每個網(wǎng)格上單獨采集地磁指紋信息,在大范圍的室內(nèi)環(huán)境中十分耗時;楊增瑞[8]等人和謝宏偉[9]等人設(shè)計了磁場指紋輔助的手機室內(nèi)定位系統(tǒng),通過波峰檢測、粒子濾波等方法,實現(xiàn)了室內(nèi)2 m的定位精度。但由于行人在不同行走狀態(tài)下的加速度峰值不同,使用波峰檢測法探測步頻具有局限性;Subbu[10]等人在研究不同結(jié)構(gòu)的磁場模型的基礎(chǔ)上,提出了LocateMe室內(nèi)定位系統(tǒng),但是只能夠粗略定位用戶在哪一個房間。Haverinen[11]等人設(shè)計了一種粒子濾波融合的室內(nèi)定位方法,能夠同時應(yīng)用于機器人和行人定位,但是這個方法有較大的局限性,要求設(shè)備朝向和建筑物的方向相同;Bilke[12]等人設(shè)計了一種能夠應(yīng)用任何二維空間的地磁定位系統(tǒng),實現(xiàn)了室內(nèi)平均4 m的定位精度,但地磁指紋精度受設(shè)備姿態(tài)影響較大,且需要收集每一點各個方向的地磁讀數(shù),實用性較低。
針對上述問題,本文設(shè)計了一種基于地磁指紋和PDR融合的手機室內(nèi)定位方法。采用自相關(guān)法探測行人不同步態(tài)下的步頻,在每個完整步態(tài)周期內(nèi)采用粒子濾波估計當前位置。該方法能夠滿足室內(nèi)定位的精度要求,具有實際應(yīng)用價值。
本文主要是利用地磁指紋和PDR融合的方法實現(xiàn)室內(nèi)定位。傳統(tǒng)的慣性導(dǎo)航是通過測量載體的加速度,經(jīng)過二次積分得到相對位置,再采用零速修正法(ZUPT)對誤差進行修正。但由于手機內(nèi)置的慣性傳感器精度較低及行人行走步態(tài)的不穩(wěn)定性,無法準確探測零速區(qū)間,這會使得定位誤差隨著時間的平方增加,即使目標不移動,誤差也會一直累積。行人航跡推算(PDR)是根據(jù)行人的步態(tài)特征進行位置估計,它通過探測步頻判斷行人是否在移動,相比傳統(tǒng)的慣性導(dǎo)航,其定位誤差只與行人的行走距離有關(guān),與時間無關(guān)。
圖1 地磁指紋和PDR融合的室內(nèi)定位系統(tǒng)框圖
地磁匹配是利用地磁指紋庫進行定位,分為離線階段與在線階段兩個部分[13]。在離線階段,首先采集載體活動區(qū)域內(nèi)的地磁信息,通過插值算法建立高精度地磁指紋庫,并保存在計算機中;在線階段,首先通過PDR估計出粗略位置,并采集前后兩步的地磁數(shù)據(jù),然后將采集到的地磁數(shù)據(jù)與地磁指紋庫進行比較,并求解出最優(yōu)匹配位置。地磁指紋和PDR融合的室內(nèi)定位系統(tǒng)框圖如圖1所示。
PDR定位原理就是通過采集手機內(nèi)置的加速度計、陀螺儀和磁力計信息,獲取行人的步頻、步長及航向,再根據(jù)前一時刻行人的位置推算出當前時刻載體的位置,原理框圖如圖2所示。假設(shè)行人初始位置P(t0)的坐標為(E(t0),N(t0)),跨步后的步長為L(t0),航向角為γ0,則可以按照式(1)推算出從初始位置到第n步的軌跡[14]。
(1)
式中:E(tn)和N(tn)分別表示行人在ENU坐標系下的東向和北向坐標,Li表示從ti-1到ti的步長,γi表示單個跨步內(nèi)的航向角,在實際使用過程中,通常假設(shè)行人在單步之內(nèi)的航向角是不變的,根據(jù)經(jīng)驗可知,這個假設(shè)是合理的。
圖2 PDR原理框圖
圖3 不同行走狀態(tài)加速度波形
由于行人行走時的加速度波形會呈現(xiàn)出周期性特征,因此可以利用加速度探測行人的步頻。目前常用方法是過零點峰值檢測法,通過設(shè)置零點閾值和峰值閾值判斷行人是邁出該步,該方法實現(xiàn)簡單、復(fù)雜度低[15]。但行人行走時會將手機放置在身上的不同部位,且不同部位呈現(xiàn)出來加速度的零點閾值和峰值閾值不同。圖3是行人在不同行走狀態(tài)下通過平滑濾波之后的三軸總加速度波形,通過波形可以看出如果使用固定的零點閾值和峰值閾值將無法準確探測步頻。
行人的運動狀態(tài)可以分為行走和空閑。行走狀態(tài)是指將手機放在口袋、拿在手上行走或使用的狀態(tài)下行走。空閑狀態(tài)是指行人位置沒有變化的一種運動,包括坐立、身體旋轉(zhuǎn)、使用手機的基本手勢動作等等。
本文采用的自相關(guān)法探測步頻,主要分為兩個步驟:標準差計算和自相關(guān)系數(shù)計算。其原理是通過式(2)和式(3)計算標準差判斷行人是否為空閑狀態(tài),若為行走狀態(tài),則利用式(4)和式(5)求出加速度序列的相關(guān)性判斷行人是否跨出該步。
(2)
(3)
式(2)中:a表示三軸總加速度,ax、ay、az分別表示x,y,z3個軸的加速度值。式(3)中:σ、u分別表示總加速度序列{a1,a2,…,aN}的標準差和均值。根據(jù)總加速度標準差可以判斷行人的狀態(tài)是否為空閑狀態(tài)。圖4是在手機采樣頻率20 Hz的情況下,以1 s為周期統(tǒng)計行走和空閑兩種狀態(tài)的標準差5 000次的分布圖。可以看出當標準差低于0.5時,行人的處于空閑狀態(tài)下的概率大于90%。
圖4 行走與空閑狀態(tài)的整體加速度標準差分布圖
在計算標準差之后,如果行人處于行走狀態(tài),再利用式(4)求解整體加速度的自相關(guān)系數(shù)[16]:
(4)
式中:u(m,t)和σ(m,t)表示總加速度序列{ak,ak+1,…,ak+t-1}的均值與標準差。當時間t接近行人的步態(tài)周期時,x(m,t)的值接近1。然而不同的行人的跨步周期不同,需要設(shè)置一個加框算法求解出最佳的相關(guān)系數(shù)。根據(jù)行人的運動特征,正常行人的步頻為1 Hz~3 Hz,因此本文設(shè)置t的范圍為0.3 s~1.0 s。
(5)
圖5是在手機采樣頻率20 Hz的情況下,以1 s為周期統(tǒng)計行走和空閑兩種狀態(tài)的相關(guān)系數(shù)各5 000次的分布圖??梢钥闯?當相關(guān)系數(shù)大于0.7時行人處于運動狀態(tài)的概率大于97%。
圖5 行走與空閑狀態(tài)的整體加速度自相關(guān)系數(shù)分布圖
綜上所述,相關(guān)法檢測法探測主要分為兩個步驟:首先檢測一個步態(tài)周期內(nèi)總加速度的標準差σ,如果小于0.5,則不做計步處理;若標準差σ大于0.5,則需要判斷相關(guān)系數(shù)ρ(m,t),若ρ(m,t)大于0.7則跨步有效并記錄該步,否則不做計步處理。
表1比較了相關(guān)系數(shù)和過零點峰值檢測兩種方法步頻探測的準確性,從實驗結(jié)果可以看出,當運動狀態(tài)為手中擺動時,由于實際數(shù)據(jù)的零點比預(yù)設(shè)的零點閾值要高,采用過零點峰值檢測法會導(dǎo)致探測失敗。相比而言,相關(guān)系數(shù)法能夠準確的探測行人不同狀態(tài)下的步頻。
表1 步頻實驗結(jié)果
目前常用的步長估計模型可以分為兩類:線性步長估計模型和非線性步長估計模型。本文采用的非線性步長估計模型[17]如式(6)所示。
(6)
式中:Amax和Amin分別表示一步內(nèi)的加速度最大值和最小值,K是模型系數(shù),在定位之前需要離線對系數(shù)K進行訓(xùn)練。該模型只有一個參數(shù),其系數(shù)K不需要經(jīng)過復(fù)雜的處理獲得,較容易在實時估計算法中實現(xiàn)。
為了驗證步長估計模型的有效性,實驗者首先在20 m的直線上分別以慢、中、快的速度行走9次,利用最小二乘法訓(xùn)練系數(shù)K。接著在30 m的直線行走4次,實驗結(jié)果如表2所示,從表中可以看出步長估計模型精度較高。
表2 步長實驗結(jié)果
使用磁力計直接解算航向角,具有結(jié)構(gòu)簡單、抗過載能力強、低功耗,航向誤差不隨時間累積等優(yōu)點[18]。但是,磁力計在使用過程中容易受到外界壞境的干擾,比如在室內(nèi)、礦區(qū)、車庫等鐵磁物質(zhì)較多的地方,會使磁力計的精度急劇下降。為了提高航向精度,本文采用擴展卡爾曼濾波EKF(Extended Kalman Filter)融合三軸加速度、陀螺儀和磁力計數(shù)據(jù)估計出行人的航向角。
本文采用四元數(shù)去表征手機的姿態(tài),基于四元數(shù)的剛體運動方程如式(7)所示,其矩陣形式可以表示為式(8),載體的橫滾角(roll)、俯仰角(pitch)和航向角(yaw)可以由式(9)表示[19]。
(7)
(8)
(9)
式中:?為四元數(shù)乘數(shù)運算,Q=[q0,q1,q2,q3]T,q0是四元數(shù)的實部,q1、q2、q3是四元數(shù)的虛部,ω=[ωx,ωy,ωz]表示陀螺儀3個軸的數(shù)值。
擴展卡爾曼濾波的狀態(tài)方程和量測方程分別表示為式(10)和式(11),狀態(tài)向量是用四元數(shù)Q來表示,測量方程是加速度和磁力計測量數(shù)據(jù)的組合。
Qk+1=FQk+wk
(10)
(11)
圖6是分別比較了手機方向傳感器的航向角及擴展卡爾曼濾波之后的航向角,圖7是兩種方式的誤差圖,可以看出,經(jīng)過擴展卡爾曼濾波之后的航向能夠有效的減小航向誤差。
圖7 航向誤差
地磁定位是通過選擇地球磁場的某個或者多個地磁要素作為特征量,再利用相關(guān)匹配算法進行定位的一個過程。目前常用的是使用地磁強度作為地磁的特征量,它不需要考慮手機的姿態(tài),避免了坐標轉(zhuǎn)換之后帶來的誤差[20]。相關(guān)匹配算法主要是基于最小距離度量法,利用實測的地磁信息和地磁指紋庫的地磁信息之差的最小值作為匹配準則。
室內(nèi)地磁主要是由地球磁場和室內(nèi)異常磁場組成。本文使用地磁強度作為特征量,在實驗之前,應(yīng)該對地磁強度穩(wěn)定性進行研究。圖8是在在同一條路徑下不同時間的地磁強度值,可以看出,某個位置的磁場強度在不同的時間會發(fā)生變化,但變化趨勢基本是一致的。因此在匹配算法中,使用單個跨步內(nèi)的地磁強度與地磁指紋庫之差的最小值作為匹配準則是不可取的,本文采用兩步測量數(shù)據(jù)之差與地磁指紋庫之差的最小值作為匹配準則。
圖8 室內(nèi)地磁特性(同一地點,時間間隔一周)
粒子濾波屬于非參數(shù)化濾波算法,它是基于蒙特卡洛的思想,以樣本均值代替積分運算,以有限的粒子數(shù)表示狀態(tài)的后驗分布,從而獲得狀態(tài)最小方差估計的過程[21]。由于能夠有效處理非線性、非高斯系統(tǒng),已被廣泛應(yīng)用到各種領(lǐng)域。
粒子濾波主要包括狀態(tài)方程、量測方程和重采樣3個部分[22]。本文室內(nèi)定位中的系統(tǒng)狀態(tài)分別為用戶位置和航向角,如式(12)所示。
s=(x,y,γ)
(12)
(13)
在所有的粒子都有權(quán)重之后,需要濾掉權(quán)重低的粒子,這些粒子被認為是與用戶真實狀態(tài)較遠。重采樣的目的就是為了將粒子都集中到高權(quán)重粒子附近區(qū)域中,使得粒子群收斂。實際應(yīng)用中,會有一部分粒子的位置出現(xiàn)在用戶不可達的位置上,這種現(xiàn)象稱為“穿墻”,在重采樣之前,應(yīng)該剔除“穿墻”的粒子。
最后,通過式(14)對所有粒子的狀態(tài)加權(quán)平均作為用戶當前的真實狀態(tài)。
(14)
圖9 粒子濾波算法流程圖
為了驗證本文提出的基于地磁指紋和PDR融合的手機室內(nèi)定位系統(tǒng)的定位性能,本文在實際室內(nèi)環(huán)境中進行實驗。實驗場景選擇在桂林電子科技大學(xué)圖書館4樓的走廊進行室內(nèi)定位導(dǎo)航。
在進行室內(nèi)定位實驗之前,需要離線采集實驗區(qū)域的地磁數(shù)據(jù)作為地磁指紋庫。本文的采集方式是把實驗區(qū)域劃分為若干條直線行走路線,用戶在每條直線上勻速行走,記錄下行走直線的起點和終點的位置坐標,同時記錄下行人的步數(shù),然后將直線劃分為若干個點,每個點代表的是一個跨步,跨步內(nèi)地磁數(shù)據(jù)為該網(wǎng)格點的地磁指紋。與傳統(tǒng)的采集方式相比,不需要在劃分好的每個網(wǎng)格內(nèi)進行采集,能夠節(jié)約大量時間。圖10是自主開發(fā)的數(shù)據(jù)采集應(yīng)用程序及實驗場景圖,其中數(shù)據(jù)采集程序能實時采集三軸加速度計、陀螺儀、磁力計并以excel格式存儲在手機。
本文首先設(shè)置手機采樣頻率為20 Hz,然后將實驗走廊劃分為4個區(qū)域,每個區(qū)域分別按照圖11所示的采集路徑分別采集3次。最后,采用三次樣條插值對數(shù)據(jù)進行0.2 m間隔的空間插值,插值后的走廊地磁指紋圖如圖12所示。其中,黑色的點代表采樣點,顏色的深淺代表地磁強度的大小。
圖10 數(shù)據(jù)采集界面及實驗場景
圖11 地磁指紋采集路徑圖
圖12 地磁指紋圖
實驗過程中,假設(shè)用戶的初始位置已知,用戶水平手持手機以20 Hz的采樣頻率沿長90 m的走廊行走一圈,并將實時采集到的加速度、陀螺儀和磁力計數(shù)據(jù)存儲在手機中。最后將數(shù)據(jù)導(dǎo)入MATLAB中,并在MATLAB平臺上實現(xiàn)地磁指紋和PDR融合的手機室內(nèi)定位算法的仿真分析。實驗對比了PDR的定位結(jié)果以及地磁指紋和PDR融合之后的定位結(jié)果,如圖13所示,從圖中可以看出,PDR定位誤差隨著行走距離的增加逐漸累積,最終嚴重偏離實際軌跡。本文提出的地磁指紋和PDR融合算法能夠?qū)崟r校正PDR的誤差,圖14為反復(fù)實驗20次得出的定位誤差分布圖,從圖中可以看出,定位精度在2 m以內(nèi)的概率達到了95%,滿足室內(nèi)定位精確的需求。
圖13 室內(nèi)定位效果圖
圖14 定位誤差分布圖
本文提出的地磁指紋和PDR融合的手機室內(nèi)定位算法無需部署任何信標節(jié)點,由于使用地磁地磁場進行導(dǎo)航定位,在導(dǎo)航過程不會向外發(fā)射能量,因此具有全天候、隱蔽性高、低成本等特征。在步頻探測算法上,采用相關(guān)法提高了不同步態(tài)下步頻探測的準確率;在航向估計上,采樣擴展卡爾曼濾波提高了航向精度;與傳統(tǒng)的地磁指紋庫采集方式相比,本文提出的采集方式更加方便快捷。在實際使用中可能會存在較大的地磁平穩(wěn)區(qū)域,這會導(dǎo)致定位精度下降,甚至使定位結(jié)果發(fā)散,通常采用磁標對地磁平穩(wěn)區(qū)域進行干擾,使室內(nèi)地磁異常,但這會使成本增加。在未來的研究中,可以使用多個地磁要素作為特征量,在成本不變的情況下提高了指紋的唯一性,同時也解決了初始化位置的問題,進一步提高了系統(tǒng)的穩(wěn)定性及定位精度。
[1] 王楊,趙紅東. 室內(nèi)定位技術(shù)現(xiàn)狀和發(fā)展趨勢[J]. 測控技術(shù),2016,35(7):1-8.
[2] Hong F,Zhang Y,Zhang Z,et al. WaP:Indoor Localization and Tracking Using Wifi-Assisted Particle Filter[C]//2014 IEEE 39th Conference on Local Computer Networks(LCN). IEEE,2014:210-217.
[3] 楊狄,唐小妹,李柏渝,等. 基于超寬帶的室內(nèi)定位技術(shù)研究綜述[J]. 全球定位系統(tǒng),2015,40(5):34-40.
[4] 陳國平,馬耀輝,張百珂. 基于指紋技術(shù)的藍牙室內(nèi)定位系統(tǒng)[J]. 電子技術(shù)應(yīng)用,2013,39(3):104-107.
[5] 劉曉葉,徐玉斌. 基于自適應(yīng)射頻指紋地圖的WSN室內(nèi)定位算法研究[J]. 傳感技術(shù)學(xué)報,2015,28(8):1215-1220.
[6] 郭才發(fā),胡正東,張士峰,等. 地磁導(dǎo)航綜述[J]. 宇航學(xué)報,2008,30(4):1314-1319.
[7] 宋鏢,程磊,周明達,等. 基于慣導(dǎo)輔助地磁的手機室內(nèi)定位系統(tǒng)設(shè)計[J]. 傳感技術(shù)學(xué)報,2015,28(8):1249-1254.
[8] 楊增瑞,段其昌,毛明軒,等. 基于磁場指紋輔助的手機室內(nèi)定位系統(tǒng)[J]. 傳感技術(shù)學(xué)報,2016,29(9):1441-1448.
[9] Xie H,Gu T,Tao X,et al. A Reliability-Augmented Particle Filter for Magnetic Fingerprinting Based Indoor Localization on Smart-Phone[J]. IEEE Trans on Mobile Computing,2016,15(8):1877-1892.
[10] Subbu K P,Gozick B,Dantu R. Locateme:Magnetic-Fields-Based Indoor Localization Using Smartphones. TIST 4,2013:73.
[11] Haverinen J,Kemppainen A. Global Indoor Self-Localization Based on the Ambient Magnetic Field[J]. Robotics and Autonomous System,2009,57(10):1028-1035.
[12] Bilke A,Sieck J. Using the Magnetic Field for Indoor Localisation on a Mobile Phone[M]//Progress in Location-Based Services. Springer Berlin Heidelberg,2013:195-208.
[13] 劉飛,周賢高,楊曄,等. 相關(guān)地磁匹配定位技術(shù)[J]. 中國慣性技術(shù)學(xué)報,2007,15(1):59-62.
[14] 陳興秀,張金藝,晏理,等. 三維復(fù)雜運動模式航跡推算慣性導(dǎo)航室內(nèi)定位[J]. 應(yīng)用科學(xué)學(xué)報,2014,32(4):349-356.
[15] Lan K C,Shih W Y. Using Smart-Phones and Floor Plans for Indoor Location Tracking[J]. IEEE Transactions on Human-Machine System,2014,44(2):211-221.
[16] 陳國良,張言哲,楊洲. 一種基于手機傳感器自相關(guān)分析的計步器實現(xiàn)方法[J]. 中國慣性技術(shù)學(xué)報,2014,22(6):794-798.
[17] Fang L,Antsaklis P,Montestruque L,et al. Design of a Wireless Assisted Pedestrian Dead Reckoning System—The NavMote Experience[J]. IEEE Trans Instrum and Meas,2005,54(6):2342-2358.
[18] 陳潔,黃慶安,秦明. MEMS磁場傳感器的研究進展[J]. 電子器件,2006,29(4):1384-1388.
[19] 米剛,田增山,金悅,等. 基于MIMU和磁力計的姿態(tài)更新算法研究[J]. 傳感技術(shù)學(xué)報,2015,28(1):43-48.
[20] Chung J,Donahoe. Indoor Location Sensing Using Geomagne-Tism[C]//Mobisys,ACM,2011:141-154.
[21] 程水英,張劍云. 粒子濾波評述[J]. 宇航學(xué)報,2008,29(4):1099-1108.
[22] 胡士強,敬忠良. 粒子濾波算法綜述[J]. 控制與決策,2005,20(4):361-371.
[23] Le Grand E,Thrun S. 3-Axis Magnetic Field Mapping and Fusion for Indoor Localization[C]//MFI,IEEE,2012:358-364.