首页> 中国专利> 一种基于多目视频的人体动画生成方法

一种基于多目视频的人体动画生成方法

摘要

本发明公开了一种基于多目视频的人体动画生成方法,属于计算机动画技术领域,包括以下步骤:首先,利用运动捕获数据,采用高斯过程潜变量模型运动降维方法,学习人体运动的低维空间;其次,利用多摄像机获取的视频,采用多目标粒子群优化人体运动分析方法,计算得到视频中的人体姿态参数;最后,利用人体姿态参数,采用运动重定向方法,驱动三维人体模型生成三维人体动画。本发明基于多目视频的人体动画生成方法能实时生成三维人体动画,具有实现成本低、分析精度高、运行稳定等特点。在电影动画、三维游戏、虚拟现实等领域具有广阔的应用前景。

著录项

  • 公开/公告号CN105069829A

    专利类型发明专利

  • 公开/公告日2015-11-18

    原文格式PDF

  • 申请/专利号CN201510443508.3

  • 发明设计人 李毅;孙亭;郑文超;

    申请日2015-07-24

  • 分类号G06T13/40;

  • 代理机构江苏圣典律师事务所;

  • 代理人胡建华

  • 地址 210007 江苏省南京市苜蓿园东街1号1406信箱07分箱

  • 入库时间 2023-12-18 12:16:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-12-05

    授权

    授权

  • 2015-12-16

    实质审查的生效 IPC(主分类):G06T13/40 申请日:20150724

    实质审查的生效

  • 2015-11-18

    公开

    公开

说明书

技术领域

本发明涉及的是一种计算机动画技术领域的方法,特别是一种基于多目视频 的人体动画生成方法。

背景技术

近年来随着数字娱乐业的蓬勃发展,计算机人体动画技术引起了越来越多的 关注,在电影动画、三维游戏、虚拟现实等领域具有广阔的应用前景。当前,如 何生成逼真的人体动画已成为计算机图形学研究中一个非常活跃的领域。

近年来,基于运动捕捉的人体动画技术得到广泛应用,其基本思路是利用运 动捕获设备高精度实时地记录下人体每一个关节在三维空间中的位置,经过后期 处理,可以在计算机上重现这些运动数据,并且利用运动重定向方法驱动不同虚 拟人物上产生相类似的运动,实现动画制作。目前,常用的运动捕获方法包括机 械方法、电磁方法、光学方法和视频的方法。机械方法依靠机械装置来跟踪和测 量人体运动的轨迹,由于机械设备的尺寸和重量问题,使用不便;电磁式方法通 过安装在人体关节点的电磁接收器获取人体运动数据,其优点是速度快、实时性 好,但其对表演者的活动限制较大,不适用于剧烈的运动和表演;光学方法通过 对目标上特定光点的监视和跟踪来完成运动捕捉的任务,其优点是表演者活动范 围大,无电缆、机械装置的限制,使用方便,但光学方法后处理时间长,且当运 动复杂的时,不同的光点易混淆而产生错误的结果。

概括起来,以上三类方法大多需要昂贵的硬件,需要在人体关键部位粘贴标 记,妨碍了人体的自由运动,且往往只能在特点的工作环境下应用。总的来说, 用户更容易接受一种成本低、非强迫、非接触式运动捕捉技术。视频方法由于只 利用普通摄像机、无需标记点、对运动无限制,近年来得到研究者的重视。按照 使用摄像机的数目不同,运动捕获的视频方法可分为单目视频方法、多目视频方 法。

(1)单目视频方法:基于单目视频的人体运动捕获方法(文献1.苏延超, 艾海舟,劳世竑,图像和视频中基于部件检测器的人体姿态估计,电子与信息学 报,2010,33(6):1413-1419)是个病态问题,由于深度信息的丢失导致图像 与姿态之间的映射存在多义性,使得单目视频方法分析结果精度低,实际应用效 果差。

