徐龍陽,鄭增威,孫 霖*,霍梅梅
(安徽理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,安徽 淮南 232001)
基于位置的信息服務(wù)LBS(Location Based Services)依賴于提供可靠、精確、實(shí)時(shí)的用戶位置信息。典型的LBS應(yīng)用有導(dǎo)航、危險(xiǎn)環(huán)境救援[1]、外賣服務(wù)、位置分享交友等。作為全球最大的定位系統(tǒng)GPS(Global Positioning System)提供的LBS服務(wù),極大地方便了人們的日常生活。人們的大部分時(shí)間是在室內(nèi)環(huán)境下度過的,由于該環(huán)境下無法有效感測(cè)到衛(wèi)星信號(hào),GPS定位系統(tǒng)并不能提供足夠精度的位置信息來滿足人們服務(wù)需求[2]。因此,有關(guān)室內(nèi)定位技術(shù)IPS(Indoor Position Service)已經(jīng)受到人們普遍關(guān)注。各種室內(nèi)定位技術(shù)不斷涌現(xiàn),如紅外線定位、超聲波定位、WIFI定位[3]、射頻識(shí)別RFID(Radio Frequency Identification)[4]定位、超寬帶UWB(Ultra Wideband)定位[5]等,然而這些定位技術(shù)普遍依賴于特定設(shè)備支持,各自具有一定局限性,難以實(shí)現(xiàn)廣泛推廣應(yīng)用。
如今,隨著與人們?nèi)粘I盥?lián)系緊密的智能手機(jī)廣泛普及,越來越多的智能手機(jī)內(nèi)嵌多種傳感器(如加速度計(jì)、陀螺儀、磁力計(jì)等),這些傳感器能提供豐富的行人運(yùn)動(dòng)信息。行人航位推算PDR(Pedestrian Dead Reckoning)是一種利用手機(jī)內(nèi)嵌多種傳感器采集的運(yùn)動(dòng)信息進(jìn)行行人室內(nèi)定位的技術(shù)。該技術(shù)通過利用行人初始的位置、行走的距離和方向信息,推算用戶在任意時(shí)刻的位置信息,無需額外的設(shè)備支持。但由于人們行走的隨意性、手握手機(jī)的方式多樣性以及傳感器測(cè)量的不精確性,使得基于智能手機(jī)的定位技術(shù)存在誤差累積、能量消耗等問題需要解決。
BP神經(jīng)網(wǎng)絡(luò)是一種多層的前饋神經(jīng)網(wǎng)絡(luò),具有理論成熟、結(jié)構(gòu)簡(jiǎn)單,較強(qiáng)的非線性映射能力等優(yōu)勢(shì),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)之一。針對(duì)行人行走過程中的隨意性運(yùn)動(dòng)對(duì)步數(shù)、步長(zhǎng)估計(jì)影響,提出一種基于BP神經(jīng)網(wǎng)絡(luò)模型預(yù)測(cè)行人行走距離的方法。為降低傳感器漂移對(duì)方向估計(jì)的影響,一種微航向角融合算法被提出,以獲得行人行走方向精確估計(jì)。結(jié)合行人行走的距離預(yù)測(cè)和方向估計(jì),最終實(shí)現(xiàn)行人位置推算。
行人航位推算(PDR)是目前比較流行的基于智能手機(jī)內(nèi)嵌多種傳感器實(shí)現(xiàn)定位的技術(shù),PDR算法根據(jù)加速度計(jì)、陀螺儀、磁力計(jì)等慣性傳感器采集的數(shù)據(jù)實(shí)現(xiàn):步數(shù)檢測(cè),步長(zhǎng)估計(jì),方向估計(jì),在已知行人初始位置的情況下,能夠計(jì)算行人在任意時(shí)刻的位置[6]。步數(shù)檢測(cè)和步長(zhǎng)估計(jì)可以通過加速度計(jì)數(shù)據(jù)和相應(yīng)的步長(zhǎng)公式完成,方向估計(jì)利用陀螺儀、磁力計(jì)或一些融合算法如卡爾曼濾波KF(Kalman Filter)等[7]計(jì)算得到。近些年來,國(guó)內(nèi)外學(xué)者對(duì)該技術(shù)進(jìn)行大量研究。Huang Baoqi等人[8]用低通濾波(Low-pass filter)來處理傳感器采集的數(shù)據(jù),減少短時(shí)間的干擾和偏差,并根據(jù)垂直角速度生成的步態(tài)循環(huán)特征進(jìn)行步數(shù)有效檢測(cè),無視手機(jī)放置姿態(tài)的影響,一種基于零速度更新ZUPT(Zero Velocity Updata)的偏差校準(zhǔn)算法被用來校準(zhǔn)垂直加速度和水平角速度,從而得到精確的步長(zhǎng)計(jì)算和方向估計(jì)。Tian Zengshan等人[9]通過三軸加速度計(jì)采集的數(shù)據(jù)進(jìn)行有效步數(shù)檢測(cè)、不同人的步長(zhǎng)估計(jì)以及擴(kuò)展的卡爾曼濾波EKF(Extended Kalman filter)融合加速度計(jì)、陀螺儀及磁力計(jì)計(jì)算的角度來估算行人的行走方向,實(shí)現(xiàn)精確、可靠、持續(xù)的定位追蹤。
也有一些學(xué)者將機(jī)器學(xué)習(xí)模型引用到PDR算法中,用來提高定位精度,如Qian Jiuchao等人[10]根據(jù)行人的不同運(yùn)動(dòng)狀態(tài)提出一種自適應(yīng)步長(zhǎng)的估計(jì)算法,并將主成分分析PCA(Principal Component Analysis)應(yīng)用到加速度在水平面上的分量得到行人行走的方向,從而降低了不同的手機(jī)姿態(tài)對(duì)行人行走的方向的影響。為消除手機(jī)里傳感器的漂移影響,室內(nèi)地圖和粒子濾波PF(Particle Filter)被使用,從而保證了定位的精度和可靠性。Zhou Baoding等人[11]將行人的行走過程中的幾個(gè)特殊地點(diǎn)的活動(dòng)如:拐彎、乘電梯、走樓梯等組成一個(gè)活動(dòng)序列,形成一個(gè)室內(nèi)路徑網(wǎng)絡(luò),定位時(shí)用隱馬爾科夫模型HMM(Hidden Markov Model)匹配室內(nèi)路徑網(wǎng)絡(luò),得到幾個(gè)最有可能的地點(diǎn),最終實(shí)現(xiàn)用戶位置估計(jì)。
此外,一些融合定位技術(shù)被提出,單純的PDR定位技術(shù)由于誤差累積和不精確的傳感器測(cè)量存在,影響定位精度。融合定位技術(shù)能有效降低PDR技術(shù)的累積誤差,常見的融合定位技術(shù)有WIFI[12]、地磁[13]、室內(nèi)地圖[14]以及地標(biāo)[15]等,融合定位技術(shù)的應(yīng)用提高了定位精度,但也增加了額外的定位成本。
針對(duì)基于加速度計(jì)采集的傳感器數(shù)據(jù)進(jìn)行步數(shù)檢測(cè)、步長(zhǎng)估計(jì),本文將BP神經(jīng)網(wǎng)絡(luò)模型引入PDR算法中,用加速度計(jì)采集的原始數(shù)據(jù)和對(duì)應(yīng)的移動(dòng)距離數(shù)據(jù)訓(xùn)練BP神經(jīng)網(wǎng)絡(luò),將訓(xùn)練好的網(wǎng)絡(luò)模型預(yù)測(cè)行人的移動(dòng)距離,以降低傳統(tǒng)PDR算法里不精確的步數(shù)檢測(cè)、步長(zhǎng)估計(jì)計(jì)算行人移動(dòng)距離帶來的誤差。根據(jù)行人行走步伐的連續(xù)性特點(diǎn)和同一采樣周期傳感器輸出之間的相關(guān)性,提出一種微航向角融合的方向估計(jì)算法,通過將當(dāng)前采樣周期陀螺儀、磁力計(jì)計(jì)算出的方向角和前一采樣周期的方向角進(jìn)行微航向角融合,獲得行人行走方向的精確估算。
本文的定位方法流程如圖1所示,由行人移動(dòng)距離預(yù)測(cè)、移動(dòng)方向估計(jì)、用戶定位三部分組成,第1部分通過手機(jī)內(nèi)嵌的加速度計(jì)采集的加速度數(shù)據(jù)和對(duì)應(yīng)的真實(shí)移動(dòng)距離數(shù)據(jù)構(gòu)成訓(xùn)練樣本來訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)模型,網(wǎng)絡(luò)模型訓(xùn)練好后,再用測(cè)試樣本測(cè)試已訓(xùn)練好的網(wǎng)絡(luò)模型,得到行人移動(dòng)距離的預(yù)測(cè)。第2部分利用當(dāng)前采樣周期的陀螺儀、磁力計(jì)采集的傳感器數(shù)據(jù)計(jì)算行人行走的方向角和前一采樣周期的方向角經(jīng)過提出的微航向角融合算法處理,得到行人精確的航向。第3部分結(jié)合前兩個(gè)部分得到的行人移動(dòng)距離和方向,實(shí)現(xiàn)用戶室內(nèi)位置的推算。
圖1 定位方法流程圖
行人航位推算里因用戶不同的手機(jī)放置方式和使用習(xí)慣會(huì)產(chǎn)生一些傾斜角,為消除手機(jī)傾斜角的影響,需要周期性的將智能手機(jī)坐標(biāo)系轉(zhuǎn)換到地球坐標(biāo)系。地球坐標(biāo)系是以地理經(jīng)緯度為坐標(biāo)進(jìn)行位置確定的絕對(duì)坐標(biāo)系A(chǔ)CS(Absolute Coordinate System),它的X軸為沿地球表面水平向東,Y軸為沿地球表面水平向北,Z軸則為垂直于地球表面向外指向天空。智能手機(jī)坐標(biāo)系則是以用戶身上手機(jī)為基準(zhǔn)的相對(duì)坐標(biāo)系RCS(Relative Coordinate System),其x軸指向手機(jī)屏幕的右端,y軸指向屏幕上端,z軸垂直于手機(jī)屏幕。圖2中,智能手機(jī)坐標(biāo)系Oxyz通過分別繞x、y、z軸旋轉(zhuǎn)角度θ、φ、φ轉(zhuǎn)換到地球坐標(biāo)系OXYZ。
圖2 智能手機(jī)坐標(biāo)系及轉(zhuǎn)換
坐標(biāo)系轉(zhuǎn)換過程中一個(gè)代表性方法是歐拉角[16],該方法以一定旋轉(zhuǎn)順序得到3個(gè)單軸旋轉(zhuǎn)矩陣如下:
(3)
式中:θt是t時(shí)刻繞x軸旋轉(zhuǎn)的角度,稱為俯仰角,φt是t時(shí)刻繞y軸旋轉(zhuǎn)的角度,稱為橫滾角,φt是t時(shí)刻繞z軸旋轉(zhuǎn)的角度,稱為航向角,3個(gè)單軸旋轉(zhuǎn)矩陣相乘得到最終的旋轉(zhuǎn)矩陣Rt如下:
(4)
(5)
BP神經(jīng)網(wǎng)絡(luò)是一種前饋神經(jīng)網(wǎng)絡(luò),理論發(fā)展比較成熟,是目前人工神經(jīng)網(wǎng)絡(luò)里應(yīng)用最廣泛的算法之一[17]。本文里BP神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)如圖3所示,分為三層的網(wǎng)絡(luò)結(jié)構(gòu),即輸入層、隱層和輸出層。輸入層輸入是第is內(nèi)三軸加速度計(jì)在x、y、z軸上采集的原始加速度數(shù)據(jù)和對(duì)應(yīng)的行人真實(shí)移動(dòng)距離數(shù)據(jù)Si,輸出層輸出每秒移動(dòng)距離預(yù)測(cè)值,隱層的神經(jīng)元數(shù)目用試觸法確定合適的神經(jīng)元個(gè)數(shù)。
圖3 BP神經(jīng)網(wǎng)絡(luò)模型
在行人航位推算算法里是通過加速度計(jì)數(shù)據(jù)計(jì)算行人的有效步和步長(zhǎng)實(shí)現(xiàn)行人移動(dòng)距離計(jì)算,因此我們將加速度計(jì)采集的三軸數(shù)據(jù)和真實(shí)每秒移動(dòng)距離數(shù)據(jù)作為BP神經(jīng)網(wǎng)絡(luò)模型的樣本數(shù)據(jù)。考慮到不同的人、不同的手機(jī)之間采集的數(shù)據(jù)差異性影響,對(duì)輸入數(shù)據(jù)進(jìn)行歸一化處理,并劃分合適數(shù)量的訓(xùn)練集和測(cè)試集,最終利用訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)模型來預(yù)測(cè)行人每秒的移動(dòng)距離。
為進(jìn)一步說明該方法的預(yù)測(cè)精度,本文還進(jìn)行每秒距離預(yù)測(cè)對(duì)比試驗(yàn)。傳統(tǒng)PDR算法距離估計(jì)是通過估計(jì)行人有效步數(shù)和步長(zhǎng)得到的,為了方便對(duì)比,將步長(zhǎng)進(jìn)行映射,得到第is內(nèi)行人行走的距離。步長(zhǎng)計(jì)算方法選擇步頻和加速度方差模型[18]、步頻模型[19]和常數(shù)模型[20]:
Li=αfi+βvi+γ
(6)
Li=αfi+β
(7)
Li=c
(8)
在式(6)~式(8)中,fi是第i步的步頻,vi是第i步的加速度方差,{α、β、γ}是模型系數(shù),c是固定步長(zhǎng)。
行人行走過程中,1 s之內(nèi),會(huì)有多個(gè)有效步,用步長(zhǎng)公式計(jì)算這些有效步的步長(zhǎng),并進(jìn)行映射,得到1 s內(nèi)行人移動(dòng)的相對(duì)距離??紤]到當(dāng)行人類似直線行走時(shí),1 s內(nèi)多個(gè)有效步的方向變化對(duì)映射的移動(dòng)距離影響不大,因此,1 s內(nèi)行人移動(dòng)的相對(duì)距離計(jì)算為該秒內(nèi)各個(gè)有效步長(zhǎng)乘以該步在該秒內(nèi)所占的時(shí)間與該步所花總的時(shí)間的比值后的累加,公式如下:
Si′=LjΔtj+Lj+1Δtj+1
(9)
Δtj=ts/tj
(10)
本文設(shè)計(jì)了一種微航向角融合的方向估計(jì)MHAF(Micro-Heading Angle Fusion)算法,以獲得行人行走方向的精確估計(jì)。
2.4.1 算法提出
由于室內(nèi)環(huán)境復(fù)雜多變,存在多種干擾源,智能手機(jī)內(nèi)嵌多種慣性傳感器靈敏度有限,傳感器采集的數(shù)據(jù)易受干擾。因此,依靠單一傳感器采集的數(shù)據(jù)并不能保證數(shù)據(jù)真實(shí)性,需要多種傳感器相互融合、彼此佐證。本文依據(jù)行人行走步伐的連續(xù)性特點(diǎn)和傳感器輸出之間的相關(guān)性,將3種微航向角:前一采樣周期方向角(prev)、當(dāng)前采樣周期陀螺儀獲得方向角(gyro)和當(dāng)前采樣周期磁力計(jì)得到的方向角(mag),根據(jù)區(qū)分各類情況、選取可靠的傳感器源來融合求解航向角,使航向角更接近行人實(shí)際行走的方向。
2.4.2 算法實(shí)現(xiàn)
(11)
(12)
(13)
(14)
(15)
微航向角融合(MHAF)算法通過將行人行走過程分類成不同的情況,根據(jù)分類結(jié)果來選取可靠的傳感器源,再利用3種微航向角進(jìn)行加權(quán)融合估算,最終得到行人行走的方向角可靠估算。分類融合關(guān)系示意圖如圖4所示,具體微航向角融合算法如表1所示。
圖4 分類選擇傳感器源示意圖
表1 MHAF算法
表1中部分參數(shù)如下:
wpgm=(wprev+wmag+wgyro)-1
(16)
wpg=(wprev+wgyro)-1
(17)
wgm=(wgyro+wmag)-1
(18)
(19)
(20)
2.4.3 算法分析
行人直線行走時(shí),由于慣性、連續(xù)性特點(diǎn),前一采樣周期的方向角對(duì)當(dāng)前采樣周期的參考意義較大,拐彎的時(shí)候參考意義相對(duì)較小。因此情況一、三中傳感器源有prev。傳感器輸出相似時(shí),可以判斷陀螺儀、磁力計(jì)相對(duì)受干擾較小,反之受干擾較大,又根據(jù)陀螺儀適合短時(shí)間測(cè)量、磁力計(jì)適合長(zhǎng)時(shí)間工作等特點(diǎn),得出圖4所示的分類選擇傳感器源結(jié)果。4種情況對(duì)行人實(shí)際行走過程的直線和拐彎、傳感器輸出穩(wěn)定性有很好地區(qū)分,依據(jù)不同情況選擇合適傳感器源,保證方向角計(jì)算的可靠性。
室內(nèi)環(huán)境中,在行人初始位置確定的情況下,任意時(shí)刻的位置坐標(biāo)信息可由行人移動(dòng)距離和移動(dòng)方向計(jì)算得到:
(21)
在本文中,我們使用的數(shù)據(jù)集來自2015年在日本大阪舉行的“UbiComp/ISWC 2015 PDRhallenge”競(jìng)賽[21]。數(shù)據(jù)集統(tǒng)計(jì)如表2所示,每條路線上采集的完整數(shù)據(jù)為一條路線數(shù)據(jù)。采集數(shù)據(jù)的智能手機(jī)有7種,都內(nèi)嵌有三軸加速度計(jì)、三軸陀螺儀、三軸磁力計(jì)及氣壓計(jì)等4種傳感器,采樣頻率分別為200 Hz、200 Hz、50 Hz、40 Hz。由于原始數(shù)據(jù)集采集并不均勻,我們只使用路線一上采集的數(shù)據(jù)作為本文的實(shí)驗(yàn)數(shù)據(jù)集(該種情況下的數(shù)據(jù)量相對(duì)較多),設(shè)計(jì)兩種實(shí)驗(yàn)方案:方案1是用同一種手機(jī)與不同的人之間采集的數(shù)據(jù)來訓(xùn)練、測(cè)試,手機(jī)是Nexus5。方案2是用不同的手機(jī)和不同的人之間采集的數(shù)據(jù)來訓(xùn)練、測(cè)試。方案1、方案2采集的路線數(shù)據(jù)量分別是58條、63條。
表2 數(shù)據(jù)集統(tǒng)計(jì)
行人行走路線區(qū)域平面圖(18 m×17.5 m)如圖5所示,包括4個(gè)直角,四條邊,圓點(diǎn)是行人起始的位置,順時(shí)針行走,再回到起始的位置結(jié)束。每一條路線數(shù)據(jù)采集過程中,由兩位志愿subject、operator完成,手機(jī)由subject放于胸前采集傳感器數(shù)據(jù),operator伴隨著subject,并通過按日志按鈕生成日志數(shù)據(jù)得到subject每秒移動(dòng)的相對(duì)坐標(biāo)數(shù)據(jù)。
圖5 路線行走平面圖
實(shí)驗(yàn)前,需要對(duì)傳感器采集的數(shù)據(jù)進(jìn)行歸一化預(yù)處理,我們將每條路線數(shù)據(jù)用m×n的二維矩陣表示,每一行數(shù)據(jù)表示為一個(gè)樣本。考慮到不同人、不同手機(jī)之間差異化的影響,需逐行地對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理,將每一行數(shù)據(jù)分別歸一化到區(qū)間[-1,1]內(nèi),當(dāng)矩陣每一行值都不全相等時(shí),歸一化計(jì)算公式是:
y=(ymax-ymin)(x-xmin)/(xmax-xmin)+ymin
(22)
當(dāng)某行的數(shù)據(jù)全部相同,此時(shí)xmax=xmin,除數(shù)為0,則y=ymin。其中,x為需要?dú)w一化的數(shù)據(jù),y是處理后的結(jié)果,ymax、ymin默認(rèn)值為-1和1。
在對(duì)比試驗(yàn)中,為除去數(shù)據(jù)采集過程中的噪聲,計(jì)算行人有效步數(shù),還需要對(duì)加速度數(shù)據(jù)進(jìn)行中值濾波處理,濾波區(qū)間設(shè)置為25。
3.3.1 行人行走距離預(yù)測(cè)
根據(jù)已有數(shù)據(jù)集設(shè)計(jì)方案1、方案2,并分別用50、8,55、8條路線數(shù)據(jù)來訓(xùn)練、測(cè)試網(wǎng)絡(luò)模型。BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值是隨機(jī)初始化為[-1,1]區(qū)間的隨機(jī)數(shù),隱層神經(jīng)元數(shù)初始為9個(gè),訓(xùn)練時(shí)根據(jù)預(yù)測(cè)的平均誤差大小來不斷調(diào)整至合適的隱層神經(jīng)元數(shù)目,兩個(gè)方案的預(yù)測(cè)誤差結(jié)果如表3、表4所示。
表3 方案1每秒距離預(yù)測(cè)誤差
表4 方案2每秒距離預(yù)測(cè)誤差
兩種實(shí)驗(yàn)方案每秒距離預(yù)測(cè)結(jié)果分析,總體上,兩種方案平均誤差只有0.092 8 m,其中方案1總體平均誤差達(dá)到0.089 9 m,方案2是0.1016 m。兩個(gè)方案里最高平均誤差也僅有0.126 8 m,表明了BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)方法的可靠性。
從兩個(gè)方案里選擇最接近平均誤差的兩個(gè)人進(jìn)行對(duì)比實(shí)驗(yàn),ID分別是03、12。在整個(gè)行走過程中,兩個(gè)人各自所花時(shí)間分別是52 s和64 s,每秒距離預(yù)測(cè)誤差累積分布分別如圖6、圖7所示??梢钥闯?方案1里,當(dāng)預(yù)測(cè)的每秒距離誤差小于0.1 m時(shí),用BP神經(jīng)網(wǎng)絡(luò)模型,一共有33 s,占整體時(shí)間63.5%,步頻和加速度方差模型有14 s,占總體時(shí)間26.9%,步頻模型有24 s,占整體時(shí)間的46.2%,常數(shù)模型有28 s,占總體時(shí)間53.8%。方案2里,當(dāng)預(yù)測(cè)的每秒距離誤差小于0.1 m時(shí),用BP神經(jīng)網(wǎng)絡(luò)模型,一共有39 s,占整體時(shí)間60.1%,步頻和加速度方差模型有22 s,占總體時(shí)間34.4%,步頻模型有10 s,占整體時(shí)間的15.6%,常數(shù)模型有14 s,占總體時(shí)間21.9%,兩個(gè)方案里提出的BP神經(jīng)網(wǎng)絡(luò)模型預(yù)測(cè)精度都明顯高于其他3種步長(zhǎng)計(jì)算模型。
圖6 方案1中不同方法每秒距離預(yù)測(cè)誤差的CDF圖
圖7 方案2中不同方法每秒距離預(yù)測(cè)誤差CDF圖
文中還進(jìn)行了數(shù)據(jù)歸一化和未歸一化預(yù)測(cè)行人移動(dòng)距離對(duì)比實(shí)驗(yàn),表5、表6分別是不同人之間、不同手機(jī)之間實(shí)驗(yàn)的預(yù)測(cè)結(jié)果比較,不同人之間用歸一化數(shù)據(jù)預(yù)測(cè)的行人移動(dòng)距離的平均誤差是0.095 5 m,方差是0.003 1,未歸一化數(shù)據(jù)預(yù)測(cè)的平均誤差是0.105 8 m,方差是0.003 7。不同手機(jī)之間用歸一化數(shù)據(jù)預(yù)測(cè)的平均誤差是0.094 m,方差是0.002 5,用未歸一化數(shù)據(jù)預(yù)測(cè)的平均誤差為0.115 m,方差為0.002 9。
由表5、表6可知,用歸一化的數(shù)據(jù)進(jìn)行行人移動(dòng)距離預(yù)測(cè)的總體平均誤差和方差都比未用歸一化的數(shù)據(jù)預(yù)測(cè)精度要高,說明歸一化處理數(shù)據(jù)能夠提高預(yù)測(cè)的精度。
表5 歸一化和未歸一化在不同人數(shù)據(jù)集上預(yù)測(cè)結(jié)果比較
表6 歸一化和未歸一化在不同手機(jī)數(shù)據(jù)集上預(yù)測(cè)結(jié)果比較
3.3.2 行人行走方向估計(jì)
圖8是某個(gè)人單獨(dú)使用陀螺儀、磁力計(jì)和提出的微航向角融算法來計(jì)算行人行走方向與真實(shí)方向的對(duì)比,方向90°的變化表示一個(gè)拐彎。從圖8可以看出用陀螺儀計(jì)算的方向角有較大的累積誤差,尤其是在拐彎處,時(shí)間越長(zhǎng),累積誤差越大。表明陀螺儀適合短時(shí)間的方向計(jì)算。用磁力計(jì)計(jì)算的方向在一些點(diǎn)具有明顯的波動(dòng)性,因?yàn)榇帕τ?jì)在該點(diǎn)易受到一些磁性物質(zhì)、電子設(shè)備等物質(zhì)干擾。提出的微航向角融合算法計(jì)算的方向基本與真實(shí)的方向一致。表明該算法能夠有效降低單獨(dú)使用陀螺儀、磁力計(jì)帶來的誤差。
圖8 不同方法計(jì)算的行走方向與真實(shí)方向?qū)Ρ?/p>
圖9是3種不同方法計(jì)算的方向與真實(shí)方向之間誤差,圖中出現(xiàn)的波峰表明是在拐彎處,陀螺儀在經(jīng)歷3個(gè)拐彎處產(chǎn)生較大累積誤差。在整個(gè)行走過程中,磁力計(jì)在多處受到干擾,出現(xiàn)多個(gè)波峰。提出的微航向角融合算法總體上保持較小的波動(dòng),平均方向誤差僅有9.27°,而陀螺儀是29.28度,磁力計(jì)是15.78度,后兩者誤差都明顯高于微航向角融合算法。
圖9 不同方法計(jì)算的行走方向與真實(shí)方向的誤差對(duì)比
3.3.3 用戶定位估計(jì)
由行人移動(dòng)的距離和方向以及初始位置可以推算行人在室內(nèi)行走的軌跡,移動(dòng)的距離統(tǒng)一用BP神經(jīng)網(wǎng)絡(luò)模型預(yù)測(cè)得到,方向分別使用陀螺儀、磁力計(jì)和提出的微航向角融合算法3種方法來計(jì)算。初始位置設(shè)置為(0,0)。表7和表8分別是方案1、方案2里使用PDR(BP+陀螺儀)、PDR(BP+磁力計(jì))和PDR(BP+微航向角融合)方法來估計(jì)行人行走軌跡的平均定位誤差。兩個(gè)表格一共統(tǒng)計(jì)了16個(gè)人的定位誤差,總體來看,當(dāng)定位誤差在1 m~4 m的范圍內(nèi),用PDR(BP+微航向角融合)方法定位有12個(gè)人,占總?cè)藬?shù)的75%,而PDR(BP+陀螺儀)方法有7個(gè)人,占總?cè)藬?shù)43.75%,PDR(BP+磁力計(jì))方法僅有4個(gè)人,占總?cè)藬?shù)25%。可以看出,用PDR(BP+微航向角融合)方法的定位誤差分布比較集中,大部分集中在1~4 m范圍內(nèi)。
表7 方案1不同方法的定位誤差
表8 方案2不同方法的定位誤差
圖10是某個(gè)人用不同的定位方法預(yù)測(cè)的軌跡與真實(shí)軌跡對(duì)比圖,表明通過PDR(BP+陀螺儀)得到的行人行走軌跡具有較大的累積誤差,通過PDR(BP+磁力計(jì))磁力計(jì)得到的行走軌跡因受到干擾具有一定的波動(dòng)性偏差,而利用PDR(BP+微航向角融合)得到的行走軌跡與真實(shí)軌跡相近,有效彌補(bǔ)了陀螺儀、磁力計(jì)計(jì)算各自帶來的缺陷,實(shí)現(xiàn)較好的定位效果。
圖11是不同的定位方法的定位誤差累積分布圖,提出的PDR(BP+微航向角融合)方法定位性能最佳,小于3 m的定位誤差達(dá)到72.05%,整個(gè)行走過程的平均誤差僅有2.16 m。
圖10 不同的定位方法預(yù)測(cè)的軌跡與真實(shí)軌跡對(duì)比
圖11 不同定位方法的定位誤差CDF圖
本文提出一種基于BP神經(jīng)網(wǎng)絡(luò)和智能手機(jī)內(nèi)嵌多傳感器融合PDR室內(nèi)定位方法,利用BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)行人每秒移動(dòng)距離,通過提出一種微航向角融合算法估計(jì)行人行走方向,最終實(shí)現(xiàn)行人位置精確推算。行人行走距離預(yù)測(cè)實(shí)驗(yàn)結(jié)果表明,同一種手機(jī)、不同的人方案中總體平均誤差達(dá)到0.089 9 m/s,不同的手機(jī)、不同的人方案里是0.101 6 m。兩個(gè)方案里最高平均誤差也僅有0.126 8 m,顯示了BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)行人移動(dòng)距離方法的可靠性。每秒移動(dòng)距離對(duì)比實(shí)驗(yàn)結(jié)果表明,BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的精度明顯高于其他3種步長(zhǎng)模型計(jì)算出的精度。歸一化與未歸一化數(shù)據(jù)預(yù)測(cè)行人行走距離對(duì)比實(shí)驗(yàn)結(jié)果表明,歸一化數(shù)據(jù)能夠提高預(yù)測(cè)精度。方向估計(jì)實(shí)驗(yàn)結(jié)果表明,陀螺儀計(jì)算出的方向角在長(zhǎng)時(shí)間內(nèi)有較大的累計(jì)誤差,平均的累積誤差達(dá)到29.28°,磁力計(jì)計(jì)算的結(jié)果容易受到室內(nèi)電磁環(huán)境的局部干擾,平均誤差有15.78°,微航向角融合算法能有效降低傳感器漂移影響,得到精確方向估計(jì),平均誤差僅有9.27°。行人軌跡預(yù)測(cè)實(shí)驗(yàn)結(jié)果表明,通過BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的行人移動(dòng)距離和微航向角融合方向估算能夠?qū)崿F(xiàn)較好的定位效果,有12個(gè)人定位誤差保持在1~4 m范圍內(nèi),占總?cè)藬?shù)75%,最好的定位精度平均誤差僅有2.16 m。
微航向角融合算法雖然在一定程度上彌補(bǔ)了陀螺儀、磁力計(jì)各自的缺陷,降低了方向上的誤差,但是融合的精度受限于傳感器的不精確測(cè)量,沒有從傳感器采集的原始數(shù)據(jù)上消除測(cè)量的誤差,因此,未來可以采用先校準(zhǔn)傳感器的測(cè)量誤差,然后結(jié)合卡爾曼濾波等融合算法計(jì)算方向,根本上提高方向的融合精度。
參考文獻(xiàn):
[1] Fink A,Beikirch H. Adding Link Quantity Information to Redundant RF Signal Strength Estimates for Improved Indoor Positioning[C]//Indoor Positioning and Indoor Navigation(IPIN),2012 International Conference on. IEEE,2012:1-6.
[2] 梁韻基,周興社,於志文,等. 普適環(huán)境室內(nèi)定位系統(tǒng)研究[J]. 計(jì)算機(jī)科學(xué),2010,37(3):112-116.
[3] 陳斌濤,劉任任,陳益強(qiáng),等. 動(dòng)態(tài)環(huán)境中的WiFi指紋自適應(yīng)室內(nèi)定位算法[J]. 傳感技術(shù)學(xué)報(bào),2015,28(5):729-738.
[4] Ni L M,Liu Y,Lau Y C,et al. LANDMARC:Indoor Location Sensing Using Active RFID[C]//IEEE International Conference on Pervasive Computing and Communications. IEEE Computer Society,2003:407.
[5] Gezici S,Tian Z,Giannakis G B,et al. Localization via Ultra-Wideband Radios:A Look at Positioning Aspects for Future Sensor Networks[J]. IEEE Signal Processing Magazine,2005,22(4):70-84.
[6] Harle R. A Survey of Indoor Inertial Positioning Systems for Pedestrians[J]. IEEE Communications Surveys and Tutorials,2013,15(3):1281-1293.
[7] 楊增瑞,段其昌,毛明軒,等. 基于磁場(chǎng)指紋輔助的手機(jī)室內(nèi)定位系統(tǒng)[J]. 傳感技術(shù)學(xué)報(bào),2016,29(9):1441-1448.
[8] Huang B,Qi G,Yang X,et al. Exploiting Cyclic Features of Walking for Pedestrian Dead Reckoning with Unconstrained Smartphones[C]//ACM International Joint Conference. ACM,2016:374-385.
[9] Tian Z,Zhang Y,Zhou M,et al. Pedestrian Dead Reckoning for MARG Navigation Using a Smartphone[J]. Eurasip Journal on Advances in Signal Processing,2014,2014(1):65.
[10] Qian J,Ma J,Ying R,et al. An Improved Indoor Localization Method Using Smartphone Inertial Sensors[C]//International Conference on Indoor Positioning and Indoor Navigation. IEEE,2014:1-7.
[11] Zhou B,Li Q,Mao Q,et al. Activity Sequence-Based Indoor Pedestrian Localization Using Smartphones[J]. IEEE Transactions on Human-Machine Systems,2015,45(5):562-574.
[12] Shen L L,Hui W W S. Improved Pedestrian Dead-Reckoning-Based Indoor Positioning by RSSI-Based Heading Correction[J]. IEEE Sensors Journal,2016,16(21):7762-7773.
[13] Ban R,Kaji K,Hiroi K,et al. Indoor Positioning Method Integrating Pedestrian Dead Reckoning with Magnetic Field and WiFi Fingerprints[C]//Eighth International Conference on Mobile Computing and Ubiquitous Networking. IEEE,2015:167-172.
[14] Yoshimi S,Kanagu K,Mochizuki M,et al. PDR Trajectory Estimation Using Pedestrian-Space Constraints:Real World Evaluations[C]//Adjunct Proceedings of the 2015 ACM International Joint Conference on Pervasive and Ubiquitous Computing and Proceedings of the 2015 ACM International Symposium on Wearable Computers. ACM,2015:1499-1508.
[15] Deng Z A,Wang G,Qin D,et al. Continuous Indoor Positioning Fusing WiFi,Smartphone Sensors and Landmarks[J]. Sensors,2016,16(9):1427.
[16] 高偉,奔粵陽,李倩. 捷聯(lián)慣性導(dǎo)航系統(tǒng)初始對(duì)準(zhǔn)技術(shù)[M]. 國(guó)防工業(yè)出版社,2014:2-4.
[17] 郁磊. MATLAB智能算法30個(gè)案例分析[M]. 第2版. 北京:北京航空航天大學(xué)出版社,2015:237-246.
[18] Cho S Y,Park C G. MEMS Based Pedestrian Navigation System[J]. The Journal of Navigation,2006,59(1):135-153.
[19] Sun Z,Mao X,Tian W,et al. Activity Classification and Dead Reckoning for Pedestrian Navigation with Wearable Sensors[J]. Measurement Science and Technology,2009,20(1):015203.
[20] Cho D K,Min M,Lee U,et al. AutoGait:A Mobile Platform That Accurately Estimates the Distance Walked[C]//IEEE International Conference on Pervasive Computing and Communications. IEEE,2010:116-124.
[21] Kaji K,Abe M,Wang W,et al. UbiComp/ISWC 2015 PDR Challenge Corpus[C]//ACM International Joint Conference on Pervasive and Ubiquitous Computing:Adjunct. ACM,2016:696-704.