首页> 中国专利> 一种基于逆Loop细分的渐进网格生成方法

一种基于逆Loop细分的渐进网格生成方法

摘要

本发明公开了一种基于逆Loop细分的渐进网格生成方法,它属于几何体造型技术领域,特别是涉及一种基于三角形网格的曲面简化方法。对于任意具有细分连接性的三角网格M

著录项

  • 公开/公告号CN1975786A

    专利类型发明专利

  • 公开/公告日2007-06-06

    原文格式PDF

  • 申请/专利权人 中山大学;

    申请/专利号CN200610124152.8

  • 发明设计人 马建平;罗笑南;

    申请日2006-12-11

  • 分类号G06T17/00;

  • 代理机构广州市深研专利事务所;

  • 代理人陈雅平

  • 地址 510275 广东省广州市新港西路135号

  • 入库时间 2023-12-17 18:42:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-02-04

    未缴年费专利权终止 IPC(主分类):G06T17/00 授权公告日:20090311 终止日期:20131211 申请日:20061211

    专利权的终止

  • 2009-03-11

    授权

    授权

  • 2007-08-01

    实质审查的生效

    实质审查的生效

  • 2007-06-06

    公开

    公开

说明书

技术领域

本发明属于几何体造型技术领域,特别是涉及一种基于三角形网格的曲面简化方法。

背景技术

三维图形的表示通常是对三角形网格进行渲染而得到的。在几何造型中,为了使所描述的三维图形具有较强真实感和光滑度,常常需要高度复杂和高度细节化的三角网格模型。曲面细分是一种非常成熟的生成几何造型的方法,所生成的网格是重新网格化的网格(Remesh),具有细分连通性的,并且易于网格编辑和网格分裂等操作。另一方面,随着三维扫描设备的普及,高密度任意拓扑网格数据的获取变得越来越容易。然而,这些网格数据并不具有细分连接性,需要对网格数据进行重新网格化。另外,即使网格的拓扑具有细分连接性,其网格的数据也不可能正好是某一细分模式的极值曲面,网格数据与细分曲面的差作为曲面细分数据保存,根据需要进行取舍处理。

重新网格化是任意拓扑网格多分辨率分析的重要一环。Matthias Eck最早引入细分方法重采样对任意网格进行多分辨率分析。此方法对原始网格M,选择一个适当的初始网格M0作为参数域对M进行参数化,然后对M0用细分进行重采样,得到具有细分连通性的新网格。Aaron Lee等人通过建立任意拓扑网格的多分辨率参数曲面(MAPS)给出了一种重新网格化的方法;Kobbelt等人提出了一种称为收缩包围(Shrink wrapping)的重新网格化方法,周海等提出了利用细分曲面重建网格的方法;李桂清等分析了带尖锐特性的细分曲面,给出了曲面拟合的方法。上述方法均能较好地生成具有细分连通性的Remesh。

Hoppe首先提出了渐进网格(Progressive Mesh)的概念,并用渐进网格把任意网格表示成高效、无损并具有连续分辨率的编码,同时给出了渐进网格有效的实施方法。罗笑南等提出了基于插值型逆蝶形细分的渐进网格生成算法,并渐进网格应用于移动环境下的图形传输和图形渲染,解决了移动设备上的三维图形显示问题,但是蝶形细分顶点的仿射组合相关2-邻域的顶点,且相关联的顶点数目较多,大大影响了渐进网格生成和图形渲染速度。

发明内容

本发明针对以上的不足,提出了一种基于逆Loop细分的渐进网格生成方法,首先将网格中的冗余信息分批删除;最后形成由一个基网格和一系列误差值组成的渐进网格。本发明适用于具有细分连通性的三角形网络,对于任意网格首先要做预处理。本算法将逼近型细分模式在逆细分过程中作为插值型细分模式处理,算法适用于插值型、逼近型等多种细分模式,文中以Loop逆细分为例对算法加以说明。另外,由于Loop细分模式的顶点仿射组合相关联的顶点数目少,使得网格简化和网格重建过程的运算速度相对较快,在实际应用中更为有效。

为了实现发明目的,采用的技术方案为:

在三角网格中,与六条边相连的顶点定义为正则点,所有顶点都是正则点的网格定义为正则网格,多数顶点为正则点的网格为半正则网格,通常在任意曲面的三角网格中均含有奇异点。

基于逆Loop细分的渐进网格生成方法的主要步骤包括:

1)网格分裂:将已有的三角网格的顶点分裂成奇点集ODDj和偶点集EVENj

2)奇点预测:为了三维曲面造型的网格还原和重建,在删除奇点之前,对每个奇点,采用Loop细分预测其位置ODD′,将现有的各个奇点ODDj与预测值对应相减得到一组误差值ej

3)网格更新:删除掉奇点集ODDj后,剩余的偶点集EVENj形成下一层的顶点Pj-1,更新这些顶点的连接信息组成新的三角形集Kj-1,生成了一个简化后的新网格;

