CN101807290B - 二维卡通角色形变方法 - Google Patents

二维卡通角色形变方法 Download PDF

Info

Publication number
CN101807290B
CN101807290B CN2010101331573A CN201010133157A CN101807290B CN 101807290 B CN101807290 B CN 101807290B CN 2010101331573 A CN2010101331573 A CN 2010101331573A CN 201010133157 A CN201010133157 A CN 201010133157A CN 101807290 B CN101807290 B CN 101807290B
Authority
CN
China
Prior art keywords
dough sheet
matrix
formula
fitted
adaptive
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.)
Expired - Fee Related
Application number
CN2010101331573A
Other languages
English (en)
Other versions
CN101807290A (zh
Inventor
肖俊
梁璋
庄越挺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN2010101331573A priority Critical patent/CN101807290B/zh
Publication of CN101807290A publication Critical patent/CN101807290A/zh
Application granted granted Critical
Publication of CN101807290B publication Critical patent/CN101807290B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种二维卡通角色形变方法。包括如下步骤:1)首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合;2)基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合;3)基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获取总差异最小的目标面片集合。本发明通过将面片变形过程分割为三阶段二次闭包的计算过程,提高了二维卡通角色变形的准确性和效率,避免了传统方法的低效率和不精确,实现了人体角色动画生成过程中对于二维卡通角色变形的精度和效率要求。

Description

