張 琳,張冬雯,易卿武,黃 璐*,王新健
(1.河北科技大學(xué) 信息科學(xué)與工程學(xué)院,河北 石家莊 050018;2.衛(wèi)星導(dǎo)航系統(tǒng)與裝備技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,河北 石家莊 050081)
近年來,隨著智能化移動(dòng)設(shè)備的普及,基于位置的服務(wù)迅速興起,準(zhǔn)確的定位信息顯得尤為重要。為了解決由于建筑物的遮擋導(dǎo)致GPS信號(hào)衰減嚴(yán)重,無法穿透建筑物的問題,研究人員進(jìn)行了廣泛的探索,例如基于WiFi的定位技術(shù)[1]、射頻識(shí)別技術(shù)[2]、基于超寬帶[3]和藍(lán)牙[4]的定位方法等。然而,這些基于無線定位技術(shù)的方法往往依賴于安裝昂貴的硬件基礎(chǔ)設(shè)施,且消耗大量時(shí)間進(jìn)行預(yù)訓(xùn)練。隨著低成本慣性傳感器技術(shù)的發(fā)展,基于智能手機(jī)的行人航位推算(Pedestrian Dead Reckoning,PDR)算法獲得了越來越多研究者的關(guān)注[5]。它可以通過利用慣性傳感器和航向參考系統(tǒng)[6]所采集的信息計(jì)算出步頻、步長(zhǎng)和航向,從而解算出行人航跡。但由于傳統(tǒng)的PDR技術(shù)仍然存在誤差較大的問題,當(dāng)行人持有手機(jī)進(jìn)行跑步、跳躍和上下樓等復(fù)雜的活動(dòng)時(shí),會(huì)使步頻、步長(zhǎng)和航向角產(chǎn)生較大的累積誤差,進(jìn)而導(dǎo)致定位結(jié)果的精度較低。因此,如何以較低的成本獲取穩(wěn)定、便捷、連續(xù)的室內(nèi)位置服務(wù)仍然是一個(gè)具有挑戰(zhàn)性的難題。
鑒于深度學(xué)習(xí)在自然語言處理、圖像識(shí)別、語義分類等領(lǐng)域的成功應(yīng)用,將其轉(zhuǎn)移到人類活動(dòng)識(shí)別(Human Activity Recognition,HAR)領(lǐng)域是模式識(shí)別的一個(gè)新的研究方向[7-10]。文獻(xiàn)[11]采用注意力機(jī)制與多層卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)結(jié)合的方法來識(shí)別步行、站立、坐著和慢跑等人類活動(dòng)。事實(shí)上,智能手機(jī)中的傳感器不僅可以感知用戶的移動(dòng)行為信息,還可以通過分析計(jì)算獲得行人當(dāng)前的位置信息。但由于PDR算法易產(chǎn)生誤差,故使用其他技術(shù)來糾正軌跡是一種常用的手段。文獻(xiàn)[12]提出了一種融合PDR,WiFi和地圖信息來實(shí)現(xiàn)室內(nèi)行人追蹤的方法,但該方法需要預(yù)先收集WiFi信號(hào)的強(qiáng)度數(shù)據(jù)。對(duì)于一個(gè)魯棒性和準(zhǔn)確性高的PDR系統(tǒng)來說,能夠準(zhǔn)確識(shí)別不同條件下用戶的運(yùn)動(dòng)狀態(tài)至關(guān)重要[13-14]。文獻(xiàn)[15]提出了一個(gè)基于決策樹(DT)的系統(tǒng)來識(shí)別電話姿勢(shì)中的8項(xiàng)活動(dòng),但只關(guān)注了HAR,并沒有提出優(yōu)化傳統(tǒng)PDR算法的方法。
綜上所述,上述研究大都使用機(jī)器學(xué)習(xí)算法進(jìn)行識(shí)別人類活動(dòng)來減少由于用戶活動(dòng)切換導(dǎo)致的步數(shù)檢測(cè)、步長(zhǎng)估計(jì)和航向角錯(cuò)誤的問題,然而很少有研究關(guān)注與利用人類活動(dòng)來優(yōu)化PDR軌跡,以減少累積誤差,達(dá)到更高的實(shí)時(shí)定位精度和提高PDR的魯棒性。因此,本文通過在典型和復(fù)雜的人類活動(dòng)中進(jìn)行識(shí)別并優(yōu)化現(xiàn)有的步數(shù)檢測(cè)和步長(zhǎng)估計(jì)方法,提出一種基于深度學(xué)習(xí)進(jìn)行HAR輔助PDR的定位方法來提高傳統(tǒng)PDR算法的精度。此外,還在智能手機(jī)端進(jìn)行實(shí)時(shí)數(shù)據(jù)的采集,來實(shí)現(xiàn)用戶實(shí)時(shí)的室內(nèi)軌跡定位。
本文提出一種基于深度學(xué)習(xí)進(jìn)行HAR輔助PDR的定位方法,并在智能手機(jī)端進(jìn)行實(shí)時(shí)定位和軌跡推算,如圖1所示。首先,在離線階段,利用智能手機(jī)中的MEMS傳感器(如加速度計(jì)和陀螺儀)采樣,并對(duì)采樣數(shù)據(jù)進(jìn)行缺失填補(bǔ)、窗口滑動(dòng)和濾波等預(yù)處理操作。然后,使用基于小波變換(Wavelet Transform,WT)和CNN結(jié)合的新型深度學(xué)習(xí)網(wǎng)絡(luò)用于進(jìn)行HAR。最后,在線實(shí)時(shí)定位階段,提出了一種基于HAR輔助PDR的定位算法,通過HAR與PDR算法結(jié)合,可以自適應(yīng)地輔助PDR算法進(jìn)行步數(shù)檢測(cè)和步長(zhǎng)估計(jì),并在智能手機(jī)端實(shí)時(shí)推算和更新復(fù)雜人類活動(dòng)模式下的行人位置軌跡。

