APP下载

时空兴趣点结合HMM的人体动作识别方法

2018-12-24

微型电脑应用 2018年12期
关键词:流场时空人体

, ,

(1. 佛山职业技术学院 电子信息系,佛山 528137; 2. 华南理工大学 工商管理学院,广州 510000)

0 引言

近年来由于在智能医疗监控、视频检索、自然人机交互、虚拟现实、智能机器人控制及游戏开发有广泛的应用,现实场景的人体运动识别已为计算机视觉热门的研究领域[1-3]。人体动作识别涉及视频捕捉[4]、视频图像处理[5]、模型识别[6]等关键技术,通过对视频序列进行处理分析来识别人体动作。然后再结合动作执行环境中的语义信息,进一步借助计算机完成高层语义信息的分析和识别。

当前对现实场景中人体动作描述方法包括基于人体模型特征的方法、基于整体特征的方法和基于局部特征的方法三类[7-8]。基于人体模型的方法基本上采用三维人体模型,优点是不受视角、光照和尺度变化的影响,是描述人体运动最直观最本质的方法;但人体三维姿态与人体结构越接近,所描述的姿态特征就越精细,其相对应的维度就越大,因此就会带来分类算法带来维度灾难问题,也就会增加学习动作模型所需的数据量和算法复杂性[9]。整体特征是将人体运动区域从背景中提取出来,把人体表示成二值图像以区分人体和背景,并对该区域的表观或运动信息进行语义描述,而忽略人体的表观和结构信息。通过轮廓描述子描述成一段视频视为单帧轮廓的时间序列或图像在时间轴上级联的时空体,但整体特征生成都需要较多的预处理[10]。许多研究采用基于局部特征的动作描述方法,试图解决整体特征不足的问题。该类方法不借助人体目标检测。

时空兴趣点检测是基于局部特征生成的一个关键步骤[11],众多研究者提出了基于时空兴趣点的人体动作识别方法。例如Laptev提出的Harris3D时空兴趣点[12], 通过加入时间轴信息,对二维平面上Harris图像灰度值变化的角点扩展到三维空间和时间上,在时间和空间的3个方向上均有较大变化的时空点,但在现实场景中的前景较小,经常提取不到兴趣点,导致该方法提取的兴趣点非常稀少。Dollar提出了Dollar时空兴趣点[13],基于分离式的线性滤波器提取时空兴趣点,并进一步在时间域上进行Gabor滤波,并通过计算时空响应函数的局部极大值确定兴趣点。Willems提出Hes-STIP检测子[14], 使用基于三维的Hessian矩阵的显著度评价函数对图像的空间特色块进行时空扩展,并在时空域的5个方向上用非极大值抑制的方法确定兴趣点。Wong采用非负矩阵分解方法检测到运动的身体部分,然后基于全局信息选取兴趣点,使得提取的兴趣点更能描述人体动作特征,从而提高了识别性能[15]。以上分析可知,已有的时空兴趣点算法为了提取更优质判别性的和显著点,时域和空域选择条件的比较苛刻,使得在视频序列中提取的兴趣点非常稀少,太少的兴趣点使得过少的信息量不足以描述复杂的人体动作;其次,为提取具有特征的时空点,需要在多个时域和空域进行筛选,计算量很大。所以经典的时空兴趣点算法在现实复杂场景中的效果不是很理想。为这些问题,本文提出一种新的基于旋度的兴趣点提取算法,给定一个人体动作视频序列,先从光流场中筛选出运动变化趋势较为剧烈的点作为时空兴趣点,再利用光流场的旋度找出人体相邻关节的空间信息,进一步训练每一类动作的时空兴趣点的隐马尔科夫模型。对提出的方法进行验证,在运算效率和识别率方面都取得了较好的效果。

1 人体动作时空兴趣点提取方法

在人体动作识别过程中结构包括由骨骼组成的躯干和四肢两部分,骨骼之间经由关节链接起来,本文将人体骨架划分成27个关节点。将躯干分为7个关节点,将四肢划分成5个关节点。空间相邻的两关节点处于某骨骼的两端,骨骼围绕着关节做类似于线段绕着支点做旋转运动,关节处的旋转方向和旋转幅度的值比较大,本文提出从光流方程获得躯干7个关节点和四肢20个关节点空间时序信息并筛选出光流场运动变化趋势剧烈的点为时空兴趣点,形成特征矩阵。

1.1 微分光流约束方程原理

光流法的基本原理是直接对视频帧序列进行处理,为2D帧序列图像中的每一个像素点赋予一个速度向量,构成一个图像运动场。

图像点(x,y)在时刻t的图像强度为I(x,y,t),经过时隔δt后图像强度为I(x+δx,y+δy,t+δt),δt→0时辐照度不变,则得式(1)。

(1)

