孫銀收, 熊 智, 邢 麗, 李曉東, 崔 巖
(1. 南京航空航天大學(xué)自動(dòng)化學(xué)院, 南京 211106;2. 上海應(yīng)用技術(shù)大學(xué)軌道交通學(xué)院, 上海 201418)
近年來, 隨著智慧城市建設(shè)和手持終端的普及, 基于位置服務(wù)(Location Based Service, LBS)的應(yīng)用逐漸從特種專業(yè)領(lǐng)域走向大眾消費(fèi)用戶, 高精度導(dǎo)航定位需求也逐漸從開放的室外區(qū)域延伸至復(fù)雜封閉的室內(nèi)空間[1], 而手持終端內(nèi)嵌的慣性測(cè)量單元(Inertial Measurement Unit, IMU)為實(shí)現(xiàn)室內(nèi)定位提供了基礎(chǔ)。 曹駿等[2]利用智能手機(jī)通過行人航位推算(Pedestrian Dead Reckoning, PDR)方法和磁場(chǎng)匹配實(shí)現(xiàn)了室內(nèi)定位; 徐雯琪等[3]設(shè)計(jì)了一種聯(lián)合Wi-Fi 信息和PDR 算法的智能手機(jī)室內(nèi)定位方法。 上述方法中, PDR 方法[4-5]憑借其自主性強(qiáng)、 復(fù)雜度低和成本小等優(yōu)勢(shì)引起國內(nèi)外學(xué)者的廣泛關(guān)注。
PDR 方法中穩(wěn)健精準(zhǔn)的步態(tài)檢測(cè)是實(shí)現(xiàn)行人準(zhǔn)確定位的首要條件。 KANG 等[6]通過快速傅里葉變換從傳感器數(shù)據(jù)中提取頻域特征, 從而實(shí)現(xiàn)計(jì)步; LU 等[7]、 劉杰等[8]采用峰谷檢測(cè)方法, 提高了步態(tài)檢測(cè)精度; XU 等[4]將峰谷值、 峰谷值時(shí)間間隔作為步態(tài)檢測(cè)條件; PHAM 等[9]將峰值檢測(cè)與最小峰距、 動(dòng)態(tài)閾值等特征相結(jié)合, 減小了步態(tài)檢測(cè)誤差; 畢京學(xué)等[10]以智能手機(jī)為載體, 將有限狀態(tài)與步行過程合加速度變化趨勢(shì)相結(jié)合, 利用相鄰合加速度差值和上/下坡次數(shù)閾值實(shí)現(xiàn)步數(shù)識(shí)別。 然而, 受行人不同運(yùn)動(dòng)狀態(tài)和終端不同使用模式影響, 上述方法在連續(xù)運(yùn)動(dòng)模態(tài)下難以獲得精確魯棒的步態(tài)檢測(cè), 對(duì)此國內(nèi)外學(xué)者開展了針對(duì)性研究。 GUO 等[11]通過提取傳感器數(shù)據(jù)的時(shí)域特征, 利用主成分分析算法對(duì)其降維后, 采用隨機(jī)森林以區(qū)分終端不同攜帶方式; 鄧平等[12]通過分析和篩選加速度的時(shí)域特征, 構(gòu)建線性支持向量機(jī)(Support Vector Machine, SVM) 多分類器,提出相鄰步態(tài)約束法完成多種運(yùn)動(dòng)狀態(tài)的準(zhǔn)確識(shí)別, 并采用一種改進(jìn)的單峰值檢測(cè)法及零點(diǎn)搜尋規(guī)則, 實(shí)現(xiàn)了基于多種運(yùn)動(dòng)狀態(tài)下均適用的步態(tài)檢測(cè)方法; WANG 等[13-14]利用SVM、 有限狀態(tài)機(jī)(Finite State Machine, FSM)和決策樹(Decision Tree,DT)算法實(shí)現(xiàn)了行人運(yùn)動(dòng)狀態(tài)和終端使用模式的識(shí)別, 根據(jù)識(shí)別結(jié)果提出了一種自適應(yīng)波峰檢測(cè)算法。 上述研究內(nèi)容一定程度上提高了多運(yùn)動(dòng)模態(tài)的步態(tài)檢測(cè)精度, 但依舊存在一些問題, 如: 識(shí)別的模態(tài)多關(guān)注行人運(yùn)動(dòng)狀態(tài)與終端使用模式的組合, 對(duì)行人靜止?fàn)顟B(tài)識(shí)別關(guān)注較少, 從而導(dǎo)致在非行走狀態(tài)下的步態(tài)檢測(cè)誤識(shí)別; 在連續(xù)復(fù)雜模態(tài)下, 步態(tài)檢測(cè)依舊存在過度計(jì)步或計(jì)步不足問題; 也有部分研究在遇到相鄰波峰/波谷情況時(shí)往往選擇前者較小偽波峰而忽略后者較大真波峰,難以滿足連續(xù)運(yùn)動(dòng)模態(tài)下高精度輕量化步態(tài)檢測(cè)需求。
圍繞上述問題, 本文引入FSM 思想, 結(jié)合行人運(yùn)動(dòng)特性和終端日常使用習(xí)慣, 構(gòu)建輕量化分類器識(shí)別行人三種運(yùn)動(dòng)狀態(tài)(靜止、 步行、 跑步)和終端三種使用模式(平端、 電話、 擺臂), 以實(shí)現(xiàn)不同模態(tài)下步態(tài)檢測(cè)閾值的動(dòng)態(tài)調(diào)整。 而后, 根據(jù)模態(tài)辨識(shí)結(jié)果, 提出多條件約束步態(tài)檢測(cè)算法,實(shí)現(xiàn)了單一和連續(xù)運(yùn)動(dòng)模態(tài)下的高精度步態(tài)檢測(cè)。
在日常生活或特種作業(yè)中, 行人二維場(chǎng)景下所涉及的運(yùn)動(dòng)狀態(tài)主要為站立靜止、 步行和跑步;終端使用模式也多為平端、 電話和擺臂等。 結(jié)合行人使用習(xí)慣, 將兩者組合為三種靜止模態(tài)和四種運(yùn)動(dòng)模態(tài)(共計(jì)七種模態(tài)), 并對(duì)其進(jìn)行定義, 具體內(nèi)容如表1 所示。

