基于贝叶斯分类算法的电子呼啦圈设计

2017-11-01 07:19段鹏鹏张俊康
传感器与微系统 2017年10期
关键词:呼啦圈加速度计卡尔曼滤波

段鹏鹏, 周 宇, 张俊康, 张 卓, 方 凯

(1.浙江工业大学 计算机科学与技术学院,浙江 杭州 310000;2.上海交通大学 机械与动力学院,上海 200000)

基于贝叶斯分类算法的电子呼啦圈设计

段鹏鹏1, 周 宇2, 张俊康1, 张 卓1, 方 凯1

(1.浙江工业大学计算机科学与技术学院,浙江杭州310000;2.上海交通大学机械与动力学院,上海200000)

针对实体的呼啦圈体积大,不易携带,使用不当可能对身体造成伤害的问题,设计了一种基于贝叶斯分类算法的电子呼啦圈。系统使用三轴加速度计采集呼啦圈旋转时腰部的加速度信号,经卡尔曼滤波后,提取特定周期内的波形特征并以此训练贝叶斯分类器,利用训练后的分类器对实时滑动窗口内加速度计数据进行判断是否符合转实体呼啦圈腰部的运动特征,并将分类结果通过蓝牙发送至Android终端。实验证明:该设计功耗低,实时性好,准确率高。

贝叶斯分类; 卡尔曼滤波; 呼啦圈; 三轴加速度计; 滑动窗口

0 引 言

目前呼啦圈运动非常流行,是一项可以瘦身减肥的体育活动同时又兼具娱乐性[1],但是传统的呼啦圈体积大、不方便携带,需要较大的空间才能运动。同时传统呼啦圈在甩动时会撞击腹部、背部内的脏器(如肾脏),选择不当容易伤及脏腑。

文献[2]中设计的电子呼啦圈以Z轴的加速度绝对值将呼啦圈运动划分为4种快慢不同的状态,并将腰部扭动数据同步点阵屏转动。该方法抗干扰性差,未考虑呼啦圈旋转时腰部不是单一的平面运动而是非定常单面约束下的三维运动[3,4]。

本文提出了一种基于朴素贝叶斯分类算法[5,6]的电子呼啦圈,硬件上采用超低功耗单片机MSP430F2272作为主控制器,三轴加速度计ADXL345[7]采集信号;算法上,先对

信号进行卡尔曼滤波,然后采用朴素贝叶斯的条件独立假设计算样本集的联合分布[8],利用训练后的分类器对实时加速度计数据进行判断是否符合旋转实体呼啦圈时腰部的运动特征[9],并将计数结果通过蓝牙模块实时地传输到Android终端。

1 系统架构设计

电子呼啦圈的硬件设计如图1所示。

图1 系统硬件设计

主要由三轴加速度计ADXL345、微控制器MSP430F2272、蓝牙模块HC—05及线性稳压器LM9036组成。

加速度计与微控制器采用4线SPI通信,采样频率为100Hz;微控制器与蓝牙模块通过串行通信接口,蓝牙仅需从微控制器接收计数结果,因此,仅用RX口即可,系统通信模式如图2所示。

图2 4线SPI通信

2 算法设计

算法主要由卡尔曼滤波器和朴素贝叶斯分类器组成。卡尔曼滤波器对加速度计产生的数据进行滤波,去掉一些异常数据[10,11]。整个系统算法流程如图3所示。

图3 算法流程

朴素贝叶斯分类法基于贝叶斯定理并假设特征条件彼此独立,利用先验信息和样本数据信息确定事件的后验概率。

1)每个数据样本用一个n维向量U={c1,c2,…,cn},分别为n个属性C1,C2,…,Cn的n个度量。

2)现有m个区间,分别为Z1,Z2,…,Zm,对于未知的数据样本U,分类器将预测U属于具有最高后验概率的类P(Zi|U)为

(1)

3)对所有区间,式(1)分母均相同,因此,只需求出P(U|Zi)P(Zi)的最大值即可。通常假定这些区间等概率,因此,只需求出P(U|Zi)的最大值

P(U|Zi)=P(C1|Zi)P(C2|Zi)…P(Cn|Zi)

(2)

式(2)中等号右边的每一项可以通过样本数据集计算得出。

2.1 训练样本特征提取

招募10名腰围身高各异的志愿者转实体呼啦圈,每名志愿者累计转500圈,收集运动过程中的加速度数据作为训练样本。利用卡尔曼滤波器滤除训练样本中一些异常数据获得可用的训练集。训练集中的数据分为3类,分别为加速度计X,Y,Z轴的数据。以时间为横坐标,加速度数值为纵坐标,对连续波形进行分割,求出每位志愿者转一次呼啦圈需要的加速度数据个数,并求取平均值m作为后续滑动窗口大小。计算每个波形的特征参量,包括:均值,方差V,有效值RMS,峰值因子CF,三轴相关性Rx,y。