二维卡通角色形变方法
技术领域
本发明涉及计算机动画和计算机图形学的综合领域,尤其涉及一种二维卡通角色形变方法。
背景技术
随着计算机动画和计算机图形学在工业和娱乐领域内的大量应用,基于三角形面片网格的二维卡通角色形变方法成为了一个重要的研究热点。尽管目前关于这个技术的研究还是处于初级的阶段,但是已经有很多比较有效的方法。
目前的二维形变方法主要分为了两类:一种是通过变形目标形状所嵌套的空间来获得;一种是将形状的结构加以考虑来进行变形。1996年在会议SIGGRAPH上发表的论文《Free-form Deformations with Lattices of ArbitraryTopology》和2000年在会议SIGGRAPH上发表的论文《Pose Space Deformations:A Unified Approach to Shape Interpolation and Skeleton-driven Deformation》属于第一类。这两篇论文利用了骨架、自由变形和其他的空间扭曲方法来完成变形的工作:在后一篇论文中,利用骨架的辅助使得在形状中的每一个点,都可以有一个由骨头所定义的参考系来与之关联;在前一篇论文中,对于形状中每一个点的处理方法是通过和自由变形网格中的闭包区域关联来获得的。但是这一类方法的缺点是这类方法更多的是针对于形状的环绕空间的刚性建模而不是形状本身,因为导致了变形效果的剧烈失真。
第二类方法包括了基于物理的各种方式。相对于第一类方法,第二类方法更容易实施,但是可能会收敛的很慢,并且需要手工针对应用来调整各种输入参数。1999年在会议SIGGRAPH上发表的论文《ArtDefo Accurate Real TimeDeformable Objects》,实现了一种更为物理上精确的有限元方法,但是这种方法仅仅只能处理如脸部微小形变的应用,而无法处理如肢体弯曲这样大的形变。2006年在期刊TOG上发表的论文《Image deformation using moving leastsquares》,公开了一种基于移动最小正方形的变形方法,利用仿射、相似和刚性变形模型来完成目标。2006年在期刊IJCG上发表的论文《2D shape deformationusing nonlinear least squares optimization》,公开了一种基于非线性最小正方形优化模型的二维形状变形方法。该方法定义了非二次型的能量函数,通过迭代的方式来保持形状边缘的特性。综上所述,这些方法依然存在着效率低、变形失真等各种问题。
发明内容
本发明的目的是克服目现有技术不足,提供一种二维卡通角色形变方法。
二维卡通角色形变方法包括如下步骤:
1)首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合;
2)基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合;
3)基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获取总差异最小的目标面片集合。
所述的首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合的方法步骤:
(a)输入已经完成网格化的二维卡通角色三角形面片集合,表示形式为{m1,m2,...,mn},其中变量mi为面片集合中的第i个三角形面片,n为集合中面片的个数;每一个面片mi由三点{v0,v1,v2}构成其三角形的三个顶点,vi表示对应i点的二维坐标;
对每一个面片mi的顶点集合{v0,v1,v2},其对应的过渡面片中的顶点集合为{v0’,v1’,v2’}。通过权值组合{wx,wy}来简化三角形的表示形式,获得原面片中v2的表示形式:
v 2 = v 0 + w x v 0 v 1 → + w y R quar v 0 v 1 → - - - 1
其中矩阵Rquar表示逆时针旋转90度,
Figure GSA00000064516800022
表示以v0和v1为端点的向量;在已有的v0’和v1’和{wx,wy}基础上,可以计算针对于v2’的假定值v2 desired
v 2 desired = v 0 ′ + w x v 0 ′ v 1 ′ → + w y R quar v 0 ′ v 1 ′ → - - - 2
可以通过公式1和2所定义的方式计算针对v2的差异:
E v 2 = | | v 2 desired - v 2 ′ | | 2 - - - 3
其中||·||表示欧氏距离;相应的,也可以获得v0 desired和v1 desired,由此可以获得针对于面片mi的单个三角形差异:
E { v 0 , v 1 , v 2 } = Σ i = 1,2,3 | | v i desired - v i ′ | | 2 - - - 4
由公式4可以获得总差异的矩阵表示:
E1=v′TGv′                               5
其中矩阵G为中间矩阵;对于过渡面片集合的顶点集合矩阵v’,将其划分成两部分:矩阵vu和矩阵vq。vu对应着不受驱动信息约束的非驱动点,vq对应着受驱动点信息约束的驱动点;记v’T=(vu T,vq T),对公式5计算vu的一阶导数取极点得到:
∂ E 1 ∂ v u = ( G 00 + G 00 T ) v u + ( G 01 + G 10 T ) v q = 0 - - - 6
将公式6简化为如下形式:
G′vu+Bvq=0                                      7
根据公式7可以从已知量G’,B和驱动矩阵vq获得非驱动点矩阵vu
vu=-G′-1Bvq                                     8
由公式8获得vu,进而获得完整的过渡面片集合的顶点集合矩阵v’。
所述的基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合的方法步骤:
(b)经过步骤(a)获得的过渡面片集合中的每一个面片mi的对应顶点集合{v0’,v1’,v2’},其对应的适配面片集合中的面片对应顶点集合为{v0 fitted,v1 fitted,v2 fitted};那么针对每一个面片的差异公式为:
E f { v 0 fitted , v 1 fitted , v 2 fitted } = Σ i = 1,2,3 | | v i fitted - v i ′ | | 2 - - - 9
其中||·||表示欧氏距离;由步骤(a)中的权重组合{wx,wy}可以获得v2 fitted由v0 fitted和v1 fitted表达的公式为:
v 2 fitted = v 0 fitted + w x v 0 fitted v 1 fitted → + w y R quar v 0 fitted v 1 fitted → - - - 10
其中
Figure GSA00000064516800034
表示以v0 fitted和v1 fitted为端点的向量;由公式10的表示可以推出公式9的函数可以由v0 fitted和v1 fitted构成的参考坐标表示,可获得矩阵w表示为(v0x fitted,v0y fitted,v1x fitted,v1y fitted)T,针对公式9所示的差异对于矩阵w求导,可以获得使得每个面片差异最小的适配面片的矩阵表示为:
∂ E f ∂ w = Fw + C = 0 - - - 11
其中的矩阵F由原始面片的定义所确定,矩阵C由步骤(a)所确定;由公式11可以获得矩阵w的值由矩阵F和C表示为:
w=-F-1C                                12
在公式12的基础上,根据公式10,可以获得面片mi对应的适配面片的顶点集合{v0 fitted,v1 fitted,v2 fitted}。
所述的基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获取总差异最小的目标面片集合的方法步骤:
(c)经过步骤(b)获得的适配面片集合中的每一个面片mi的对应顶点集合{v0 fitted,v1 fitted,v2 fitted},其对应的目标面片集合中的面片对应顶点集合为{v0”,v1”,v2”};那么针对面片mi对应三角形的三条矢量边的差异公式为:
E k { v 0 ′ ′ , v 1 ′ ′ , v 2 ′ ′ } = Σ ( i , j ) ∈ { ( 0,1 ) , ( 1,2 ) , ( 2,0 ) } | | v i ′ ′ v j ′ ′ → - v i fitted v j fitted → | | 2 - - - 13
公式13经过化简整理,所获得的结果经矩阵表示为:
Ek=v″T Hv″+fv″+c                                 14
其中矩阵H由原始面片的连通性决定与适配三角形无关,矩阵f和常量c由适配三角形决定。对于目标面片集合的顶点集合矩阵v”,将其划分成两部分:矩阵vu”和矩阵vq”。vu”对应着不受驱动信息约束的非驱动点,vq”对应着受驱动点信息约束的驱动点;记v”T=(vuT,vqT),对公式11计算一阶导数取极点得到:
∂ E k ∂ v u ′ ′ = ( H 00 + H 00 T ) v u ′ ′ + ( H 01 + H 10 T ) v q ′ ′ + f 0 = 0 - - - 15
公式15可以被简化成如下矩阵形式:
H′vu″+Dvq″+f0=0                                         16
其中矩阵H,D在卡通变形过程中都是固定的,而vq”和矩阵f0在卡通变形过程中是不断变化的;我们由公式16可以获得vu”为:
vu″=-H′-1(Dvq″+f0)                                      17
由公式17获得vu”,进而获得完整的目标面片集合的顶点集合矩阵v”,从而获得卡通二维角色变形的结果。
本发明通过将面片变形过程分割为三阶段二次闭包的计算过程,提高了二维卡通角色变形的准确性和效率,避免了传统方法的低效率和不精确,实现了人体角色动画生成过程中对于二维卡通角色变形的精度和效率要求。
附图说明
下面结合附图和具体实施例对本发明作进一步的说明。
图1为本发明所述的二维卡通角色及其网格图;
图2为本发明所述的二维卡通角色变形效果图之一。
图3为本发明所述的二维卡通角色变形效果图之二。
具体实施方式
二维卡通角色形变方法包括如下步骤:
1)首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合;
2)基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合;
3)基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获取总差异最小的目标面片集合。
所述的首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合的方法步骤:
(a)输入已经完成网格化的二维卡通角色三角形面片集合,表示形式为{m1,m2,...,mn},其中变量mi为面片集合中的第i个三角形面片,n为集合中面片的个数;每一个面片mi由三点{v0,v1,v2}构成其三角形的三个顶点,vi表示对应i点的二维坐标;
对每一个面片mi的顶点集合{v0,v1,v2},其对应的过渡面片中的顶点集合为{v0’,v1’,v2’}。通过权值组合{wx,wy}来简化三角形的表示形式,获得原面片中v2的表示形式:
v 2 = v 0 + w x v 0 v 1 → + w y R quar v 0 v 1 → - - - 1
其中矩阵Rquar表示逆时针旋转90度,
Figure GSA00000064516800052
表示以v0和v1为端点的向量;在已有的v0’和v1’和{wx,wy}基础上,可以计算针对于v2’的假定值v2 desired
v 2 desired = v 0 ′ + w x v 0 ′ v 1 ′ → + w y R quar v 0 ′ v 1 ′ → - - - 2
可以通过公式1和2所定义的方式计算针对v2的差异:
E v 2 = | | v 2 desired - v 2 ′ | | 2 - - - 3
其中||·||表示欧氏距离;相应的,也可以获得v0 desired和v1 desired,由此可以获得针对于面片mi的单个三角形差异:
E { v 0 , v 1 , v 2 } = Σ i = 1,2,3 | | v i desired - v i ′ | | 2 - - - 4
由公式4可以获得总差异的矩阵表示:
E1=v′TGv′                                                     5
其中矩阵G为中间矩阵;对于过渡面片集合的顶点集合矩阵v’,将其划分成两部分:矩阵vu和矩阵vq。vu对应着不受驱动信息约束的非驱动点,vq对应着受驱动点信息约束的驱动点;记v’T=(vu T,vq T),对公式5计算vu的一阶导数取极点得到:
∂ E 1 ∂ v u = ( G 00 + G 00 T ) v u + ( G 01 + G 10 T ) v q = 0 - - - 6
将公式6简化为如下形式:
G′vu+Bvq=0                                      7
根据公式7可以从已知量G’,B和驱动矩阵vq获得非驱动点矩阵vu
vu=-G′-1Bvq                                     8
由公式8获得vu,进而获得完整的过渡面片集合的顶点集合矩阵v’。
所述的基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合的方法步骤:
(b)经过步骤(a)获得的过渡面片集合中的每一个面片mi的对应顶点集合{v0’,v1’,v2’},其对应的适配面片集合中的面片对应顶点集合为{v0 fitted,v1 fitted,v2 fitted};那么针对每一个面片的差异公式为:
E f { v 0 fitted , v 1 fitted , v 2 fitted } = Σ i = 1,2,3 | | v i fitted - v i ′ | | 2 - - - 9
其中||·||表示欧氏距离;由步骤(a)中的权重组合{wx,wy}可以获得v2 fitted由v0 fitted和v1 fitted表达的公式为:
v 2 fitted = v 0 fitted + w x v 0 fitted v 1 fitted → + w y R quar v 0 fitted v 1 fitted → - - - 10
其中
Figure GSA00000064516800064
表示以v0 fitted和v1 fitted为端点的向量;由公式10的表示可以推出公式9的函数可以由v0 fitted和v1 fitted构成的参考坐标表示,可获得矩阵w表示为(v0x fitted,v0y fitted,v1x fitted,v1y fitted)T,针对公式9所示的差异对于矩阵w求导,可以获得使得每个面片差异最小的适配面片的矩阵表示为:
∂ E f ∂ w = Fw + C = 0 - - - 11
其中的矩阵F由原始面片的定义所确定,矩阵C由步骤(a)所确定;由公式11可以获得矩阵w的值由矩阵F和C表示为:
w=-F-1C                                            12
在公式12的基础上,根据公式10,可以获得面片mi对应的适配面片的顶点集合{v0 fitted,v1 fitted,v2 fitted}。
所述的基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获取总差异最小的目标面片集合的方法步骤:
(c)经过步骤(b)获得的适配面片集合中的每一个面片mi的对应顶点集合{v0 fitted,v1 fitted,v2 fitted},其对应的目标面片集合中的面片对应顶点集合为{v0”,v1”,v2”};那么针对面片mi对应三角形的三条矢量边的差异公式为:
E k { v 0 ′ ′ , v 1 ′ ′ , v 2 ′ ′ } = Σ ( i , j ) ∈ { ( 0,1 ) , ( 1,2 ) , ( 2,0 ) } | | v i ′ ′ v j ′ ′ → - v i fitted v j fitted → | | 2 - - - 13
公式13经过化简整理,所获得的结果经矩阵表示为:
Ek=v″THv″+fv″+c                                        14
其中矩阵H由原始面片的连通性决定与适配三角形无关,矩阵f和常量c由适配三角形决定。对于目标面片集合的顶点集合矩阵v”,将其划分成两部分:矩阵vu”和矩阵vq”。vu”对应着不受驱动信息约束的非驱动点,vq”对应着受驱动点信息约束的驱动点;记v”T=(vuT,vqT),对公式11计算一阶导数取极点得到:
∂ E k ∂ v u ′ ′ = ( H 00 + H 00 T ) v u ′ ′ + ( H 01 + H 10 T ) v q ′ ′ + f 0 = 0 - - - 15
公式15可以被简化成如下矩阵形式:
H′vu″+Dvq″+f0=0                                        16
其中矩阵H,D在卡通变形过程中都是固定的,而vq”和矩阵f0在卡通变形过程中是不断变化的;我们由公式16可以获得vu”为:
vu″=-H′-1(Dvq″+f0)                                     17
由公式17获得vu”,进而获得完整的目标面片集合的顶点集合矩阵v”,从而获得卡通二维角色变形的结果。
实施例
(1)输入已经完成网格化的二维卡通角色三角形面片集合,本实施例中选取中国古典二维卡通人物孙悟空作为例子如图1所示,表示形式为{m1,m2,...,mn},其中变量mi为面片集合中的第i个三角形面片,n为集合中面片的个数,在本实施例中n为106;每一个面片mi由三点{v0,v1,v2}构成其三角形的三个顶点,vi表示对应i点的二维坐标;
对每一个面片mi的顶点集合{v0,v1,v2},其对应的过渡面片中的顶点集合为{v0’,v1’,v2’}。通过权值组合{wx,wy}来简化三角形的表示形式,获得原面片中v2的表示形式:
v 2 = v 0 + w x v 0 v 1 → + w y R quar v 0 v 1 → - - - 1
其中矩阵Rquar表示逆时针旋转90度,
Figure GSA00000064516800082
表示以v0和v1为端点的向量;在已有的v0’和v1’和{wx,wy}基础上,可以计算针对于v2’的假定值v2 desired
v 2 desired = v 0 ′ + w x v 0 ′ v 1 ′ → + w y R quar v 0 ′ v 1 ′ → - - - 2
可以通过公式1和2所定义的方式计算针对v2的差异:
E v 2 = | | v 2 desired - v 2 ′ | | 2 - - - 3
其中||·||表示欧氏距离;相应的,也可以获得v0 desired和v1 desired,由此可以获得针对于面片mi的单个三角形差异:
E { v 0 , v 1 , v 2 } = Σ i = 1,2,3 | | v i desired - v i ′ | | 2 - - - 4
由公式4可以获得总差异的矩阵表示:
E1=v′TGv′                                             5
其中矩阵G为中间矩阵;对于过渡面片集合的顶点集合矩阵v’,将其划分成两部分:矩阵vu和矩阵vq。vu对应着不受驱动信息约束的非驱动点,vq对应着受驱动点信息约束的驱动点;记v’T=(vu T,vq T),对公式5计算vu的一阶导数取极点得到:
∂ E 1 ∂ v u = ( G 00 + G 00 T ) v u + ( G 01 + G 10 T ) v q = 0 - - - 6
将公式6简化为如下形式:
G′vu+Bvq=0                                             7
根据公式7可以从已知量G’,B和驱动矩阵vq获得非驱动点矩阵vu
vu=-G′-1Bvq                                            8
由公式8获得vu,进而获得完整的过渡面片集合的顶点集合矩阵v’。这里的矩阵G’是2m*2m的稀疏对称矩阵,其中m为非驱动点的个数,在本实施例中m为89。
(2)经过步骤(a)获得的过渡面片集合中的每一个面片mi的对应顶点集合{v0’,v1’,v2’},其对应的适配面片集合中的面片对应顶点集合为{v0 fitted,v1 fitted,v2 fitted};那么针对每一个面片的差异公式为:
E f { v 0 fitted , v 1 fitted , v 2 fitted } = Σ i = 1,2,3 | | v i fitted - v i ′ | | 2 - - - 9
其中||·||表示欧氏距离;由步骤(a)中的权重组合{wx,wy}可以获得v2 fitted由v0 fitted和v1 fitted表达的公式为:
v 2 fitted = v 0 fitted + w x v 0 fitted v 1 fitted → + w y R quar v 0 fitted v 1 fitted → - - - 10
其中
Figure GSA00000064516800092
表示以v0 fitted和v1 fitted为端点的向量;由公式10的表示可以推出公式9的函数可以由v0 fitted和v1 fitted构成的参考坐标表示,可获得矩阵w表示为(v0x fitted,v0y fitted,v1x fitted,v1y fitted)T,针对公式9所示的差异对于矩阵w求导,可以获得使得每个面片差异最小的适配面片的矩阵表示为:
∂ E f ∂ w = Fw + C = 0 - - - 11
其中的矩阵F由原始面片的定义所确定,矩阵C由步骤(a)所确定;由公式11可以获得矩阵w的值由矩阵F和C表示为:
w=-F-1C                                                12
在公式12的基础上,根据公式10,可以获得面片mi对应的适配面片的顶点集合{v0 fitted,v1 fitted,v2 fitted}。
(3)经过步骤(b)获得的适配面片集合中的每一个面片mi的对应顶点集合{v0 fitted,v1 fitted,v2 fitted},其对应的目标面片集合中的面片对应顶点集合为{v0”,v1”,v2”};那么针对面片mi对应三角形的三条矢量边的差异公式为:
E k { v 0 ′ ′ , v 1 ′ ′ , v 2 ′ ′ } = Σ ( i , j ) ∈ { ( 0,1 ) , ( 1,2 ) , ( 2,0 ) } | | v i ′ ′ v j ′ ′ → - v i fitted v j fitted → | | 2 - - - 13
公式13经过化简整理,所获得的结果经矩阵表示为:
Ek=v″THv″+fv″+c                                     14
其中矩阵H由原始面片的连通性决定与适配三角形无关,矩阵f和常量c由适配三角形决定。对于目标面片集合的顶点集合矩阵v”,将其划分成两部分:矩阵vu”和矩阵vq”。vu”对应着不受驱动信息约束的非驱动点,vq”对应着受驱动点信息约束的驱动点;记v”T=(vuT,vqT),对公式11计算一阶导数取极点得到:
∂ E k ∂ v u ′ ′ = ( H 00 + H 00 T ) v u ′ ′ + ( H 01 + H 10 T ) v q ′ ′ + f 0 = 0 - - - 15
公式15可以被简化成如下矩阵形式:
H′vu″+Dvq″+f0=0                                16
其中矩阵H’,D在卡通变形过程中都是固定的,而vq”和矩阵f0在卡通变形过程中是不断变化的,这里的矩阵H’是m*m的矩阵,其中m为89;我们由公式16可以获得vu”为:
vu″=-H′-1(Dvq″+f0)                                  17
由公式17获得vu”,进而获得完整的目标面片集合的顶点集合矩阵v”,通过和每一个面片对应的纹理信息进行匹配映射,从而获得卡通二维角色变形的结果如图2,3所示。

