CN101587595A - 一种基于控制网格的变形方法 - Google Patents
一种基于控制网格的变形方法 Download PDFInfo
- Publication number
- CN101587595A CN101587595A CNA2009100994590A CN200910099459A CN101587595A CN 101587595 A CN101587595 A CN 101587595A CN A2009100994590 A CNA2009100994590 A CN A2009100994590A CN 200910099459 A CN200910099459 A CN 200910099459A CN 101587595 A CN101587595 A CN 101587595A
- Authority
- CN
- China
- Prior art keywords
- control
- control mesh
- function
- barycentric coordinates
- deformation method
- 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.)
- Pending
Links
Images
Landscapes
- Image Generation (AREA)
Abstract
本发明公开了一种基于控制网格的变形方法,该方法根据控制网格的变形,使用改进的重心坐标插值技术计算目标对象相应的变形结果;本发明使用非常稀疏的控制网格也可以产生视觉上光滑的插值结果;可以重生成控制顶点的位置;可以局部求值,适合使用图形显示卡实现高性能的计算。
Description
技术领域
本发明涉及数字几何处理技术领域,尤其涉及一种基于控制网格的变形方法。
技术背景
如今随着数字采集技术的不断发展,高复杂度的三维网格模型越来越普及,对复杂物体进行快速有效的编辑成为受到广泛关注的热点内容,而模型的形状编辑都会涉及到变形技术。对网格模型进行变形的方法一般是使用一个包围模型的控制网格,可以分为操作控制顶点和插值计算两个阶段。前一个阶段根据用户对控制顶点的操作,使用各种方法对控制网格做出相应变形;后一个阶段,根据控制网格的变形插值计算嵌入的模型的变形结果。各种网格编辑和变形技术都可以用于操作控制顶点的阶段。
为了获得光滑的插值结果,自由变形方法采用了样条函数。而基于均值坐标的方法使用一个稀疏的控制表面而不是控制网格以进行光滑的插值。为了获得高质量的变形结果,这些方法的求值过程都需要一个相对较大的领域内的信息,甚至可能是整个控制网格,这并不适合用图形显示卡高速地实现。
在目前的很多图形应用中,重心坐标插值可能是被广泛采用的最简单的插值技术。在三维空间中的重心坐标插值只需要一个四面体的四个顶点,对应于一个控制顶点的基函数只有在该顶点相邻的四面体内才能取得非零的函数值。虽然重心坐标插值的局部特性便于快速计算和局部控制,但是当控制顶点比较稀疏时,由于插值函数一阶不连续的性质,目标模型在控制网格边界处会产生明显的不光滑瑕疵。增加控制顶点的数目和密度虽然能够削弱这一效应,却相应地增加了操作控制网格的代价。
发明内容
本发明的目的在于针对现有技术的不足,提出一种基于控制网格的变形方法。本方法在控制网格非常稀疏的情况下,仍然能够有效的驱动任意高复杂度的模型进行变形,使得操作控制网格所需要的CPU代价非常小,同时变形后的目标的计算能够使用现代图形显示卡有效的实现。本方法也同样适用于变形二维的图像对象。
为实现这样的目的,本发明采用的技术方案如下:一种基于控制网格的变形方法,包括以下步骤:
1)将目标对象嵌入到控制网格中,对控制网格进行变形;
2)根据控制网格的变形,在传统的重心坐标插值函数基础上引入待定的局部变换矩阵,建立改进的重心坐标插值函数;
3)使用改进的重心坐标插值函数建立总能量函数,并根据需要调整其中的加权系数;
4)根据总能量函数求解最优的局部变换矩阵,据此使用改进的重心坐标插值函数计算变形后的对象。
需要变形的目标对象可以是二维图像或者三维网格模型,所建立的控制网格,对于二维图像是平面的三角网格,对于三维网格模型是四面体网格,控制网格需要把整个对象嵌入其中,可以仅具有稀疏的控制顶点。
所述的改进的重心坐标插值函数为每个控制顶点引入了待定局部变换矩阵,其定义形式如下:
所述的总能量函数定义为插值函数的不连续能量和振动能量函数的加权和。控制网格的相邻两个片元Ti和Tj的不连续能量定义为插值函数在它们边界处梯度差的模的平方和,其定义形式如下:
其中,i→j表示Ti上与Tj相邻的边界,j→i表示Tj上与Ti相邻的边界。相应地,全局不连续能量定义为控制网格中所有相邻片元对的不连续能量的总和,其形式如下:
所述的振动能量的定义形式如下:
其中,T表示控制网格的片元的集合,t即为其中的片元,对于二维对象t是平面三角片,对于三维对象t是四面体,相应地|t|即为t的面积或体积。||·||F表示Frobenius范数。
最后求解得到的局部变换矩阵应使总能量函数值最小的。
本发明的有益效果是,本发明使用非常稀疏的控制网格也可以产生视觉上光滑的插值结果;可以重生成控制顶点的位置;可以局部求值,适合使用图形显示卡实现高性能的计算。
附图说明
图1是本发明的方法流程图;
图2是本发明的实现效果与传统方法的对比示例图;
图3是二维空间中局部变换矩阵在插值时的效果示例图;
图4是总能量函数中不同加权系数的效果示例图。
具体实施方式
下面根据附图详细描述本发明,本发明的目的和效果将变得更加明显。
令Ω为Rd空间的目标对象,d可以为2或3,Φ=(U,T)为Ω的一确定的控制网格,这里U=(u1,...,un)即为控制顶点集合,T=(t1,...,tm)表示网格的片元集合。对于二维空间,d=2,Φ为平面三角网格。对于三维空间,d=3,Φ为四面体网格。x(u):Ω→Rd为控制网格的变换函数,且已知x(ui)=xi, 则传统的重心坐标插值函数的形式如下:
在修正曲线和曲面设计的相关文献中,一种简单有效的衡量振动的方法是使用薄板能量,可参考[Moreton1992]Moreton H.P.and Séquin C.H.,“Functionaloptimization for fair surface design”,SIGGRAPH,167--176,1992和[Welch 1992]Welch W.and Witkin A.,“Variational surface modeling”,SIGGRAPH,157--166,1992。一个参数曲面S(u,v)的薄板能量被定义为:
这里Suu 2+2Suv 2+Svv 2其实是S(u,v)的Hessian矩阵的Frobenius范数的平方。
本发明提出一种基于控制网格的变形方法,流程如图1所示,包括建立和变形控制网格、建立改进的重心坐标插值函数、建立总能量函数并调整加权系数、求解最优局部变换矩阵并计算变形后的对象等四个步骤,对加权系数的调整可以以最终的变形结果为依据。图2展示了本方法实现的结果与传统重心坐标插值方法实现结果的对比,左边为原始模型,中间是使用本方法的变形结果,右边是使用传统重心坐标插值方法的结果,可以看到本方法克服了传统方法的缺陷,得到了光滑的变形结果。现具体介绍本方法的四个步骤:
1)建立和变形控制网格
根据需要变形的对象是二维图像或者三维网格模型,所建立的控制网格相应地为平面的三角网格或四面体网格,控制网格需要把整个对象嵌入其中,可以仅具有稀疏的控制顶点。本方法对于三维模型采用了四面体网格而不是六面体,是因为四面体网格可以更好的描述任意的拓扑结构。控制网格的建立和进行变换可以采用各种已有的技术和方法,或者手动地指定,例如可以使用开源的自动网格生成器NETGEN生成四面体网格,并在生成网格时将模型的表面向外扩展以使生成的四面体网格能够包含整个目标模型,可以使用基于物理的模拟方法来变形控制网格,可参考[Müller2004]Müller M.and Gross M.,“Interactivevirtual materials”,Proceedings of the 2004 conference on Graphics interface,239--246,2004和[Huang2006]Huang J.,Liu X.,Bao H.,Guo B.and Shum H.-Y.,“An efficient large deformation method using domain decomposition”,Computers &Graphics,30(6):927--935,2006。
2)建立改进的重心坐标插值函数
为了达到高性能的求值,本方法基于传统的重心坐标插值,中心思想是在每个控制顶点处引入待定的局部变换矩阵建立二次的插值函数,通过优化这些局部变换矩阵来最小化插值函数的一阶不连续,同时也最小化插值函数的二阶导数,避免引入不期望的振动。改进的重心坐标插值函数定义形式如下:
这是一个该函数能够用于变形的重要性质。并且在所有的Mi上加上同一个矩阵T后x(u)不会改变,即:
图3给出了局部变换矩阵如何影响插值结果的一个示例。图3a为原始图像和控制网格,图3b显示了对控制网格进行操作后使用传统重心坐标插值的结果,可以看到插值结果在控制网格边界处存在不连续的现象。为了清楚的显示局部变换矩阵的效果,现仅在图3a中的中心控制顶点处加入了局部变化矩阵M=sRθ-I2×2,其中Rθ表示一个旋转θ角度的变换矩阵,图3c、图3d和图3e显示了之后使用改进的重心坐标插值函数计算得到的插值结果,图3c中取s=1和θ=60°,图3d中取s=0.8和θ=26°,图3e中取s=0.5和θ=0°。视觉上较好的效果是图3c。
为了方便起见改进的重心坐标插值函数可以写成向量的形式,即:
x(u)=A(u)m+B(u)x;
其中m=(M1,...,Mn),x=(x1,...,xn)。A(u)的元素是由ui、和u组成的二次多项式,B(u)的元素是由组成的u的一次多项式,二阶导数形成一个四阶常数张量,而一阶导数形成三阶常数张量,其二阶导数为零张量。
3)建立总能量函数并调整加权系数
为了求得最优矩阵,本方法定义了不连续能量和振动能量两个能量函数,把这两个函数的加权和作为总能量函数。不连续能量用来衡量一阶的梯度不连续程度,振动能量用来衡量函数二阶导数对应的振动程度。
其中i→j表示Ti上与Tj相邻的边界,j→i表示Tj上与Ti相邻的边界。相应地全局不连续能量即定义为控制网格中所有相邻片元对的不连续能量的总和,其形式如下:
其中T表示控制网格的片元的集合,t即为其中的片元,对于二维对象t是平面三角片,对于三维对象t是四面体,相应地|t|即为t的面积或体积。||·||F表示Frobenius范数。利用之前所述的x(u)的性质可知在片元内部Hessian矩阵总为常数。
这样就可以得到如下的总能量函数:
Etotal(x)=αEvibr(x)+βEdisc(x)。
其中α和β是加权系数,如图4所示,可以调整不连续能量和振动能量的比重得到不同的结果。在交互式的应用中可以默认的设置α=1并自动选择一个匹配的β值,例如使得Evibr(x)和Edisc(x)中的Hessian矩阵具有相同的Frobenius范数,然后用户可以手动调整α的值以调整最终结果的连续性和光顺性。图4a给出了一个原始对象,图4b、图4c、图4d中分别取α=100、α=0.25和α=0.01。可以看到随着α的增加插值结果越来越光滑,但是振动也在增加。根据实验发现α=0.2和α=0.1分别对二维图像和三维模型产生最好的效果。
4)求解最优局部变换矩阵并计算变形后的对象
求解改进的重心坐标插值函数中的最优局部变换矩阵,使得总能量Etotal(x)最小,即:
如之前所述的,在所有的Mi上加上任意的同一个矩阵后x(u)不会改变,因此可以令第一个控制顶点的局部变换矩阵为零矩阵,这样可以在求解这个能量最小化问题时避免奇异性。x(u)=A(u)m+B(u)x在Evibr(x)和Edisc(x)中都会消去u,而对m和x而言Etotal(x)则是二次函数,有常数的Hessian矩阵,所以在求最优解的时候只需要解一个稀疏的线性系统,并且为了实现高效的求解,可以预先计算该线性系统矩阵的一个Cholesky分解。
本发明在传统的重心坐标插值函数中的每个控制顶点处引入待定的局部变换矩阵建立一个二次的插值函数;通过求解这些局部变换矩阵的最优解计算优化的插值结果。传统的重心坐标插值方法虽然实现简单,具有很好的局部控制和快速计算的特点,但是由于它在控制网格片元边界处的一阶不连续性,变形结果会在边界处产生明显的不光滑效果。本方法很好了消除了这个缺陷,即使使用非常稀疏的控制网格也能得到光滑的结果,同时本方法也最小化了插值函数的二阶导数,避免了插值结果中出现不期望的振动现象,并且本方法保持了局部控制和快速计算的特点,可以使用图形显示卡高效地实现。
Claims (7)
1.一种基于控制网格的变形方法,其特征在于,包括以下四个步骤:
1)将目标对象嵌入到控制网格中,对控制网格进行变形。
2)根据控制网格的变形,在传统的重心坐标插值函数基础上引入待定的局部变换矩阵,建立改进的重心坐标插值函数。
3)使用改进的重心坐标插值函数建立总能量函数,并根据需要调整其中的加权系数。
4)根据总能量函数求解最优的局部变换矩阵,据此使用改进的重心坐标插值函数计算变形后的对象。
2.根据权利要求1所述的基于控制网格的变形方法,其特征在于,需要变形的目标对象可以是二维图像或者三维网格模型,所建立的控制网格,对于二维图像是平面的三角网格,对于三维网格模型是四面体网格,控制网格需要把整个对象嵌入其中,可以仅具有稀疏的控制顶点。
4.根据权利要求1所述的基于控制网格的变形方法,其特征在于,总能量函数定义为插值函数的不连续能量和振动能量函数的加权和。
5.根据权利要求3和权利要求4所述的一种基于控制网格的变形方法,其特征在于,控制网格的相邻两个片元Ti和Tj的不连续能量定义为插值函数在它们边界处梯度差的模的平方和,其定义形式如下:
其中,i→j表示Ti上与Tj相邻的边界,j→i表示Tj上与Ti相邻的边界。相应地,全局不连续能量定义为控制网格中所有相邻片元对的不连续能量的总和,其形式如下:
6.根据权利要求3和权利要求4所述的一种基于控制网格的变形方法,其特征在于,振动能量的定义形式如下:
其中,T表示控制网格的片元的集合,t即为其中的片元,对于二维对象t是平面三角片,对于三维对象t是四面体,相应地|t|即为t的面积或体积。||·||F表示Frobenius范数。
7.根据权利要求1所述的基于控制网格的变形方法,其特征在于,求解得到的局部变换矩阵应使总能量函数值最小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100994590A CN101587595A (zh) | 2009-06-08 | 2009-06-08 | 一种基于控制网格的变形方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100994590A CN101587595A (zh) | 2009-06-08 | 2009-06-08 | 一种基于控制网格的变形方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101587595A true CN101587595A (zh) | 2009-11-25 |
Family
ID=41371830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009100994590A Pending CN101587595A (zh) | 2009-06-08 | 2009-06-08 | 一种基于控制网格的变形方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101587595A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807290A (zh) * | 2010-03-26 | 2010-08-18 | 浙江大学 | 二维卡通角色形变方法 |
CN101833790A (zh) * | 2010-04-30 | 2010-09-15 | 浙江大学 | 一种基于波动方程的各向异性的四边形网格生成方法 |
CN101833785A (zh) * | 2010-05-11 | 2010-09-15 | 浙江大学 | 一种具有物理真实感的可控动态形状插值方法 |
CN102752549A (zh) * | 2011-05-17 | 2012-10-24 | 新奥特(北京)视频技术有限公司 | 一种基于网格形变的特效的实现方法 |
CN103440680A (zh) * | 2013-08-22 | 2013-12-11 | 浙江大学 | 一种基于一范数优化的Polycube可控生成方法 |
CN104537628A (zh) * | 2015-01-16 | 2015-04-22 | 厦门大学 | 一种冗余可控的动漫图像适配方法 |
CN104851133A (zh) * | 2015-05-25 | 2015-08-19 | 厦门大学 | 一种图像自适应网格生成变分方法 |
CN104915921A (zh) * | 2015-05-25 | 2015-09-16 | 浙江大学 | 基于三角网格变形的内容保持的几何边界图像映射方法 |
CN105354877A (zh) * | 2015-11-09 | 2016-02-24 | 北京航空航天大学 | 一种基于空间填充曲线的经验模态分解和希尔伯特谱计算的三维网格处理方法 |
CN108352080A (zh) * | 2015-11-13 | 2018-07-31 | 微软技术许可有限责任公司 | 使用极坐标嵌入变形网格进行形状插值 |
-
2009
- 2009-06-08 CN CNA2009100994590A patent/CN101587595A/zh active Pending
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807290A (zh) * | 2010-03-26 | 2010-08-18 | 浙江大学 | 二维卡通角色形变方法 |
CN101807290B (zh) * | 2010-03-26 | 2011-12-07 | 浙江大学 | 二维卡通角色形变方法 |
CN101833790A (zh) * | 2010-04-30 | 2010-09-15 | 浙江大学 | 一种基于波动方程的各向异性的四边形网格生成方法 |
CN101833790B (zh) * | 2010-04-30 | 2012-05-23 | 浙江大学 | 一种基于波动方程的各向异性的四边形网格生成方法 |
CN101833785A (zh) * | 2010-05-11 | 2010-09-15 | 浙江大学 | 一种具有物理真实感的可控动态形状插值方法 |
CN102752549B (zh) * | 2011-05-17 | 2017-04-12 | 新奥特(北京)视频技术有限公司 | 一种基于网格形变的特效的实现方法 |
CN102752549A (zh) * | 2011-05-17 | 2012-10-24 | 新奥特(北京)视频技术有限公司 | 一种基于网格形变的特效的实现方法 |
CN103440680A (zh) * | 2013-08-22 | 2013-12-11 | 浙江大学 | 一种基于一范数优化的Polycube可控生成方法 |
CN103440680B (zh) * | 2013-08-22 | 2015-12-02 | 浙江大学 | 一种基于一范数优化的Polycube可控生成方法 |
CN104537628A (zh) * | 2015-01-16 | 2015-04-22 | 厦门大学 | 一种冗余可控的动漫图像适配方法 |
CN104537628B (zh) * | 2015-01-16 | 2017-09-22 | 厦门大学 | 一种冗余可控的动漫图像适配方法 |
CN104851133A (zh) * | 2015-05-25 | 2015-08-19 | 厦门大学 | 一种图像自适应网格生成变分方法 |
CN104915921A (zh) * | 2015-05-25 | 2015-09-16 | 浙江大学 | 基于三角网格变形的内容保持的几何边界图像映射方法 |
CN104851133B (zh) * | 2015-05-25 | 2017-07-18 | 厦门大学 | 一种图像自适应网格生成变分方法 |
CN105354877A (zh) * | 2015-11-09 | 2016-02-24 | 北京航空航天大学 | 一种基于空间填充曲线的经验模态分解和希尔伯特谱计算的三维网格处理方法 |
CN108352080A (zh) * | 2015-11-13 | 2018-07-31 | 微软技术许可有限责任公司 | 使用极坐标嵌入变形网格进行形状插值 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101587595A (zh) | 一种基于控制网格的变形方法 | |
Peyré et al. | Geodesic remeshing using front propagation | |
JP4083949B2 (ja) | 可逆な丸め操作による曲面モデルの生成方法及びその曲面モデルからの格子ポリゴンモデル生成方法及びそれらの方法を実行するための記録媒体、及び曲面モデルの伝送/表示方法 | |
CN107886569B (zh) | 一种基于离散李导数的测度可控的曲面参数化方法及系统 | |
CN112348959A (zh) | 一种基于深度学习的自适应扰动点云上采样方法 | |
CN104156546B (zh) | 基于t样条的汽车覆盖件模具的形面再设计方法 | |
US11893690B2 (en) | 3D reconstruction with smooth maps | |
CN112613206B (zh) | 一种基于各向异性体调和场的附面层网格生成方法 | |
Frisken et al. | Designing with distance fields | |
CN111127658A (zh) | 一种基于点云重建三角网格曲面的保特征曲面重建方法 | |
CN113205609A (zh) | 变形基础学习 | |
CN111581776A9 (zh) | 一种基于几何重建模型的等几何分析方法 | |
CN108986218A (zh) | 一种基于pmvs的建筑物密集点云快速重建方法 | |
CN113378448A (zh) | 确定3d建模对象变形 | |
JP3208358B2 (ja) | メッシング方法及びコンピュータ | |
Huang et al. | Efficient mesh deformation using tetrahedron control mesh | |
CN112991504B (zh) | 一种改进的基于tof相机三维重建的补空洞方法 | |
CN103325086B (zh) | 一种基于四面体坐标系的三维图形的变形方法 | |
CN109840924B (zh) | 一种基于串联对抗网络的产品图像快速生成方法 | |
CN111400788B (zh) | 一种适用于3d打印的交互式3d浮雕方法 | |
CN105184868A (zh) | 一种基于三维实体模型的三角形表面网格生成方法 | |
Shimada | Current trends and issues in automatic mesh generation | |
CN110610040B (zh) | 一种多相材料梯度点阵结构设计方法 | |
CN113808006A (zh) | 一种基于二维图像重建三维网格模型的方法及装置 | |
CN113936117A (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20091125 |