圖1 系統(tǒng)架構(gòu)Fig.1 System architecture
在數(shù)據(jù)采集過程中,可能會(huì)由于無意識(shí)的身體抖動(dòng)等原因?qū)е聛G失部分?jǐn)?shù)據(jù),所以對(duì)采樣數(shù)據(jù)進(jìn)行預(yù)處理的目的即為填補(bǔ)缺失數(shù)據(jù),并消除干擾和噪聲影響。綜合考慮智能手機(jī)的能耗負(fù)擔(dān)和系統(tǒng)精度,本文將傳感器采樣頻率設(shè)置為100 Hz,用線性插值算法來填補(bǔ)缺失值。
智能手機(jī)內(nèi)置的低成本MEMS傳感器測(cè)量精度較低,輸出的原始信號(hào)噪聲偏大,從而影響后續(xù)HAR模型的分類能力。因此,在進(jìn)行HAR和PDR定位之前,應(yīng)對(duì)傳感器原始數(shù)據(jù)進(jìn)行預(yù)處理以消除干擾噪聲的影響。本文采用截止頻率為wc=0.2π的四階巴特沃斯數(shù)字低通濾波器[16],用于濾除原始信號(hào)的高頻干擾噪聲,其濾波效果如圖2所示。

圖2 經(jīng)過濾波后的傳感器信號(hào)Fig.2 Filtered sensor signal
為了在保持原始數(shù)據(jù)不變的情況下實(shí)現(xiàn)端到端的HAR模型,并最大限度地減少前期的預(yù)處理工作,本文提出的基于深度學(xué)習(xí)網(wǎng)絡(luò)的HAR模型的輸入由經(jīng)過濾波處理后提取的時(shí)間序列數(shù)據(jù)組成。由于每個(gè)活動(dòng)的記錄僅持續(xù)較短的時(shí)間,因此需要使用短的滑動(dòng)窗口來分割獲取更多的測(cè)試數(shù)據(jù)。本文實(shí)驗(yàn)使用的滑動(dòng)窗口固定長(zhǎng)度為64,重疊率為50%,以此進(jìn)行分割智能手機(jī)收集的采樣數(shù)據(jù),獲取更多含有深層特征的樣本數(shù)據(jù),如圖3所示。