Claims (1)

1.一种二维卡通角色形变方法,其特征在于包括如下步骤:
1)首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合;
2)基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合;
3)基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获取总差异最小的目标面片集合;
所述的首先输入已经完成网格化的二维卡通角色三角形面片集合,根据驱动点的目标坐标,通过缩放获取总差异最小的过渡面片集合的方法步骤:
(a)输入已经完成网格化的二维卡通角色三角形面片集合,表示形式为{m1,m2,...,mn},其中变量mi为面片集合中的第i个三角形面片,n为集合中面片的个数;每一个面片mi由三点{v1,v1,v2}构成其三角形的三个顶点,vi表示对应i点的二维坐标;
对每一个面片mi的顶点集合{v0,v1,v2},其对应的过渡面片中的顶点集合为{v0’,v1’,v2’},通过权值组合{wx,wy}来简化三角形的表示形式,获得原面片中v2的表示形式:
其中矩阵Rquar表示逆时针旋转90度, 
Figure FSB00000598350600012
表示以v0和v1为端点的向量;在已有的v0’和v1’和{wx,wy}基础上,计算针对于v2’的假定值 
Figure FSB00000598350600013
Figure FSB00000598350600014
通过公式1和2所定义的方式计算针对v2的差异:
Figure FSB00000598350600015
其中||.||表示欧氏距离;相应的,也获得 
Figure FSB00000598350600016
和 
Figure FSB00000598350600017
由此获得针对于面片mi的单个三角形差异:
Figure FSB00000598350600018
由公式4获得总差异的矩阵表示:
E1=v′T Gv′                                        5
其中矩阵G为中间矩阵;对于过渡面片集合的顶点集合矩阵v’将其划分成两部分:矩阵vu和矩阵vq,vu对应着不受驱动信息约束的非驱动点,vq对应 着受驱动点信息约束的驱动点;记v’T=(vu T,vq T),对公式5计算vu的一阶导数取极点得到:
Figure FSB00000598350600021
将公式6简化为如下形式:
G′vu+Bvq=0                                        7
根据公式7从已知量G’,B和驱动矩阵vq获得非驱动点矩阵vu
vu=-G′-1Bvq                                       8
由公式8获得vu,进而获得完整的过渡面片集合的顶点集合矩阵v’;
所述的基于步骤1)的过渡面片集合,将原面片的三角形面片与之一一对应,并通过旋转和平移获得各个面片差异最小的适配面片集合的方法步骤:
(b)经过步骤(a)获得的过渡面片集合中的每一个面片mi的对应顶点集合{v0’,v1’,v2’},其对应的适配面片集合中的面片对应顶点集合为 
Figure FSB00000598350600022
那么针对每一个面片的差异公式为:
其中||.||表示欧氏距离;由步骤(a)中的权重组合{wx,wy}获得 
Figure FSB00000598350600024
由 
Figure FSB00000598350600025
和 
Figure FSB00000598350600026
表达的公式为:
其中 
Figure FSB00000598350600028
表示以 和 
Figure FSB000005983506000210
为端点的向量;由公式10的表示推出公式9的函数由 
Figure FSB000005983506000211
和 
Figure FSB000005983506000212
构成的参考坐标表示,可获得矩阵w表示为 针对公式9所示的差异对于矩阵w求导,获得使得每个面片差异最小的适配面片的矩阵表示为:
Figure FSB000005983506000214
其中的矩阵F由原始面片的定义所确定,矩阵C由步骤(a)所确定;由公式11获得矩阵w的值由矩阵F和C表示为:
w=-F-1C                                            12
在公式12的基础上,根据公式10,获得面片mi对应的适配面片的顶点集合
所述的基于步骤2)的适配面片集合,通过对每个面片进行三边不等值缩放获 取总差异最小的目标面片集合的方法步骤:
(c)经过步骤(b)获得的适配面片集合中的每一个面片mi的对应顶点集合 
Figure FSB00000598350600031
其对应的目标面片集合中的面片对应顶点集合为{v0”,v1”,v2”};那么针对面片mi对应三角形的三条矢量边的差异公式为:
公式13经过化简整理,所获得的结果经矩阵表示为:
Ek=v″THv″+fv″+c                                    14
其中矩阵H由原始面片的连通性决定与适配三角形无关,矩阵f和常量c由适配三角形决定,对于目标面片集合的顶点集合矩阵v”,将其划分成两部分:矩阵vu”和矩阵vq”,vu”对应着不受驱动信息约束的非驱动点,vq”对应着受驱动点信息约束的驱动点;记v”T=(vuT,vqT),对公式11计算一阶导数取极点得到:
Figure FSB00000598350600033
公式15被简化成如下矩阵形式:
H′vu″+Dvq″+f0=0                                    16
其中矩阵H,D在卡通变形过程中都是固定的,而vq”和矩阵f0在卡通变形过程中是不断变化的;我们由公式16获得vu”为:
vu″=-H′-1(Dvq″+f0)                                 17
由公式17获得vu”,进而获得完整的目标面片集合的顶点集合矩阵v”,从而获得卡通二维角色变形的结果。 
CN2010101331573A 2010-03-26 2010-03-26 二维卡通角色形变方法 Expired - Fee Related CN101807290B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101331573A CN101807290B (zh) 2010-03-26 2010-03-26 二维卡通角色形变方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101331573A CN101807290B (zh) 2010-03-26 2010-03-26 二维卡通角色形变方法

