一种适用于带纹理模型的三维模型简化方法技术

技术编号:9895670 阅读:342 留言:0更新日期:2014-04-09 21:41
本发明专利技术公开了一种适用于带纹理模型的三维模型简化方法,其步骤为:1、获取三维模型网格信息;2、自动标记出可合并和不可合并的三角形;3、对可合并的三角形,计算其合并操作代价;4、确定合并操作代价最小的三角形,执行合并操作,更新受影响的三角形合并操作代价;5、如果剩余三角形数目达到要求或者模型无法继续简化,转步骤6,否则转步骤4;6、简化结束,输出模型。纹理映射是模型视觉效果中很重要的一个部分,本发明专利技术提出了一种适用于带纹理模型的三角形合并代价准则,把三角形合并的二次误差和纹理变化量度量结合起来作为三角形的合并代价,不仅考虑了几何误差,还考虑了纹理变化因素,在简化的同时尽可能保持原模型的纹理映射效果,从而保证简化前后模型视觉效果变化较小。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了,其步骤为:1、获取三维模型网格信息;2、自动标记出可合并和不可合并的三角形;3、对可合并的三角形,计算其合并操作代价;4、确定合并操作代价最小的三角形,执行合并操作,更新受影响的三角形合并操作代价;5、如果剩余三角形数目达到要求或者模型无法继续简化,转步骤6,否则转步骤4;6、简化结束,输出模型。纹理映射是模型视觉效果中很重要的一个部分,本专利技术提出了一种适用于带纹理模型的三角形合并代价准则,把三角形合并的二次误差和纹理变化量度量结合起来作为三角形的合并代价,不仅考虑了几何误差,还考虑了纹理变化因素,在简化的同时尽可能保持原模型的纹理映射效果,从而保证简化前后模型视觉效果变化较小。【专利说明】
本专利技术属于图像处理领域,主要涉及到带纹理的三维网格模型的简化方法。
技术介绍
随着网络技术的飞速普及,以及用户需求的提升,网络传输的内容逐步由静态二维图像向三维立体图像转变。为了能够有效提高数据传输效率以及显示速度,通常需要对三角形网格模型进行简化,用较少的三角形面片来构成模型网格。网格简化方法一般可以分为以下四类:采样、自适应细分、删除和顶点合并。其中,顶点合并方法的基本原理是将模型中的两个或多个顶点收缩到一个顶点,通过合并顶点来减少三角形的个数,特点是方法清楚,易于实现,但是必须采用不同的策略来判断按照什么顺序进行合并。由于顶点合并的简单性和健壮性,它已经成为三维模型网格简化的主要方法。顶点合并根据合并元素的不同,分为:边折叠、三角形折叠等。 现有的网格简化方法大部分都只度量简化前后的几何误差,不考虑其他属性,如法向量、纹理的变化。Garland提出了二次误差测度的边折叠算法。这种算法速度快,简化模型质量高,目前被广泛引用和改进。随后,Garland在自己的工作基础上进行改进,提出了一种带颜色和纹理的QEM边折叠算法。Hoppe在该方法基础上又进行了改进,修改了带属性的QEM,并加上了面积权重,取得了更好的效果。前述现有的带纹理的网格简化方法都是基于边折叠算法的,边折叠算法在迭代过程中是以边为单位进行迭代排序的,应用该方法有个隐含条件,即:法向量和纹理坐标跟顶点是一一对应的,顶点个数与法向量和纹理个数是一致的。边折叠操作如图2所示。V1的相邻三角形有 5 个,分别记为 V2 v3), b (V1 V3 v4), c (Vi V4 v5), (Kv1 V5 v6), e (V1 V6v2)。V1几何坐标记为(vlx, vly, vlz),在三角形a中的法向量记为(nlax, nlay, nlaz),在三角形a中的纹理坐标记为(ulax,Ulay),在其他三角形中以此类推。如果不考虑法向量和纹理,在不同的三角形中V1的几何坐标保持一致。在应用Garland边折叠网格简化方法时,V1坐标为(vlx, vly, vlz)。如果需要考虑纹理,V1坐标需要扩展为(vlx, vly, vlz, ulx, Uly),如果需要考虑法向量,那么V1坐标需要扩展为(vlx,vly, vlz, nlx, nly, nlz)。如果法向量和纹理坐标的索引是按三角形排列,即在不同的三角形中法向量和纹理坐标的索引与顶点索引不一致,那么这里的Ulx和Uly可能无法取值,因为可能出现Ulax Φ Ulbx Φ Ulcx关…。因此,如果应用基于边折叠的方法进行带纹理网格简化,必须保证每个顶点只对应一个法向量和纹理坐标。那么,应用Garland基于边折叠方法进行带纹理网格简化的前提条件是该三维网格模型法向量队列、纹理队列各自的长度与顶点队列长度相同,且在每个三角形中,法向量和纹理的索引与三角形顶点索引保持一致。但在实际应用中,常常出现几何坐标与法向量和纹理坐标不对应的情况,即同一顶点在不同的三角形中可以应用不同的法向量和不同的纹理坐标。以表述三维网格模型的文件格式之一:0BJ文件格式为例,在该文件格式中,每个三角形都有9个索引值,按照a/uva/na/b/uvb/nb/c/uvc/nc格式排列,其中a, b, c代表三个顶点的坐标索引,uva, uvb, uvc代表三个顶点的纹理坐标索引,na,nb,nc表示三个顶点的法向量索引,不同的队列长度,不同的索引值,必然导致在不同三角形中顶点的法向量和纹理坐标不一致。
技术实现思路
针对现有技术中存在的问题,本专利技术提出了,该方法采用基于三角形合并的简化策略,在迭代过程中以三角形为单位进行迭代排序,避免了顶点纹理坐标在不同三角形中不一致时难以处理的问题,同时,针对三角形合并的特点,提出了一种适应三角形合并简化方法的简化准则进行三维模型网格简化。本专利技术的技术解决方案是:,其步骤为:步骤1:导入三维模型,建立模型的拓扑关系,根据相邻三角形的拓扑结构,标记每个顶点是否为边界顶点或复杂顶点;步骤2:遍历三维模型中所有三角形,自动标记出不可以合并和可以合并的三角形;步骤3:对不可以合并的三角形,把其合并操作代价AM设为最大值MAX ;对可以合并的三角形,计算每个三角形的面积Sv、三角形映射纹理区域的面积Stex,并进一步计算其相对最优合并点Vtl和合并操作代价AM ;步骤4:对步骤3中所有三角形的合并操作代价Λ M按从小到大进行排序,放入一个优先队列Q中;步骤5:执行队列最顶端的最小AM对应的三角形合并操作,更新该操作所影响到的所有三角形的合并代价值AM,同时根据AM更新这些三角形在优先队列Q中的位置;步骤6:重复步骤5直到用于表达模型的三角形数目达到预定要求或者队列Q中不存在可合并的三角形。所述步骤2中不可以合并和可以合并的三角形判定方法具有如下特点:对三角形中每个顶点,读取所述步骤I中标记的顶点属性,根据顶点属性决定该三角形是否可以合并:如果三角形三个顶点都为边界顶点,那么该三角形为不可以合并的三角形;如果三角形中任一顶点为复杂顶点,那么其相邻三角形均为不可以合并的三角形;如果三角形三个顶点均不属于上述两种情况,那么三角形为可合并三角形。所述步骤3中,合并操作代价Λ M的计算方法如下:合并代价引入了 Garland算法中的二次误差度量,在该度量的基础上加上了纹理变化因子,三角形三个顶点记为Vl,V2, V3,具体计算公式如下:【权利要求】1.,其特征在于,其步骤为: 步骤1:导入三维模型,建立模型的拓扑关系,根据相邻三角形的拓扑结构,标记每个顶点是否为边界顶点或复杂顶点; 步骤2:遍历三维模型中所有三角形,自动标记出不可以合并和可以合并的三角形; 步骤3:对不可以合并的三角形,把其合并操作代价AM设为最大值MAX;对可以合并的三角形,计算每个三角形的面积Sv、三角形映射纹理区域的面积Stex,并进一步计算其相对最优合并点%和合并操作代价ΔM ; 步骤4:对步骤3中所有三角形的合并操作代价AM按从小到大进行排序,放入一个优先队列Q中; 步骤5:执行队列最顶端的最小AM对应的三角形合并操作,更新该操作所影响到的所有三角形的合并代价值AM,同时根据AM更新这些三角形在优先队列Q中的位置; 步骤6:重复步骤5直到用于表达模型的三角形数目达到预定要求或者队列Q中不存在可合并的三角形。2.根据权利要求1所述的三维模型简化方法,其特征在于:所述步骤2中不可以合并和可以本文档来自技高网
...

【技术保护点】
一种适用于带纹理模型的三维模型简化方法,其特征在于,其步骤为:步骤1:导入三维模型,建立模型的拓扑关系,根据相邻三角形的拓扑结构,标记每个顶点是否为边界顶点或复杂顶点;步骤2:遍历三维模型中所有三角形,自动标记出不可以合并和可以合并的三角形;步骤3:对不可以合并的三角形,把其合并操作代价ΔM设为最大值MAX;对可以合并的三角形,计算每个三角形的面积Sv、三角形映射纹理区域的面积Stex,并进一步计算其相对最优合并点v0和合并操作代价ΔM;步骤4:对步骤3中所有三角形的合并操作代价ΔM按从小到大进行排序,放入一个优先队列Q中;步骤5:执行队列最顶端的最小ΔM对应的三角形合并操作,更新该操作所影响到的所有三角形的合并代价值ΔM,同时根据ΔM更新这些三角形在优先队列Q中的位置;步骤6:重复步骤5直到用于表达模型的三角形数目达到预定要求或者队列Q中不存在可合并的三角形。

【技术特征摘要】

【专利技术属性】
技术研发人员:唐慧王征朱春雷
申请(专利权)人:焦点科技股份有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1