Real-Time Human Pose Recognition in Parts from Single Depth Images Jamie Shotton Andrew Fitzgibbon Mat Cook Toby Sharp Mark Finocchio外文翻译资料

 2022-07-30 20:19:51

英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料


Real-Time Human Pose Recognition in Parts from Single Depth Images

Jamie Shotton Andrew Fitzgibbon Mat Cook Toby Sharp Mark Finocchio

Richard Moore Alex Kipman Andrew Blake

Microsoft Research Cambridge amp; Xbox Incubation

翻译: 多乐

Abstract

我们给出了从单深度图像中快速准确预测出人体关节3D位置的新方法,且没有使用时间信息。我们使用物体识别方法,设计了身体组件的中间表示,从而将困难的姿势估计问题映射为简单些的逐像素分类问题。大型、丰富多样的训练数据集保证了分类器估计身体组件时具有姿势、身材、衣着等不变性。最后,通过重投影分类器的(身体组件估计)结果,我们生成了几个人体关节的可信3D估。

系统在消费硬件上能以200帧每秒的速度运行。我们的评估在合成和真实测试集上都高度准确,我们同时也研究了几个训练参数的作用。与相关工作相比,我们取得了最好的准确性,并且比“确切全骨架最近邻”匹配具有更好的通用性。

Introduction

鲁棒互动人体跟踪的应用包括游戏、人-机交互、安全、远程呈现和健康保健等。近来由于实时深度摄像机的引入,这个问题得到了极大的简化[16,19,44,37,28,12]。然而,即使现在的最好系统也有局限性。特别是,直到Kinect[21](Kinect是微软在2010年6月14日对XBOX360体感周边外设正式发布的名字。)发布,还没有任何一个系统能在消费硬件上以互动速度处理正在进行各种运动的所有身材和体型的人体。一些系统通过帧到帧的跟踪获得了很高的速度,但苦于无法快速重新初始化因而不鲁棒。本文中,我们专注于组件的姿势识别:从单深度图像中检测出每个骨骼关节的少量3D候选位置。我们设计了每帧初始化和恢复的技术,以作为任何适当跟踪算法[7,39,16,42,13]的补充,从而可以进一步融入时间和运动的一致性中。这里给出的算法形成了Kinect游戏平台[21]的核心组件。

如图1所示,受近来物体识别工作将物体分成多个组件策略(如[12,43])启发,我们的方法受两个关键设计目标驱动:计算高效且鲁棒。单幅输入深度图像被分割成稠密概率身体组件标签,组件定义为与感兴趣骨骼关节空间上相近的身体部分。将推理出的组件重投影到世界空间,我们局部化每个组件分布的空间模式,从而形成每个骨骼关节3D位置的带可信权重的预测(可能有几个)。

我们将身体组件的分割(从身体分割出各组件)当作逐像素分类问题。对每个像素分别评估避免了不同身体关节间的组合搜索,尽管单个身体组件在不同情形下的外观仍千差万别。我们从运动捕捉数据库中采样出不同身材和体型人物的各种姿势(人体的深度图),然后生成逼真的合成深度图作为训练数据。我们训练出了一个深随机决策森林分类器,为避免过拟合,我们使用了数十万幅训练图像。区别式深度比较图像特征简单产生3D变换不变性的同时维持了计算的高效性。为获得更高的速度,可以使用GPU在每个像素上并行运行分类器[34]。推理出的逐像素分布的空间模式使用mean shift[10]计算,由此空间模式给出3D关节的预测。

我们算法的一个优化实现在Xbox360 GPU上能以每帧不超过5ms的速度运行(即200帧每秒),这比现有方法至少快一个数量级以上。该(算法的)实现一帧接一帧地运行,每帧中人物的身材和体型都很不相同。学习出的区别型方法自然地处理自遮挡和从帧图像抠出的姿势。我们在真实和合成深度图像上(对算法)进行了评估,这些深度图像包含了各种人物的具有挑战性的姿势。甚至在没有使用时间或运动约束的情况下,3D关节的预测也既精确又稳定。我们研究了几个训练参数的作用,指出了拥有大型训练集时,多深的(决策)树仍能避免过拟合。(实验)表明在理想环境和现实环境下,我们的(身体)组件预测至少与“确切最近邻”方法一样通用,并且比现有技术水平有了实质提高。并且,在轮廓图像上实验的结果表明我们的方法有更通用的应用。

我们的主要贡献是:使用新颖的身体组件中间表示将姿势估计问题变成了物体识别问题,为低计算代价和高精度从空间上定位感兴趣的关节而设计了这个中间表示。我们从实验也获得了几个启示:(i)合成深度训练数据是真实数据的极好代理(代替品);(ii) 用各种合成数据成比例增大学习问题对(获得)高精确性很重要;和(iii)我们基于组件的方法甚至比精妙的确切最近邻方法更通用。

