段鵬鵬, 周 宇, 張俊康, 張 卓, 方 凱
(1.浙江工業(yè)大學 計算機科學與技術(shù)學院,浙江 杭州 310000;2.上海交通大學 機械與動力學院,上海 200000)
基于貝葉斯分類算法的電子呼啦圈設計
段鵬鵬1, 周 宇2, 張俊康1, 張 卓1, 方 凱1
(1.浙江工業(yè)大學計算機科學與技術(shù)學院,浙江杭州310000;2.上海交通大學機械與動力學院,上海200000)
針對實體的呼啦圈體積大,不易攜帶,使用不當可能對身體造成傷害的問題,設計了一種基于貝葉斯分類算法的電子呼啦圈。系統(tǒng)使用三軸加速度計采集呼啦圈旋轉(zhuǎn)時腰部的加速度信號,經(jīng)卡爾曼濾波后,提取特定周期內(nèi)的波形特征并以此訓練貝葉斯分類器,利用訓練后的分類器對實時滑動窗口內(nèi)加速度計數(shù)據(jù)進行判斷是否符合轉(zhuǎn)實體呼啦圈腰部的運動特征,并將分類結(jié)果通過藍牙發(fā)送至Android終端。實驗證明:該設計功耗低,實時性好,準確率高。
貝葉斯分類; 卡爾曼濾波; 呼啦圈; 三軸加速度計; 滑動窗口
目前呼啦圈運動非常流行,是一項可以瘦身減肥的體育活動同時又兼具娛樂性[1],但是傳統(tǒng)的呼啦圈體積大、不方便攜帶,需要較大的空間才能運動。同時傳統(tǒng)呼啦圈在甩動時會撞擊腹部、背部內(nèi)的臟器(如腎臟),選擇不當容易傷及臟腑。
文獻[2]中設計的電子呼啦圈以Z軸的加速度絕對值將呼啦圈運動劃分為4種快慢不同的狀態(tài),并將腰部扭動數(shù)據(jù)同步點陣屏轉(zhuǎn)動。該方法抗干擾性差,未考慮呼啦圈旋轉(zhuǎn)時腰部不是單一的平面運動而是非定常單面約束下的三維運動[3,4]。
本文提出了一種基于樸素貝葉斯分類算法[5,6]的電子呼啦圈,硬件上采用超低功耗單片機MSP430F2272作為主控制器,三軸加速度計ADXL345[7]采集信號;算法上,先對
信號進行卡爾曼濾波,然后采用樸素貝葉斯的條件獨立假設計算樣本集的聯(lián)合分布[8],利用訓練后的分類器對實時加速度計數(shù)據(jù)進行判斷是否符合旋轉(zhuǎn)實體呼啦圈時腰部的運動特征[9],并將計數(shù)結(jié)果通過藍牙模塊實時地傳輸?shù)紸ndroid終端。
電子呼啦圈的硬件設計如圖1所示。
圖1 系統(tǒng)硬件設計
主要由三軸加速度計ADXL345、微控制器MSP430F2272、藍牙模塊HC—05及線性穩(wěn)壓器LM9036組成。
加速度計與微控制器采用4線SPI通信,采樣頻率為100Hz;微控制器與藍牙模塊通過串行通信接口,藍牙僅需從微控制器接收計數(shù)結(jié)果,因此,僅用RX口即可,系統(tǒng)通信模式如圖2所示。
圖2 4線SPI通信
算法主要由卡爾曼濾波器和樸素貝葉斯分類器組成。卡爾曼濾波器對加速度計產(chǎn)生的數(shù)據(jù)進行濾波,去掉一些異常數(shù)據(jù)[10,11]。整個系統(tǒng)算法流程如圖3所示。
圖3 算法流程
樸素貝葉斯分類法基于貝葉斯定理并假設特征條件彼此獨立,利用先驗信息和樣本數(shù)據(jù)信息確定事件的后驗概率。
1)每個數(shù)據(jù)樣本用一個n維向量U={c1,c2,…,cn},分別為n個屬性C1,C2,…,Cn的n個度量。
2)現(xiàn)有m個區(qū)間,分別為Z1,Z2,…,Zm,對于未知的數(shù)據(jù)樣本U,分類器將預測U屬于具有最高后驗概率的類P(Zi|U)為
(1)
3)對所有區(qū)間,式(1)分母均相同,因此,只需求出P(U|Zi)P(Zi)的最大值即可。通常假定這些區(qū)間等概率,因此,只需求出P(U|Zi)的最大值
P(U|Zi)=P(C1|Zi)P(C2|Zi)…P(Cn|Zi)
(2)
式(2)中等號右邊的每一項可以通過樣本數(shù)據(jù)集計算得出。
招募10名腰圍身高各異的志愿者轉(zhuǎn)實體呼啦圈,每名志愿者累計轉(zhuǎn)500圈,收集運動過程中的加速度數(shù)據(jù)作為訓練樣本。利用卡爾曼濾波器濾除訓練樣本中一些異常數(shù)據(jù)獲得可用的訓練集。訓練集中的數(shù)據(jù)分為3類,分別為加速度計X,Y,Z軸的數(shù)據(jù)。以時間為橫坐標,加速度數(shù)值為縱坐標,對連續(xù)波形進行分割,求出每位志愿者轉(zhuǎn)一次呼啦圈需要的加速度數(shù)據(jù)個數(shù),并求取平均值m作為后續(xù)滑動窗口大小。計算每個波形的特征參量,包括:均值,方差V,有效值RMS,峰值因子CF,三軸相關(guān)性Rx,y。
以加速度計X軸數(shù)據(jù)為例,一個波形的X軸數(shù)據(jù)記為X1,X2,X3,…,Xm,Y軸數(shù)據(jù)記為Y1,Y2,Y3,…,Ym。各特征值計算公式如下
(3)
(4)
(5)
(6)
(7)
十名志愿者共生成了R(5000)圈訓練數(shù)據(jù),基本包括了轉(zhuǎn)實體呼啦圈的各種狀態(tài),因此,訓練的分類算法能適應不同人的要求,同時為了區(qū)分呼啦圈運動于其他運動,如走路、跳躍、跑步等,又采集了大量其他的動作數(shù)據(jù)作為反面訓練樣本。以2組訓練樣本數(shù)據(jù)訓練樸素貝葉斯分類器。
以走路動作為例,采集走W步的數(shù)據(jù)為非呼啦圈運動的訓練樣本,并以波形特征中的平均值為例(其他特征處理方法一致),訓練步驟如下:
(8)
(9)
CP2=1-CP1
(10)
4)同理求出其他特征參量的概率。
經(jīng)過上述步驟,求出的所有概率即為樸素貝葉斯分類器訓練的結(jié)果。
當電子呼啦圈佩戴在運動者腰帶扣頭進行轉(zhuǎn)呼啦圈運動時,加速度計產(chǎn)生大量實時數(shù)據(jù)流,設置一個長度為m的滑動窗口存儲數(shù)據(jù)[12],將滑動窗口內(nèi)的數(shù)據(jù)放到貝葉斯分類算法中判斷這些數(shù)據(jù)是否符合完成一次轉(zhuǎn)實體呼啦圈運動的數(shù)據(jù),如符合,則計一圈,之后滑動窗口向新產(chǎn)生的數(shù)據(jù)方向滑動m個數(shù)據(jù);否則,不計圈,滑動窗口移動m/4個數(shù)據(jù)。判斷方法如下:
1)提取滑動窗口內(nèi)數(shù)據(jù)的特征(均值、方差、有效值、峰值因子、三軸的相關(guān)性)。
2)查找5個波形特征屬于S個區(qū)間的具體區(qū)間,對應得到該區(qū)間的概率,以X軸數(shù)據(jù)為例,Y軸和Z軸處理方法一致,假設5個波形特征在呼啦圈運動情況下所屬區(qū)間的概率分別為Pa,Pv,Prms,Pcf,Pr,在非呼啦圈運動情況下所屬區(qū)間的概率分別為FPa,F(xiàn)Pv,F(xiàn)Prms,F(xiàn)Pcf,F(xiàn)Pr。
3)根據(jù)概率判斷滑動窗口內(nèi)數(shù)據(jù)是否屬于呼啦圈運動,PX,PY,PZ分別為X軸、Y軸和Z軸在呼啦圈運動下對應的概率,F(xiàn)PX,F(xiàn)PY,F(xiàn)PZ分別為X軸、Y軸和Z軸在非呼啦圈運動下對應的概率,PX和FPX如式(11)、式(12)所示,對應的PY,PZ,F(xiàn)PY,F(xiàn)PZ處理方法一致。如果Ps>Pt,則是呼啦圈運動;否則,不是。Ps和Pt表達式如式(13)、式(14)所示
PX=Pa×Pv×Prms×Pcf×Pr
(11)
FPX=FPa×FPv×FPrms×FPcf×FPr
(12)
Ps=PX×PY×PZ×CP1
(13)
Pt=FPX×FPY×FPZ×CP2
(14)
式(13)、式(14)中CP1和CP2由式(9)、式(10)求得。
電子呼啦圈運行時功耗僅為30mA。
測試另一組20名志愿者,測試者轉(zhuǎn)真實呼啦圈,每名測試者轉(zhuǎn)100圈,測試者轉(zhuǎn)呼啦圈的速度和力度均不同,測試結(jié)果如圖4、圖5所示,系統(tǒng)準確率約為0.92。
圖4 計圈數(shù)結(jié)果
圖5 系統(tǒng)計圈準確率
20名志愿者以同樣方法佩戴裝置各步行100步、跑步100步,跳躍、深蹲100次,測試系統(tǒng)的抗干擾性,結(jié)果如表1所示。
表1 抗干擾性統(tǒng)計
由圖5及表1可知,系統(tǒng)的精確度及抗干擾性較高。
設計了一種基于貝葉斯分類算法的電子呼啦圈,對運動時加速度計數(shù)據(jù)進行濾波分類,并將計圈結(jié)果發(fā)送至Android端。該電子呼啦圈體積小,方便攜帶使用,功耗低,實時性好,準確率高,抗干擾性較強。使用電子呼啦圈時卡路里的消耗量及提高抗干擾性將是后續(xù)工作的重點。
[1] 陳成鈞.呼啦圈的物理學[J].物理,2015(1):47-50.
[2] 高 楊,周 斌,何 移,等.基于微加速度計的虛擬呼啦圈[J].測控技術(shù),2014,33(6):135-138.
[3] Seyranian A P,Belyakov A O.How to twirl a hula hoop[J].American Journal of Physics,2010,79(7):712-715.
[4] Cluff T,Robertson D G E,Balasubramaniam R.Kinetics of Hula hooping: An inverse dynamics analysis[J].Human Movement Science,2007(27):622-635.
[5] 李熙熙,李 宏.基于腿部三角特征的貝葉斯步態(tài)識別方法[J].計算機工程與應用,2008,44(17):195-197.
[6] 賀金鑫,陳圣波,王 陽,等.一種基于樸素貝葉斯分類模型的高光譜礦物精確識別方法[J].光譜學與光譜分析,2014,34(2):505-509.
[7] Chowdhury Debjyoti1,Banerjee Soumya Jyoti,Sanyal Krishnendu,et al.A real time gesture recognition with wrist mounted accele-rometer[C]∥The 2nd International Conference on Information Systems Design and Intelligent Applications,INDIA 2015.
[8] 陳 旋,劉 健,馮新淇,等.基于樸素貝葉斯的差分隱私合成數(shù)據(jù)集發(fā)布算法[J].計算機科學,2015,42(1):236-238.
[9] Roy Subhendu,Ghosh Sraboni,Barar Aratrika,et al.Real-time implementation of electromyography for hand gesture detection using micro accelerometer[C]∥International Conference on Artificial Intelligence and Evolutionary Computations in Engineering Systems,ICAIECES,2015.
[10] 金光明,張國良,陳林鵬,等.MEMS陀螺儀靜態(tài)漂移模型與濾波方法研究[J].傳感器與微系統(tǒng),2007,26(11):48-50.
[11] 楊長林,柏秀亮,劉延飛,等.新息自適應區(qū)間Kalman濾波算法及其應用[J].傳感器與微系統(tǒng),2012,31(11):132-135.
[12] 王 栩,李建中,王偉平.基于滑動窗口的數(shù)據(jù)流壓縮技術(shù)及連續(xù)查詢處理方法[J] .計算機研究與發(fā)展,2004,41(10):1639-1644.
DesignofelectronicHulahoopbasedonBayesclassificationalgorithm
DUAN Peng-peng1, ZHOU Yu2, ZHANG Jun-kang1, ZHANG Zhuo1, FANG Kai1
(1.SchoolofComputerScienceandTechnology,ZhejiangUniversityofTechnology,Hangzhou310000,China;2.SchoolofMechanicalEngineering,ShanghaiJiaoTongUniversity,Shanghai200000,China)
Aiming at problem that Hula hoop is bulky,hard to carry,and improper usage may do harm to the body,an electronic Hula hoop based on Bayes classification algorithm is designed.A three-axis accelerometer is used to capture acceleration signal at waist when tester doing hula hoop exercise,train the Naive Bayesian classifier by the wave characteristics within a given period after Kalman filtering ,the trained classifier is carried out to analyze the real-time data in sliding window,then send the result to android terminal by Bluetooth.The results prove that the system is precision with low-power consumption,good real-time.
Bayes classification; Kalman filtering;Hula hoop; three-axis accelerometer; sliding window
10.13873/J.1000—9787(2017)10—0099—03
2016—11—05
TP 212.9
A
1000—9787(2017)10—0099—03
段鵬鵬(1993-),男,碩士研究生,主要研究方向為嵌入式系統(tǒng),微電子機械系統(tǒng),E—mail:dppisok@163.com 。