Publications (2)

Publication Number Publication Date
CN101807290A CN101807290A (zh) 2010-08-18
CN101807290B true CN101807290B (zh) 2011-12-07

Family

ID=42609072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101331573A Expired - Fee Related CN101807290B (zh) 2010-03-26 2010-03-26 二维卡通角色形变方法

Country Status (1)

Country Link
CN (1) CN101807290B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102903138B (zh) * 2012-08-30 2015-10-28 浙江工商大学 一种考虑形状的二维数字角色骨架操作方法
CN106570914B (zh) * 2016-11-15 2020-01-14 华南理工大学 一种移植二维图像中角色的姿态的方法
CN109285160B (zh) * 2018-08-29 2022-08-02 成都品果科技有限公司 一种抠像方法与系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100545871C (zh) * 2006-05-12 2009-09-30 中国科学院自动化研究所 一种直接传递三维模型姿态的方法
CN101587595A (zh) * 2009-06-08 2009-11-25 浙江大学 一种基于控制网格的变形方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523024B2 (en) * 2002-05-17 2009-04-21 Schlumberger Technology Corporation Modeling geologic objects in faulted formations
US7006108B2 (en) * 2003-03-25 2006-02-28 Mitsubishi Electric Research Laboratories, Inc. Method for generating a composite glyph and rendering a region of the composite glyph in image-order
CN100583158C (zh) * 2008-01-14 2010-01-20 浙江大学 基于视频提取和重用的卡通动画制作方法
CN101329768B (zh) * 2008-07-29 2010-07-21 浙江大学 基于背景视图合成卡通动画的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100545871C (zh) * 2006-05-12 2009-09-30 中国科学院自动化研究所 一种直接传递三维模型姿态的方法
CN101587595A (zh) * 2009-06-08 2009-11-25 浙江大学 一种基于控制网格的变形方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘国荣,林金花,刘晓东,赵飞蓉.一种基于三维曲面变形的自由变形算法.《微电子学与计算机》.2008,第25卷(第7期),160-165. *
黄艳,俞宏峰,耿卫东,潘云鹤.卡通动画的计算机辅助制作.《工程图学学报》.2001,308-313. *

