魏旋旋
(上海工程技術(shù)大學(xué) 機(jī)械與汽車工程學(xué)院,上海 201620)
人體運(yùn)動信息廣泛應(yīng)用于運(yùn)動康復(fù)、人機(jī)交互、醫(yī)療健康及人體姿態(tài)評估等領(lǐng)域。通過檢測和識別人體特定動作可以為運(yùn)動員的訓(xùn)練管理、醫(yī)院患者的康復(fù)提供數(shù)據(jù)支持,同時(shí)在虛擬現(xiàn)實(shí)、人機(jī)交互上也具有廣闊的應(yīng)用前景。
慣性傳感器(Inertial Measurement Unit)具有體積小、重量輕、成本低、精度高的特點(diǎn)。通過將加速度計(jì)、陀螺儀、磁力計(jì)等微型傳感器內(nèi)置于可穿戴設(shè)備,獲取人體不同部位的加速度、角速度等信息。利用支持向量機(jī)、神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)等熱門算法可以對人體運(yùn)動信息進(jìn)行識別。Yang 等人在人體的15 個(gè)部位佩戴慣性傳感器對人體動作進(jìn)行數(shù)據(jù)采集,并建立基于慣性傳感器的數(shù)據(jù)庫。吳軍等人利用智能手機(jī)自帶的加速度傳感器采集人體運(yùn)動三軸加速度信息,并利用深度卷積神經(jīng)網(wǎng)絡(luò)對走、坐、躺、跑、站五類動作進(jìn)行識別,準(zhǔn)確率可達(dá)91.2%。佟麗娜等人利用長短期記憶網(wǎng)絡(luò),實(shí)現(xiàn)了特征自動提取,并對多類運(yùn)動模式進(jìn)行時(shí)序建模。實(shí)驗(yàn)證明此方法對慢跑、步行等識別準(zhǔn)確率為97.5%,但自動提取的特征過多導(dǎo)致計(jì)算過于復(fù)雜。Hashim 等人提出了一種降維技術(shù),成功將UCI HAR 數(shù)據(jù)集的561 個(gè)特征減少到66 個(gè),提高計(jì)算速度的同時(shí)將活動識別精度保持在98.72%,但該方法網(wǎng)絡(luò)結(jié)構(gòu)及參數(shù)較為復(fù)雜,難以布置在小型移動設(shè)備上。
慣性傳感器采集的數(shù)據(jù)量龐大且具有一定噪聲,高通濾波器可以分離信號中的噪聲,在特征提取的同時(shí)可以減少數(shù)據(jù)量。因此,本文提出利用切比雪夫二型高通濾波器消除由于身體相對于垂直引力場位置的變化所導(dǎo)致的“緩慢”變化,并提取功率譜密度曲線的峰值及坐標(biāo)作為特征的數(shù)據(jù)處理算法。該算法大大減少了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間,可以實(shí)時(shí)快速進(jìn)行人體運(yùn)動信息的處理和識別。
HAR 數(shù)據(jù)集是由19~48 歲年齡段內(nèi)與30名志愿者,每人在腰部佩戴智能手機(jī)(三星Galaxy S II)進(jìn)行6 項(xiàng)活動(行走、上樓、下樓、坐下、站立、躺下)的加速度和減速度采集所獲得。該數(shù)據(jù)采用50 Hz的恒定速度捕獲了3 軸線加速度和角速度,并手動標(biāo)記數(shù)據(jù)。獲得的數(shù)據(jù)集被隨機(jī)分成2 組,其中70%的志愿者被選中生成培訓(xùn)數(shù)據(jù),30%的測試數(shù)據(jù)被選中。傳感器的佩戴位置如圖1 所示。

圖1 傳感器配置位置圖Fig.1 Sensor configuration location
本文采用Matlab2020a 對HAR 數(shù)據(jù)進(jìn)行處理。首先將行走、上樓、站立、躺下4 種活動的加速度直方圖進(jìn)行可視化,如圖2 所示。從圖2 中可以發(fā)現(xiàn)行走的平均加速度在10 m/s,而躺下的平均加速度在1 m/s,所以根據(jù)加速度的平均值可以很好地區(qū)分行走和躺下;行走和站立的均方根或標(biāo)準(zhǔn)偏差差距較大可以作為區(qū)分特征。而行走和上樓的加速度的平均值、均方根和標(biāo)準(zhǔn)偏差都相差不大,需要用其他方法進(jìn)行區(qū)分。

圖2 加速度直方圖Fig.2 Acceleration histogram
慣性傳感器信號的變化主要由如下因素來確定:
(1)身體動力學(xué)導(dǎo)致的隨時(shí)間的“快速”變化。
(2)身體相對于垂直引力場位置的變化導(dǎo)致的隨時(shí)間的“緩慢”變化。
本文以研究身體動力學(xué)為主,所以利用切比雪夫二型高通濾波器將第二種原因引起的信號波動淡化。濾波后的信號與原始信號的對比如圖3 所示。

