CN111858828A - 一种面向三维地理数据的传输和渲染方法及系统 - Google Patents

一种面向三维地理数据的传输和渲染方法及系统 Download PDF

Info

Publication number
CN111858828A
CN111858828A CN202011014436.8A CN202011014436A CN111858828A CN 111858828 A CN111858828 A CN 111858828A CN 202011014436 A CN202011014436 A CN 202011014436A CN 111858828 A CN111858828 A CN 111858828A
Authority
CN
China
Prior art keywords
data
rendering
dimensional geographic
geographic data
file
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
CN202011014436.8A
Other languages
English (en)
Other versions
CN111858828B (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.)
Beijing Egova Technology Co ltd
Original Assignee
Beijing Egova Technology Co 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 Beijing Egova Technology Co ltd filed Critical Beijing Egova Technology Co ltd
Priority to CN202011014436.8A priority Critical patent/CN111858828B/zh
Publication of CN111858828A publication Critical patent/CN111858828A/zh
Application granted granted Critical
Publication of CN111858828B publication Critical patent/CN111858828B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • 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/005Tree description, e.g. octree, quadtree
    • 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/05Geographic models

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Remote Sensing (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

本申请提供一种面向三维地理数据的传输和渲染方法及系统,该方法包括如下步骤:获取待渲染的三维地理数据,采用多细节层次划分的方法将三维地理数据构建成一组由上至下各个节点的模型实体的显示层级不同的场景树;其中,场景树中每一个节点均包括描述文件和数据文件;获取当前待渲染的三维地理数据的层级切换因子;依次加载场景树中最上方至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。本申请三维数据组织形式满足多源三维数据类型的表达,支持模型对象化与单体化,并挂接属性,提高了文件的传输效率,提升了渲染时数据处理的效率。

Description

一种面向三维地理数据的传输和渲染方法及系统
技术领域
本申请涉及三维地理数据技术领域,尤其涉及一种面向三维地理数据的传输和渲染方法及系统。
背景技术
近年来,随着倾斜摄影建模、激光点云、CAD/BIM等多种三维数据的发展,对GIS三维可视化技术的提出了更高的需求,主要体现在:
1.使用的三维数据量很大,容易造成数据处理和渲染的性能瓶颈。
2.根据实际的使用场景,显示不同层级的数据,层级越高,显示的数据精度越高。
3.能够高效发布,可以应用在数据共享的Web应用场景,满足数据传输的性能要求。
4.能够满足倾斜摄影模型、激光点云、CAD/BIM、手工模型、地下管线等多源三维数据的表达。
5.支持模型对象化与单体化,能够选择某一个或者某一类单体化对象,并修改其属性。
6.支持扩展一些未来的三维数据以及特定厂商的数据。
OSGB格式是倾斜摄影数据的常用格式,大量的倾斜摄影自动化建模数据(如ContextCapture、街景工厂)都采用这个数据格式,这种格式采用分层分页的方式,能够在桌面端高效的显示倾斜摄影数据。OSGB格式是多用于桌面端的三维数据格式,在进行渲染时还需要进行转换;且体积较大,直接用于Web端时会造成不必要的性能损耗。本质上OSGB是一张连续的三角网,不特殊处理无法进行对象化和单体化。
3D Tiles是Cesium提出的用于流式传输大规模异构3D地理空间数据集的开放规范。这种格式基于glTF构建,是专为3D技术设计的格式,定义了用于快速流式传输和精确渲染的空间层级结构,平衡了任何规模数据的性能和视觉质量。现在已经被认定为OGC(开放地理空间信息联盟)标准。3D Tiles能够提供对多源三维数据的表达,但是作为通用格式,缺少对特定数据类型的优化:如纹理合并、材质合并、顶点合并等,造成渲染性能的损耗;3DTiles内部的glTF虽然可以提供压缩机制,但是不支持整体压缩机制,造成Web端数据传输性能的损耗。
发明内容
本申请的目的在于提供一种面向三维地理数据的传输和渲染方法及系统,提高了文件的传输效率和渲染时数据处理效率。
为达到上述目的,本申请提供一种面向三维地理数据的传输和渲染方法,包括如下步骤:
获取待渲染的三维地理数据,采用多细节层次划分的方法将三维地理数据构建成一组由上至下各个节点的模型实体的显示层级不同的场景树;其中,场景树中每一个节点均包括描述文件和数据文件;
获取当前待渲染的三维地理数据的层级切换因子;
依次加载场景树中最上方至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。
如上的,其中,构建场景树的方法包括如下步骤:
采用多细节层次划分的方法将描述文件构建至场景树的各个节点;
通过描述文件引用数据文件来构建成场景树基础的瓦片数据;
通过数据文件引用一个外部的复用材质文件集;
通过数据文件引用一个外部的合并纹理工具集。
如上的,其中,描述文件包含的属性为:范围、层级切换因子、细分类型、内容和组成该场景树的子节点。
如上的,其中,层级切换因子的获取方法为:
根据当前待渲染的三维地理数据的属性特征计算当前三维地理数据的展示细节度值;
依据计算的展示细节度值和层级切换因子预设的展示阈值,为当前待渲染的三维地理数据匹配相应的层级切换因子,从而获得层级切换因子;
其中,预先为每一个层级切换因子设定展示阈值。
如上的,其中,展示细节度值的计算公式为:
Figure 980587DEST_PATH_IMAGE001
其中,
Figure 100990DEST_PATH_IMAGE002
表示展示细节度值;L表示观察点与场景树的节点之间的距离;F表示当前三维地理数据中模型所占像素大小;
Figure 615148DEST_PATH_IMAGE003
表示当前三维地理数据中模型的重要系数;
Figure 744778DEST_PATH_IMAGE004
表示当前三维地理数据中模型的半径;
Figure 778724DEST_PATH_IMAGE005
表示需要展示的地表建筑物分辨率。
如上的,其中,对场景树中每一个层级数据进行渲染的方法包括如下子步骤:
获取当前层级数据中每一个节点数据的加载时序值;
按照加载时序值由小到大的顺序依次加载当前层级数据中每一个节点的数据,并获取节点数据中的待渲染数据;
对待渲染数据进行渲染。
如上的,其中,对待渲染数据进行渲染包括如下子步骤:
对数据文件进行解压缩形成数据文件流,数据文件流包括属性表和模型实体;
依据获取的描述文件中的地理数据渲染范围和数据文件中的模型实体,构建地理数据渲染范围内的模型实体的三维实体图像;
提取三维实体图像的边界轮廓,将三维实体图像中边界轮廓闭合区域划分为一个区块;
计算任意两个区块之间的相似度值,将相似度值大于预设阈值的区块合并成新区块,直至无法合并,依次对合并后的区块进行渲染。
如上的,其中,计算任意两个区块之间的渲染近似度值的公式为:
Figure 335607DEST_PATH_IMAGE006
其中,
Figure 337061DEST_PATH_IMAGE007
表示两个区块之间的渲染近似度值;
Figure 4803DEST_PATH_IMAGE008
表示两个区块的材质类型系数值,若两个区块的材质类型一值,则
Figure 142523DEST_PATH_IMAGE008
值为1,否则,
Figure 119576DEST_PATH_IMAGE008
值为0;m表示第一区块对应的纹理图片的像素点的总个数,
Figure 608326DEST_PATH_IMAGE009
表示第一区块对应的纹理图片的第i个像素点的像素值;
Figure 79758DEST_PATH_IMAGE010
表示第二区块对应的纹理图片的第j个像素点的像素值;n表示第二区块对应的纹理图片的像素点的总个数;ln表示函数;
Figure 71985DEST_PATH_IMAGE011
表示第一区块对应的纹理图片分辨率;
Figure 236250DEST_PATH_IMAGE012
表示第一区块对应的纹理图片分辨率。
如上的,其中,预先在数据文件中的模型实体的顶点属性中会添加一个属性字段,在渲染的过程中,点击模型实体,模型实体的顶点属性勾连属性表中的相应属性。
本申请还提供一种面向三维地理数据的传输和渲染系统,包括:
场景树构建模块,用于获取待渲染的三维地理数据,采用多细节层次划分的方法将三维地理数据划分成分页细节层次模型,构建成一组由上至下各个节点的模型实体的显示层级不同的场景树;其中,场景树中每一个节点均包括描述文件和数据文件;
获取模块,用于获取当前待渲染的三维地理数据的层级切换因子;
渲染模块,用于依次加载场景树中最上方至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。
本申请实现的有益效果如下:
(1)本申请灵活的三维数据组织形式。满足倾斜摄影模型、激光点云、CAD/BIM、手工模型、地下管线等多源三维数据类型的表达。
(2)本申请引用外部的材质描述文件(json格式),形成复用材质文件集,可以进一步压缩文件体积。同时,在客户端实现中可以针对性的对材质进行排序,减少渲染状态切换造成的性能损耗。
(3)本申请通过挂接外部的资源文件,形成合并纹理文件集,同时合并纹理文件会采用jpg的压缩格式,进一步压缩体积,对于复用情况较小的三维数据,仍然会将纹理数据合并成10M以内的纹理数据,减少多次访问零碎数据的损耗。
(4)本申请数据文件进行了无损压缩,数据体积得到了进一步缩小,在传输到客户端之后再进行解压,提高了文件的传输效率,通过多线程异步加载,同时兼顾数据传输效率和渲染效率。
(5)本申请根据三维数据类型(倾斜摄影模型、激光点云、CAD/BIM、手工模型、地下管线)有针对性的优化和表达。
(6)本申请支持模型对象化与单体化,并挂接属性。
(7)本申请采用json+二进制流的数据形式,后期很容易进行扩展,兼容其他类型的数据;json是Web应用的主流数据交换格式,很容易进行数据传输和解析,同时还很容易进行扩展。所以可以将其用作数据的描述文件。二进制文件流包含的顶点数据在读取后直接进入GPU,节省了数据预处理的时间,提升了渲染时数据处理的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例的一种面向三维地理数据的传输和渲染方法的流程图。
图2为本申请实施例的构建场景树的方法的流程图。
图3为本申请实施例的层级切换因子的获取方法的流程图。
图4为本申请实施例的对场景树中每一个层级数据进行渲染的方法的流程图。
图5为本申请实施例的一种面向三维地理数据的传输和渲染系统的结构示意图。
附图标记:10-场景树构建模块;20-获取模块;30-渲染模块;100-面向三维地理数据的传输和渲染系统。
具体实施方式
下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
如图1所示,本申请提供一种面向三维地理数据的传输和渲染方法,包括如下步骤:
步骤S1,获取待渲染的三维地理数据,采用多细节层次划分的方法将三维地理数据构建成一组由上至下各个节点的模型实体的显示层级不同的场景树。其中,场景树中每一个节点均包括描述文件和数据文件。
其中,场景树中同时创建了场景中模型实体的多个显示层级,不同的显示层级显示的模型实体显示的面数和细节层次不同。组合成场景树的叶子节点,会根据观察点与节点的距离选择显示子节点或根据当前模型所占像素大小,降低(或增加)节点的面数和细节度,当视点靠近物体时,用详细的细节表示,当视点远离物体时,用简化的模型来表示,进而减少整个三维场景渲染的压力,提高帧率。
其中,划分形式包括四叉树、八叉树、KD树、R树或网格划分。
例如:由矢量数据生成的灰模采用类似地图服务的四叉树划分;BIM(建筑信息模型)或者点云数据采用八叉树划分;倾斜摄影模型采用网格划分。
如图2所示,构建场景树的方法包括如下步骤:
步骤110,采用多细节层次划分的方法将描述文件构建至场景树的各个节点。其中,描述文件描述数据基本信息。
步骤120,通过描述文件引用数据文件来构建成场景树基础的瓦片数据,或引用场景树来形成场景树集;瓦片数据包含顶点、材质以及纹理信息。
步骤130,通过数据文件引用一个外部的复用材质文件集。其中,多个数据文件可以引用同一个外部材质文件,多个材质文件组成复用材质文件集。
根据本发明的另一个具体实施例,将材质信息存储在数据文件中,优选为 :将材质信息存储在数据文件E3DM的json部分。
步骤S140,通过数据文件引用一个外部的合并纹理工具集。其中,数据文件引用外部的纹理图片;外部的纹理图片经过合并,多个数据文件引用同一个纹理图片;多个外部的纹理图片组成合并纹理工具集。纹理图片采用jpg格式进行压缩,减小体积便于文件传输。
根据本发明的另一个具体实施例,纹理信息可以存储在数据文件.E3DM的二进制部分中。
其中,文件组织形式如下:
文件类型包括描述文件、数据文件、复用材质文件集,以及合并纹理文件集。其中,描述文件和数据文件为必须的;复用材质文件集和合并纹理文件集是非必须的。
其中,描述文件的存储形式为:.e3d文件;描述文件的存储规定为:数据的描述信息,json格式。文件名称可自定义,扩展名限定为“.e3d”。数据文件的存储形式为:.e3dm文件;数据文件的存储规定为:构建场景树的瓦片数据。文件名可自定义,扩展名限定为“.e3dm”。复用材质文件集的存储形式为:文件夹;复用材质文件集的存储规定为:包含能够复用的材质,json格式。合并纹理文件集的存储形式为:文件夹;合并纹理文件集的存储规定为:包含合并好的纹理图片,压缩jpg格式。
具体的,描述文件.e3d是一个json文件,json(JavaScript Object Notation) 是一种轻量级的数据交换格式。json文件易于人阅读和编写,同时也易于机器解析和生成。
描述文件主要包含的属性为:范围(Bounds)、层级切换因子、细分类型、内容和组成该场景树的子节点。其中,范围表示可视化范围,范围属性可以加快三维数据的浏览效率,在可视化客户端实现中会根据这个值做视景体裁剪,从而只显示可视范围内的数据;层级切换因子是LOD(多细节层次)层级进行切换的因子,在达到这个因子之后,就会进行层级切换;细分类型属性决定了LOD(多细节层次)的细分的类型,有“Add(增加)”和“Replace(替换)”两种方式;内容是关联的具体的数据文件,可以为空,内容包括范围和数据文件的地址;组成该场景树的子节点可以递归包含在这个属性中,每个子节点都可以又包含前面节点提到的数据描述属性。
数据文件.e3dm是一个压缩后的二进制流文件,字节序为小端在前。数据文件解压缩之后形成数据文件流,数据文件流分成两个部分:属性表(AttributeTable)和模型实体(ModelEntities)。
其中,模型实体中包含两个部分:json描述部分(skeleton)以及二进制流部分(bin)。
其中,json描述部分(skeleton)描述了整个模型的数据组织,它由一组节点层次结构组成,每个节点又由顶点组成的网格(mesh)和材质(material)组成。
其中,二进制流部分(bin)存储顶点的信息。顶点的信息包括位置、法向量、颜色和纹理坐标等。
通过mesh(网络)的访问器(accessor)来配置访问顶点数据;材质(material)可以外接到复用材质文件集中,也可以嵌入到json描述部分(skeleton);纹理可以合并后外接到合并纹理文件集中,也可以压缩处理放到二进制流部分(bin)部分。
其中,属性表中包含两个部分:json描述部分(skeleton)以及二进制流部分(bin)。
属性表中json描述部分是一组键值对数组,其序号对应于模型实体顶点的顶点属性(FID属性),这样就可以将属性表中的属性挂接到模型实体,从而实现模型的单体化。如果属性值部分过长,可以通过访问器将其挂接到二进制流部分(bin)。
步骤S2,获取当前待渲染的三维地理数据的层级切换因子。
层级切换因子决定渲染场景树的层级,例如:若层级切换因子为2,则从场景树的第1层开始渲染,然后对场景树的第2层渲染,场景树的第二层渲染完成后,结束渲染。
如图3所示,层级切换因子的获取方法为:
步骤S210,根据当前待渲染的三维地理数据的属性特征计算当前三维地理数据的展示细节度值。
其中,展示细节度值的计算公式为:
Figure 946717DEST_PATH_IMAGE013
其中,
Figure 704064DEST_PATH_IMAGE014
表示展示细节度值;L表示观察点与场景树的节点之间的距离;F表示当前三维地理数据中模型所占像素大小;
Figure 81956DEST_PATH_IMAGE015
表示当前三维地理数据中模型的重要系数;
Figure 885964DEST_PATH_IMAGE016
表示当前三维地理数据中模型的半径;
Figure 349306DEST_PATH_IMAGE017
表示需要展示的地表建筑物分辨率。
步骤S220,依据计算的展示细节度值和层级切换因子预设的展示阈值,为当前待渲染的三维地理数据匹配相应的层级切换因子,从而获得层级切换因子。
其中,预先为每一个层级切换因子设定展示阈值。
步骤S3,依次加载场景树中最上方(即父级)至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。
其中,每一层的层级数据加载完成后立即进行渲染,后一层的层级数据渲染结果替换掉前一层的层级数据的渲染结果。
作为本发明的一个具体实施例,预先在数据文件中的模型实体的顶点属性中会添加一个属性字段(FID属性字段),在渲染的过程中,点击模型实体,模型实体的顶点属性勾连属性表中的相应属性,从而在三维客户端的展示中,可以知道模型实体中哪些顶点是输入单体化对象的,并做出相应的高亮、透明、显示属性等可视化操作。
作为本发明的一个具体实施例,三维模型在存在大量的同质的子节点时(如树木、门、窗户等),通过调整某一个对象的位置多次绘制,而不再通过构建顶点数据进行绘制,能够提高渲染的效率。模型实体中的节点(Node)都变换(transform)属性,通过设置该属性,调用同样的网格(Mesh)数据,就实现了模型的实例化。
作为本发明的一个具体实施例,在实验中,在使用i7-9750H的CPU、8GB内存、显卡NVIDIA GTX 1660的笔记本的硬件配置下,其客户端对其本申请的渲染性能达到132帧数(144HZ显示器)。
如图4所示,对场景树中每一个层级数据进行渲染的方法包括如下子步骤:
步骤S310,获取当前层级数据中每一个节点数据的加载时序值。
步骤S320,按照加载时序值由小到大的顺序依次加载当前层级数据中每一个节点的数据,并获取节点数据中的待渲染数据。
其中,待渲染数据包括该节点的描述文件、该节点引用的数据文件、该数据文件引用的复用材质文件集和该数据文件引用的合并纹理文件集。
步骤S320包括如下子步骤:
步骤S321,获取加载的节点数据中的描述文件。
其中,描述文件中包括有地理数据渲染范围、层级切换因子、描述文件引用的数据文件的地址索引。
步骤S322,根据数据文件的地址索引获取数据文件,数据文件中包括属性表和模型实体。
步骤S330,对待渲染数据进行渲染。
步骤S330中对待渲染数据进行渲染包括如下子步骤:
步骤S331,对数据文件进行解压缩形成数据文件流,数据文件流包括属性表和模型实体。
其中,属性表中包括模型实体的顶点属性。预先在数据文件中的模型实体的顶点属性中会添加一个属性字段,在渲染的过程中,点击模型实体,模型实体的顶点属性勾连属性表中的相应属性。
步骤S332,依据获取的描述文件中的地理数据渲染范围和数据文件中的模型实体,构建地理数据渲染范围内的模型实体的三维实体图像。
步骤S333,提取三维实体图像的边界轮廓,将三维实体图像中边界轮廓闭合区域划分为一个区块。
步骤S334,计算任意两个区块之间的渲染近似度值,将相似度值大于预设阈值的区块合并成新区块,直至无法合并,依次对合并后的区块进行渲染。
步骤S334中包括如下子步骤:
步骤S3341,获取每一个区块的渲染特征值。
渲染特征值包括:纹理图片、材质类型、纹理图片像素值和纹理图片分辨率。
步骤S3342,根据渲染特征值计算两个区块之间的渲染近似度值。
具体的,两个区块之间的渲染近似度值计算公式如下:
Figure 896962DEST_PATH_IMAGE018
其中,
Figure 129361DEST_PATH_IMAGE019
表示两个区块之间的渲染近似度值;
Figure 884696DEST_PATH_IMAGE020
表示两个区块的材质类型系数值,若两个区块的材质类型一值,则
Figure 304176DEST_PATH_IMAGE020
值为1,否则,
Figure 921102DEST_PATH_IMAGE020
值为0;m表示第一区块对应的纹理图片的像素点的总个数,
Figure 8007DEST_PATH_IMAGE021
表示第一区块对应的纹理图片的第i个像素点的像素值;
Figure 419397DEST_PATH_IMAGE022
表示第二区块对应的纹理图片的第j个像素点的像素值;n表示第二区块对应的纹理图片的像素点的总个数;ln表示函数;
Figure 591752DEST_PATH_IMAGE023
表示第一区块对应的纹理图片分辨率;
Figure 497522DEST_PATH_IMAGE024
表示第一区块对应的纹理图片分辨率。
步骤S3343,将相似度值大于预设阈值的区块合并成新区块,直至无法合并。
步骤S3344,依次对合并后的区块进行渲染。
实施例二
如图5所示,本申请提供一种面向三维地理数据的传输和渲染系统100,包括:
场景树构建模块10,用于将三维地理数据划分成分页细节层次模型,构建一组由上至下的场景树;
获取模块20,用于获取当前待渲染的三维地理数据的层级切换因子;
渲染模块30,用于依次加载场景树中最上方(即父级)至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。
本申请实现的有益效果如下:
(1)本申请灵活的三维数据组织形式。满足倾斜摄影模型、激光点云、CAD/BIM、手工模型、地下管线等多源三维数据类型的表达。
(2)本申请引用外部的材质描述文件(json格式),形成复用材质文件集,可以进一步压缩文件体积。同时,在客户端实现中可以针对性的对材质进行排序,减少渲染状态切换造成的性能损耗。
(3)本申请通过挂接外部的资源文件,形成合并纹理文件集,同时合并纹理文件会采用jpg的压缩格式,进一步压缩体积,对于复用情况较小的三维数据,仍然会将纹理数据合并成10M以内的纹理数据,减少多次访问零碎数据的损耗。
(4)本申请数据文件进行了无损压缩,数据体积得到了进一步缩小,在传输到客户端之后再进行解压,提高了文件的传输效率,通过多线程异步加载,同时兼顾数据传输效率和渲染效率。
(5)本申请根据三维数据类型(倾斜摄影模型、激光点云、CAD/BIM、手工模型、地下管线)有针对性的优化和表达。
(6)本申请支持模型对象化与单体化,并挂接属性。
(7)本申请采用json+二进制流的数据形式,后期很容易进行扩展,兼容其他类型的数据;json是Web应用的主流数据交换格式,很容易进行数据传输和解析,同时还很容易进行扩展。所以可以将其用作数据的描述文件。二进制文件流包含的顶点数据在读取后直接进入GPU,节省了数据预处理的时间,提升了渲染时数据处理的效率。
上所述仅为本发明的实施方式而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理的内所做的任何修改、等同替换、改进等,均应包括在本发明的权利要求范围之内。

Claims (10)

1.一种面向三维地理数据的传输和渲染方法,其特征在于,包括如下步骤:
获取待渲染的三维地理数据,采用多细节层次划分的方法将三维地理数据构建成一组由上至下各个节点的模型实体的显示层级不同的场景树;其中,场景树中每一个节点均包括描述文件和数据文件;
获取当前待渲染的三维地理数据的层级切换因子;
依次加载场景树中最上方至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。
2.根据权利要求1所述的面向三维地理数据的传输和渲染方法,其特征在于,构建场景树的方法包括如下步骤:
采用多细节层次划分的方法将描述文件构建至场景树的各个节点;
通过描述文件引用数据文件来构建成场景树基础的瓦片数据;
通过数据文件引用一个外部的复用材质文件集;
通过数据文件引用一个外部的合并纹理工具集。
3.根据权利要求1所述的面向三维地理数据的传输和渲染方法,其特征在于,描述文件包含的属性为:范围、层级切换因子、细分类型、内容和组成该场景树的子节点。
4.根据权利要求3所述的面向三维地理数据的传输和渲染方法,其特征在于,层级切换因子的获取方法为:
根据当前待渲染的三维地理数据的属性特征计算当前三维地理数据的展示细节度值;
依据计算的展示细节度值和层级切换因子预设的展示阈值,为当前待渲染的三维地理数据匹配相应的层级切换因子,从而获得层级切换因子;
其中,预先为每一个层级切换因子设定展示阈值。
5.根据权利要求4所述的面向三维地理数据的传输和渲染方法,其特征在于,展示细节度值的计算公式为:
Figure 507705DEST_PATH_IMAGE001
其中,
Figure 89996DEST_PATH_IMAGE002
表示展示细节度值;L表示观察点与场景树的节点之间的距离;F表示当前三维地理数据中模型所占像素大小;
Figure 749647DEST_PATH_IMAGE003
表示当前三维地理数据中模型的重要系数;
Figure 193529DEST_PATH_IMAGE004
表示当前三维地理数据中模型的半径;
Figure 989447DEST_PATH_IMAGE005
表示需要展示的地表建筑物分辨率。
6.根据权利要求1所述的面向三维地理数据的传输和渲染方法,其特征在于,对场景树中每一个层级数据进行渲染的方法包括如下子步骤:
获取当前层级数据中每一个节点数据的加载时序值;
按照加载时序值由小到大的顺序依次加载当前层级数据中每一个节点的数据,并获取节点数据中的待渲染数据;
对待渲染数据进行渲染。
7.根据权利要求6所述的面向三维地理数据的传输和渲染方法,其特征在于,对待渲染数据进行渲染包括如下子步骤:
对数据文件进行解压缩形成数据文件流,数据文件流包括属性表和模型实体;
依据获取的描述文件中的地理数据渲染范围和数据文件中的模型实体,构建地理数据渲染范围内的模型实体的三维实体图像;
提取三维实体图像的边界轮廓,将三维实体图像中边界轮廓闭合区域划分为一个区块;
计算任意两个区块之间的相似度值,将相似度值大于预设阈值的区块合并成新区块,直至无法合并,依次对合并后的区块进行渲染。
8.根据权利要求7所述的面向三维地理数据的传输和渲染方法,其特征在于,计算任意两个区块之间的渲染近似度值的公式为:
Figure 8218DEST_PATH_IMAGE006
其中,
Figure 889587DEST_PATH_IMAGE007
表示两个区块之间的渲染近似度值;
Figure 386427DEST_PATH_IMAGE008
表示两个区块的材质类型系数值,若两个区块的材质类型一值,则
Figure 302431DEST_PATH_IMAGE008
值为1,否则,
Figure 210213DEST_PATH_IMAGE008
值为0;m表示第一区块对应的纹理图片的像素点的总个数,
Figure 578877DEST_PATH_IMAGE009
表示第一区块对应的纹理图片的第i个像素点的像素值;
Figure 879408DEST_PATH_IMAGE010
表示第二区块对应的纹理图片的第j个像素点的像素值;n表示第二区块对应的纹理图片的像素点的总个数;ln表示函数;
Figure 649918DEST_PATH_IMAGE011
表示第一区块对应的纹理图片分辨率;
Figure 227137DEST_PATH_IMAGE012
表示第一区块对应的纹理图片分辨率。
9.根据权利要求1所述的面向三维地理数据的传输和渲染方法,其特征在于,预先在数据文件中的模型实体的顶点属性中会添加一个属性字段,在渲染的过程中,点击模型实体,模型实体的顶点属性勾连属性表中的相应属性。
10.一种面向三维地理数据的传输和渲染系统,其特征在于,包括:
场景树构建模块,用于获取待渲染的三维地理数据,采用多细节层次划分的方法将三维地理数据划分成分页细节层次模型,构建成一组由上至下各个节点的模型实体的显示层级不同的场景树;其中,场景树中每一个节点均包括描述文件和数据文件;
获取模块,用于获取当前待渲染的三维地理数据的层级切换因子;
渲染模块,用于依次加载场景树中最上方至获取的层级切换因子相对应的层级数据,对加载的层级数据进行渲染。
CN202011014436.8A 2020-09-24 2020-09-24 一种面向三维地理数据的传输和渲染方法及系统 Active CN111858828B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011014436.8A CN111858828B (zh) 2020-09-24 2020-09-24 一种面向三维地理数据的传输和渲染方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011014436.8A CN111858828B (zh) 2020-09-24 2020-09-24 一种面向三维地理数据的传输和渲染方法及系统

Publications (2)

Publication Number Publication Date
CN111858828A true CN111858828A (zh) 2020-10-30
CN111858828B CN111858828B (zh) 2020-12-15

Family

ID=72967700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011014436.8A Active CN111858828B (zh) 2020-09-24 2020-09-24 一种面向三维地理数据的传输和渲染方法及系统

Country Status (1)

Country Link
CN (1) CN111858828B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032590A (zh) * 2021-03-29 2021-06-25 广州繁星互娱信息科技有限公司 特效展示方法、装置、计算机设备及计算机可读存储介质
CN113112594A (zh) * 2021-04-23 2021-07-13 广东电网有限责任公司 基于电力gim的输变电工程三维模型轻量化方法及装置
CN113256803A (zh) * 2021-06-23 2021-08-13 合肥量圳建筑科技有限公司 一种数据压缩方法、装置、设备及存储介质
CN114297751A (zh) * 2021-12-17 2022-04-08 万翼科技有限公司 Bim渲染方法、装置、电子设备及存储介质
CN115393530A (zh) * 2022-10-26 2022-11-25 苏州工业园区测绘地理信息有限公司 海量三维模型的单体化渲染方法、存储介质及电子设备
CN115393524A (zh) * 2022-09-02 2022-11-25 广东国地规划科技股份有限公司 一种基于三维游戏引擎的三维模型渲染方法及系统
CN115439608A (zh) * 2022-09-01 2022-12-06 广州南方智能技术有限公司 基于快照与多路由的模型渲染方法、装置及存储介质
CN116258840A (zh) * 2023-05-16 2023-06-13 深圳大学 层级细节表示树的生成方法、装置、设备及存储介质
CN116361904A (zh) * 2023-05-30 2023-06-30 中国铁路设计集团有限公司 一种渲染引擎下城轨工程bim模型渲染质量审查方法及系统
CN116401332A (zh) * 2023-06-07 2023-07-07 北京航空航天大学 一种大规模三维模型展示优化方法、系统及电子设备
CN116416387A (zh) * 2023-06-12 2023-07-11 中国电建集团昆明勘测设计研究院有限公司 Osgb三维模型快速顶层重建方法
CN117194704A (zh) * 2023-11-07 2023-12-08 航天宏图信息技术股份有限公司 针对部件级实景三维模型属性查询的方法、装置和设备
CN117197382A (zh) * 2023-11-02 2023-12-08 广东省测绘产品质量监督检验中心 一种实景三维数据构建方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105957149A (zh) * 2016-05-31 2016-09-21 浙江科澜信息技术有限公司 一种适用于高效渲染的城市三维模型数据预处理方法
CN106296779A (zh) * 2015-05-19 2017-01-04 深圳市腾讯计算机系统有限公司 一种三维模型渲染显示方法及系统
CN107729389A (zh) * 2017-09-19 2018-02-23 小草数语(北京)科技有限公司 地图显示方法及其装置
CN108765538A (zh) * 2018-06-16 2018-11-06 桂林理工大学 基于cad平台的osgb数据分级渲染的方法
US20200134898A1 (en) * 2018-10-31 2020-04-30 Snap Inc. 3d avatar rendering
CN111105491A (zh) * 2019-11-25 2020-05-05 腾讯科技(深圳)有限公司 场景渲染方法、装置、计算机可读存储介质和计算机设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296779A (zh) * 2015-05-19 2017-01-04 深圳市腾讯计算机系统有限公司 一种三维模型渲染显示方法及系统
CN105957149A (zh) * 2016-05-31 2016-09-21 浙江科澜信息技术有限公司 一种适用于高效渲染的城市三维模型数据预处理方法
CN107729389A (zh) * 2017-09-19 2018-02-23 小草数语(北京)科技有限公司 地图显示方法及其装置
CN108765538A (zh) * 2018-06-16 2018-11-06 桂林理工大学 基于cad平台的osgb数据分级渲染的方法
US20200134898A1 (en) * 2018-10-31 2020-04-30 Snap Inc. 3d avatar rendering
CN111105491A (zh) * 2019-11-25 2020-05-05 腾讯科技(深圳)有限公司 场景渲染方法、装置、计算机可读存储介质和计算机设备

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032590A (zh) * 2021-03-29 2021-06-25 广州繁星互娱信息科技有限公司 特效展示方法、装置、计算机设备及计算机可读存储介质
CN113032590B (zh) * 2021-03-29 2024-05-03 广州繁星互娱信息科技有限公司 特效展示方法、装置、计算机设备及计算机可读存储介质
CN113112594A (zh) * 2021-04-23 2021-07-13 广东电网有限责任公司 基于电力gim的输变电工程三维模型轻量化方法及装置
CN113256803A (zh) * 2021-06-23 2021-08-13 合肥量圳建筑科技有限公司 一种数据压缩方法、装置、设备及存储介质
CN114297751A (zh) * 2021-12-17 2022-04-08 万翼科技有限公司 Bim渲染方法、装置、电子设备及存储介质
CN115439608A (zh) * 2022-09-01 2022-12-06 广州南方智能技术有限公司 基于快照与多路由的模型渲染方法、装置及存储介质
CN115393524A (zh) * 2022-09-02 2022-11-25 广东国地规划科技股份有限公司 一种基于三维游戏引擎的三维模型渲染方法及系统
CN115393530A (zh) * 2022-10-26 2022-11-25 苏州工业园区测绘地理信息有限公司 海量三维模型的单体化渲染方法、存储介质及电子设备
CN116258840A (zh) * 2023-05-16 2023-06-13 深圳大学 层级细节表示树的生成方法、装置、设备及存储介质
CN116258840B (zh) * 2023-05-16 2023-08-11 深圳大学 层级细节表示树的生成方法、装置、设备及存储介质
CN116361904A (zh) * 2023-05-30 2023-06-30 中国铁路设计集团有限公司 一种渲染引擎下城轨工程bim模型渲染质量审查方法及系统
CN116361904B (zh) * 2023-05-30 2023-08-22 中国铁路设计集团有限公司 一种渲染引擎下城轨工程bim模型渲染质量审查方法及系统
CN116401332B (zh) * 2023-06-07 2023-09-29 北京航空航天大学 一种大规模三维模型展示优化方法、系统及电子设备
CN116401332A (zh) * 2023-06-07 2023-07-07 北京航空航天大学 一种大规模三维模型展示优化方法、系统及电子设备
CN116416387A (zh) * 2023-06-12 2023-07-11 中国电建集团昆明勘测设计研究院有限公司 Osgb三维模型快速顶层重建方法
CN116416387B (zh) * 2023-06-12 2023-08-11 中国电建集团昆明勘测设计研究院有限公司 Osgb三维模型快速顶层重建方法
CN117197382A (zh) * 2023-11-02 2023-12-08 广东省测绘产品质量监督检验中心 一种实景三维数据构建方法和装置
CN117197382B (zh) * 2023-11-02 2024-01-12 广东省测绘产品质量监督检验中心 一种实景三维数据构建方法和装置
CN117194704A (zh) * 2023-11-07 2023-12-08 航天宏图信息技术股份有限公司 针对部件级实景三维模型属性查询的方法、装置和设备
CN117194704B (zh) * 2023-11-07 2024-02-06 航天宏图信息技术股份有限公司 针对部件级实景三维模型属性查询的方法、装置和设备

Also Published As

Publication number Publication date
CN111858828B (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
CN111858828B (zh) 一种面向三维地理数据的传输和渲染方法及系统
Yoon et al. Real-time massive model rendering
CN110070613B (zh) 基于模型压缩和异步加载的大型三维场景网页展示方法
CN108133044B (zh) 基于属性分离的空间大数据三维可视化方法及平台
CN102081804B (zh) 在图形硬件中细分几何图像
US9245383B2 (en) Accelerated three-dimensional intersection testing using compressed volumes
CN107992589B (zh) 一种svg地图数据的加载方法、装置及系统
KR101546705B1 (ko) Bim데이터 처리단말 장치의 건물내부 bim데이터 가시화 방법
WO2001008263A2 (en) Method and apparatus for generating atomic parts of graphic representation through skeletonization for interactive visualization applications
US20200118301A1 (en) Conversion of infrastructure model geometry to a tile format
Wand et al. Interactive Editing of Large Point Clouds.
CN111881238A (zh) 一种适用于Web端的轻量级三维数据构建方法、介质和电子设备
CN110969691A (zh) 基于WebGL的摄影数据调度方法及系统
CN112419498B (zh) 一种海量倾斜摄影数据的调度渲染方法
CN113628331B (zh) 一种虚幻引擎中摄影测量模型的数据组织和调度方法
CN112307146B (zh) Gis路线数据展示系统及方法
CN116401332B (zh) 一种大规模三维模型展示优化方法、系统及电子设备
CN103268221A (zh) 一种基于web技术的气象数据体三维显示方法及装置
Deibe et al. Supporting multi-resolution out-of-core rendering of massive LiDAR point clouds through non-redundant data structures
Ribelles et al. Multiresolution modeling of arbitrary polygonal surfaces: a characterization
Sherlock et al. Interactive data styling and multifocal visualization for a multigrid web-based Digital Earth
Zhang et al. A geometry and texture coupled flexible generalization of urban building models
Gan et al. Hybrid organization and visualization of the DSM combined with 3D building model
CN113495933A (zh) 一种矢量瓦片显示方法及系统
Guney Rethinking GIS towards the vision of smart cities through CityGML

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Zhu Xingliang

Inventor after: Cheng Lei

Inventor after: Lu Zhansheng

Inventor after: Li Xiaohui

Inventor before: Zhu Xingliang

Inventor before: Cheng Lei

Inventor before: Lu Zhansheng

Inventor before: Li Xiaohui