基于智能手机陀螺仪数据的行为识别

发布时间:2017-05-25 22:43:36   来源:文档文库   
字号:

基于智能手机陀螺仪数据的行为识别

中文摘要

关键字:陀螺仪 行为识别

英文摘要

keywords

一、绪论 II

1.1背景及研究意义 II

1.2论文的主要工作及章节安排 II

二、相关概念 III

2.1陀螺仪传感器 III

2.1.1原理 III

2.1.2组成 III

2.1.3陀螺仪在手机上的应用 III

2.2机器学习 IV

2.2.1分类 V

2.3 支持向量机SVM V

2.3.1基本原理 V

2.3.2核函数(kernel function VI

2.3.3 SMO算法 VII

2.3人体行为识别 VII

三、实验流程及方法 VII

3.1实验流程 VII

3.2实验工具 VIII

3.3实验方法 VIII

3.3.1 softmax VIII

3.3.2 fitcecoc VIII

3.4评价指标 VIII

四、实验一的过程及结果分析 VIII

4.1实验目的 VIII

4.2实验设计 IX

4.2.1数据说明及处理 IX

4.2.2参数 IX

4.2.3对比结果 X

4.3实验结果 XI

五、实验二 XII

5.1实验目的 XII

5.2实验设计 XII

5.2.1数据说明及处理 XII

5.2.2参数 XII

5.2.3对比结果 XII

六、总结与展望 XII

一、绪论

1.1背景及研究意义

随着信息技术的不断发展与日益成熟,传感器制造技术也有了极大提高,在众多领域中的应用也越来越普遍。传感器技术的应用使获取环境信息和用户活动信息变得切实可行,从而对环境监控、医疗健康事业以及智能家居等其他相关领域起到了很大的辅助作用,尤其是手机传感器技术对整个感知计算环境有着重要的影响。

在过去的十几年中,手机传感器技术或者叫做随身技术已获得研究人员的极大关注,并且这种技术得到了很大的发展,原因在于使用手机式传感器系统可以对个人、家庭以及社区进行长期的监测,从而掌握其行为动机防止意外情况发生,保护器安全性。例如对小脑平衡系统紊乱的病人的复健过程进行监测,可将感知运动强度和心率的传感器连接到病人的手腕和脚踝,获取病人的心率和呼吸频率等信息,通过传感器对病人的实时监控确保病人在安全的运动强度下进行恢复训练。

智能手机传感器作为感知技术计算领域的一个重要分支,由于其便携性与价格较低因而十分具有研究及普遍应用的价值。例如用户通过佩戴智能手机,可在户外、办公等情况下对自身的活动状态进行实时监测,也可以根据历史数据对用户的行为习惯进行建模,从而能够做到自动地调整环境、相关事件的提醒等。在医疗监护领域,可以实时监测判断伤残人士的病情趋势和恢复训练过程以及老人小孩的监护情况。

基于传感器数据的行为识别属于目前的热点研究,但是,目前一般是通过研究智能手机内的加速度传感器或多种传感器共同作用对人体行为识别,少有单独研究陀螺仪对人体行为识别的作用及重要程度。本论文着重研究智能手机陀螺仪对人体行为识别的研究,通过支持向量机对陀螺仪数据进行训练,建立模型,判断对人体六种动作(跑步、站立、坐、躺、上楼梯、下楼梯)的识别能力,得出正确率。并将陀螺仪、加速度、陀螺仪与加速度合集等的正确率做对比,判断出陀螺仪及相关数据在人体行为识别中发挥的作用。

1.2论文的主要工作及章节安排

本论征,通过matlab 2016a将数据分为四个数据组,且每个数据组都包含五种数据集。通过matlab自带的两种函数fitcecocsoftmax对这五种数据进行训练分类,得出每种数据集的准确率。最后通过对比结果,分析造成准确率差异的原因文根据所需特,并判断出fitcecocsoftmax这两种函数对数据集的分类效果。

本论文第一章讲述了陀螺仪传感器的研究背景,正是在这种大背景下,陀螺仪等传感器的才得以发展迅速且研究取得很多成果。

第二章介绍了陀螺仪传感器及其工作原理,同时讲述了支持向量机(SVM)的原理。

第三章概述了试验流程,

第四章

第五章

第六章

二、相关概念

2.1陀螺仪传感器

陀螺仪传感器是一个基于自由空间移动的定位和控制系统,它简单易用,现已被广泛运用于手机等移动便携设备。

2.1.1原理

陀螺仪的原理:角动量守恒,即一个正在高速旋转的物体(陀螺),它的旋转轴所指的方向在不受外力影响时是不变的。我们骑自行车也是这个道理,在自行车比赛中,选手们在转弯时身体十分倾斜却不会倒,正是利用陀螺仪原理,轮子转得越快越不容易倒,因为车轴有一股保持水平的力量。

2-1

根据这个原理,陀螺仪传感器应运而生。 陀螺仪传感器用多种方法读取轴所指的方向并自动将数据信号传给控制系统。

2.1.2组成

1)陀螺转子(常采用同步电机、磁带电机、三相交流电机等拖动方法来使陀螺转子绕自转轴高速旋转,其转速近似于常值)