圖3 窗口滑動(dòng)分割Fig.3 Sliding window for data splitting
小波(Wavelet)信號(hào)是能量有限且相對(duì)集中在局部區(qū)域衰減較快的波動(dòng)信號(hào),WT的含義是把某一被稱為基本小波的函數(shù)做位移后,在不同尺度下與原始信號(hào)做內(nèi)積,即:
(1)
式中,a>0為尺度因子,其作用是對(duì)基本小波φ(t)作伸縮;τ表示位移。
小波變換的思想是利用尺度函數(shù)表示原始信號(hào),實(shí)現(xiàn)空間(時(shí)間)和頻率的局部變換,從而有效地從信號(hào)中提取時(shí)間關(guān)系的特征[17]。隨著尺度級(jí)的下降,尺度越來越大,對(duì)原始信號(hào)的反映更加模糊和粗糙,使用WT的優(yōu)勢(shì)是能對(duì)時(shí)間(空間)頻率進(jìn)行片段分析,使用伸縮平移運(yùn)算從不同尺度對(duì)信號(hào)逐漸細(xì)化,最終達(dá)到時(shí)間細(xì)分在高頻處,頻率細(xì)分在低頻處。其參數(shù)較少,具有優(yōu)質(zhì)的視頻窗口特性,且不進(jìn)入網(wǎng)絡(luò)訓(xùn)練階段,因此有助于提高模型的測(cè)試精度。本實(shí)驗(yàn)將預(yù)處理后經(jīng)過滑動(dòng)窗口分割的波形數(shù)據(jù)使用Haar小波[18]進(jìn)行變換分解為高頻和低頻分組,然后將二者組合作為網(wǎng)絡(luò)的輸入。Haar小波的尺度函數(shù)為:

(2)
CNN擅長(zhǎng)提取具有空間關(guān)系的特征,可以在降低信息的維度同時(shí)擴(kuò)展信息的維度,通過卷積層(Convolutional Layer)對(duì)輸入數(shù)據(jù)進(jìn)行多次卷積運(yùn)算,得到想要的代表性特征[19]。因此,本文使用小波變換和CNN相結(jié)合的深度學(xué)習(xí)模型,能夠充分利用來自智能手機(jī)傳感器的復(fù)雜數(shù)據(jù)流,有效提取多維特征并識(shí)別人類活動(dòng)。
智能手機(jī)內(nèi)置的MEMS傳感器在固定窗口滑動(dòng)上的測(cè)量如下:
(3)
(4)
(5)
(6)
(7)
(8)
(9)
式中,M表示滑動(dòng)窗口的大小;Zi表示時(shí)間上的輸入向量;ax,ay,az和gx,gy,gz分別代表三軸加速度計(jì)和三軸陀螺儀的輸出。
本文將濾波預(yù)處理后經(jīng)過滑動(dòng)窗口分割的數(shù)據(jù)經(jīng)過Haar小波提取時(shí)間序列特征后,作為CNN的輸入數(shù)據(jù),再次通過卷積層對(duì)提取的時(shí)間特征進(jìn)行多次卷積運(yùn)算:
(10)

本文提出的利用來自智能手機(jī)MEMS傳感器數(shù)據(jù)來進(jìn)行HAR的深度學(xué)習(xí)Wavelet-CNN 網(wǎng)絡(luò)模型如圖4所示,整體網(wǎng)絡(luò)架構(gòu)共有7層。首先,將濾波預(yù)處理后經(jīng)過滑動(dòng)窗口分割的數(shù)據(jù)使用小波變換提取時(shí)間序列特征。然后,依次通過3個(gè)卷積層提取空間特征,在第1個(gè)卷積層中使用128個(gè)卷積核進(jìn)行特征提取,在第2個(gè)卷積層中使用256個(gè)卷積核對(duì)上層輸出的特征進(jìn)行更深層次的特征提取操作,后面緊跟著一個(gè)步長(zhǎng)為2的最大池化層(Max-pooling Layer)用于執(zhí)行下采樣操作,以幫助網(wǎng)絡(luò)更好地消除噪聲的干擾。最后一個(gè)卷積層包含64個(gè)卷積核,3層中的卷積核大小均為1×3,步長(zhǎng)均為1。在Wavelet-CNN模型的最后,通過全局平均池化層(GAP)、批量歸一化層(BN)和全連接層(FC)最終獲得模型的輸出,實(shí)現(xiàn)HAR。