以加速度计X轴数据为例,一个波形的X轴数据记为X1,X2,X3,…,Xm,Y轴数据记为Y1,Y2,Y3,…,Ym。各特征值计算公式如下

(3)

(4)

(5)

(6)

(7)

2.2 训练分类算法

十名志愿者共生成了R(5000)圈训练数据,基本包括了转实体呼啦圈的各种状态,因此,训练的分类算法能适应不同人的要求,同时为了区分呼啦圈运动于其他运动,如走路、跳跃、跑步等,又采集了大量其他的动作数据作为反面训练样本。以2组训练样本数据训练朴素贝叶斯分类器。

以走路动作为例,采集走W步的数据为非呼啦圈运动的训练样本,并以波形特征中的平均值为例(其他特征处理方法一致),训练步骤如下:

(8)

(9)

CP2=1-CP1

(10)

4)同理求出其他特征参量的概率。

经过上述步骤,求出的所有概率即为朴素贝叶斯分类器训练的结果。

2.3 呼啦圈运动判断

当电子呼啦圈佩戴在运动者腰带扣头进行转呼啦圈运动时,加速度计产生大量实时数据流,设置一个长度为m的滑动窗口存储数据[12],将滑动窗口内的数据放到贝叶斯分类算法中判断这些数据是否符合完成一次转实体呼啦圈运动的数据,如符合,则计一圈,之后滑动窗口向新产生的数据方向滑动m个数据;否则,不计圈,滑动窗口移动m/4个数据。判断方法如下:

1)提取滑动窗口内数据的特征(均值、方差、有效值、峰值因子、三轴的相关性)。

2)查找5个波形特征属于S个区间的具体区间,对应得到该区间的概率,以X轴数据为例,Y轴和Z轴处理方法一致,假设5个波形特征在呼啦圈运动情况下所属区间的概率分别为Pa,Pv,Prms,Pcf,Pr,在非呼啦圈运动情况下所属区间的概率分别为FPa,FPv,FPrms,FPcf,FPr。

3)根据概率判断滑动窗口内数据是否属于呼啦圈运动,PX,PY,PZ分别为X轴、Y轴和Z轴在呼啦圈运动下对应的概率,FPX,FPY,FPZ分别为X轴、Y轴和Z轴在非呼啦圈运动下对应的概率,PX和FPX如式(11)、式(12)所示,对应的PY,PZ,FPY,FPZ处理方法一致。如果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)求得。

3 测试结果

电子呼啦圈运行时功耗仅为30mA。

测试另一组20名志愿者,测试者转真实呼啦圈,每名测试者转100圈,测试者转呼啦圈的速度和力度均不同,测试结果如图4、图5所示,系统准确率约为0.92。

图4 计圈数结果

图5 系统计圈准确率

20名志愿者以同样方法佩戴装置各步行100步、跑步100步,跳跃、深蹲100次,测试系统的抗干扰性,结果如表1所示。

表1 抗干扰性统计

由图5及表1可知,系统的精确度及抗干扰性较高。

4 结束语

设计了一种基于贝叶斯分类算法的电子呼啦圈,对运动时加速度计数据进行滤波分类,并将计圈结果发送至Android端。该电子呼啦圈体积小,方便携带使用,功耗低,实时性好,准确率高,抗干扰性较强。使用电子呼啦圈时卡路里的消耗量及提高抗干扰性将是后续工作的重点。

[1] 陈成钧.呼啦圈的物理学[J].物理,2015(1):47-50.

[2] 高 杨,周 斌,何 移,等.基于微加速度计的虚拟呼啦圈[J].测控技术,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] 李熙熙,李 宏.基于腿部三角特征的贝叶斯步态识别方法[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] 陈 旋,刘 健,冯新淇,等.基于朴素贝叶斯的差分隐私合成数据集发布算法[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陀螺仪静态漂移模型与滤波方法研究[J].传感器与微系统,2007,26(11):48-50.

[11] 杨长林,柏秀亮,刘延飞,等.新息自适应区间Kalman滤波算法及其应用[J].传感器与微系统,2012,31(11):132-135.

[12] 王 栩,李建中,王伟平.基于滑动窗口的数据流压缩技术及连续查询处理方法[J] .计算机研究与发展,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-),男,硕士研究生,主要研究方向为嵌入式系统,微电子机械系统,E—mail:dppisok@163.com 。

猜你喜欢
呼啦圈加速度计卡尔曼滤波
彩虹
山的呼啦圈
改进的扩展卡尔曼滤波算法研究
系外行星那些事——“呼啦圈”法
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
胖胖一家和瘦瘦一家
基于遗传算法的加速度计免转台标定方法
常温下硅微谐振加速度计零偏稳定性的提高
基于模糊卡尔曼滤波算法的动力电池SOC估计
高g值加速度计高冲击校准技术综述