(2)多目视频方法:相对于单目视频,多目视频由于利用了多视角信息, 可有效克服单目视频无法解决的映射多义、遮挡等难题,可有效提高运动分析的 精度和鲁棒性。John利用多目视频实现了人体运动捕获(文献2.VijayJohn, EmanueleTrucco,SpelaIvekovic.Markerlesshumanarticulatedtrackingusing hierarchicalparticleswarmoptimization.ImageandVisionComputing.2010,28(11): 1530-1547.),可支持三维人体动画生成。但该方法在高维人体空间中进行运动 分析,计算效率低,难以满足实时应用需求;Zhao和Liu利用多目视频且在低 维空间中进行运动数据捕获(文献3.ZhaoXu,LiuYunCai.Generativetrackingof 3Dhumanmotionbyhierarchicalannealedgeneticalgorithm.PatternRecognition. 2008,41(8):2470-2483),但该方法利用多摄像机视觉之和建立评价函数,无法 保证每个视角的最佳匹配,运动捕获的精度低。

发明内容

本发明的目的在于提供一种基于多目视频的人体动画生成方法,从而实现基 于视频的快速、逼真的三维人体动画生成。

实现本发明的目的的技术解决方案为:一种基于多目视频的人体动画生成方 法,包括以下步骤:

步骤1:运动低维空间学习:利用人体运动捕获数据库,采用高斯过程潜变 量模型运动降维方法,计算得到运动低维空间;

步骤2:运动分析模型建模:建立低维姿态与图像特征的适应度函数,构建 低维空间的姿态约束,建立基于约束多目标优化的人体运动分析模型;

步骤3:人体姿态参数分析:采用多目标粒子群优化人体运动分析方法,求 解人体运动分析模型,计算得到人体姿态参数;

步骤4:三维人体动画生成:利用人体姿态参数,采用运动重定向方法驱动 三维人体模型,生成三维人体动画。

本发明步骤1包括:

步骤1-1:采用运动链方法,将高维人体姿态表示为y={yg,yk},y∈Y,Y 为高维人体姿态空间;其中yg=(αxyz)表示人体根节点的朝向,αxyz分 别表示根结点与三维坐标轴x,y,z的夹角,yk表示人体关节点的欧拉角;

步骤1-2:从人体运动捕获数据库中选择一段人体运动捕获数据作为训练数 据,训练数据表示为{yt|t=1,...T},yt为t时刻的人体姿态,t=1,...,T,T为训 练数据的数目,每个时刻对应一个训练数据;

步骤1-3:采用高斯过程潜变量模型方法,对训练数据{yt|t=1,...T}中姿态 的关节点欧拉角yk进行降维,得到关节点欧拉角yk的低维表示ys={y1,...,yD}, ys∈Ys,Ys为关节点欧拉角yk的低维状态空间,D为Ys的维度;

步骤1-4:将高维人体姿态y={yg,yk}降维后得到的低维姿态表示为 x={yg,ys}={yg,y1,...,yD},x∈X,X为运动低维空间。

本发明步骤2包括:

步骤2-1:对于多目视频中的视频v,v=1,2,...,V,V为视频总数,采用混 合高斯模型运动检测方法获取视频v中的人体剪影Zv

步骤2-2:对于视频v,采用双向剪影匹配方法,建立低维姿态 x={yg,y1,...,yD}与人体剪影Zv的适应度函数fv(x,Zv),为每个视频v建立独立的 目标函数,v=1,2,...,V;

步骤2-3:对低维姿态x={yg,y1,...,yD},计算低维姿态的第d维yd的最大值 max(yd)和最小值min(yd),d=1,2,...,D;则每个低维姿态的每一维yd都满足以 下姿态约束:min(yd)<yd<max(yd),d=1,2,...,D;

步骤2-4:基于适应度函数fv(x,Zv),v=1,2,...,V,以及姿态约束 min(yd)<yd<max(yd),d=1,2,...,D,构建基于约束多目标优化的人体运动分 析模型:

argminxF(x)=(f1(x,Z1),f2(x,Z2),...,fv(x,Zv))T,x={yg,y1,...,yD}s.t.min(yd)<yd<max(yd),d=1,2,...,D,

