CN118484438A - 一种全球级别矢量瓦片数据压缩构建和动态lod加载方法 - Google Patents
一种全球级别矢量瓦片数据压缩构建和动态lod加载方法 Download PDFInfo
- Publication number
- CN118484438A CN118484438A CN202410944469.4A CN202410944469A CN118484438A CN 118484438 A CN118484438 A CN 118484438A CN 202410944469 A CN202410944469 A CN 202410944469A CN 118484438 A CN118484438 A CN 118484438A
- Authority
- CN
- China
- Prior art keywords
- data
- level
- vector
- tile
- global
- 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
Links
- 238000011068 loading method Methods 0.000 title claims abstract description 48
- 238000013144 data compression Methods 0.000 title claims abstract description 20
- 238000010276 construction Methods 0.000 title claims abstract description 19
- 238000009877 rendering Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 36
- 238000000034 method Methods 0.000 claims description 12
- 230000000694 effects Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 8
- 230000003287 optical effect Effects 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 3
- 230000007423 decrease Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 claims description 3
- 238000004321 preservation Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 claims 2
- 239000002356 single layer Substances 0.000 abstract description 4
- 230000000007 visual effect Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Remote Sensing (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种全球级别矢量瓦片数据压缩构建和动态LOD加载方法,属于地理信息数据处理技术领域,且公开了一种全球级别矢量瓦片数据压缩构建和动态LOD加载方法,包括A1:构建全球范围的瓦片空间位置信息,A2:全球遥感数据转换为由点、线、面构成的矢量数据,A3:矢量数据渲染等级编码,A4:矢量数据压缩存储。该全球级别矢量瓦片数据压缩构建和动态LOD加载方法,通过将大批量数据存储在矢量瓦片中,使用较低等级单层的矢量瓦片进行存储,并使用属性记录点所属的等级;可以无损的将全球的矢量数据压缩存储在小空间的矢量瓦片中,并支持动态的LOD加载;对于大批量点的加载,使用add模式代替原有的replace模式,实现批量点的流畅加载和卸载。
Description
技术领域
本发明涉及地理信息数据处理技术领域,具体为一种全球级别矢量瓦片数据压缩构建和动态LOD加载方法。
背景技术
传统的二维GIS表达形式更多展示了平面位置信息,缺少立体的空间信息。目前数字孪生的发展开始广泛集中在城市级别的数据存储、加载和渲染,而全球范围的数字孪生系统研究较少,全球的数字孪生系统对生态场景模拟、智慧农业、虚拟现实、元宇宙、全球数字孪生等领域具有重要价值;全球数字孪生系统的数据存储和流畅调度是一个重要的课题;该课题涉及到大量的数据,包括来自传感器、设备、模拟仿真等各个方面的数据,因此,存储和处理这些大规模数据的能力成为一个挑战,需要有高效的存储系统和处理技术来应对,同时,大批量的全球数据流畅地调度加载也是另一项技术难题。
矢量瓦片金字塔是一种多分辨率层次模型,在统一的空间参照下,根据用户需要以不同分辨率存储与展示矢量数据,形成分辨率由粗到细、数据量由小到大的金字塔结构,在金字塔的同一层级下,利用与空间数据坐标轴线平行的分割线将数据空间划分为多个统一大小的格网(如512*512像素),并基于该格网对空间数据进行剪切,形成矢量瓦片,在金字塔的不同层级下,空间数据被简化为不同级别的细节层次,并根据LOD模型组织成金字塔结构,与栅格瓦片相比,矢量瓦片可以减少瓦片的数据量,并提供更为方便的空间数据表示方法,并且,由于矢量瓦片继承矢量数据的特点,以地理要素为单位,因此它可以为用户提供个性化信息展示的可能性,矢量瓦片技术已经被应用于空间数据处理、制图和分析等不同场景。
但进行矢量要素数据展示时,常面临矢量数据过大导致的计算耗时过长,可视化流畅度表现效果不佳的通病,主要是矢量要素数据包含的顶点数量过于庞大,而目前个人、企业级计算机的可视化系统还不足以快速处理动辄数万至数十万的线面矢量数据及其可视化,同时对于大体量矢量数据一次返回在地图展示数据过于密集容易造成浏览器卡死崩溃,浏览体验差,在地图上输出速度慢,因此提出一种全球级别矢量瓦片数据压缩构建和动态LOD加载方法来解决上述问题。
发明内容
解决的技术问题
针对现有技术的不足,本发明提供了一种全球级别矢量瓦片数据压缩构建和动态LOD加载方法,具备加载速度快的优点,解决了矢量要素数据包含的顶点数量过于庞大,可视化流畅度表现效果不佳的问题。
技术方案
为实现上述加载速度快的目的,本发明提供如下技术方案:一种全球级别矢量瓦片数据压缩构建方法,包括如下步骤:
A1:根据矢量瓦片La-Lb金字塔层级,构建全球范围的瓦片空间位置信息,并写入头文件。
其中,所述A1中a和b,其特征为1≤a≤21,1≤b≤21,且a<b;
A1-1:令矢量瓦片金字塔层级L=a;
A1-2:根据矢量瓦片金字塔层级L,计算出WGS84坐标系统下全球剖分的所有瓦片行列号、瓦片的经纬度坐标范围、分辨率信息,将信息写入头文件;
A1-3:令L=L+1, 当L≤b时继续;
A1-4:重复步骤A1-2和步骤A1-3;
A1-5:当L=b,完成所有层级瓦片的地理坐标构建,得到矢量瓦片金字塔。
A2:令L=c,其中a≤c≤b,利用瓦片经纬度范围裁剪全球遥感数据,裁剪后的全球遥感数据转换为由点、线、面构成的矢量数据。
其中,所述A2中c,其特征为1≤c≤21;
A3:矢量数据渲染等级编码:对矢量的每个点增加显示等级(show_level)属性参数,点、线、面数据分别设置渲染等级属性。
A3-1:对于点数据:点的数量为num,令n=c-a ,随机取num×(1/2)1、num×(1/2)2、num×(1/2)3、... 、num×(1/2)n个点,分别设置show_level为c、c+1、...、b-1,最后剩下的num×(1/2)n个点设置show_level为b,这些等级在后续加载时使用。
A3-2:对于线和面数据,采用抽稀算法渐进地计算show_level。
A3-2-1:对于矢量线或面文件的元素,令L=c;
A3-2-2:以L级别瓦片的分辨率为距离阈值,使用抽稀算法简化元素,简化后对象的点数量会减少,如果点的show_level未设置值,则设置为L;
A3-2-3:令L=L+1,L≤b;
A3-2-4:重复步骤A3-2-2和A3-2-3;
A3-2-5:当L=b,如果点的show_level未设置值,则设置为b;完成所有点show_level的计算过程。
A4:矢量数据压缩存储。
A4-1:将矢量数据使用Delta 编码方法基于相邻点之间的差异进行数据压缩,对于每个点,它的坐标值与前一个点的坐标值之间的差异被编码并存储,由于地图数据中相邻点之间的差异通常比较小,因此Delta编码可以有效地减少存储空间。
A4-2:在A4-1编码后数据转换为一种紧凑的二进制格式数据流进行存储,并使用gzip算法对二进制数据流进行压缩。
A4-3:压缩数据写入数据库;具体为将矢量瓦片数据写入SQLite、PostgreSQL、MySQL 等数据库引擎中,并根据瓦片的序号创建索引,便于快速检索。
进一步,所述步骤A2中c为数据显示的最低等级。
进一步,所述步骤A2中全球遥感数据为构建全球数字孪生系统所需的数据,包括光学遥感影像、红外遥感影像、地表分类影像、植被类别影像、植被高度影像、OSM数据和其他属性数据。
进一步,所述步骤A3-2中抽稀算法为Ramer-Douglas-Peucker算法、Visvalingam-Whyatt算法、道格拉斯-普克算法(DP 算法)、兰道尔-斯特劳森算法(LRS 算法)或Visvalingam's Algorithm With Topology Preservation(VATP 算法)。
一种全球级别压缩矢量瓦片动态LOD加载方法,包括如下步骤:
B1:解析头文件;从矢量瓦片头文件中,解析出所有LOD级别全球范围的瓦片空间位置信息,包括级别、行列号、分辨率、经纬度范围等信息。将这些信息构建一个四叉树数据结构进行保存,方便快速检索。
B2:请求瓦片数据;根据用户的视角和距离,从B1的四叉树中,确定需要加载的瓦片等级d和行列号,以及确定瓦片加载的优先级,然后,向服务器发送请求,获取矢量瓦片。
其中,所述B2中d,其特征为1≤d≤21;
其中,所述B2中d,其特征为a≤d≤b;
B3:数据解码;收到服务器的响应后,将返回的矢量瓦片数据进行解码。如果有多个矢量瓦片,使用多线程的方式异步加载,按照优先级从高到低的顺序加载瓦片数据。
B3-1:对于点矢量数据的解析,加载c级别的矢量瓦片点,并根据show_level将点缓存在不同的队列中,根据请求的等级d,c≤show_level≤d点数据,用于后续处理。
B3-2:对于线和面矢量数据的解析,加载c级别的矢量线或者面,缓存在队列中,并解析内部每个点的show_level,根据等级d,将c≤show_level≤d的点组成新的线或面,用于后续处理。
B4:数据处理;解码后,会得到瓦片内的点、线、面地理信息数据,以及与这些要素相关的属性信息,将这些信息使用等级d瓦片的经纬度范围进行裁剪,点使用容器保存,线和面绘制到PNG图片中,根据需要,可对这些数据进行排序、过滤、分类、简化处理。
B5:数据渲染;在远距离时d<c,则使用光学影像进行渲染显示,在近距离时c≤d,将B4处理后的地理信息数据渲染到三维场景上。
B5-1:对于大批量的点数据,使用add模式进行渲染,当d增加时,在容器中增加show_level=d+1的点;当d减小时,在容器中卸载show_level=d的点。
B5-2:对于线和面数据,获取B4的线或面数据,使用上采样的方式进行渲染,当d变化时,将B4的线或面数据,上采样到d等级的瓦片尺寸和分辨率,再发送给引擎进行渲染。
进一步,所述当d<c时,不请求瓦片,当c≤d时,请求c等级的矢量瓦片。
进一步,所述步骤B2中确定瓦片加载的优先级,具体根据瓦片中心到视角中心点的距离来排序,距离视角中心点最近的瓦片优先级越高。
进一步,所述渲染的过程可以通过UE、WebGL等技术实现,渲染的效果可以通过样式文件进行控制,三维渲染模型可以通过体纹理、模型替换等方式实现。
有益效果
与现有技术相比,本发明提供了一种全球级别矢量瓦片数据压缩构建和动态LOD加载方法,具备以下有益效果:
1、大批量数据存储在矢量瓦片中,使用较低等级单层的矢量瓦片进行存储,并使用属性记录点所属的等级;可以无损的将全球的矢量数据压缩存储在小空间的矢量瓦片中,并支持动态的LOD加载。
2、对于大批量点的加载,使用add模式代替原有的replace模式,实现批量点的流畅加载和卸载;避免跨等级访问带来的卡顿,以及渲染出现的闪烁问题。
3、使用最低等级的单层LOD存储数据,然后利用跨等级超采样的方式解析出高等级的矢量数据;实现了单层数据的动态LOD显示效果,既保证加载渲染的流畅性,又保证数据压缩占用硬盘空间小。
附图说明
附图1:一种全球级别矢量瓦片数据压缩构建方法流程图;
附图2:一种全球级别压缩矢量瓦片动态LOD加载方法流程图;
附图3:全球矢量点渲染树木效果图;
附图4:全球矢量线渲染道路效果图;
附图5:全球矢量面渲染水体效果图;
附图6:全球矢量面渲染农田效果图。
具体实施方式
下面将结合本发明的实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种全球级别矢量瓦片数据压缩构建方法,包括如下步骤:
A1:全球范围纬度[-90°,90°]和经度[-180°,180°],根据矢量瓦片L0-L21金字塔层级,构建全球范围的瓦片空间位置信息,并写入TileJson头文件。
A1-1:令矢量瓦片金字塔层级L=0;
A1-2:根据矢量瓦片金字塔层级L,计算出WGS84坐标系统下全球剖分的所有瓦片行列号、瓦片的经纬度坐标范围、分辨率等信息,将信息写入TileJson头文件;
A1-3:令L=L+1, 当L≤21时继续;
A1-4:重复步骤A1-2和步骤A1-3;
A1-5:当L=21,完成所有层级瓦片的地理坐标构建,得到矢量瓦片金字塔。
A2:令L=17,利用瓦片经纬度范围裁剪全球遥感数据,裁剪后的全球遥感数据转换为由点、线、面构成的矢量数据。
进一步地,步骤A2中17为数据显示的最低等级。
进一步地,步骤A2中全球遥感数据为构建全球数字孪生系统所需的数据,包括光学遥感影像、红外遥感影像、地表分类影像、植被类别影像、植被高度影像、OSM数据和其他属性数据。
A3:矢量数据渲染等级编码;对矢量的每个点增加显示等级(show_level)属性参数,点、线、面数据分别设置渲染等级属性。
A3-1:对于点数据:设点的数量为1600万,令n=4 ,随机取800万、400万、200万、100万个点,分别设置show_level为17、18、19、20,最后剩下的100万个点设置show_level为21,这些等级在后续加载时使用。
A3-2:对于线和面数据,采用抽稀算法渐进地计算show_level。
进一步地,步骤A3-2中抽稀算法为Ramer-Douglas-Peucker算法、Visvalingam-Whyatt算法、道格拉斯-普克算法(DP 算法)、兰道尔-斯特劳森算法(LRS 算法)或Visvalingam's Algorithm With Topology Preservation(VATP 算法)。
A3-2-1:线或面矢量文件的元素,令L=17;
A3-2-2:以17级别瓦片的分辨率0.00000536°为距离阈值,使用抽稀算法简化元素,简化后对象的点数量会减少,如果点的show_level未设置值,则设置为17;
A3-2-3:令L=L+1,为18,且18≤21;
A3-2-4:重复步骤A3-2-2和A3-2-3;
A3-2-5:当L=21,如果点的show_level未设置值,则设置为21;完成所有点show_level的计算过程。
A4:矢量数据压缩存储。
A4-1:将矢量数据使用Delta 编码方法基于相邻点之间的差异进行数据压缩,对于每个点,它的坐标值与前一个点的坐标值之间的差异被编码并存储,由于地图数据中相邻点之间的差异通常比较小,因此 Delta 编码可以有效地减少存储空间。
A4-2:在A4-1编码后数据转换为一种紧凑的二进制格式数据流进行存储,并使用gzip算法对二进制数据流进行压缩。
A5:压缩数据写入数据库;具体为将矢量瓦片数据写入SQLite、PostgreSQL、MySQL等数据库引擎中,并根据瓦片的序号创建索引,便于快速检索。
一种全球级别压缩矢量瓦片动态LOD加载方法,包括如下步骤:
B1:解析头文件;从矢量瓦片头文件中,解析出所有LOD级别全球范围的瓦片空间位置信息,包括级别、行列号、分辨率、经纬度范围等信息。将这些信息构建一个四叉树数据结构进行保存,方便快速检索。
B2:请求瓦片数据;在三维场景中,根据用户的视角和距离,从B1的四叉树中,确定需要加载的瓦片等级18和行列号,以及确定瓦片加载的优先级,然后,向服务器发送请求,获取矢量瓦片。
进一步地,步骤B2中确定瓦片加载的优先级,具体根据瓦片中心到视角中心点的距离来排序,距离视角中心点最近的瓦片优先级越高。
B3:数据解码;收到服务器的响应后,将返回的矢量瓦片数据进行解码。如果有多个矢量瓦片,使用多线程的方式异步加载,按照优先级从高到低的顺序加载瓦片数据。
B3-1:对于点矢量数据的解析;加载17级别的矢量瓦片点,并根据show_level将点缓存在不同的队列中,根据请求的等级d,17≤show_level≤18点数据,用于后续处理。
B3-2:对于线和面矢量数据的解析;加载17级别的矢量线或者面,缓存在队列中,并解析内部每个点的show_level,根据等级18,将17≤show_level≤18的点组成新的线或面,用于后续处理。
B4:数据处理;解码后,会得到瓦片内的点、线、面地理信息数据,以及与这些要素相关的属性信息,将这些信息使用等级d瓦片的经纬度范围进行裁剪,点使用容器保存,线和面绘制到PNG图片中,根据需要,可对这些数据进行排序、过滤、分类、简化处理。
B5:数据渲染;在远距离时,LOD级别小于17,则使用光学影像进行渲染显示,在近距离时,LOD级别大于等级17, 将B4处理后的地理信息数据渲染到三维场景上。
B5-1:对于大批量的点数据,使用add模式进行渲染,当LOD级别增加到19,在容器中增加show_level=19的点;当LOD级别减小到17,在容器中卸载show_level=18的点。
B5-2:对于线和面数据,获取B4的线或面数据,使用上采样的方式进行渲染,当LOD级别变化为19,将B4的线或面数据,上采样到19等级的瓦片尺寸和分辨率,然后,再发送给引擎进行渲染。
渲染的过程可以通过UE、WebGL等技术实现,渲染的效果可以通过样式文件进行控制,例如颜色、线宽、透明度等,三维渲染模型可以通过体纹理、模型替换等方式实现,全球数字孪生系统中,如附图3所示,树木数据使用矢量点进行保存和加载;如附图4所示,道路使用矢量线进行保存和加载,如附图5和6所示,水体、农田等使用矢量面进行保存和加载。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (8)
1.一种全球级别矢量瓦片数据压缩构建方法,包括如下步骤:
A1:根据矢量瓦片La-Lb金字塔层级,构建全球范围的瓦片空间位置信息,并写入头文件;
其中,所述A1中a和b,其特征为1≤a≤21,1≤b≤21,且a<b;
A1-1:令矢量瓦片金字塔层级L=a;
A1-2:根据矢量瓦片金字塔层级L,计算出WGS84坐标系统下全球剖分的所有瓦片行列号、瓦片的经纬度坐标范围、分辨率信息,将信息写入头文件;
A1-3:令L=L+1, 当L≤b时继续;
A1-4:重复步骤A1-2和步骤A1-3;
A1-5:当L=b,完成所有层级瓦片的地理坐标构建,得到矢量瓦片金字塔;
A2:令L=c,其中a≤c≤b,利用瓦片经纬度范围裁剪全球遥感数据,裁剪后的全球遥感数据转换为由点、线、面构成的矢量数据;
其中,所述A2中c,其特征为1≤c≤21;
A3:矢量数据渲染等级编码;对矢量的每个点增加显示等级(show_level)属性参数,点、线、面数据分别设置渲染等级属性;
A3-1:对于点数据:点的数量为num,令n=c-a ,随机取num×(1/2)1、num×(1/2)2、num×(1/2)3、... 、num×(1/2)n个点,分别设置show_level为c、c+1、...、b-1,最后剩下的num×(1/2)n个点设置show_level为b,这些等级在后续加载时使用;
A3-2:对于线和面数据,采用抽稀算法渐进地计算show_level;
A3-2-1:对于矢量线或面文件的元素,令L=c;
A3-2-2:以L级别瓦片的分辨率为距离阈值,使用抽稀算法简化元素,简化后对象的点数量会减少,如果点的show_level未设置值,则设置为L;
A3-2-3:令L=L+1,L≤b;
A3-2-4:重复步骤A3-2-2和A3-2-3;
A3-2-5:当L=b,如果点的show_level未设置值,则设置为b;完成所有点show_level的计算过程;
A4:矢量数据压缩存储;
A4-1:将矢量数据使用Delta 编码方法基于相邻点之间的差异进行数据压缩,对于每个点,它的坐标值与前一个点的坐标值之间的差异被编码并存储,由于地图数据中相邻点之间的差异通常比较小,因此Delta编码可以有效地减少存储空间;
A4-2:在A4-1编码后数据转换为一种紧凑的二进制格式数据流进行存储,并使用gzip算法对二进制数据流进行压缩;
A4-3:压缩数据写入数据库,具体为将矢量瓦片数据写入SQLite、PostgreSQL、MySQL等数据库引擎中,并根据瓦片的序号创建索引,便于快速检索。
2.根据权利要求1所述的一种全球级别矢量瓦片数据压缩构建方法,其特征在于:所述步骤A2中c为数据显示的最低等级。
3.根据权利要求1所述的一种全球级别矢量瓦片数据压缩构建方法,其特征在于:所述步骤A2中全球遥感数据为构建全球数字孪生系统所需的数据,包括光学遥感影像、红外遥感影像、地表分类影像、植被类别影像、植被高度影像、OSM数据和其他属性数据。
4.根据权利要求1所述的一种全球级别矢量瓦片数据压缩构建方法,其特征在于:所述步骤A3-2中抽稀算法为Ramer-Douglas-Peucker算法、Visvalingam-Whyatt算法、道格拉斯-普克算法(DP 算法)、兰道尔-斯特劳森算法(LRS 算法)或Visvalingam's AlgorithmWith Topology Preservation(VATP 算法)。
5.一种全球级别压缩矢量瓦片动态LOD加载方法,包括如下步骤:
B1:解析头文件;从矢量瓦片头文件中,解析出所有LOD级别全球范围的瓦片空间位置信息,包括级别、行列号、分辨率、经纬度范围等信息,将这些信息构建一个四叉树数据结构进行保存,方便快速检索;
B2:请求瓦片数据;根据用户的视角和距离,从B1的四叉树中,确定需要加载的瓦片等级d和行列号,以及确定瓦片加载的优先级,然后,向服务器发送请求,获取矢量瓦片;
其中,所述B2中d,其特征为1≤d≤21;
其中,所述B2中d,其特征为a≤d≤b;
B3:数据解码;收到服务器的响应后,将返回的矢量瓦片数据进行解码,如果有多个矢量瓦片,使用多线程的方式异步加载,按照优先级从高到低的顺序加载瓦片数据;
B3-1:对于点矢量数据的解析,加载c级别的矢量瓦片点,并根据show_level将点缓存在不同的队列中,根据请求的等级d,c≤show_level≤d点数据,用于后续处理;
B3-2:对于线和面矢量数据的解析,加载c级别的矢量线或者面,缓存在队列中,并解析内部每个点的show_level,根据等级d,将c≤show_level≤d的点组成新的线或面,用于后续处理;
B4:数据处理:解码后,会得到瓦片内的点、线、面地理信息数据,以及与这些要素相关的属性信息,将这些信息使用等级d瓦片的经纬度范围进行裁剪,点使用容器保存,线和面绘制到PNG图片中,根据需要,可对这些数据进行排序、过滤、分类、简化处理;
B5:数据渲染;在远距离时d<c,则使用光学影像进行渲染显示,在近距离时c≤d, 将B4处理后的地理信息数据渲染到三维场景上;
B5-1: 对于大批量的点数据,使用add模式进行渲染,当d增加时,在容器中增加show_level=d+1的点;当d减小时,在容器中卸载show_level=d的点;
B5-2:对于线和面数据,获取B4的线或面数据,使用上采样的方式进行渲染,当d变化时,将B4的线或面数据,上采样到d等级的瓦片尺寸和分辨率,再发送给引擎进行渲染。
6.根据权利要求5所述的一种全球级别压缩矢量瓦片动态LOD加载方法,其特征在于:所述当d<c时,不请求瓦片,当c≤d时,请求c等级的矢量瓦片。
7.根据权利要求5所述的一种全球级别压缩矢量瓦片动态LOD加载方法,其特征在于:所述步骤B2中确定瓦片加载的优先级,具体根据瓦片中心到视角中心点的距离来排序,距离视角中心点最近的瓦片优先级越高。
8.根据权利要求5所述的一种全球级别压缩矢量瓦片动态LOD加载方法,其特征在于:所述渲染的过程可以通过UE、WebGL等技术实现,渲染的效果可以通过样式文件进行控制,三维渲染模型可以通过体纹理、模型替换等方式实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410944469.4A CN118484438B (zh) | 2024-07-15 | 2024-07-15 | 一种全球级别矢量瓦片数据压缩构建和动态lod加载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410944469.4A CN118484438B (zh) | 2024-07-15 | 2024-07-15 | 一种全球级别矢量瓦片数据压缩构建和动态lod加载方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118484438A true CN118484438A (zh) | 2024-08-13 |
CN118484438B CN118484438B (zh) | 2024-10-11 |
Family
ID=92189757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410944469.4A Active CN118484438B (zh) | 2024-07-15 | 2024-07-15 | 一种全球级别矢量瓦片数据压缩构建和动态lod加载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118484438B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100136604A (ko) * | 2009-06-19 | 2010-12-29 | (주)이지스 | 3차원 지형 영상 실시간 가시화 시스템 및 이의 방법 |
CN111914041A (zh) * | 2019-05-10 | 2020-11-10 | 中国电力科学研究院有限公司 | 一种电网地图矢量数据提供方法 |
DE202022100309U1 (de) * | 2022-01-20 | 2022-02-08 | Valectus Private Limited | Ein System zur Verarbeitung von Geodaten für eine effiziente Darstellung und Visualisierung |
EP4012579A1 (fr) * | 2020-12-14 | 2022-06-15 | Atos Integration | Appareil géomatique ayant une architecture de calculateur utilisant les utilitaires osmosis et gdal |
CN116168096A (zh) * | 2023-02-24 | 2023-05-26 | 武汉大学 | 变分辨率矢量瓦片的构建方法 |
CN116363324A (zh) * | 2023-02-27 | 2023-06-30 | 中国电子科技集团公司第二十八研究所 | 一种态势地图二三维一体化渲染方法 |
US20240037823A1 (en) * | 2021-04-01 | 2024-02-01 | Grabtaxi Holdings Pte. Ltd. | Distributed computing system and method for generating a vector tile of a selected squared map area |
-
2024
- 2024-07-15 CN CN202410944469.4A patent/CN118484438B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100136604A (ko) * | 2009-06-19 | 2010-12-29 | (주)이지스 | 3차원 지형 영상 실시간 가시화 시스템 및 이의 방법 |
CN111914041A (zh) * | 2019-05-10 | 2020-11-10 | 中国电力科学研究院有限公司 | 一种电网地图矢量数据提供方法 |
EP4012579A1 (fr) * | 2020-12-14 | 2022-06-15 | Atos Integration | Appareil géomatique ayant une architecture de calculateur utilisant les utilitaires osmosis et gdal |
US20240037823A1 (en) * | 2021-04-01 | 2024-02-01 | Grabtaxi Holdings Pte. Ltd. | Distributed computing system and method for generating a vector tile of a selected squared map area |
DE202022100309U1 (de) * | 2022-01-20 | 2022-02-08 | Valectus Private Limited | Ein System zur Verarbeitung von Geodaten für eine effiziente Darstellung und Visualisierung |
CN116168096A (zh) * | 2023-02-24 | 2023-05-26 | 武汉大学 | 变分辨率矢量瓦片的构建方法 |
CN116363324A (zh) * | 2023-02-27 | 2023-06-30 | 中国电子科技集团公司第二十八研究所 | 一种态势地图二三维一体化渲染方法 |
Non-Patent Citations (1)
Title |
---|
唐雅玲;马晨燕;宋佳;诸云强;: "矢量Web网络地图应用研究", 测绘与空间地理信息, no. 02, 25 February 2018 (2018-02-25), pages 87 - 96 * |
Also Published As
Publication number | Publication date |
---|---|
CN118484438B (zh) | 2024-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7940279B2 (en) | System and method for rendering of texel imagery | |
US10089331B2 (en) | System and method for storing a dataset of image tiles | |
Dick et al. | Efficient geometry compression for GPU‐based decoding in realtime terrain rendering | |
Hwa et al. | Adaptive 4-8 texture hierarchies | |
CN109872390B (zh) | 一种海量三维模型的组织方法 | |
US11210821B2 (en) | Graphics processing systems | |
GB2622666A (en) | Three-dimensional virtual ecological environmental visualization integration and optimization system for large region | |
CN103268221A (zh) | 一种基于web技术的气象数据体三维显示方法及装置 | |
CN110889888A (zh) | 纹理精简和分形压缩集成的三维模型可视化方法 | |
US11842443B2 (en) | Rendering three-dimensional objects utilizing sharp tessellation | |
CN105488838A (zh) | 一种面向雷达图像仿真的地形环境数据表示方法 | |
Gerstner | Multiresolution compression and visualization of global topographic data | |
Masood et al. | High‐performance virtual globe GPU terrain rendering using game engine | |
CN118484438B (zh) | 一种全球级别矢量瓦片数据压缩构建和动态lod加载方法 | |
US11418769B1 (en) | Viewport adaptive volumetric content streaming and/or rendering | |
CN109597865B (zh) | 基于嵌入式平台的海量地理信息数据的存储与检索方法 | |
Andújar et al. | Visualization of Large‐Scale Urban Models through Multi‐Level Relief Impostors | |
Masood et al. | A novel method for adaptive terrain rendering using memory-efficient tessellation codes for virtual globes | |
CN101894395A (zh) | 一种计算机图形的点模型几何信息的各向异性表示方法 | |
Wang | [Retracted] Optimization of Three‐Dimensional Model of Landscape Space Based on Big Data Analysis | |
CN113495935A (zh) | 一种基于不规则三角化网格剖分的地形切片方法和系统 | |
CN118396900B (zh) | 一种基于tin的全球数字孪生系统海岸修复方法 | |
Li et al. | Batched trajectory compression algorithm based on hierarchical grid coordinates | |
Mahdavi-Amiri et al. | Data management possibilities for aperture 3 hexagonal discrete global grid systems | |
Derzapf et al. | Parallel view-dependent out-of-core progressive meshes |
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 |