Related Work. 关于人类姿势的估计已经有了大量文献([22,19]中有述评)。近来引入的深度摄像机进一步推动了研究的发展[16,19,28]。hellip;hellip;与我们的方法最相似,Plagemann等[28]构建3D 网络来发现测地极值兴趣点,这些兴趣点分类为3种组件:头、手和脚。他们的方法对各组件的位置和方向都进行了估计,但没区分左右,使用兴趣点也限制了组件的选择。

使用传统强度像机方面也取得了进展,尽管通常付出了更高的计算代价。Bregler和Malik[7]使用已知初始姿势的扭曲和指数地图跟踪人物。Ioffe和Forsyth[17]将平行边进行分组,并作为身体部分的候选,然后使用投影分类器裁剪这些身体部分(候选)的组合。Mori和Malik[24]使用形状上下文描述符匹配样本。Ramanan和Forsyth[31]将身体部分的候选当作平行线对,然后在帧间聚集外观。Shakhnarovich等[33]估计上半身姿势,通过参数敏感哈希(散列)匹配插值k-NN姿势。Agarwal和Triggs[1]学习了一个从核化图像轮廓特征到姿势的回归函数。Sigal等[39]使用本征外观模板检测器估计头、上臂和小腿。Felzenszwalb和Huttenlocher[11]运用图画结构高效地估计姿势。Navaratnam等使用未标注数据的边际统计提高姿势估计的性能。Urtasum和Darrel[41]提出使用高斯过程的局部混合来回归人物姿势。[40]使用自动上下文来获取粗糙的身体组件标签,但它不是用来定位关节的,并且给每帧分类时需要约40秒。Rogez等[32]在循环人类运动模式和摄像机角度集上定义了分类层次结构,然后基于该结构训练了随机决策森林。Wang和Popoviacute;c[42]跟踪了一只戴彩色手套的手。我们的系统可以视作从深度图象自动推理出虚拟彩色衣服的颜色。Bourdev和Malik[6]由3D姿势和2D图像外观的紧族获取了“姿势群”,他们可以使用SVMs检测。

2. Data

姿势估计研究往往关注克服训练数据缺乏的技术[25],这是因为两个问题。第一,使用计算机图形学技术[33,27,26]生成逼真的强度图像往往受限于衣服、头发和皮肤造成的颜色和纹理的极大多变性,从而往往使生成的图像退化为2D轮廓[1]。尽管深度摄像机极大地减小了这种困难,仍然存在相当可观的身体和服装的形状变化。第二个限制是合成身体姿势图像需要以动作捕获的数据作为输入。尽管存在模拟人类运动的技术(如[38]),却无法模拟人类的所有自主运动。

在本节我们回顾一下深度图像,并且解释了我们如何使用真实运动捕获数据生成各种基本角色模型,从而合成一个大型且多样化的数据集。我们相信这个数据集在规模和多样性方面都超过了现有水平,且实验表明这样大型的数据集在我们的评估中有多重要。

2.1. Depth imaging

深度图像技术在过去的几年中有了极大的发展,随着Kinect[21]的发布最终成为了大众消费品。深度图像中的像素记录了场景的校准深度,而不是场景强度或颜色的值。我们使用的Kinect摄像机每秒能捕获640times;480规格图像30帧,其深度分辨率为几厘米。

深度摄像机较传统强度传感器有几个优势:工作光强水平低,提供校准后的尺度估计,具有颜色和纹理不变性,解决了姿势的轮廓模糊问题。它们还极大简化了背景减除操作,本文我们将这一点作为前提之一。对我们的方法更重要的是,我们可以直接合成人物的逼真深度图像,从而可以轻易的建起大型的训练数据集。

2.2. Motion capture data

人体可以做出很多姿势,这些是很难模仿的。因此,我们捕获人类运动构成一个大型运动捕获数据库。我们的目的是包含人们在娱乐场景下所能做的所有姿势。数据库包含几百段内容为驾驶、跳舞、踢、跑、和导航菜单等的视频序列的约500k帧图像。

我们希望我们半局部的身体组件分类器多少能推广到未见过的姿势。特别的,我们并不需要记录不同肢体的所有可能组合;实际上已证实较多的各种姿势已经足够了。进一步的,我们不需要记录运动捕获关于垂直轴的旋转变化、左右镜像、场景位置、身材和体型、或摄像机位置,所有这些都可以(半)自动添加。

