CN101147172A - 图像处理系统以及图像处理程序 - Google Patents
图像处理系统以及图像处理程序 Download PDFInfo
- Publication number
- CN101147172A CN101147172A CNA2006800094661A CN200680009466A CN101147172A CN 101147172 A CN101147172 A CN 101147172A CN A2006800094661 A CNA2006800094661 A CN A2006800094661A CN 200680009466 A CN200680009466 A CN 200680009466A CN 101147172 A CN101147172 A CN 101147172A
- Authority
- CN
- China
- Prior art keywords
- mesh
- data
- step2
- step1
- triangular
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 116
- 230000008602 contraction Effects 0.000 claims abstract description 9
- 238000013519 translation Methods 0.000 claims abstract description 8
- 239000011159 matrix material Substances 0.000 claims description 68
- 239000013598 vector Substances 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 24
- 230000009467 reduction Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 230000003993 interaction Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241000224489 Amoeba Species 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/18—Image warping, e.g. rearranging pixels individually
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
Abstract
能够以非常短的处理时间自然地变形对象。图像处理系统(10)具备:根据包含三角形网格上的应该固定点以及该移动的点的、表示多个句柄位置的信息,对原始形状的三角形网格,在允许其旋转以及放大/缩小的同时,生成表现了原始的三角形网格和处理后的中间的三角形网格之间的差异的2次误差测度变成最小那样的、中间的三角形网格数据的第1网格生成部(36);对于中间的三角形网格,在允许其旋转以及平行移动的同时,但不允许不均匀畸变、伸缩以及放大/缩小的状态下,生成表现了中间的三角形网格和最终的三角形网格之间的差异的误差测度变成最小那样的、最终的三角形网格的数据的第2网格生成单元(38)。
Description
技术领域
本发明涉及能够自如地变形所显示的对象的图像处理装置以及图像处理程序。
背景技术
提出了根据用户的指示来操作图像中的2维的对象的例如用于移动、旋转、伸缩、弯曲的技术。以往,为了进行这种操作,用三角形的网格隔开图像中的对象,通过使该网格变形来使对象变形。
作为对形状进行操作的方法,已知有利用预先定义的轮廓的方法。用户如果对轮廓的形状进行操作,则图像处理系统按照所操作的轮廓的形状进行整体形状的调整。但是,轮廓形状的定义并不是简单的处理,存在对于变形虫那样没有明确的轮廓构造的对象无效的问题。
作为其他公知的方法,已知有自由变形(Free FormDeformation:FFD)。用户把空间分割成许多域,并且通过移动定义各域的控制点来对域进行操作。但是,FFD的设定麻烦,存在用户需要手动操作多个顶点的问题。
非专利文献1:“拉普拉斯算符·表面编辑(LaplacianSurfaceEditing)”Orga Solkine著,Eurographics/ACM SIGGRAPHSymposium,179-188,[on line],2004年7月9日[平成17年2月23日检索],因特网,<URL:http://www-sop.inria.fr/geometrica/events/sgp2004/program.html>
在非专利文献1中提出这样的方法:使构成2维对象的各个三角形网格进行放大/缩小、旋转,生成新的三角形网格,显示基于新的三角形网格的2维对象。
这种情况下,希望对象的变形自然,并且其处理时间短那样的系统和程序。
发明内容
本发明的目的在于提供一种对象能够自然变形,并且其处理时间也非常短的图像处理系统以及图像处理程序。
本发明提供不使用轮廓和FFD地对形状进行操作的方法。用户作为句柄在对象的内侧设定多个点,使这些句柄移动到所希望的位置。
接着,图像处理系统在使局部的形状畸变最小化的同时,按照所给予的句柄的位置使全体的形状变形。根据本发明的方法,能够自然地变形对象的形状,并且和使以往的嵌入了对象的空间自身扭曲的手法相比,处理结果、即对象的运动变成接近在实际的世界中的对象的行为。
在本发明中,为了把畸变设为最小,为了发现形状的构成,基本上是设置2个步骤的封闭(不依赖重复运算按顺序计算得出结果)的算法。在以往的方法中,使用物理基础的模拟或者非线性的最佳化。但是,在和用户之间的对话的操作(相互作用)中,这些方法的速度低。
关键之处在于:适当地设计二次的误差测度,把最小化的问题作为线性的联立方式公式化。通过在相互作用的开始解联立方程式,图像处理系统能够用单一的矩阵的乘法运算发现解。理想的是,希望具有处理某一形状的全部的属性那样的单一的二次的误差函数,但设计这种单一的误差函数是困难的。因而,在本发明中,把上述最小化的问题分成旋转方向的问题和大小的问题。由此,在本发明中,把问题分解为二个最小二乘法的最小化的问题,分别按顺序被解答。
更详细地说,本发明的目的通过具有以下特征的图像处理系统来实现,在具有存储着由构成应该变形的对象的三角形网格数据组成的原始形状数据的存储装置,其特征在于,具备:
第1网格生成单元,根据来自上述输入装置的、包含有在上述图像中的上述三角形网格中应该固定的点以及被移动的点的表示多个句柄位置的信息,从上述存储装置中读出上述原始形状数据,对于该原始形状数据表示的各个原始三角形网格,一边允许其旋转以及放大/缩小,一边生成表现了原始三角形网格和处理后的中间的三角形网格之间的差异的2次误差测度变成最小那样的、由中间的三角形网格的数据组成的中间的网格数据,然后存储在上述存储装置中;
第2网格生成单元,对于上述中间的网格数据表示的各个中间的三角形网格,在一边允许其旋转以及平行移动,一边不允许不均匀畸变、伸缩以及放大/缩小的状态下,生成表现了上述中间的三角形网格和最终的三角形网格之间的差异的误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并存储在上述存储装置中。
在优选的实施方式中,上述第2网格生成单元构成为:使上述原始形状数据表示的各个原始三角形网格旋转以及平行移动,生成使和中间的网格数据表示的对应的中间的三角形网格之间的2次误差测度最小化的、由所拟合的三角形网格的数据组成的拟合网格数据,并且存储在上述存储装置中,
生成上述拟合网格数据表示的三角形网格和对应的最终的三角形网格之间的示出表示三角形的边的矢量之差的2次误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并且存储在上述存储装置中。
此外,在另一优选的实施方式中,进一步具备图像生成单元,读出存储在上述存储装置中的原始形状数据、或者最终网格数据,生成包含基于已读出的数据的对象的图像。
在更优选的实施方式中,还具有当原始形状数据被存储在上述存储装置中时,进行以下(a)、(b)计算的配准单元:
(a)根据上述原始形状数据表示的各个原始三角形网格的顶点坐标,计算满足
Estep1{v}=vTGstep1v
的矩阵Gstep1,以及满足
Estep2{v}=vTGstep2V
的矩阵Gstep2,
其中,
Estep1表示用采用2n个变量Vox、voy、vlx、vly、...、vnx、vny的2次式表示的、在第1网格生成单元中的2次误差测度的函数,
Estep2表示用采用2n个变量Vox、voy、vlx、vly、...、vnx、vny的2次式表示的、由第2网格生成单元执行的表现了拟合网格数据表示的三角形网格以及最终的三角形网格的差异的2次误差测度的函数)
(b)计算满足
_Efitting{w}=Gfittingw+Bfitting=0
那样的矩阵Gfitting以及该Gfitting的逆矩阵Gfitting-1,
其中,
Efitting是表示在上述第2网格生成单元中的与上述原始形状数据表示的三角形网格和中间的三角形网格有关的2次误差测度的函数;
当用来自上述输入装置的信息在某一位置上配置、追加句柄,或者删除某一位置的句柄时,进行以下(c)、(d)计算的编译单元:
(c)对于上述Gstep1以及Gstep2,通过除去受句柄限制的顶点的分量,计算矩阵Gstep1’以及Gstep2’,
(d)计算上述矩阵Gstep1’以及Gstep2’的逆矩阵Gstep1’-1以及Gstep2’-1。
此外,在进一步优选的实施方式中,当利用来自上述输入装置的信息移动某一位置的句柄时,
上述第1网格生成单元构成为:
(e)伴随上述句柄的移动,使用在三角形网格中被限制的顶点的已被更新了的位置,计算矢量Bstep1,
其中,_Estep1{u}=Gstep1’+Bstep1=0
_Estep1{v}是Estep1{v}=vTGstep1v的偏微分,
(f)把上述矩阵Gstep1’-1和Bstep1相乘,生成包含与在三角形网格中的自由顶点有关的坐标的、中间的网格三角形的中间的网格数据,并且,
上述第2网格生成单元构成为:
(g)根据上述中间的网格数据计算上述矢量Bfitting,
(h)把上述矩阵Gfitting-1和矢量Bfitting相乘,生成上述被拟合的三角形的拟合网格数据,
(i)根据上述拟合网格数据,计算矢量Bstep2’,
其中,_Estep2{u}=Gstep2’u+Bstep2’=0
_Estep2{v}是Estep2{v}=vTGstep2v+Bstep2v的偏微分,
(j)把上述矩阵Gstep2’-1和Bstep2’相乘,生成最终的三角形网格的最终网格数据。
在某一实施方式中,上述应该变形的对象是用上述三角形网格构成的2维对象。或者,上述应该变形的对象可以是曲线。这种情况下,图像处理系统具有从表示上述曲线的折线的数据中生成连结构成上述线的顶点的邻接的各3个点而构成的三角形网格,把该三角形网格的数据存储在存储装置中的初始三角形网格生成单元。此外,本发明的目的通过用具有存储着由构成应该变形的对象的三角形网格数据组成的原始形状数据的存储装置的计算机可以读出的图像处理程序,其特征在于,使上述计算机执行以下步骤:
第1网格生成步骤,根据来自上述输入装置的、包含有在上述图像中的上述三角形网格中应该固定的点以及被移动的点的表示多个句柄位置的信息,从上述存储装置中读出上述原始形状数据,对于该原始形状数据表示的各个原始三角形网格,一边允许其旋转以及放大/缩小,一边生成表现了原始三角形网格和处理后的中间的三角形的网格之间的差异的2次误差测度变成最小那样的、由中间的三角形网格的数据组成的中间的网格数据,然后存储在上述存储装置中;
第2网格生成步骤,对于上述中间的网格数据表示的各个中间的三角形网格,在一边允许其旋转以及平行移动,一边不允许不均匀畸变、伸缩以及放大/缩小的状态下,生成表现了上述中间的三角形网格和最终的三角形网格之间的差异的误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并存储在上述存储装置中。
在优选的实施方式中,在上述第2网格生成步骤中,使上述计算机执行以下步骤:
使上述原始形状数据表示的各个原始三角形网格旋转以及平行移动,生成使和中间的网格数据表示的对应的中间的三角形网格之间的2次误差测度最小化的、由所拟合的三角形网格的数据组成的拟合网格数据,并且存储在上述存储装置中,
生成上述拟合网格数据表示的三角形网格和对应的最终的三角形网格之间的示出表示三角形的边的矢量之差的2次误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并且存储在上述存储装置中。
在另一个优选的实施方式中,使计算机进一步执行读出存储在上述存储装置中的原始形状数据、或者最终网格数据,生成包含基于已读出的数据的对象的图像的图像生成步骤。
在更优选的实施方式中,进一步当原始形状数据被存储在上述存储装置中时,使上述计算机进行以下(a)、(b)计算的步骤:
(a)根据上述原始形状数据表示的各个原始三角形网格的顶点坐标,计算满足
Estep1{v}=vTGstep1v
的矩阵Gstep1,以及满足
Estep2{v}=vTGstep2v
的矩阵Gstep2,
其中,
Estep1表示用采用2n个变量vox、voy、vlx、vly、...、vnx、vny的2次式表示的、在第1网格生成单元中的2次误差测度的函数,
Estep2表示用采用2n个变量vox、voy、v1x、vly、...、vnX、vny的2次式表示的、由第2网格生成单元执行的表现了拟合网格数据表示的三角形网格以及最终的三角形网格的差异的2次误差测度的函数)
(b)计算满足
_Efitting{w}=Gfittingw+Bfitting=0
那样的矩阵Gfitting以及该Gfitting的逆矩阵Gfitting-1,
其中,
Efitting是表示在上述第2网格生成单元中的与上述原始形状数据表示的三角形网格和中间的三角形网格有关的2次误差测度的函数;
当用来自上述输入装置的信息在某一位置上配置、追加句柄,或者删除某一位置的句柄时,使上述计算机进行以下(c)、(d)计算的步骤:
(c)对于上述Gstep1以及Gstep2,通过除去受句柄限制的顶点的分量,计算矩阵Gstep1’以及Gstep2’,
(d)计算上述矩阵Gstep1’以及Gstep2’的逆矩阵Gstep1’-1以及Gstep2’-1。
此外,在进一步优选的实施方式中,当利用来自上述输入装置的信息移动某一位置的句柄时,
在上述第1网格生成步骤中使上述计算机进行以下步骤:
(e)伴随上述句柄的移动,使用在三角形网格中被限制的顶点的已被更新了的位置,计算矢量Bstep1,
其中,_Estep1{u}=Gstep1’+Bstep1=0
_Estep1{v}是Estep1{v}=vTGstep1v的偏微分,
(f)把上述矩阵Gstep1’-1和Bstep1相乘,生成包含与在三角形网格中的自由顶点有关的坐标的、中间的网格三角形的中间的网格数据,并且,
在上述第2网格生成步骤中使上述计算机进行以下步骤:
(g)根据上述中间的网格数据计算上述矢量Bfitting,
(h)把上述矩阵Gfitting-1和Bfitting相乘,生成上述被拟合的三角形的拟合网格数据,
(i)根据上述拟合网格数据,计算矢量Bstep2’,
其中,_Estep2{u}=Gstep2’u+Bstep 2’=0
_Estep2{v}是Estep2{v}=vTGstep2v+Bstep2v的偏微分,
(j)把上述矩阵Gstep2’-1和矢量Bstep2’相乘,生成最终的三角形网格的最终网格数据。
在某一实施方式中,上述应该变形的对象是用上述三角形网格构成的2维对象。或者,上述应该变形的对象可以是曲线,进一步使上述计算机执行:具备从表示上述曲线的折线的数据中生成连结构成上述线的顶点的邻接的各3个点而构成的三角形网格,把该三角形网格的数据存储在存储装置中的初始三角形网格生成步骤。
根据本发明,可以提供能够自然地把对象变形,并且其处理时间也非常短的图像处理系统以及图像处理程序。
附图说明
图1是表示本实施方式的图像处理系统的硬件结构的方框图。
图2是本实施方式的图像处理系统的功能方框图。
图3是概略地表示本实施方式的图像处理系统进行的处理(配准、编译以及操作)的图。
图4是说明本实施方式的图像处理系统进行的句柄结构的生成、第1网格生成、2阶段的第2网格生成的图。
图5是说明本实施方式的第1网格生成部进行的处理中的误差函数的图。
图6是说明本实施方式的第2网格生成部进行的处理中的作为第1步骤的拟合(配合)的说明图。
图7是说明本实施方式的第2网格生成部进行的处理中的第2步骤的图。
图8是表示在本实施方式的图像处理系统10中执行的处理的流程图。
图9是表示在本实施方式的图像处理系统10中执行的处理的流程图。
图10A、B分别是表示在把本发明利用到曲线的编辑时,在图像处理系统10中执行的处理的流程图。
图11是表示利用了本发明的曲线的编辑的例图。
图12是表示利用了本发明的曲线的编辑的另一例图。
图13是说明把本发明利用到曲线的编辑中时的三角形网格生成的图。
符号说明
10:图像处理系统
12:输入装置
14:显示装置
30:初始网格生成部
32:配准处理部
34:编译处理部
36:第1网格生成部
38:第2网格生成部
40:存储装置
52:图像生成部
具体实施方式
以下,参照附图说明本发明的实施方式。
[系统构成]
图1是表示本实施方式的图像处理系统的硬件结构的方框图。如图1所示,图像处理系统10具备:经由总线11连接的、鼠标和键盘等输入装置12、显示装置14、对CD和DVD等可移动存储介质18执行读写的驱动器16、CPU20、ROM22、RAM24以及硬盘等外部存储装置26。即,通过把包含使该个人计算机执行的处理步骤(有关内容以后详细说明)的计算机程序安装到一般的个人计算机中来实现。
图2是本实施方式的图像处理系统的功能方框图。如图2所示,图像处理系统10在功能上具备:初始网格生成部30;配准处理部32;编译处理部34;以及第1网格生成部36;第2网格生成部38。这些功能主要用CPU20来实现。此外,图像处理系统10具有存储以后说明的图像数据的存储装置40。该功能主要用RAM24实现。此外,如图2所示,图像处理系统10具有:接受来自输入装置的指示,对初始网格生成部30等的构成部分给予该指示、或者把基于已生成的数据的图像输出到显示装置14的接口(I/F)42,以及根据存储在存储装置40中的数据(例如,原始形状数据,最终网格数据)描画对象的图像生成部52。
[处理的概要]
初始网格生成部30在图像中,在应该由用户操作的2维形状的对象内部生成三角形的网格。初始网格生成部30把得到的网格的顶点坐标作为原始形状数据44存储在存储装置40中。初始网格生成部30的处理是以往就知道的,该处理并不成为本发明的一部分。
2维形状的对象可以是矢量图形,也可以是位映象。必要时只要作为2维形状的边界闭合的多角形得到即可。此外,当图像是位映象的情况下,通过消除背景,跟踪外侧的轮廓,能够设置成闭合了边界的多角形。初始网格生成部30在边界闭合了的多角形的内侧生成三角形的网格,把其顶点的坐标数据作为原始形状数据44存储在存储装置40中。为了生成三角形网格,可知有多种方法。在本实施方式中,希望大致在边界闭合了的多角形的整个区域内生成等边三角形。初始网格生成部30把限制性Delaunay分割作为基点,通过调整顶点的位置以及网格的连结,反复修正网格。最终得到的网格的坐标数据作为原始形状数据44在以后的处理中使用。
[前处理]
此外,配准处理部32以及编译处理部34执行以后详细说明的第1网格生成部36以及在第2网格生成部38中的处理的前处理。配准处理部32在用户操作输入装置12在显示于显示装置14的画面上的2维形状的对象上生成了网格时,执行必要的处理。此外,编译处理部34在配置、追加或者删除了句柄时,执行必要的处理。
在此,在本说明书中,句柄能够通过用户操作鼠标在显示的2维形状上点击来设定。此时,图像处理系统10在存储装置40中存储句柄的坐标。此外,在设定了句柄的状态下,或者指定句柄,用户通过拖动鼠标,能够使句柄移动。伴随句柄的移动,系统只要更新存储在存储装置40中的句柄的坐标即可。而且,当在配置、追加或者删除句柄的情况下,在图像处理系统10中执行的处理,和当移动了句柄的情况下,在图像处理系统10中执行的处理不同。对此,参照图8以及图9的流程图再次详细说明。
而且,以下,把用户设定句柄,或者使句柄移动,根据应答,系统执行处理称为“相互作用”。此外,还把用户通过句柄的设定和移动改变2维形状的对象称为“操作”。
用户在形状之上配置1个或者1个以上的句柄,以对话方式使句柄移动(参照图3的符号(b)以及(c))。当利用鼠标的情况下,用户把图标配置在形状之上的所希望的位置,可通过点击能够设定句柄,并且通过拖动能够移动经过设定的句柄。
在现实中,在本发明中,用户把句柄配置在任意的位置上,能够以包含句柄的方式将网格构造变形。
第1,形状的操作被应用于三角形的网格。接着,系统把原来的线以及图像从原来的网格映射在变形后的网格上。
当操作矢量图形的情况下,在网格对应的三角形中,利用各自的顶点的重心坐标(barycentric coordinates)。在操作位映像时,利用单纯的线性映射。
在图像处理系统中,在追加新的句柄,或者删除句柄时,执行追加的前处理(图3的符号(b))。把该处理称为“编译”。该处理作为输入取得表示句柄的构成,即表示哪个是作为句柄设定的顶点的信息,作为输出,返回类似返回处理结果的形状那样的函数(如果收到句柄的坐标则返回剩下的网格的顶点位置的函数)。在相互作用期间,图像处理系统10把经过更新的句柄的结构送给函数。
[网格生成的概要]
在本实施方式中,第1网格生成处理部36以及第2网格生成处理部38这2个通过按序执行处理,实现网格生成。在该网格生成中,对算法的输入是被限制的网格矢量的x-y坐标(参照图4的符号a),输出是对与经过处理的网格三角形各自有关的变形进行最小化那样的、被限制的顶点以外的剩下的自由顶点坐标(参照图4的符号d)。主要的问题在于怎样定义三角形的畸变。在本实施方式中,在自由变量中设计二次误差测度(error metric),用单纯的矩阵运算解决最小化的问题。
在第1网格生成处理部36中,在提供了被限制的顶点坐标时,通过一方面畸变和非均匀回避伸缩,另一方面旋转以及放大缩小把所认识的误差测度最小化,生成作为中间结果的中间的网格数据46(参照图4的符号b)。把生成的中间的网格数据46存储在存储装置40中。
接着,把第2网格生成处理部38中的处理分解为2个连续的处理。第2网格生成处理部38首先,并不改变尺度,使原来的三角形(以在第1网格生成处理部36中得到的中间的网格数据46为基础的三角形)进一步拟合中间的三角形(参照图4的符号c)。第2网格处理部38把与该拟合的三角形有关的数据作为拟合网格数据48存储在存储装置40中。接着,第2网格生成处理部38计算出把表示基于最终的处理结果(最终网格数据50)的三角形和基于拟合网格数据48的三角形之间的不同的误差测度设置成最小那样的最终处理结果(参照图4的符号d)。把这样得到的最终网格数据50存储在存储装置40中。此外,2维形状的对象作为基于最初网格数据50的三角形网格的集合,在显示装置14的画面上进行显示。
[第1网格生成部36中的处理]
在本实施方式的第1网格生成部36的处理中,通过使认识旋转以及放大缩小的误差函数最小化,生成作为中间结果的中间的网格数据46。输入是存储在存储装置40中的原始形状数据44中的被限制顶点的x-y坐标,输出是上述被限制的顶点以外的剩下的自由顶点的x-y坐标。
在本发明的算法中,如物理基础的模拟和松驰方法那样,作为初始的构成,应该留意的是不利用以前的结果。在本发明中,能够提供在闭合了的形状下的解法。
图5是说明本实施方式的第1网格生成部进行的处理中的误差函数的图。在图5中,v2desired以通过平行移动、旋转以及放大、缩小,v0以及v1分别与v0’、v1’,相配的方式,通过使原来的三角形拟合于成为目标的三角形上而被取得。
在第1网格生成部36的处理中,用于三角形{v0,v1,v2}的误差函数如以下那样定义(参照图5)。
对于在基于原始形状数据的三角形(v0’,v1’,v2’)中的对应的三角形,第1网格生成部36首先计算用v0’以及v1’中定义的局部坐标中的v2,的相对坐标{x01,y01}。
[数1]
当提供了v0,v1,x01和y01,则第1网格生成部36能够计算相对v2的希望的位置(这相当于v2desired)。
[数2]
与v2有关的误差表示如下。
[数3]
同样还能够计算v0desired以及v1desired。由此,能够把与某一三角形有关的误差表示如下。
[数4]
针对全部的网格的误差变成仅仅针对网格中的全部的三角形的误差的合计。误差测度因为在vT={vox,voy,v1x,v1y,...,vnx,vny}中是2次的,所以能够用矩阵形式表示误差。
Estep1{v}=vTGstep1v …(5)
最小化能够通过把采用函数E的自由变量uT={uox,uoy,u1x,u1y,...,umx,umy}的偏微分_Estep1{v}设置为0而解决。
_Estep1{}=Gstep1’+Bstep1=O …(6)
在此,Gstep1’是通过除去与Gstep1的被限制的变量有关的分量得到的“2m×2m”的矩阵,Bstep1是从Gstep1以及被限制的变量中得到的尺寸为“m”的矢量。Gstep1’是固定值,因为只有Bstep1在操作中变化,所以通过在相互作用的开始求Gstep1’的倒数,由此用单一的矩阵的乘法运算,能够计算出“u”。实际上计算Gstep1’的LU分解,存储在存储装置40中。图4的符号b表示由第1网格生成部36进行的处理结果的概要。在相互作用之间因为只有单一的矩阵的乘法运算为必要的,所以可以加快计算速度。
根据上述式(5),则Estep1能够用vox,voy,v1x,v1y,...,vnx,vny这样的2n个变量的2次式表示。
例如,如果假设是以下的2次式,
Estep1=a*vox*vox+b*vox*voy+c*voy*voy
则Gstep1能够如下那样求得。
Gstep1=
{a b}
{b c}
再次,如果说明图4,则在图4中,对于所提供的句柄构成(handleconfiguration)(图4的符号a),图像处理系统10首先通过使允许放大缩小那样的误差测度最小化,生成中间结果(中间的网格数据46)(图4的符号b)。接着,图像处理系统10使基于原始形状数据44的三角形拟合中间结果(中间的网格数据)中对应的三角形,取得拟合网格数据48(图4的符号c)。最终,图像处理系统10通过对拟合的三角形、最终结果中的对应的三角形之间的差异进行最小化,生成最终结果(最终网格数据50)。
[第2网格生成部38中的处理]
第2网格生成部38把存储在存储装置40中的、中间的网格数据46(全部顶点的x-y坐标)作为输入取得,通过调整网格中的三角形的大小,作为输出把最终结果即最终网格数据50(自由的顶点的经过更新的x-y坐标)作为输出送回。
[拟合网格数据的生成]
第2网格生成部38使基于原始形状数据44的各三角形拟合于基于中间的网格数据46的对应的三角形。在此,虽然允许三角形的旋转以及平行移动,但不允许畸变和不均匀的伸缩或放大缩小(参照图4的符号c)。生成拟合网格数据的拟合处理如下。
在提供基于中间的网格数据46的三角形{v0intermediate,v1intermediate,v2intermediate},以及基于原始形状数据44的对应的三角形{v0’,v1’,v2’}时,存在发现和三角形{v0’,v1’,v2’}叠合,并且使以下的函数最小化的新的三角形{v0,v1,v2}(参照图6)的问题。在图6中,通过平行移动以及旋转,原来的三角形被拟合于(fitting)中间的三角形。
[数5]
因为直接得到上述式子的解不容易,所以首先允许放大缩小并把误差最小化,并且,其后通过调整尺度来近似。对于第1网格生成部36的处理,使用v0以及v1如下表示V2。
[数6]
通过把该算式代入到误差函数中,误差函数变成wT={vox,voy,v1x,v1y}的4个自由变量的2次式。通过如把4个自由变量设置为0那样设定梯度_Efitting,能够使Efitting最小化。结果是变成单纯的4个联立方程式,只要解它即可。
_Efitting{w}=Gfittingw+Bfitting=O …(9)
通过解上述算式,能够得到和原来的三角形{v0’,v1’,v2’}类似的、重新拟合的三角形{v0,v1,v2}。接着,通过用|v0’-v1’|/|v0-v1|的因子,对所拟合的三角形进行放大缩小,能够得到重合的三角形。在本实施方式中,对全部的三角形实施该拟合处理。
Gfitting以及Bfitting都能够和上述Gstep1等一样地计算。如果Efitting能够用w={vox,voy,v1x,v1y}的2次式得到,则用w的各要素对它进行了偏微分的_Efitting用(9)式表示。
例如,如果假设:
_Efitting={dE/vox、dE/voy,dE/v1x,dE/1y}
dE/vox=ao*vox+bo*voy+co*v1x+do*v1y,+e0
dE/voy=a1*vox+b1*voy+c1*v1x+d1*v1y+e1
dE/v1x=a2*vox+b2*voy+c2*v1x+d2*v1y+e2
dE/v1y=a3*vox+b3*voy+c3*v1x+d3*v1y+e3
则
Gfitting=
{
{a0,b0,c0,d0)
{a1,b1,c1,d1}
{a2,b2,c2,d2}
{a3,b3,c3,d3}
}
Bfitting {c0,c1,c2,c3}
[最终网格数据的生成]
接着,第2网格生成部38通过使基于最终的网格数据的三角形、和基于拟合网格数据的三角形之间的差异最小化,计算相对被限制顶点所提供的x-y坐标的、被限制的顶点以外的自由顶点的最终的x-y坐标(参照图4的符号d)。在此,应该注意的是只是拟合网格数据48被利用,中间的网格数据46不被利用。
参照图7所示的单一的三角形{v0,v1,v2}来进行说明。在图7中,图像处理系统10计算所拟合的三角形的边缘矢量和变成目标的三角形的边缘矢量之间的不同。如果提供基于拟合网格数据48的三角形{v0fitted,v1fitted,v2fitted},则能够定义以下的2次的误差函数。
[数7]
在此,应该注意的是误差是不在顶点而在边缘(矢量)。即,在此,只利用所拟合的三角形的方向,而忽略其位置。
以下的处理和第1步骤同样地被实现。相对全部网格的误差能够用矩阵的形式表示。
Estep2{v}=vTGstep2v+Bstep2v …(11)
接着,把基于函数E的自由变量u的偏微分_Ev(t)设置为0。
_Estep2{u}=Gstep2’u+ Bstep2’=0…(12)
Gstep2’是固定值,Bstep2’因为在操作之间发生变化,所以通过在相互作用的开头计算Gstep2’的反函数,用单一的矩阵的乘法运算,能够计算出u。实际上计算Gstep2’的LU分解,并存储在存储装置40中。
而且,上述的Gstep2也和Gstep1一样,能够用基于上述(11)式的算式变形求得。
[实际的处理]
图8以及图9是表示在本实施方式的图像处理系统10中执行的处理的流程图。图像处理系统10的配准处理部32、编译处理部34、第1网格生成部36以及第2网格生成部38从存储装置40读出在处理中需要的数据,此外,把在处理中生成的数据存储在存储装置40中。
初始网格生成部30用公知的方法,生成包含在对象的内部所生成的三角形的顶点坐标的原始形状数据,并存储在存储装置40中(步骤801)。此外,图像生成部52如果生成原始形状数据,则从存储装置40读出该数据,例如在背景上生成配置有基于原始形状数据的2维对象那样的图像(步骤S802)。
配准处理部32在新生成原始形状数据时起动,从存储装置40读出原始形状数据,根据其顶点坐标计算(5)式所示的矩阵Gstep1以及(11)式所示的Gstep2(步骤803)。接着,配准处理部32对基于原始形状数据的各三角形,计算(9)式所示的矩阵Gfitting及其逆矩阵Gfitting-1(步骤804)。把计算出的矩阵的数据存储在存储装置40中。这些Gstep1、Gstep2、Gfitting以及Gfitting-1只要没有重新制作原始形状数据,就不用再次进行计算,以下的、基于和用户的相互作用的句柄的配置等,在操作中存储在存储装置40中,根据需要读出。
如果用户操作输入装置12,在显示于显示装置14的画面中的2维对象上配置句柄,或者追加、删除句柄(步骤805),则应答它,编译处理部34起动。编译处理部34根据在步骤803中得到的Gstep1、Gstep2,除去与通过句柄的设定而被限制的顶点有关的分量,生成(6)式表示的矩阵Gstep1’,以及(12)式所示的矩阵Gstep2’(步骤806)。接着,编译处理部34生成在步骤806中生成的矩阵的逆矩阵Gstep1’-1以及Gstep2’-1(步骤807)。把在步骤807中得到的逆矩阵的Gstep1’-1以及Gstep2’-1的数据存储在存储装置40中。
如上所述,Gstep1’以及Gstep2’分别是通过除去矩阵Gstep1、Gstep2’被限制的分量而得到的矩阵。
例如,假设矩阵Gstep1如下表示。
Gstep1=
{
[a0,b0,c0,d0},
{a1,b1,c1,d1},
{a2,b2,c2,d2},
{a3,b3,c3,d3},
}
v={v0x,v0y,v1x,v1y}
此时,如果除去v1,则变成:
Gstep1’=
{
{a0,b0},
{a1,b1},
}
接着,用户操作输入装置12,如果使某一句柄移动(步骤900),则开始由第1网格生成部36以及第2网格生成部38进行运算。第1网格生成部36根据伴随句柄的移动被限制的顶点被更新了的位置,生成(6)式所示的矢量Bstep1(步骤901)。如(6)式所示,能够从矩阵Gstep1’的逆矩阵Gstep1’-1和Bstep1的积中求中间坐标的数据(即,中间的网格数据46)。因而,第1网格生成部36在步骤806中计算,读出存储在存储装置40中的Gstep1’-1,和在步骤901中得到的矢量Bstep1相乘(步骤902)。第1网格生成部36把这样得到的结果作为中间的网格数据46存储在存储装置40中。
其后,第2网格生成部38从存储装置40中读出中间的网格数据46,对于基于中间的网格数据46的各三角形,计算(9)式所示的矢量Bfitting(步骤903)。在此,如(9)式所示,得到矩阵Gfitting的逆矩阵Gfitting-1和Bfitting的积,并且,通过把该尺度按照(| v0’-v1’|/| v0-v1 |)进行调整,能够取得被拟合的三角形的坐标(拟合网格数据)。因而,第2网格生成部38读出在步骤804中生成、存储在存储装置40中的Gfitting-1,取和在步骤903中计算出的Bfitting的积,并且,调整其尺度(步骤904)。第2网格生成部40把这样得到的数据作为拟合网格数据存储在存储装置40中。
进而,第2网格生成部38根据基于拟合网格数据的三角形的坐标,计算(11)式所示的矢量Bstep2(步骤905),其后,根据矢量Bstep2(通过除去被限制的分量),计算矢量Bstep2’(步骤906)。
如(12)式所示,从矩阵Gstep2’的逆矩阵Gstep2’-1和Bstep2’的积中,能够取得最终的坐标数据(最终网格数据50)。因而,第2网格生成部38在步骤807中生成,读出存储在存储装置40中的Gstep2’-1,取和在步骤905中计算出的Bstep2’的积,取得最终的三角形的坐标(步骤908)。该最终的三角形的坐标作为最终的网格数据50存储在存储装置40中。
这样,如果把最终网格数据50存储在存储装置40中,则图像生成部52读出最终网格数据50,例如,在背景上生成如配置有基于原始形状数据的2维对象那样的图像,在显示装置14的画面上显示(步骤908)。
以后,当通过用户的输入装置12的操作移动句柄的情况下(步骤900),执行从步骤901至步骤907的处理,更新最终网格数据,并存储在存储装置40中。此外,根据该经过更新的最终网格数据,图像生成部52生成图像并在显示装置14的画面上显示。即,只要句柄移动,就不执行图8所示的处理。即,通过只执行矢量Bstep1、Bfitting、Bstep2以及Bstep2’生成以及矩阵的乘法运算,可以适当地将对象变形。
此外,当进行了句柄的配置、追加、删除的情况下,用编译处理部34进行矩阵Gstep1’、Bstep2’以及它们的逆矩阵的生成。但是,配准部32的处理只要不生成新的对象的网格,就不需要重新执行。
这样,根据本实施方式,能够减轻伴随句柄的移动的运算。此外,在第1网格生成部的处理中,生成使认识三角形网格的旋转以及放大缩小的误差测度最小化的中间的三角形网格的数据即中间网格数据并进行存储。此外,在第2网格生成部的处理中,以在允许旋转或平行移动的同时不允许畸变、不均匀的伸缩、旋转缩小的误差函数最小化的方式,计算最终的三角形网格的数据并存储。这样,通过以2个阶段变形网格,能够实现对象的自然变形。
本发明并不限于以上的实施方式,在权利要求范围所述的发明的范围内,可以有各种的变更,这些当然也包含在本发明的范围内。
例如,在上述实施方式中,操作者使用鼠标在对象上配置、追加、消除句柄,或者是移动某一句柄。例如,在图2所示的例子中,把3个句柄配置在对象上,例如,操作者通过把右侧的句柄进一步向右移动,对象变形。但是,为了句柄的配置等,并不限于鼠标,用其他的输入装置当然也能够实现句柄的配置等。例如,能够利用多点跟踪设备。当利用多点跟踪设备的情况下,用户参照显示在显示装置的画面上的对象,能够用双手直接抓住2维对象的形状,对该形状进行操作。
此外,在表示对象的各个三角形网格上提供不同的权重,还能够控制形状的局部的刚性。例如,在特定的1个以上的三角形网格上提供规定量(例如,10000)的权重,在其他的三角形网格上提供“1”的权重,由此提供了规定量的权重的三角形网格具有刚性,能够难以因句柄移动而受到影响。
此外,在本实施方式中,在2维对象的操作中,虽然应用了本发明但并不限于此,也可以在3维对象的操作中应用本发明。这种情况下,除了对三角形对象提供(x坐标,y坐标)外,还提供包含表示向里面的z值的三维的坐标。初始时,z值是“0”,但在操作时,在不同的网格重叠时,按照预先决定的重叠的顺序(哪个来到面前的顺序),通过提供z值,可以把某一三角形网格表示在面前。
在曲线的编辑中也能够应用本发明的2阶段处理的算法(即,利用第1网格生成部以及第2网格生成部的处理)。代替2维对象中的三角形网格,把折线作为输入。本实施方式中的网格生成部如图13所示,通过根据折线生成许多三角形网格,可以在曲线的编辑中应用本发明。
即,如图10A所示,如果提供曲线(步骤1001),初始网格生成部30把曲线分割成许多折线,把其坐标数据等存储在存储装置40中(步骤1002)。接着,初始网格生成部30例如制作连结折线连续的3个顶点的三角形(步骤1003),把它作为三角形网格,把其坐标的数据作为原始形状数据44存储在存储装置40中(步骤1004)。以后的处理和参照图8以及图9的处理相同。而且,在原始形状数据中,希望包含表示通过连结哪个坐标形成曲线的信息(连接信息)。
图像生成部52如图10B所示,如果从存储装置40中读出最终网格数据50(步骤1011),则按照上述连接信息,判断应该连接在最终网格数据50上表示的哪个坐标,生成曲线(步骤1012),显示在显示装置14的画面上。
图11是表示对在显示装置的画面上显示的曲线进行编辑的例图。如本发明所示,当执行第1网格生成部以及第2网格生成部中的处理的情况下,曲线宛如具有刚性那样动作。另一方面,例如,当只执行了在第1网格生成部中的处理的情况下,曲线任意地放大、缩小。在图11的上图中,移动句柄(图中,用人的手表示)。图11的左侧的图表示只实施了第1网格生成部进行的处理的情况(比较例子),右侧的图表示实施了第1网格生成部以及第2网格生成部双方实施处理的情况(实施例)。在比较例子中,被拉长的区域增大,压扁的区域缩小。另一方面,根据应用了本发明的例子(实施例),能够得到更自然的结果。
以用户能够直接调整在相互作用之间应该受到影响的区域的方式提供“剥离界面”。在“剥离界面”中,随着用户更远地拖动曲线,应该受到影响的区域增大(参照图11)。由此,用户不需要预先特定应该受到影响的区域,此外,可以使相互作用更直观。
图12是表示利用了“剥离界面”的曲线的编辑的例图。用户如果进一步往远处拉拽曲线,则应受到影响的区域增大(图中,参照从左至右)。此外,用户还能够预先明确特定区域(图中,参照左下)。
此外,在拖动之前,通过在曲线之上配置引线,用户还可以明确特定应该受到影响的区域。但是,当配置引线的情况下,只可以有局部的变形,用户不能改变应受到影响的区域。而且,在实际的处理中,应答用户的输入,用初始网格生成部30把引线的坐标存储在存储装置40中,在处理中,只要利用该引线的坐标即可。
Claims (14)
1.一种图像处理系统,具有存储着由构成应该变形的对象的三角形网格数据组成的原始形状数据的存储装置,其特征在于,具备:
第1网格生成单元,根据来自上述输入装置的、包含有在上述图像中的上述三角形网格中应该固定的点以及被移动的点的表示多个句柄位置的信息,从上述存储装置中读出上述原始形状数据,对于该原始形状数据表示的各个原始三角形网格,一边允许其旋转以及放大/缩小,一边生成表现了原始三角形网格和处理后的中间的三角形网格之间的差异的2次误差测度变成最小那样的、由中间的三角形网格的数据组成的中间的网格数据,然后存储在上述存储装置中;
第2网格生成单元,对于上述中间的网格数据表示的各个中间的三角形网格,在一边允许其旋转以及平行移动,一边不允许不均匀畸变、伸缩以及放大/缩小的状态下,生成表现了上述中间的三角形网格和最终的三角形网格之间的差异的误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并存储在上述存储装置中。
2.根据权利要求1所述的图像处理系统,其特征在于:
上述第2网格生成单元构成为:使上述原始形状数据表示的各个原始三角形网格旋转以及平行移动,生成使和中间的网格数据表示的对应的中间的三角形网格之间的2次误差测度最小化的、由所拟合的三角形网格的数据组成的拟合网格数据,并且存储在上述存储装置中,
生成上述拟合网格数据表示的三角形网格和对应的最终的三角形网格之间的示出表示三角形的边的矢量之差的2次误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并且存储在上述存储装置中。
3.根据权利要求2所述的图像处理系统,其特征在于:进一步具备图像生成单元,读出存储在上述存储装置中的原始形状数据、或者最终网格数据,生成包含基于已读出的数据的对象的图像。
4.根据权利要求2或者3所述的图像处理系统,其特征在于:
还具有当原始形状数据被存储在上述存储装置中时,进行以下(a)、(b)计算的配准单元:
(a)根据上述原始形状数据表示的各个原始三角形网格的顶点坐标,计算满足
Estep1{v}=vTGstep1v
的矩阵Gstep1,以及满足
Estep2{v}=vTGstep2v
的矩阵Gstep2,
其中,
Estep1表示用采用2n个变量vox、voy、v1x、v1y、...、vnx、vny的2次式表示的、在第1网格生成单元中的2次误差测度的函数,
Estep2表示用采用2n个变量vox、voy、v1x、v1y、...、vnx、vny的2次式表示的、由第2网格生成单元执行的表现了拟合网格数据表示的三角形网格以及最终的三角形网格的差异的2次误差测度的函数)
(b)计算满足
_Efitting{w}=Gfittingw+Bfitting=0
那样的矩阵Gfitting以及该Gfitting的逆矩阵Gfitting-1,
其中,
Efitting是表示在上述第2网格生成单元中的与上述原始形状数据表示的三角形网格和中间的三角形网格有关的2次误差测度的函数;
当用来自上述输入装置的信息在某一位置上配置、追加句柄,或者删除某一位置的句柄时,进行以下(c)、(d)计算的编译单元:
(c)对于上述Gstep1以及Gstep2,通过除去受句柄限制的顶点的分量,计算矩阵Gstep1’以及Gstep2’,
(d)计算上述矩阵Gstep1’以及Gstep2’的逆矩阵Gstep1’-1以及Gstep2’-1。
5.根据权利要求4所述的图像处理系统,其特征在于:
当利用来自上述输入装置的信息移动某一位置的句柄时,
上述第1网格生成单元构成为:
(e)伴随上述句柄的移动,使用在三角形网格中被限制的顶点的已被更新了的位置,计算矢量Bstep1,
其中,_Estep1{u}=Gstep1’+Bstep1=0
_Estep1{v}是Estep1{v}=vTGstep1v的偏微分,
(f)把上述矩阵Gstep1’-1和Bstep1相乘,生成包含与在三角形网格中的自由顶点有关的坐标的、中间的网格三角形的中间的网格数据,并且,
上述第2网格生成单元构成为:
(g)根据上述中间的网格数据计算上述矢量Bfitting,
(h)把上述矩阵Gfitting-1和矢量Bfitting相乘,生成上述被拟合的三角形的拟合网格数据,
(i)根据上述拟合网格数据,计算矢量Bstep2’,
其中,_Estep2{u}=Gstep2’u+Bstep2’=0
_Estep2{v}是Estep2{v}=vTGstep2v+Bstep2v的偏微分,
(j)把上述矩阵Gstep2’-1和Bstep2’相乘,生成最终的三角形网格的最终网格数据。
6.根据权利要求1至5的任意一项所述的图像处理系统,其特征在于:上述应该变形的对象是用上述三角形网格构成的2维对象。
7.根据权利要求1至5的任意一项所述的图像处理系统,其特征在于:上述应该变形的对象是曲线,具备从表示上述曲线的折线的数据中生成连结构成上述线的顶点的邻接的各3个点而构成的三角形网格,把该三角形网格的数据存储在存储装置中的初始三角形网格生成单元。
8.一种图像处理程序,是用具有存储着由构成应该变形的对象的三角形网格数据组成的原始形状数据的存储装置的计算机可以读出的图像处理程序,其特征在于,使上述计算机执行以下步骤:
第1网格生成步骤,根据来自上述输入装置的、包含有在上述图像中的上述三角形网格中应该固定的点以及被移动的点的表示多个句柄位置的信息,从上述存储装置中读出上述原始形状数据,对于该原始形状数据表示的各个原始三角形网格,一边允许其旋转以及放大/缩小,一边生成表现了原始三角形网格和处理后的中间的三角形的网格之间的差异的2次误差测度变成最小那样的、由中间的三角形网格的数据组成的中间的网格数据,然后存储在上述存储装置中;
第2网格生成步骤,对于上述中间的网格数据表示的各个中间的三角形网格,在一边允许其旋转以及平行移动,一边不允许不均匀畸变、伸缩以及放大/缩小的状态下,生成表现了上述中间的三角形网格和最终的三角形网格之间的差异的误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并存储在上述存储装置中。
9.根据权利要求8所述的图像处理程序,其特征在于:
在上述第2网格生成步骤中,使上述计算机执行以下步骤:
使上述原始形状数据表示的各个原始三角形网格旋转以及平行移动,生成使和中间的网格数据表示的对应的中间的三角形网格之间的2次误差测度最小化的、由所拟合的三角形网格的数据组成的拟合网格数据,并且存储在上述存储装置中,
生成上述拟合网格数据表示的三角形网格和对应的最终的三角形网格之间的示出表示三角形的边的矢量之差的2次误差测度变成最小那样的、由最终的三角形网格的数据组成的最终网格数据,并且存储在上述存储装置中。
10.根据权利要求9所述的图像处理程序,其特征在于:使计算机进一步执行读出存储在上述存储装置中的原始形状数据、或者最终网格数据,生成包含基于已读出的数据的对象的图像的图像生成步骤。
11.根据权利要求9或者10所述的图像处理程序,其特征在于:
进一步当原始形状数据被存储在上述存储装置中时,使上述计算机进行以下(a)、(b)计算的步骤:
(a)根据上述原始形状数据表示的各个原始三角形网格的顶点坐标,计算满足
Estep1{v}=vTGstep1v
的矩阵Gstep1,以及满足
Estep2{v}=vTGstep2v
的矩阵Gstep2,
其中,
Estep1表示用采用2n个变量vox、voy、v1x、v1y、...、vnx、vny的2次式表示的、在第1网格生成单元中的2次误差测度的函数,
Estep2表示用采用2n个变量vox、voy、v1x、v1y、...、vnx、vny的2次式表示的、由第2网格生成单元执行的表现了拟合网格数据表示的三角形网格以及最终的三角形网格的差异的2次误差测度的函数)
(b)计算满足
_Efitting{w}=Gfittingw+Bfitting=0
那样的矩阵Gfitting以及该Gfitting的逆矩阵Gfitting-1,
其中,
Efitting是表示在上述第2网格生成单元中的与上述原始形状数据表示的三角形网格和中间的三角形网格有关的2次误差测度的函数;
当用来自上述输入装置的信息在某一位置上配置、追加句柄,或者删除某一位置的句柄时,使上述计算机进行以下(c)、(d)计算的步骤:
(c)对于上述Gstep1以及Gstep2,通过除去受句柄限制的顶点的分量,计算矩阵Gstep1’以及Gstep2’,
(d)计算上述矩阵Gstep1’以及Gstep2’的逆矩阵Gstep1’-1以及Gstep2’-1。
12.根据权利要求11所述的图像处理程序,其特征在于:
当利用来自上述输入装置的信息移动某一位置的句柄时,
在上述第1网格生成步骤中使上述计算机进行以下步骤:
(e)伴随上述句柄的移动,使用在三角形网格中被限制的顶点的已被更新了的位置,计算矢量Bstep1,
其中,_Estep1{u}=Gstep1’+Bstep1=0
_Estep1{v}是Estep1{v}=vTGstep1v的偏微分,
(f)把上述矩阵Gstep1’-1和Bstep1相乘,生成包含与在三角形网格中的自由顶点有关的坐标的、中间的网格三角形的中间的网格数据,并且,
在上述第2网格生成步骤中使上述计算机进行以下步骤:
(g)根据上述中间的网格数据计算上述矢量Bfitting,
(h)把上述矩阵Gfitting-1和Bfitting相乘,生成上述被拟合的三角形的拟合网格数据,
(i)根据上述拟合网格数据,计算矢量Bstep2’,
其中,_Estep2{u}=Gstep2’u+Bstep2’=0
_Estep2{v}是Estep2{v}=vTGstep2v+Bstep2v的偏微分,
(j)把上述矩阵Gstep2’-1和矢量Bstep2’相乘,生成最终的三角形网格的最终网格数据。
13.根据权利要求8至12的任意一项所述的图像处理程序,其特征在于:上述应该变形的对象是用上述三角形网格构成的2维对象。
14.根据权利要求8至12的任意一项所述的图像处理程序,其特征在于:
上述应该变形的对象是曲线,进一步使上述计算机执行:
具备从表示上述曲线的折线的数据中生成连结构成上述线的顶点的邻接的各3个点而构成的三角形网格,把该三角形网格的数据存储在存储装置中的初始三角形网格生成步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005106371A JP4613313B2 (ja) | 2005-04-01 | 2005-04-01 | 画像処理システムおよび画像処理プログラム |
JP106371/2005 | 2005-04-01 | ||
PCT/JP2006/306727 WO2006106863A1 (ja) | 2005-04-01 | 2006-03-30 | 画像処理システムおよび画像処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101147172A true CN101147172A (zh) | 2008-03-19 |
CN101147172B CN101147172B (zh) | 2010-05-19 |
Family
ID=37073418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800094661A Expired - Fee Related CN101147172B (zh) | 2005-04-01 | 2006-03-30 | 图像处理系统以及图像处理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8063917B2 (zh) |
EP (1) | EP1865467B1 (zh) |
JP (1) | JP4613313B2 (zh) |
CN (1) | CN101147172B (zh) |
WO (1) | WO2006106863A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607951A (zh) * | 2011-09-28 | 2014-02-26 | 株式会社电视系统 | 图像处理装置及图像处理方法 |
CN104346779A (zh) * | 2013-08-01 | 2015-02-11 | Cjcgv株式会社 | 利用创建特征点的图像校正方法和装置 |
CN110443751A (zh) * | 2019-07-10 | 2019-11-12 | 广东智媒云图科技股份有限公司 | 基于绘画线条的图像变形方法、装置、设备及存储介质 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8493340B2 (en) * | 2009-01-16 | 2013-07-23 | Corel Corporation | Virtual hard media imaging |
JP5357685B2 (ja) * | 2009-09-28 | 2013-12-04 | 株式会社ソニー・コンピュータエンタテインメント | 3次元オブジェクト処理装置、3次元オブジェクト処理方法、プログラム、及び情報記憶媒体 |
JP5587132B2 (ja) * | 2010-10-19 | 2014-09-10 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
JP5811690B2 (ja) * | 2011-08-24 | 2015-11-11 | カシオ計算機株式会社 | 画像処理装置、画像処理方法及びプログラム |
JP5857531B2 (ja) * | 2011-08-24 | 2016-02-10 | カシオ計算機株式会社 | 画像処理装置、画像処理方法及びプログラム |
JP5375897B2 (ja) * | 2011-08-25 | 2013-12-25 | カシオ計算機株式会社 | 画像生成方法、画像生成装置及びプログラム |
JP5408206B2 (ja) | 2011-08-25 | 2014-02-05 | カシオ計算機株式会社 | 画像生成方法、画像生成装置及びプログラム |
JP5408205B2 (ja) * | 2011-08-25 | 2014-02-05 | カシオ計算機株式会社 | 制御点設定方法、制御点設定装置及びプログラム |
JP2015508528A (ja) * | 2011-12-28 | 2015-03-19 | インテル・コーポレーション | パイプライン化された画像処理シーケンサ |
JP5906897B2 (ja) * | 2012-03-30 | 2016-04-20 | カシオ計算機株式会社 | 動き情報生成方法、動き情報生成装置及びプログラム |
US9536338B2 (en) * | 2012-07-31 | 2017-01-03 | Microsoft Technology Licensing, Llc | Animating objects using the human body |
JP5966800B2 (ja) * | 2012-09-19 | 2016-08-10 | カシオ計算機株式会社 | 画像処理装置、画像処理方法及びプログラム |
JP6213903B2 (ja) * | 2016-03-11 | 2017-10-18 | カシオ計算機株式会社 | 画像補正装置、画像補正方法、及びプログラム |
US10403020B2 (en) * | 2016-04-19 | 2019-09-03 | Autodesk, Inc. | Techniques for generating dynamic illustrations using principles of animation |
KR102309722B1 (ko) * | 2017-01-13 | 2021-10-07 | 워너 브로스. 엔터테인먼트 인크. | 디지털 스틸 이미지에 모션 효과의 부가 |
US10861196B2 (en) | 2017-09-14 | 2020-12-08 | Apple Inc. | Point cloud compression |
US10909725B2 (en) | 2017-09-18 | 2021-02-02 | Apple Inc. | Point cloud compression |
US10510186B2 (en) | 2017-12-22 | 2019-12-17 | Adobe Inc. | Digital media environment for intuitive modifications of digital graphics |
US10388045B2 (en) * | 2018-01-04 | 2019-08-20 | Adobe Inc. | Generating a triangle mesh for an image represented by curves |
US10410317B1 (en) | 2018-03-26 | 2019-09-10 | Adobe Inc. | Digital image transformation environment using spline handles |
US10867414B2 (en) | 2018-04-10 | 2020-12-15 | Apple Inc. | Point cloud attribute transfer algorithm |
US10489946B1 (en) * | 2018-06-29 | 2019-11-26 | Adobe Inc. | Generalized primitives for smooth coloring of vector graphics artwork in constant time |
US11430155B2 (en) | 2018-10-05 | 2022-08-30 | Apple Inc. | Quantized depths for projection point cloud compression |
US10846889B2 (en) | 2018-11-29 | 2020-11-24 | Adobe Inc. | Color handle generation for digital image color gradients using machine learning |
US10832446B2 (en) * | 2019-01-07 | 2020-11-10 | Adobe Inc. | Bone handle generation |
US10943375B2 (en) | 2019-04-17 | 2021-03-09 | Adobe Inc. | Multi-state vector graphics |
US10878641B1 (en) * | 2019-06-07 | 2020-12-29 | Adobe Inc. | Editing bezier patch by selecting multiple anchor points |
US11948338B1 (en) * | 2021-03-29 | 2024-04-02 | Apple Inc. | 3D volumetric content encoding using 2D videos and simplified 3D meshes |
US11631207B2 (en) | 2021-09-09 | 2023-04-18 | Adobe Inc. | Vector object stylization from raster objects |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2585177B2 (ja) * | 1993-03-26 | 1997-02-26 | 株式会社エイ・ティ・アール通信システム研究所 | 物体形状表示装置 |
JPH1069549A (ja) * | 1996-08-29 | 1998-03-10 | Nippon Telegr & Teleph Corp <Ntt> | 画像処理方法 |
US6765589B1 (en) | 2000-11-16 | 2004-07-20 | Adobe Systems Incorporated | Brush for warping and water reflection effects |
US7538764B2 (en) * | 2001-01-05 | 2009-05-26 | Interuniversitair Micro-Elektronica Centrum (Imec) | System and method to obtain surface structures of multi-dimensional objects, and to represent those surface structures for animation, transmission and display |
US6987511B2 (en) * | 2002-10-17 | 2006-01-17 | International Business Machines Corporation | Linear anisotrophic mesh filtering |
CN1246803C (zh) * | 2003-11-24 | 2006-03-22 | 浙江大学 | 一种与视点相关的用于地形网格生成的误差度量方法 |
US7286127B2 (en) * | 2005-06-22 | 2007-10-23 | Microsoft Corporation | Large mesh deformation using the volumetric graph Laplacian |
CA2553546A1 (en) * | 2005-07-29 | 2007-01-29 | Avid Technology, Inc. | Three-dimensional animation of soft tissue of characters using controls associated with a surface mesh |
US8749543B2 (en) * | 2006-08-15 | 2014-06-10 | Microsoft Corporation | Three dimensional polygon mesh deformation using subspace energy projection |
US7843456B2 (en) * | 2007-06-29 | 2010-11-30 | Microsoft Corporation | Gradient domain editing of animated meshes |
-
2005
- 2005-04-01 JP JP2005106371A patent/JP4613313B2/ja active Active
-
2006
- 2006-03-30 EP EP06730675A patent/EP1865467B1/en not_active Not-in-force
- 2006-03-30 CN CN2006800094661A patent/CN101147172B/zh not_active Expired - Fee Related
- 2006-03-30 US US11/909,588 patent/US8063917B2/en not_active Expired - Fee Related
- 2006-03-30 WO PCT/JP2006/306727 patent/WO2006106863A1/ja active Application Filing
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607951A (zh) * | 2011-09-28 | 2014-02-26 | 株式会社电视系统 | 图像处理装置及图像处理方法 |
CN104346779A (zh) * | 2013-08-01 | 2015-02-11 | Cjcgv株式会社 | 利用创建特征点的图像校正方法和装置 |
CN104346779B (zh) * | 2013-08-01 | 2017-05-03 | Cj Cgv 株式会社 | 利用创建特征点的图像校正方法和装置 |
US10043094B2 (en) | 2013-08-01 | 2018-08-07 | Cj Cgv Co., Ltd. | Image correction method and apparatus using creation of feature points |
CN110443751A (zh) * | 2019-07-10 | 2019-11-12 | 广东智媒云图科技股份有限公司 | 基于绘画线条的图像变形方法、装置、设备及存储介质 |
CN110443751B (zh) * | 2019-07-10 | 2022-09-23 | 广东智媒云图科技股份有限公司 | 基于绘画线条的图像变形方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP1865467A4 (en) | 2011-12-21 |
US20090213143A1 (en) | 2009-08-27 |
WO2006106863A1 (ja) | 2006-10-12 |
JP4613313B2 (ja) | 2011-01-19 |
EP1865467B1 (en) | 2012-12-19 |
JP2006285765A (ja) | 2006-10-19 |
CN101147172B (zh) | 2010-05-19 |
US8063917B2 (en) | 2011-11-22 |
EP1865467A1 (en) | 2007-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101147172B (zh) | 图像处理系统以及图像处理方法 | |
Gao et al. | Haptic sculpting of multi-resolution B-spline surfaces with shaped tools | |
Gao et al. | Haptics-based 3D B-spline Curve Sketch Using Multi-resolution and Twohanded Techniques | |
EP1622086B1 (en) | Deformation of a computer-generated model | |
US7570264B2 (en) | Rig baking | |
US7944449B2 (en) | Methods and apparatus for export of animation data to non-native articulation schemes | |
Luo et al. | Reactive 2D/3D garment pattern design modification | |
EP3038060B1 (en) | 3D modeled object defined by a grid of control points | |
US9892485B2 (en) | System and method for mesh distance based geometry deformation | |
US8358311B1 (en) | Interpolation between model poses using inverse kinematics | |
Singh et al. | Real-time volume manipulation | |
Mukai | Building helper bone rigs from examples | |
Grimm et al. | Visual interfaces for solids modeling | |
JP2725739B2 (ja) | コンピュータにより表示される三次元形態の変形方法 | |
US7782322B2 (en) | Plane shape creation system, plane shape creation method and program recording medium | |
JP4358752B2 (ja) | 統計力学的衝突の方法と装置 | |
Kil et al. | 3D warp brush modeling | |
Wong et al. | Virtual 3D sculpturing with a parametric hand surface | |
JP3147391B2 (ja) | 3次元境界適合メッシュ分割における曲面の設定方法及びその装置 | |
Hua et al. | Dynamic implicit solids with constraints for haptic sculpting | |
Zhang et al. | A spatial warping method for freeform modeling based on a level-set method | |
Kim et al. | Interactive editing of crowd animation | |
Hua et al. | Image deformation based on cubic splines and moving least squares | |
CN116529777A (zh) | 具身代理中的骨架动画 | |
Qin | Dynamic implicit solids with constraints for haptic sculpting |
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 |
Granted publication date: 20100519 |
|
CF01 | Termination of patent right due to non-payment of annual fee |