孫小華
摘要:提出一種基于分類分析的人體運(yùn)動(dòng)狀態(tài)識(shí)別方法。通過(guò)手機(jī)內(nèi)置的加速度傳感器采集相關(guān)數(shù)據(jù),然后對(duì)采集的數(shù)據(jù)進(jìn)行預(yù)處理,采用Softmax回歸分類算法對(duì)人體運(yùn)動(dòng)狀態(tài)進(jìn)行分類。在深度學(xué)習(xí)框架TensorFlow下的實(shí)驗(yàn)結(jié)果顯示此算法分類精度較高,對(duì)靜止、走路、慢跑、上下樓梯、騎車等五種運(yùn)動(dòng)狀態(tài)的綜合識(shí)別率為88.18%。
Abstract: This paper proposes a human motion state recognition method based on classification analysis. The relevant data is collected by the built-in acceleration sensor of the mobile phone, and then the collected data is preprocessed, and the Softmax regression classification algorithm is used to classify the human motion state. The experimental results under the deep learning framework TensorFlow show that the classification accuracy of this algorithm is high, and the comprehensive recognition rate of five kinds of motion states such as static, walking, jogging, up and down stairs, and cycling is 88.18%.
關(guān)鍵詞:人體行為識(shí)別;Softmax回歸分類;加速度傳感器
Key words: human behavior recognition;Softmax regression classification;acceleration sensor
中圖分類號(hào):TN911.3? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1006-4311(2019)26-0239-02
0? 引言
人體運(yùn)動(dòng)狀態(tài)識(shí)別系統(tǒng)通過(guò)各類傳感器實(shí)時(shí)獲取人體的運(yùn)動(dòng)數(shù)據(jù),然后運(yùn)用算法分析對(duì)運(yùn)動(dòng)狀態(tài)進(jìn)行分類識(shí)別,從而判斷出人體當(dāng)前的運(yùn)動(dòng)狀態(tài)。人體運(yùn)動(dòng)狀態(tài)識(shí)別可以用于老人或病人的監(jiān)護(hù)、智能家居等系統(tǒng)。如在智能家居領(lǐng)域,可以通過(guò)分析處理傳感器獲取的數(shù)據(jù),對(duì)人體進(jìn)行跌倒檢測(cè)。之前國(guó)內(nèi)外對(duì)人體運(yùn)動(dòng)狀態(tài)的識(shí)別主要是通過(guò)可穿戴式設(shè)備采集相關(guān)的數(shù)據(jù)進(jìn)行分析,但穿戴這些設(shè)備會(huì)導(dǎo)致人體運(yùn)動(dòng)不便。隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)及傳感器技術(shù)的發(fā)展,智能手機(jī)內(nèi)置了加速度、陀螺儀、光、磁場(chǎng)、氣壓等傳感器可以采集手機(jī)的狀態(tài)數(shù)據(jù),通過(guò)采集手機(jī)的狀態(tài)數(shù)據(jù)可以對(duì)人體的運(yùn)動(dòng)狀態(tài)進(jìn)行分析識(shí)別。與傳統(tǒng)的可穿戴式設(shè)備相比,采用智能手機(jī)進(jìn)行人體運(yùn)動(dòng)狀態(tài)識(shí)別具有便捷性的優(yōu)點(diǎn)。
常用的人體運(yùn)動(dòng)狀態(tài)識(shí)別分類算法有Kmeans聚類、支持向量機(jī)SVM、隱馬爾可夫模型HMM、決策樹(shù)、BP神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)CNN等等。
1? Softmax回歸分類
Softmax回歸分類算法是Logistic回歸分類算法在多分類問(wèn)題上的推廣。在多分類問(wèn)題中,分類標(biāo)簽可以取兩個(gè)以上的值。Softmax回歸分類算法對(duì)手寫(xiě)數(shù)字分類等問(wèn)題有很好的效果,如MNIST手寫(xiě)數(shù)字的識(shí)別正確率可達(dá)92%。
該算法的原理如下:將可以判別為某類的特征相加,然后將這些特征轉(zhuǎn)化為判定為屬于這一類的概率。這些特征可以表示成下式:
式中i代表第i類,j表示第j個(gè)屬性,bi是偏置。
然后對(duì)所有特征計(jì)算softmax,即計(jì)算一個(gè)指數(shù)函數(shù),再進(jìn)行標(biāo)準(zhǔn)化,使得所有類別輸出的概率值的和為1。
其中判定為第i類的概率由下式得到。
特征的值越大的類,輸出的概率也越大;反之,特征的值越小的類,輸出的概率也越小。最后取輸出概率最大的類標(biāo)簽作為該條數(shù)據(jù)的類標(biāo)簽。
2? 算法及流程
2.1 原始數(shù)據(jù)集
本文研究人體靜止、走路、跑步、上下樓梯、騎自行車等狀態(tài)的識(shí)別,本實(shí)驗(yàn)選取了5名實(shí)驗(yàn)者進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)手機(jī)為華為Mate9型號(hào),采集手機(jī)的加速度傳感器數(shù)據(jù)。原始數(shù)據(jù)為人體各種運(yùn)動(dòng)狀態(tài)下Android智能手機(jī)加速度傳感器采集的數(shù)據(jù),通過(guò)人工方式對(duì)采集的數(shù)據(jù)進(jìn)行類別標(biāo)注,如靜止設(shè)為0,走路設(shè)為1,跑步設(shè)為2等等。由于人體運(yùn)動(dòng)的頻率較低,一般小于10Hz,所以擬將傳感器的采集頻率設(shè)為20Hz,根據(jù)香農(nóng)采樣定理,可以保證采樣得到的數(shù)據(jù)完整保留了人體運(yùn)動(dòng)中原有的信息。但通過(guò)后續(xù)實(shí)驗(yàn)發(fā)現(xiàn)采用20Hz的頻率時(shí),實(shí)驗(yàn)效果不好,因此最終將數(shù)據(jù)的采樣頻率設(shè)為50Hz,原始數(shù)據(jù)為手機(jī)傳感器在0.02s內(nèi)采集到的x、y、z三個(gè)方向的加速度信息,即原始數(shù)據(jù)為具有3維特征的數(shù)據(jù)集,每條數(shù)據(jù)對(duì)應(yīng)一種人體運(yùn)動(dòng)狀態(tài)(即類別),如走路、上樓梯、跑步等運(yùn)動(dòng)狀態(tài),用one-hot編碼表示。
圖1和2分別是走路與跑步時(shí)采集的加速度傳感器在三軸方向上的原始數(shù)據(jù)波形圖。從加速度波形圖可以看出,雖然數(shù)據(jù)比較混亂,但三個(gè)維度的數(shù)據(jù)變化還是大致呈現(xiàn)規(guī)律性的周期變化。
2.2 數(shù)據(jù)預(yù)處理
為充分挖掘運(yùn)動(dòng)狀態(tài)信息,通過(guò)滑動(dòng)窗口技術(shù)進(jìn)行特征提取,將每秒時(shí)間內(nèi)采集的數(shù)據(jù)作為一個(gè)樣本,即滑動(dòng)窗口的長(zhǎng)度為1秒。因?yàn)椴蓸宇l率設(shè)為50Hz,因此每秒采集的數(shù)據(jù)有50條,維數(shù)為3*50=150維;同時(shí)為了獲取人體運(yùn)動(dòng)狀態(tài)的變化信息,將采集到的加速度數(shù)據(jù)進(jìn)行增量計(jì)算,計(jì)算每次采集到的加速度數(shù)據(jù)與上一次采集到的加速度數(shù)據(jù)的差值,并將差值放大10倍,類似,每秒獲得的增量數(shù)據(jù)有50條,維數(shù)為3*50=150維,因此通過(guò)預(yù)處理之后得到的數(shù)據(jù)維數(shù)為300。
2.3 處理流程
將經(jīng)過(guò)預(yù)處理過(guò)的數(shù)據(jù)導(dǎo)入Tensorflow深度學(xué)習(xí)框架進(jìn)行處理。初始化模型中的權(quán)值shape為[300,5],其中300表示特征的維數(shù),5表示要識(shí)別分類的類別數(shù)。
為了訓(xùn)練模型,需要定義一個(gè)損失函數(shù)來(lái)描述模型對(duì)人體行為狀態(tài)分類的精度,在此采用交叉熵作為損失函數(shù),交叉熵的定義如下:
其中y'是真實(shí)的概率分布,y是預(yù)測(cè)的概率分布。
接下來(lái)采用隨機(jī)梯度下降方法進(jìn)行訓(xùn)練,設(shè)置學(xué)習(xí)速率為0.01,優(yōu)化目標(biāo)設(shè)為交叉熵cross_entropy。迭代執(zhí)行訓(xùn)練操作,每次只使用一小部分?jǐn)?shù)據(jù)進(jìn)行隨機(jī)梯度下降,隨機(jī)從訓(xùn)練集中抽取100條作為一個(gè)mini-batch,并feed給placeholder,然后進(jìn)行訓(xùn)練,這種方法比采用全樣本進(jìn)行訓(xùn)練的收斂速度要快,迭代次數(shù)為5000次。
完成訓(xùn)練后就可以對(duì)模型的準(zhǔn)確率進(jìn)行驗(yàn)證,求出各種預(yù)測(cè)的人體行為狀態(tài)中概率最大的那一個(gè),然后與實(shí)際的人體行為狀態(tài)標(biāo)簽相比較,如果一致則判別正確,否則判別錯(cuò)誤。將測(cè)試數(shù)據(jù)的特征和標(biāo)簽輸入評(píng)測(cè)流程accuracy,計(jì)算模型中在測(cè)試數(shù)據(jù)集上的準(zhǔn)確率。
整個(gè)處理流程采用Tensorboard工具顯示出來(lái)如圖3所示。
3? 實(shí)驗(yàn)結(jié)果及分析
3.1 實(shí)驗(yàn)數(shù)據(jù)集
實(shí)驗(yàn)數(shù)據(jù)由5名用戶采用華為Mate 9的Android手機(jī)采集的三軸加速度傳感器數(shù)據(jù)組成。數(shù)據(jù)的采樣頻率為50Hz,采集的數(shù)據(jù)分為靜止、行走、慢跑、上下樓梯、騎自行車等五個(gè)日常行為動(dòng)作。采集的數(shù)據(jù)一共有54250條,其中47350條作為訓(xùn)練數(shù)據(jù),6900條作為測(cè)試數(shù)據(jù)。
3.2 實(shí)驗(yàn)結(jié)果
通過(guò)對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練生成模型,在測(cè)試數(shù)據(jù)集上用生成的模型進(jìn)行測(cè)試,得到靜止、走路、跑步、上下樓梯和騎自行車等五種人體行為狀態(tài)的綜合分類精度為88.18%。但如果將上、下樓梯這兩種狀態(tài)單獨(dú)分開(kāi)進(jìn)行判別,判別效果不佳,僅比隨機(jī)猜測(cè)略好。與常用的人體運(yùn)動(dòng)狀態(tài)識(shí)別分類算法相比,此方法計(jì)算量較小,處理速度快,分類精度較高。
4? 結(jié)束語(yǔ)
本文提出了采用Softmax回歸分類算法對(duì)人體運(yùn)動(dòng)狀態(tài)進(jìn)行識(shí)別,可實(shí)現(xiàn)對(duì)靜止、走路、跑步、上下樓梯和騎自行車等狀態(tài)的識(shí)別,實(shí)驗(yàn)結(jié)果可以看出雖然算法可以看作一個(gè)沒(méi)有隱含層的神經(jīng)網(wǎng)絡(luò),但其判別效果良好,分類精度可達(dá)88.18%,但對(duì)上、下樓梯這兩種狀態(tài)判別效果不佳,后續(xù)可以增加陀螺儀、氣壓傳感器等特征信息來(lái)對(duì)上、下樓梯兩種狀態(tài)進(jìn)行識(shí)別。
參考文獻(xiàn):
[1]王忠民,張琮,衡霞.CNN與決策樹(shù)結(jié)合的新型人體行為識(shí)別方法研究[J].計(jì)算機(jī)應(yīng)用研究,2017(12).
[2]黃文堅(jiān),唐源.TensorFlow實(shí)戰(zhàn)[M].中國(guó)工信出版集團(tuán),電子工業(yè)出版社,2017.
[3]王忠民,曹洪江,范琳.一種基于卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的人體行為識(shí)別方法[J].計(jì)算機(jī)科學(xué),2016(A2).
[4]孫冰怡,呂巍,李文洋.基于智能手機(jī)傳感器和SC-HMM算法的行為識(shí)別[J].吉林大學(xué)學(xué)報(bào)(理學(xué)版),2013(6).
[5]黃仁,田豐,田維興.基于加速度傳感器的運(yùn)動(dòng)模式識(shí)別[J].計(jì)算機(jī)工程與應(yīng)用,2015(6).
[6]張?chǎng)?,李治軍,姜守?基于Android手機(jī)傳感器數(shù)據(jù)識(shí)別運(yùn)動(dòng)狀態(tài)[J].智能計(jì)算機(jī)與應(yīng)用,2015(3).
[7]劉斌,劉宏建,金笑天,國(guó)德峰.基于智能手機(jī)傳感器的人體活動(dòng)識(shí)別[J].計(jì)算機(jī)工程與應(yīng)用,2016(4).
[8]周濱,張守權(quán).加速度傳感器熱靈敏度漂移的動(dòng)態(tài)測(cè)試[J].價(jià)值工程,2010,29(33):294-295.