圖4 Wavelet-CNN網(wǎng)絡(luò)模型Fig.4 Wavelet-CNN network model
PDR中常見的步數(shù)檢測(cè)方法有峰值檢測(cè)法和過零統(tǒng)計(jì)法,本文將對(duì)其結(jié)合并提出基于HAR的自適應(yīng)步數(shù)檢測(cè)的方法,實(shí)現(xiàn)不同人類活動(dòng)下的準(zhǔn)確計(jì)步。
為了消除重力的影響,獲得真實(shí)運(yùn)動(dòng)加速度,在數(shù)據(jù)預(yù)處理階段利用式(11)對(duì)重力加速度進(jìn)行濾除:
az(t)=az-ρg(t-1)-(1-ρ)az,
(11)
式中,az為t時(shí)刻包含重力的加速度;g(t-1)為t-1時(shí)刻的重力加速度。
(12)
本文通過式(12)計(jì)算三軸加速度計(jì)的合成加速度值,不僅減輕了不同人類活動(dòng)對(duì)步數(shù)檢測(cè)造成的影響,而且最大化減弱了噪聲的影響。處理后的合成加速度如圖5所示,其中紫色、紅色和黃色的波形表示三軸加速度計(jì)的加速度值,綠色加粗的曲線表示合成加速度。

圖5 處理后的合成加速度Fig.5 Synthetic acceleration after data processing
通過截止頻率為5 Hz的六階低通濾波器對(duì)得到的a(t)avg數(shù)據(jù)進(jìn)行平滑和去噪處理,使用更高階的濾波器會(huì)產(chǎn)生更小的衰減,濾波數(shù)據(jù)更加平滑。為了在不同活動(dòng)狀態(tài)模式下實(shí)現(xiàn)準(zhǔn)確的步數(shù)檢測(cè),設(shè)計(jì)了一種基于HAR的自適應(yīng)步數(shù)檢測(cè)方法,表現(xiàn)出較強(qiáng)的魯棒性。該算法通過設(shè)置窗口滑動(dòng)檢測(cè)峰值的方式,自適應(yīng)地調(diào)整不同活動(dòng)狀態(tài)下的閾值,動(dòng)態(tài)閾值檢測(cè)結(jié)果如圖6所示,并根據(jù)以下條件最終得到步數(shù)檢測(cè)結(jié)果:

圖6 動(dòng)態(tài)閾值檢測(cè)Fig.6 Dynamic threshold detection
①設(shè)置滑動(dòng)窗口長(zhǎng)度為K,不同活動(dòng)狀態(tài)給定閾值δother,動(dòng)態(tài)閾值diffthreshold。
②a(t)avg≥δother,確保a(t)avg為滑動(dòng)窗口局部最大值。
③連續(xù)的波峰和波谷之間的時(shí)間間隔必須大于等于ΔTthreshold。
④當(dāng)檢測(cè)到相鄰的波峰波谷差值大于diffthreshold時(shí),步數(shù)+1。
動(dòng)態(tài)閾值diffthreshod偽代碼如下:

算法 自適應(yīng)動(dòng)態(tài)閾值偽代碼Input:Acceleration:a(1)avg,a(2)avg,…,a(t)avg[],window_size=12Output:The next moment diffthreshold1.diffthreshold=0;2.FOR each moment t in 1,2,3,…,(K-window_size):3. IFapeakavg-avalleyavg>δother4. diffa=apeakavg-avalleyavg;5. diffa.add();6. ENDIF7. Setdiffthreshold=average(difft)8.ENDFOR
一般來說,影響人類步長(zhǎng)的因素有很多種,比如年齡、性別和身高等。即使是同一個(gè)人在同樣狀態(tài)下,行走過程中的步幅也有所不同。尤其是當(dāng)行人切換不同的行走狀態(tài)時(shí),步長(zhǎng)會(huì)明顯發(fā)生改變。例如,當(dāng)行人處于站立狀態(tài)時(shí),步長(zhǎng)應(yīng)為零;當(dāng)行人處于慢走狀態(tài)時(shí)應(yīng)比跑步狀態(tài)下的步長(zhǎng)小。因此,提出了一種結(jié)合人類活動(dòng)狀態(tài)的步長(zhǎng)估計(jì)算法來自適應(yīng)地調(diào)整不同人類活動(dòng)下的步長(zhǎng):
(13)
式中,amax和amin分別代表當(dāng)前活動(dòng)狀態(tài)加速度的最大值和最小值;fs,vs和ws分別代表行人的活動(dòng)頻率、加速度的標(biāo)準(zhǔn)差和方差;α,β,γ和η分別表示不同人類活動(dòng)狀態(tài)下通過深度學(xué)習(xí)模型訓(xùn)練數(shù)據(jù)確定的步長(zhǎng)參數(shù),隨人類活動(dòng)的不同而變化,每項(xiàng)活動(dòng)對(duì)應(yīng)一組步長(zhǎng)參數(shù)。毫無疑問,站立的步長(zhǎng)是0,因此,在站立的活動(dòng)中,α,β,γ和η均為0。利用深度學(xué)習(xí)模型訓(xùn)練,并使用最小均方算法可以得到其他活動(dòng)中的步長(zhǎng)參數(shù)。
在航向角估計(jì)中,對(duì)智能手機(jī)內(nèi)置的多傳感器數(shù)據(jù)進(jìn)行融合,得到預(yù)估的航向角[pitchangle,rollangle,yawangle],由于陀螺儀的角速度G=[gx,gy,gz]會(huì)隨時(shí)間產(chǎn)生累積誤差,因此采用準(zhǔn)靜態(tài)約束的方法來減少航向角累積誤差。本文以陀螺儀角速度矢量的大小作為判斷標(biāo)準(zhǔn):
(14)
準(zhǔn)靜態(tài)約束方程為:
(15)

