CN109118588A - 一种基于块分解的彩色lod模型自动生成方法 - Google Patents

一种基于块分解的彩色lod模型自动生成方法 Download PDF

Info

Publication number
CN109118588A
CN109118588A CN201811113716.7A CN201811113716A CN109118588A CN 109118588 A CN109118588 A CN 109118588A CN 201811113716 A CN201811113716 A CN 201811113716A CN 109118588 A CN109118588 A CN 109118588A
Authority
CN
China
Prior art keywords
model
patch
texture
lod
block
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
Application number
CN201811113716.7A
Other languages
English (en)
Other versions
CN109118588B (zh
Inventor
黄先锋
张帆
高云龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhai Dashi Intelligence Technology Co ltd
Wuhan University WHU
Original Assignee
Wuhan General Trend Of Events Wisdom Science And Technology Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan General Trend Of Events Wisdom Science And Technology Ltd filed Critical Wuhan General Trend Of Events Wisdom Science And Technology Ltd
Priority to CN201811113716.7A priority Critical patent/CN109118588B/zh
Publication of CN109118588A publication Critical patent/CN109118588A/zh
Application granted granted Critical
Publication of CN109118588B publication Critical patent/CN109118588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Image Generation (AREA)

Abstract

本发明属于大数据三维显示技术领域,具体涉及一种基于块分解的彩色LOD模型自动生成方法,该方法首先对彩色模型进行白模简化,然后进行三角网格聚类并分Patch,给每个Patch重映射上比原模型更低分辨率的纹理,最后合并每个Patch纹理形成一个层级的简化的带纹理的模型,并通过此方法获得多层次的简化彩色模型,最终由获得的多层次的简化彩色模型生成彩色LOD模型。该方法解决了彩色模型因无有效的简化方法,从而限制了大数据彩色模型的实时浏览应用的技术问题,使彩色LOD模型生成技术效率高、效果好、依赖少,只需要输入原始的彩色模型,就可以生成多层次的LOD,实现模型显示效果和计算机资源消耗的综合最优。

Description

一种基于块分解的彩色LOD模型自动生成方法
技术领域
本发明属于大数据三维显示技术领域,具体涉及一种基于块分解的彩色 LOD模型自动生成方法。
背景技术
LOD技术根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算,是大数据三维显示必不可少的技术。当模型很大时,计算机资源受限,无法实时进行数据绘制。为了解决以上问题,通常对模型实现如下的显示策略:
1.根据观察者与模型距离的变化显示不同复杂度的模型,当模型远离观察者时,调用低精细度的模型,当模型靠近观察者,调用高精细度的模型。
2.***仅仅加载模型在视窗范围内可见的那部分。
为了实现策略1,需要对彩色模型进行不同层次的简化,生成不同层次简化的彩色模型。为了实现策略2,需要我们对各个层次的模型进行分割并通过树状结构进行层级组织,以视域分析方法,实现模型的部分加载与显示,LOD层级关系如图1所示。图1中LOD的第一层级是一个根节点A,它的几何和纹理细节最粗糙,向下拥有一个子节点B,子节点B的几何和纹理比父节点A复杂一些。子节点B向下拥有两个子节点C和D,分别是模型的一半,但几何纹理比其父节点B更精细。同时C、D两个子节点分别二分后,各自又拥有两个子节点,第四层级是四个几何纹理最精细的叶子节点E、F、G、H。
模型离屏幕越近,模型在屏幕上的投影也就越大。因此可以计算模型的包围球,然后把它投影到屏幕上形成一个直径为d的圆(视距),d的大小也代表了模型到屏幕的远近。图1中,每个节点附带了一个最大视距参数,在模型移动过程中,到屏幕的投影直径一旦超过了这个值,模型就不再显示。在任何时候,从根节点到叶节点的路径上,只有一个节点被显示,每个节点根据它本身到屏幕的距离决定是否被显示。当模型离屏幕很远时,节点A被显示;当模型离屏幕近一些时,节点B代替节点A,A节点被隐藏;当模型更近一些时,节点C和节点D代替节点B;当我们模型继续靠近屏幕,节点E和节点F代替节点C,而节点D可能仍然没有改变,也可能被节点H和节点G代替;当我们单独放大C节点时,根据策略II,D节点以及其子节点H和G都将被隐藏。
然而,目前针对彩色模型却无有效的简化方法,从而限制了大数据彩色模型的实时浏览应用。因此,开发出一种新的彩色LOD模型自动生成方法具有极大的意义。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种基于块分解的彩色LOD模型自动生成方法,该方法LOD生成技术效率高、效果好、依赖少,只需要输入原始的彩色模型,就可以生成多层次的LOD,实现模型显示效果和计算机资源消耗的综合最优。
为实现上述目的,本发明提供了一种基于块分解的彩色LOD模型自动生成方法,包括如下步骤:
步骤一:输入彩色模型,分层简化带纹理的模型并获得多层次的简化彩色模型;
步骤二:利用步骤一获得的多层次的简化彩色模型生成彩色LOD模型。
进一步地,所述步骤一的具体操作包括:1)输入彩色模型并将其简化成不带纹理的白模;2)简化后的白模进行三角网格聚类并分Patch;3)给每个Patch 贴纹理;4)合并带纹理的Patch,形成一个层级的简化的带纹理的模型;5)重复上述1)、2)、3)、4)直到产生多层次的简化彩色模型。
更进一步地,所述步骤1)中采用基于QEM的半边折叠算法实现简化不带纹理的白模,以顶点到其所在周围拟合平面的距离平方作为误差测度,统计所有顶点的误差测度并排序,优先折叠误差小的顶点到它的邻近顶点,完成半边的折叠和简化三角网。
更进一步地,所述基于QEM的半边折叠算法简化的白模保留原彩色模型的边界轮廓。
更进一步地,所述步骤2)中采用区域增长算法进行网格模型分割,首先根据每个三角面与其邻接三角面法相之间的差异来确定种子点,优先使用差异较小的平坦区域的三角面作为种子点,遍历搜索种子点的邻接三角面,若邻接三角面与种子点法相一致,则将其加入到当前正在进行生长的网格块中;若邻接三角面与种子点法相不一致,则访问下一个邻接三角面,直至当前网格块不能添加新的三角面为止,则当前网格块的区域生长过程完成;然后选取另一个未访问过的种子点生长下一个网格块,当所有的网格三角面都访问完毕,则完成三角网格模型的分割。
更进一步地,所述步骤3)Patch贴纹理的方法为:首先依据Patch的顶点获取Patch在原模型中对应的区域,然后将三维的Patch二维参数化,获得Patch 未填充颜色的纹理和Patch上每三维顶点对应的二维纹理像素坐标;最后将Patch 纹理块中的像素进行颜色信息填充。
更进一步地,所述步骤4)合并带纹理的Patch的方法为:首先标记所有纹理块影像有效像素范围边界,并按照纹理块影像总像素的数量由大到小排序;然后统计当前未被摆放的所有纹理块影像的总像素数N,计算新纹理影像的边长 l,若l大于预先设定的最大单张纹理影像的大小,新建大小为l*l的纹理影像模板I;最后按照纹理块影像总像素的数量排序往影像模板I中逐个摆放纹理块影像Ii,直到所有的纹理块全部摆放完毕为止;根据每个纹理块在纹理影像中的摆放位置,更新所对应的Patch顶点的UV值。
进一步地,所述步骤二的具体操作包括:1)确定分层策略,构建LOD分割树;2)构建数据LOD树,输出osgb数据文件。
更进一步地,所述步骤1)中分层策略为Adaptive树的分割方式,原始的带纹理模型往下***的过程中,根据当前待分割节点模型的几何特点,动态地选择二叉树、四叉树、八叉树之一的分割方式,由输入数据信息从根节点开始进行向下***,直至节点不满足再分条件为止。
更进一步地,所述再分条件为当前节点的三角形个数,若该节点的三角形数目少于阈值就不再进行分割。
与现有技术相比,本发明的有益效果在于:
(1)本发明提供的一种基于块分解的彩色LOD模型自动生成方法使彩色 LOD模型生成技术效率高、效果好、依赖少,只需要输入原始的彩色模型,就可以生成多层次的LOD,实现模型显示效果和计算机资源消耗的综合最优。
(2)本发明的方法使用半边折叠算法来简化不带纹理的白模,该算法在保持模型视觉效果的基础上,既能较好地实现网格模型的简化,也可实现LOD多分辨率模型的建库。
(3)本发明的方法使用区域增长算法实现网格分割,该算法方法简单,容易理解和实现,没有费时的迭代过程,算法效率高。
(4)本发明的方法在构建LOD分割树时采用Adaptive树的分割方式,它在模型往下***的过程中,根据目前待分割节点模型的几何特点,动态地选择二叉树、四叉树、八叉树之一的分割方式,使同一层级每个节点的数据量接近一致,资源消耗上达到最优化配置。
附图说明
图1为现有技术中LOD层级关系示意图;
图2为半边折叠算法折叠过程示意图;
图3为三角网格分割展开成一系列平坦的块Patch的方法示意图;
图4为搜寻Patch在原模型的对应区域的示意图;
图5为Patch纹理填充颜色示意图;
图6为Adaptive分割树示意图;
图7为LOD数据树结构示意图。
具体实施方式
展示一下实例来具体说明本发明的某些实施例,且不应解释为限制本发明的范围。对本发明公开的内容可以同时从材料、方法和反应条件进行改进,所有这些改进,均应落入本发明的的精神和范围之内。
实施例
1.分层简化带纹理的模型
生成LOD需要建立一个如图1所示的层级模型,所以第一步需要输入原始带纹理的模型M得到多个不同简化层次的带纹理模型(M1,M2,M3……)。下面是实现这一过程的5个步骤:
(1)不带纹理的白模简化
白模在被简化的过程中需要保持模型特征,可以采用基于QEM的半边折叠算法,具体方法参见“熊仕勇,李沁翰,谢爱荣.基于半边折叠的LOD三维模型简化算法[J].计算机工程与设计,2016(3):655-659”。QEM半边折叠算法采用点到其所在周围拟合平面的距离平方作为误差测度,统计所有顶点的误差测度并排序,优先折叠误差小的顶点到它的邻近顶点,完成半边的折叠,实现三角网的简化。良好的半边折叠顺序可以保留原始模型中的拐点、尖锐边、折痕和角等重要几何细节特征,在满足视觉效果的同时简化网格数据。在模型简化的过程中,一定要保持模型的边界轮廓。所以需要一套判断机制,禁止破坏边界的半边折叠。这种半边主要是起点是边界点而终点是非边界点的半边。图2是半边折叠算法折叠过程示意图。
(2)简化后的白模进行三角网格聚类,分Patch
步骤(1)中完成模型M的几何简化之后,得到的是没有纹理的白模M′,接下来就是给白模贴上低精度的纹理,即纹理映射。由于纹理映射是要给三维的模型贴上二维的纹理,所以首先需要将三维网格模型二维化。下一步将三角网格分割展开成一系列平坦的块Patch(P1′,P2′,P3′……),实现三维网格模型的二维化。
网格分割是根据网格元素(三角面、顶点、边)的物理邻接性和几何信号相似性将三角网格分解为互不相交的区域。本实施例采用区域增长算法进行网格模型分割,具体分割方法参见“曹彩霞.三角网格模型分割及其简化应用.无锡:江南大学硕士学位论文,2008”,它的优点是方法简单,容易理解和实现,没有费时的迭代过程,算法效率通常特别高。该算法的主要思想是:根据每个三角面与其邻接三角面法相之间的差异来确定种子点,优先使用差异较小的平坦区域的三角面作为种子点,遍历搜索种子点的邻接三角面,如果邻接三角面与种子点的法相一致,则将其加入到当前正在进行生长的网格块中,否则访问下一个邻接三角面,直到当前网格块(Patch)不能添加新的三角面为止,则当前网格块的区域生长过程完成,再选取另一个未访问过的种子点生长下一个网格块,当所有的网格三角面都访问完毕,则三角网格模型的分割也就完成,图3 为一个分Patch的效果示意图。网格模型分割算法包括但不限于本实施例所采用的区域增长算法,还包括层次聚类算法、迭代算法、谱分析聚类、隐式方法等。
模型进行三角网格聚类以后,得到的是一系列近似平坦的Patch(P′1,P′2, P′3……),每个Patch由法向接近的连续的三角面构成,可拟合成一个平面。
(3)给每个简化后模型的Patch贴上纹理
模型在简化过程中,模型的整体轮廓和原模型的相比并没有发生大的变化。所以直观上,可以给每个Patch贴上其在原模型中相对应位置上的纹理。给每个简化后模型的Patch贴上纹理分为以下三步:
I.依据Patch的顶点,获取Patch在原模型中对应的区域
模型在简化的过程中,半边折叠操作并不会移动顶点和添加新的顶点,所以可以在简化之前给每个顶点添加一个索引标签,通过简化后的Patch上的每个点的索引标签,寻找其在原模型上的点,然后通过区域增长,搜索邻近的点,在原模型中找到一个能完全覆盖简化后Patch的最小三角网格区域。搜寻Patch 在原模型的对应区域的方法如图4所示。
图中A、B、C、D、E是简化后的一个Patch上的所有点,根据简化过程中顶点绑定的索引标签不变性,可以在原模型中找到对应的点A0、B0、C0、D0、 E0,然后通过区域增长找到点F和点G。在原模型中找到的7个面必须能覆盖 Patch的3个面,否则后续给Patch贴上纹理就会出现问题。另外因为还有两个三角面贴得很近但法向相反的情况,譬如牌子,所以在区域增长的过程中还必须考虑面的法向,在原模型寻找的三角面的法向要和Patch的法向接近。
II.将三维的Patch二维参数化,
为了在三维Patch的表面映射上二维的纹理,需要对三维的Patch进行二维参数化,即求Patch中每个三维顶点的二维纹理坐标。
由于在网格分割的过程中,尽量保证了相同的平坦区域被划分到同一个 Patch中,所以可以利用生成正射影像的思想对每个Patch进行二维参数化:首先对Patch进行平面拟合,求出三维Patch到拟合平面的仿射关系RT,本发明同样采用PCA算法;然后将Patch中的三维顶点坐标投影到拟合的平面上,这样就可以得到每个三维顶点的二维空间坐标;最后求取这些二维坐标的外包盒矩形,并根据预先设定的像素空间分辨率将外包盒矩形划分成许多个小正方形,即每个小正方形位置对应Patch纹理上一个像素坐标,也对应一个归一化的UV 值。这样就得到了Patch还未填充颜色的纹理和Patch上每三维顶点对应的二维纹理像素坐标。下一步就是要给Patch的纹理填充颜色值。
III.给Patch的纹理填充颜色。
二维参数化之后,每个Patch都会生成一个纹理块影像,同时可以得到Patch 中的顶点在纹理块影像上的二维像素坐标,所以需要将Patch纹理块中的像素进行颜色信息填充:
顺序取出Patch中的三角面fi(va,vb,vc),其三个顶点在Patch纹理上对应的二维像素坐标分别为(xa,ya)、(xb,yb)和(xc,yc),组成一个纹理三角形,从纹理三角形内顺序取出有效像素点p(xi,yi),根据p在纹理三角形内的位置计算其重心化坐标(wa,wb,wc),内插出p在Patch中的三维坐标vp=vawa+vbwb+vcwc。然后根据Patch 在原模型中对应的模型区域,求出vp在原模型中对应的三角面fi0(va0,vb0,vc0),三个顶点对应的二维像素坐标分别为ua0(xa0,ya0)、ub0(xb0,yb0)和uc0(xc0,yc0)。根据vp在原模型中对应的三角fi0(va0,vb0,vc0)的位置计算其重心化坐标(wa0,wb0,wc0),内插出 vp在原模型纹理空间的坐标p0=ua0wa0+ub0wb0+uc0wc0。根据原模型纹理像素坐标 p0和Patch的纹理像素坐标p的从二维到三维再到二维的对应关系,p0的颜色值赋给p。遍历Patch的每一个三角面,用上述方法就可以对Patch纹理块中的像素进行颜色信息填充。Patch纹理块像素颜色信息填充如图5所示。
对于生成的纹理块边界像素点可能会出现锯齿状,另一方面相邻的纹理块之间由于计算时的精度损失可能会出现纹理缝隙,所以需要对纹理块边缘像素点进行处理,这里采用扩散填补的方式,将边缘像素点向外扩充一定的范围。
(4)带纹理的Patch合并
每个Patch都有一张纹理块影像与之对应,所以在输出结果之前,需要将这些纹理块进行合并,然后摆放到标准大小(一般为2的n次方)的纹理影像上,从而达到节约存储空间的目的,本实施例使用的类似于贪心法则的摆放方法:
I.标记所有纹理块影像有效像素范围的边界ei(p1,p2,...,p3),按照纹理块影像总像素的数量由大到小的顺序进行排列;
II.统计当前还未被摆放的所有纹理块影像的总像素数N,利用公式计算新纹理影像的边长l,如果l大于预先设定的最大单张纹理影像的大小lmax (默认值是8192),那么令l=lmax,新建大小为l*l的纹理影像模板I;
III.按照预先排列好的顺序往影像模板I中逐个摆放纹理块影像Ii:①以纹理块Ii最小边上的1/8为步长,从影像模板的I左上角往右下角方向遍历空白的区域;②如果纹理块Ii的边界ei中有任意一个顶点pi所在的模板像素位置已被填充,那么就需要根据设定的步长跳到下一个候选的摆放位置;③如果遍历完模板影像仍未找到合适的摆放位置,那么就跳过当前纹理块Ii,继续摆放下一个 Ii+1,否则将当前纹理块Ii放中的颜色信息填充到模板影像中并将对应的像素位置标记为已填充,记录当前纹理块的摆位置;
循环执行步骤II与III直到所有的纹理块全部摆放完毕为止,然后根据记录的每个纹理块在纹理影像中的摆放位置,更新所对应的Patch顶点的UV值。
至此,一个简化的带纹理模型已经生成。然后把它作为输入,重复上述四个步骤,就可以得到再下一层次的简化的带纹理模型。
2.利用分层简化的彩色模型生成LOD
根据如图1所示的LOD树结构示意可知,生成LOD必须先对所有不同层次的带纹理的模型进行切割,并且按树状结构组织起来。所以需要首先生成分割树然后生成LOD树,分割树是对LOD数据层级组织关系的表达,LOD树是依据分割树,生成无缝的层级LOD数据文件。
(1)确定分层策略,构建LOD分割树
分层策略涉及到两个方面,一是分割树的层数,二是分割树中从节点到其子节点的模型的分割方式。分割树的层数由两方面的因素决定,一是最原始层模型的地面分辨率,它决定了叶子节点所在的层数。二是所有Tile的数目,当加载所有的Tiles时候,要确保所有Tile都显示在视窗范围内,这就限定了每个Tile根节点的到屏幕投影的大小,从而决定了根节点所在的层数。以上两者就决定了分割树的层数。
分割树可以有多种分割方式:二叉树、四叉树、八叉树、R-树、K-D树、 Adaptive树等。树中每一个节点存储当前数据范围、分割类型、分割方法等。分割树从上置下(top-down)方式进行创建,由输入数据信息从根节点开始进行向下***,直至节点不满足再分条件为止。再分条件可以是当前节点的三角形的个数,一旦该节点的三角形数目少于一定的阈值就不再进行分割。
在本发明中使用的是Adaptive树的分割方式,它在模型往下***的过程中,根据目前待分割节点模型的几何特点,动态地选择二叉树、四叉树、八叉树之一的分割方式,该分割方式使同一层级每个节点的数据量接近一致,资源消耗上达到最优化配置。节点分割策略如表1所示。
表1节点分割策略表
图6为一个Adaptive分割树示意图,在本发明中,构建分割树的输入信息是最原始的带纹理的模型。从根节点开始向下***,同时记录节点当前分割类型、分割范围、节点名称等信息,直至节点不满足再分条件为止。这是因为:
(1)最原始模型是要分割成叶子节点的,最原始模型才能达到这个分割深度。
(2)由最原始模型简化而来的其它层次的带纹理模型,在整体轮廓结构上,都和最原始模型保持一致,所以其他层级的带纹理模型都可以使用这一套分割方式进行分割。
至此,分割树形成了LOD树的框架,LOD树每一个节点还没有被赋予实体数据。下面进一步做的就是根据分割树,切割各层次带纹理模型,构建数据LOD 树。
(2)构建数据LOD树,输出osgb数据文件
与分割树相反,LOD树的构建由下而上(Button-Up)进行处理。主要思路为:首先生成LOD树叶子节点的数据,然后通过将分割到子节点的数据进行合并的方式,生成LOD树中其他不同层级的非叶子节点的数据,进而构建完整的 LOD树。
在LOD树的输出格式osg中主要涉及到GeoNode,PagedLOD和Group三种数据结构:GeoNode为树的叶子节点;Group为有多个子节点的非叶子节; PagedLOD为只有一个子节点的非叶子节点。下面详细介绍叶子节点和非叶子节点的定义方式及输出格式。
叶子节点:将最原始带纹理模型,从根节点开始,按照分割树中定义好的分割类型及分割范围,分割到叶子节点所在的这一层。每个叶子节点都用osg 中的osg::GeoNode数据格式组织起来。
非叶子节点:将该层级的带纹理模型,从根节点开始,按照分割树中定义好的分割类型及分割范围,分割到该层级的下一层,然后将分割到子节点的数据进行合并。当该节点只有一个子节点时,该节点用osg::PagedLOD的数据格式组织其唯一子节点的数据。当该节点有多个子节点时,该节点用osg::Group 的数据节点组织起来:首先用osg::PagedLOD的数据格式组织其每一个子节点的数据,然后用osg::Group将所有的osg::PagedLOD合并起来。
每一个osg::PagedLOD数据要设置一个最大视距(数据包围球到屏幕的最大投影直径)参数Dmax,一旦节点的这一部分模型数据的包围球到屏幕的投影大于Dmax,该节点被隐藏,显示更精细的子节点。至此,一个完整的LOD数据树已经形成。图7为一个LOD数据树的结构示意图,从图中可看出,本实施例的方法可以实现根据节点模型到屏幕的距离,计算机在当前节点与子节点或父节点之间动态地切换显示和加载模型。在子节点数目大于1情况下,当前节点作为一个整体osg::Group和父节点进行切换,同时当前节点又可以分成多个部分osg::PagedLOD,各个部分和相应的子节点进行切换。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种基于块分解的彩色LOD模型自动生成方法,其特征在于,包括如下步骤:
步骤一:输入彩色模型,分层简化带纹理的模型并获得多层次的简化彩色模型;
步骤二:利用步骤一获得的多层次的简化彩色模型生成彩色LOD模型。
2.根据权利要求1所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤一的具体操作包括:1)输入彩色模型并将其简化成不带纹理的白模;2)简化后的白模进行三角网格聚类并分Patch;3)给每个Patch贴纹理;4)合并带纹理的Patch,形成一个层级的简化的带纹理的模型;5)重复上述1)、2)、3)、4)直到产生多层次的简化彩色模型。
3.根据权利要求2所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤1)中采用基于QEM的半边折叠算法实现简化不带纹理的白模,以顶点到其所在周围拟合平面的距离平方作为误差测度,统计所有顶点的误差测度并排序,优先折叠误差小的顶点到它的邻近顶点,完成半边的折叠和简化三角网。
4.根据权利要求3所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述基于QEM的半边折叠算法简化的白模保留原彩色模型的边界轮廓。
5.根据权利要求2所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤2)中采用区域增长算法进行网格模型分割,首先根据每个三角面与其邻接三角面法相之间的差异来确定种子点,优先使用差异较小的平坦区域的三角面作为种子点,遍历搜索种子点的邻接三角面,若邻接三角面与种子点法相一致,则将其加入到当前正在进行生长的网格块中;若邻接三角面与种子点法相不一致,则访问下一个邻接三角面,直至当前网格块不能添加新的三角面为止,则当前网格块的区域生长过程完成;然后选取另一个未访问过的种子点生长下一个网格块,当所有的网格三角面都访问完毕,则完成三角网格模型的分割。
6.根据权利要求2所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤3)Patch贴纹理的方法为:首先依据Patch的顶点获取Patch在原模型中对应的区域,然后将三维的Patch二维参数化,获得Patch未填充颜色的纹理和Patch上每三维顶点对应的二维纹理像素坐标;最后将Patch纹理块中的像素进行颜色信息填充。
7.根据权利要求2所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤4)合并带纹理的Patch的方法为:首先标记所有纹理块影像有效像素范围边界,并按照纹理块影像总像素的数量由大到小排序;然后统计当前未被摆放的所有纹理块影像的总像素数N,计算新纹理影像的边长l,若l大于预先设定的最大单张纹理影像的大小,新建大小为l*l的纹理影像模板I;最后按照纹理块影像总像素的数量排序往影像模板I中逐个摆放纹理块影像Ii,直到所有的纹理块全部摆放完毕为止;根据每个纹理块在纹理影像中的摆放位置,更新所对应的Patch顶点的UV值。
8.根据权利要求1所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤二的具体操作包括:1)确定分层策略,构建LOD分割树;2)构建数据LOD树,输出osgb数据文件。
9.根据权利要求8所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述步骤1)中分层策略为Adaptive树的分割方式,原始的带纹理模型往下***的过程中,根据当前待分割节点模型的几何特点,动态地选择二叉树、四叉树、八叉树之一的分割方式,由输入数据信息从根节点开始进行向下***,直至节点不满足再分条件为止。
10.根据权利要求9所述的一种基于块分解的彩色LOD模型自动生成方法,其特征在于,所述再分条件为当前节点的三角形个数,若该节点的三角形数目少于阈值就不再进行分割。
CN201811113716.7A 2018-09-25 2018-09-25 一种基于块分解的彩色lod模型自动生成方法 Active CN109118588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811113716.7A CN109118588B (zh) 2018-09-25 2018-09-25 一种基于块分解的彩色lod模型自动生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811113716.7A CN109118588B (zh) 2018-09-25 2018-09-25 一种基于块分解的彩色lod模型自动生成方法

