当前位置:首页 期刊杂志

使用基于加速度传感器的智能手机进行活动识别

时间:2024-09-03

王星峰

(辽东学院 信息工程学院,辽宁 丹东 118003)



【信息科学与工程】

使用基于加速度传感器的智能手机进行活动识别

王星峰

(辽东学院 信息工程学院,辽宁 丹东 118003)

文章描述和评估了一个基于智能手机的加速度传感器进行活动识别的系统,它可以识别用户的物理活动。为了实施该系统,从10个用户的日常活动中采集加速度数据,像手机分离、空闲、步行、奔跑和跳跃,然后汇集这个时间序列数据汇总成5 min的时间间隔,最后使用这个训练结果数据去预测未知的活动。测试实验表明,使用该模型可以精确的对上述5种活动进行分类和预测。

加速度传感器;活动分类;数据挖掘;智能手机

安卓手机,实际上和所有新的智能手机和智能音乐播放器一样,使用三轴加速度传感器来测量所有三个空间的加速度。这些加速度传感器也有能力侦测这个设备的方向(同时也能侦测地球重力的方向),能为活动识别提供有用的信息。加速度传感器最初被使用在这些设备中去支持高级游戏和自动屏幕旋转,但是显然它们还应用于其他场合。实际上,如果使用加速度传感器去识别用户的活动,可以建立许多有用的应用。

为了完成这个活动识别任务,使用了监督学习。首先从10个用户采集加速度数据,当他们进行不同的活动,像“手机分离”“空闲”“步行”“奔跑”和“跳跃”。这里“手机分离”指的是手机离开身体, “静止”指的是“坐着”或者“站着”,意思是没有活动。首先采集这个源时间序列加速度数据,然后建立预测模型为活动识别使用分类算法。这个基于加速度传感器的活动识别主题不是新的。Bao 和 Intille[5]开发了一个活动识别系统去鉴别20种活动,他们使用2轴加速度传感器放置在用户身体的5个部位。相关的研究已经相类似的聚焦于如何使用一个基于各种加速度传感器设备去识别用户活动的一个范围。

文章的工作不同于大多数之前的工作,这里使用一个商业的通用设备而不是一个研究设备,这里使用一个单一设备方便地放置在用户的口袋里,而不是多种设备分布在身体上,并且不需要用户执行附加的行动。这里做的一个贡献是,已经采集和正在采集的数据,计划在将来公开。对其他的研究者来说,这个数据能充当一个资源。文章也证明了源时间序列加速度数据如何能被采集,能被使用传统的分类算法。文章证明了使用普通可获得的设备去执行活动识别,仍然可以达到高精确结果。最后,文章的工作将帮助关注挖掘无线传感器数据和将刺激这个领域的附加工作。

1 相关工作

一些早期的基于加速度传感器的活动识别,聚焦于使用多个传感器放置在用户身体的多个部位。其中一个最早期的研究主题,Bao 和 Intille[5]使用了5个2轴加速度传感器放置在用户的右臀部、手腕、、上臂、脚踝和大腿,从20个用户身上采集数据。使用决策表、基于实例的学习、朴素贝叶斯分类,他们建立模型去识别20个日常活动。他们的研究结果表明,加速度传感器放置在大腿上是最有利于区分不同活动的。这个发现让我们决定,这个测试项目放置这个手机在最方便的位置上——他们的裤兜里。

一些研究已经聚焦于联合多种类型的传感器附加在加速度传感器上进行活动识别。Maurer[18]使用 “eWatch”设备放置在腰带、衬衣口袋、裤兜、背包和颈部去识别不同的6个活动。每一个”eWatch”由一个2轴的加速度传感器和一个光传感器组成。决策树、k最近邻、朴素贝叶斯和贝叶斯网络分类与5倍交叉校验被使用。

少数的研究,像这篇文章的,使用一个实际的商业移动设备去采集数据进行活动识别。这些系统提供了一个有别于其他的基于加速度传感器系统的优势,因为他们是不引人注目的和不需要任何附加的设备进行数据采集,以及能够进行精确地识别。Miluzzo[21]研究了多种类型传感器(像麦克风、加速度传感器、GPS和摄像头)的使用,以及在智能手机上进行活动识别和移动社交网络应用。为了实现这个活动识别任务,他们从10个用户去采集加速度数据,并为“步行”“跑步”“坐着”和“站立”创建一个活动识别模型。这个模型区别坐着和站立状态是非常困难的,但这个任务这里的模型很容易完成。

2 活动识别任务

2.1 数据采集

