APP下载

基于单加速度传感器的实时动作识别系统

2014-09-03宋志鹏

中国新技术新产品 2014年14期
关键词:嵌入式

宋志鹏

摘 要:基于加速度传感器的人体动作识别在人机交互领域具有重要意义,为人机提供一种自然、真实的交互方式。本文实现了一种基于单轴加速度传感器的动作识别系统,将一种基于窗口特征的动作识别算法固化在嵌入式处理器中,便于在多种人机交互场合中使用。实验结果表明,该系统能够快速、有效的识别跑步、蹲下、起立、跳跃等基本动作,平均识别率达到94%以上。在虚拟训练、游戏控制等人机交互的场合,该系统具有重要的应用价值。

关键词:加速度传感器;嵌入式;动作识别;虚拟训练

中图分类号:TP212 文献标识码:B

人体动作识别是人工智能领域一个重要方向,对于改善人机交互方式有着重要意义。人体动作识别研究目前主要有两个方向:基于视觉的人体动作识别和基于加速度传感器的人体动作识别。目前已有多种基于加速度传感器对人体的动作、姿势进行识别,并应用到特定场景,但可扩展性不强。并且大多数系统采用离线分析,影响人机交互的效果。

本文实现了基于嵌入式处理器的人体动作识别,并提出一种新的识别算法对动作进行识别。动作的识别不依赖于主机,因此可以利用该动作识别系统方便的扩展多种应用。

1 系统设计

该系统主要由硬件和软件两部分组成,其中硬件部分包括动作识别模块和数据接收模块,负责信号的获取与传输;软件部分主要完成嵌入式处理器的数据采集和处理、数据接收模块控制器的数据接收及上传等。

1.1硬件设计

硬件部分由动作识别模块和数据接收模块构成。动作识别模块通过获取加速度数据,对特征进行提取、识别,然后通过无线方式将识别后的动作信号发送到数据接收端,数据接收模块通过USB接口与主机传递数据。

1.1.1动作识别模块。动作识别模块主要由嵌入式微处理器、三轴加速度传感器、无线射频模块和电源模块等部件构成。基于ARM Cortex-M0的LPC1114微处理器具有高性能、低功耗、简单指令集、统一编址寻址等优点,使得在使用电池情况下续航时间更长,50MHZ的工作频率足以满足运算要求。ADXL345是一款小而薄的超低功耗3轴加速度计,在本系统中,为提高输出数据的稳定性,设置感应范围为±2 g,感应精度为3.9mg,可以满足人体动作加速度范围与精度要求。此外,本系统只需单个方向的加速度数据,因此LPC1114使用单通道ADC对加速度传感器采样。NRF24L01是一款工作在2.4-2.5GHz世界通用ISM频段的单片收发芯片,输出功率频道选择和协议的设置可以通过SPI接口进行设置极低的电流消耗。电源模块使用低压差线性稳压器件(LDO)SP6201,将锂电池的12V电压降至3.3 V,最大可负载200 mA电流,满足设备需要。

1.1.2数据接收模块。数据接收模块使用USB微控制器CY7C68013A,片内集成USB2.0收发器、智能串行接口引擎、增强型8051微控制器。由于CY7C68013A没有集成SPI接口控制器,实际中使用GPIO模拟4线SPI与无线射频模块NRF24L01进行通信。CY7C68013A不断扫描无线射频模块状态,当有接收数据到来时,使用SPI接收数据并通过USB上传给主机。

1.2软件设计

软件设计主要包括两个部分:动作识别模块中微处理器LPC1114采集加速度数据和动作识别、数据接收模块控制器CY7C68013A的数据接收及上传。

1.2.1动作识别模块。动作识别模块的软件流程主要包括定时获取加速度传感器数据,对数据进行滤波处理以消除干扰,然后通过分析动作信号进行动作识别,识别后将动作信号通过无线方式发送到主机。

(1)滤波处理。为了更好的提取特征和达到较好的识别效果,在对数据进行特征提取前要进行滤波处理。999考虑到人的动作量都比较缓慢,属于低频信号类,该系统设计了一个4阶Butterworth低通IIR数字滤波器对信号进行滤波。

(2)信号特征提取。为了明显的区分跑步、蹲下、起立、跳跃等动作,将加速度传感器至于腰间,Z轴方向与重力方向平行。微处理器采集加速度传感器的数据,将各个动作的加速度信号转化为波形,便于分析和提取各个动作的特征,分别为完成跑步、蹲下、起立、跳跃产生的信号,可以发现四个动作的波形存在明显的特征。

本文采用窗口W{l,r,u,d,n,e}(其中l、r、u、d分别代表窗口的左、右、上、下边界,l、r的值是以动作的开始点为基准;n代表落入该窗口点的个数,即阈值;e为精度要求)作为动作的特征信号。根据每个动作的不同特点,可以对每个动作添加窗口,作为特征信号。以跳跃动作为例,添加三个动作窗口W1、W2、W3。

(3)动作识别算法。动作识别的算法是将传输过来的加速度数据放入数据队列,考虑到相邻数据变化不是很大,因此,队列中每传入4个数据进行特征匹配。根据各个动作的阈值,对队列里的数据进行比较,如果满足某个动作的特征值,则输出该动作;反之,则无动作输出。

1.2.2数据接收模块。数据接收模块中CY7C68013A USB控制器通过不断查询NRF24L01的中断信号来判断是否有数据到来。如果有数据,通过SPI总线读取数据,然后放到USB端口缓冲器,等待主机取走。若主机不读取数据,旧数据会自动被新数据覆盖,保证数据的实时性。

2 结果分析及讨论

为验证基于窗口特征动作识别的有效性,选取常用的均值(Mean)、方差(Variance or Standard Deviation, STD)、平均绝对偏差(MeanAbsolute Deviation, MAD)三种特征选择方法与其进行对比。随机选取20人

进行测试,测试者在不同的环境下分别进行蹲下、起立、跳跃、跑步四个动作各20次。

从结果分析,基于窗口特征的识别率和MAD相比,只有较小优势,但明显优于Mean和STD。

结语

本文实现了一种基于单轴加速度传感器的动作识别系统,利用固定在人体腰部的传感器获取动作的加速度数据,通过固化在嵌入式处理器的动作识别算法对动作进行识别。在进一步的工作中可以结合角度传感器、压力传感器、红外传感器等组成传感器网络,同时采用合适的机器学习算法,以实现更加复杂和多样的人体动作识别。

参考文献

[1]朱国忠,韦彩虹.基于三维加速度传感器的人体运动能耗检测算法的研究[J].传感技术学报,2011,24(8):1217-1222.

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

猜你喜欢

嵌入式
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
TS系列红外传感器在嵌入式控制系统中的应用
基于嵌入式Linux内核的自恢复设计
嵌入式系统通信技术的应用
嵌入式PLC的设计与研究
搭建基于Qt的嵌入式开发平台
基于嵌入式系统Windows CE的应用程序开发
嵌入式单片机在电机控制系统中的应用探讨
嵌入式软PLC在电镀生产流程控制系统中的应用
Altera加入嵌入式视觉联盟