其中,表示求解使目标函数F(x)最小的x的值。

本发明步骤3包括:

步骤3-1:初始化:随机产生N个粒子i=1,...,N, 组成初始粒子群pop(0),N为粒子群规模,初始化粒子的位置Xi(0)和速度 Vi(0);设置粒子的个体极值设置种群的全局极值 gbest0=1NΣi=1NXi(0);

其中,个体极值表示个体在整个迭代过程中的最优解;粒子群全局 极值gbest0表示粒子群pop(0)中所有粒子的最优解。

步骤3-2:对于第k次迭代,k=0,...K,K为最大迭代次数,对粒子群pop(k) 中每个粒子进行更新,得到第k+1代的粒子构 成第k+1代粒子群pop(k+1);其中:K为最大迭代次数,pop(k)为初始粒子群 pop(0)经过k次迭代后得到的种群;

对粒子的更新方法为:根据粒子的速度Vi(k)和位置Xi(k),计算粒子 的速度Vi(k+1)和位置Xi(k+1);Vi(k+1)和Xi(k+1)的计算方法为:

Vi(k+1)=ωVi(k)+c1rand1()×(pbestik-Xi(k))+c2rand2()×(pbestk-Xi(k));

Xi(k+1)=Xi(k)+Vi(k+1));

其中,ω为惯性权重,c1为个体加速系数,c2为全局加速系数,rand1()和 rand2()表示[0,1]间的随机数;为粒子的个体极值,gbestk为粒子群 pop(k)的全局极值;

步骤3-3:粒子约束:对粒子群pop(k+1)中的每个粒子判断yd的取值范围,d=1,2,...,D;如果yd>max(yd), 则将yd的值设置为yd=max(yd);如果yd<min(yd),则将yd的值设置为 yd=min(yd);其中,max(yd)为yd的最大值,min(yd)为yd的最小值;

步骤3-4:个体极值求解:将第k+1代粒子群pop(k+1)中的每个粒 子与其更新前对应的粒子进行非劣性比较,i=1,...,N;若非劣于取所在位置Xi(k+1)为粒子的个体极值即若非劣于则进行赋值令

步骤3-5:全局极值gbestk+1求解:把pop(k+1)中序值为1的粒子作为粒子 群pop(k+1)的全局极值;其中,粒子的序值指的粒子群pop(k+1)中优于的所有粒子的个数;

步骤3-6:进行赋值操作,k=k+1;当k≤K时,执行步骤3-2,否则执行 步骤3-7;

步骤3-7:输出,输出粒子群pop(K)的全局极值gbestK,即人体姿态参数。 本发明与现有技术相比,其显著优点:(1)在运动的非线性子空间中进行运动分 析,提高运动分析的效率,具有更好的工程应用性;(2)借鉴多目标优化思路, 采用多目标粒子群优化运动分析方法进行姿态优化,提高了运动分析的准确性, 使得生成的三维人体动画更逼真。

下面结合附图对本发明作进一步详细描述。

附图说明

图1是本发明基于多目视频的人体动画生成方法的流程图;

图2是由三个摄像机组成的摄像机网络部署图;

图3是多个视角摄像机获取的人体图像;

图4是单个摄像机获取的人体图像;

图5是混合高斯模型运动检测方法得到的人体剪影;

图6是多目标粒子群优化人体运动分析方法计算得到的人体姿态参数;

图7是运动重定向方法驱动三维人体模型得到的人体动画模型;

具体实施方式

本发明公开了一种基于多目视频的人体动画生成方法,其处理流程如图1 所示。包括以下步骤:首先,利用人体运动捕获数据,采用高斯过程潜变量模型 运动降维方法,学习得到运动低维空间;其次,计算低维空间的姿态约束,建立 低维姿态与图像特征的适应度函数,实现基于约束多目标优化的人体运动分析模 型建模;再者,采用多目标粒子群优化人体运动分析方法,求解人体运动分析模 型,计算得到视频中的人体姿态参数;最后,利用人体姿态参数,采用运动重定 向方法驱动三维人体模型,生成三维人体动画。