表1 模態(tài)分類及定義Table 1 Classification and definition for modal
不同模態(tài)下的IMU 數(shù)據(jù)特征不同, 圖1 為平端靜止、 平端步行、 擺臂步行三種模態(tài)下的數(shù)據(jù)特征示意圖。 由圖1 可知, 平端靜止模態(tài)下, 數(shù)據(jù)波動(dòng)較小, 加速度計(jì)X軸、Y軸、 陀螺儀三軸數(shù)據(jù)近似為零,Z軸加速度、 模值兩者大小近似重力;平端步行模態(tài)下, 由于足部的升降起伏和軀干的左右旋轉(zhuǎn), 加速度、 角速度數(shù)據(jù)呈現(xiàn)規(guī)律性波動(dòng),一般為先波峰后波谷, 加速度模值數(shù)據(jù)近似正弦曲線, 并且兩個(gè)連續(xù)波峰或波谷代表一個(gè)單步,即行人左右足跟或足尖先后著地, 電話步行模態(tài)與之類似; 擺臂步行模態(tài)下, IMU 數(shù)據(jù)既反映行人足部運(yùn)動(dòng)特征, 也受手部周期性擺動(dòng)影響, 加速度模值呈現(xiàn)規(guī)律性波動(dòng), 出現(xiàn)大小波峰現(xiàn)象,而Z軸角速度數(shù)據(jù)近似正弦曲線, 并且一個(gè)波峰或波谷代表一個(gè)單步, 兩個(gè)連續(xù)波峰或波谷代表一個(gè)復(fù)步, 即同側(cè)足跟或足尖前后兩次連續(xù)著地。