本節(jié)對(duì)基于HAR輔助的PDR定位方法進(jìn)行驗(yàn)證,并對(duì)實(shí)驗(yàn)結(jié)果評(píng)估和討論。首先,使用智能手機(jī)的內(nèi)置傳感器進(jìn)行收據(jù)采集和預(yù)處理,并使用Wavelet-CNN深度學(xué)習(xí)模型進(jìn)行訓(xùn)練。然后,采用Accuracy和F-score對(duì)HAR模型進(jìn)行評(píng)估,并與傳統(tǒng)的機(jī)器學(xué)習(xí)方法比較。最后,從三方面驗(yàn)證和討論基于HAR輔助的PDR方法的定位性能。
本文用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)集由4名志愿者使用Galaxy Note20智能手機(jī)進(jìn)行數(shù)據(jù)采集,采樣頻率為100 Hz,表1為4名測(cè)試人員的個(gè)人信息。

表1 測(cè)試人員信息Tab.1 Tester information
收集的數(shù)據(jù)集包含長(zhǎng)達(dá)6 h的活動(dòng)記錄,采集的原始數(shù)據(jù)共有461 450條。本研究考慮了更詳細(xì)的人類活動(dòng)的行走模式,并定義了6種基本活動(dòng)狀態(tài),如表2所示。為了更容易對(duì)數(shù)據(jù)進(jìn)行標(biāo)注,4名測(cè)試人員分別使用6種不同運(yùn)動(dòng)狀態(tài)進(jìn)行數(shù)據(jù)采集,并使用Standing狀態(tài)進(jìn)行各項(xiàng)活動(dòng)間的切換。將采集到的原始數(shù)據(jù)完成狀態(tài)標(biāo)注后,訓(xùn)練集和測(cè)試集的比例為7∶3,并對(duì)順序進(jìn)行了隨機(jī)打亂,以此來提高模型的魯棒性。深度學(xué)習(xí)模型是基于Python中的Pytorch框架編寫,進(jìn)行訓(xùn)練和測(cè)試的電腦配置為i7-8565U,CPU2.00 GHz,16 GB RAM。為了提高效率,在訓(xùn)練階段,batchsize=256,Dropout=0.5,epoch=100。此外,采用0.001的學(xué)習(xí)率來提高擬合能力,并設(shè)置策略為每間隔5次迭代,學(xué)習(xí)率衰減為原來的0.75倍。日常生活中,行人為了使用智能手機(jī)的導(dǎo)航功能,最常用的姿勢(shì)即把手機(jī)放在身體前方,如圖7所示。復(fù)雜的人類活動(dòng)給PDR帶來了挑戰(zhàn),尤其是步數(shù)檢測(cè)和步長(zhǎng)估計(jì)。

