基于运动特征的人体运动插值计算方法

文档序号:6398707阅读:172来源:国知局
专利名称:基于运动特征的人体运动插值计算方法
技术领域
本发明涉及基于运动特征的人体运动插值计算方法,属于图像处理技术领域。
背景技术
近年来,随着计算机软硬件技术的进步,计算机动画技术得到了飞速的发展,计算机动画是指采用图形与图像的处理技术,以实体造型和真实感显示技术为基础,借助于编程或动画制作软件生成一系列的景物画面。其涉及到图像处理技术、运动控制原理、视频技术和艺术等众多领域,以独特的特点逐步成为一个多种学科和技术综合的领域。其中,运动捕捉技术的不断发展,人们可以利用捕捉设备抓取到的数据生成更多样化且复杂的虚拟人运动。但是,由于运动捕捉设备昂贵且受限于捕捉的外部条件,不可能对所需的人体运动数据每次都进行捕捉,运动数据重用技术和基于运动图的人体动画合成技术由此产生。将捕获的人体运动数据根据运动类型分类保存构建运动图,合成新的人体运动数据时,只需遍历运动图并结合插值技术即可由现有的人体运动数据片段合成新的所需人体运动数据。因此,基于运动捕捉数据的运动合成技术研究是计算机动画技术重要的研究领域之一。自2002年基于运动图的人体运动合成方法产生后,在人体运动数据合成领域,基于运动图的人体运动合成方法已成为目前的主要方法。如附图2所示,运动图的基本方法是将运动捕捉数据按运动类型分段,每帧为一个节点,然后计算每一个节点间的相似性,满足所设阈值的节点间构建为边,最后形成运动图,进行人体运动合成的过程就是在运动图上搜索所需路径的过程。尽管经过多年的发展,但其仍存在很多问题,例如运动图中点、边的定义,过渡点的选取,运过渡动画插值计算等。

发明内容
为了克服上述的不足,本发明提出了基于运动特征的人体运动插值计算方法。本方法通过使用流形学习的方法对高维运动数据降维,并根据降维后的低维特征曲线完成人体运动特征的提取,最后基于提取的运动特征计算过渡窗口长度,确定过渡区间,使用线性插值算法完成过渡动画的构建。通过基于运动特征的人体运动插值窗口长度计算,着重解决在人体运动插值中,过渡窗口选择复杂,通用性差,生成过渡动画跳帧、漏帧的问题。本发明的技术方案是:通过PCA降维算法对高维人体运动数据进行降维处理,使用降维后的低维数据,绘制低维特征曲线。根据低维特征曲线提取人体运动特征。在运动特征的基础上选取过渡窗口长度,确定过渡区间,最后使用线性插值算法完成过渡动画的构建。本发明的技术方案具体包括以下步骤:1.对高维人体运动数据进行降维处理使用PCA、流形学习算法,对高维人体运动数据进行降维处理,得到原始运动序列的低维流形结构,根据运动类型的不同,绘制与之匹配的低维特征曲线。2.提取运动特征
根据生成的人体运动数据低维特征曲线,在低维特征曲线转折处就是高维空间中人体运动姿态的改变处,我们可以将低维特征曲线上的这些点提取出来。3.计算过渡窗口长度根据所绘制的低维特征曲线,在需要进行插值构建过渡动画的2段运动的跳转点位置,分别向前或向后取离跳转点最近的一个特征曲线转折点,跳转点和求得的特征曲线转折点之间即为过渡窗口,此窗口内包含的帧数即为过渡区间长度。4.生成过渡动画将经过基于运动特征提取的过渡窗口内数据作为插值的原始数据集,假设其分别为数据集A[Fi,F2,..., FJ和数据集B [Fi,F2, .,Fn],其中,Fi表示数据集中的一帧数据,其可表不为:F(i) = {T, R1, R2, * *.., Rk}在上面的公式中,T为当前人体的根关节点,R为其余关节点,k为当前人体骨架结构包含的除根关节点外的关节点总数。对数据集AtF1, F2,…,Fn]和数据集BtF1, F2,…,Fn]中每一组相对应的帧Fi,对当前帧Fi上相对应的关节点Rk使用线性插值算法得到插值点,使用这些插值点合成一帧新的数据,以此类推,最终完成过渡动画的构建。本发明原理:在遍历运动图的过程中,不满足所设阈值的跳转点间,需要使用插值技术进行插补动画的构建,插值结果的好坏直接影响到最终合成动画的质量。进行两段运动间插值计算过渡动画时,过渡长度的选择非常重要,选取合适的过渡窗口长度,是进行插值计算的基础和难点。虽然理论上过渡窗口越长,则生成的过渡动画越平滑,但是在实际应用中,过长的过渡窗口在计算插值动画时,会消耗大量的时间,同时,根据运动特征的不同,过长的过渡窗口会使生成的过渡动画与人们的需求相违。同样,过短的过渡窗口,会使生成的插值动画生硬,无法达到平滑过渡的要求。合适的过渡长度可以使合成的结果平滑、自然。本发明与现有技术相比具有以下优点:与基于固定过渡窗口长度的方法相比,在走到跑过渡中,右侧小臂和脚腕等关节处,由于过渡窗口小,无法充分进行插值计算,产生了跳帧、漏帧的现象,以致生成的插值动画不够平滑。同样在由跑到跳的过渡中,人体的上半身下行过快,插值生成的插补动画不足,产生的过渡动画不自然。通过本发明所提的基于运动特征提取的插值窗口计算,过渡窗口大小分别为22帧,经过线性插值计算,平滑自然的由走过渡到跑再由跑过渡到跳。由此对比可见本发明所提算法在规律及不规律两类运动类型上,均优于固定窗口长度的插值计笪
o与基于测地距离的过渡窗口计算方法相比,在走到跑过渡中,上半身过渡平滑,但脚步出现了滑步现象,以致生成的插值动画不够平滑,需要再进行去除滑步的处理。而在在由跑到跳的过渡中,与采用的固定窗口长度存在的问题类似,人体的上半身下行过快,插值生成的插补动画不足,产生跳帧现像。可见本发明提出的基于运动特征的插值窗口长度计算算法优于基于测地距离的过渡窗口长度计算算法。