圖1 模態(tài)展示及其數(shù)據(jù)特征Fig.1 Schematic diagram of modal presentation and its data characteristics
手持終端內(nèi)置的IMU 基本為低精度消費(fèi)級(jí),而且由于手部微小抖動(dòng)和電子器件之間的噪聲影響導(dǎo)致加速度、 角速度數(shù)據(jù)包含大量噪聲, 對(duì)模態(tài)辨識(shí)和步態(tài)檢測(cè)造成干擾。 因此, 需要對(duì)IMU數(shù)據(jù)進(jìn)行預(yù)處理。
本文選取Savitzky-Golay(S-G)濾波器[15]進(jìn)行數(shù)據(jù)預(yù)處理。 該方法是一種時(shí)域平滑方法, 可以對(duì)窗口內(nèi)的數(shù)據(jù)進(jìn)行加權(quán)濾波, 采用最小二乘卷積對(duì)局部數(shù)據(jù)進(jìn)行高階多項(xiàng)式擬合, 在去除高頻噪聲的同時(shí)可以有效保留信號(hào)的變化信息。 該方法有兩個(gè)重要參數(shù), 即窗口大小和擬合階數(shù), 窗口越大越容易丟失有效信號(hào)而且濾波滯后現(xiàn)象越嚴(yán)重, 階數(shù)越大去噪能力越差。 在本文中, 綜合考慮數(shù)據(jù)處理的時(shí)效性和濾波效果, 將S-G 濾波窗口設(shè)置為51, 階數(shù)設(shè)置為1, 圖2 為電話步行模態(tài)下加速度模值濾波前后對(duì)比圖。 由圖2 可知, S-G 濾波很好地濾除了原始數(shù)據(jù)中的高頻噪聲, 并且基本保留了數(shù)據(jù)特征。

圖2 電話步行模態(tài)下濾波前后的加速度模值對(duì)比Fig.2 Comparison of acceleration modulus under telephone walking modal before and after filtering
一般情況下, 行人的運(yùn)動(dòng)狀態(tài)和終端使用模式會(huì)對(duì)IMU 數(shù)據(jù)產(chǎn)生較大影響, 使得不同模態(tài)下的數(shù)據(jù)特征不同。 如圖3 所示, 不同的數(shù)據(jù)特征盡管會(huì)干擾步態(tài)檢測(cè), 但其多樣化的時(shí)域特征也便于模態(tài)辨識(shí)。 因此, 可以借助IMU 數(shù)據(jù)不同的時(shí)域特征識(shí)別不同運(yùn)動(dòng)模態(tài)來動(dòng)態(tài)調(diào)整步態(tài)檢測(cè)算法中的相關(guān)參數(shù), 以增強(qiáng)PDR 算法的適應(yīng)性和定位導(dǎo)航性能。 在FSM 模型中, 當(dāng)一個(gè)條件被滿足,執(zhí)行一次狀態(tài)轉(zhuǎn)換, 未檢測(cè)到狀態(tài)切換則保持當(dāng)前模態(tài)[16]。 因此, 將FSM 模型用于模態(tài)辨識(shí)可以即時(shí)地響應(yīng)不同模態(tài)切換, 從而識(shí)別各種模態(tài)并且減輕終端計(jì)算負(fù)荷。

圖3 連續(xù)不同模態(tài)下的數(shù)據(jù)特征Fig.3 Data characteristics under continuous different modals
圖4 為行人運(yùn)動(dòng)狀態(tài)識(shí)別的FSM 模型。 在模型中, 行人運(yùn)動(dòng)狀態(tài)共分為三種: 站立靜止、 步行、 跑步。 當(dāng)行人靜止時(shí), 角速度模值Ng保持相對(duì)穩(wěn)定, 變化幅度極小; 當(dāng)行人運(yùn)動(dòng)時(shí), 陀螺儀受多方面因素影響, 其模值會(huì)產(chǎn)生較大波動(dòng)。 因此, 通過角速度模值Ng可以識(shí)別行人靜止和運(yùn)動(dòng)兩種狀態(tài), 其計(jì)算方式如式(1)所示。 此外, 行人在跑步時(shí)的運(yùn)動(dòng)強(qiáng)度遠(yuǎn)大于步行狀態(tài), 借助加速度計(jì)X軸方差數(shù)據(jù)可以區(qū)分行人跑步和步行狀態(tài), 其計(jì)算方式如式(2)所示。

圖4 行人運(yùn)動(dòng)狀態(tài)識(shí)別的FSM 模型Fig.4 FSM model for pedestrian motion state identification
式(1) 中,gx、gy、gz分別為陀螺儀X軸、Y軸、Z軸的數(shù)據(jù)。
圖5 為手持終端使用模式識(shí)別的FSM 模型。在模型中, 終端使用模式有平端、 電話和擺臂三種。 由圖3 分析可知, 不同模式下加速度數(shù)據(jù)不同, 因此利用加速度計(jì)X軸、Z軸滑動(dòng)窗口內(nèi)的均值, 即可以進(jìn)行分類, 計(jì)算方式如式(3)、式(4)所示。

