System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据压缩领域,尤其涉及一种瓦片数据的压缩方法、装置及设备。
技术介绍
1、随着科学技术的不断发展,地图数据日益丰富和细致,进而导致地图数据量巨大,占用较大的存储空间。
2、目前,多是将地图进行瓦片式划分,利用瓦片数据进行片状化的地图数据存储,并利用压缩算法对瓦片数据进行压缩,以节省存储空间。但现有的压缩算法对瓦片数据的压缩比例较小,并且数据精度损失大,因此,亟需一种能够提高压缩比例的同时,不损失数据精度的压缩方法。
技术实现思路
1、本申请提供一种瓦片数据的压缩方法、装置及设备,用以保障数据精度的同时提高瓦片数据的压缩比例。
2、第一方面,本申请提供一种瓦片数据的压缩方法,包括:
3、获取高精地图预设瓦片区域内的多个瓦片数据;其中,每个瓦片数据用于指示出一种地图元素信息,所述瓦片数据具有多个顶点,每个顶点具有索引值和第一坐标信息;所述瓦片数据包括顶点数据集和三角面数据集;所述顶点数据集的元素为所述瓦片数据中各顶点在第一坐标系下的第一坐标信息;所述三角面数据集的元素为所述瓦片数据中构成各三角面的顶点的索引值;
4、对所述顶点数据集进行坐标转换处理,得到转换后的顶点数据集;并根据所述转换后的顶点数据集,更新所述三角面数据集,得到更新后的三角面数据集;其中,所述转换后的顶点数据集包括所述瓦片数据中各顶点在第二坐标系下的第二坐标信息;所述更新后的三角面数据集中包括更新后的构成各三角面的顶点的索引值;
5、根据所述第二坐标
6、根据所述更新后的三角面数据集的索引值的最大值,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组;
7、对所述三角面索引数组和多个处理后的数组分别进行编码处理,分别得到多个压缩后的字符串序列。
8、可选的,对所述顶点数据集进行坐标转换处理,得到转换后的顶点数据集,包括:
9、确定顶点数据集的包围盒;所述顶点数据集的包围盒用于指示出所述顶点数据集的位置范围,所述顶点数据集的包围盒具有该包围盒对应的第二坐标系;
10、根据所述顶点数据集的包围盒,将所述顶点数据集中各顶点的第一坐标信息转换为第二坐标信息,得到转换后的顶点数据集。
11、可选的,根据所述转换后的顶点数据集,更新所述三角面数据集,得到更新后的三角面数据集,包括:
12、根据所述转换后的顶点数据集中各顶点的第二坐标信息,对所述转换后的顶点数据集中的各顶点进行排序处理,并更新各顶点的索引值;并根据更新后的各顶点的索引值,更新所述三角面数据集,得到初始三角面数据集;
13、确定初始三角面数据集中各三角面的包围盒;并根据各所述三角面的包围盒的预设位置点,对各三角面进行排序,得到更新后的三角面数据集;其中,所述三角面的包围盒的预设位置点具有所述三角面数据集对应的顶点数据集的包围盒对应的第二坐标系下的坐标信息。
14、可选的,所述初始数组中的元素为第一数据类型;对每个初始数组中的元素进行合并处理,得到多个处理后的数组,包括:
15、针对每个初始数组,根据该初始数组中元素的最大值,确定该初始数组的量化位数;并根据该初始数组的量化位数,确定该初始数组的单位字节数;其中,所述初始数组的量化位数用于指示出该初始数组中的元素被压缩后的位数;所述初始数组的单位字节数用于指示出该初始数组的量化位数的存储字节数;
16、针对每个初始数组,根据该初始数组的量化位数和该初始数组中元素的最大值,将该初始数组中的各元素的数据类型转换为第二数据类型,得到中间数组;
17、针对每个初始数组,根据该初始数组的量化位数和该初始数组的单位字节数,将该初始数组的中间数组中的各元素进行合并处理,得到处理后的数组。
18、可选的,根据所述更新后的三角面数据集的索引值的最大值,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组,包括:
19、根据所述更新后的三角面数据集的索引值的最大值,确定所述更新后的三角面数据集的量化位数;所述更新后的三角面数据集的量化位数用于指示出所述更新后的三角面数据集的中的元素被压缩后的位数;
20、根据所述更新后的三角面数据集的量化位数,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组。
21、可选的,所述更新后的三角面数据集中的元素为第三数据类型;根据所述更新后的三角面数据集的量化位数,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组,包括:
22、若确定所述更新后的三角面数据集的量化位数为第一数据值,则将所述更新后的三角面数据集中的各元素转换为第四数据类型,得到所述转换后的三角面索引数组;
23、若确定所述更新后的三角面数据集的量化位数为第二数据值或者第三数据值,则对所述更新后的三角面数据集中的第一预设位数的元素进行合并处理,得到所述转换后的三角面索引数组;
24、若确定所述更新后的三角面数据集的量化位数为第四数据值,则将所述更新后的三角面数据集中的各元素转换为第五数据类型,得到所述转换后的三角面索引数组。
25、可选的,对所述三角面索引数组和多个处理后的数组分别进行编码处理,分别得到多个压缩后的字符串序列,包括:
26、针对所述三角面索引数组或者每个处理后的数组,对所述数组进行差分编码,得到编码后的数组;
27、针对所述三角面索引数组或者每个处理后的数组,将所述编码后的数组中的各元素转换为二进制数据,得到转换后的各元素;并针对转换后的各元素,基于第二预设位数对转换后的各元素进行压缩处理,得到压缩后的字符串;
28、针对所述三角面索引数组或者每个处理后的数组,将各压缩后的字符串组成所述数组的字符串序列。
29、可选的,针对转换后的各元素,基于第二预设位数对转换后的各元素进行压缩处理,得到压缩后的字符串,包括:
30、针对转换后的各元素,基于第二预设位数,从低位到高位对该转换后的元素进行分组,得到多组中间字符串;
31、针对每组中间字符串,对所述中间字符串添加标记位,得到标记后的中间字符串;
32、针对转换后的各元素,将该元素对应的标记位为第六数据值的多个标记后的中间字符串,确定为该元素对应的压缩后的字符串。
33、第二方面,本申请提供一种瓦片数据的压缩装置,包括:
34、获取单元,用于获取高精地图预设瓦片区域内的多个瓦片数据;其中,每个瓦片数据用于指示出一种地图元素信息,所述瓦片数据具有多个顶点,每个顶点具有索引值和第一坐标信息;本文档来自技高网...
【技术保护点】
1.一种瓦片数据的压缩方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,对所述顶点数据集进行坐标转换处理,得到转换后的顶点数据集,包括:
3.根据权利要求1所述的方法,其特征在于,根据所述转换后的顶点数据集,更新所述三角面数据集,得到更新后的三角面数据集,包括:
4.根据权利要求1所述的方法,其特征在于,所述初始数组中的元素为第一数据类型;对每个初始数组中的元素进行合并处理,得到多个处理后的数组,包括:
5.根据权利要求1所述的方法,其特征在于,根据所述更新后的三角面数据集的索引值的最大值,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组,包括:
6.根据权利要求5所述的方法,其特征在于,所述更新后的三角面数据集中的元素为第三数据类型;根据所述更新后的三角面数据集的量化位数,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组,包括:
7.根据权利要求1-6任一项所述的方法,其特征在于,对所述三角面索引数组和多个处理后的数组分别进行编码处理,分别得到多
8.根据权利要求7所述的方法,其特征在于,针对转换后的各元素,基于第二预设位数对转换后的各元素进行压缩处理,得到压缩后的字符串,包括:
9.一种瓦片数据的压缩装置,其特征在于,所述装置包括:
10.一种电子设备,其特征在于,所述电子设备包括:处理器,以及与所述处理器通信连接的存储器;
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至8中任一项所述的瓦片数据的压缩方法。
...【技术特征摘要】
1.一种瓦片数据的压缩方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,对所述顶点数据集进行坐标转换处理,得到转换后的顶点数据集,包括:
3.根据权利要求1所述的方法,其特征在于,根据所述转换后的顶点数据集,更新所述三角面数据集,得到更新后的三角面数据集,包括:
4.根据权利要求1所述的方法,其特征在于,所述初始数组中的元素为第一数据类型;对每个初始数组中的元素进行合并处理,得到多个处理后的数组,包括:
5.根据权利要求1所述的方法,其特征在于,根据所述更新后的三角面数据集的索引值的最大值,对所述更新后的三角面数据集进行转换处理,得到转换后的三角面索引数组,包括:
6.根据权利要求5所述的方法,其特征在于,所述更新后的三角面数据集中的元素为第三数据类型;根据所述更新后的三角...
【专利技术属性】
技术研发人员:唐超,
申请(专利权)人:浙江吉利控股集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。