图1本发明算法流程图。
图2标准运动图计算原理。图3人体运动数据低维特征曲线示意图。图4过渡动画计算方法示意图。图5本发明生成过渡动画结果示意图。图6基于固定过渡长度生成的过渡动画示意图1。图7基于固定过渡长度生成的过渡动画示意图2。图8基于测地距离过 渡长度生成的过渡动画示意图1。图9基于测地距离过渡长度生成的过渡动画示意图2。
具体实施例方式本发明的实施示例是在以本发明技术方案为前提下进行实施的,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实施例。实例选取一组走到跑再到跳的运动进行验证,运动数据低维特征曲线如附图3所示:表示的是原始m维空间中的运动数据映射到k维空间中后得到的低维特征曲线;过渡动画计算方法如图4所示:在motion A的第i巾贞处和motion B的第j巾贞处为跳转点,分别向前、向后取一定长度的过渡窗口 ;本实施例生成过渡动画结果如图5所示。具体实施步骤为:步骤1:提取运动特征。使用PCA流形学习算法,对高维人体运动数据进行降维处理,并绘制3维运动数据特征曲线,此特征曲线即为低维空间对高维人体运动姿态的映射。(1)对于一个长度为n帧的运动序列,计算平均值Mavg
权利要求
1.一种基于运动特征的人体运动插值计算方法,其特征在于:包括如下步骤:高维人体运动数据进行降维处理 (1)对于一个长度为n帧的运动序列,计算平均值Mavg (2)定义一个差值di=M1- Mavg(i=l, 2,…,n),可得到一个矩阵D:
2.提取运动特征 使用上部中降维得到的原始数据在k维空间的低维映射绘制人体运动数据在k维空间下的特征曲线,根据生成的人体运动数据低维特征曲线与原始运动状态对比可以得到在低维特征曲线转折处就是高维空间中人体运动姿态的改变处,低维特征曲线上这些转折点提取出来;
3.计算过渡窗口长度 根据所绘制的低维特征曲线和提取的转折点,在需要进行插值构建过渡动画的2段运动的Mi和Mi+1的跳转点位置,分别向前或向后取离跳转点最近的一个特征曲线转折点,跳转点和求得的特征曲线转折点之间即为过渡窗口,此窗口内包含的帧数即为过渡区间长度。
4.生成过渡动画 将经过基于运动特征提取的过渡窗口内数据作为插值的原始数据集,假设其分别为数据集A[F1, F2, - ,Fn]和数据集B[F1, F2,…,Fn],其中,Fi表示数据集中的一帧数据,其可表示为:F(i) = {T,R1, R2,…,RJ, 在上面的公式中,T为当前人体的根关节点,R为其余关节点,k为当前人体骨架结构包含的除根关节点外的关节点总数。对数据集A[F1, F2,…,Fn]和数据集B [F1, F2,…,Fn]中每一组相对应的帧Fi,对当前帧Fi上相对应的关节点Rk使用线性插值算法得到插值点,使用这些插值点合成一帧新的数据,以此类推,最终完成过渡动画的构建。
全文摘要
本发明公开了基于运动特征的人体运动插值计算方法,属于图像处理技术领域。本发明的技术方案具体包括1.对高维人体运动数据进行降维处理。2.提取运动特征。3.计算过渡窗口长度。4.生成过渡动画。通过基于运动特征的人体运动插值窗口长度计算,着重解决在人体运动插值中,过渡窗口选择复杂,通用性差,生成过渡动画跳帧、漏帧的问题。
文档编号G06T7/20GK103116901SQ201310031870
公开日2013年5月22日 申请日期2013年1月28日 优先权日2013年1月28日
发明者魏小鹏, 张强, 姚一, 周东生, 李晴 申请人:大连大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1