人体三维动作自动提取方法与流程

文档序号:18901706发布日期:2019-10-18 22:01阅读:1005来源:国知局
人体三维动作自动提取方法与流程

本发明涉及计算机视觉领域,特别涉及一种对人体姿态检测和运动分析的人体三维动作自动提取方法。



背景技术:

随着社会的发展、人口的增多,暴力事件、恐怖袭击事件越来越多。如何让计算机理解人类的行为,来预防犯罪,正在成为一项崇高而亟待解决的问题。人类具有社会属性,任何人的社交行为都可以通过他(她)的动作(身体动作,手势,表情)来表现出来。因此有很多研究者,将让计算机理解人类行为转变为理解人体三维动作。而这第一步,则是对人体三维动作的正确检测。除了在安防方面的作用,人体动作检测在健身(如运动评估),娱乐(如电影特效制作),医疗(如康复训练)等领域也有着十分重要的作用。因其显著的学术、商业与社会价值,人体三维动作检测正成为越来越重要的研究方向。

现有的方法中,准确率最高的当属商业动作捕捉设备(如optitrack)。它需要用户穿戴特定的带标记的服装,在特定的环境中进行动作采集。这种方法广泛应用于有后期制作的电影行业。但在日常生活中,人们衣着多样,生活场景也各式各样,因而很难用这种方法来分析人们的日常动作。

另一些不用标记和特定环境的方法,如用深度(rgbd)相机组或者多rgb相机系统,往往会遇到动作抖动/缺失/不准确的问题;同时对于手部这样自由度高且特征少的部位常出现很大的检测误差。为了能准确检测出人们的日常动作,需要一种方便有效的自动提取人体三维动作的方法。



技术实现要素:

本发明为解决现有的问题,旨在提供一种人体三维动作自动提取方法。

为了达到上述目的,本发明采用的技术方案包括:

步骤一,构建多目相机系统,标定并采集多视角图片;

步骤二,获得多视角图片中的二维人体关键点;

步骤三,根据相机位置、关键点计算出三维人体关键点;

步骤四,根据三维人体关键点构建人体骨骼点层级树。

步骤二中,利用神经网络系统openpose或alphapose获得二维人体关键点。

步骤二中,openpose网络可检测到的每个关键点p,得到表示第i个关键点在视角v图片上的位置,表示网络对于该点的置信度;p∈t,||t||=n其中n表示关键点的个数;v∈v,||v||=m,其中m表示所用相机的数目。

步骤三中,在ba优化中加入置信度则得到第i个三维点的表达式:

x表示由三角测量计算出的三维点,pv(x)为x在视角v上的二维投影;优化出的三维点x在各个视角v上的投影与网络检测出来的二维点加权距离最小。步骤三中,进行滤除离群点:

对于每个骨骼点随机选取三个视角,将其作为集合si,并将三个视角的二维点三角化后得到三维骨骼点

计算所有视角里的二维点的加权重投影误差:

的视角作为内围点加入到si中;令λ=0.1*(h+w)/2,其中h为该视角图片的长,w为宽;

再将更新后的全部内围点的si代入公式(1),并替换v,可得到:

优化得到新的三维骨骼点计算所有si视角里的二维点与的总投影误差

重复以上过程,选出总投影误差最小的及其对应的即为所需要的三维点。

步骤三中,利用人体解剖学对手部进行进一步的优化:

其中,α为可根据搭建的场景调整参数;

用于惩罚不可能的动作,γ为所有的指关节,表示指关节的弯曲夹角;xi表示当前待优化的指关节三维点,xip为xi的父节点,xic为xi的子节点;分别表示当前指关节的最小、最大人体解剖学夹角。

和现有技术相比,本发明所采用的的多目相机系统搭建简单方便,能够适用于日常环境;用户可穿着任意服装,无需穿戴特定装置,降低了使用要求;本方法对于人体动作检测准确,尤其是手部检测十分稳健,更为精准;整个检测过程均为自动化,无需额外人工。

附图说明

图1a至图1i为多视角图片的示意图;

图2a为三维结果的示意图;

图2b为三维结果的示意图;

图3a为身体层级关系示意图;

图3b为身体层级关系示意图;

图4a为手部层级关系示意图;

图4b为手部层级关系示意图。

具体实施方式

现结合附图对本发明作进一步地说明。

参见图1a至图3b,图1a至图3b所展示的是本发明的一个实施例,本实施例通过多相机系统,首先利用神经网络识别出各个视角图片上的身体、手、面部的二维关键点,然后用三角测量(triangulation)、光束法平差算法(bundleadjustment,ba)、随机抽样一致算法(randomsampleconsensus,ransac)以及人体解剖约束,优化出最终的三维关键点。这些三维关键点因携带位置语义信息,可构建出骨骼点层级树,自然地能表达人体的动作信息。

本实施例在具体实施中,首先进行多相机系统的搭建:本实施例对于相机型号无特殊要求,仅需四个以上能实现同步拍摄的相机组。相机的同步工作可由专门的同步器控制(如继电器控制开关)。因后面需要用到神经网络提取二维关键点,为了得到准确的关键点位置,每个相机应尽量能看到整个人体。如果大部分视角都只能获取部分人体,则应增加相机个数,以增加系统的稳健性。

