CN116433862A - 一种3d全球地形的模型架构方法及装置 - Google Patents
一种3d全球地形的模型架构方法及装置 Download PDFInfo
- Publication number
- CN116433862A CN116433862A CN202310368010.XA CN202310368010A CN116433862A CN 116433862 A CN116433862 A CN 116433862A CN 202310368010 A CN202310368010 A CN 202310368010A CN 116433862 A CN116433862 A CN 116433862A
- Authority
- CN
- China
- Prior art keywords
- user
- level
- bounding box
- segmentation
- plane
- 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.)
- Pending
Links
- 238000010276 construction Methods 0.000 title claims abstract description 8
- 230000011218 segmentation Effects 0.000 claims abstract description 95
- 238000012360 testing method Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 34
- 230000005484 gravity Effects 0.000 claims abstract description 11
- 238000012876 topography Methods 0.000 claims abstract description 6
- 238000000638 solvent extraction Methods 0.000 claims 2
- 238000009877 rendering Methods 0.000 description 22
- 238000004364 calculation method Methods 0.000 description 19
- 238000005192 partition Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供一种3D全球地形的模型架构方法及装置,所述方法的步骤包括:基于经纬度将地形图像中每个像素块匹配至预设的三维地球框架的表面;由所述三维地球框架的重心向地球包围盒的各个顶点连线,将地球包围盒每个面四个顶点在三维地球框架的表面所围成的范围作为第0级分割面,并不断将前一级别的矩形面划分第一预设个数的矩形面,得到下一级别的分割面;对用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为基准面;基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别;为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,确定给用户展示的瓦片。
Description
技术领域
本发明涉及数字地球仿真技术领域,尤其涉及一种3D全球地形的模型架构方法及装置。
背景技术
3D地理信息系统(GeographicInformationSystem,GIS)是随着计算机可视化技术的发展和2DGIS的成熟,在20世纪90年代初开始为人们所关注的。在传统的GIS领域内,信息主要是以二维分割面地图的形式呈现给使用者。这种形式继承了普通二维地图显示的特点,对移动设备的硬件条件要求较低,数据传输量较小,但其直观性较差。信息的表现方式与最终使用者直接接触,是服务质量及效果最直观的体现。因此,GIS的数据表现方式也直接影响着GIS对用户的适用度。进入20世纪90年代后,三维可视化与虚拟现实技术的迅猛发展使得建立3DGIS成为可能。
在现有的全球3DGIS中,通常需要建立地球的椭球三维模型,而当用户在获取模型中的部分图像时,需要计算用于视角到椭球的覆盖范围才能获取用于所需的图像数据,但由于地球的椭球三维模型数据量庞大且椭球的计算较为复杂,往往需要消耗大量的计算资源且数据获取效率较低。
发明内容
鉴于此,本发明的实施例提供了一种3D全球地形的模型架构方法,以消除或改善现有技术中存在的一个或更多个缺陷。
本发明的一个方面提供了一种3D全球地形的模型架构方法,所述方法的步骤包括:
获取地形图像,基于经纬度将所述地形图像中每个像素块匹配至预设的三维地球框架的表面;
构建所述三维地球框架的地球包围盒,由所述三维地球框架的重心向所述地球包围盒的各个顶点连线,将所述地球包围盒每个面四个顶点在所述三维地球框架的表面所围成的范围作为第0级分割面,将所述地球包围盒每个面进行平均划分为第一预设个数的矩形面,将每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第1级分割面,并不断将前一级别的矩形面划分第一预设个数的矩形面,得到下一级别的分割面;
构建所述第0级分割面的分割面包围盒,获取用户的视锥,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为用户展示的基准面;
基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别;
为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片。
采用上述方案,本方案通过构建地球包围盒能够快速对所述三维地球框架的表面进行分界和分级,高级别分割面分辨率高于低级别分割面分辨率,并基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别,得到对应用户视距的分割面级别,再通过为每个级别分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,能够快速确定用户所要求的范围,首先通过确定为用户展示的分割面级别及分割面,降低了对模型进行全面计算的计算量,并进一步通过对瓦片包围盒进行相交测试,则本方案的模型架构便于快速计算,相对于椭球计算,降低了计算复杂度。
在本发明的一些实施方式中,在为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片的步骤中,将与所述视锥发生相交的包围盒所对应的瓦片以及与所述视锥发生相交的包围盒所围成范围中的瓦片作为给用户展示的瓦片。
在本发明的一些实施方式中,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为用户展示的基准面的步骤为,将所述用户的视锥与每个第0级分割面的分割面包围盒进行相交测试,将出现相交的分割面包围盒所对应的第0级分割面作为基准面。
在本发明的一些实施方式中,所述基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别的步骤包括:
获取所述基准面对应的所述地球包围盒的面,将所述基准面对应的所述地球包围盒的面作为备选分割面,计算所述视锥顶点与该地球包围盒的面中每个第1级分割面的距离,若其中最小的距离值大于预设的阈值,则为用户展示的分割面级别为第0级;
若其中最小的距离值小于或等于预设的阈值,则将最小的距离值对应的第1级分割面作为备选分割面,计算所述视锥顶点与备选分割面中每个下一级分割面的距离,直到其中最小的距离值大于预设的阈值,确定用户展示的分割面级别。
在本发明的一些实施方式中,在对用户展示的分割面中的瓦片构建瓦片包围盒步骤包括,获取在确定用户展示的分割面级别的过程中最后一个备选分割面,将该分割面作为给用户展示的分割面。
在本发明的一些实施方式中,低级别的分割面对应的阈值大于高级别的分割面对应的阈值。
在本发明的一些实施方式中,所述对用户展示的分割面中的瓦片构建瓦片包围盒的步骤包括对每个级别的分割面划分瓦片,对每个级别的分割面划分瓦片的步骤为:
获取所述分割面在所述地球包围盒上对应的面,将该面平均划分为第二预设个数的矩形面;
将每个矩形面的四个顶点与所述三维地球框架的重心连线,将四个顶点与所述三维地球框架的重心连线在所述三维地球框架的表面所围成的范围作为瓦片。
在本发明的一些实施方式中,低级别的分割面的瓦片的分辨率低于高级别的分割面的瓦片的分辨率。
在本发明的一些实施方式中,对用户展示的分割面中的瓦片构建瓦片包围盒的步骤为构建容纳所述瓦片的最小长方体包围盒。
在本发明的一些实施方式中,在获取地形图像,基于经纬度将所述地形图像中每个像素块匹配至预设的三维地球框架的表面的步骤中,获取所述地形图像中每个像素块所覆盖的经纬度范围,将该像素块匹配至预设的三维地球框架的表面的对应位置。
本发明的第二方面还提供一种3D全球地形的模型架构装置,该装置包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述方法所实现的步骤。
本发明的第三方面还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述3D全球地形的模型架构方法所实现的步骤。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在说明书以及附图中具体指出并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1为本发明3D全球地形的模型架构方法一种实施方式的示意图;
图2为对图1中S300步骤细化的实施方式的示意图;
图3为对图2中S400步骤细化的实施方式的示意图;
图4为对图3中S500步骤细化的实施方式的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
为解决以上问题,如图1所示,本发明提出一种3D全球地形的模型架构方法,所述方法的步骤包括:
步骤S100,获取地形图像,基于经纬度将所述地形图像中每个像素块匹配至预设的三维地球框架的表面;
在具体实施过程中,所述地形图像包括卫星图像,卫星图像可以为Geo-Tif文件,在Geo-Tif文件的处理步骤中,Geo-Tif文件分为DOM和DEM两种类型,给定一张Geo-Tif,检测图像通道数量,如果为单通道,说明为DEM,否则为DOM,读取工具为GDAL+PROJ,生成的文件使用四叉树管理。
在具体实施过程中,本方案中还包括高程数据,对于高程数据,限定最大数据为[-10000000,10000000]米,对于[-1,1]米区间的数据,使用单字节保存,对于[-300,300]米区间的数据,使用双字节保存,其他使用四字节编码保存。编码后,进一步使用LZ77压缩算法压缩。对于DOM,直接使用DXT1算法压缩。
四叉树文件包含2种元素:瓦片信息、瓦片数据。瓦片信息负责构建四叉树列表,信息中包含指向4个子节点与瓦片数据的地址,瓦片数据为实际的使用数据,包含数据大小与类型,二者为引用关系。当写入数据时,优先查看是否有空闲数据,如果没有,则在文件尾部写入。如果写入的数据已经存在,则尝试覆盖,如果新数据比旧数据更大,则在新的空闲区域写入数据,并更新瓦片信息的数据地址。
步骤S200,构建所述三维地球框架的地球包围盒,由所述三维地球框架的重心向所述地球包围盒的各个顶点连线,将所述地球包围盒每个面四个顶点在所述三维地球框架的表面所围成的范围作为第0级分割面,将所述地球包围盒每个面进行平均划分为第一预设个数的矩形面,将每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第1级分割面,并不断将前一级别的矩形面划分第一预设个数的矩形面,得到下一级别的分割面;
在本发明的一些实施方式中,所述三维地球框架为地球的模型框架,所述地球包围盒为长方体包围盒,所述地球包围盒将所述三维地球框架容纳在内。
在本发明的一些实施方式中,在将所述地球包围盒每个面进行平均划分为第一预设个数的矩形面的步骤中,可以将所述地球包围盒每个面平均划分为4个全等的矩形。
在具体实施过程中,不断将前一级别的矩形面划分第一预设个数的矩形面,得到下一级别的分割面的步骤中,由所述三维地球框架的重心向所述地球包围盒的各个顶点连线,将所述地球包围盒每个面四个顶点在所述三维地球框架的表面所围成的范围作为第0级分割面;将所述地球包围盒每个面进行平均划分为第一预设个数的第1级分割面对应的矩形面,将第1级分割面对应的每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第1级分割面;将所述第1级分割面对应的每个矩形面进行平均划分为第一预设个数的第2级分割面对应的矩形面,将第2级分割面对应的每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第2级分割面;将所述第2级分割面对应的每个矩形面进行平均划分为第一预设个数的第3级分割面对应的矩形面,将第3级分割面对应的每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第3级分割面;采用上述方式,划分至第21级分割面。
在具体实施过程中,第0级分割面对应的矩形面即为所述地球包围盒的面在三维地球框架的表面所对应的范围。
在具体实施过程中,可以将每4级分割面合并为一级进行计算。
在具体实施过程中,由于全球数据较大,因此要使用64位文件寻址方式,渲染时,优先构建粗略层级的数据,比如最初要从数据为第0级分割面开始构建。
步骤S300,构建所述第0级分割面的分割面包围盒,获取用户的视锥,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为用户展示的基准面;
在具体实施过程中,所述用户的视锥即为用户视线覆盖的范围,视锥顶点即为用户的相机点。
在具体实施过程中,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试的过程中,若视锥范围与分割面包围盒出现交集,则将该分割面包围盒对应的第0级分割面确定为用户展示的基准面。
步骤S400,基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别;
步骤S500,为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片。
采用上述方案,本方案通过构建地球包围盒能够快速对所述三维地球框架的表面进行分界和分级,高级别分割面分辨率高于低级别分割面分辨率,并基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别,得到对应用户视距的分割面级别,再通过为每个级别分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,能够快速确定用户所要求的范围,首先通过确定为用户展示的分割面级别及分割面,降低了对模型进行全面计算的计算量,并进一步通过对瓦片包围盒进行相交测试,相对于椭球计算,降低了计算复杂度。
在本发明的一些实施方式中,在为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片的步骤中,将与所述视锥发生相交的包围盒所对应的瓦片以及与所述视锥发生相交的包围盒所围成范围中的瓦片作为给用户展示的瓦片。
在本发明的一些实施方式中,所述瓦片均预设有瓦片编号,基于所述瓦片编号提取图像数据。
本方案的瓦片采用3种缓存状态:1、超时状态;2、渲染状态;3、资源加载状态。
超时状态:设定一个超时时间,如果瓦片在有限时间内,没有被有效裁剪或渲染,则进入待机状态。
渲染状态:每次裁剪会重置渲染状态,当节点裁剪有效时,将节点状态设置为裁剪态。如果节点被放入到渲染管线中,则设置为渲染态。
资源加载状态:如果节点的DEM或DOM有其中一个正在加载,则将节点设置为资源加载中的状态。
多线程缓存计算,每隔1秒,启动多线程任务,更新所有节点的状态,将待机的节点放入“释放列表”中。
待多线程缓存更新后,位于主线程中,检测“释放列表”,再一次每个节点是否处于可释放状态,如果可释放,则将节点从父节点分离,进行释放。检测整个缓存释放的消耗时间,如果超过一定限度,如1毫秒,则放弃本次缓存清理,防止对渲染造成卡顿。
如图2所示,在本发明的一些实施方式中,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为用户展示的基准面的步骤为,步骤310,构建所述第0级分割面的分割面包围盒,获取用户的视锥;
步骤320,将所述用户的视锥与每个第0级分割面的分割面包围盒进行相交测试,将出现相交的分割面包围盒所对应的第0级分割面作为基准面。
采用上述方案,首先确定基准面,所述基准面为三维地球框架的包围盒6个面对应的6个方向的任一个,再之后的计算中只需要在一个方向进行计算,大幅降低计算量。
如图3所示,在本发明的一些实施方式中,所述基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别的步骤包括:
步骤S410,获取所述基准面对应的所述地球包围盒的面,将所述基准面对应的所述地球包围盒的面作为备选分割面,计算所述视锥顶点与该地球包围盒的面中每个第1级分割面的距离;
步骤S420,若其中最小的距离值大于预设的阈值,则为用户展示的分割面级别为第0级;
步骤S430,若其中最小的距离值小于或等于预设的阈值,则将最小的距离值对应的第1级分割面作为备选分割面,计算所述视锥顶点与备选分割面中每个下一级分割面的距离;
步骤S440,直到其中最小的距离值大于预设的阈值,确定用户展示的分割面级别。
在本发明的一些实施方式中,在计算所述视锥顶点与该地球包围盒的面中每个第1级分割面的距离的步骤即为在不断将前一级别的矩形面划分第一预设个数的矩形面,得到下一级别的分割面的步骤中,将所述地球包围盒每个面进行平均划分为第一预设个数的第1级分割面对应的矩形面,将第1级分割面对应的每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第1级分割面,即若第一预设个数为4,则将所述基准面平均分为4个矩形面,4个矩形面对应4个第1级分割面,计算所述视锥顶点与4个第1级分割面的距离,若4个距离值中最小的值大于预设的阈值,则确定为用户展示的分割面级别为第0级,若4个距离值中最小的值小于或等于预设的阈值,则进一步将4个距离值中最小的值对应的第1级分割面所对应的矩形面进一步平均分为4个矩形面,此时的4个矩形面对应4个第2级分割面,计算所述视锥顶点与4个第2级分割面的距离;重复上述计算,确定为用户展示的分割面级别。
采用上述方案,本方案能够基于上述计算,逐步确定为用户展示的分割面级别,由于每个分割面级别对应图像精度不同,本方案采用逐级确定的方式,一方面能够快速确定用户所需要的精度,且能够保证为用户提供的图像精度与用户相机点的距离相匹配,保证用户获取到的图像的准确度。
在本发明的一些实施方式中,在对用户展示的分割面中的瓦片构建瓦片包围盒步骤包括,获取在确定用户展示的分割面级别的过程中最后一个备选分割面,将该分割面作为给用户展示的分割面。
采用上述方案,通过上述计算,确定实际为用户展示的分割面,即实际工作只需要对确定的分割面进行计算,实际工作中不许需要对其他分割面进行后续的瓦片包围盒的相交测试,本方案在通过瓦片包围盒降低计算量的基础上,进一步降低了计算量。
在本发明的一些实施方式中,低级别的分割面对应的阈值大于高级别的分割面对应的阈值。
采用上述方案,由于低级别分割面角度较大,若为用户确定的是低级别的分割面,则说明相机点距离地面较远,则对应阈值也较大,保证显示效果。
如图4所示,在本发明的一些实施方式中,所述对用户展示的分割面中的瓦片构建瓦片包围盒的步骤包括步骤S511,对每个级别的分割面划分瓦片,对每个级别的分割面划分瓦片,具体步骤为:
步骤S512,获取所述分割面在所述地球包围盒上对应的面,将该面平均划分为第二预设个数的矩形面;
步骤S513,将每个矩形面的四个顶点与所述三维地球框架的重心连线,将四个顶点与所述三维地球框架的重心连线在所述三维地球框架的表面所围成的范围作为瓦片。
在本发明的一些实施方式中,步骤S500的步骤包括:
为给用户展示的分割面中的瓦片构建瓦片包围盒;
步骤S520,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片。
在具体实施过程中,所述第二预设个数可以为16。
在本发明的一些实施方式中,低级别的分割面的瓦片的分辨率低于高级别的分割面的瓦片的分辨率。
在本发明的一些实施方式中,在相邻的两个级别的分割面中,高级别瓦片的分辨率为低级别瓦片的分辨率的两倍。
在本发明的一些实施方式中,对用户展示的分割面中的瓦片构建瓦片包围盒的步骤为构建容纳所述瓦片的最小长方体包围盒。
在本发明的一些实施方式中,在获取地形图像,基于经纬度将所述地形图像中每个像素块匹配至预设的三维地球框架的表面的步骤中,获取所述地形图像中每个像素块所覆盖的经纬度范围,将该像素块匹配至预设的三维地球框架的表面的对应位置。
在现有技术中,全球3DGIS的应用越来越广泛,如仿真训练、数字孪生等,存在无法一次性生成全球数据、渲染卡顿、地表与外太空难以平滑切换、生成数据占用磁盘过大、70~90纬度范围无法生成数据的不足的问题;
而本方案通过构建三维地球框架的包围盒、分割面的包围盒及每个瓦片的包围盒首先鞥能够实现快速的计算,避免渲染卡顿,保证地表与外太空的平滑切换,生成数据量小,避免对磁盘的大量占用,且解决了70~90纬度范围无法生成数据的问题。
在具体实施过程中,本方案保证显示效果的同时,尽量降低数据读取对渲染效率的影响。
多线程资源加载。地形数据使用2个线程加载,一个负责DEM加载,一个负责DOM加载。在加载中,就进行顶点的创建与包围盒计算,核心在于尽可能将CPU端的工作在非主线程中完成,GPU资源在真正渲染时在主线程创建。
瓦片从第0级分割面开始创建,如果第0级分割面的数据没有加载完成,不进行子节点的创建。
瓦片分为根节点、结构性节点、渲染节点和叶子节点。其中结构性节点不用于渲染,仅用于维持四叉树结构。判断是否要进入更细节的节点创建,则根据节点包围球到相机的距离,此距离在地形模块一开始就构建,包括0~20共21级的阈值距离,例如当相机距离为第0级到第1级的范围时,仅渲染第0级分割面;当距离在第1级分割面内时,则细分第0级分割面的子节点,进行进一步的裁剪。渲染数据由父节点构建,一次构建289x289个顶点,子节点无需再加载,渲染时,直接使用父节点保存的数据。这样可以降低数据的访问消耗。
节点裁剪。当视锥体与瓦片的包围盒有交集时,尝试将此瓦片放入渲染队列中,先检查是否DEM数据加载完成,如果没有加载,则将DEM加载打包为一个多线程任务,放到加载队列中,且裁剪器忽略此瓦片的渲染,也不进行进一步子节点的裁剪。当渲染队列中,已经有加载任务时,判断是否新增加载任务会导致与现有的加载冲突,如果有冲突,也放弃此次加载。DOM数据不要求类似DEM的强制加载,当瓦片没有加载DOM时,提交任务,但仍然将瓦片加入到渲染队列中,渲染时,查询是否DOM已经加载完成,如果没有完成,则使用其父节点的DOM数据渲染。
本方案的有益效果包括:
1.全球数据的生成,产生的数据大小与输入的源数据精度相关,且生成数据可继续修改。
2,全球数据高效加载和全球数据高效渲染。
3.地表与外太空无缝过度。
4.数据挂载。允许生成不同区域的数据为单独的硬盘文件,可以不同的文件组合挂载使用。
5.采用方盒包围球映射技术,支持全球无死角的数据处理与调度。
本发明实施例还提供一种3D全球地形的模型架构装置,该装置包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述方法所实现的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述3D全球地形的模型架构方法所实现的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、软盘、硬盘、可移动存储盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种3D全球地形的模型架构方法,其特征在于,所述方法的步骤包括:
获取地形图像,基于经纬度将所述地形图像中每个像素块匹配至预设的三维地球框架的表面;
构建所述三维地球框架的地球包围盒,由所述三维地球框架的重心向所述地球包围盒的各个顶点连线,将所述地球包围盒每个面四个顶点在所述三维地球框架的表面所围成的范围作为第0级分割面,将所述地球包围盒每个面进行平均划分为第一预设个数的矩形面,将每个矩形面四个顶点在所述三维地球框架的表面所围成的范围作为第1级分割面,并不断将前一级别的矩形面划分第一预设个数的矩形面,得到下一级别的分割面;
构建所述第0级分割面的分割面包围盒,获取用户的视锥,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为用户展示的基准面;
基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别;
为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片。
2.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,在为给用户展示的分割面中的瓦片构建瓦片包围盒,对用户的视锥与瓦片包围盒进行相交测试,基于相交测试确定给用户展示的瓦片的步骤中,将与所述视锥发生相交的包围盒所对应的瓦片以及与所述视锥发生相交的包围盒所围成范围中的瓦片作为给用户展示的瓦片。
3.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,对所述用户的视锥与所述第0级分割面的分割面包围盒进行相交测试,将测试得到第0级分割面确定为用户展示的基准面的步骤为,将所述用户的视锥与每个第0级分割面的分割面包围盒进行相交测试,将出现相交的分割面包围盒所对应的第0级分割面作为基准面。
4.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,所述基于用户的视锥顶点与各个级别分割面的距离确定为用户展示的分割面级别的步骤包括:
获取所述基准面对应的所述地球包围盒的面,将所述基准面对应的所述地球包围盒的面作为备选分割面,计算所述视锥顶点与该地球包围盒的面中每个第1级分割面的距离,若其中最小的距离值大于预设的阈值,则为用户展示的分割面级别为第0级;
若其中最小的距离值小于或等于预设的阈值,则将最小的距离值对应的第1级分割面作为备选分割面,计算所述视锥顶点与备选分割面中每个下一级分割面的距离,直到其中最小的距离值大于预设的阈值,确定用户展示的分割面级别。
5.根据权利要求4所述的3D全球地形的模型架构方法,其特征在于,在对用户展示的分割面中的瓦片构建瓦片包围盒步骤包括,获取在确定用户展示的分割面级别的过程中最后一个备选分割面,将该分割面作为给用户展示的分割面。
6.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,低级别的分割面对应的阈值大于高级别的分割面对应的阈值。
7.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,所述对用户展示的分割面中的瓦片构建瓦片包围盒的步骤包括对每个级别的分割面划分瓦片,对每个级别的分割面划分瓦片的步骤为:
获取所述分割面在所述地球包围盒上对应的面,将该面平均划分为第二预设个数的矩形面;
将每个矩形面的四个顶点与所述三维地球框架的重心连线,将四个顶点与所述三维地球框架的重心连线在所述三维地球框架的表面所围成的范围作为瓦片。
8.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,为给用户展示的分割面中的瓦片构建瓦片包围盒的步骤为构建容纳所述瓦片的最小长方体包围盒。
9.根据权利要求1所述的3D全球地形的模型架构方法,其特征在于,在获取地形图像,基于经纬度将所述地形图像中每个像素块匹配至预设的三维地球框架的表面的步骤中,获取所述地形图像中每个像素块所覆盖的经纬度范围,将该像素块匹配至预设的三维地球框架的表面的对应位置。
10.一种3D全球地形的模型架构装置,其特征在于,该装置包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如权利要求1~9任一项所述方法所实现的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310368010.XA CN116433862A (zh) | 2023-04-08 | 2023-04-08 | 一种3d全球地形的模型架构方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310368010.XA CN116433862A (zh) | 2023-04-08 | 2023-04-08 | 一种3d全球地形的模型架构方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116433862A true CN116433862A (zh) | 2023-07-14 |
Family
ID=87092080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310368010.XA Pending CN116433862A (zh) | 2023-04-08 | 2023-04-08 | 一种3d全球地形的模型架构方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116433862A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117789034A (zh) * | 2024-01-02 | 2024-03-29 | 广东省气象数据中心(广东省气象探测中心、广东省气象档案馆) | 一种3d可视化气象数据监控方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110316854A1 (en) * | 2010-06-23 | 2011-12-29 | Bryan Vandrovec | Global Visualization Process Terrain Database Builder |
CN102831644A (zh) * | 2012-07-09 | 2012-12-19 | 哈尔滨工程大学 | 一种海洋环境信息三维可视化方法 |
CN103714167A (zh) * | 2013-12-31 | 2014-04-09 | 上海师范大学 | 一种灾害信息时空数据在线三维显示方法 |
CN104867174A (zh) * | 2015-05-08 | 2015-08-26 | 腾讯科技(深圳)有限公司 | 一种三维地图渲染显示方法及系统 |
US20170090460A1 (en) * | 2015-09-25 | 2017-03-30 | Microsoft Technology Licensing, Llc | 3D Model Generation From Map Data |
CN111563948A (zh) * | 2020-03-30 | 2020-08-21 | 南京舆图科技发展有限公司 | 基于gpu进行资源动态处理和缓存的虚拟地形渲染方法 |
CN112530009A (zh) * | 2020-11-06 | 2021-03-19 | 四川见山科技有限责任公司 | 一种三维地形图绘制方法及系统 |
CN114494623A (zh) * | 2022-01-24 | 2022-05-13 | 北京中航双兴科技有限公司 | 基于lod的地形渲染方法及装置 |
-
2023
- 2023-04-08 CN CN202310368010.XA patent/CN116433862A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110316854A1 (en) * | 2010-06-23 | 2011-12-29 | Bryan Vandrovec | Global Visualization Process Terrain Database Builder |
CN102831644A (zh) * | 2012-07-09 | 2012-12-19 | 哈尔滨工程大学 | 一种海洋环境信息三维可视化方法 |
CN103714167A (zh) * | 2013-12-31 | 2014-04-09 | 上海师范大学 | 一种灾害信息时空数据在线三维显示方法 |
CN104867174A (zh) * | 2015-05-08 | 2015-08-26 | 腾讯科技(深圳)有限公司 | 一种三维地图渲染显示方法及系统 |
US20170090460A1 (en) * | 2015-09-25 | 2017-03-30 | Microsoft Technology Licensing, Llc | 3D Model Generation From Map Data |
CN111563948A (zh) * | 2020-03-30 | 2020-08-21 | 南京舆图科技发展有限公司 | 基于gpu进行资源动态处理和缓存的虚拟地形渲染方法 |
CN112530009A (zh) * | 2020-11-06 | 2021-03-19 | 四川见山科技有限责任公司 | 一种三维地形图绘制方法及系统 |
CN114494623A (zh) * | 2022-01-24 | 2022-05-13 | 北京中航双兴科技有限公司 | 基于lod的地形渲染方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117789034A (zh) * | 2024-01-02 | 2024-03-29 | 广东省气象数据中心(广东省气象探测中心、广东省气象档案馆) | 一种3d可视化气象数据监控方法及系统 |
CN117789034B (zh) * | 2024-01-02 | 2024-05-28 | 广东省气象数据中心(广东省气象探测中心、广东省气象档案馆) | 一种3d可视化气象数据监控方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Elseberg et al. | One billion points in the cloud–an octree for efficient processing of 3D laser scans | |
KR101140460B1 (ko) | 그래픽 시스템, 꼭지점 데이터의 타일 기반 변환 방법 및 컴퓨터 판독가능한 저장 매체 | |
US8154547B2 (en) | Method and system for early Z test in title-based three-dimensional rendering | |
KR101546703B1 (ko) | 대용량 건물 bim데이터의 시각화 시스템 | |
CN110706324B (zh) | 一种天气粒子渲染的方法及装置 | |
US8970583B1 (en) | Image space stylization of level of detail artifacts in a real-time rendering engine | |
CN110442393B (zh) | 地图动态加载方法、计算机存储介质及电子设备 | |
US20140078143A1 (en) | Apparatus and method for scheduling of ray tracing | |
TWI434226B (zh) | 影像處理技術 | |
US11315302B2 (en) | Dedicated ray memory for ray tracing in graphics systems | |
US20090106530A1 (en) | System, method, and computer program product for generating a ray tracing data structure utilizing a parallel processor architecture | |
US7218317B2 (en) | Mechanism for reducing Z buffer traffic in three-dimensional graphics processing | |
US8345064B2 (en) | Method and system for tile binning using half-plane edge function | |
US20140267266A1 (en) | Generating anti-aliased voxel data | |
US8928661B2 (en) | Representing a field over a triangular mesh | |
US20200250877A1 (en) | Residency map descriptors | |
CN116433862A (zh) | 一种3d全球地形的模型架构方法及装置 | |
Suárez et al. | An efficient terrain Level of Detail implementation for mobile devices and performance study | |
CN113495933A (zh) | 一种矢量瓦片显示方法及系统 | |
CN106485654B (zh) | 一种矢量数据的处理方法及装置 | |
CN116745800A (zh) | 针对高速缓存行的未命中请求的选择性生成 | |
CN116261740A (zh) | 基于每个信道压缩纹理数据 | |
CN114494623A (zh) | 基于lod的地形渲染方法及装置 | |
CN116433863A (zh) | 一种地形数据模型的数据管理方法及装置 | |
KR100749123B1 (ko) | 유비쿼터스 환경에서 gps 기반의 실시간 환경 정보입력기 |
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 |