余劉勇,單志龍
(華南師范大學計算機學院,廣州 510631)
隨著智能手機和移動互聯(lián)網(wǎng)的發(fā)展,人們的衣食住行方式發(fā)生了翻天覆地的變化。人們出行方式的改變,促進了定位信息的需求量增加,大力發(fā)展移動定位技術(shù)變得尤為重要。傳統(tǒng)的衛(wèi)星定位技術(shù)僅僅局限于室外,室內(nèi)移動物體的定位不能依賴該技術(shù),必須通過其他定位技術(shù)來獲取位置信息[1]。因此,通過充分挖掘室內(nèi)定位確定性信息和進行室內(nèi)定位技術(shù)研究具有較大的實際應用價值。
早期地磁研究主要適用在寬闊的野外,通過對地磁信息的研究來繪制地磁分布圖。近些年,建筑物內(nèi)地磁信息分布的研究不斷被提及,得益于建筑物的長期不變性,在室內(nèi)的地磁異常信息具有一定的穩(wěn)定性,地磁定位就是利用這些異常信息產(chǎn)生的穩(wěn)定磁場作為信標來進行定位[2]。目前,國內(nèi)外對地磁的研究取得了一定的進展,但大部分研究還局限在匹配算法和模擬仿真方向,對于真實室內(nèi)環(huán)境地磁信息的檢測、異常處理和定位系統(tǒng)實用性方面研究還比較欠缺。宋鏢[3]等人提出了慣導輔助地磁的手機室內(nèi)定位系統(tǒng),降低了地磁檢測和匹配時間,定位精度達到了1 m左右。但并未充分使用慣導的確定性信息來降低地磁匹配產(chǎn)生的誤差,且離線指紋庫需要劃分網(wǎng)格進行采集,耗時耗力;楊增瑞[4]等人提出了地磁指紋輔助的手機室內(nèi)定位系統(tǒng),通過一種新的思路進行行人航位推算,實現(xiàn)了2 m左右的定位精度;李思民[5]等人提出了地磁指紋和PDR(Pedestrian Dead Reckoning)融合的手機室內(nèi)定位系統(tǒng),利用PDR定位結(jié)果縮小地磁匹配區(qū)域,實現(xiàn)了2 m左右的定位精度;謝宏偉[6]等人提出了一種基于穩(wěn)定性增強粒子濾波磁場匹配算法的手機室內(nèi)定位系統(tǒng),達到了1 m~2 m左右的精度,但實現(xiàn)算法過于復雜,計算速度慢;Haverinen[7]等人提出了基于粒子濾波的室內(nèi)定位系統(tǒng),該系統(tǒng)對用戶的行走有嚴格的要求,實用性不強。通過分析發(fā)現(xiàn),現(xiàn)有室內(nèi)地磁定位方法往往需要耗費大量的時間進行數(shù)據(jù)采集與計算,且無法充分挖掘定位階段的確定性信息,這些因素都阻礙了室內(nèi)定位技術(shù)的發(fā)展和應用。
傳統(tǒng)地磁定位單純的采集地磁指紋信息進行地磁匹配并獲得節(jié)點位置,其中地磁匹配主要是計算實測值與基準庫指紋數(shù)值的相似程度,主要的算法有最小距離度量法、相關(guān)度量法[8]和粒子濾波[6]。最小距離度量法主要有絕對差法(Absolute Difference,AD)、平均絕對差法MAD(Mean Absolute Difference)、平方差法SD(Square Difference)和平均平方差法MSD(Mean Square Difference);相關(guān)度量法主要有積相關(guān)法PROD(Product Correlation Similarity Measure)和歸一化積相關(guān)法NPROD(Normalized Product Correlation Similarity Measure);粒子濾波是根據(jù)蒙特卡羅思想,通過以樣本均值代替積分運算,進而獲得系統(tǒng)狀態(tài)的最小方差估計的過程。其中,粒子濾波具有較好的算法精度且在各種領(lǐng)域都廣泛使用,但其實現(xiàn)過程較為復雜,計算量大。MAD和MSD的算法精度較高,計算復雜度低,計算量小。
本文提出了一種基于可信度的地磁與慣導聯(lián)合定位方法GINPC(Geomagnetic and Inertial Navigation Positioning Based on Credibility),并采用該方法設(shè)計了一套完整的室內(nèi)定位系統(tǒng)。該方法以路徑段為單位,使用慣導技術(shù)進行地磁數(shù)據(jù)的快速采集處理,充分挖掘地磁與慣導信息的確定性因素,最終估算出節(jié)點位置。該方法可以有效的減少前期構(gòu)建基準庫耗費的大量人力和時間,并在定位階段減少地磁匹配的次數(shù),降低系統(tǒng)的復雜度。
不同的定位方法都有其各自優(yōu)勢,但也存在各自的局限。地磁指紋定位具有較高的可擴展性和定位精度[9],但存在較大的隨機誤差,不能很好的保證估計位置的準確性,所以現(xiàn)今研究中大多采用地磁信息與其他多種信息融合的方式來進行室內(nèi)定位。GINPC定位系統(tǒng)就是采用地磁與慣導信息聯(lián)合實現(xiàn)室內(nèi)的行人位置估計,包含離線和在線[10]兩個階段,如圖1所示,GINPC定位系統(tǒng)在離線階段先通過慣導技術(shù)計算出坐標,然后將對應坐標中的地磁數(shù)據(jù)錄入慣導地磁基準庫中;在線階段,通過路徑匹配和地磁匹配獲得的可信度進行聯(lián)合定位并最終獲得估計位置。
圖1 GINPC定位系統(tǒng)框圖
在離線階段,事先不需要進行場景的網(wǎng)格劃分,只需以路徑段為單位,采集人員按預先設(shè)定的路徑勻速行走,利用智能手機上的三軸磁傳感器、加速度傳感器和陀螺儀傳感器,采用慣導技術(shù)實時計算出采集人員行走的位置,并通過地磁采集系統(tǒng)記錄采集人員所在位置的地磁指紋信息,建立基于路徑段的慣導地磁基準庫。
為保證慣導信息的有效性,本算法通過步頻檢測、步長估計和方位角估計進行慣導信息的獲取。
1.1.1 步頻檢測
行人行走時的步態(tài)信息可利用手機的加速度傳感器進行探測,隨著行人的行走,加速度會呈現(xiàn)一定的周期性,因此通過分析加速度波形可以得到較為準確的步頻信息,如圖2所示。步頻檢測目前常用的方法是過零點峰值檢測法[11],通過零點和峰值的閾值設(shè)置來判斷行人是否走步??紤]到系統(tǒng)復雜度,本方法將采用過零點峰值檢測法來進行步頻檢測。
圖2 手機加速度數(shù)據(jù)分布圖
在過零點峰值檢測法中,加速度ai被稱為上升過零點,若加速度ai滿足:
(1)
式中:i為上升過零點的采樣序號。
行人行走姿態(tài)的多樣性和傳感器的誤差會使加速度數(shù)據(jù)波形產(chǎn)生毛刺,所以可先將采樣數(shù)據(jù)通過低通濾波器進行濾波處理,然后再檢測上升過零點。前后兩個相鄰的上升過零點之間的時間差即為一個完整的步態(tài)周期。為了防止單個周期內(nèi)出現(xiàn)多個波形峰值,只有當一次檢測的加速度峰值大于某一個閾值時,才判定為一步的完成,即:
a′>a0
(2)
式中:a′為檢測到的加速度峰值,a0為峰值檢測閾值。
1.1.2 步長估計
在進行慣導計算時,建立精準的行人步長估計模型十分重要[12]。行人步長與步頻和加速度有關(guān),由文獻12可知,隨著加速度、步頻的變化,步長呈正相關(guān)變化。因此,可以建立步長與步頻和加速度的線性關(guān)系方程。
L=Aa+BF+C
(3)
式中:A,B,C為模型參數(shù),a為行走合加速度,F為行走步頻,C為補償參數(shù)。該模型計算復雜度低,可以反映步長的隨機變化,通過對不同人的測試訓練可的得到較為準確的步長值。
1.1.3 方位角估計
方位角一般由磁力計和陀螺儀數(shù)值計算得出,因為電子設(shè)備容易受到干擾,行人行走過程中的抖動和陀螺儀的漂移都會導致方位角誤差。因此,將磁力計和陀螺儀相結(jié)合,使用互補濾波器處理兩者信號,最終可以得到行人方位角[13-14]。
如圖3所示,通過低通濾波器濾除磁力計信號噪聲,然后通過磁力信號和陀螺儀信號加權(quán)得到行人的方位角θ。
θ=αθr+(1-α)θab
(4)
式中:θr是手機相對地球北極方向夾角;θab為陀螺儀絕對角度;α=Δt/(Δt+Tf)補償參數(shù),Tf為低通濾波器濾波時間;Δt為手機信號采樣時間間隔。
圖3 互補濾波器原理
1.1.4 構(gòu)建慣導地磁基準庫
由于地磁信息會隨著手機姿態(tài)的不同而導致數(shù)值不同,如果直接使用手機獲得的數(shù)值構(gòu)建基準庫,將產(chǎn)生較大的誤差。通過相關(guān)研究可知[15],地磁信息可以通過標準轉(zhuǎn)換公式進行轉(zhuǎn)換。本文根據(jù)航天器的姿態(tài)轉(zhuǎn)換模型為基礎(chǔ),將手機測得地磁數(shù)值轉(zhuǎn)換到標準坐標軸。
慣導地磁基準庫以路徑段為單位進行劃分,每個路徑段進行標記。路徑段中每個位置點為P(li,x,y,Ux,Uy,Uz,D,T),其中,li為路徑段標號,x,y為利用慣導信息獲得的位置坐標,Ux,Uy,Uz為地磁三軸信息轉(zhuǎn)換后的標準數(shù)值,D為位置點獲取的方位角,T為生成位置點指紋的時間,如表1所示。
表1 慣導地磁基準庫
在線定位算法主要是充分挖掘定位時的確定性信息,然后將確定性信息轉(zhuǎn)化為位置估計的可信度,通過計算得出可信度最高的位置點作為未知節(jié)點的坐標,主要分為路徑匹配、局域地磁基準庫生成、地磁匹配和可信度計算四個步驟。
1.2.1 路徑匹配
(5)
(6)
③位置點距離比較。假設(shè)WD為方向比較權(quán)重,WL為坐標比較權(quán)重,則位置點之間的計算距離為:
(7)
④計算距離標準化。將計算距離標準化為0到1之間的數(shù),得到未知節(jié)點與基準庫位置點的相似度:
(8)
1.2.2 局域地磁基準庫生成
為減少計算量,消除由于地磁波動導致的數(shù)值誤差,在求得路徑點相似度集合后,通過實際路徑l′對基準庫中的n個慣導路徑段l1,l2,l3,…,li,…,ln進行路徑的相似度計算,根據(jù)相似度對路徑進行聚類,再根據(jù)聚類結(jié)果在慣導地磁基準庫中篩選出相似度最高的若干個路徑構(gòu)成局域地磁基準庫。
①將實測路徑中位置點與基準庫中位置點相似度累加,得出實測路徑與基準庫路徑的計算距離:
(9)
②計算距離標準化,將計算距離標準化為0到1之間的數(shù),得到路徑相似度:
(10)
③采用ε-近鄰集[16]法進行路徑段的快速聚類。
ε-近鄰集:給定近鄰閾值,對于軌跡段li,如果存在軌跡段(lj)(i≠j),滿足SSIM(li,lj)≤ε,則稱lj屬于li的ε-近鄰集。使用ε-近鄰集聚類方法,獲得相似路徑集合,生成局域地磁基準庫。
1.2.3 地磁匹配
利用平均平方差法(MSD)[8],對局域地磁基準庫中的地磁進行匹配,則地磁匹配相關(guān)函數(shù)D(u,v)為:
(11)
式中:Nuv表示基準圖中位置(u,v)上的N維特征向量;m表示實時測量的N維特征向量;N表示相關(guān)數(shù)據(jù)的總點數(shù);Nuv+i表示基準數(shù)據(jù)庫的位置(u,v+i)上的特征量,mi表示實時測量的第i個特征量。
根據(jù)MSD計算出未知節(jié)點與基準庫中節(jié)點的平均平方差,假設(shè)總共有k個點,通過標準化操作,將結(jié)果轉(zhuǎn)換為0-1之間的數(shù):
(12)
1.2.4 可信度計算
慣導信息的可信度由路徑匹配計算得到相似度表示,地磁信息的可信度由地磁匹配計算得到相似度表示,基于可信度的聯(lián)合定位求得總的位置點相似度:
(13)
式中:WP和WM分別為路徑匹配和地磁匹配求得可信度所占的權(quán)重,是通過實驗訓練得到的經(jīng)驗值。將路徑點相似度與地磁相似度加權(quán)求和,根據(jù)計算結(jié)果找出與基準庫中相似度最高的點,即為最終位置估計點。
當在定位區(qū)域內(nèi)存在如WIFI等其他確定性信息時,可將這些信息融合到可信度計算中,增加定位的穩(wěn)定性和提高定位的精度。在線定位算法流程圖如圖4所示。
圖4 在線定位算法流程圖
通過前期的理論研究,項目組設(shè)計出一套以Android手機為終端的室內(nèi)定位系統(tǒng)。系統(tǒng)采用云計算平臺作為數(shù)據(jù)存儲和計算平臺,具備離線慣導地磁信息采集和在線定位功能。為驗證本文提出算法的效果,項目組把基于GINPC算法的室內(nèi)定位系統(tǒng)在真實的學生公寓中進行了實驗測試。
實驗選擇在人口密集的學生公寓中進行,整個學生公寓分為A,B,C三棟,三棟分別通過走廊進行連接,實驗選取一層樓作為實驗環(huán)境,每層有54間房子。實驗共采集11個軌跡段,每個軌跡段約15 m,生成慣導地磁基準庫,并在實驗區(qū)域隨機行走,記錄室內(nèi)定位的整個過程,其中實驗應用系統(tǒng)和實驗場景圖如圖5所示。
圖5 實驗應用系統(tǒng)和實驗場景平面圖
在實驗區(qū)域?qū)?1個軌跡段進行分段采集地磁、慣導坐標和方位角等信息,建立慣導地磁基準庫。在Android手機中打開采集軟件,輸入初始坐標,勻速行走,到達分段末時停止,完成一段路徑信息的采集。利用此方法進行其他路徑段信息的采集,完成慣導地磁基準庫的數(shù)據(jù)構(gòu)建。
在線階段打開Android手機定位軟件,輸入初始位置點,在采集區(qū)域隨意走動,利用本文提出的GINPC聯(lián)合定位算法進行定位,并實時記錄每次定位結(jié)果,以便接下來進行對比分析。
2.3.1 步長估計有效性檢測
為了驗證行人步長估計模型的有效性,通過模型的訓練獲得訓練參數(shù),對步長模型進行實驗驗證,每次行走20步,以不同的路徑進行10組實驗,如圖6所示,縱坐標為每組實驗實際行走的平均步長和通過步長模型預測得出的步長,橫坐標為測試實驗數(shù)據(jù)組數(shù)。
圖6 步長估計實驗結(jié)果圖
根據(jù)上述實驗結(jié)果,可以對步長實驗結(jié)果做一個統(tǒng)計。由表2可知,在不同參數(shù)下,60%的步長估計誤差在0.02 m左右,80%的步長估計誤差在0.05 m以內(nèi),步長估計的平均誤差為0.04 m??梢钥闯?步長估計模型精度較高,滿足慣導信息的有效性要求。
表2 步長估計實驗結(jié)果
2.3.2 慣導地磁基準庫有效性檢測
標準地磁基準庫通過對區(qū)域進行網(wǎng)格劃分來測量構(gòu)建,需要進行費時費力的網(wǎng)格劃分,但具有較為準確的優(yōu)勢。本文提出的慣導地磁基準庫是基于路徑段的慣導測量來構(gòu)建,只需要路徑段測量即可完成。如圖7所示,對學生公寓進行地磁基準庫構(gòu)建時,慣導地磁基準庫與標準地磁基準庫所獲得的地磁信息大致相同。
圖7 相同路徑地磁信息對比
利用以上兩種方法獲得離線基準庫后,在在線階段使用傳統(tǒng)定位方法進行定位實驗,來比較定位精度。如圖8所示,使用標準地磁基準庫和慣導地磁基準庫的平均定位誤差分別為2.3 m和2.1 m。慣導地磁基準庫在保證快速獲取地磁基準庫的基礎(chǔ)上也保證了地磁信息的有效性。
圖8 定位實驗誤差
2.3.3 GINPC定位算法實驗與對比分析
在以上所選實驗環(huán)境內(nèi)進行實驗,比較本文方法、傳統(tǒng)地磁定位和慣導輔助地磁定位[3]的定位性能。如圖9所示,選取實驗定位測試中的一段測試路徑進行比較,紅色三角形為真實行走路徑,青色圓形為慣導輔助地磁獲得路徑,藍色菱形為GINPC定位獲得路徑,從圖中可以看出,GINPC定位算法獲得路徑更加接近真實路徑。
圖9 不同定位方法路徑對比圖
如圖10所示,三種定位方法都能保證較好的定位精度,但是傳統(tǒng)地磁定位和慣導輔助地磁定位由于確定性信息比較單一,存在較大的偶然誤差,而GINPC定位算法具有較好的定位穩(wěn)定性。
圖10 定位結(jié)果對比圖
如圖11所示,GINPC定位算法達到了85%情況下定位誤差在2 m以內(nèi),而其他兩種方法的2 m內(nèi)的誤差百分比分別為65%和60%。由表4可以得知GINPC定位算法對比傳統(tǒng)地磁定位和慣導輔助地磁定位的平均誤差分別減少了46.7%和40%。慣導輔助地磁定位縮短了87%的定位時間,GINPC定位算法在增加了確定性信息的比較計算同時,縮短了59%的定位時間,保證了定位時間不過長。實驗結(jié)果表明通過將地磁與慣導的確定性信息進行融合,可以有效的提高室內(nèi)定位精度。
圖11 定位誤差百分比圖
表4 定位結(jié)果
本文提出了一種快速構(gòu)建慣導地磁基準庫的方法,并提出了基于可信度的聯(lián)合定位算法。該算法離線階段無需劃分網(wǎng)格,直接采集數(shù)據(jù)構(gòu)建基準庫,在線階段融合慣導和地磁確定性信息,通過可信度計算位置估計點。實驗結(jié)果表明,本文算法有效縮短了離線階段基準庫的構(gòu)建時間并提高了室內(nèi)定位的精度,具有較好的穩(wěn)定性和普適性。同時,在商場、醫(yī)院等場合內(nèi),如果有其他已存在的確定性信息時,可以通過對可信度算法擴展的方式融合更多的確定性信息,提高定位系統(tǒng)的定位精度和穩(wěn)定性。