表2 基本活動(dòng)狀態(tài)Tab.2 Human activity states
實(shí)驗(yàn)使用傳統(tǒng)的機(jī)器學(xué)習(xí)方法和基于深度學(xué)習(xí)網(wǎng)絡(luò)的HAR模型進(jìn)行對(duì)比,討論不同方法對(duì)HAR性能的影響,機(jī)器學(xué)習(xí)方法包括研究者使用較為廣泛的幾種:K近鄰(KNN)、隨機(jī)森林(RF)、樸素貝葉斯(NB)、支持向量機(jī)(SVM)和梯度提升決策樹(GBDT)。實(shí)驗(yàn)使用總體分類準(zhǔn)確率(Accuracy)和F-score作為評(píng)價(jià)指標(biāo),結(jié)果如表3所示。

表3 不同算法進(jìn)行HAR的結(jié)果Tab.3 Results of HAR by different algorithms 單位:%
(16)
(17)
式中,Pretruth表示預(yù)測(cè)正確的樣本數(shù);N表示總樣本數(shù);R和P分別表示Recall和Precision。
由表3可以看出,傳統(tǒng)的機(jī)器學(xué)習(xí)方法中只有SVM和NB具有較高的識(shí)別精度,而本文提出的Wavelet-CNN模型精度和F-score可以達(dá)到99.50%和99.29%,遠(yuǎn)遠(yuǎn)超過傳統(tǒng)的機(jī)器學(xué)習(xí)方法。圖8以混淆矩陣的形式更具體地展示了Wavelet-CNN模型的識(shí)別精度。其中,主對(duì)角線為每種活動(dòng)預(yù)測(cè)正確分類的樣本,列表示實(shí)際的人類活動(dòng)狀態(tài),行代表預(yù)測(cè)的活動(dòng)狀態(tài)。總而言之,無論用戶處于哪種活動(dòng)狀態(tài),基于Wavelet-CNN的HAR方法都能正確分類出99.32%以上的步行模式。

圖8 混淆矩陣Fig.8 Confusion matrix
為了更具體地評(píng)價(jià)本文所提出的基于HAR技術(shù)輔助的行人航位推算方法,實(shí)驗(yàn)進(jìn)行PDR定位性能方面的測(cè)試。
首先,使用Galaxy Note20智能手機(jī)重新收集了幾組數(shù)據(jù),這些數(shù)據(jù)是在不同的人類活動(dòng)狀態(tài)(Walking,Jogging,Jumping和Standing)下按照預(yù)先規(guī)劃的路徑收集的。圖9顯示了本實(shí)驗(yàn)預(yù)先規(guī)劃的2條預(yù)設(shè)路線X和Y。

(a) 預(yù)設(shè)路線X
4.3.1 HAR輔助步數(shù)檢測(cè)
針對(duì)本文設(shè)計(jì)的基于活動(dòng)識(shí)別的自適應(yīng)步數(shù)檢測(cè)方法進(jìn)行評(píng)估,步數(shù)檢測(cè)結(jié)果如圖10和圖11所示。由圖10和圖11可知,由于傳統(tǒng)的PDR通常采用峰值檢測(cè)和過零點(diǎn)檢測(cè)等方法進(jìn)行步態(tài)檢測(cè),但由于行人的不同活動(dòng)狀態(tài),時(shí)常導(dǎo)致步數(shù)漏檢。而通過使用設(shè)置窗口滑動(dòng)檢測(cè)峰值的方式,自適應(yīng)地調(diào)整不同活動(dòng)狀態(tài)下的閾值,可以盡可能地檢測(cè)到不同狀態(tài)的步數(shù)。

圖10 傳統(tǒng)PDR步數(shù)檢測(cè)Fig.10 Traditional PDR step number detection

圖11 自適應(yīng)的動(dòng)態(tài)閾值步數(shù)檢測(cè)Fig.11 Adaptive dynamic threshold step number detection
為了進(jìn)行公平的比較,測(cè)試人員沿預(yù)設(shè)路線X和預(yù)設(shè)路線Y分別進(jìn)行不同人類活動(dòng)狀態(tài)的測(cè)試,每次都保持相同的行走方式和手機(jī)姿態(tài),以驗(yàn)證不同方法的性能。使用最大值(MAX)、平均值(MEAN)和均方根(RMS)評(píng)價(jià)不同活動(dòng)狀態(tài)下的定位誤差,并使用式(18)計(jì)算步數(shù)檢測(cè)率(SDR),評(píng)估不同活動(dòng)狀態(tài)下2種算法的步數(shù)檢測(cè)結(jié)果,如表4所示。由于Standing狀態(tài)的步數(shù)和軌跡均為0,故表中沒有列出。