2)内外框架(或称内、外环,它是使陀螺自转轴获得所需角转动自由度的结构);

3)附件(是指力矩马达、信号传感器等)。

2.1.3陀螺仪在手机上的应用

相比传统重力传感器只能感应左右两个维度的(多轴的重力感应是可以检测到物体竖直方向的转动,但是角度难以判断)变化,陀螺仪通过对偏转、倾斜等动作角速度的测量,可以实现用手控制游戏主角的视野和方向。比如在飞行游戏中,手机既可作为方向盘控制飞机,只需变换不同角度倾斜手机,手机就会相应做出上下左右前后的联动。类似的游戏主要以竞技和模拟驾驶居多。

2-2

其次,可以帮助手机摄像头防抖。拍照时,在我们按下快门时,手机内的陀螺仪测量出手机翻转的角度,将手机产生的偏差反馈给图像处理器,用计算出的结果控制补偿镜片组,对镜头的抖动方向以及卫衣作出补偿,实现更清晰的拍照效果。

再者,智能手机陀螺仪能辅助GPS进行惯性导航。尤其是在没有GPS信号的隧道、高楼或是桥梁附近。陀螺仪可以测量运动的方向和速度,通过将速度乘以时间获得运动的距离,实现精准定位导航,并能修正导航线路。不止是智能手机,目前导航仪和汽车上都安装有这种装置。

最后,智能手机陀螺仪还可以协助手机用户界面实现动作感应。这项功能也十分常见,比如我们经常设置的动态壁纸,它之所以能随着手机角度调整发生偏移,就是靠陀螺仪检测完成的。另外,有些手机还能通过前后倾斜手机实现通讯录的上下滚动,左右倾斜手机实现浏览页面的左右移动或者放大缩小,都是相同的原理。

总的来说,陀螺仪在智能手机中的实用性是非常高的。目前主流的智能手机基本都配备了陀螺仪,它虽然看似不起眼,但是不论是娱乐、通讯、拍照还是出行导航,都离不开陀螺仪,在其他功能上,陀螺仪也会配合其它传感器去完成各种任务。

2.2机器学习

机器学习(Machine Learning,缩写为ML)是一门多领域交叉学科,设计统计学、概率论、逼近论、算法复杂度理论等多门学科。机器学习研究的是计算机(电子计算机、中子计算机、光子计算机或神经计算机等)怎样模拟或者实现人类的学习行为,以获得新的知识或技能,重新组织已有的只是结果使之不断改善自身的性能,他只要使用的是归纳、综合。机器学习已经有了十分广发的应用,例如:数据挖掘、生物特战识别、计算机视觉、语音和手写识别等等。