多相机系统的标定。标定,即是计算出相机的内部参数(intrinsicparameters)和外部参数(extrinsicparameters)。对于动作检测,并不一定需要三维骨骼点跟真实世界一样的尺度,因此在标定时,可用一些常见的运动估计(structure-from-motion)开源库(如colmap)。若想得到真实尺度的运动骨骼,则需在标定时加入特定的棋盘格。

数据采集:系统搭建完成后,采集对象在相机组中心自由活动,相机组同步记录动态视频,后序将对此动态视频逐帧处理。

其次,对二维关键点进行检测。因神经网络在二维骨骼关键点检测上的高效性和准确性,本专利用其来获取从前述步骤中采集的多视角图片上的二维关键点。现有很多开源的人体关键点检测网络(如openpose,alphapose),都有较高的正确率,操作中可按需选择。本实施例以openpose为例。对于每一张包含完整人体的图片,openpose网络可检测到137个关键点(身体为25个关键点,每只手21个,面部70个),每个关键点p(p∈t,||t||=n其中n表示关键点的个数)得到表示第i个关键点在视角v(v∈v,||v||=m,其中m表示所用相机的数目)图片上的位置,表示网络对于该点的置信度(confidence)。

不同网络结构获得关键点和置信度的方法不同,本实施例是预测每一个关键点在图片中每个像素的概率,选取概率最大的像素作为该关键点的最终预测位置,同时此概率作为置信度。置信度常为0-1的浮点数,置信度越高,说明网络对于检测结果越肯定。

每组监测点的索引i,都表示了它们对应身体的位置语义信息(如身体上的索引为0的点表示鼻子)。

再次,进行三维关键点的获取。要从多视角的二维点中获得三维点,一般需要用到计算机视觉里的三角测量得到一个初始三维点x,为了得到较好的结果,常用ba对x进行优化。参见图2a、图2b,在本实施例中,不同于常规的ba优化(常规ba优化将所有视角视为同等重要),不同的视角对同一个二维关键点有好坏之分,希望优化出来的三维点的重投影应该更接近那些好的二维点。因此在做ba时,不同视角应该有不同的重要性,优化时应该是最小化加权重投影误差和。在上一步中,我们得到了每个关键点在不同视角的置信度这正是我们需要的视角重要性的衡量标准,将其加入常规ba公式中,可得到优化第i个三维点的表达式:

x表示由三角测量计算出的三维点,pv(x)为x在视角v上的二维投影。优化出的三维点x在各个视角v上的投影与网络检测出来的二维点加权距离最小。对于有些视角来说,某些关键点可能被严重遮挡,无法看见,网络预测结果较差;这些点在统计学上被叫做离群点集(outlierset)。这时如果将全部视角都用于三维点提取,离群点的存在会大大降低结果的准确性。为解决这个问题,引入了ransac的方法来滤除掉离群点:

对于每个骨骼点,随机选取三个视角,作为集合si,将这三个视角的二维点三角化后,可得到三维骨骼点

计算所有视角里的二维点的加权重投影误差

的视角作为内围点(inlier)加入到si中。本专利中令λ=0.1*(h+w)/2,h为该视角图片的长,w为宽。

将更新后的全部内围点的si代入a)中公式,替换v,得到:

优化得到新的三维骨骼点计算所有si视角里的二维点与的总投影误差

重复以上过程(根据相机数目的多少,选择重复次数,当相机数小于10个时,遍历所有可能的组合,大于10时,重复1000次即可得到比较好的结果),选出总投影误差最小的及其对应的即为需要的三维点。

运用上述方法,一般的动作都能很好地被捕捉到。但是像手这样灵活度高,自遮挡严重且有效像素少(在2k*2k的图像里,手往往只有200*200的有效像素)的部位,十分容易出现错误检测。考虑到人体每个关节的运动都有一定的限制,本实施例额外加了一个基于人体解剖学的约束限制:

其中,

α可根据搭建的场景调整参数,本专利中,我们可以设为1,第二项:

主要用于惩罚那些不可能的动作(如手指向左折断)。γ为所有的指关节,

表示指关节的弯曲夹角;

xi表示当前待优化的指关节三维点,xip为xi的父节点,xic为xi的子节点。表示当前指关节的最小/最大人体解剖学夹角。

进一步地,在得到准确的三维关键点后,对于身体和手部这样有层级关系的骨骼点,则可以根据三维关键点的位置语义信息建立层级关系树,如图3a至4b所示(例如肩膀的运动会带动手臂的运动,则肩上的关键点应该是手臂关键点的父级),以得到更好的动作信息,后续不仅可运用安防检测,还可运用于骨骼动画的特效领域。脸部关键点,则可运用于人物情绪采集,三维脸部美化,表情叠加等。

上面结合附图及实施例描述了本发明的实施方式,实施例给出的并不构成对本发明的限制,本领域内熟练的技术人员可依据需要做出调整,在所附权利要求的范围内做出各种变形或修改均在保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1