设μ=dx/dt,ν=dy/dt分别为该点光流沿x轴和y轴的分量,将(1)式左边Taylor公式展开,得式(2)。

(2)

上式中ε为二阶无穷小,取极限δt→0,在消去I(x,y,t)后得式(3)。

(3)

Ixμ+Iyν+It=0

(4)

(4)式为图像序列光流的约束方程。写成矢量形式为式(5)。

▽Ι·ω+It=0

(5)

ω=(μ,ν)T为像素的光流矢量。

式(4)只能是平面上的一条直线,因此求解光流场是一个不确定问题,为了求解的ω=(μ,ν)T两个分量必须附加其他的约束。

1.2 Horn-Schunck附加约束

Horn-Schunck提出基于添加平滑约束项的迭代方法求解光流,据约束方程,光流误差为式(6)。

e2(X)=(Ixu+Iyv+It)2

(6)

对添加平滑约束项的光流,其速度分量平方和积分为式(7)。

(7)

将加权参数控制图像流约束微分和光滑性微分组合起来得式(8)。

E=∬{e2(X)+αs2(X)}dxdy

(8)

α是平滑度的系数因子,图像数据包含噪声时,α越大估计精度越高。对式(8)进行变分法求解,其解是一对偏微分方程,如式(9)。

(9)

由于计算的对象是离散化的图像,经离散化处理变为式(10)、式(11)。

(10)

(vi+1,j-vi,j)2+(vi,j+1-vi,j)2]

(11)

取极小化函数为式(12)。

(12)

E对u和v求偏导为式(13)。

(13)

当上式为零时,则式(2.11)取极小值,得到式(14)。

(14)

利用迭代的方法求解得式(15)。

(15)

迭代次数n与光流初始值和图像质量有关,通常u0和v0为零。当迭代次数n>32时,相邻两次迭代结果小于预定的公差值就足够精确了。

1.3 基于旋度的提取方法

现实生活中人体做不同的运动时身体会产生局部的旋转,光流场中就有不同的旋度分布,旋度值与肢体运动的强度有关,旋度值大的部位一般为肢体运动趋势剧烈的部位。论文提出一种新的基于光流场旋度的时空兴趣点方法。

2D光流场中旋度的定义为式(16)。

(16)

具体算法流程如下:先将一个人体动作视频序列解码成帧序列,计算出每帧图像每个像素点的密集光流值;通过式(16)计算出每个像素点位置的旋度值;将帧图像的左上角作为原点,由于运动方向不同,算出的旋度有正负之分,再统计出像素点旋度的正负极值max+和max-;设置一个阈值为正负极值的百分比(例如15%),根据设定选取旋度值大于正阈值及小于负阈值的像素点为局部密集点;最后进行间隔为3的空间采样为最终的兴趣点。图1显示了在KTH和UCFSports库上由本文提取兴趣点的结果(红色点所示),如图1所示。

图1 兴趣点分布,第1行:KTH;第2行:UCFSports

从实例可以看到提取的兴趣点(红色像素)是聚集在人体运动的关节部位,在一些小区域部位形成密集的点群。

2 人体动作分类器设计

2.1 隐马尔科夫模型概述

它是马尔科夫链的一种双内嵌结构的随机过程,一个是状态观测序列,另一个是隐含的状态转移序列且处于某类有限序列中,其状态转换过程时不可观察的。

隐马尔可夫模型有5个基本元素,为λ={S,V,A,B,π}

河南自贸区自建成以来对河南省贸易企业提供诸多优惠政策,河南省国税局除落实既定税收优惠政策之余借鉴已经试点上海、广东、天津和福建自贸区的税收政策,将相关税收优惠政策继续传承下去。接下来我们一起来分析相关税收优惠政策。

1)隐含状态集合:S={S1,…SN}

2)观测状态集合:V={V1,…,VM}

3)隐含状态转移概率分布矩阵

A=(aij)N×N

Aij=P(Sj/Si),1≤i,j≤N

4)输出观测值的概率矩阵

B=(bij)N×M

Bij=P(Oi/Sj),1≤i≤M,1≤j≤N

5)始状态概率分布矩阵:π=(π1,…,πN)

