本發(fā)明涉及肢體動(dòng)作模式識(shí)別的技術(shù)領(lǐng)域,具體涉及一種基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法。
背景技術(shù):
利用單個(gè)或者多個(gè)傳感器進(jìn)行人體動(dòng)作模式識(shí)別分類是近年來受到世界各地研究者的廣泛重視,通過對(duì)傳感器信號(hào)進(jìn)行有效的處理,就可以判斷產(chǎn)生該信號(hào)的是哪一種動(dòng)作,從而判斷做出這種動(dòng)作的人的意圖以及狀態(tài)。目前,加速度傳感器以其體積小,功耗低,方便攜帶的特點(diǎn)收到了眾多研究者的青睞,大多數(shù)人體動(dòng)作模式識(shí)別的研究都采用加速度傳感器作為研究的重點(diǎn),基于加速度傳感器的人體運(yùn)動(dòng)模式識(shí)別除了應(yīng)用于智能人機(jī)交互外,還可應(yīng)用于智能監(jiān)控、健康監(jiān)控、基于手持設(shè)備的上下文感知及人體運(yùn)動(dòng)能量消耗評(píng)估等領(lǐng)域,有著非常廣闊的應(yīng)用前景。加速度傳感器還可以配合角度傳感器、磁力計(jì)、壓力傳感器等傳感器使用,實(shí)現(xiàn)更為精確的人體動(dòng)作模式識(shí)別以及更豐富的功能。同時(shí),也出現(xiàn)了許多關(guān)于人體動(dòng)作模式識(shí)別的算法以及成果,但是在動(dòng)作模式識(shí)別領(lǐng)域,還有許多需要解決以及完善的問題需要我們?nèi)ヌ剿?。比如目前利用加速度傳感器進(jìn)行動(dòng)作模式識(shí)別的過程中,需要對(duì)加速度信號(hào)進(jìn)行加窗處理,使得動(dòng)作識(shí)別存在延時(shí)問題,這對(duì)與需要實(shí)時(shí)進(jìn)行動(dòng)作模式識(shí)別的應(yīng)用場(chǎng)景來說是不可容忍的缺陷。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是為了解決現(xiàn)有技術(shù)中的上述缺陷,提出一種利用壓力傳感器與加速度傳感器相結(jié)合進(jìn)行下肢動(dòng)作模式識(shí)別的方法,旨在實(shí)現(xiàn)對(duì)下肢運(yùn)動(dòng)模式準(zhǔn)確,實(shí)時(shí)以及細(xì)粒度的識(shí)別。
本發(fā)明的目的可以通過采取如下技術(shù)方案達(dá)到:
一種基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法,所述方法包括下列步驟:
s1、實(shí)時(shí)采集人體下肢運(yùn)動(dòng)的壓力傳感器信號(hào),對(duì)壓力傳感器信號(hào)進(jìn)行上升沿以及下降沿識(shí)別,根據(jù)壓力傳感器數(shù)據(jù)的上升沿以及下降沿標(biāo)定下肢動(dòng)作的開始以及結(jié)束,當(dāng)檢測(cè)到壓力的上升沿后開始采集加速度傳感器三軸加速度信號(hào)并存儲(chǔ),當(dāng)檢測(cè)到壓力的下降沿之后停止采集加速度傳感器三軸加速度信號(hào),將上升沿與下降沿之間采集的加速度傳感器三軸信號(hào)取為加速度信號(hào)片段;
s2、提取所述加速度信號(hào)片段的特征數(shù)據(jù),所述特征數(shù)據(jù)包括頻域特征以及統(tǒng)計(jì)特征;
s3、對(duì)所述加速度信號(hào)片段的特征數(shù)據(jù)進(jìn)行數(shù)據(jù)降維;
s4、使用事先訓(xùn)練好的分類器對(duì)降維后的特征數(shù)據(jù)進(jìn)行分類,得出動(dòng)作模式的分類結(jié)果。
進(jìn)一步地,所述對(duì)壓力傳感器信號(hào)進(jìn)行上升沿以及下降沿識(shí)別的具體過程包括下列步驟:
r1、計(jì)算壓力傳感器信號(hào)p(n)的一階差分p'(n),即
p’(n)=p(n)-p(n-1);
r2、尋找一階差分p'(n)序列中數(shù)值大于15的極大值點(diǎn)與極小值點(diǎn),其中極大值點(diǎn)為可能的上升沿,極小值點(diǎn)為可能的下降沿;
r3、計(jì)算以極大值或極小值點(diǎn)為中心,左、右指定長(zhǎng)度的離散序列的方差σ,當(dāng)方差σ大于設(shè)定閾值時(shí),判斷其為上升沿或者下降沿。
進(jìn)一步地,所述步驟r3具體為:
計(jì)算以極大值或極小值點(diǎn)為中心,左、右指定長(zhǎng)度為5的離散序列的方差σ,當(dāng)方差σ大于設(shè)定閾值時(shí),判斷其為上升沿或者下降沿,其中,所述閾值的取值為200。
進(jìn)一步地,所述頻域特征采用離散余弦變換作為變換系數(shù)。
進(jìn)一步地,所述統(tǒng)計(jì)特征包括:上下四分位數(shù)、加速度信號(hào)片段內(nèi)的最大值和最小值、加速度信號(hào)片段的四分段均值。
進(jìn)一步地,所述分類器采用一對(duì)一的支持向量機(jī)。
進(jìn)一步地,所述動(dòng)作模式的分類包括走路、跑步、跳躍、踏步、踮腳和后退。
進(jìn)一步地,對(duì)所述加速度信號(hào)片段的特征數(shù)據(jù)通過線性判別式分析算法進(jìn)行數(shù)據(jù)降維。
本發(fā)明相對(duì)于現(xiàn)有技術(shù)具有如下的優(yōu)點(diǎn)及效果:
本發(fā)明提出的一種基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法通過壓力傳感器與加速度傳感器相結(jié)合的方式,可以實(shí)時(shí)地對(duì)每一個(gè)完成的動(dòng)作進(jìn)行模式分類,有效減小了動(dòng)作模式識(shí)別的延時(shí);具有更細(xì)粒度的分類效果,本方法可以對(duì)精確地劃分每一個(gè)完成的下肢動(dòng)作而不是一段時(shí)間內(nèi)的動(dòng)作;具有更準(zhǔn)確的分類效果,加速度信號(hào)片段相比加窗的加速度信號(hào)更為簡(jiǎn)單,因此在特征提取時(shí)更為簡(jiǎn)單且特征更為有效,因此識(shí)別率也會(huì)更高。
附圖說明
圖1是本發(fā)明公開的基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法的壓力傳感器以及加速度傳感器放置示意圖;
圖2是加速度傳感器坐標(biāo)系示意圖;
圖3是正常走路狀態(tài)下壓力傳感器信號(hào)圖;
圖4是壓力傳感器信號(hào)一階差分序列圖;
圖5是正常走路狀態(tài)下經(jīng)過上升沿下降沿判定后的壓力傳感器信號(hào)圖;
圖6是正常走路狀態(tài)下加速度傳感器信號(hào)片段圖;
圖7是本發(fā)明實(shí)例實(shí)驗(yàn)結(jié)果混淆矩陣圖;
圖8是本發(fā)明基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法的步驟流程圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例
本實(shí)施例具體公開一種基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法,具體步驟如下:
首先是采集加速度傳感器數(shù)據(jù)以及壓力傳感器的數(shù)據(jù),圖1是壓力傳感器與加速度傳感器的放置示意圖(右腳),其主要放置于鞋子里面,鞋墊下方足跟位置,左右腳均可,選取其中只進(jìn)行放置即可,本實(shí)例選擇將加速度傳感器數(shù)據(jù)和壓力傳感器放置在右腳。圖2為按照?qǐng)D1放置加速度傳感器后期坐標(biāo)系示意圖,在鞋子水平放置時(shí),正前方為y軸正軸,豎直方向向下為z軸方向,水平面正右方為x軸正軸。
放置好壓力傳感器與加速度傳感器之后,將首先實(shí)時(shí)采集壓力傳感器信號(hào)的數(shù)值表示為p(n),圖3為采集到的壓力傳感器信號(hào)圖,壓力傳感器信號(hào)的數(shù)值范圍在0-255之間,其中0代表壓力最大值,255代表壓力值為0,一個(gè)60kg的成年人正常站立數(shù)值大約在25左右。
根據(jù)壓力傳感器數(shù)值,接著需要尋找壓力傳感器信號(hào)的上升沿與下降沿,上升沿代表其壓力信號(hào)數(shù)值上升,即壓力減小,代表一個(gè)下肢動(dòng)作的開始,下降沿代表其壓力信號(hào)數(shù)值下降,即壓力值增大,代表一個(gè)下肢動(dòng)作的結(jié)束。在本方法中識(shí)別上升沿與下降沿的方法如下:
步驟r1、計(jì)算壓力傳感器信號(hào)p(n)的一階差分p'(n),即
p’(n)=p(n)-p(n-1);
步驟r2、尋找一階差分p'(n)序列中數(shù)值大于15的極大值點(diǎn)與極小值點(diǎn),其中極大值點(diǎn)為可能的上升沿,極小值點(diǎn)為可能的下降沿;
步驟r3、計(jì)算以極大值或極小值點(diǎn)為中心,左、右指定長(zhǎng)度的離散序列的方差σ,當(dāng)方差σ大于設(shè)定閾值時(shí),判斷其為上升沿或者下降沿,通常,以極大值或極小值點(diǎn)為中心,計(jì)算左、右指定長(zhǎng)度為5的離散序列的方差σ。并且,通過多次實(shí)驗(yàn)驗(yàn)證,閾值的取值為200較為合適。
圖4為壓力傳感器信號(hào)一階差分序列圖,可以看出其極值較為明顯,因此可以用其作為判斷壓力傳感器信號(hào)上升沿與下降沿的標(biāo)準(zhǔn),此外,在進(jìn)行上升沿判斷與下降沿判斷的時(shí)候,認(rèn)為上升沿與下降沿應(yīng)該是成對(duì)出現(xiàn)的,如果在較短時(shí)間范圍內(nèi)出現(xiàn)連續(xù)的符合判定條件的上升沿或者下降沿,將只認(rèn)為最開始出現(xiàn)的那一個(gè)為下肢動(dòng)作開始的上升沿。圖5為對(duì)圖3壓力值信號(hào)進(jìn)行上升沿判定之后的結(jié)果,其中星形的點(diǎn)代表判定此處為上升沿,米字形點(diǎn)代表判定此處為下降沿。
以上升沿判定點(diǎn)(即圖5中的星形點(diǎn))認(rèn)為是下肢動(dòng)作的開始,從此點(diǎn)開始采集加速度傳感器三軸信號(hào),以下降沿判定點(diǎn)(即圖5中的米字形狀點(diǎn))認(rèn)為是下肢動(dòng)作的結(jié)束,結(jié)束加速度傳感器三軸信號(hào)的采集,期間采集的加速度傳感器三軸信號(hào)記為加速度傳感器片段,三軸分別用表示x(n),y(n),z(n)表示,圖6為采集到的正常走路狀態(tài)下加速度傳感器信號(hào)片段圖。
接下來將對(duì)加速度傳感器信號(hào)片段進(jìn)行特征提取,下面介紹對(duì)加速度傳感器信號(hào)片段提取的特征。本方法采用的特征分為兩種:一種為頻域特征,頻域特征采用離散余弦變換(dct)變換系數(shù);另外一種為統(tǒng)計(jì)特征,統(tǒng)計(jì)特征包括:上下四分位數(shù)、加速度信號(hào)片段內(nèi)的最大值和最小值、加速度信號(hào)片段的四分段均值,但統(tǒng)計(jì)特征包括但不限于上述距離。
離散余弦變換(dct)是一種可分離的變換,一種針對(duì)實(shí)信號(hào)定義的變換,其變換核為余弦函數(shù),特點(diǎn)為在完成到頻域的變換之后得到的也是實(shí)信號(hào),與其相近的變換為離散傅里葉變換(dft),但是dft變換之后含有虛部的信號(hào),相比較dft,dct計(jì)算復(fù)雜度更低,表示更為簡(jiǎn)單,除此之外,dct還有一個(gè)重要的特征就是能量集中特性,生活中經(jīng)常遇到的各類信號(hào)多數(shù)經(jīng)過dct變換后集中在低頻部分,相比dft能用更少的數(shù)據(jù)量將原來的信息表示出來,一維dct變換的公式如下:設(shè){f(x)|x=0,1,...,n-1}為離散的信號(hào)序列,則有
其中,
將x(n),y(n),z(n)進(jìn)行dct變換之后取其前8個(gè)點(diǎn)的系數(shù)作為其頻域特征。因此對(duì)于每一個(gè)動(dòng)作的頻域特征總共有24維的數(shù)據(jù)。
對(duì)于統(tǒng)計(jì)特征選取了三個(gè)序列x(n),y(n),z(n)各自的上下四分位數(shù)、加速度信號(hào)片段內(nèi)的最大值和最小值、加速度信號(hào)片段的四分段均值等特征。四分位數(shù)是指在統(tǒng)計(jì)學(xué)中將序列內(nèi)的數(shù)值由小到大進(jìn)行排列之后分成均勻的四分,位于三個(gè)分割點(diǎn)位置的數(shù)就是四分位數(shù),上四分位數(shù)為排在1/4位置的數(shù)值,下四分位數(shù)為排在3/4位置的數(shù)值,三個(gè)序列共有6維數(shù)據(jù)。加速度信號(hào)片段的四分段均值表示的是將序列進(jìn)行四等分之后分別求出其每一段的平均值,共有12維數(shù)據(jù)。最大值,最小值即是序列中最大以及最小的數(shù)值,共有6維數(shù)據(jù),因此統(tǒng)計(jì)特征共有24維數(shù)據(jù),頻域特征與統(tǒng)計(jì)特征共有48維數(shù)據(jù)。
在完成加速度信號(hào)片段特征提取之后,需要用分類器對(duì)其特征進(jìn)行判斷來對(duì)采集到的動(dòng)作模式進(jìn)行分類。在本方法中,選擇了使用一對(duì)一的支持向量機(jī)(ovosvm)作為分類器,支持向量機(jī)(svm)是90年代中期發(fā)展起來的基于統(tǒng)計(jì)學(xué)習(xí)理論的一種機(jī)器學(xué)習(xí)方法,通過尋求結(jié)構(gòu)化風(fēng)險(xiǎn)最小來提高學(xué)習(xí)機(jī)泛化能力,實(shí)現(xiàn)經(jīng)驗(yàn)風(fēng)險(xiǎn)和置信范圍的最小化,從而達(dá)到在統(tǒng)計(jì)樣本量較少的情況下,亦能獲得良好統(tǒng)計(jì)規(guī)律的目的。它是一種二類分類模型,其基本模型定義為特征空間上的間隔最大的線性分類器,即支持向量機(jī)的學(xué)習(xí)策略便是間隔最大化,最終可轉(zhuǎn)化為一個(gè)凸二次規(guī)劃問題的求解。svm適合于解決二分類問題,但是對(duì)于下肢動(dòng)作模式的分類問題不是簡(jiǎn)單的二分類問題,因此,本方法采用一對(duì)一svm(ovosvms)作為分類器,該分類器對(duì)每?jī)蓚€(gè)類訓(xùn)練一個(gè)svm分類器,因此對(duì)于一個(gè)k類問題,將有k(k-1)/2個(gè)分類函數(shù)。當(dāng)對(duì)一個(gè)未知樣本進(jìn)行分類時(shí),每個(gè)分類器都對(duì)其類別進(jìn)行判斷.并為相應(yīng)的類別投票,最后得票最多的類別即作為該未知樣本的類別。
因?yàn)閟vm分類器是監(jiān)督學(xué)習(xí)算法,即前期需要適量的訓(xùn)練集數(shù)據(jù)進(jìn)行模型的學(xué)習(xí)訓(xùn)練,在本方法實(shí)例中,將會(huì)對(duì)六個(gè)類別的下肢動(dòng)作進(jìn)行分類,分別是:走路、跑步、跳躍、踏步、踮腳和后退走這六類別的動(dòng)作。本方法實(shí)例中采集了14位志愿者的上述六類下肢運(yùn)動(dòng)數(shù)據(jù),每位志愿者每個(gè)動(dòng)作的持續(xù)時(shí)間為100秒。最終本方法實(shí)例采集了2359個(gè)走路動(dòng)作、1141個(gè)跑步動(dòng)作、1655個(gè)踏步動(dòng)作、2103個(gè)跑步動(dòng)作、804個(gè)踮腳動(dòng)作以及1425個(gè)后退走動(dòng)作,總計(jì)9497個(gè)動(dòng)作。上述動(dòng)作均結(jié)合壓力值的上升沿以及下降沿存儲(chǔ)為加速度傳感器信號(hào)片段,并提取出頻域特征以及統(tǒng)計(jì)特征。
因?yàn)槊總€(gè)動(dòng)作的特征維數(shù)高達(dá)48維,對(duì)于本方法實(shí)例的六分類問題而言肯定存在信息冗余的情況,而且過高的維數(shù)對(duì)于svm的訓(xùn)練也會(huì)造成負(fù)面影響,因此,我們將采取線性判別式分析(lda),也叫做fisher線性判別(fld)算法作為數(shù)據(jù)降維的方式,其基本思想是將高維的模式樣本投影到最佳鑒別矢量空間,以達(dá)到抽取分類信息和壓縮特征空間維數(shù)的效果,投影后保證模式樣本在新的子空間有最大的類間距離和最小的類內(nèi)距離,即模式在該空間中有最佳的可分離性。因此,它是一種有效的特征抽取方法。使用這種方法能夠使投影后模式樣本的類間散布矩陣最大,并且同時(shí)類內(nèi)散布矩陣最小。就是說,它能夠保證投影后模式樣本在新的空間中有最小的類內(nèi)距離和最大的類間距離,即模式在該空間中有最佳的可分離性。通過lda算法,將可以獲得最佳的降維矩陣(投影矩陣)w,可以將數(shù)特征維度降低為2-5維,本實(shí)例選取降低至5維以保留更多信息,大大簡(jiǎn)化了svm的訓(xùn)練過程。
本方法實(shí)例將對(duì)降維后的特征用svm進(jìn)行訓(xùn)練,并采用留一法作為驗(yàn)證模型的方式。留一法是指假設(shè)有n個(gè)樣本,將每一個(gè)樣本作為測(cè)試樣本,其它n-1個(gè)樣本作為訓(xùn)練樣本,這樣得到n個(gè)分類器,n個(gè)測(cè)試結(jié)果,用這n個(gè)結(jié)果的平均值來衡量模型的性能,本方法實(shí)例每次將選取13個(gè)志愿者的特征數(shù)據(jù)進(jìn)行訓(xùn)練,剩余一人特征作為測(cè)試集合,經(jīng)過實(shí)驗(yàn)得到圖所示結(jié)果。圖7為對(duì)上述六類動(dòng)作進(jìn)行分類產(chǎn)生的混淆矩陣,實(shí)驗(yàn)結(jié)果表明,采用本方法可以實(shí)現(xiàn)總體識(shí)別率為98.73%的識(shí)別效果,即對(duì)上述9492個(gè)動(dòng)作,正確識(shí)別了9377個(gè),錯(cuò)誤識(shí)別僅僅為120,識(shí)別效果優(yōu)于現(xiàn)有的識(shí)別方法,達(dá)到了高準(zhǔn)確率識(shí)別的目的。
實(shí)驗(yàn)結(jié)果表明本發(fā)明基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法與現(xiàn)有的下肢動(dòng)作模式識(shí)別方式相比有如下有益效果:該方法通過壓力傳感器與加速度傳感器相結(jié)合的方式,可以實(shí)時(shí)地對(duì)每一個(gè)完成的動(dòng)作進(jìn)行模式分類,有效減小了動(dòng)作模式識(shí)別的延時(shí);具有更細(xì)粒度的分類效果,本方法可以對(duì)精確地劃分每一個(gè)完成的下肢動(dòng)作而不是一段時(shí)間內(nèi)的動(dòng)作;具有更準(zhǔn)確的分類效果,加速度信號(hào)片段相比加窗的加速度信號(hào)更為簡(jiǎn)單,因此在特征提取時(shí)更為簡(jiǎn)單且特征更為有效,因此識(shí)別率也會(huì)更高。
圖8為本發(fā)明公開的基于壓力與加速度傳感器的下肢動(dòng)作識(shí)別方法的步驟流程圖。
上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡(jiǎn)化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。