基于人工神经网络的人体识别算法研究
2016-10-13同济大学软件学院王赛迪
同济大学软件学院 王赛迪
基于人工神经网络的人体识别算法研究
同济大学软件学院 王赛迪
针对当前人体活动状态识别方法中存在识别算法复杂、可实施性差、实时性差等问题,提出了一种改进的基于人工神经网络的人体识别算法.通过加速度传感器采集人体腰部的加速度数据,运用滑动时间窗方法进行时域特征的提取,采用基于人工神经网络的分类方法对特征进行处理,识别出人体的各种行为,该方法的软硬件复杂度低,易于实施,便于携带,经过测试,该算法的平均响应时间小于1s,平均准确率达到99.9%,证明了该算法的实时性与有效性。
人工神经网络;加速度传感器;人体识别;滑动时间窗
1.引言
近年来人体行为识别在信号处理和计算机视觉已成为最活跃的研究领域之一。监控,游戏,电脑人机界面,都是人体识别的重要的应用领域。目前有两种人体行为识别的方法:基于视觉的人体行为识别和基于可穿戴式运动传感器的人体行为识别。例如,Sidenbladh等在视频利用支持向量机(SVM)的基于运动的分割图来追踪人体行为。但是,该方法需要处理大量的数据量。针对解决这一问题,Moeslundad等人进行了大量的研究。另一种方法是基于可佩戴运动传感器的行为识别。对于基于可穿戴传感器的行为识别,人体需要佩戴一个或多个传感器。
基于视频的人体行为识别,算法复杂度往往比较高,所以本文采用可穿戴的加速度人体行为识别。基于可穿戴传感器的人体行为识别方法在部署和数据处理方面更简单,能够保证实时性需求。本文采用单一的传感器,并把传感器佩戴在人体的腰间,不妨碍人体的日常活动。本文使用改进的神经网络的方法对行为进行分类,这种算法将识别分为两个过程,分为粗粒度和细粒度,很好的识别了人体的行为。
2.人体行为识别系统简介
数据显示,中国老龄化越来越严重,如何有效的看护老人成了一个重要问题。因此,观察老人的行为成为一个很重要的行为研究方向,通过检测老人的行为数据,可以获得老人的行为状态,从而有效监护老人,照顾好老人。本文设计实现了人体行为识别系统,该系统能够运行于移动终端之上,不仅可以有效的监控老人行为状态,而且可以提高行为的识别率。
人体体行为识别系统的应用原理是用户打开识别系统,将移动终端携带在身上,系统可以自动采集加速度数据,提取数据特征。这样,用户的行为就会以加速度特征的形式出现,包括静止、走、跑步、上下楼梯等。这样就可以建立一个行为识别模型。当设备佩戴到不同的人的身体上的时候,就会有新数据的产生,这样就可以对行为进行识别。
由此可知,系统的重点是如何根据采集到的加速度数据去获取用户的行为类型,以及如何对用户行为进行识别,而且要达到一个较高的识别精确度,为此本文设计提出了一个基于改进的人工神经网络的人体行为识别方法。
3.基于改进的人工神经网络的人体行为识别算法
3.1人工神经网络简介
人工神经网络(Artificial Neural Networks简称ANN)[1][2] 简称神经网络,它是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型,是由大量类似于神经元的简单处理单元广泛相互连接而成的复杂网络系统,是一个大规模的非线性自适应系统[3]。
BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input layer)、隐层(hide layer)和输出层(output layer)。
输入层各神经元负责接收来自外界的输入信息,并传递给隐藏层各神经元。中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经进一步处理后,完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。
3.2算法流程
将加速度传感器佩戴在人体腰间,并且传感器的Y轴垂直于水平方向。
图1 人体行为识别算法流程
图1是人体行为识别的算法流程。在粗粒度模块中,提取传感器采集的数据的特征值(标准差)。标准差作为神经网络的输入。输出是粗分类结果。在细粒度模块中,可以通过比较特征值来对行为进一步识别。
4.实验与结果分析
4.1实验方案
(1)在人体腰部佩戴加速度传感器(传感器Y轴与地面垂直方向向上),采集该人的行为(坐着,站着,躺着,站起,坐下,躺下,行走,摔倒,跑步)数据,每种行为类别采样10次,共计90组数据,以备神经网络训练之用。(2)在人体腰间正确佩戴加速度传感器,启动PC端系统和Android手机端软件,人体作任意的行为动作,并记录系统识别的结果。
4.2实验结果分析
实验结果如下图2,其中“未知”是指未能识别的行为。从表中可以看出由于在该算法的识别率很高,对于一些行为(躺着,摔倒,跑步)该算法的识别率到达了100%
图2 人体识别率
5.结束语
本文针对人体动作识别的需求,设计了基于人工神经网络的行为识别方法,减少了训练数据的时间,同时提高了识别精度。解决了行为识别精确度不高的问题,为人体行为识别的研究做出了一定的贡献。
在研究过程中,对人体的某些动作利用神经网络的判断有些困难,比如站立和坐,下一步可以考虑利用人工网络进行进一步细分识别分类,以进一步提高算法的识别精度。
[1]王伟.人工神经网络原理—入门与应用[M].北京航空航天大学出版社,1995.
[2]张乃尧,阎平凡.神经网络与模糊控制[M].北京:清华大学出版社,1998.
[3]Martin T Hagan.神经网络设计[M].北京:机械工业出版社,2002:12-20.