CN104658026B - 一种基于极坐标系的三维动画融合变形方法 - Google Patents
一种基于极坐标系的三维动画融合变形方法 Download PDFInfo
- Publication number
- CN104658026B CN104658026B CN201510081189.6A CN201510081189A CN104658026B CN 104658026 B CN104658026 B CN 104658026B CN 201510081189 A CN201510081189 A CN 201510081189A CN 104658026 B CN104658026 B CN 104658026B
- Authority
- CN
- China
- Prior art keywords
- coordinate system
- state
- reference state
- fusion
- interpolation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于极坐标系的融合变形方法,针对运动轨迹为弧线的变形对象,建立2个以上的参考状态,以变形对象的转动中心为原点,建立三维极坐标系,将参考状态中变形对象的三维笛卡尔坐标转换为三维极坐标。根据目标状态确定参考状态的权重,基于所述权重对步骤三中的三维极坐标进行融合插值,将融合插值后的三维极坐标转换回三维笛卡尔坐标,获得融合结果。使用本发明能够增强融合变形动画的平滑过渡效果,同时减少动画制作过程中的调整时间。
Description
技术领域
本发明涉及三维动画技术领域,具体涉及一种基于极坐标系的融合变形方法。
背景技术
三维动画技术,是近年来随着计算机软硬件技术的发展而产生的一种新兴技术,可以方便快捷地制作出满足导演需求的三维动画或影视特效镜头。
三维动画片的制作原理一般为:首先,利用三维软件(比如3ds Max、Maya或Houdini)在计算机中建立一个虚拟的世界;然后,在这个虚拟的三维世界中添加场景和三维卡通角色等三维模型;最后,设定模型的动画曲线、虚拟摄影机的运动轨迹和其它动画参数,渲染得到角色动画。
由于三维动画技术具备可精确模拟真实景象、几乎无创作限制等特点,目前被广泛应用于娱乐、教育、军事等诸多领域。
针对娱乐领域的应用,通常需要根据设计师提供的卡通人物造型,制作出具备相应外形的三维动画角色,并赋予骨骼绑定系统,从而具有栩栩如生的动作或表情。
目前生成角色动画的方法主要有:骨骼绑定方法,动作捕捉技术和融合变形。
骨骼绑定方法直接控制面部的多边形变形,无需大量的目标模型,但它的缺点是需要绑定师精细调节各个关节点对周围顶点的影响权重范围和动画师设置诸多参数和动画曲线,才能完成动画制作。
动作捕捉的方法,是在真人演员脸上布上几百个跟踪点,精确记录下脸部在每个时刻的形态模型,它的缺陷是数据量巨大,并且得到的表情动画数据只能用在与真人脸相近的脸部模型上。
融合变形(blend shape)需要针对所需动作的过渡状态制作相应的目标模型,但是现有的融合变形是基于笛卡尔坐标系的,这意味着点从初始位置到目标位置的移动必然是直线,而人物体上的点的运动,比如眼帘的开闭、胳膊的弯曲或肌肉的隆起,其运动路径一般都是曲线。所以动画师为了符合角色的动画特性,往往需要在动画变化中插入多个关键帧,来手工保证动画曲线是近似的圆弧。这不仅耗费动画师的时间,而且动画效果也会显得有些僵硬。
发明内容
有鉴于此,本发明提供一种基于极坐标系的三维动画融合变形方法,增强融合变形动画(blend shape)的平滑过渡效果,同时减少动画制作过程中的调整时间。
该基于极坐标系的融合变形方法,包括:
步骤一、针对运动轨迹为弧线的变形对象,建立2个以上的参考状态;
步骤二、以变形对象的转动中心为原点,建立三维极坐标系;所述三维极坐标系是由极坐标系扩展到三维空间中,形成的圆柱坐标系或球坐标系;
步骤三、将参考状态中变形对象的三维笛卡尔坐标转换为三维极坐标;
步骤四、根据目标状态确定参考状态的权重,基于所述权重对步骤三中的三维极坐标进行融合插值;
步骤五、将融合插值后的三维极坐标转换回三维笛卡尔坐标,获得融合结果;
步骤六、针对角色动画中的每一帧重复应用上述步骤四~五,即可获得完整的角色动画。
其中,对于沿球形表面运动的对象的动画制作,建立起点和终点的2个参考状态,以球的中心为原点建立球坐标系。
优选地,针对沿球形表面运动的动画,步骤四中所述融合插值采用球线性插值:
假设p0是起点参考状态下模型上顶点位置在球坐标系中的坐标,p1是终点参考状态下模型上顶点位置在球坐标系中的坐标,Ω为p0与p1之间的角度差;t为设定的取值范围在[0,1]的状态信息,t为0,表示在p0位置,t为1,表示在p1位置,t介于0和1之间表示处于p0位置和p1位置之间的过渡状态;
那么p0和p1之间的线性插值公式如下:
通过上式获得融合后目标状态下模型上顶点位置在球坐标系中的坐标;其中,sin[(1-t)Ω]/sinΩ为起点参考状态的权重,sin[tΩ]/sinΩ为终点参考状态的权重。
其中,对于肢体的弯曲变形,建立肢体两个以上的参考状态,以肢体的转轴为原点建立圆柱坐标系Coord,圆柱坐标系的z轴与肢体轴线重合,z轴为圆柱坐标系中的高度轴。
优选地,对于肢体的弯曲变形,所述步骤四具体包括如下子步骤:
子步骤S401:计算各参考状态对当前目标状态的影响值Fi;
子步骤S402:对圆柱坐标系Coord进行旋转变换,使圆柱坐标系Coord的z轴与目标状态下的胳膊轴线重合;
子步骤S403:在经过子步骤S402旋转变换后的圆柱坐标系Coord中,根据计算出的影响值Fi来确定权重,对各参考状态下顶点的圆柱坐标进行融合插值。
优选地,所述子步骤S401计算影响值Fi的方式具体为:
针对待弯曲变形肢体的每个参考状态i设置一个旋转向量Ci,所述旋转向量为单位向量,起点为圆柱坐标系原点,方向与肢体轴线重合;为参考状态i的旋转向量赋予一个角度衰减值ri,设目标状态的旋转向量Ca距离参考状态i的旋转向量Ci的角度是rai;每个参考状态对应一个旋转向量;
如果rai>ri,那么参考状态i对目标状态的影响值Fi就是0;
如果rai≤ri,那么参考状态i对目标状态的影响值Fi就是(ri-rai)/ri。
优选地,所述子步骤S403进行融合插值的顺序为:设参考状态中肢体模型上顶点位置没有改变的参考状态为O状态,O状态也是模型师所建立的肢体模型的初始状态;然后,针对剩余的参考状态,按影响值Fi进行排序;最后将各参考状态按照影响值从大至小依次与O状态下的模型两两融合插值。
优选地,,所述子步骤S403中对两个参考状态进行融合插值的具体的方式为:
设是参考状态i下肢体模型上顶点j在相应圆柱坐标系中的坐标,是参考状态k下肢体模型上顶点j在相应圆柱坐标系中的坐标;且参考状态i的影响值Fi大于参考状态k的影响值Fk;
首先,计算pij和pkj在xy平面下的融合插值,其中,xy平面为圆柱坐标系中过原点且垂直于z轴的平面,具体为:计算pij和pkj在xy平面上的二维投影矢量为pij’和pkj’,设Ω2为pij’和pkj’之间的角度差,那么pij’和pkj’在xy平面的融合插值后的x和y坐标值为:
其中,sin[(1-Fk)Ω2]/sinΩ2为xy平面内融合时参考状态i的权重,sin[FkΩ2]/sinΩ2为xy平面内融合时参考状态k的权重;
接着,计算pij和pkj在z轴上的融合插值,z轴上的融合插值后的z坐标值为:
Rjz=(1-Fk)*zij+Fk*zkj
其中,(1-Fk)为z轴融合时参考状态i的权重,Fk为z轴融合时参考状态k的权重;
则pij和pkj在相应圆柱坐标系下的融合插值后的坐标为(atan2(Rjy,Rjx),Rjz)。
有益效果:
本发明提供了一种基于极坐标系的融合变形方法,对于运动轨迹为弧线的变形对象,在较少关键帧的情况下获得更加平滑的动画效果,从而减少了动画的制作时间。
附图说明
图1为本发明基于极坐标系的融合变形方法的流程图。
图2为三个参考状态下各旋转向量Ci及角度衰减值ri所限定影响范围的示意图。
具体实施方式
下面将参照附图来说明本发明的实施例。
针对运动轨迹为弧线的变形对象,现有三维动画制作工具中的融合变形方法,只能在两个参考状态之间进行线性插值,即从一个参考状态到另一个参考状态之间的轨迹是直线线段,因此为了获得平滑的弧线动画,需要将弧形运动轨迹分割为众多的直线线段来近似模拟,即需要动画师在起始参考状态和最终参考状态之间插入多个关键帧设置,大大增加了动画师的工作量。
而在极坐标系扩展到三维空间中形成的圆柱坐标系或球坐标系中,描述上述弧线运动,其实只需获得初始参考状态和最终参考状态的坐标,因为该坐标描述的就是旋转角度,所以对旋转角度进行线性插值后即可获得完美的弧形轨迹。
因此,本发明提供的基于极坐标系的融合变形方法,其基本思想是:针对运动轨迹为弧线的变形对象,将变形对象中待变形位置的坐标由标准的笛卡尔坐标转换为极坐标(球坐标系或者圆柱坐标系),在极坐标系下进行融合插值。最后,将结果转换回笛卡尔坐标。
图1为本发明基于极坐标系的融合变形方法的流程图。如图1所示,其包括如下步骤:
步骤一、针对运动轨迹为弧线的变形对象,建立2个以上(≥2)参考状态。这里参考状态是指用于融合变形的一系列模型。
对于较为简单的弧线运动,只要建立2个参考状态即可,一个为起始状态,一个为目标状态;而对于约束条件较多,控制较为精细的弧线运动,需要建立3个以上参考状态。
步骤二、以变形对象的转动中心为原点,建立三维极坐标系。本发明的三维极坐标系是由极坐标系扩展到三维空间中形成的坐标,根据不同应用可以选择圆柱坐标系或球坐标系。
其中,圆柱坐标系是一种三维坐标系统。它是二维极坐标系往z-轴的延伸。添加的第三个坐标专门用来表示二维极坐标系xoy中的空间中某一点P(x,y,z)离xy-平面的高低。按照国际标准化组织建立的约定(ISO 31-11),径向距离、方位角、高度,分别标记为ρ,z。那么,P点的圆柱坐标是(ρ,z)。其中,ρ是P点与z-轴的垂直距离(相当于二维极坐标中的半径r),是线OP在xy-面的投影线与正x-轴之间的夹角(相当于二维极坐标中的θ),z与三维笛卡尔坐标系的z等值,即P点距xy-平面的距离。简单的说,对应关系为: z=z。
球坐标系坐标为(ρ,θ),其中ρ是点P到球心O的距离,是从正z轴来看自x轴按逆时针方向转到OM所转过的角,这里M为点P在xOy面上的投影距离z轴的角度,θ是有向线段OP与z轴正向的夹角。与三维笛卡尔坐标系间的转换1).球坐标系(ρ,θ,)与三维笛卡尔坐标系(x,y,z)的转换关系为:z=ρcosθ。
在标准方法中,因为是笛卡尔坐标系,所以,无论控制器的位置在哪,初始位置和变形目标的位置的差值是不变的,所以控制器可以放置在角色上的任意位置。但是,极坐标系不同,存在特殊点(球心或者圆柱的中心),点的位置距离极坐标系中心的位置不同,坐标的变化不是线性的,所以初始位置与变形目标之间在极坐标系下的距离是因中心点的选取而变化的。所以控制器位置的选取需要根据所控制的模型的特性来定。
步骤三、将参考状态中变形对象的三维笛卡尔坐标转换为三维极坐标。
步骤四、根据目标状态确定参考状态的权重,基于所述权重对步骤三中的三维极坐标进行融合插值。
步骤五、将融合插值后的三维极坐标转换回三维笛卡尔坐标,获得融合结果。
步骤六、针对角色动画中的每一帧重复应用上述步骤四~五,即可获得完整的角色动画。
下面针对采用球坐标系和圆柱坐标系举两个应用实例对本发明进行描述。
应用案例1:眼帘的眨动
为了制作出眼帘眨动的效果,使用传统的融合变形器,需要在张开和闭上眼帘的两个状态之间插入多个中间状态模型,才能做到近似的曲线运动。而采用基于极坐标系的融合变形,只需要设定张开和闭上两个状态的模型。具体过程包括如下步骤:
步骤一、针对眼帘的眨动,建立张开和闭上眼帘的2个参考状态。
步骤二、以眼球中心为原点建立球坐标系。
步骤三、将参考状态中变形对象的三维笛卡尔坐标转换为球极坐标。
步骤四、根据目标状态确定参考状态的权重,基于所述权重对步骤三获得的球坐标进行融合插值。
采用极坐标下的融合,难免会出现动画闪烁的问题。这是因为极坐标系下的融合过渡是沿着源点和目标点之间在球面或柱面上的最短路径运动的,在两个点之间的角差距在π左右时,点的运动存在两个截然相反的方向。这里,本发明针对两个参考状态的极坐标融合采用了SLERP(球线性插值)来解决。
假设p0是张开眼帘时眼帘模型上顶点位置在球坐标系中的坐标,p1是闭上眼帘时眼帘模型上顶点位置在球坐标系中的坐标,Ω为p0与p1之间的角度差,即Ω=p0·p1,表示p0与p1之间的点积;那么p0和p1之间的线性插值公式如下:
通过上式获得融合后目标状态下模型上顶点位置在球坐标系中的坐标。其中,sin[(1-t)Ω]/sinΩ为张开眼帘状态的权重,sin[tΩ]/sinΩ为闭上眼帘状态的权重。t为设定的取值范围在[0,1]的状态信息,t为0,表示在p0位置,t为1,表示在p1位置,t介于两者之间表示在处于p0位置和p0位置之间的过渡状态。
步骤五、将融合插值后的位置信息转换回三维笛卡尔坐标系,获得融合结果;
步骤六、通过调节t来改变融合变形的权重,针对动画中的每一帧重复步骤四~五,从而获得眼帘模型从张开到闭上或从闭上到张开的动画效果。
至此,本流程结束。
本应用案例以眼帘这种沿球形表面运动的对象为例进行介绍,在实际中,对于沿球形表面运动的对象的动画制作均可以采用该方法,建立起点和终点的2个参考状态,以球的中心为原点建立球坐标系,重复步骤四~六即可实现从起点状态变化到终点状态的动画效果。
应用案例2:胳膊的弯曲变形
动画中角色胳膊的动画变形效果,现有技术存在的问题是,为了保证从伸展到弯曲胳膊时,胳膊的三维模型不穿插并具有较好的过渡效果,需要建立多个以上的不同状态下的胳膊模型。这里的胳膊是指一段胳膊,例如上臂或下臂,本案例以上臂为例。
本发明参考了文献1[Pose Space Deformation:A Unified Approach to ShapeInterpolation and Skeleton-Driven Deformation](发表于SIGGRAPH'00Proceedingsof the 27th annual conference on Computer graphics and interactivetechniques,165-172页,作者为J.P.Lewis,Matt Cordner,Nickson Fong,时间为2000年)的思想,即在关节处的局部坐标系中,建立各个姿态(这里是以关节的朝向来度量的)所对应的模型形变,然后计算当前姿态与所有姿态向量的距离,从而算出各个模型形变的权重,加权累积后得到当前姿态的模型形变。其中,姿态向量即为下文的旋转向量,该旋转向量为单位向量,起点为圆柱坐标系原点,方向与胳膊轴线重合。
胳膊的弯曲变形的具体过程包括如下步骤:
步骤一、对于胳膊的弯曲变形,建立胳膊3个以上的参考状态,并在各参考状态下对模型进行不同的形变处理,比如肌肉的隆起。举例来说,这里的3个参考状态分别为胳膊垂直向上举起时的状态、胳膊松弛放下与身体接触时的状态和胳膊向前水平举起时的状态。
步骤二、以肢体的转轴为原点建立圆柱坐标系Coord,圆柱坐标系的z轴与肢体轴线重合,z轴为圆柱坐标系中的高度轴。
本步骤中,任选一参考状态C1,以该参考状态下胳膊的转轴为原点,此时的胳膊轴线为z轴,另外两轴任意选取,由此建立圆柱坐标系Coord。对于其他各参考状态,将该圆柱坐标系Coord进行旋转变换,即保持z轴与其他各参考状态下的胳膊轴线重合即可。
步骤三、将各参考状态中变形对象各顶点的位置信息由三维笛卡尔坐标系转换到圆柱坐标系Coord中。
步骤四、根据目标状态确定参考状态的权重,基于所述权重对步骤三中的圆柱坐标进行融合插值。
S401、计算各参考状态对当前目标状态的影响值Fi。
本步骤中,赋予每个参考状态i的旋转向量Ci一个角度衰减值ri(也可以所有参考状态设置统一的角度衰减值),赋值时结合动画需求和关节活动限制综合考虑,该角度衰减值ri限定了当前姿态下模型形变在融合变形中的影响范围,如图2所示。设目标状态的旋转向量Ca距离参考状态i的旋转向量Ci的角度是rai,
a)如果rai>ri,那么该参考状态i对目标状态的影响值Fi就是0;
b)如果rai≤ri,那么参考状态i对目标状态的影响值Fi就是(ri-rai)/ri。
这样做的好处是使绑定师调整姿态的影响范围时更加直观,而且计算量也更加小。
S402、对圆柱坐标系Coord进行旋转变换,使z轴与目标状态下的胳膊轴线重合。
S403、在经过子步骤S402旋转变换后的圆柱坐标系Coord中,根据计算出的影响值Fi来确定权重,对各参考状态下顶点的圆柱坐标进行融合插值。
本步骤S403中,首先,设参考状态中胳膊模型上顶点位置没有改变的参考状态为O状态,O状态也是模型师所建立的胳膊模型的初始状态;然后,针对剩余的参考状态,按影响值Fi进行排序;最后将各参考状态按照影响值从大至小依次与O状态下的模型两两融合插值,从而确保影响值大的参考状态优先进行融合插值。具体来说是将参考状态O与影响值最大的参考状态进行融合插值,得到第一次中间融合结果;将第一次中间融合结果与影响值第二大的参考状态进行融合插值,得到第二中间融合结果;依次类推,直到融合处理完所有除O以外的参考状态。
其中,参考状态O与影响值为Fk的参考状态k进行融合插值的具体的方式为:
假设poj是参考状态O下胳膊模型上顶点j在经过旋转变换后的圆柱坐标系Coord中的坐标,假设pkj是参考状态k下胳膊模型上顶点j在经过旋转变换后的圆柱坐标系Coord中的坐标。如果某参考状态k的影响值Fk等于0,则不进行融合插值。设poj在圆柱坐标系Coord中坐标为(ρoj,zoj),pkj在圆柱坐标系Coord中坐标为(ρkj,zkj)。
首先,计算poj和pkj在xy平面(xy平面为圆柱坐标系Coord中过原点且垂直于z轴的平面)上的投影。poj在xy平面上的二维投影矢量 pkj在xy平面上的二维投影矢量为Ω2=poj’·pkj’为poj’与pkj’之间的点积;那么poj’和pkj’在xy平面的融合插值后的x和y坐标值为:
其中,sin[(1-Fk)Ω2]/sinΩ2为xy平面内融合时参考状态O的权重,sin[FkΩ2]/sinΩ2为xy平面内融合时参考状态k的权重。
其次,计算poj和pkj在z轴上的融合插值。z轴上的融合插值后的z坐标值为:
Rjz=(1-Fk)*zoj+Fk*zkj
其中,(1-Fk)为z轴融合时参考状态O的权重,Fk为z轴融合时参考状态k的权重。
poj和pkj在圆柱坐标系Coord下的融合插值后的坐标为(atan2(Rjy,Rjx),Rjz)。其中,atan2(X,Y)是反正切函数,其计算出给定的X及Y坐标值的反正切值,结果以弧度表示并介于-π到π之间(不包括-π)。
上述融合插值方法的几何意义是先对poj和pkj在圆柱坐标系Coord中xy平面上进行极坐标系下的融合插值,然后再对poj和pkj在圆柱坐标系Coord中z轴方向进行线性融合插值。
对胳膊模型上各顶点均执行上述操作,即可完成参考状态O与参考状态k下模型的融合插值,获得第一次的中间融合结果;第一次的中间融合结果与其他参考状态的融合插值过程与参考状态O、k的融合插值相同,这里不再赘述。
步骤五、将融合插值后的顶点坐标从经过步骤S402旋转变换后的圆柱坐标系Coord转换至三维笛卡尔坐标系,从而使融合更加平滑,进一步减少了融合变形中所需的目标模型的数量。
步骤六、针对胳膊动画中的每一帧时的目标状态,重复步骤四~五自动得到由初始姿态至最终状态的平滑形变效果。
所需的参考状态及其对应的形变处理的总数是根据绑定师的测试结果来定,标准是达到各形变间的平滑过渡。采用本发明后,针对要求较高的动画,制作中所需参考状态数量大约减少了2/3。
至此,本流程结束。
本应用保证胳膊从一个姿态过渡到另一个姿态时,胳膊上各顶点的相对形变是平滑的,例如从肌肉的隆起,变为肌肉不隆起,保证肌肉变形过渡的平滑性。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于极坐标系的三维动画融合变形方法,其特征在于,包括:
步骤一、针对运动轨迹为弧线的变形对象,建立2个以上的参考状态;
步骤二、以变形对象的转动中心为原点,建立三维极坐标系;所述三维极坐标系是由极坐标系扩展到三维空间中,形成的圆柱坐标系或球坐标系;
步骤三、将参考状态中变形对象的三维笛卡尔坐标转换为三维极坐标;
步骤四、根据目标状态确定参考状态的权重,基于所述权重对步骤三中的三维极坐标进行融合插值;
步骤五、将融合插值后的三维极坐标转换回三维笛卡尔坐标,获得融合结果;
步骤六、针对角色动画中的每一帧重复应用上述步骤四~五,即可获得完整的角色动画。
2.如权利要求1所述的方法,其特征在于,对于沿球形表面运动的对象的动画制作,建立起点和终点的2个参考状态,以球的中心为原点建立球坐标系。
3.如权利要求2所述的方法,其特征在于,对于沿球形表面运动的对象的动画制作,步骤四中所述融合插值采用球线性插值:
假设p0是起点参考状态下模型上顶点位置在球坐标系中的坐标,p1是终点参考状态下模型上顶点位置在球坐标系中的坐标,Ω为p0与p1之间的角度差;t为设定的取值范围在[0,1]的状态信息,t为0,表示在p0位置,t为1,表示在p1位置,t介于0和1之间表示处于p0位置和p1位置之间的过渡状态;
那么p0和p1之间的球线性插值公式如下:
<mrow>
<mi>S</mi>
<mi>l</mi>
<mi>e</mi>
<mi>r</mi>
<mi>p</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>p</mi>
<mn>0</mn>
</msub>
<mo>,</mo>
<msub>
<mi>p</mi>
<mn>1</mn>
</msub>
<mo>;</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<mi>sin</mi>
<mo>&lsqb;</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mi>&Omega;</mi>
<mo>&rsqb;</mo>
</mrow>
<mrow>
<mi>sin</mi>
<mi>&Omega;</mi>
</mrow>
</mfrac>
<msub>
<mi>p</mi>
<mn>0</mn>
</msub>
<mo>+</mo>
<mfrac>
<mrow>
<mi>sin</mi>
<mo>&lsqb;</mo>
<mi>t</mi>
<mi>&Omega;</mi>
<mo>&rsqb;</mo>
</mrow>
<mrow>
<mi>sin</mi>
<mi>&Omega;</mi>
</mrow>
</mfrac>
<msub>
<mi>p</mi>
<mn>1</mn>
</msub>
</mrow>
通过上式获得融合后目标状态下模型上顶点位置在球坐标系中的坐标;其中,sin[(1-t)Ω]/sinΩ为起点参考状态的权重,sin[tΩ]/sinΩ为终点参考状态的权重。
4.如权利要求1所述的方法,其特征在于,对于肢体的弯曲变形,建立肢体2个以上的参考状态,以肢体的转轴为原点建立圆柱坐标系,圆柱坐标系的z轴与肢体轴线重合,z轴为圆柱坐标系中的高度轴。
5.如权利要求4所述的方法,其特征在于,对于肢体的弯曲变形,所述步骤四具体包括如下子步骤:
子步骤S401:计算各参考状态对当前目标状态的影响值Fi;
子步骤S402:对圆柱坐标系进行旋转变换,使圆柱坐标系的z轴与目标状态下的胳膊轴线重合;
子步骤S403:在经过子步骤S402旋转变换后的圆柱坐标系中,根据计算出的影响值Fi来确定权重,对各参考状态下顶点的圆柱坐标进行融合插值。
6.如权利要求5所述的方法,其特征在于,所述子步骤S401计算影响值Fi的方式具体为:
针对待弯曲变形肢体的每个参考状态i设置一个旋转向量Ci,所述旋转向量Ci为单位向量,起点为圆柱坐标系原点,方向与肢体轴线重合;为参考状态i的旋转向量Ci赋予一个角度衰减值ri,设目标状态的旋转向量Ca距离参考状态i的旋转向量Ci的角度是rai;每个参考状态i对应一个旋转向量Ci;
如果rai>ri,那么参考状态i对当前目标状态的影响值Fi就是0;
如果rai≤ri,那么参考状态i对当前目标状态的影响值Fi就是(ri-rai)/ri。
7.如权利要求5所述的方法,其特征在于,所述子步骤S403进行融合插值的顺序为:设参考状态中肢体模型上顶点位置没有改变的参考状态为O状态,O状态也是模型师所建立的肢体模型的初始状态;然后,针对剩余的参考状态,按影响值Fi进行排序;最后将各参考状态按照影响值Fi从大至小依次与O状态下的模型两两融合插值。
8.如权利要求7所述的方法,其特征在于,所述子步骤S403中对2个参考状态进行融合插值的具体的方式为:
设是参考状态i下肢体模型上顶点j在相应圆柱坐标系中的坐标,是参考状态k下肢体模型上顶点j在相应圆柱坐标系中的坐标;且参考状态i对当前目标状态的影响值Fi大于参考状态k对当前目标状态的影响值Fk;
首先,计算pij和pkj在xy平面下的融合插值,其中,xy平面为圆柱坐标系中过原点且垂直于z轴的平面,具体为:计算pij和pkj在xy平面上的二维投影矢量为pij’和pkj’,设Ω2为pij’和pkj’之间的角度差,那么pij’和pkj’在xy平面的融合插值后的x和y坐标值为:
其中,sin[(1-Fk)Ω2]/sinΩ2为xy平面内融合时参考状态i的权重,sin[FkΩ2]/sinΩ2为xy平面内融合时参考状态k的权重;
接着,计算pij和pkj在z轴上的融合插值,z轴上的融合插值后的z坐标值为:
Rjz=(1-Fk)*zij+Fk*zkj
其中,(1-Fk)为z轴融合时参考状态i的权重,Fk为z轴融合时参考状态k的权重;
则pij和pkj在相应圆柱坐标系下的融合插值后的坐标为(atan2(Rjy,Rjx),Rjz)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510081189.6A CN104658026B (zh) | 2015-02-15 | 2015-02-15 | 一种基于极坐标系的三维动画融合变形方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510081189.6A CN104658026B (zh) | 2015-02-15 | 2015-02-15 | 一种基于极坐标系的三维动画融合变形方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104658026A CN104658026A (zh) | 2015-05-27 |
CN104658026B true CN104658026B (zh) | 2018-01-19 |
Family
ID=53249102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510081189.6A Active CN104658026B (zh) | 2015-02-15 | 2015-02-15 | 一种基于极坐标系的三维动画融合变形方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104658026B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105260610B (zh) * | 2015-10-26 | 2018-01-23 | 中国民用航空总局第二研究所 | 一种多探测器坐标系转化及误差纠正方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894392A (zh) * | 2010-06-28 | 2010-11-24 | 北京理工大学 | 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法 |
CN103065348A (zh) * | 2012-12-27 | 2013-04-24 | 江苏太奇通软件有限公司 | 基于骨骼动作库的二维动画自动生成方法 |
CN103514619A (zh) * | 2012-06-27 | 2014-01-15 | 甲尚股份有限公司 | 二维角色表现三维动作的系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NZ505513A (en) * | 2000-06-30 | 2002-05-31 | Marc Dawson | Anaglyphic 3-D colour imaging with selective colour filtering |
-
2015
- 2015-02-15 CN CN201510081189.6A patent/CN104658026B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894392A (zh) * | 2010-06-28 | 2010-11-24 | 北京理工大学 | 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法 |
CN103514619A (zh) * | 2012-06-27 | 2014-01-15 | 甲尚股份有限公司 | 二维角色表现三维动作的系统及方法 |
CN103065348A (zh) * | 2012-12-27 | 2013-04-24 | 江苏太奇通软件有限公司 | 基于骨骼动作库的二维动画自动生成方法 |
Non-Patent Citations (3)
Title |
---|
"一种具有逼真效果的虚拟人动画生成方法";雷涛等;《计算机应用研究》;20121031;第29卷(第10期);2983-2986 * |
"人脸器官拼接融合及其在人脸动画中的应用";倪奎;《中国优秀硕士学位论文全文数据库信息科技辑》;20100715(第07期);I138-862 * |
"基于GPU的球面深度图实时绘制";朱鉴等;《计算机学报》;20090228;第32卷(第2期);231-240 * |
Also Published As
Publication number | Publication date |
---|---|
CN104658026A (zh) | 2015-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11600013B2 (en) | Facial features tracker with advanced training for natural rendering of human faces in real-time | |
CN101339606B (zh) | 一种人脸关键器官外轮廓特征点定位与跟踪的方法及装置 | |
US10147219B2 (en) | Determining control values of an animation model using performance capture | |
US7088367B2 (en) | Methods and system for general skinning via hardware accelerators | |
CN107363813A (zh) | 一种基于可穿戴设备的桌面工业机器人示教系统和方法 | |
CA3176920A1 (en) | Fast and deep facial deformations | |
CN107145224B (zh) | 基于三维球面泰勒展开的人眼视线跟踪方法和装置 | |
KR20120059994A (ko) | 표정 제어점을 이용한 아바타 제어 장치 및 방법 | |
CN102376100A (zh) | 基于单张照片的人脸动画方法 | |
CN107791248B (zh) | 基于不满足Pieper准则的六自由度串联机器人的控制方法 | |
Jiang et al. | Transferring and fitting fixed-sized garments onto bodies of various dimensions and postures | |
WO2020185357A1 (en) | Motion transfer of highly dimensional movements to lower dimensional robot movements | |
CN101567093A (zh) | 一种三维手势模型的初始化方法 | |
CN112785668A (zh) | 一种动漫三维角色动作轨迹融合系统 | |
CN104658026B (zh) | 一种基于极坐标系的三维动画融合变形方法 | |
Cetinaslan et al. | Sketch-Based Controllers for Blendshape Facial Animation. | |
KR20170016901A (ko) | 표정 제어점을 이용한 아바타 제어 장치 및 방법 | |
CN113326751B (zh) | 一种手部3d关键点的标注方法 | |
CN104574475B (zh) | 一种基于次级控制器的精细动画制作方法 | |
CN111353941A (zh) | 一种空间坐标转换方法 | |
CN113112586B (zh) | 基于先验模型的实时人体三维重建方法 | |
Dang et al. | Imitation learning-based algorithm for drone cinematography system | |
CN115908651A (zh) | 一种三维人体模型与骨架的同步更新方法及电子设备 | |
CN104899930B (zh) | 一种基于褶皱基线的三维褶皱生成方法 | |
Huang et al. | Planning motions for virtual demonstrators |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20160513 Address after: 100084, No. 8, building No. 1, Zhongguancun East Road, Haidian District, Beijing, CG05-101 Applicant after: Beijing spring film technology Co., Ltd. Address before: 100083 No. 95 East Zhongguancun Road, Beijing, Haidian District Applicant before: Beijing section skill has appearance science and technology limited Company |
|
GR01 | Patent grant | ||
GR01 | Patent grant |