4)循环上述步骤,直到最终网格不能分裂,生成基网格及一系列误差值。

所述步骤1)网格分裂的分裂规则为:

a、选网格上任意一个奇异点为偶点归为偶点集;

b、将与奇异点相邻的所有邻接点归为奇点集;

c、对这些奇点外围与本偶点对称位置的对称点设为偶点,归为偶点集;

d、递归调用偶点集中的偶点,首先将其相邻的所有邻接点归为奇点集,再将这些奇点外围与该偶点对称位置的对称点设为偶点,归为偶点集,直到网格中所有顶点分裂完毕。

所述步骤2)奇点预测过程中的误差值ej的计算方法为:

>>>e>i>j>>=>OD>>D>i>j>>->OD>>D>I>′> >s>

其中,j表示网格层数,i表示第j层网格的奇点数。

附图说明

图1为基于逆Loop细分的渐进网格生成方法流程图;

图2为半正则网格简化示意图;

图3为顶点关系示意图;

图4为预测与更新示意;

图5为头像模型渐进网格(顶点数/三角面数)示意图;

图6为e-Sphere模型渐进网格(顶点数/三角面数)示意图。

具体实施方式

下面结合附图对本方法进行进一步阐述。

如图1所示为基于逆Loop细分的渐进网格生成方法流程图。

设三角网格M=(P,K),其中P表示三角网格顶点坐标的集合,Pi=(xi,yi,zi)(1≤i≤n),K表示含有网格拓扑信息的所有三角形集合。

本算法的主要目标就是将原始网格Mn(Pn,Kn)生成为同构的Mj(Pj,Kj)(1≤j≤n),其中M0=(P0,K0)为基网格。

设初始曲面网格为Mn,经过一次简化后得到Mn-1,对于第j层网格为Mj,每次网格简化包括以下三个过程。

(1)网格分裂:将已有的三角网格的顶点分裂成奇点集ODDj和偶点集EVENj。由于三维图形网格都存在奇异点,而奇异点通常表示曲面的尖锐特性,需要全部保留下来。故在实施时首先选网格上任意一个奇异点为偶点v归为偶点集,然后将与奇异点相邻的所有邻接点va归为奇点集,对这些奇点外围与本偶点对称位置的对称点vs设为偶点,归为偶点集,各顶点位置的关系见图3所示。设置偶点是利用递归调用,直到网格中所有顶点分裂完毕,算法如下:

找任意奇异点v;

{如果v已经在偶点集中,返回成功;

如果v已经在奇点集中,返回失败;

设置v到偶点集SetEvenVertex(v);

对于v的每一个相邻点va

{如果va是奇异点或者va已经在偶点集中,返回失败;

设置va到奇点集SetOddVertex(va);

找到va和v的对称点vs;

设置vs到偶点集SetEvenVertex(vs);

}

返回成功

}

图2是半正则网格经过二次简化的示意。阴影三角形的顶点是各层网格的奇点ODD,其余点为偶点EVEN。所有的奇点是冗余的信息,可以删除,而保留所有的偶点,以达到网格的简化。观察图2(a)可以发现,奇点、偶点有规律地分布在三角网格中。图中阴影的三角形是由奇点组成的三角形,可以删除。

(2)奇点预测:为了三维曲面造型的网格还原和重建,在删除奇点之前,对每个奇点,采用Loop细分预测其位置ODD′,如图4所示。将现有的各个奇点ODDi与预测值对应相减得到一组误差值ej

>>>e>i>j>>=>OD>>D>i>j>>->OD>>D>i>′> >s>

其中,j表示网格层数,i表示第j层网格的奇点数。图4(a)中O点为奇点,E点为偶点,图4(b)是删除O点前,用细分模式预测得到点O’,每个奇点O与其相应的预测点O’的差值即得到误差值ej集。

(3)网格更新:删除掉奇点集ODDj后,剩余的偶点集EVENj形成下一层的顶点Pj-1,更新这些顶点的连接信息组成新的三角形集Kj-1,生成了一个简化后的新网格Mj-1=(Pj-1,Kj-1)。图4(c)示意删除奇点后重建的网格。

重复上述三步,将复杂的初始网格数据Mn简化到网格M0。每一层次的网格简化,奇点的坐标并不需要改变。简化后的数据得到一个基网格和一系列误差集ej的数据,构成多个层次的数据:M0→e1→e2→...→en-2→e-1,生成了渐进网格,即(M0,e0)生成M1,(M1,e1)构成M2,...,(Mn-1,en-1)可还原Mn,渐进网格见表1。

             表1由基网格和误差组成的渐进网格

   渐进网格  Mn   Mn-1 ...   M1   M0   误差值   en-1 ...   e1   e0 

如图5、图6所示为头像模型渐进网格(顶点数/三角面数)示意图和e-Sphere模型渐进网格(顶点数/三角面数)示意图,实验表明,本算法效率高,与以往的算法相比,速度快,更易于在实际应用中使用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号