本发明实现中,采用了包括3个摄像机的摄像机网络,其部署如图2所示, 三摄像机从表演者运动区域的左视角(摄像机1)、上视角(摄像机2)、下视角 (摄像机3)进行图像采集。图3是中三个视角摄像机获取的人体图像,图3中 (a)为摄像机1采集的图像,图3中(b)为摄像机2采集的图像,图3中(c) 为摄像机3采集的图像。下面分别介绍各实施例部分的主要流程。

本发明公开了一种基于多目视频的人体动画生成方法,所述方法包括以下步 骤:

步骤1,运动低维空间学习:利用人体运动捕获数据,采用高斯过程潜变量 模型运动降维方法,学习得到运动低维空间。

步骤1-1:采用运动链方法(文献3.ZhaoXu,LiuYunCai.Generativetracking of3Dhumanmotionbyhierarchicalannealedgeneticalgorithm.PatternRecognition. 2008,41(8):2470-2483.),将高维人体姿态表示为y={yg,yk},y∈Y,Y为高维 人体姿态空间。其中yg=(αxyz)表示人体根节点的朝向,αxyz分别表示 根结点与三维坐标轴x,y,z的夹角,yk表示人体关节点的欧拉角。本发明实现中, 人体关节点数为30,即欧拉角yk的维度为60。

步骤1-2:从运动捕获数据库中选择一段运动捕获数据作为训练数据。将训 练数据表示为{yt|t=1,...T},yt为t时刻的人体姿态,t=1,...,T,T为训练数据 的数目。本发明实现中,人体运动捕获数据来源于卡耐基梅隆大学的运动捕获数 据库(文献4.CMU.运动捕获数据库[DB/OL].http://mocap.cs.cmu.edu/, 2014-01-10.),选取的运动数据类型为步行数据,运动数据数目T=386。

步骤1-3:采用高斯过程潜变量模型方法(文献5.RaquelUrtasun,DavidJ Fleet,AaronHertzmann,etal.Priorsforpeopletrackingfromsmalltrainingsets[A]. ProceedingsoftheInternationalConferenceonComputerVision[C].Beijing:IEEE Press,2005.403-410.),对运动捕获数据{yt|t=1,...T}中姿态的关节点欧拉角yk进 行降维,得到关节点欧拉角yk的低维表示ys={y1,...,yD},ys∈Ys,Ys为关节点 欧拉角yk的低维状态空间,D为Ys的维度。本发明实现中,低维空间Ys的维度 D=6。

步骤1-4:高维人体姿态y={yg,yk}降维后得到的低维姿态表示为 x={yg,ys}={yg,y1,...,yD},x∈X,X为运动低维空间。

步骤2,运动分析模型建模:建立低维姿态与图像特征的适应度函数,构建 低维空间的姿态约束,实现基于约束多目标优化的人体运动分析模型建模;

步骤2-1:对于多目视频中的视频v,v=1,2,...,V,V为视频数目,如图4 所示,采用混合高斯模型运动检测方法(文献6.StaufferC,GrimsonWEL. Adaptivebackgroundmixturemodelsforreal-timetracking[A].In:Proceedingsof IEEEConferenceonComputerVisionandPatternRecognition.Colorado,USA,1999: 246-252.)获取视频v中的人体剪影Zv,如图5所示;本发明中,视频数目V=3。

步骤2-2:对于视频v,采用双向剪影匹配方法(文献7.L.Sigal,M.J.Black. HumanEva:Synchronizedvideoandmotioncapturedatasetforevaluationof articulatedhumanmotion.Int.J.Comput.Vis.87(1),4-27(2010)),建立低维姿态 x={yg,y1,...,yD}与人体剪影Zv的适应度函数fv(x,Zv);为每个视频v建立独立的 目标函数,v=1,2,...,V;

步骤2-3:对低维姿态x={yg,y1,...,yD},计算yd的最大值max(yd)和最小值 min(yd),d=1,2,...,D;则每个低维姿态的每一维yd都应满足以下约束: min(yd)<yd<max(yd),d=1,2,...,D;

步骤2-4:基于适应度函数fv(x,Zv),v=1,2,...,V,以及姿态约束 min(yd)<yd<max(yd),d=1,2,...,D,构建基于约束多目标优化的人体运动分 析模型:

argminxF(x)=(f1(x,Z1),f2(x,Z2),...,fv(x,Zv))T,x={yg,y1,...,yD}s.t.min(yd)<yd<max(yd),d=1,2,...,D

其中,表示求解使目标函数F(x)最小的x的值。

步骤3:人体姿态参数分析:采用多目标粒子群优化人体运动分析方法,求 解人体运动分析模型,计算得到视频中的人体姿态参数;

步骤3-1:初始化:随机产生N个粒子i=1,...,N, 组成初始粒子群pop(0),N为粒子群规模。初始化粒子的位置Xi(0)和速度 Vi(0);设置粒子的个体极值设置种群的全局极值 本发明实现中,粒子群规模N=100。

其中,个体极值表示个体在整个迭代过程中的最优解;粒子群全局 极值gbest0表示粒子群pop(0)中所有粒子的最优解。

步骤3-2:对于第k次迭代,k=0,...K,对粒子群pop(k)中每个粒子进行 更新,得到第k+1代的粒子构成第k+1代粒子群 pop(k+1)。其中:K为最大迭代次数,pop(k)为初始粒子群pop(0)经过k次迭 代后得到的种群。本发明实现中,最大迭代次数K=50。

对粒子的更新方法为:根据粒子的速度Vi(k)和位置Xi(k),计算粒子 的速度Vi(k+1)和位置Xi(k+1)。Vi(k+1)和Xi(k+1)的计算方法为:

Vi(k+1)=ωVi(k)+c1rand1()×(pbestik-Xi(k))+c2rand2()×(pbestk-Xi(k));

Xi(k+1)=Xi(k)+Vi(k+1))。

