基于自动编码器与概率神经网络的人体运动行为识别方法
2018-02-01李兴肖秦琨
李兴+肖秦琨
摘要:
为了准确而快速地识别出图像中人体的某种行为特征,提出了一种全新的三层自动编码器与PNN概率神经网络结合的网络模型。把人体行为的关键帧从包含10种人体行为的视频库中提取出来,用背景减除法提取人体轮廓图并进行二值化图像处理,根据时间序列叠加轮廓图,组成含有10个特征轮廓的数据库,随后将特征轮廓数据在自动编码器中编码,编好码的特征数据随即进入概率神经网络进行训练学习。将训练好的神经网络对这10种人体行为进行准确识别。实验结果表明,经过自动编码器处理后的人体特征进行PNN神经网络识别,比单纯用BP神经网络识别准确率提高5%以上,由此证明该方法有效可行。
关键词:
人体行为识别;自动编码器;PNN概率神经网络;BP神经网络
DOIDOI:10.11907/rjdk.173068
中图分类号:TP301
文献标识码:A文章编号文章编号:16727800(2018)001001103
Abstract:In order to identify the behavior characteristics of the human body accurately and quickly, this paper proposes a new network model combining the three layer automatic encoder with the PNN probabilistic neural network. The first step of the key frames extracted from human behavior includes 10 kinds of human behavior video library, the second step with the background subtraction method to extract the body contour map and binarization image processing, according to the time sequence superimposed contour map containing 10 component feature contour database, with the data after feature contour in the auto encoder encoding, coding and feature data code immediately into the probabilistic neural network learning and training, the trained neural network is good for accurate identification of these 10 kinds of human behavior. The experimental results show that the recognition accuracy of PNN neural network is 5% higher than that of the pure BP neural network, and the validity and feasibility of the method are verified.
Key Words:human behavior recognition; autoencoder; BP neural network; probabilistic neural network
0引言
人體姿态识别在智能视频监控、动态人机交互、无人汽车驾驶等[12]领域应用广泛,是模式识别的一大热门研究方向。人体运动在时间和空间上都很复杂,因此需要有一个前期处理的清晰图像,目的在于提取有效的运动特征。
视频帧进行处理的方法有3种:背景剪除法、差分法和光流法,检测出人体行为区域,然后将该区域作为研究对象,从中获得人体行为特征[35]。Bobick和Davis 提出的基于视频的轮廓提取方法[6],剪除从背景场景中获取的有效轮廓特征,从视频中提取人体行为轮廓图。因为二值图像(Binary Image)按名字理解只有两个值:0和1,0代表黑,1代表白,或者说0表示背景, 1表示前景。每个像素存储信息只需要1Bit。把每个像素当作随机变量,图像一共有N个像素,那么二值图有2的N次方种变化,RGB图像有255*255*255的N次方种变化。彩色图像维度高,神经网络训练时间长,需要将图像转化为二值图像便于后期神经网络训练。使用内边界跟踪法提取二值图像的边界即人体行为特征轮廓,最终建立人体行为特征轮廓库,以进行深度神经网络的训练识别。
运用多层感知机(MLP)[7]以及学习向量,量化神经网络(LVQNN)[8]在人体步态识别研究中的数据。一旦样本数量庞大,其网络训练将变得极其缓慢,并且识别率欠佳。基于Zernike和BP神经网络的步态识别[9]技术,前提是人体背景必须单一且不能有噪声,因此该技术实用性不足。为此,采用升级的三层自动编码器,结合PNN神经网络组成的APNN(Autoencoder PNN)模型对样本学习并分类。
基于运动的人体姿态识别研究,是在肢体动作内容基础上,在系统学习时将运动序列中的每一幅图像从背景中分割出来,并根据序列的间隔顺序结合轮廓,建立一个组合的叠加轮廓图像,利用叠加图像集训练自动编码器和PNN神经网络,最后建立串联的三层自动编码器和PNN神经网络模型,利用该模型进行行为识别。
2运动数据特征描述
2.1实验数据库建立
从以色列魏茨曼科学院计算机视觉实验室Weizmann数据库中下载捕获的人体运动数据,行为库包含10种人体行为,即行走、奔跑、侧行、双脚跳、单脚跳、挥手跳、原地跳、弯腰、单臂挥手和双臂挥手。endprint
2.2人体运动行为轮廓图
背景减除法通过当前图像与背景图像的差分,对所得差分图像用合适的阈值二值化后得到完整运动目标。利用背景减除法对当前帧图像Ik(x,y)与已知背景Ibg(x,y)做差,则差分后图像dk(x,y)=Ik(x,y)-Ibg(x,y)。
二值轮廓特征提取首先是内边界跟踪,步骤如图1所示。
2.3叠加轮廓图
由于人体行为是一组时间序列的动态特征数据,为了精确表达出运动特征,要在前阶段的二值轮廓图像上,根据时间序列顺序,结合8个动作序列的图像,勾勒成一个二进制叠加图像。
如动作序列B={bi}i=1:n, bi是第i帧的轮廓图像,根据时间序列顺序,结合K个动作序列图像勾勒成一个二进制叠加图像。一个双臂挥手叠加轮廓图像通过视频第1、3、5、7、9、11、13、15帧的二值化轮廓图像构成。总共建立了744个叠加轮廓图库,分为10种动作,每种动作有5个,单个图片为1600个像素点,长40,宽40,每个动作类包括足够的训练样本。
3神经网络
3.1自动编码器
自动编码器可以看作最基本的神经网络,它由三层网络组成:第一层输入层,第二层隐含层,第三层输出层,编码器在编码过程中可以用作数据的降维以及特征值提取[10]。本文选取的隐含层为三层,第一层1000个节点,第二层500个节点,第三层100节点,逐层用于输入图像的降维处理,最终在编码器输出100维的数据,使后边概率神经网络的训练學习缩短了处理时间,提高了网络学习效率。自动编码器是输入到隐含层h的映射,数据编码过程见公式(1)。
实验中,先将像素为40×40的二值化特征图像数据自动编码,逐层进行图像编码,就是对1 600的图像降维成100维的图像数据,逐层降维。第一层隐含层输出层为1 000个节点,编码后1 600维降维成1 000维,第二层隐含层500个节点,1 000维降维成500维,第三层隐含层100个节点,40×40图像最终降维成10×10的图像。
3.2基于神经网络进行训练
744个叠加特征轮廓图包含10个人9个不同的动作,现在经PNN神经网络隐含层、输出层训练,输入层为100个节点代表10个人9个不同动作,不断调整隐含层权值更新,直到达到一个稳定的权值,从而分类出行为姿态,即输出层为10个节点,如图2所示。
3.3PNN神经网络
概率神经网络是一种特殊的径向基网络[12],其理论精髓是建立在最小错误率的贝叶斯决策理论上。贝叶斯分类器在样本有错误时分类效果大打折扣,而概率神经网络因为良好的容错能力和自我学习调整参数正好弥补了这一弱点,在实际分类识别中效果很好。概率神经网络分为输入层、隐含层和输出层三层。其中,输入层将自动编码器降维的人体动作特征向量输入网络,输入层个数为1 600,等于样本特征的个数。隐含层根据高斯公式(6)计算特征向量及与各个模式的相似程度,然后将每个类别通过高斯公式计算的相似度累加求和后取平均值,得到输入样本的所属类别,输出层神经元的数量等于样本矢量的个数,高斯公式如下:
3.4连接自动编码器与PNN神经网络
编码器把每个叠加特征图降维处理,输入层1 600节点,第一层隐含层输出层为1 000个节点,第二层隐含层500个节点,第三层隐含层100个节点,40×40图像降维成10×10的图像;接下来把90个不同人不同动作的图像特征输入PNN神经网络。输入层90节点、隐含层500节点、输出层10个节点表示10个不同动作,经过网络自我训练,最终得到输出为10个不同动作的目标,网络拓扑图如图3所示。
4实验
随机选取70%的样本(521个样本)来训练网络,剩下的30%样本(223个样本)是测试样本。15%正交测试,15%普通测试,最大的训练周期或迭代次数是1 000。 实验中70%的样本(521个样本)训练深层网络,得到识别率是95.5%, 15%的样本(223个样本)正交测试得到识别率是75.5%,最后全体样本测试得到识别率是91.8%,见图4、图5、图6。10个行为动作经过APNN深度神经网络训练的识别率ROC曲线如图7所示,交叉熵函数拟合网络最优解出现在第12次迭代时,如图8所示。
5结语
本文提出一种全新的三层自动编码器与PNN神经网络结合的神经网络模型,从视频中提取出人体行为关键帧,通过背景减除法提取人体轮廓图,然后进行二值化图像处理,并依据时间序列叠加轮廓图组成特征轮廓数据库,将特征轮廓数据放入自动编码器中进行编码,编好码的特征数据随即进入PNN神经网络进行训练学习,经过训练好的深度神经网络用于识别未知的人体行为。
实验证明,本文的深度神经网络在样本数据的人体运动识别率达91.8%(见表1),与普通BP神经网络和PNN神经网络相比,训练时间缩短,识别率得到提高。
参考文献:
[1]胡琼,秦磊,黄庆明.基于视觉的人体动作识别综述[J].计算机学报,2013,36(12):25122524.
[2]曲建岭,杜辰飞,邸亚洲,等.深度自动编码器的研究与展望[J].计算机与现代化,2014(8):128134.
[3]黄凯奇,任伟强,谭铁牛.图像物体分类与检测算法综述[J].计算机学报,2013,36(12):118.
[4]莫林,廖鹏,刘勋.一种基于背景减除与三帧差分的运动目标检测算法[J].微计算机信息,2009(12):274276.
[5]陈燕萍.基于背景减除的运动目标检测算法研究[D].厦门:厦门大学,2008.
[6]BOBICK A F, DAVIS J W. The Recognition of human movement using temporal templates[M]. IEEE Computer Society, 2001.
[7]后锐,张毕西,HOURUI,等.基于MLP神经网络的区域物流需求预测方法及其应用[J].系统工程理论与实践,2005,25(12):4347.
[8]段明秀,何迎生.基于LVQ神经网络的手写字母识别[J].吉首大学学报:自科版,2010,31(2):4143.
[9]贾楷熙,薛静.基于Zernike矩和BP网络的步态识别技术研究[J].西北工业大学学报,2010,28(5):669673.
[10]邓俊锋,张晓龙.基于自动编码器组合的深度学习优化方法[J].计算机应用,2016,36(3):697702.
[11]刘勘,袁蕴英.基于自动编码器的短文本特征提取及聚类研究[J].北京大学学报:自然科学版,2015,51(2):282288.
[12]郭联金,罗炳军,GUOLIANJIN,等.PNN与BP神经网络在钢板表面缺陷分类中的应用研究[J].机电工程,2015,32(3):352357.
(责任编辑:杜能钢)endprint