APP下载

视频中运动人体骨架提取方法

2017-06-05吴翊萱贺俊吉

电脑知识与技术 2017年10期

吴翊萱 贺俊吉

摘要:提出一种基于ZHANG和SUEN快速并行细化算法(即zs细化)的人体骨架提取方法。首先使用高斯混合建模背景差分法提取运动人体二值前景图像,再利用zs细化算法对人体二值图像进行初步细化,最后使用8个模板对zs细化结果进行单像素化得到单像素宽的人体骨架模型。实验结果表明,该方法能成功提取单像素宽的人体骨架,简单高效,针对单幅图像提取骨架平均耗时仅需0.3秒。

关键词:高斯混合建模;zs细化;单像素宽;骨架模型

中图分类号:TP391

文献标识码:A

文章编号:1009-3044(2017)10-0151-03

1.概述

运动人体行为分析是现今计算机视觉领域中一个备受关注的研究热点,其具有重要的研究意义和广泛的应用前景,如视频监控中异常行为检测、人机交互、虚拟现实、视频检索等。人体骨架含有丰富的人体运动信息,对运动人体行为分析具有重要的作用。对人体提取骨架模型不仅能保留人体的运动信息,减少无效的冗余信息,提高后续处理效率,还能在人体的骨架模型上进一步提取特征,用于后续人体运动行为分析的研究中。

用于骨架提取的方法主要有:基于Voronoi图的算法、基于链码的算法、基于距离变换的算法、基于形态学的算法以及细化算法。由于细化算法一般能保证骨架的连通性且计算简单,考虑到人体骨架提取完整性以及实时性的要求,本文考虑采用细化算法来提取人体骨架。

本文提出一种基于ZHANG和SUEN快速并行细化算法(以下简称zS细化算法)的人体骨架提取方法,首先利用zS细化算法对运动人体二值图像进行初步细化,再在zs细化的基础上对图像进行单像素化操作。利用此方法得到的人体骨架模型能保证连通性和单像素宽,且光滑无毛刺。

2.人体目标检测

为了提取视频中运动人体的骨架,首先需要排除各种复杂背景的干扰,从视频中提取运动人体二值前景图像。常见的运动目标检测方法主要有帧间差分法、背景差分法、光流法等等。帧间差分法利用视频中相邻帧图像的差异来检测出运动目标,该方法在运动实体内部容易产生空洞,使得提取的运动目标不完整。背景差分法将当前帧图像与背景图像做差分,如果像素差值大于某一阈值,则判断该像素属于运动前景,否则属于背景。背景差分法需要对背景进行建模,常用的背景建模的方法有单高斯背景建模、混合高斯背景建模、卡尔曼滤波背景建模等等。光流法采用运动目标随时间变化的光流特性,能够检测独立运动的对象,可用于动态场景情况。但是光流法的计算相当复杂,对硬件要求比较高,不适于实时处理,而且对噪声比较敏感,抗噪性差。针对人体运动视频本文采用背景差分法来提取运动的人体前景,背景建模采用混合高斯背景建模法。对提取到的人体前景图像进行形态学处理和删除小面积的连通域等操作即可得到只包含完整人体的前景目标,如图1所示。

3.人体骨架提取

本文采用细化算法来提取人体骨架。所谓细化,就是对原图按一定的准则一层层地剥离掉外轮廓点,但仍保留原来的形状,直到得到图像的骨架。一个好的细化算法应该具备以下几个要素:收敛性;保证细化后细线的连通性;保持原图的基本形状;细化结果是原图像的中心线;细化的快速性和迭代次数少。由于zs细化算法具有快速性和保证细化后连通性的优点,特别适合于用来提取人体骨架模型,但是zs细化算法无法保证将图像细化为单像素宽,这将给后续的人体关节点提取带来困难。于是本文考虑先对图像利用zS细化算法进行初步细化,再在zS细化的基础上进行单像素化操作,得到单像素宽的人体骨架模型。

3.2ZS细化图像的单像素化

经过zS细化后的图像已经变成了连通的准骨架图像,但是不能保证各处均为单像素宽,有些拐角的地方为双像素宽,如图5所示,这会给后续从骨架模型中提取关节点带来困难,所以我们需要对zS细化后的图像进行进一步细化操作。

图3为P1点及其8邻域,其中括号里的数字1代表其像素值为1。如果要删除其中心点P1,则必须同时满足以下条件:

(1)P7点像素值必须为0;

(2)P6点和P8点像素值不能同时为1。

如果P7点的像素值为1,则删除P1点不能保证骨架的连通性,如果P6点和P8点的像素值同时为1,则P1点为内部点,不能删除。P3、P5和P9点的像素值为0或1对P1点的删除与否没有影响。因此,图3中的模板等價于图4中的两种情况。

同理,将图4中的两个模板分别旋转90°,180°,270°得到另外6个模板,如图5所示,总共8个模板涵盖了所有P1点可被删除的情况。对zs细化后的图像,当某点的像素值为1,且其8邻域的情况属于这8个模板中的其中一种的时候,该像素点应当被删除。扫描zs细化后的图像,删除所有符合这种情况的点,即可得到单像素宽的骨架图像。

4.实验结果及分析

实验数据为自行使用FUJIFILM$4050相机拍摄的运动人体视频,拍摄角度为水平,拍摄距离为5米,分辨率为320-240。实验在Matlab2010b软件平台、Windows 7 Professional64bitPC机上进行。部分实验结果如图6所示。

实验结果表明,本文提取的方法可以成功提取出单像素宽的运动人体骨架模型,且针对单帧图像提取骨架的平均耗时仅为0.3s,简单快速。利用本文提取的骨架模型,还可以进一步提取出人体关节点及各种特征用于人体行为分析中。