其中,ω为惯性权重,c1为个体加速系数,c2为全局加速系数,rand1()和 rand2()表示[0,1]间的随机数;为粒子的个体极值,gbestk为粒子群 pop(k)的全局极值。本发明实现中,取为惯性权重ω=2,个体加速系数c1=2, 全局加速系数c2=2。

步骤3-3:粒子约束:对粒子群pop(k+1)中的每个粒子判断yd的取值范围,d=1,2,...,D。如果yd>max(yd), 则将yd的值设置为yd=max(yd);如果yd<min(yd),则将yd的值设置为 yd=min(yd)。其中,max(yd)为yd的最大值,min(yd)为yd的最小值;

步骤3-4:个体极值求解:将第k+1代粒子群pop(k+1)中的每个粒 子与其更新前对应的父代粒子进行非劣性解比较,i=1,...,N。若非 劣于取所在位置Xi(k+1)为粒子的个体极值即 若非劣于则令

步骤3-5:全局极值gbestk+1求解:把pop(k+1)中序值为1的粒子作为粒子 群pop(k+1)的全局极值。其中,粒子的序值指的粒子群pop(k+1)中优于的所有粒子的个数。

步骤3-6:k=k+1;当k≤K时,执行步骤3-2;否则执行步骤3-7;

步骤3-7:输出:输出粒子群pop(K)的全局极值gbestK。计算结果如图6所 示。

步骤4,三维人体动画生成:利用人体姿态参数,采用运动重定向方法(文 献8.罗忠祥,庄越挺,刘丰,潘云鹤,基于时空约束的运动编辑和运动重定向, 计算机辅助设计与图形学学报,2002,14(12):1146-1151)驱动三维人体模型, 生成对应姿态参数的三维人体模型,如图7所示。

对视频的每一帧都采用以上方法进行计算,可得到对应的三维人体模型序 列,最终生成三位人体动画。

本发明提供了一种基于多目视频的人体动画生成方法,具体实现该技术方案 的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技 术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改 进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各 组成部分均可用现有技术加以实现。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号