因为分类器没有使用时间信息,我们关注静止的姿势而不是运动。通常,一macap帧到下一帧之间的姿势变化小得可以忽略。因此,我们使用“最远邻”聚集[15]从初始mocap数据中除去大量相似、冗余的姿势,“最远邻”聚集将姿势和之间的距离定义为,即身体关节j的最大欧氏距离。我们使用100k姿势的子集以确保任何两个姿势之间的距离不小于5cm。

为了使用尚未发现的姿势空间区域提炼mocap(运动捕获)数据库,我们发现必须迭代执行包括运动捕获、从我们的模型采样、训练分类器和测试关节预测准确性的过程。我们早期的实验使用了CMU运动捕获数据库[9]。尽管覆盖的姿势空间远远不够,它还是给出了可接受的结果

2.3. Generating synthetic data

我们建立了一个随机渲染管道,从中我们可以对全标注训练图像集采样。我们建立该管道有两个目的:真实性和多样性。为使训练出的模型良好工作,采样必须与真实摄像机图像十分相似,并且良好覆盖我们在测试时希望识别的外观多样性。我们的特征对深度/尺度和平移变化都进行了显式处理(见下述),但是其它不变性没能有效编码。因此,我们从(训练)数据学习摄像机、姿势、体型和身材的不变性。

合成管道首先随机采样一组参数,然后使用标准计算机图形学技术从纹理映射3D网络渲染深度和(见下述)身体组件图像。使用[4],运动捕获重新指向覆盖身材和体型的15个基础网格。在身高和体重上使用的进一步轻微随机变化覆盖了额外的身材可变性。其它随机参数包括mocap帧、摄像机姿势、摄像机噪声、服装和发型。在补充材料中我们给出了这些变化的更多细节。图2比较了管道的各种输出与手工标注的摄像机图像。

3. Body Part Inference and Joint Proposals

在本节给出我们的身体组件中间表示、描述区别式深度图像特征、回顾决策森林及其在身体组件识别中的应用,最后讨论怎样使用一个模式发现算法生成关节位置的估计。

3.1. Body part labeling

本文的一个主要贡献是我们的身体组件中间表示。我们定义了稠密覆盖身体的几个局部身体组件标签,如图2的颜色编码。一些组件定义是用来直接定位感兴趣的特定骨架关节的,其他的是用来填补身体空白或者通过组合来预测其他关节的。我们的中间表示将问题转化成一个能很容易使用高效分类算法解决的问题。在4.3节我们证明了这种转换的惩罚代价很小。

组件在纹理映射中描述,纹理映射融合了渲染时的各种特征。深度和身体组件图像对作为全标注数据来训练分类器(见下述)。本文中的实验使用了31个人体组件:LU/RU/LW/RW头,颈,L/R肩,LU/RU/LW/RW 手臂, L/R肘, L/R腕, L/R手, LU/RU/LW/RW 躯干, LU/RU/LW/RW 腿, L/R 膝, L/R 踝, L/R脚 。明确左右组件使分类器可以区分身体的左右侧。

当然,为适用特定的应用,这些组件的精确定义可以修改。如在上半身跟踪场景中,所有下半身的组件都可以去掉。组件应该充分小以准确定位身体关节,但是也不能太多以免浪费分类器的能力。

3.2. Depth image features

受[20]中使用特征启发,我们使用简单的深度比较特征。对于给定的像素x,特征计算如下:

其中是图像I在像素x处的深度,参数描述了偏移u和v。使用对偏移规范化保证了特征是深度不变的:对身体的一个给定点,无论它离摄像机近还是远,(特征计算)都会给出一个固定的世界空间偏移。因此特征计算也是3D平移变换,模角度没有影响。对背景中或图像边界之外的偏移像素,深度探针将给出一个大的正常数。

图3图示了不同像素位置x的两个特征。特征(见式1)对接近身体顶部位置的像素x会有较大正响应,但对较低身体位置处像素点的响应则接近0。特征将有助于发现细竖直结构,如手臂。

任意单个这样的特征都只能提供关于像素属于身体哪个组件的微弱信号,但是在决策森林中组合起来后,他们就足以准确区分所有训练组件。设计这些特征充分考虑到了计算效率:不需要预处理;(计算)每个特征最多只需要读取3个图像像素和执行5个算术运算;特征(计算)可以直接使用GPU实现。如果采用更大的计算代价,则可以采用潜在的性能更强的基于诸如区域深度积分、曲率的特征,或者使用局部描述符,如[5]中所采用的。

3.3. Randomized decision forests

随机决策树和森林[35,30,2,8]被证实是很多任务的快速有效多类分类器[20,23,36],且可以在GPU[34]上高效实现。如图4所示,(随机决策)森林是T棵决策树的总体,每棵树都有分支节点和叶子节点。每

全文共16144字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[143141],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。