一种基于线性旋转不变微分坐标的可交互几何变形方法

文档序号:6378646阅读:194来源:国知局
专利名称:一种基于线性旋转不变微分坐标的可交互几何变形方法
—种基于线性旋转不变微分坐标的可交互几何变形方法技术领域
本发明属于计算机虚拟现实技术领域,特别是一种基于线性旋转不变微分坐标的可交互几何变形方法,应用于计算机动画技术中。
背景技术
随着计算机科学在硬件和软件方面的飞速发展,计算机图形学在现代社会的各个领域都扮演着重要的角色。对现有的简单物体进行变形以得到复杂物体,以及通过变形技术来交互地实现动画效果更是成为最近图形学领域研究的热点和重点。如何保持模型细节的交互式网格变形技术成为近年来几何处理领域的热门研究问题。
现有的网格变形工作从几何角度大致分为自由变形、多分辨率变形和基于微分域变形3类。自由变形技术将物体嵌入到一个容器里,通过操作容器达到变形和编辑的目的。 虽然自由变形技术具有便于用户交互和高效实用的优势,但很难保持模型的几何细节。多分辨率技术将原网格分解为光滑的基网格和高频细节,然后将高频细节叠加在变形后的基网格上得到变形模型。该方法虽然能保持模型的局部几何细节,但在叠加高频细节时并没有考虑基网格与之的关系,在较大变形时会出现细节扭曲等现象。近年来流行起来的微分域网格变形技术与前两者相比具有保持细节的性能,越来越多的国内外研究人员正不断投入此方法的研究中。
基于微分坐标的变形技术用局部微分坐标表示几何细节,将变形视为一个能量优化问题,在满足用户约束的条件下尽可能地保持这些反应几何细节的微分坐标,通过求解常系数线性方程组或非线性优化来拟合改变的微分坐标。基于微分的网格变形因其简单、 健壮的性能优势,成为近年来网格变形的主流算法。
但由于定义在全局坐标系的微分坐标不是旋转不变的,仅仅保持微分坐标不变的网格变形会产生扭曲的变形。传统的工作是围绕如何更好的逼近变形网格的微分坐标,一般从一个最小二乘优化的角度隐式地拟合一个较为合适的变形矩阵,这种方法并没有从根本上解决问题,在大角度旋转变形时会产生严重的扭曲,不能维持三维网格模型的视觉可信度,使得三维网格模型编辑操作效果受到影响。发明内容
本发明的技术解决问题为了克服大角度旋转变形时产生的严重扭曲,达到较好的变形效果,提出了一种基于线性旋转不变微分坐标的可交互几何变形方法,该方法建立起旋转不变微分坐标,同时可以实时地由用户采用交互方式给出约束,使用户在进行产品设计、动画角色创作时,可通过对三维网格模型进行变形操作,达到对产品进行实时调整和修改的目的。
本发明的技术解决方案一种基于线性旋转不变微分坐标的可交互几何变形方法,其特点在于步骤如下
(I)计算原始网格模型曲面离散基本系数
对原始网格模型曲面的微分结构进行分解,提取出与点的参数选取及点的坐标系都无关的刚体运动不变量,称为离散基本系数;所述离散基本系数将用作建立网格模型中点的局部标架及点方程;
(2)建立点的局部标架
对于原始网格模型中任意一个点,根据该点的法向量及该点的主方向,构造出原点置于该点的右手笛卡尔坐标系,称为点的局部标架;计算网格模型曲面中任意两个相邻点之间的局部标架矢量差,得到相邻点之间的局部标架差;
(3)确定并求解离散曲面方程
根据网格模型曲面中任意相邻点之间的局部标架差,确定离散曲面方程,离散曲面方程的求解结果为变形后的网格模型中点的局部标架,称为点的新的局部标架;
(4)建立点方程
对于网格模型中的任一点,将步骤(I)中求出的原始网格模型中的离散基本系数, 看作该点到该点相邻点构成的向量在该点新的局部标架中的坐标;相邻点之间的关系,构成一个方程组,方程组的未知数是变形后点的坐标,该方程组称为点方程;
(5)计算变形效果
将用户交互信息作为约束值,生成点方程组右端向量进行回代求解;计算结果为变形后网格模型中点的位置;实时地由用户采用交互方式给出约束,使用户在进行产品设计、动画角色创作时,通过对三维网格模型进行变形操作,达到对产品进行实时调整和修改的目的。
所述步骤(I)的具体实现如下
(I)对于原始网格模型曲面,所述曲面中任一点的切平面由该点的单位法向量确定,该点的单位法向量是两个参数偏导矢量的线性组合,该网格模型曲面中任一点的切平面与该点的参数选取无关,点的切平面可用作计算刚体运动不变量;
(2)将原始网格模型曲面在任意点附近泰勒展开,泰勒表达式最末包含有参数二次增量的高阶无穷小,不予以考虑,则该网格模型曲面上的点可近似的代替曲面上该点附近的点,该点的切平面为原始网格模型的一次切平面;由一次切平面确定一个二次曲面; 二次曲面在原始网格模型的法方向的投影称为二次切面,二次切面将用来计算刚体运动不变量;
(3)由原始网格模型中点的一次切平面和二次切平面的关系,说明曲面上点的微分区域存在局部标架,该区域的点在该局部标架中分布;
(4)已知原始网格模型中任一点在原始网格模型中的位置,可表示出从原始网格模型中任一点到该点的相邻点发出的向量,确定该点的切平面和法向量;
(5)对原始网格模型曲面中任一点的切平面方向和法向量方向进行参数化,依次计算出点到其所有相邻点构成的向量在切平面上的投影,该投影的长度和相邻点投影之间的夹角属于切面方向的离散量;点到相邻点构成的向量在法向量方向上的投影,属于法向上的离散量;切面方向和法向上的离散量是与该点的参数选取及该点的坐标系都无关的刚性运动不变量,这些离散量称为离散基本系数。
所述步骤(2)的具体实现如下
(I)首先计算原始网格模型中任一点的所有相邻点离开该点切平面的高度角;
( 2 )选取相邻点中高度角最大的一个,将该点与该相邻点构成的向量称为该顶点的主方向;
(3)对于原始网格模型中的任一点,将所有包含该点的面的法向量与面的面积做加权作为该点的法向量;
(4)以指向顶点主方向的相邻点构成的向量,在切平面上的投影边作为标架的X 轴,将一个同时垂直于X轴和法向量的单位向量作为y轴,则X轴、y轴及法向量的单位向量构成了一个右手坐标基,称为坐标架;将该右手坐标基标准化,就是该点处的局部标架。
所述步骤(3)中确定并求解离散曲面方程的步骤如下
(I)相邻点之间的局部标架差亦可仅由当前该点的局部标架表示,将这种表示方式代入相邻点之间的局部标架矢量差的表示方式,得到两个相邻点坐标架之间的关系;
(2)对于模型中的每个点与它相邻点的关系,构成一个方程组,它的未知数是变形后的网格模型中点的局部标架,该方程组称为离散曲面方程;
(3)求解该离散曲面方程组时,需要将用户交互作为约束值,以生成方程组右端向量进行回代求解,求解结果为变形后的网格模型中点的局部标架,称为点的新的局部标架。
本发明与现有技术相比的有益效果在于本发明首先提取出网格中刚体运动不变量,建立起旋转不变微分坐标,使得对曲面进行大角度旋转等变换时能达到较好的变形效果;同时可以实时地由用户采用交互方式给出约束,使用户在进行产品设计、动画角色创作时,可通过对三维网格模型进行变形操作,达到对产品进行实时调整和修改的目的。