圖5 手持終端使用模式識(shí)別的FSM 模型Fig.5 FSM model for handheld terminal using pattern identification
將行人運(yùn)動(dòng)狀態(tài)識(shí)別結(jié)果與終端使用模式辨識(shí)結(jié)果進(jìn)行組合, 由此實(shí)現(xiàn)七種不同模態(tài)的歸納和辨識(shí), 整體識(shí)別過程如圖6 所示。 需要說明, 本文只研究了站立靜止、 步行和跑步三種靜止模態(tài),并不涉及其他靜止模態(tài)。

圖6 模態(tài)辨識(shí)流程圖Fig.6 Flowchart for modal identification
由圖1、 圖3 分析可知, 不同模態(tài)下IMU 數(shù)據(jù)特征不同。 靜止模態(tài)下行人沒有行進(jìn), 數(shù)據(jù)波動(dòng)較小, 此時(shí)不進(jìn)行步態(tài)檢測(cè), 可以消除非行走狀態(tài)下的步態(tài)檢測(cè)誤差; 運(yùn)動(dòng)模態(tài)下IMU 數(shù)據(jù)均呈現(xiàn)規(guī)律性波動(dòng), 變化趨勢(shì)一般為先波峰后波谷。然而, 不同的運(yùn)動(dòng)模態(tài)使得IMU 各軸方向、 數(shù)據(jù)不同, 影響了步態(tài)檢測(cè)精度。 為了進(jìn)一步降低不同運(yùn)動(dòng)模態(tài)對(duì)步態(tài)檢測(cè)的影響, 針對(duì)平端步行、電話步行兩種模態(tài)采用加速度模值進(jìn)行步態(tài)檢測(cè);擺臂步行、 擺臂跑步兩種模態(tài)的加速度數(shù)據(jù)成分復(fù)雜, 既反映了行人身體重心的升降, 也包含有手部周期性擺動(dòng)特征, 其形成的大小波峰現(xiàn)象不利于步態(tài)檢測(cè), 較易引起步態(tài)漏檢或誤檢, 而陀螺儀Z軸數(shù)據(jù)主要反映手臂周期性擺動(dòng)特性。 此外, 從人體運(yùn)動(dòng)學(xué)角度出發(fā), 手部周期性擺動(dòng)與足部的步態(tài)周期相對(duì)應(yīng), 利于步態(tài)檢測(cè)。 因此,在這兩種模態(tài)下采用陀螺儀Z軸數(shù)據(jù)進(jìn)行步態(tài)檢測(cè)。 不同運(yùn)動(dòng)模態(tài)下傳感器數(shù)據(jù)的選取如表2 所示, 并且將檢測(cè)到一個(gè)單步作為計(jì)步規(guī)則, 多條件約束步態(tài)檢測(cè)算法具體步驟如下所示。