HMM的评估问题利用前向和后向算法解决方案:前向变量由前向算法公式(17)定义的递归关系计算;后向变量由后向算法公式(18)定义的递归关系计算;观测序列 的发生概率可由如公式((19)求得式(17)~式(19)。

(17)

(18)

(19)

HMM的解码问题通常采用Viterbi算法定义:

δ(t,i)=maxP(q1,…qt-1,qt=Si,o1,…,ot|λ)

HMM的学习训练问题通过Baum-Welch算法,计算模型当前的最大似然估计解决模型训练,如式(20)~式(22)。

ξt(i,j)=P(qt=Si,qt=1=Sj|O,λ)=

(20)

(21)

ξt(i,j)=P(qt=Si,qt+1=SJ|O,λ)

(22)

2.2 人体动作识别

HMM模型是一种双内嵌结构的随机过程,具有较强的时序建模能力,主要应用于视频时序信号处理、行为识别等领域中,本文选用高斯混合HMM模型对动作构建模型进行识别。

在分类器训练中,HMM模型将利用期望最大化,来计算关节点旋度上的依赖关系和特征块时序维度。其中每一类动作都将被训练成一个HMM模型,记为{λ1,λ2,…,λc},其中c表示动作类别数。在得到关节兴趣点序列J′后(o′为相应的特征矩阵),由HMM模型对其动作类别基于最大似然概率进行动作识别,如式(23)。

(23)

同时,为解决传统HMM模型时间上不连续性,本文采用连续高斯概率核函数计算观测值序列的概率密度分布,如式(24)。

(24)

其中,G为高斯概率核函数。

3 实验分析与比较

本文实验验证数据选自KTH和Hollywood-2动作数据集。KTH数据集分别是25个执行者在4个不同场景中完成拳击、走路、慢跑、快跑、双臂挥舞和拍手的6类动作,包含2 391个视频序列,大小为160*120像素,数据集中视频帧率为25fps,平均10至15秒;场景随着光线的变化、衣服颜色与款式不同的而变化,场景背景单一,每个场景仅包含一个执行者单一动作,本文将数据集分成9个人的测试集(2,3,5,6,7,8,9,10和22),另外16位执行者作为训练集;Hollywood-2数据集所有样本从69部Hollywood电影中抽取出来,包括从现实电影场景中的12个动作类和10个场景共3669个样本:吃饭、下车、打架、接电话、握手、拥抱、开车、接吻、坐下、跑步、站起来和坐起来,空间分辨率为360 * 288,样本帧率为4.6 fps,视频中人的形态、穿着、表情、背景及相机的运动、光照角度、遮挡等变化较大,接近真实场景情况。

本文算法是先采用Opencv提供的代码从原始序列中计算出光流场以及各像素点的旋度值,从而提取出每帧图像上时空兴趣点;然后采用随机选择窗口尺寸的策略确定出每个兴趣点,并从后续帧兴趣点的跟踪位置上轨迹线取一个N*N*L的时空体(N为空间窗口),随机选择36, 48, 56, 64四个尺度;时间尺度方面为解决跟踪兴趣点易漂移和去除不稳定的点的问题,本文固定轨迹长度为L(为减少计算量L取20帧)。当轨迹达到L时,则认为形成一条新轨迹,并可以去掉不稳定的点。如图2所示。

图2 传统密集兴趣点提取方法与本文兴趣点提取方法对比

本文设置隐马尔科夫模型的有限状态集为|SW|=3,ω=1,…,W,高斯混合分布总数也为3,为更好地捕获时空位置信息,将N*N*L的局部窗口分成nσ×nσ×nτ(2,3)的时空子窗口。

本文算法在KTH集中动作识别结果混淆表,如图3所示。

行为相似度较高的走、慢跑、跑混淆度仅为3.29%,全部行为识别率均超过91%,平均识别精度96.81%,具有很高的区分度。

本文测算旋度、确定阈值,通过比较提取兴趣点,随机选择窗口尺寸时空体并提取特征,避免了多尺度遍历,文献[15]需计算光流场稠密轨迹,每帧图像均需尺度缩放,因此计算量显著增加。本文采用KTH库慢跑动作及Hollywood-2库开车动作,分别考察其他模型算法的平均耗时及识别精度,如表1所示。

表1 在KTH库和Hollywood-2库上耗时与识别精度对比

从表中可以看出,本文算法平均耗时不到文献[15]和文献[16]方法耗时的一半,对相似度很高的行为之间的识别精度高,验证了本文算法在真实场景中的实用价值。

4 总结

基于时空兴趣点和隐马尔科夫模型提出了一种新的人体动作识别算法。为解决以往的时空兴趣点算法需考虑多层时空尺度计算复杂度高,提出光流场微分的旋度兴趣点算法,时空兴趣点大都集中三维关节点的关键部位,采用随机选择窗口尺寸避免多尺度遍历节省计算时间;并利用光流场的旋度找出人体相邻关节的空间信息,并进一步训练隐马尔科夫模型,将算法应用到两个动作数据库上,都获得较好的识别能力。

今后的工作重点将考虑到动态背景的影响,进一步提高算法的运动识别能力。

猜你喜欢

流场时空人体
车门关闭过程的流场分析
跨越时空的相遇
人体“修补匠”
人体冷知识(一)
镜中的时空穿梭
人体可笑堂
玩一次时空大“穿越”
奇妙的人体止咳点
时空之门
天窗开启状态流场分析