Publications (2)

Publication Number Publication Date
CN109118588A true CN109118588A (zh) 2019-01-01
CN109118588B CN109118588B (zh) 2023-02-14

Family

ID=64856658

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811113716.7A Active CN109118588B (zh) 2018-09-25 2018-09-25 一种基于块分解的彩色lod模型自动生成方法

Country Status (1)

Country Link
CN (1) CN109118588B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111161411A (zh) * 2020-04-08 2020-05-15 速度时空信息科技股份有限公司 一种基于八叉树的三维建筑物模型lod方法
CN111833452A (zh) * 2020-07-21 2020-10-27 武汉大势智慧科技有限公司 多面体切割三角网的切割方法及***
CN112017292A (zh) * 2019-05-31 2020-12-01 华为技术有限公司 网格译码方法和装置
CN113327315A (zh) * 2021-06-11 2021-08-31 武汉天远视科技有限责任公司 多层次细节模型生成方法和装置
CN114627262A (zh) * 2022-05-11 2022-06-14 武汉大势智慧科技有限公司 基于倾斜网格数据的图像生成方法及***
CN114998513A (zh) * 2022-05-12 2022-09-02 中国人民解放军国防科技大学 基于kd树的带循环边界的地球模拟***网格重映射方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080238919A1 (en) * 2007-03-27 2008-10-02 Utah State University System and method for rendering of texel imagery
CN102044088A (zh) * 2010-11-09 2011-05-04 广州市城市规划勘测设计研究院 单站地面激光扫描海量散乱点云的lod模型快速构建方法
CN105336003A (zh) * 2015-09-28 2016-02-17 中国人民解放军空军航空大学 结合gpu技术实时流畅绘制出三维地形模型的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080238919A1 (en) * 2007-03-27 2008-10-02 Utah State University System and method for rendering of texel imagery
CN102044088A (zh) * 2010-11-09 2011-05-04 广州市城市规划勘测设计研究院 单站地面激光扫描海量散乱点云的lod模型快速构建方法
CN105336003A (zh) * 2015-09-28 2016-02-17 中国人民解放军空军航空大学 结合gpu技术实时流畅绘制出三维地形模型的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112017292A (zh) * 2019-05-31 2020-12-01 华为技术有限公司 网格译码方法和装置
CN111161411A (zh) * 2020-04-08 2020-05-15 速度时空信息科技股份有限公司 一种基于八叉树的三维建筑物模型lod方法
WO2021204025A1 (zh) * 2020-04-08 2021-10-14 速度时空信息科技股份有限公司 一种基于八叉树的三维建筑物模型lod方法
CN111833452A (zh) * 2020-07-21 2020-10-27 武汉大势智慧科技有限公司 多面体切割三角网的切割方法及***
CN111833452B (zh) * 2020-07-21 2024-01-30 武汉大势智慧科技有限公司 多面体切割三角网的切割方法及***
CN113327315A (zh) * 2021-06-11 2021-08-31 武汉天远视科技有限责任公司 多层次细节模型生成方法和装置
CN114627262A (zh) * 2022-05-11 2022-06-14 武汉大势智慧科技有限公司 基于倾斜网格数据的图像生成方法及***
CN114998513A (zh) * 2022-05-12 2022-09-02 中国人民解放军国防科技大学 基于kd树的带循环边界的地球模拟***网格重映射方法
CN114998513B (zh) * 2022-05-12 2024-01-30 中国人民解放军国防科技大学 基于kd树的带循环边界的地球模拟***网格重映射方法