圖3 原始信號與濾波后的信號Fig.3 Original signal and filtered signal
將單個(gè)活動的加速度信號和時(shí)間信息提取出來并進(jìn)行繪圖。可以觀察到一定的周期性變化,如圖4 所示。研究中可通過頻域分析中的功率譜密度來尋找到數(shù)據(jù)特征。

圖4 單個(gè)活動加速度與時(shí)間關(guān)系圖Fig.4 Relationship between acceleration and time of single activity
在估計(jì)加速度功率譜密度時(shí),加速度a()是有限持續(xù)時(shí)間內(nèi)的加速度,對此進(jìn)行傅里葉變換:

同時(shí),滿足巴塞伐(Parseval)公式:

式(2)中,等式左端表示加速度在時(shí)間域內(nèi)的總能量,等式右端積分中的被積函數(shù)則稱為能譜密度,該值表示了單位頻率所含有的能量,能譜密度是一個(gè)非負(fù)實(shí)數(shù)。


由式(3)可知功率譜密度為:

行走和主樓的加速度功率譜密度對比曲線如圖5 所示。由圖5 可以發(fā)現(xiàn)不同活動加速度的功率譜密度曲線的峰值以及峰值所對應(yīng)的坐標(biāo)是不同的。最終通過時(shí)域和頻域分析以及各種直方圖的分析,提取了60 個(gè)特征。特征總結(jié)詳見表1。

圖5 行走和上樓的加速度功率譜密度對比圖Fig.5 Comparison of acceleration power spectral density between walking and walking upstairs

表1 特征總結(jié)表Tab.1 Summary of characteristics
本文利用上文數(shù)據(jù)處理算法提取數(shù)據(jù)特征,并結(jié)合已有的RNN 與LSTM 結(jié)合的方式搭建遞歸神經(jīng)網(wǎng)絡(luò)對行走、上樓、下樓、坐下、站立、躺下六項(xiàng)活動進(jìn)行識別。網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)如圖6 所示。本文在嘗試了各種不同優(yōu)化器后,最終采用Adam 優(yōu)化算法對參數(shù)進(jìn)行優(yōu)化。預(yù)處理好的60 個(gè)特征經(jīng)過9 個(gè)遞歸LSTM 層、1 個(gè)全連接層和輸出層后,給出識別結(jié)果。這種方法的預(yù)測精度達(dá)到了92.1%。

圖6 遞歸神經(jīng)網(wǎng)絡(luò)模型Fig.6 Recurrent neural network model
為了證明本文提出的人體動作識別算法的運(yùn)行性能,設(shè)計(jì)了不同算法下的準(zhǔn)確率和運(yùn)行時(shí)間對比試驗(yàn)。實(shí)驗(yàn)所需硬件系統(tǒng)為聯(lián)想Y9000K 2019SE筆記本電腦;軟件為Matlab2020a。利用本文提出的數(shù)據(jù)處理算法,處理HAR 公開數(shù)據(jù)集,在利用Matlab 神經(jīng)網(wǎng)絡(luò)工具包進(jìn)行人體動作識別。最終得到HAR 數(shù)據(jù)集的訓(xùn)練集、驗(yàn)證集、測試集以及總的分類結(jié)果混淆矩陣,如圖7 所示。

圖7 混淆矩陣Fig.7 Confusion matrix
神經(jīng)網(wǎng)絡(luò)的接收機(jī)工作特性曲線,簡稱曲線,如圖8 所示。

圖8 ROC 曲線Fig.8 ROC curve
為了進(jìn)一步驗(yàn)證本文提出的人體動作識別算法的優(yōu)越性,本文利用其他算法模型在相同實(shí)驗(yàn)條件下對HAR 公開數(shù)據(jù)集進(jìn)行處理,并識別6 種人體姿態(tài)。試驗(yàn)結(jié)果與本文提出人體動作識別算法進(jìn)行對比,見表2。

表2 本文算法與其他算法模型的識別準(zhǔn)確率和訓(xùn)練時(shí)間對比Tab.2 Comparison of recognition accuracy and training time between this algorithm and other algorithm models
由表2 可以看出,相同實(shí)驗(yàn)條件下本文提出算法在識別率上與其他算法相差不多,但在算法運(yùn)行時(shí)間上得到了很大的提高,有利于對數(shù)據(jù)的實(shí)時(shí)訓(xùn)練識別。
本文提出了一種基于慣性傳感器識別人體姿態(tài)的算法,解決了人體運(yùn)動信息量大和識別時(shí)間長的問題。設(shè)計(jì)了不同算法在識別精度和訓(xùn)練時(shí)間上的對比試驗(yàn),結(jié)果表明本文算法在訓(xùn)練時(shí)間上遠(yuǎn)快于其他算法。本研究成果有利于對人體的運(yùn)動狀態(tài)進(jìn)行實(shí)時(shí)采集和分析,為研究人類行為打下基礎(chǔ)。利用本文提出的算法還可以對腦卒中病人進(jìn)行步態(tài)的分析和識別,同時(shí)也可以對老人跌倒行為進(jìn)行識別。該算法在醫(yī)療康復(fù)上具有良好的發(fā)展空間。