表2 運(yùn)動(dòng)模態(tài)下的計(jì)步數(shù)據(jù)與規(guī)則Table 2 Pedometer data and rules in motion modal
行人運(yùn)動(dòng)會(huì)引起IMU 數(shù)據(jù)出現(xiàn)波峰/波谷, 但由于手部的抖動(dòng)和電子器件間的噪聲影響, 在對(duì)數(shù)據(jù)濾波后依舊存在較多雜峰/雜谷, 因此需要通過極值約束來排除雜波影響。 以極大值imax為例,其判斷條件為當(dāng)前值ij大于閾值Tp, 且在一定范圍內(nèi)為最大值, 具體如式(5)所示, 極小值imin與之類似。
式(5)中,Ca、Cb為計(jì)數(shù)值且初值為0, 其計(jì)算規(guī)則如下
式(6)、 式(7)中,k=1, 2, 3, …, 10。
當(dāng)檢測(cè)到極值時(shí), 需要考慮兩個(gè)連續(xù)波峰或連續(xù)波谷之間的時(shí)間間隔T1以消除部分無效極值。此外, 處于擺臂步行、 擺臂跑步模態(tài)時(shí), 一個(gè)波峰或波谷代表一個(gè)單步, 因此需要設(shè)置相鄰波峰與波谷之間的時(shí)間間隔T2并應(yīng)用至全局。 行人的步態(tài)周期一般為1 Hz ~3 Hz[16], 但行人跑步狀態(tài)的快速性會(huì)導(dǎo)致擺臂跑步模態(tài)下的時(shí)間間隔有所減小, 故時(shí)間間隔T1、T2可根據(jù)實(shí)際情況做相應(yīng)調(diào)整。 若當(dāng)前極值滿足周期性約束, 可以確定其為峰值Tj或谷值Vj, 并令峰值標(biāo)簽或谷值標(biāo)簽為1, 判斷條件如式(8) 所示。 需要注意的是,IMU 數(shù)據(jù)波形是先波峰后波谷, 當(dāng)檢測(cè)到谷值時(shí),應(yīng)當(dāng)取當(dāng)前谷值與當(dāng)前峰值間的時(shí)間間隔進(jìn)行判斷, 如式(9)所示。
式(8)中,j表示第j步。
不同模態(tài)下IMU 數(shù)據(jù)波形特征基本一致, 往往先出現(xiàn)波峰后出現(xiàn)波谷且兩者在時(shí)序上交替出現(xiàn)。 周期性約束結(jié)束后, 不同模態(tài)下均將單步作為步態(tài)檢測(cè)標(biāo)準(zhǔn), 檢測(cè)到單步時(shí)令步態(tài)標(biāo)簽Sj為10。 因此, 當(dāng)行人處于平端步行(m=1)、 電話步行(m=2)模態(tài)時(shí), 將出現(xiàn)一次峰值和谷值視為一步;當(dāng)行人處于擺臂步行(m=3)、 擺臂跑步(m=4)模態(tài)時(shí), 以出現(xiàn)一次峰值或谷值作為一步, 具體如下
在實(shí)踐過程中發(fā)現(xiàn), 完成峰谷值匹配后依舊存在滿足極值約束、 時(shí)間閾值T2而不滿足時(shí)間閾值T1的情況, 即出現(xiàn)了相鄰波峰或波谷, 從而導(dǎo)致波峰/波谷誤識(shí)別, 具體如圖7 所示。 誤識(shí)別現(xiàn)象往往會(huì)干擾步態(tài)檢測(cè), 降低步長估計(jì)的準(zhǔn)確度,最終影響導(dǎo)航定位精度。 因此, 通過相鄰波峰/波谷替代機(jī)制以糾正誤識(shí)別現(xiàn)象, 即通過對(duì)當(dāng)前峰值imax或谷值imin進(jìn)行判斷, 如果大于上一峰值Tj或小于上一谷值Vj, 說明上一個(gè)步態(tài)檢測(cè)中的峰值/谷值為偽波峰/波谷, 剔除偽波峰/波谷, 保留真波峰/波谷, 并更改步態(tài)檢測(cè)結(jié)果。

圖7 相鄰波峰/波谷誤識(shí)別情況示意圖Fig.7 Schematic diagram of adjacent peak/valley misidentification
為了充分驗(yàn)證本文步態(tài)檢測(cè)算法的有效性,設(shè)計(jì)了兩類實(shí)驗(yàn)進(jìn)行驗(yàn)證, 并與峰值檢測(cè)算法、峰谷檢測(cè)算法進(jìn)行對(duì)比。 實(shí)驗(yàn)設(shè)備為Redmi Note 11T Pro, 將2022 年IPIN 比賽發(fā)布的GetSensorData[17]作為數(shù)據(jù)采集軟件, 采樣頻率為100 Hz, 實(shí)驗(yàn)場(chǎng)景為南京航空航天大學(xué)自動(dòng)化學(xué)院1 號(hào)樓5 樓,如圖8 所示。 此外, 為了評(píng)估步態(tài)檢測(cè)效果, 采用式(11)、 式(12)計(jì)算計(jì)步誤差E、 步態(tài)檢測(cè)精度A。

