矢量切片_数据粒度均衡的二维矢量瓦片构建方法

作 者 信 息

应 申1,2,王子豪1,杜志强3,丁火平4, 李翔翔4

(1. 武汉大学 资源与环境科学学院,湖北 武汉 430079;2. 自然资源部城市国土资源监测与仿真重点实验室,广东 深圳 518034;3. 武汉大学 测绘遥感信息工程国家重点实验室,湖北 武汉 430079;4. 航天恒星科技有限公司,北京 100086)

【摘要】针对二维地图矢量瓦片数据量不均衡造成的Web可视化中矢量数据传输、渲染效率低的问题,提出了数据粒度均衡的矢量瓦片构建方法。首先提出了矢量瓦片的粒度定义,并根据粒度均衡划分的约束条件和流畅可视化的帧率要求,给出了单个矢量瓦片粒度大小的计算方法。在k-d树算法的基础上,制定分割线编码规则及其不断继承与更新机制提出“父子”关联且粒度均衡的瓦片构建方法和“回溯剪枝”算法的瓦片调度流程。这种数据粒度均衡的矢量瓦片可实现快速网络数据调度与可视化,以全国矢量数据为例,从矢量瓦片构建耗时、所占存储空间以及Web可视化过程中传输速率、渲染效率等方面验证和评估本文方法的效能。

【关键词】矢量瓦片;粒度均衡;k-d树;“父子”关联

【中图分类号】P208 【文献标识码】A 【文章编号】1672-1586(2020)04-0066-09

引文格式:应 申,王子豪,杜志强,等. 数据粒度均衡的二维矢量瓦片构建方法[J].地理信息世界,2020,27(4):66-74.

正文

0 引 言

随着当今矢量数据获取手段的多样化,矢量数据正朝着大规模方向发展。矢量数据作为时空大数据平台的基础组成部分,其高效、准确的可视化对时空大数据平台建设具有重要的意义。目前大规模矢量数据可视化的主流方法是预先切割并生成金字塔矢量瓦片文件,在可视化过程中通过与视点位置相关的瓦片调度方法实现多分辨率显示。但是,现有的矢量瓦片大多采用等面积或等经纬度的分割方式(即格网法),由于矢量数据空间分布不均衡,导致数据粒度划分的不均衡性,从而造成矢量瓦片构建与可视化过程面临以下3个问题:①由于某些瓦片数据粒度划分过粗造成单张瓦片数据量过大,导致网络传输过程中的阻塞问题,影响了矢量瓦片的高效传输。解决方法中顾及数据稠密的矢量瓦片组织方法通过构建非平衡四叉树索引,可解决单张瓦片数据量过大造成的传输延时问题。但是由于其没有改变基于规则格网的瓦片划分方式,瓦片之间数据量的不均衡导致可视化端解析过程耗时不同,降低了Web端可视化的效率。②由于粒度划分的不均衡性,瓦片解析耗时不均衡,影响浏览器渲染效率。基于k-d树索引模型的稠稀矢量瓦片构建方法,可保证瓦片之间数据量的均等性。但是,其并未顾及不同级别瓦片数据粒度均衡性以及“父子”瓦片的空间关联性,降低了可视化过程中放大缩小操作时瓦片的调度效率。③瓦片总数量多造成的瓦片构建耗时长、存储空间占用大的问题。矢量数据并行切片技术虽在一定程度上缩短了瓦片构建的时间,但并未从根本上解决矢量瓦片数量庞大造成的瓦片构建过程中切片耗时长以及存储空间占用率低的问题。

为此,本文首先提出了矢量瓦片的粒度定义,而后设计并实现了数据粒度均衡的矢量瓦片构建方法。该方法基于数据均衡的二叉树构建矢量瓦片,在单个瓦片大小满足粒度约束的条件下,顾及了各瓦片间数据粒度的均衡性,从而避免了Web可视化端加载大瓦片文件的等待时延,提高了瓦片传输的速率。其次,在制定一套完整的瓦片编码规则的基础上,设计了基于“回溯剪枝”算法的瓦片调度流程,缩短了可视化时瓦片查找匹配时间。最终通过粒度均衡约束的矢量瓦片技术,实现了瓦片数据的快速调度与可视化。

1 矢量数据的粒度均衡性分析

粒是整体的一部分,信息粒化的一种常用方法是划分,粒化的程度通过粒度来刻画。矢量瓦片技术可以视为信息粒化的一种具体应用,整套矢量数据为一个整体,而瓦片则称为粒,矢量数据的划分过程称为粒化,粒度则为矢量数据划分的程度。

1.1 数据粒度对矢量瓦片的影响

为了方便探讨数据粒度对矢量瓦片的影响,在数据划分过程中,有以下定义:给定一个论域U,U为对象的非空有限集合,U上的一个非空子集簇x ={ P1,P2,…,Pk}称为U上的划分,若Pi满足式(1)约束,其中Pi称为划分x的一个块:

34e964472131aaf810daeb5325e853d5.png

若另有一个划分y={ Q1,Q2,…,Qk},如果∀Qi∈y, ∃Pj∈x,满足Qi⊂Pj,则称y比x划分的细,反之x比y划分的细。

根据矢量瓦片原理,矢量瓦片Pi的划分方式满足式(1)中对块的约束。在矢量数据划分过程中,划分程度(粒度)的粗细将直接影响划分的耗时以及划分后占用空间的大小。若数据粒度过细,瓦片数量增多,耗时增加。随着碎小瓦片数量的增加,瓦片整体所占存储空间逐渐增大,空间占用率逐渐降低;若数据粒度过粗,则造成单张瓦片数据量过大,瓦片可视化时易造成传输等待,使得Web可视化端的流畅性受到严重影响。因此,矢量瓦片的划分过程需要基于一个合适的粒度。

在Web端可视化过程中,传输数据的均衡性将直接影响浏览器渲染的效率。数据粒度越均衡,浏览器端解析瓦片的耗时差距越小,渲染的效率越高。所以,在瓦片构建过程中,在选择合适粒度的基础上还应尽可能保证粒度的均衡性。

1.2 数据粒度的构建与计算

粒度计算的基本问题包括两个主要的方面,一是如何构建粒度,二是如何利用粒度去进行计算。

由于矢量瓦片中只存储了矢量数据的属性信息与几何信息,其属性信息相较于几何信息所占存储空间通常可忽略不计。因此,在刻画矢量瓦片的粒度时,通常采用矢量数据的几何信息描述矢量瓦片划分粒度的粗细。在矢量瓦片数据粒度的构建过程中,通常用坐标点的数量描述瓦片划分粒度的粗细。对于同一个矢量数据集合U,数据划分粒度越细,瓦片的数量越多,单张瓦片坐标点的数量越少。

根据人眼的视觉暂留特性,如果要让人的眼睛看到连续的动画或电影,画面刷新频率理论上应该达到24帧/s。在矢量瓦片可视化过程中,为了接近甚至达到动画的流畅性,除去矢量绘制等其他操作的耗时,估算单张瓦片的传输时间应维持在7~10 ms。根据不同的网络传输带宽,即可粗略估算出单个瓦片的最优存储大小范围。矢量数据的坐标对通常由一对经纬度数值组成,经纬度一般采用浮点类型进行存储,其根据数据精度不同所占存储空间不同。利用单张瓦片的存储大小与单个坐标对的存储空间相比,即可计算出每张瓦片所包含的坐标对的数量,以此来进行粒度的计算,具体的计算公式如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值