影响学习系统的最重要因素是环境向系统提供的信息,或者更确切地说是信息的质量。如果信息的质量比较高,与一般原则相差较小,则学习部分比较容易处理。但如果向学习体统提供的信息杂乱无章,那么学习体统需要在获得足够的数据后删除不必要的细节,进而总结推广,并形成指导动作的一般原则,放入知识库,学习任务就较为繁重。

因为学习系统获得的信息或是向系统提供的信息往往是不完全的,因此学习系统进行的推理并不是完全可靠的,他总结的规则可能是正确的,但也可能是错误的。

2.2.1分类

机器学习若学习形式分类,可分为监督学习(superviesd learning)和无

非监督学习(unsuperviesd learning)。在本论文中,我们重点关注监督学习。

监督学习,即在机器学习过程中提示对错指示。监督学习从给定的训练数据集中学习得到一个最优模型,当给定新的数据需要分类时,可以根据这个模型预测结果。监督学习中的一个典型例子就是SVM

监督学习可分为两大类:回归分析(Regression Analysis)和分类(Classification)。

1)回归分析:其数据集是给定一个函数和它的一些坐标点,然后通过回归分析算法来估计原函数模型,求一个最符合这些已知数据集的函数解析式。然后就可通过这个函数解析式来预估其它未知输出的数据了,当我们向其输入特征向量就可以得到相应的标签(label)。

2)分类:其数据集由特征向量与其对应标签组成,当分类器学习了数据后得到学习模型,再给定未知标签的数据即可分类。

2.3 支持向量机SVM

支持向量机(Support Vector Machine,简称SVM)是由Vapnik等人提出的一类可用于分类和回归分析的有监督机器学习模型。其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略就是间隔最大化,最终可以转化为一个凸二次规划问题的的求解。基于其优秀的学习能力,该技术在许多领域都得到了成功的应用。

2.3.1基本原理

SVM旨在在多维空间中找到一个能将全部样本单元分为两类的最优平面,这一平面应使两类中距离最近的点的间距(margin)尽可能最大,分割的超平面位于间距的中间。

2-3