表4 不同活動(dòng)的誤差和步數(shù)檢測(cè)率對(duì)比Tab.4 Comparison of error and SDR of different activities
(18)
式中,K表示測(cè)試次數(shù);N表示實(shí)際行走步數(shù);Dstep表示不同方法檢測(cè)到的步數(shù)。
由步數(shù)檢測(cè)率的結(jié)果可知,本文提出的基于活動(dòng)識(shí)別的自適應(yīng)步數(shù)檢測(cè)方法在不同人類活動(dòng)狀態(tài)下均達(dá)到91%以上的準(zhǔn)確率,相對(duì)于傳統(tǒng)PDR方法提高了10.94%。在定位誤差上,本文提出的方法也明顯表現(xiàn)出優(yōu)勢(shì),證明基于活動(dòng)識(shí)別的自適應(yīng)步數(shù)檢測(cè)方法具有較強(qiáng)的魯棒性。
4.3.2 HAR輔助步長(zhǎng)估計(jì)
針對(duì)提出的結(jié)合人類活動(dòng)狀態(tài)的步長(zhǎng)估計(jì)算法,測(cè)試人員按照預(yù)設(shè)路線X進(jìn)行以下活動(dòng):開始為Standing狀態(tài),從A點(diǎn)向南走12 m到B點(diǎn)(Walking)→從B點(diǎn)向東走12 m到C點(diǎn)(Jogging)→從C點(diǎn)向北走12 m到D點(diǎn)(Walking)→從D點(diǎn)向西走12 m回到A點(diǎn)(Jumping)。使用傳統(tǒng)的PDR方法、自適應(yīng)步數(shù)檢測(cè)方法結(jié)合無人類活動(dòng)狀態(tài)的PDR方法和本文提出的HAR輔助的PDR方法進(jìn)行軌跡估計(jì),并和真實(shí)軌跡對(duì)比計(jì)算定位誤差,生成誤差累積分布函數(shù)圖,如圖12和圖13所示。

圖12 預(yù)設(shè)路線X軌跡對(duì)比Fig.12 Trajectory comparison of preset route X

圖13 預(yù)設(shè)路線X的CDFFig.13 CDF of preset route X
由圖12可以看出,傳統(tǒng)的PDR由于無法準(zhǔn)確檢測(cè)步數(shù)和估計(jì)步長(zhǎng),在定位性能上表現(xiàn)最差,而自適應(yīng)步數(shù)檢測(cè)方法結(jié)合無人類活動(dòng)狀態(tài)的PDR方法由于僅能檢測(cè)步數(shù),當(dāng)人類切換狀態(tài)時(shí)無法準(zhǔn)確估計(jì)下一種活動(dòng)的步長(zhǎng),導(dǎo)致無法預(yù)估軌跡。由圖13可以看出,雖然在前35.7%的概率下,本文提出的HAR輔助的PDR方法表現(xiàn)效果略差,但累積誤差在1 m左右的表現(xiàn)明顯優(yōu)于其他方法,最大累積誤差低于2.27 m,低于傳統(tǒng)PDR方法5.92 m,證明本文提出的結(jié)合人類活動(dòng)狀態(tài)的步長(zhǎng)估計(jì)算法性能表現(xiàn)優(yōu)異。
4.3.3 HAR輔助PDR算法定位性能評(píng)估
為了進(jìn)一步綜合評(píng)價(jià)HAR輔助的PDR方法定位性能,測(cè)試人員按照?qǐng)D9(b)預(yù)設(shè)的路線Y進(jìn)行實(shí)驗(yàn),活動(dòng)軌跡為:開始為Standing狀態(tài),從A點(diǎn)向南走12 m到B點(diǎn)(Jogging)→從B點(diǎn)向東走6 m到C點(diǎn)(Walking)→從C點(diǎn)向北走12 m到D點(diǎn)(Jumping)→從D點(diǎn)向東走6 m到達(dá)E點(diǎn)(Walking)→從E點(diǎn)向南走12 m到達(dá)F點(diǎn)(Jogging)。本文將傳統(tǒng)的PDR方法、文獻(xiàn)[20]提出的先進(jìn)PDR方法和本文提出的HAR輔助的PDR方法進(jìn)行比較,并在文獻(xiàn)[20]提出的先進(jìn)PDR方法上增加HAR模型進(jìn)行對(duì)比驗(yàn)證。其中,文獻(xiàn)[20]提出的先進(jìn)PDR方法通過使用無跡卡爾曼濾波和設(shè)置不同閾值條件進(jìn)行步態(tài)檢測(cè),并在行走過程中,針對(duì)步距誤差和航向角誤差的累積問題,采用零速度更新、零角速度更新和磁強(qiáng)計(jì)相結(jié)合的方法進(jìn)行誤差修正。定位軌跡和誤差累積分布函數(shù)如圖14和圖15所示。