为了采集数据,必须有一些用户携带一个安卓智能手机。首先需要取得10个志愿者的帮助去携带一个智能手机。这些志愿者携带安卓手机在他们的前裤兜里,以及被请求在特定的时间段去做“手机分离”、“空闲”、“步行”、“奔跑”和“跳跃”5个活动。

手机分离:这个用户当前没有持有手机。

空闲的:这个用户在坐着或者站立的情况下持有手机。

步行的:这个用户在走路。

奔跑的:这个用户在跑步。

跳跃的:这个用户在跳跃。

这个数据采集工作由一个应用程序在手机上执行。这个应用程序通过一个简单的图形用户接口,允许我们去记录这个用户的姓名、数据采集和标识这个活动的执行。这个应用程序允许我们去控制什么样的传感器数据(例如,加速度传感器、螺旋传感器)被采集和以什么频率被采集。这里每20 ms采集一个加速度数据,因此每秒钟有50个样品。

2.2 特征产生和数据转换

标准分类算法不能被直接的应用到原始时间序列加速度数据。取而代之,首先必须转换源时间序列数据为样品。一个样品窗口有512个样品被使用。512个样品被选择基于之前论文的推荐,因为对活动识别来说它是足够的,还因为512是2n的一个数字,适合于快速傅里叶变换算法。滑动窗口的大小设定为100个样品。

下面的7个特征被选择,是基于我们自己的讨论和前人的推荐:

基础频率:观察窗口里信号的基础频率。

最大振幅:观察窗口里信号的最大值。

最小振幅:观察窗口里信号的最小值。

烈度:观察窗口里信号的烈度值。

基础频率强度:观察窗口信号的基础频率强度。

步数:观察窗口信号的步数值。

位置关系:智能手机的放置方向。

如何能得到这个信号的基础频率呢?基于这个样品窗口,对信号进行快速傅里叶变换,实现信号从时域到频域的转换[3]。这个最终值是这个信号3个最显著频率的平均值。图1是获得的频谱。

这个“步数”特征需要做进一步的解释。不同的人有一个不同的走路(或跑步)速度。例如,一个妇女的跑步速度可能等于一个男人的快走的速度。但是如何能区分走路和跑步呢?统计步数是一个解决办法。无论你的速度是快还是慢,在相同的时间内,走路的步数总是远小于跑步的步数。因此,能使用步数去区别走路和跑步。图2 是这个步数(一个峰值是一步),图例左边的是走路的数据,右边的是跑步的数据。你能看见走路的步数远小于跑步的步数。

这个“位置关系”特征也需要做进一步的解释。无论你的智能手机是分离还是空闲,这个加速度数据都有一点波动。但是如何区别手机是分离还是空闲呢?统计位置关系是一个办法。如果你的智能手机是手机分离状态,它总是被平放在桌面上。但是如果你的手机是静止状态,它总是垂直的或倾斜的靠近你的身体。因此,能使用这个智能手机的位置关系去区别手机分离和空闲。图3是这个位置关系(蓝色的曲线表示x轴,红色的曲线表示y轴,黄色的曲线表示z轴),左边是手机分离数据,右边是空闲数据。你能看到手机分离和空闲是明显不同的。

2.3 关于活动

在这个研究中,考虑了5个活动:手机分离、空闲、步行、奔跑和跳跃。选择这些活动,是因为在日常生活中它们被许多人有规律的执行。这些活动也包含在大量时间段经常发生的运动,因此使它们容易被识别。此外,这些活动的大多数包含重复的运动,这也将使这个活动容易被识别。这里记录加速度数据在三个轴。

图4绘制了一个典型的用户的加速度数据。连续5个活动的7个特征(每一个活动持续30 s,整个5个活动总共150 s)。这7个特征的具体内容如2.2节所述,它能清楚的区分静态活动(手机分离、空闲)和动态活动(步行、奔跑、跳跃),依据为加速度最大振幅和最小振幅、加速度烈度、加速度基础频率强度和步数。

关于区分不同的动态活动,可以根据加速度烈度和加速度基础频率强度[9]。它能清晰的区别走路、跑步和跳跃。

可以根据位置关系去区别不同的静态活动,它也能清晰的区别这个手机分离与否。

2.4 分类算法

在数据分类阶段,这里需要从已知的数据模式归类未知的数据模式[10]。为了实施这个活动识别,这里执行了一个k最近邻分类算法在这个数据上。这个k最近邻算法是一个简单的算法,它能在两个特征向量之间基于欧几里得距离去匹配未知的数据模式到一个已知的数据模式。由这个已知的数据模式到未知的数据模式的最小欧几里得距离来决定最好的匹配。