圖8 實(shí)驗(yàn)裝備和實(shí)驗(yàn)場(chǎng)景Fig.8 Diagram of experiment equipments and experiment scenarios
式(11)中,St和Sc分別為真實(shí)步數(shù)和算法估計(jì)步數(shù)。
由于不同模態(tài)下IMU 數(shù)據(jù)特征明顯, 與模態(tài)辨識(shí)相關(guān)的參數(shù)選取較為簡單, 而步態(tài)檢測(cè)參數(shù)即檢測(cè)閾值、 時(shí)間間隔難以確定。 因此, 只針對(duì)步態(tài)檢測(cè)參數(shù)做具體討論, 為了獲取合理參數(shù),每種運(yùn)動(dòng)模態(tài)各行進(jìn)90 步進(jìn)行相關(guān)參數(shù)統(tǒng)計(jì)。
(1)檢測(cè)閾值
圖9 為不同模態(tài)下每一步的峰值、 谷值統(tǒng)計(jì)量。 由圖9 分析可知, 平端步行與電話步行兩種模態(tài)下的數(shù)據(jù)接近, 峰值一般大于10.96 m/s2, 谷值一般小于9.05 m/s2; 擺臂步行模態(tài)下, 峰值中最小量為1.78 rad/s, 谷值中最大量為-1.80 rad/s;擺臂跑步模態(tài)下, 峰值中最小量為4.54 rad/s, 谷值中最大量為-2.78 rad/s。 擺臂步行模態(tài)和擺臂跑步模態(tài)的數(shù)據(jù)相差較大, 但存在包含關(guān)系。 為了避免波峰/波谷漏選, 數(shù)值選取需要有一定冗余, 并且需要盡可能減少參數(shù)數(shù)量以增加魯棒性,數(shù)據(jù)選取如表3 所示。

圖9 檢測(cè)閾值統(tǒng)計(jì)量Fig.9 Diagram of detection threshold statistics
(2)時(shí)間間隔
圖10 為不同模態(tài)下每一步的峰谷值間、 峰峰值/谷谷值間的時(shí)間間隔。 由圖10 可知, 在平端步行與電話步行兩種模態(tài)下, 峰谷值間、 峰峰值/谷谷值間的時(shí)間間隔均大于0.21 s、 0.49 s; 在另外兩種模態(tài)下, 峰谷值間的時(shí)間間隔均大于0.24 s,峰峰值/谷谷值間的時(shí)間間隔均大于0.74 s。 與檢測(cè)閾值選取原則類似, 時(shí)間間隔選取數(shù)據(jù)如表4所示。

圖10 時(shí)間間隔統(tǒng)計(jì)量Fig.10 Diagram of time interval statistics

表4 時(shí)間間隔的選取Table 4 Selection of time interval
測(cè)試人員在單一運(yùn)動(dòng)模態(tài)下以不同速度, 即在慢速、 正常、 快速三種模式下進(jìn)行實(shí)驗(yàn), 每種模式下采集三組數(shù)據(jù)。 實(shí)驗(yàn)時(shí), 測(cè)試人員首先保持相應(yīng)的靜止模態(tài), 固定行進(jìn)90 步, 不限制人員拐彎。 其中, 擺臂跑步由擺臂靜止模態(tài)出發(fā), 最后測(cè)試人員以相應(yīng)的靜止模態(tài)停止運(yùn)動(dòng)。 此外,也在相同模態(tài)下以不同速度連續(xù)行進(jìn)90 步并采集一組數(shù)據(jù)。 實(shí)驗(yàn)結(jié)果如表5 所示, 本文算法與其他算法的實(shí)驗(yàn)結(jié)果對(duì)比如圖11 所示。

圖11 與其他算法的實(shí)驗(yàn)結(jié)果對(duì)比Fig.11 Comparison of experiment results with other algorithms

