北京信息科技大學高動態(tài)導航技術北京市重點實驗室,北京 100101
人體運動模式識別是指對人體多種運動狀態(tài)的感知過程,主要通過對傳感器數(shù)據(jù)的分析,實現(xiàn)運動模式的識別[1]。在行人導航航位推算系統(tǒng)中,準確的運動模式認知,有助于準確獲得行為軌跡,可應用于老弱病殘等群體日??醋o、行人導航、消防救援等領域[2]。
FederiaInderst等人[3]通過腰部穿戴IMU單元測量慣性數(shù)據(jù),提取標準差、幅值范圍和最值作為分類特征,采用兩級分類方式,實現(xiàn)分類正確率為87.56%。Thomas Moder等人[4]提取行人運動的最大值、均值、標準差、均方差、四分位差和頻率為分類特征,采用決策樹進行運動分類與識別,識別率為89%。NatthaponPannurat等人[5]提取多種時域數(shù)據(jù)作為分類特征,對八種分類算法進行評估,SVM分類方法對運動模式識別率為91%。
但以往方法,均存在選取的特征向量信息重疊的情況,沒有解決特征冗余的問題?;谶@些研究,本文基于Relief-F算法對IMU提取的特征向量進行權重估計,根據(jù)Relief-F算法構造一個特征元素權重向量,增大不同類特征向量的差異性,作為輸入進行支持向量機分類計算,識別站立、走、跑、跳、跌倒、上樓、下樓7種運動狀態(tài),提高了人體運動模式識別分類的精度和效率。
本文采用法國SBG Systems公司的MEMS慣性測量單元Ellipse-N進行測試,模塊安裝在測試人員腰部,如圖1所示,依照右手笛卡爾坐標系,傳感器的x軸與地面垂直,y軸與地面平行,z軸指向人體運動前進方向。
對傳感器原始數(shù)據(jù)預處理以提取運動傳感器的時域特征,采用3階巴特沃斯低通濾波,截止頻率fc=5Hz,如圖2所示。可以看出,數(shù)據(jù)經過預處理后,消除了噪聲,保留了加速度信號的特征,信號更加平滑,系統(tǒng)的分類準確度明顯提高。
特征提取對于多運動模式識別的精度有很大的影響。慣性測量單元Ellipse-N采集三軸加速度信號和三軸角速度信號,其中每軸數(shù)據(jù)都可以提取出不同的特征量。因為時域特征的提取計算復雜度低、耗時短[6],所以本文選取適用于實時性要求較高的系統(tǒng)的多種時域特征。用n來表示一個時間窗口的大小,即窗口內數(shù)據(jù)的行數(shù),用i來表示第i行數(shù)據(jù)。
取三軸合加速度A為特征提取與分類的初始數(shù)據(jù),ax、ay、az分別為加速度計的三軸數(shù)據(jù)。在確保精度的同時,要減少計算復雜性。合加速度公式為:
特征向量β由多個時域特征元素βi(i∈{1, 2, 3, 4,5, 6})構成,特征向量公式為:
式中,β1—方差;
β2—四分位間距;
β3—峰值;
β4—加速度均值;
β5—過均值點個數(shù);
β6—幅值。
(1)方差
設x1,x2,…,xn是角速度傳感器數(shù)據(jù)x的一個樣本,特征元素方差β1公式如下式所示:
圖3為多種模式下方差的分布。圖中定義每50個數(shù)據(jù)點劃分為一個窗口,模擬實時情況下的數(shù)據(jù)處理。
(2)四分位間距
取特征元素β2為四分位間距,把加速度計x軸的數(shù)據(jù)ax從小到大排列為ax1,ax2,...axn,并均分為四份,處于三個分割點位置的數(shù)值即為四分位數(shù)(Quartile)。第三個四分位數(shù)和第一個四分位數(shù)的差值即為四分位間距(InterQuartile Range,IQR),計算公式為:
式中:IQR—四分位間距;
Q1—第一個四分位數(shù);
Q3—第三個四分位數(shù)。
四分位間距的分布情況如圖4所示。
(3)均值
特征元素加速度均值β3,分布情況如圖5所示,計算公式如下:
(4)最大值
特征元素加速度最大值β4,可反應加速度信號在一個周期內的變化強度,峰值絕對值越大,說明運動幅度越大,可用來區(qū)分運動和靜止的狀態(tài)模式。最大值的分布情況如圖6所示,計算公式如下。
其中,A—特征元素幅值。
(5)過均值點個數(shù)
特征元素過均值點個數(shù)β4,計算公式為:
(6)幅值
特征元素幅值β6,定義為最大值和最小值之差,計算公式為:
Relief-F(Relevant Features)是Relief算法的擴展,由Kononenko[7]于1994年在Kira工作的基礎上提出的一種處理多類別特征選擇算法。這是一種過濾式特征選擇方法,也叫特征權重算法,根據(jù)各個特征和類別的相關性賦予不同的權重,權重值小于某個閾值的特征將被剔除,僅能處理兩類別數(shù)據(jù)。
設D={X1,X2,...,Xm}(i=1, 2…m)是待進行分類的對象全體,Xi為其中任意一個樣本,xi=[xi1,xi2,…,xin]T(p=1, 2…n)表示Xi的n個特征值,λi=[ai1,ai2,…,ain]T(p=1, 2…n)表示Xi各維特征值的權值。從D中隨機選擇樣本Xi以后,從和Xi同類的樣本中尋找k個最近鄰樣本H={H1,H2,...,Hk}(j=1, 2…k) (特征值hj=[hj1,hj2,…,hn]Tp=1,2…n),稱為Near Hit,從和Xi不同類的樣本中尋找k個最近鄰樣本M={M1,M2,...,Mk}(j=1,2…k) (特征值mj=[mj1,mj2,…,mn]Tp=1,2…n),稱為Near Misses。
設diff_hiti是n×1的矩陣,表示Xi和H在每個特征上的差異:
其中,max(xi) 、min(xi)—特征值中最大值和最小值。
設diff_missi是n×1的矩陣,表示Xi和M在每個特征上的差異:
其中,P(L)—待分類類別的概率,是第L類的樣本數(shù)與數(shù)據(jù)集中樣本的總數(shù)之比。
此過程重復m次進行迭代,權重值由下式更新:
由此,得到特征集中每一個特征的權重值向量λm。
支持向量機(Support Vector Machine,SVM)通過構造一個分類函數(shù)或分類器,把數(shù)據(jù)庫中的數(shù)據(jù)項非線性映射到一個高維特征空間中,從而進行線性分類,然后在新特征空間中構造最優(yōu)分類面,形成樣本分類,可用于預測未知數(shù)據(jù)[8]。SVM算法簡單,魯棒性好,在過擬合、運算速度和分類精度等方面都比傳統(tǒng)的分類算法具有明顯的優(yōu)勢。
考慮線性可分的分類問題,設訓練樣本集合為:
其中,每一個xi對應一個數(shù)據(jù)向量;yi是xi對應的類標簽;d為空間維數(shù)。
設d維空間中線性判別函數(shù)的一般形式為:
其中,w—法向量;
b—偏移量,超平面與原點的距離;
(w*,b*) —最優(yōu)解。
根據(jù)SVM的基本思想,如果超平面分類線性函數(shù)f(x)=sign(w*x+b*)可以將訓練樣本準確的區(qū)別開,并且使分類間隔最大即離超平面最近的距離其實是最遠的,則這個超平面是最優(yōu)超平面[9],其解(w*,b*)為最優(yōu)解。
對于線性不可分的線性支持向量機的學習問題,變成如下凸二次規(guī)劃問題:
其中,ξi—松弛變量;
C—懲罰參數(shù),C〉0。
設問題(14)的解為(w*,b*),于是可以得到最優(yōu)分離超平面w*x+b*=0及分類決策函數(shù)f(x)=sign(w*x+b*)。
對于非線性可分的運動模式分類問題要引入核函數(shù),將訓練樣本映射到高維空間,問題可轉變?yōu)榫€性可分。核函數(shù)的加入將分類模型轉變?yōu)橄铝泄剑?/p>
其中,K(xi,x)—核函數(shù)。
則式(14)中的優(yōu)化問題變成如下形式:
對于非線性可分的運動模式分類問題要引入核函數(shù),把特征權向量和核函數(shù)二者結合起來,可以得到特征加權核函數(shù),然后再應用到非線性SVM中,為得到較佳的實驗效果,選擇高斯核函數(shù)作為高斯徑向基函數(shù)分類器的核函數(shù)。
(1)收集原始樣本數(shù)據(jù)集D:
(2)根據(jù)Relief- F算法分別計算每個特征向量的權值(m=30,迭代30次),得出下式[7]:
剔除特征屬性權重值最小的β5,從上述權重值可以看出,方差、均值、四分位間距等都是分類主要的影響因素,增大其權重值(按照踢出的權重值取平均,加在各個權值里),由此構造新的特征權重向量:
(3)選取高斯核函數(shù)K(x,xc):
其中,xc—核函數(shù)中心;
σ—核函數(shù)的寬度參數(shù),控制函數(shù)的徑向作用范圍。
選取適當?shù)膮?shù)C,構造并求解最優(yōu)化問題:
其中,α—拉格朗日乘子。
(4)選擇α*的一個正分量計算:
由此構造決策函數(shù):
為了驗證本文所提出方法的有效性,設計了測試實驗。實驗人數(shù)30(男性20名,女性10名),按要求完成站立、走、跑、跳、跌倒、上樓、下樓7種運動模式。在實驗過程對測試人員的行為不作任何約束,跌倒實驗在4m×1m×0.2m的海綿墊子上完成。
本文進行兩組對比實驗,分別采用多時域特征向量和基于Relief-F特征加權的多時域特征向量作為SVM運動模式識別的數(shù)據(jù)。數(shù)據(jù)分別在系統(tǒng)平臺上實驗驗證,以分類準確度(一種運動模式被分類器判定為其所屬類別的幾率)作為評判標準。實驗結果如表1~表4所示。
表1、表2為第一組實驗數(shù)據(jù),實驗采用多時域特征向量作為SVM運動模式識別的數(shù)據(jù)。其中表1為7種運動模式的分類準確度??梢钥闯觯捎谂c其它幾種動作的區(qū)分度較大,站立的準確度達到100%;而坐、跳和跌倒、上樓和下樓區(qū)分度較小,準確度較低。表2列出了7種運動模式的混淆情況,跳、跌倒之間易錯誤識別,上樓、下樓易誤識別為走。
表3和表4列出了第二組實驗的結果,實驗采用基于Relief-F特征加權的多時域特征向量作為SVM運動模式識別的數(shù)據(jù)。對于較難區(qū)分的上樓和下樓,識別精度提高了5%,跌倒的識別精度提高了7%。
由此可以看出,采用本文提出的方法在訓練時間上好于傳統(tǒng)的SVM分類器。采用相同服務器進行測試,傳統(tǒng)SVM訓練平均時間為3s,而本文平均為1.5s,僅為傳統(tǒng)方法耗時的1/2,顯示出其時間上的優(yōu)勢。
表1 第一組實驗7種運動模式的分類準確度
表2 第一組實驗 7種運動模式的混淆矩陣
表3 第二組實驗7種運動模式的分類準確度
表4 第二組實驗中7種運動模式的混淆矩陣
基于對Relief-F特征加權SVM的人體運動模式識別算法的詳細闡述,對多種運動狀態(tài)樣本集進行了分類。實驗結果表明,這種方法在分類準確率上優(yōu)于傳統(tǒng)的SVM分類器,具有計算準確度高、高效、簡單的特點。