2.3.2核函数(kernel function

根据模式识别理论,低维空间线性不可分的模式通过非线性映射到高维空间则可能实现线性可分,但是如果直接采用这种技术在高维空间进行分类或者回归,则存在确定非线性映射函数的参数和特征空间维数等问题,而最大的灾难则是在高维空间特征空间运算时存在“维数灾难”。而采用核函数技术可以有效地解决这样的问题。

对于训练数据是非线性的情况,SVM的处理方法是选择一个核函数(Kernel Function),通过将数据隐式地映射到高维空间,来解决在原始空间中线性不可分问题。再线性不可分的情况下,SVM首先在低维空间完成计算,然后通过核函数将输入空间映射到高维特征空间,最终在高维特征空间中构造出最优分离超平面,从而把平面上本身不好分的非线性数据分开,同时也避免了直接在高维空间进行复杂的计算。如图2-4所示,一堆数据在二维空间无法划分,从而映射到三维空间进行划分:

2-4

介绍几种常见的也是本实验中用到的核函数:

1)高斯核函数(gaussian

定义如下所示:

k(x,y)=exp(-(||x-y||2)/2*σ2)

通过调控参数σ,高斯核函数具有相当高的灵活性,是应用最广泛的核函数之一。图2-5所示例子为通过高斯核函数将线性不可分的数据映射到了高维空间:

2-5

2)径向基核函数(Radial Basis Function,即RBF

定义如下所示:

k(x,y)=exp(-(||x-y||2)/2*σ2)

SVM应用中,就是指高斯核函数,这个结论在第四章也有所体现。

3)多项式核函数(polynomial

k(x,y)=(1+xTy)p,p=1,2,……N;

4)(linear

k(x,y)=xTy+c

线性核实际上就是原始空间的内积。这个核存在的主要目的就是使得“映射后空间中的问题”和“映射前空间中的问题”两者在形式上统一了起来,即我们只需建立一个模板或是通用表达式,然后代入不同的核便可以方便地将线性与非线性函数同时使用了。

2.3.3 序列最小优化算法

序列最小优化算法(Sequential minimal optimization,缩写为SMO),是一种用于解决SVM训练过程中所产生的优化问题的算法。

2.3人体行为识别

人体行为识别是智能家居中的一个重要的研究方向,是改善人们日常生活的重要技术,人体行为识别主要分为两个方向:基于是觉得和基于传感器的12,基于陀螺仪传感器和加速度传感器的行为识别方法属于后者,是人体行为识别研究中的新兴分支,具有运动数据获得更自由、更人性等优点3

人体行为识别可以认为是时变数据的分类问题,行为识别的方法可以分为基于模板匹配、统计模式识别和基于语义描述这三种。基于模板匹配的方法是人体行为识别的早期方法,在没有大量样本进行训练的时候是一个不错的选择,动态时间规整算法(DTW)是模板匹配方法中常用的技术。相较于模板匹配算法,统计模式识别方法的识别精度更高,基于陀螺仪和加速度传感器的人体行为识别通常使用统计模式识别方法。常用的统计识别方法有决策树、K近邻、贝叶斯、SVM和神经网络等。

随着微机电系统的发展,陀螺仪和加速度传感器广泛应用于各个领域,包括跌倒检测、康复检测等。本文通过对原始数据根据特征提取,分别得到陀螺仪和加速度的特征矩阵,使用fitcecocsoftmax函数进行实验,有效地识别了步行、上楼梯、下楼梯、坐着、站立和躺六种动作。

三、实验流程及方法

3.1实验流程

本论文主要通过MATLAB 2016a工具,使用其自带函数softmaxfitcecoc,分别对处理得到的训练数据集(X_train)与标签训练集(Label_train)进行训练,得到其学习模型。再利用其各自对应的测试集(X_test)与其模型进行分类,得到分类结果。将分类结果与标签测试集(Label_test)进行对比,得出分类的准确率。

3.1.1处理数据

3.1.2实验过程

fitcecoc:清除工作空间-建立svm参数模板-训练-分类-得到准确率的混合矩阵 记录-对比结果,得出结论

softmax

3.2实验工具

本论文所涉及的实验均使用MATLAB工具中的函数,版本为MATLAB 2016aMATLABmatrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。MATLAB是由美国mathworks 公司发布的商业数学软件,用于算法开发、数据分析、数据可视化以及数值计算的高级技术计算语言和交互环境。

3.3实验方法

本实验采用两种方法:softmaxfitcecoc。此两种方法均为matlab自带函数。

3.3.1 softmax

3.3.2 fitcecoc

3.4评价指标

本实验所采用的评价指标统一为:正确率(accuracy,通过将实验得到的准确率高低对比,分析采用的数据对于分类的效果以及实验方法的优劣。

测试数据分类完成后,得到其预测类别,通过plotconfusion函数得到关于准确率的混淆矩阵,通过此混淆矩阵可直观地观察两种函数对于各类分类的准确率。

四、实验一的过程及结果分析

4.1实验目的

1.判断Jerk对分类是否有效

2.加速度(Acc)与陀螺仪(Gyro)分类效果比较

3.softmaxfitcecoc方法分类效果对比

4.对比totalAccbodyAcc

4.2实验设计

4.2.1数据说明及处理

实验所需原始数据下载自UCI网站,主要包括训练集和测试集。训练集分为训练标签(Label_train)训练数据mix_train),测试集分为测试标签(Label_test) 和测试数据mix_test)。

标签取值范围为1~6,分别代表1-步行(WALKING)、2 - WALKING_UPSTAIRS(上楼梯)、3 - WALKING_DOWNSTAIRS(下楼梯)、4 SITTING(坐着)、5 STANDING(站立)和6 LAYING(躺)

训练数据与测试数据都包含561个特征,本论文将mix_train/test根据所需特征分离出四组数据集:

1.cutf:mean(3),Standard Deviation(3),Skewness,correlation,kurtosis

2.cutfmm:1+max+min

3.cutfe:1+entropy

4.cutfmme:1+max+min+entropy

然后将以上四组数据每组都分为五个数据集,以cutf为例:

1.bodyAcc_train/test:仅包含体加速度相关数据

2.bodyGyro_train/test:仅包含陀螺仪需相关数据

3.bodyAcc+Jerk:包含体加速度与Acc_Jerk

4.bodyGyro+Jerk:包含陀螺仪与Gyro_Jerk

5.all34的合集

4.2.2参数

cutf数据组中的bodyAcc_train/testLabel_train/test做实验,修改svm中的参数。

修改的参数有:Standardize,KernelFunction,SolverCoding

图一为个参数的参数值:

4.2.3对比结果

表一中属性名以4.2.2中代号表示

表一

10

11

12

13

14

15

16

17

1&3&7

74.6%

74.8%

74.6%

74.6%

72.5%

72.7%

74.2%

74.4%

1&3&8

-

-

-

-

-

-

-

-

1&3&9

74.5%

74.7%

74.5%

74.3%

72.5%

72.8%

74.6%

74.6%

1&4&7

74.6%

74.8%

74.6%

74.6%

72.5%

72.7%

74.2%

74.4%

1&4&8

-

-

-

-

-

-

-

-

1&4&9

74.5%

74.7%

74.5%

74.3%

72.5%

72.8%

74.6%

74.6%

1&5&7

71.6%

72.0%

69.5%

68.4%

72.5%

63.6%

71.5%

71.2%

1&5&8

-

-

-

-

-

-

-

-

1&5&9

71.9%

72.5%

70.0%

69.3%

72.5%

63.6%

71.8%

71.3%

1&6&7

64.5%

73.2%

76.4%

76.2%

72.5%

65.7%

73.0%

76.5%

1&6&8

-

-

-

-

-

-

-

-

1&6&9

77.3%

77.9%

77.0%

76.6%

72.5%

75.8%

77.0%

77.2%

2&3&7

68.2%

65.0%

67.9%

64.7%

72.5%

56.3%

54.3%

68.0%

2&3&8

-

-

-

-

-

-

-

-

2&3&9

68.2%

65.0%

67.9%

69.2%

72.5%

56.2%

65.6%

67.9%

2&4&7

68.2%

65.0%

67.9%

64.7%

72.5%

56.3%

54.3%

68.0%

2&4&8

-

-

-

-

-

-

-

-

2&4&9

68.2%

65.0%

67.9%

69.2%

72.5%

56.2%

65.6%

67.9%

2&5&7

72.0%

73.6%

70.0%

69.6%

72.5%

63.9%

72.5%

%

2&5&8

-

-

-

-

-

-

-

-

2&5&9

72.7%

73.6%

70.3%

69.3%

72.5%

63.9%

74.1%

%

2&6&7

67.3%

69.4%

74.1%

71.2%

72.5%

67.8%

72.7%

%

2&6&8

-

-

-

-

-

-

-

-

2&6&9

75.0%

73.8%

77.2%

78.7%

74.6%

76.2%

78.1%

%

--表中标‘-’意为无法得出结果,参数无法使用。

可得表一,由表一结果可知:最优准确率为77.9%,因此选取参数为:Standardize:1;KernelFunction:polynomial;Solver:SMO;Coding:onevsall

4.3实验结果

1.softmax

bodyAcc

bodyGyro

bodyAcc+Jerk

bodyGyro+Jerk

all

cutf

74.2%

68.0%

81.0%

73.9%

87.1%

cutfmm

75.2%

71.8%

80.9

76.3%

88.7%

cutfe

76.5%

71.4%

83.4

75.3%

89.6%

cutfmme

75.9%

73.9%

82.6

76.7%

89.7%

2.fitcecoc

根据4.2确定的参数可得表:

bodyAcc

bodyGyro