Also Published As

Publication number Publication date
CN109118588B (zh) 2023-02-14

Similar Documents

Publication Publication Date Title
CN109118588A (zh) 一种基于块分解的彩色lod模型自动生成方法
CN109410332B (zh) 基于点线面的三维空间几何虚拟模型细节层次裁剪方法
CN107025685B (zh) 拓扑感知下的机载建筑屋顶点云建模方法
US8570322B2 (en) Method, system, and computer program product for efficient ray tracing of micropolygon geometry
KR101148613B1 (ko) 지형 생성 시스템, 지형 생성 방법 및 프로그램 저장 장치
CN106327577B (zh) 基于局部曲率熵和四叉树结构的三维地形曲面优化方法
EP1754196B1 (en) Resource management for rule-based procedural terrain generation
CN108664619A (zh) 一种类瓦片技术的海量线划地形图本原存储与调度方法
CN102314711B (zh) 矿产资源评价信息的三维可视化方法及其装置
CN103679807B (zh) 一种带边界约束的散乱点云重构方法
CN107564087B (zh) 一种基于屏幕的三维线状符号渲染方法
CN103714577B (zh) 一种适用于带纹理模型的三维模型简化方法
CN108647336A (zh) 一种利用关键比例尺以及类瓦片技术处理矢量图的方法
CN101989178B (zh) 多叉树数据结构的立体环状可视化方法
CN104463948A (zh) 三维虚拟现实***与地理信息***的无缝可视化方法
CN102663801A (zh) 一种提高三维模型渲染性能的方法
Hwa et al. Adaptive 4-8 texture hierarchies
CN106874409B (zh) 点云数据的存储方法及装置
CN102073981A (zh) 一种关联要素限制下的点群地理实体选取方法
CN102542593A (zh) 一种基于视频解译的交互式视频风格化渲染方法
CN106251331A (zh) 一种倾斜测量场景中地物的提取方法
CN103077549A (zh) 一种基于kd树的实时大规模地形可视化实现方法
CN116127115B (zh) 面向时序更新的倾斜摄影三维模型瓦片集可视化方法
CN109636889B (zh) 一种基于动态缝合带的大规模三维地形模型渲染方法
CN107993279A (zh) 一种场景精确表达方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20231017

Address after: 430205 room 01, 4 / F, building B2, phase II of financial background service center base construction project, No. 77, Guanggu Avenue, Donghu New Technology Development Zone, Wuhan, Hubei Province

Patentee after: WUHAI DASHI INTELLIGENCE TECHNOLOGY CO.,LTD.

Patentee after: WUHAN University

Address before: 430000 Room 01, 02, 8 Floors, Building B18, Building 2, Financial Background Service Center, 77 Guanggu Avenue, Wuhan Donghu New Technology Development Zone, Hubei Province

Patentee before: WUHAI DASHI INTELLIGENCE TECHNOLOGY CO.,LTD.

TR01 Transfer of patent right