表5 單一運(yùn)動(dòng)模態(tài)下的步態(tài)檢測(cè)結(jié)果Table 5 Gait detection results under a single-motion modal
由圖11 可知, 峰值檢測(cè)和峰谷檢測(cè)算法在平端步行、 電話步行模態(tài)下的步態(tài)檢測(cè)效果較好,計(jì)步誤差最大分別為7.78%、 10.00%, 而且峰值檢測(cè)算法在兩種模態(tài)下的平均計(jì)步誤差分別為3.33%、 3.21%, 高于峰谷檢測(cè)算法的1.73%、1.23%; 在擺臂步行與擺臂跑步模態(tài)下, 兩種算法的計(jì)步性能有所下降, 最大計(jì)步誤差分別為18.89%、 33.33%, 峰值檢測(cè)算法的平均計(jì)步誤差分別為3.09%、 11.85%, 而峰谷檢測(cè)算法的平均計(jì)步誤差分別為8.89%、 6.42%。 原因在于前兩種模態(tài)主要反映行人行走特征, 而后兩種模態(tài)在含有行人行走特征之外, 也受手臂周期性擺動(dòng)影響, 其形成的大小波峰現(xiàn)象不利于步態(tài)檢測(cè)。 本文所提算法在不同模態(tài)不同速度下均保持較高的計(jì)步精度, 最大計(jì)步誤差為1.11%, 平均計(jì)步誤差為0.11%, 較另外兩種算法有顯著提高, 最大提升分別為18.89%、 33.33%, 平均提升4.43%、5.24%。
為進(jìn)一步驗(yàn)證本文算法在連續(xù)復(fù)雜模態(tài)下的穩(wěn)定性與可靠性, 測(cè)試人員在相同實(shí)驗(yàn)場(chǎng)景中以不同模態(tài)(本文定義的七類模態(tài))連續(xù)行進(jìn), 每個(gè)模態(tài)固定行進(jìn)90 步, 并在第50 步結(jié)束時(shí)保持靜止一段時(shí)間而后繼續(xù)行進(jìn)(擺臂跑步過程中不要求靜止)。 整個(gè)實(shí)驗(yàn)過程對(duì)速度不做限制且行進(jìn)過程中進(jìn)行多次模態(tài)切換, 最終累計(jì)行進(jìn)360 步(三種靜止模態(tài)行進(jìn)步數(shù)為0), 全程約310.50 m。 同時(shí),本文為了保證步態(tài)檢測(cè)方法的對(duì)比有效性, 在運(yùn)行峰值檢測(cè)、 峰谷檢測(cè)算法時(shí)均采用了本文的模態(tài)辨識(shí)方法, 且步態(tài)檢測(cè)閾值與本文方法保持一致, 步長模型也均采用文獻(xiàn)[18]中所記錄的方法。本文的步態(tài)檢測(cè)實(shí)驗(yàn)結(jié)果如圖12 所示。 為了在圖形中更好地展示數(shù)據(jù), 對(duì)模態(tài)辨識(shí)與步態(tài)檢測(cè)結(jié)果進(jìn)行相應(yīng)調(diào)整, 但兩者意義一致。

圖12 連續(xù)復(fù)雜模態(tài)下的步態(tài)檢測(cè)結(jié)果Fig.12 Gait detection results under continuous complex modals
表6 為本文算法與其他算法的實(shí)驗(yàn)結(jié)果對(duì)比??梢园l(fā)現(xiàn), 在連續(xù)復(fù)雜模態(tài)下, 峰值檢測(cè)和峰谷檢測(cè)算法分別誤檢或漏檢了11 步、 12 步, 總體計(jì)步誤差分別為3.06%、 3.33%。 數(shù)據(jù)表明, 在連續(xù)復(fù)雜模態(tài)下, 由于存在較多模態(tài)以及偽波峰/波谷, 導(dǎo)致峰值檢測(cè)和峰谷檢測(cè)算法適應(yīng)性差, 存在計(jì)步不足或過度計(jì)步的問題。 在連續(xù)復(fù)雜模態(tài)下, 本文算法總體檢測(cè)精度為100%, 整體計(jì)步性能較峰值檢測(cè)和峰谷檢測(cè)算法分別提升了3.06%、3.33%, 準(zhǔn)確性和魯棒性方面有了明顯提高。 統(tǒng)計(jì)單獨(dú)每個(gè)模態(tài)下的數(shù)據(jù), 三種算法在靜止模態(tài)下的檢測(cè)精度均為100%, 部分證明了本文所提基于FSM 的模態(tài)辨識(shí)方法的有效性, 即僅在運(yùn)動(dòng)時(shí)進(jìn)行步態(tài)檢測(cè)。 在運(yùn)動(dòng)模態(tài)下, 峰值檢測(cè)算法在電話步行時(shí)檢測(cè)效果較好, 在平端步行、 擺臂跑步時(shí)檢測(cè)效果次之, 在擺臂步行時(shí)檢測(cè)效果最差, 計(jì)步誤 差 分 別 為 1.11%、 5.56%、 5.56%、11.11%; 峰谷檢測(cè)算法在平端步行時(shí)步態(tài)檢測(cè)效果最好, 電話步行次之, 之后依次為擺臂跑步、擺臂步行, 計(jì)步誤差分別為 0%、 2.22%、5.56%、 10.00%。 而本文所提算法在單獨(dú)每個(gè)模態(tài)下步態(tài)檢測(cè)精度均達(dá)100%, 相較于另外兩種算法, 計(jì)步性能最大分別提升了11.11%、 10.00%,也證明了本文步態(tài)檢測(cè)算法中數(shù)據(jù)選取的合理性和優(yōu)勢(shì), 即平端步行、 電話步行模態(tài)下通過加速度數(shù)據(jù)進(jìn)行步態(tài)檢測(cè), 擺臂步行、 擺臂跑步模態(tài)下采用陀螺儀數(shù)據(jù)進(jìn)行步態(tài)檢測(cè)。