Also Published As

Publication number Publication date
CN101807290A (zh) 2010-08-18

Similar Documents

Publication Publication Date Title
US10275922B2 (en) Method for skinning technology based on extended position based dynamics and for weight retargeting in character animation
CN102254343B (zh) 一种基于凸包与obb的三维网格模型骨架提取方法
CN102792302B (zh) 用于形成表面处理数据的方法和装置
Steinemann et al. Fast arbitrary splitting of deforming objects
CN106504329B (zh) 一种基于牙体长轴的质点弹簧模型的牙龈变形仿真方法
CN101281552A (zh) 双反射面天线系统的机电综合网格划分方法
CN107578472A (zh) 三维表面三角网络模型的角度优化方法及装置
CN105045496A (zh) 一种基于关节点变换的手势交互方法
CN101807290B (zh) 二维卡通角色形变方法
CN103049932B (zh) 一种基于径向基函数的植物三维形态虚拟建模方法
CN107944113A (zh) 一种计算三维高速平动目标电磁散射场的方法
CN102163321A (zh) 基于格子波尔兹曼模型的图像分割方法
CN106960469B (zh) 一种快速分割三角形的光滑自由变形方法
CN117173380A (zh) 骨骼驱动四面体控制网格的多约束三维网格模型变形方法
Brock et al. Adjoint-based design optimization using CAD parameterization through CAPRI
Liu et al. Automatic sizing functions for unstructured mesh generation revisited
CN107424122A (zh) 一种大位移下形变辅助的图像插补方法
CN105321205A (zh) 一种基于稀疏关键点的参数化人体模型重建方法
CN110426688A (zh) 一种基于地形背景目标的sar回波模拟方法
CN102930586A (zh) 一种基于线性旋转不变微分坐标的可交互几何变形方法
CN104156502B (zh) 一种基于位置的衣物褶皱几何生成方法
Marcon et al. A semi-structured approach to curvilinear mesh generation around streamlined bodies
Huang et al. Incorporating improved refinement techniques for a grid-based geometrically-adaptive hexahedral mesh generation algorithm
CN105844713A (zh) 一种基于流形的参数曲面重构方法
CN104143204A (zh) 考虑拓扑结构的移动最小二乘二维角色变形方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111207

Termination date: 20180326