bodyAcc+Jerk

bodyGyro+Jerk

all

cutf

77.3%

73.3%

78.9%

74.7%

86.2%

cutfmm

77.1%

72.5%

81.3%

76.7%

88.8%

cutfe

79.7%

74.4%

80.7%

76.3%

80.5%

cutfmme

78.9%

73.0%

81.5%

76.9%

90.9%

分析:

1.分别将表一和表二中的数据对比可知:每组bodyAcc+Jerk的正确率均高于bodyAcc、每组bodyGyro+Jerk的正确率均高于bodyGyro,因此,Jerk数据对于人体行为识别有效。

2. 分别将表一和表二中的数据对比可知:每组bodyAcc的正确率均高于bodyGyro,每组bodyAcc+Jerk的正确率均高于bodyGyro+Jerk,因此可得加速度相比于陀螺仪对于人体行为识别更有效。

3.分别将表一、表二中的cutfcutfmm数据组对应数据的准确率做对比,例如,表一中,将cutf数据组与cutfmm数据组中的bodyAccbodyAcc+JerkbodyGyrobodyGyro+Jerk准确率分别做对比,74.2%<75.2%68.0%<71.8%81.0%>80.9%73.9%<76.3%87.1%<88.7%,因此陀螺仪与加速度关于maxmin的数据对于人体行为识别有效。

4.分别将表一、表二中的cutfcutfe数据组对应数据的准确率做对比,例如,表一中,将cutf数据组与cutfe数据组中的bodyAccbodyAcc+JerkbodyGyrobodyGyro+Jerk准确率分别做对比,74.2%>76.5%68.0%<71.4%81.0%<83.4%73.9%<75.3%87.1%<89.6%,因此陀螺仪与加速度关于entorpy的数据对于人体行为识别有效。

5.分别将表一、表二中的cutfmmcutfe数据组对应数据的准确率做对比,例如,表一中,将cutfmm数据组与cutfe数据组中的bodyAccbodyAcc+JerkbodyGyrobodyGyro+Jerk准确率分别做对比,76.5%>75.2%71.4%<71.8%83.4%>80.9%75.3%<76.3%89.6%<88.7%,因此陀螺仪与加速度关于maxmin的数据与entropyminmin的数据对于人体行为识别更有效。

6.为比较softmaxfitcecoc两种方法的优劣,分别将表一、表二中对应位置的数值对比,可知,fitcecoc的准确性略高于sotfmax,因此对于本实验的数据进行人体行为识别,fitcecoc更优一些。

五、实验二

5.1实验目的

通过将原始数据根据特征提取数据,分别得到陀螺仪(Gyro)与加速度(Acc)关于时间域和频率域的数据:tbodyGyro,fbodyGyro,tbodyAcc,fbodyAcc。用softmaxfitcecoc两种方法分别对GyroAcc关于时间域和频率域的数据进行实验,从而根据准确率判定时间域和频率域的数据对于人体行为识别分类的效果。

5.2实验设计

5.2.1数据说明及处理

原始数据包括陀螺仪和加速度时间域与频率域数据,

5.2.2参数

5.2.3对比结果

1.softmax

tbodyAcc

fbodyAcc

tbodyGyro

fbodyGyro

accuracy

84.9%

79.4%

77.0%

75.5%

2.fitcecoc

tbodyAcc

fbodyAcc

tbodyGyro

fbodyGyro

accuracy

由表一表二观察可知:

1.时间域数据试验之后的准确率均高于频率域,因此可得出结论:

2.加速度的时间域和频率域准确度均高于对应的陀螺仪,因此可得出结论:

3.通过softmax得到的准确率均高于其对应数据通过fitcecoc得到的准确率,

六、总结与展望

引用

123:一种基于三维加速度传感器的人体行为识别方法

致谢

本文来源:https://www.2haoxitong.net/k/doc/addf72bdcd22bcd126fff705cc17552707225e36.html

《基于智能手机陀螺仪数据的行为识别.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式