当给定一个未知的元组,一个k最近邻分类算法为这些k训练元组搜索模式空间,找到最靠近的未知元组[11]。这些k训练元组是这个未知元组的k最近邻,这些k训练元组是这个k最近邻的未知元组。2个点或元组的欧几里得距离[12],X1=(x11,x12,…,x1n)和X2=(x21,x22,…,x2n),是

(1)

典型的,在使用公式(1)之前,标准化每一个属性的值,这个帮助防止某些属性(例如:烈度)在权重上超过某些属性(例如:位置关系)。例如,我们能转换一个值v的数值属性A为v′在这个范围[0,1]中,由公式

(2)

minA和maxA是属性A的最小和最大值。

“如何决定一个合适的k值?”这个能由实验来确定。开始让k=1,使用一个测试集去估计这个分类器的错误率。这个过程不断重复,每一次都增加k的值,最终最小的错误率的k值被选择。根据这个实验,这个最合适的k值等于2。

3 实验

3.1 实验的描述

这个实验首先需要去采集这个原始的加速度数据,然后转换这个数据成为实例数据,这个过程被表述在第3章。这个结果实例包含7个特征和覆盖10个用户,产生相应的数据集,然后进行训练和测试。

整个测试过程是在操场上完成的。首先,某一个人连续采集标准数据,每一个活动执行30 s,整个5个活动总共持续150 s,它被使用作为训练数据。另外10个人,他们持续采集测试数据,要求每一个活动持续1 min,整个5个活动一共需要5 min,它们被使用作为测试数据。

一旦源数据被采集,预处理这个数据,包括删除重复的数据、线性化和平滑这个数据。在这个数据集被预处理之后,可以使用k最近邻分类算法[13]去分类数据。这个实验显示这个k值设定为2是最合适的。

3.2 结果

图5显示这个训练源数据和已知的活动分类。这些数据被分类为5个标准状态中的一个,从“手机分离”到“跳跃”。这里设定他们的值从1到5,代表这个5个活动类型。让这些训练数据充当基础数据,稍后被使用与测试数据进行比较。

这个活动识别实验被表述为表1。根据训练数据和k最近邻分类算法,预测这个测试数据的分类结果。然后,比较预测的结果和现实的结果,因此获得这个分类方法的精确性。

表1 活动识别的精确度

这里描述这个活动识别表格的详细内容如下:

“√”意思是这个活动能被精确地识别,“×”的意思是这个活动不能被精确地识别。例如,“S1”能被精确地识别4个活动,“手机分离”“空闲”“步行”和“跳跃”,但是它不能精确地识别“奔跑”。当他在奔跑时,这个实验结果表明他在跳跃。

基于这个结果,能精确地区分“手机分离”、“空闲”、“步行”和“奔跑”。然而,这个算法不能总是区分“奔跑”和“跳跃”。这里描述这个详细结果如下:(如图6和7所示)

从图6和图7可以看出S6可以区分“奔跑”和“跳跃”,而S10不能。

这个问题产生的原因是通过现有算法,很难精确的区分出这两种活动的不同,所以在数据不是很典型时,会出现误判。

关于如何区别奔跑和跳跃,计划在将来的工作实现这个任务。

4 结论和未来的工作

文章描述了如何使用一个智能手机,在简单的保持它在用户的口袋里的情况下去进行活动识别。除了区别奔跑和跳跃,使用这个方法能成功的得到精确地分类结果。

作者计划改善这个活动识别任务在以下几个方面。这些改善包括:(1)学习识别附加的活动,像上楼梯和下楼梯。(2)从更多的用户获得训练数据,从而改善我们的结果。(3)基于源时间序列数据[14],抽取更多的复杂的特征。(4)评估携带手机在用户身体不同的位置上的影响,像放置在腰带上。

在这篇文章中描述的工作,是“挖掘无线设备传感器数据”项目的一部分,计划继续该项目。首先,将采集和挖掘其他类型的的传感器数据,例如GPS数据。此外,还会把采集到的数据应用到除了活动识别以外的其他任务上。作者相信移动传感器数据为数据挖掘提供了极好的机会,打算使这个基于安卓的数据采集和挖掘平台发挥到最大的程度。

[1]卜红彧. 年龄相关的种群系统的最优边界控制[J]. 辽东学院学报(自然科学版),2015,22(3):225-227.

[2]李长辉. 判定函数极值存在性的新方法[J]. 辽东学院学报(自然科学版),2015,22(3):228.