图I为本发明的整体过程示意图2为本发明的曲面微分结构示意图3为本发明的点的局部标架的示意图4为本发明的曲面中任意相邻点之间的局部标架差的示意图5为本发明的实施例效果示意图;左侧为原始网格模型,右侧为变形后新的模型效果。
具体实施方式
下面结合附图与实施例对本发明作进一步详细描述
本发明实施过程包括五个主要步骤计算原始网格模型曲面离散基本系数,建立点的局部标架,确定并求解离散曲面方程,建立点方程,计算变形效果。如图I所示。
步骤一,计算原始网格模型曲面离散基本系数。
对曲面的微分结构进行分解,对于三维网格模型曲面P(U1,U2) ((U17U2)表示曲面的曲纹参数),曲面的切平面与参数选取无关,对其上任一点P15 =,此处单位法向量η 为
该点的切平面就可由η来确定,它是两个参数偏导矢量I, &的线性组合。将P (U17U2)在Ptl点附近泰勒展开,最末包含有参数二次增量的高阶无穷小,可不予以考虑。 则K/上的点可近似的代替曲面S上Ptl点附近的点,称^为S的一次切平面。由一次切平面可精确定义一个二次曲面Q,Q可更好的近似替代曲面S上Ptl附近的点;Q在S的法方向的投影称为二次切面。
如图2所示,给定第i个点它在模型中的位置为f用
权利要求
1.一种基于线性旋转不变微分坐标的可交互几何变形方法,其特征在于步骤如下(O计算原始网格模型曲面离散基本系数对原始网格模型曲面的微分结构进行分解,提取出与点的参数选取及点的坐标系都无关的刚体运动不变量,称为离散基本系数;所述离散基本系数将用作建立网格模型中点的局部标架及点方程;(2)建立点的局部标架对于原始网格模型中任意一个点,根据该点的法向量及该点的主方向,构造出原点置于该点的右手笛卡尔坐标系,称为点的局部标架;计算网格模型曲面中任意两个相邻点之间的局部标架矢量差,得到相邻点之间的局部标架差;(3)确定并求解离散曲面方程根据网格模型曲面中任意相邻点之间的局部标架差,确定离散曲面方程,离散曲面方程的求解结果为变形后的网格模型中点的局部标架,称为点的新的局部标架;(4)建立点方程对于网格模型中的任一点,将步骤(I)中求出的原始网格模型中的离散基本系数,看作该点到该点相邻点构成的向量在该点新的局部标架中的坐标;相邻点之间的关系,构成一个方程组,方程组的未知数是变形后点的坐标,该方程组称为点方程;(5)计算变形效果将用户交互信息作为约束值,生成点方程组右端向量进行回代求解;计算结果为变形后网格模型中点的位置;实时地由用户采用交互方式给出约束,使用户在进行产品设计、动画角色创作时,通过对三维网格模型进行变形操作,达到对产品进行实时调整和修改的目的。
2.根据权利要求I所述的基于线性旋转不变微分坐标的可交互几何变形,其特征在于所述步骤(I)的具体实现如下(1)对于原始网格模型曲面,所述曲面中任一点的切平面由该点的单位法向量确定,该点的单位法向量是两个参数偏导矢量的线性组合,该网格模型曲面中任一点的切平面与该点的参数选取无关,点的切平面可用作计算刚体运动不变量;(2)将原始网格模型曲面在任意点附近泰勒展开,泰勒表达式最末包含有参数二次增量的高阶无穷小,不予以考虑,则该网格模型曲面上的点可近似的代替曲面上该点附近的点,该点的切平面为原始网格模型的一次切平面;由一次切平面确定一个二次曲面;二次曲面在原始网格模型的法方向的投影称为二次切面,二次切面将用来计算刚体运动不变(3)由原始网格模型中点的一次切平面和二次切平面的关系,说明曲面上点的微分区域存在局部标架,该区域的点在该局部标架中分布;(4)已知原始网格模型中任一点在原始网格模型中的位置,可表示出从原始网格模型中任一点到该点的相邻点发出的向量,确定该点的切平面和法向量;(5)对原始网格模型曲面中任一点的切平面方向和法向量方向进行参数化,依次计算出点到其所有相邻点构成的向量在切平面上的投影,该投影的长度和相邻点投影之间的夹角属于切面方向的离散量;点到相邻点构成的向量在法向量方向上的投影,属于法向上的离散量;切面方向和法向上的离散量是与该点的参数选取及该点的坐标系都无关的刚性运动不变量,这些离散量称为离散基本系数。
3.根据权利要求I所述的基于线性旋转不变微分坐标的可交互几何变形,其特征在于所述步骤(2)的具体实现如下(O首先计算原始网格模型中任一点的所有相邻点离开该点切平面的高度角;(2)选取相邻点中高度角最大的一个,将该点与该相邻点构成的向量称为该顶点的主方向;(3)对于原始网格模型中的任一点,将所有包含该点的面的法向量与面的面积做加权作为该点的法向量;(4)以指向顶点主方向的相邻点构成的向量,在切平面上的投影边作为标架的X轴,将一个同时垂直于X轴和法向量的单位向量作为y轴,则X轴、y轴及法向量的单位向量构成了一个右手坐标基,称为坐标架;将该右手坐标基标准化,就是该点处的局部标架。
4.根据权利要求I所述的基于线性旋转不变微分坐标的可交互几何变形,其特征在于所述步骤(3)中确定并求解离散曲面方程的步骤如下(1)相邻点之间的局部标架差亦可仅由当前该点的局部标架表示,将这种表示方式代入相邻点之间的局部标架矢量差的表示方式,得到两个相邻点坐标架之间的关系;(2)对于模型中的每个点与它相邻点的关系,构成一个方程组,它的未知数是变形后的网格模型中点的局部标架,该方程组称为离散曲面方程;(3)求解该离散曲面方程组时,需要将用户交互作为约束值,以生成方程组右端向量进行回代求解,求解结果为变形后的网格模型中点的局部标架,称为点的新的局部标架。
全文摘要
一种基于线性旋转不变微分坐标的可交互几何变形方法,属于计算机虚拟现实技术领域,首先对网格模型的微分结构进行分解,得到网格中的刚体运动不变量,即离散基本系数,然后对网格中任一点的法向量及该点与该点周围点的关系建立起模型中点的局部标架,以进行后续的变形结果求解。本发明建立了一种线性旋转不变微分坐标,使得对曲面进行平移和旋转等大角度变换时,实时地由用户采用交互方式给出约束,使用户在进行产品设计、动画角色创作时,通过对三维网格模型进行变形操作,达到对产品进行实时调整和修改的目的。
文档编号G06T13/20GK102930586SQ201210384710
公开日2013年2月13日 申请日期2012年10月11日 优先权日2012年10月11日
发明者沈旭昆, 连芳, 赵凌, 张凤全 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1