圖14 預(yù)設(shè)路線Y軌跡對(duì)比Fig.14 Trajectory comparison of preset route Y

圖15 預(yù)設(shè)路線Y的CDFFig.15 CDF of preset route Y
從圖中可以看出,傳統(tǒng)的PDR方法定位效果最差,文獻(xiàn)[20]提出的先進(jìn)PDR方法由于無法針對(duì)不同活動(dòng)狀態(tài)自適應(yīng)地調(diào)整步數(shù)檢測(cè)和步長(zhǎng)估計(jì)參數(shù),對(duì)累積誤差抑制較差,而增加HAR模型后的定位性能明顯提升,最大誤差降低約16.2%。有效地證明本文提出的PDR方法在HAR的輔助下,可以有效地減少活動(dòng)狀態(tài)切換時(shí)的位置誤差,實(shí)現(xiàn)了良好的定位精度,具有更強(qiáng)的魯棒性。
將本文提出的基于HAR輔助的PDR方法在智能手機(jī)Android端應(yīng)用,采集智能手機(jī)內(nèi)置的傳感器信號(hào)并實(shí)時(shí)顯示軌跡和定位結(jié)果,如圖16所示,界面中上方為地圖實(shí)時(shí)定位軌跡,下方為當(dāng)前人類的活動(dòng)狀態(tài)和內(nèi)置傳感器的值。

圖16 Android端實(shí)時(shí)定位結(jié)果Fig.16 Android real-time positioning results
本文提出了一種基于HAR輔助的PDR定位方法,通過基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)HAR,基于活動(dòng)模式自適應(yīng)地實(shí)現(xiàn)PDR算法中的步數(shù)檢測(cè)和步長(zhǎng)估計(jì),實(shí)現(xiàn)了較好的定位精度。首先,在離線階段使用小波變換和CNN相結(jié)合的深度學(xué)習(xí)網(wǎng)絡(luò)模型對(duì)智能手機(jī)內(nèi)置傳感器的數(shù)據(jù)訓(xùn)練和分類,實(shí)現(xiàn)HAR,識(shí)別精度高達(dá)99.50%。然后,基于上述HAR識(shí)別模型設(shè)計(jì)了一種改進(jìn)的自適應(yīng)PDR定位算法,分別從步數(shù)檢測(cè)、步長(zhǎng)估計(jì)兩方面對(duì)傳統(tǒng)PDR算法進(jìn)行了優(yōu)化,提高了PDR算法的魯棒性和可靠性。最后,提出了一種基于HAR輔助的PDR方法,并在智能手機(jī)上實(shí)現(xiàn)實(shí)時(shí)定位,準(zhǔn)確推算復(fù)雜人類活動(dòng)模式下的行人軌跡。通過對(duì)比實(shí)驗(yàn)表明,所提出的基于深度學(xué)習(xí)進(jìn)行HAR輔助的PDR定位方法能夠準(zhǔn)確識(shí)別多種復(fù)雜的人類運(yùn)動(dòng)狀態(tài),減少了傳統(tǒng)PDR方法的累積誤差,提高了定位精度,較先進(jìn)PDR方法最大定位誤差降低約16.2%,具有較強(qiáng)的魯棒性和有效性。本文所提出的基于HAR進(jìn)行輔助PDR實(shí)現(xiàn)定位的方法并未涉及手機(jī)姿態(tài),為了獲得更準(zhǔn)確的定位服務(wù),將在未來的研究中考慮更多的手機(jī)姿態(tài),如手持模式和擺動(dòng)模式等。