[3]刘斌,刘宏建,金笑天,等. 基于智能手机传感器的人体活动识别[J]. 计算机工程与应用,2016(4):188-193.

[4]陈雷,杨杰,沈红斌,等. 基于加速度信号几何特征的动作识别[J]. 上海交通大学学报,2008(42):219-222.

[5]BAO L,INTILLE S. Activity recognition from user-annotated acceleration data[J]. Lecture Notes Computer Science,2004,3001:1-17.

[6]姜涛. 插值细分法与割角细分法在几何构图中的比较[J]. 辽东学院学报(自然科学版),2016,23(1):72.

[7]王昌喜,杨先军,徐强,等. 基于三维加速度传感器的上肢动作识别系统[J]. 传感技术学报,2010(23):816-819.

[8]赵庆平,李峥. 直接序列扩频通信系统的MATLAB仿真[J]. 辽东学院学报(自然科学版),2016,23(1):62.

[9]卢先领,王洪斌,王莹莹,等. 一种基于加速度传感器的人体跌倒识别方法[J]. 计算机应用研究,2013(30):1109-1111.

[10]史殿习,李勇谋,丁博. 无监督特征学习的人体活动识别[J]. 国防科技大学学报,2015(10):128-134.

[11]汪文彬. 智能手机动作识别系统线性反馈控制算法[J]. 科技通报,2015,6:151-153.

[12]吴渊,史殿习,杨若松,等. 手机位置和朝向无关的活动识别技术研究[J]. 计算机技术与发展,2016(4): 134-141.

[13]秦昉,孙子文,白勇. 基于智能手机的实时跌倒检测系统研究[J]. 计算机工程与应用,2015(4):81-85.

[14]欧志球,戴坚峰,王铮. 基于高斯模糊的摔倒自检测算法设计与应用[J]. 计算机测量与控制,2015(11):95-101.

[15]MATHIE M, CELLER B, LOVELL N, et al. Classification of basic daily movements using a triaxial accelerometer[J]. Medical & Biological Engineering and Computing, 2004. 42.

[16]ANDERSON I, MAITLAND J, SHERWOOD S, et al. Shakra: tracking and sharing daily activity levels with unaugmented mobile phones. In Mobile Networks and Applications. 2007. 12(2-3).

[17]WEISS G M, HIRSH H. Learning to predict rare events in event sequences[C]. Proceedings of the Fourth International Conference on Knowledge Discovery and Data Mining, Menlo Park: AAAI Press, 1998:359-363.

[18]MAURER U, SMAILAGIC A, SIEWIOREK D, et al. Activity recognition and monitoring using multiple sensors on different body positions[C]. IEEE Proceedings on the International Workshop on Wearable and Implantable Sensor Networks, 2006, 3(5).

[19]CHOUDHURY T, CONSOLVO S, HARRISON B, et al. The mobile sensing platform: An embedded activity recognition system[J]. IEEE Pervasive Computing, 2008, 7(2): 32-41.

[20]CHO Y, NAM Y, CHOI Y-J, et al. Smart Buckle: human activity recognition using a 3-axis accelerometer and a wearable camera[EB/OL]. https://www.reseachgate.net/publication/234784440.

[21]MILUZZO E, LANE N, FODOR K,et al. Sensing meets mobile social networks: the design, implementation and evaluation of the CenceMe application[C]. The 6th ACM Conference on Embedded Networked Sensor Systems, 2008:337-350.

[22]YANG J. Toward physical activity diary: motion recognition using simple acceleration features with mobile phones[C]. First International Workshop on Interactive Multimedia for Consumer Electronics at ACM Multimedia. 2009.

(责任编辑:龙海波)

A Behavior identity system with acceleration sensor of a smart phone

WANG Xing-feng

(SchoolofInformationEngineering,EasternLiaoningUniversity,Dandong118003,China)

A behavior identity system developed with the acceleration sensor of a smart phone was designed. It can identify the physical activities users. To design the system, daily behaviors of ten users were tested when they were separated from the phone, idle, walk, run and jump. The obtained time series data were collected into 5-minute intervals. Finally, unknown behaviors could be forecast with this training data. The test results indicate that using this model can accurately predict and classify the five kinds of behaviors above.

acceleration sensor; activity classification; data mining; smart phone

10.14168/j.issn.1673-4939.2017.01.13

2016-05-23

王星峰(1975—),男,硕士,讲师,研究方向:数据挖掘。

TP311.5

A

1673-4939(2017)01-0064-08

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!