鮑 深, 張金藝,, 姚維強(qiáng), 梁 濱
(1.上海大學(xué)微電子研究與開發(fā)中心,上海200444;2.上海大學(xué)特種光纖與光接入網(wǎng)省部共建重點(diǎn)實(shí)驗(yàn)室,上海200444)
在現(xiàn)代生活中,各種便攜式個(gè)人導(dǎo)航設(shè)備已經(jīng)成為人們?nèi)粘I钪胁豢苫蛉钡囊徊糠?因此,基于位置的服務(wù)(location based service,LBS)[1]也變得越來越受歡迎.基于微機(jī)電系統(tǒng)(micro-electro-mechanical system,MEMS)[2]慣性傳感器的行人航位推算(pedestrian dead reckoning,PDR)[3]定位導(dǎo)航技術(shù),不需要任何基礎(chǔ)設(shè)施便可獲得行人位置,因此成為當(dāng)今研究的熱點(diǎn)之一.該技術(shù)的實(shí)現(xiàn)難點(diǎn)之一是對行走距離的估計(jì),包括步頻檢測和步長估計(jì)[4]兩方面.因?yàn)樾腥诉\(yùn)動(dòng)時(shí)的步態(tài)變化非常復(fù)雜,若是算法精度不高,隨著定位時(shí)間的推移,定位結(jié)果會有較大的誤差[5].因此,國內(nèi)外很多科研工作者致力于研究如何進(jìn)行行人步態(tài)分類,以期得到精確的個(gè)人航跡推算.
目前,基于MEMS慣性傳感器技術(shù)的行人步態(tài)分類方法大都是基于加速度峰值[6-7]判斷當(dāng)前行人的步態(tài)類型.由于布朗運(yùn)動(dòng)造成的儀器自有噪聲及環(huán)境等因素的干擾,該方法采集到的加速度信號帶有許多偽峰值,從而降低了最終分類結(jié)果的精度.針對這一問題,Lan等[8]根據(jù)行人走路的步頻采用通頻帶為0.625~20.000 Hz的帶通濾波器對采集到的原始數(shù)據(jù)進(jìn)行濾波,但最終的分類結(jié)果并不令人滿意.盧先領(lǐng)等[9]使用8種時(shí)頻特征參數(shù)訓(xùn)練基于支持向量機(jī)的多類步態(tài)分類器,雖然該方法精度較高,但因特征參數(shù)過多導(dǎo)致識別過程過于復(fù)雜.Clements等[10]提出了一種融合時(shí)域、頻域兩類特征的步態(tài)分類方法,對走和跑兩種步態(tài)模式進(jìn)行實(shí)驗(yàn)區(qū)分,但是該方法為剔除偽峰值添加了峰值閾值、兩峰間隔等限定條件,需要對樣本進(jìn)行大量分析,從而造成工作量較大且分類精度不高的問題.
為減少偽峰值對最終分類結(jié)果的影響,本工作從整體波形角度出發(fā),通過分析行人前進(jìn)時(shí)的加速度波形,將加速度信號的峰度系數(shù)[11-12]設(shè)定為特征參數(shù),取代傳統(tǒng)方法中使用的加速度峰-峰值.為進(jìn)一步減小誤差,除去信號中的偽峰值,首先使用快速傅里葉變換將加速度信號從時(shí)域轉(zhuǎn)換到頻域,并對獲得的頻域信號模值取平方;然后通過傅立葉逆變換回到時(shí)域,得到原信號的自放大信號;最后,計(jì)算出自放大信號的峰度系數(shù),并通過分析峰度系數(shù)值,對行人的水平行走步態(tài)進(jìn)行細(xì)化分類.驗(yàn)證結(jié)果表明,本工作提出的細(xì)化分類算法的精度達(dá)到了98.62%,與加速度值-頻率功率融合算法相比,對步態(tài)的分類更為細(xì)化,同時(shí)分類精度提高了7.37%.
一般情況下,行人走路的步頻為1~3 Hz.為了實(shí)現(xiàn)水平行走的步態(tài)細(xì)化分類,將行人走路分為3種步態(tài):慢走、走和慢跑.由于這3種步態(tài)在時(shí)域上的表現(xiàn)較為相似,為了準(zhǔn)確區(qū)分,需要設(shè)定合適的特征參數(shù).
行人水平行走時(shí)的步頻越大,前進(jìn)方向上的加速度值也越大,其波形也越陡峭.根據(jù)這一特性,本工作選取峰度系數(shù)作為步態(tài)特征參數(shù).峰度系數(shù)是描述變量所有取值分布形態(tài)陡緩程度的統(tǒng)計(jì)量,反映了曲線頂端的扁平程度.峰度系數(shù)K為
圖1是某受試者分別以慢走、走和慢跑3種步態(tài)行走時(shí)的加速度信號時(shí)域圖,其中Z軸方向上的加速度值為aZ,單位為g,g表示重力加速度.Z軸方向即水平前進(jìn)方向,在3軸中選取Z軸作為研究對象的原因是其對于水平行走的分類識別影響最大,而受個(gè)體影響又小于另兩軸.圖1反映了行人以不同步頻行走時(shí)時(shí)加速度信號波形的特點(diǎn).由圖1可以看出:行人行走越快,加速度信號的波形曲線會變得越陡峭,峰度系數(shù)值就越大.
圖1 行人以不同步態(tài)行走時(shí)的加速度信號Fig.1 Acceleration signals of pedestrian level walking with different gait
由于儀器自有噪聲及環(huán)境等因素干擾,采集到的信號會存在許多偽峰值,直接計(jì)算加速度信號的峰度系數(shù)會產(chǎn)生較大的誤差,因此剔除信號中的偽峰值至關(guān)重要.本工作以快速傅里葉變換作為工具對步態(tài)加速度信號aZ(t)進(jìn)行預(yù)處理,計(jì)算出aZ(t)的自放大信號AZ(t),替代aZ(t)作為步態(tài)信號.
式中,F表示快速傅里葉變換,F?1表示快速傅里葉逆變換.假設(shè)采集到的加速度信號為
對aZ(t)進(jìn)行快速傅里葉變換.假設(shè)采樣點(diǎn)數(shù)為N,那么得到N個(gè)復(fù)數(shù),每一個(gè)復(fù)數(shù)代表一個(gè)頻率點(diǎn).除第一個(gè)點(diǎn)表示直流分量(即0 Hz)外,每個(gè)點(diǎn)都可以用復(fù)數(shù)a+bi表示.設(shè)第m個(gè)點(diǎn)代表真正的加速度信號,其模為Am=(a×a+b×b)0.5,相位θm=arctan(b/a).由Am和θm可以計(jì)算出對應(yīng)的信號表達(dá)式
式中,m/=1且m≤N/2,Fm為該點(diǎn)對應(yīng)的頻率.
除ym(t)外,其他的加速度信號均為噪聲信號.為了除去噪聲信號,需要先將頻域中信號的模值進(jìn)行平方因?yàn)檎嬲牟綉B(tài)加速度信號的模值A(chǔ)m比噪聲的模值大好幾個(gè)數(shù)量級,將模值平方后,這種差距會進(jìn)一步拉大.因此,與A2m相比,噪聲模值的平方值幾乎可以忽略不計(jì).最后,對進(jìn)行快速傅里葉逆變換,得到自放大信號AZ(t),
由式(6)可知,自放大信號AZ(t)約等于真正的步態(tài)加速度信號的模值A(chǔ)m平方后的值.
圖2和3是行人慢走時(shí)的加速度信號aZ(t)和自放大信號AZ(t)的時(shí)域圖.從圖中可以明顯看出,aZ(t)中存在的偽峰值在AZ(t)中基本消失,這表明對aZ(t)的預(yù)處理是成功的.另外,aZ(t)和AZ(t)的波峰并沒有出現(xiàn)在同一時(shí)刻,這是因?yàn)樽詈笫菍X(f)|2進(jìn)行快速傅里葉逆變換,而|X(f)|2是一個(gè)實(shí)數(shù),虛部為0,相位由arctan(b/a)變?yōu)?.
圖2 行人慢走時(shí)加速度信號Fig.2 Acceleration signals of pedestrians jogging
圖3 行人慢走時(shí)自放大信號Fig.3 Self-amplif i ed signal of pedestrians jogging
本工作將自放大信號AZ(t)的峰度系數(shù)K作為特征參數(shù),因此進(jìn)行步態(tài)分類時(shí)需計(jì)算出AZ(t)和對應(yīng)的K值.
步驟1 將前進(jìn)方向上的加速度信號記作aZ(t),實(shí)時(shí)提取行走過程中的aZ(t).
步驟2 通過窗口分割對步態(tài)信號進(jìn)行加窗,對采集到的加速度信號aZ(t)進(jìn)行分段處理.為保證窗口內(nèi)至少有一步完整的步態(tài)加速度數(shù)據(jù),且提高分類的實(shí)時(shí)性,所用的窗口寬度為50個(gè)采樣點(diǎn),是傳感器1 s內(nèi)所采集的數(shù)據(jù)量.
步驟3 對一個(gè)窗口內(nèi)的步態(tài)數(shù)據(jù)進(jìn)行計(jì)算,求出自相關(guān)信號AZ(t)及其峰度系數(shù)K.
步驟4 一個(gè)窗口的計(jì)算結(jié)束后,采用滑動(dòng)窗口法,移動(dòng)半個(gè)窗口,即25個(gè)采樣點(diǎn),重復(fù)步驟3.
按上述步驟進(jìn)行多次實(shí)驗(yàn)后,可以得出不同步態(tài)所對應(yīng)的K值范圍.根據(jù)當(dāng)前步態(tài)的K值,能夠識別當(dāng)前的步態(tài)類型.
圖4為基于峰度系數(shù)的行人水平行走步態(tài)細(xì)化分類流程.由圖4可以看出,首先計(jì)算出當(dāng)前窗口中加速度信號aZ(t)的自放大信號AZ(t)的峰度系數(shù)K,然后通過實(shí)驗(yàn)得出的對應(yīng)關(guān)系判斷當(dāng)前步態(tài)Lc.考慮到傳感器的精度問題,Lc還要與前兩次步態(tài)Lp1,Lp2進(jìn)行對比,通過步態(tài)的連續(xù)性完成最終的分類.
圖4 行人水平行進(jìn)的步態(tài)細(xì)化分類流程圖Fig.4 Flowchart of gait detailed classif i cation of pedestrian level walking
由圖4可知,本工作只需先后計(jì)算出加速度信號aZ(t)的自放大信號AZ(t)及其峰度系數(shù)K的值,然后根據(jù)K的值就能初步判斷當(dāng)前步態(tài)Lc.在完成最終的分類時(shí),本方法僅需考慮上兩次步態(tài)Lp1,Lp2與本次步態(tài)Lc的連續(xù)性.而傳統(tǒng)的峰值判別法較復(fù)雜,不僅需要對原始步態(tài)波形進(jìn)行濾波,在最終判斷時(shí)還需要添加各種限定條件,如對波峰波谷值進(jìn)行閾值判斷、對兩個(gè)波峰間設(shè)定時(shí)間間隔等.因此,相比較而言,本工作提出的判斷方法簡單,計(jì)算量小.
圖5 SDK MPU91開發(fā)板Fig.5 SDKMPU915 development board
圖6 人體坐標(biāo)系Fig.6 Coordinates of body
進(jìn)行驗(yàn)證時(shí),MSP430單片機(jī)首先將步態(tài)數(shù)據(jù)讀出,接著藍(lán)牙模塊以115 200 bits/s的波特率將數(shù)據(jù)傳輸給計(jì)算機(jī),再由計(jì)算機(jī)進(jìn)行數(shù)據(jù)的計(jì)算及最后的步態(tài)分類.MSP430單片機(jī)的采樣頻率為50 Hz.根據(jù)采樣定理可知,采樣頻率要求大于信號頻率的2倍,因此可檢測的信號頻帶為0~25 Hz,涵蓋了行人行走時(shí)的步頻.
為了能夠采集到具有普遍性和穩(wěn)定性的數(shù)據(jù)樣本,選取5男5女共10名不同身高體重的健康受試者.采集時(shí)受試者都穿運(yùn)動(dòng)鞋,并采用舒適正常的步行方式,在一段長約50 m的走廊上(見圖7)來回行走.每位受試者分別以慢走、走、慢跑3種步態(tài)進(jìn)行水平行走,重復(fù)20次.
對實(shí)驗(yàn)結(jié)果進(jìn)行分析,得出峰度系數(shù)和步態(tài)的對應(yīng)關(guān)系,如表1所示.從表中可知:當(dāng)自放大信號AZ(t)的峰度系數(shù)為1.0~4.5時(shí),此時(shí)行人的步態(tài)類型為慢走;當(dāng)峰度系數(shù)為4.5~10.0時(shí),步態(tài)類型為走;當(dāng)峰度系數(shù)為10.0~24.0時(shí),步態(tài)類型為慢跑.即當(dāng)行人步行速度越快時(shí),自放大信號AZ(t)的峰度系數(shù)越大,這與本工作最初的預(yù)想是一致的.
圖7 實(shí)驗(yàn)場所Fig.7 Experiment place
表1 行人水平的走步態(tài)和峰度系數(shù)的對應(yīng)關(guān)系Table 1 Correlation between kurtosis and gait of pedestriam level walking
文獻(xiàn)[10]中的算法融合了時(shí)域和頻域兩類特征,在時(shí)域上為加速度信號設(shè)置了閾值,頻域上則采用了頻率功率,而分類結(jié)果也只包括走和慢跑兩種.濾波法是計(jì)算濾波后加速度信號aZ的峰度系數(shù),然后根據(jù)峰度系數(shù)的值進(jìn)行分類.將根據(jù)本工作中提出的方法得到的分類結(jié)果與文獻(xiàn)[10]中的方法以及濾波法得到的分類結(jié)果進(jìn)行對比,結(jié)果如表2所示.由表2可知:本工作提出的基于峰度系數(shù)的步態(tài)細(xì)化算法,由于在信號預(yù)處理時(shí)對加速度信號aZ進(jìn)行了放大,得到了自放大信號AZ(t),這與對加速度信號aZ直接進(jìn)行濾波相比,不同步態(tài)的峰度系數(shù)的閾值更加明顯,識別率達(dá)到了98.62%;相較于傳統(tǒng)的時(shí)頻域融合算法提高了7.37%,且在行人水平行走時(shí)對步態(tài)的分類更為細(xì)化.
表2 行人水平行走步態(tài)分類方法實(shí)驗(yàn)結(jié)果的對比Table 2 Comparison of with the experimental results of gait classif i cation algorithms of pedestriam level walking %
傳統(tǒng)的行人步態(tài)分類方法通常是將加速度峰-峰值作為特征參數(shù),但由于最終的分類結(jié)果會受到由布朗運(yùn)動(dòng)造成的儀器自有噪聲及環(huán)境等因素的干擾,從而出現(xiàn)分類結(jié)果錯(cuò)誤,最終導(dǎo)致分類精度下降,針對這一問題,本工作創(chuàng)新性地提出了一種基于峰度系數(shù)的行人水平行走步態(tài)細(xì)化分類算法,該算法使用峰度系數(shù)K作為特征參數(shù),只需根據(jù)K值就能判斷出與其對應(yīng)的步態(tài)完成分類,減少了算法的復(fù)雜度.此外,使用自放大信號AZ(t)取代傳統(tǒng)的濾波方法中對加速度信號aZ進(jìn)行預(yù)處理,使得峰度系數(shù)的閾值更加明顯,提高了分類精度.實(shí)驗(yàn)數(shù)據(jù)證明了基于峰度系數(shù)的行人水平行走步態(tài)細(xì)化分類算法對慢走、走和跑的區(qū)分效果要優(yōu)于傳統(tǒng)的時(shí)頻域融合算法.因此,對該步態(tài)的化分其法進(jìn)行改進(jìn),利用該算法對其他多種人體步態(tài)進(jìn)行識別是下一步的研究工作.