表6 連續(xù)復(fù)雜模態(tài)下的實(shí)驗(yàn)結(jié)果對(duì)比Table 6 Comparison of experiment results under continuous complex modals
圖13(a)為本文算法在連續(xù)復(fù)雜模態(tài)下的運(yùn)動(dòng)軌跡及模態(tài)辨識(shí)結(jié)果, 結(jié)合圖12 可以分析得到,本文所提基于FSM 的模態(tài)辨識(shí)方法應(yīng)用效果較好,沒有運(yùn)動(dòng)狀態(tài)相互紊亂的現(xiàn)象, 在連續(xù)復(fù)雜模態(tài)下依舊可以識(shí)別平端靜止、 平端步行、 擺臂跑步等七種模態(tài), 使得步態(tài)檢測(cè)算法可以自適應(yīng)調(diào)整檢測(cè)閾值, 一定程度上提高了算法的適應(yīng)性。圖13(b)為峰值檢測(cè)算法、 峰谷檢測(cè)算法以及本文算法在連續(xù)復(fù)雜模態(tài)下的運(yùn)動(dòng)軌跡, 分別用藍(lán)色、橙色以及紅色曲線表示, 圖中的黑色曲線為參考軌跡, 綠色點(diǎn)為誤差評(píng)估點(diǎn), 由輪式里程計(jì)標(biāo)定,整個(gè)實(shí)驗(yàn)過程行走約310.50 m。 實(shí)驗(yàn)結(jié)果為: 峰值檢測(cè)算法的終點(diǎn)誤差為7.03 m, 平均誤差為6.31 m; 峰谷檢測(cè)算法的終點(diǎn)誤差為14.36 m, 平均誤差為8.40 m; 而本文算法的終點(diǎn)誤差為5.30 m,平均誤差為4.35 m, 均優(yōu)于另外兩種對(duì)比算法。 數(shù)據(jù)表明, 本文算法通過施加多種約束條件可以識(shí)別真正的波峰/波谷, 解決了過度計(jì)步和計(jì)步不足的問題, 提高了連續(xù)復(fù)雜模態(tài)下計(jì)步性能的同時(shí)也提升了定位精度, 這也是本文算法優(yōu)于另外兩種算法的原因所在。

圖13 連續(xù)復(fù)雜模態(tài)下不同算法的運(yùn)動(dòng)軌跡Fig.13 Motion trajectories of different algorithms under continuous complex modals
本文針對(duì)傳統(tǒng)步態(tài)檢測(cè)存在檢測(cè)精度較低的問題, 在其理論基礎(chǔ)上提出了基于模態(tài)辨識(shí)的多條件約束步態(tài)檢測(cè)算法。 通過實(shí)驗(yàn)確定不同模態(tài)下的檢測(cè)閾值, 引入FSM 模型識(shí)別行人三種運(yùn)動(dòng)狀態(tài)和終端三種使用模式并進(jìn)行組合, 累計(jì)七種模態(tài), 針對(duì)每種模態(tài)可以自適應(yīng)選擇閾值; 在此基礎(chǔ)上, 利用極值約束、 周期性約束、 峰谷值匹配機(jī)制、 相鄰波峰/波谷替代機(jī)制等四種約束條件識(shí)別步態(tài)。 該算法相較于峰值檢測(cè)、 峰谷檢測(cè)算法, 在單一運(yùn)動(dòng)模態(tài)下步態(tài)檢測(cè)精度平均提升了4.43%、 5.24%, 在連續(xù)復(fù)雜模態(tài)下整體計(jì)步性能分別提升了3.06%、 3.33%, 解決了過度計(jì)步和計(jì)步不足的問題, 提高了步態(tài)檢測(cè)精度, 為后期提升PDR 定位性能奠定基礎(chǔ)。