ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

18. 基于矢量瓦片的遥感洪涝灾害损失评估Web应用的Web Geospace Service性能改进

2022-03-18 19:35:19  阅读:196  来源: 互联网

标签:Web Service Geospace 矢量 栅格 拼接 瓦片 客户端


Eugene.G. Yu 空间信息科学与系统中心( Csiss )乔治·梅森大学

摘要

遥感洪灾作物损失评估( RF- CLASS )是一个地理空间Web服务系统,在评估洪灾作物损失时为决策者提供综合服务。它服务于一系列基于矢量的地理空间数据。传统上,这些数据通过开放的Web地图服务( WMS )在Web上可视化,而地理空间数据要么保存在地理数据库中,要么保存在矢量特征持久服务——Web特征服务( WFS )中。在Web上进行渲染的矢量特征的栅格化往往是完全在飞。该方法由于没有预先计算金字塔的延迟展开和每个向量特征上的丰富度损失,导致大向量数据可视化的用户体验显著下降。为了提高性能,采用了矢量拼接技术。优化向量拼接的几个技术挑战已经被识别和研究,分别是拼接图式、瓦片边界和归属。已经设计、实现和测试了全栈服务(服务器和客户端),在加载速度和归属性上达到最佳性能。

关键词

地理空间Web服务、矢量瓦片、矢量瓦片服务、地理空间Web客户端、损失、洪水、遥感

1. 引言

遥感洪涝作物损失评估( RFCLASS )是一个地理空间Web服务系统,服务于农作物风险管理和灾害农业统计的社区。其中一个主要功能是使决策者能够交互式地获取与洪水、作物损失和相关静态有关的不同信息。重要的视觉是生成并交付给客户端的地图,以便即时了解洪水及其造成的损害的程度和程度。该系统服务于许多不同的数据集。主要洪水数据集和作物数据都是矢量格式的。单个文件大小可以超过几个千兆字节,给用户实时接收渲染图像带来严重的延迟。

传统的方法主要依靠在一系列尺度上对栅格数据的金字塔进行刻槽,甚至对栅格数据进行瓦片。这在一定程度上有助于减少交付数据的时间:( 1 )将渲染图像的再生减少到最小,( 2 )对跨尺度的重采样进行预缓存,( 3 )瓦片图像可以显著减少服务器端的操作量( 例如 ,重置、缩放 )。

但是,一些严重的问题依然存在,同时也出现了一些新的挑战:( 1 )加载瓦片图像仍然可以属于对用户体验来说可能是严重的问题,特别是在带宽是首要限制的情况下;( 2 )渲染样式是有限的;( 3 )如果需要预缓存不同的样式,磁盘空间就会出现问题;( 4 )属性与区域断开但只与个别像素相连;( 5 )高质量的图形很难实现。

向量拼接是一种新的方法,可以提供风格灵活、属性信息丰富且绑定紧密的大型向量数据集的可视化。在本研究中,实现了支持洪水数据集传播的向量拼接。将矢量吊具的性能与光栅拼接和矢量原始数据的传输进行了比较。

论文组织如下:首先,对矢量拼接和栅格拼接的概念进行了界定,并从理论上进行了比较。第二,描述了性能评价和性能的矢量拼接实现和实验设置。第三,给出并讨论了结果。最后,对结论进行了总结。

2. 瓦片策略

A .栅格瓦片

栅格拼接是将数据分割成小块的过程,以实现快速、选择性的交付,达到省时、减负的目的。栅格瓦片属性共享瓦片系统的共同属性:离散缩放级别、图像瓦片、离散寻址方案和预缓存。光栅拼接的优点在于易于实现,生成相当直接。生成瓦片的计算可以简单地通过跨尺度重采样来完成。

光栅拼接的缺点是对存储和传输带宽的要求较高。对于毗邻美国的洪水地图,如果需要30米分辨率,存储可以超过30兆字节,如果需要不同的样式和渲染,存储可以更多。依赖于细节层次( LOD ),存储需求可以超出控制增长为拍字节 。传输抛物砖所需的带宽比矢量表示的带宽大。

瓦片生成方案的优化和选择性动态生成在某些情况下有助于解决瓦片存储和运输中的一些问题。一个例子的改进是选择适当的瓦片尺寸,可能有助于减少由于现有的遗留物和通信技术造成的运输时间。示例和Ioup 发现512 by 512的瓦片大小在当前技术中像素大小浪费和压缩计算方面表现更好。256 ~ 256的瓦片尺寸在大多数情况下也被认为是好的,并被广泛地作为工业中瓦片的基本尺寸、、。另一个例子是根据需求频率生产选择性瓦片,同时留下不频繁的瓦片按需生产。这种方法将减少对存储的需求,同时平衡计算能力的使用。

B .向量瓦片

矢量拼接类似于光栅拼接,但编码的数据是矢量格式的 。同样,它也共享瓦片系统在管理和传输方面的共同特性。矢量瓦片的生成通常分为两类:严格划分矢量数据为栅格瓦片和使用瓦片区域作为包围盒选择特征、。

由于数据格式和拓扑概念的不同,矢量拼接在操作上与栅格拼接不同。主要区别是对LOD、分区、属性和渲染责任的控制。矢量图的LOD随尺度变化而变化,几何图形在不同尺度上会有太大的差异。一个特征需要用一个点来表示,而一个多边形在很大的细节。划分可以打破矢量特征的完整性,而栅格划分很少打破作为表示和管理基本单元的像素。矢量瓦片可以比栅格像素更有效地管理属性。矢量拼接将渲染责任以及灵活性留给客户端,而栅格拼接则在服务器端完成渲染。

对矢量瓦片的编码可以以不同的格式进行不同的目的。表1列出了矢量瓦片最常用的一些矢量格式。MapBox Vector Tile ( MVT )是应用最广泛的特定矢量瓦片格式之一。地理标记语言( GML )支持标准的Web服务,即。Web特性服务( Wfs )。它是用WFS支持向量瓦片的方向之一。

瓦片的存储属于3组之一:单字节-文件粒度、空间数据库管理系统( DBMS )和多字节-whithin-one-file 、。单字节文件粒度易于搜索、更新和Web托管,但在空间使用上无效,克隆速度慢,读写速度慢,。DBMS结构紧凑,安全,查询效率高,但在安装、配置和管理方面花费昂贵和时间。多个字节的一体式文件可以平衡到某些特定的情况,但缺乏通用工具,不易更新和搜索。存储系统的选择需要根据实际的使用情况和手头的优先级来决定。

在工业中出现了几种用于向量拼接的规范。成熟的MapBox矢量瓦片规范和TileJSON 被广泛应用于分布瓦片。开放地理空间联盟( Open Geospace Consortium,OGC )的WebMap Tile Service ( WMTS ) 广泛应用于从矢量瓦片服务传递栅格渲染。最近,Web特征服务( Web Feature Service,WFS ) 也被扩展用于传递矢量瓦片。

开源和商业软件正在兴起对矢量瓦片的支持,包括ESRI产品和MapBox套件。GeoServer完全支持向量瓦片,而MapServer则有计划在其中支持向量瓦片,供其取悦版本。Web客户端包括OpenLayers、Leaflet和MapBox GL 。

3. 矢量拼接的实现及性能对比实验

A .矢量瓦片的实现

支持向量瓦片的设置和配置需要准备数据、服务器软件和客户端软件。洪水地图存储在Albers等面积投影中,目前流行的矢量瓦片服务器和系统并不支持该投影。一种包含方法是将数据转换为常用的支持向量瓦片投影,例如。Epsg3857为web Mercator投影。根据软件、存储和瓦片格式的选择,瓦片的构建可以有所不同。本研究选用开源GeoServer,其成熟且对矢量瓦片支持良好,同时易于建立和完成对矢量瓦片和栅格瓦片的支持,便于性能比较。

洪水数据首先重新投影到EPSG4326 (地理坐标系)。然后将其加载到GeoServer中。矢量瓦片是预先创建(种子)的所有三种支持格式- GeoJSON、TopoJSON和MVT。

另一个开源服务器TileServer 也被选择为洪水地图服务,考虑到它的易安装性、处理大型数据集的能力以及它集成的Web客户端的易支持性。使用TileServer的Docker图像创建矢量瓦片,服务洪水数据矢量瓦片,并显示矢量瓦片。

图1显示了一个在RF-classSS中绘制洪水地图的示例。洪水图主要包括日、月和年合成图。洪水频率图综合了所有年份的大小和多边形数都可以相当大。所有这些地图都已被输入到基于矢量位的服务器和服务中。

B .绩效评估

为了评估向量拼接的性能,我们做了如下设置以确保比较:

  • 用相同的软件和硬件配置从相同的服务器提供相同的地图。在本研究中,GeoServer被配置、安装并部署到运行Debian 9的Linux服务器中的Tomcat servlet中。GeoServer能够同时服务矢量瓦片、栅格瓦片和其他常见的OGC Web服务,简化了设置。一次数据加载既可用于光栅拼接,也可用于矢量拼接。

  • 从同一台客户机访问地图。Windows计算机用于主持客户机软件。计算机通过Internet与服务器相连。

  • 使用相同的客户端。主要客户端软件是基于JavaScript的瘦客户端,考虑到洪水图通过Web-services和Internet最流行的用法。RF- CLASS是一种在线服务,既支持机器,也支持人类对信息和数据的消费。对于正常用户来说,基于浏览器的瘦客户端就是他们将要使用的。选择OpenLayers作为基本JavaScript包,以启用客户端。图2所示为GeoServer 提供的JavaScript源的一个简单客户端片段。这个片段可以被修改和重复使用,以访问不同的数据集,其中的更改可能是替换层名或格式。

为了记录和捕获接收瓦片的时间延迟( 无论是矢量瓦片还是栅格瓦片 ,都是为了比较 ),使用浏览器中Web开发人员的网络监控工具。图3显示了访问和加载光栅瓦片和矢量瓦片的屏幕截图。为了确保通过相同配置从不同服务( 矢量拼接和栅格拼接 )加载相同的地图视图端口的时间分离和总和,请求之间的足够间隙允许完成所有需要的瓦片的异步加载。这些录音将重复数次以获得平均读数。

通过浏览器的开发人员控制台进行网络监控的记录被导出为HTTP Archive ( har )文件捕获。利用实用程序har2csv ( https://github.com/danstuken/har2csv/downloads )将har文件进一步转换为逗号分离值( csv )文件。所有记录进一步输入到统计软件中分析和总结性能指标。

4. 结果和讨论

A .尺寸转移和带宽需求

每个瓦片传输的数据大小取决于所选择的数据格式。本研究选取了五种流行的数据编码格式进行比较。图4显示了结果。可以看出,MapBox矢量瓦片在MapBox矢量Tile格式( MVT )中非常有效地保持了传输的数据的最小尺寸。GeoJSON和TopoJSON由于都是纯文本,所以在保存数据大小方面是最少的。它们也不是压缩的。TopoJSON确实减少了传输的数据量,因为共享弧使用拓扑结构,而不是具有冗馀坐标的完整多边形。

B. 时间

接收数据所花费的时间主要由数据大小决定。图5显示了接收每个瓷砖所花费的时间。比较了三种变焦水平。在3个层次上,时间长度都对应于图4所示传输的数据大小。在5种数据编码格式中,GeoJSON传输每个瓦片所需时间最长,MVT所需时间最少。

C .属性

在矢量瓦片服务中可以将属性连同每个特征一起发送。光栅拼接服务需要反复对服务器进行查询以检索属性。此外,该属性需要在像素级关联,如果需要进行多次查询,会增加服务器和客户端之间的大量通信流量。另一方面,向量将属性关联到更有效的多边形或线特征。

D .矢量瓦片编码

MapBox矢量瓦片格式在节省带宽和减少服务器和客户端之间传输的数据包大小方面是非常有效的。扩展缓冲区的编码使得在保持几何视觉效果的同时,可以很容易地创建具有严格相等瓦片包围盒大小的瓦片。在硬币的另一面,缓冲区方法使得MVT非常适合绘制和可视化地图,但在保持几何和拓扑的完整性方面并不是很好的方法。可能存在的问题是:( 1 )相同的特征ID导致两个或两个以上的多边形在不同的瓦片中被分割。并且( 2 )额外的面积为常规GIS软件( 专门渲染 ,在 GIS软件包中不易做到 ,如 QGIS )增加了渲染难度。

E .建造前(播种)

对瓦片进行预建造有助于加快服务速度。GeoServer通过Geo Web Cache支持两种瓦片缓存方式:请求上的瓦片缓存和瓦片播种。请求上的Tile缓存有助于在某些瓦片上没有请求时减少存储需求。使用较少的瓦片可能会留下未经处理的瓦片,从而节省服务器浪费存储空间。然而,这对于从大数据集生成瓦片来说是公平慢的。在洪水矢量图中,洪水频率图可以真正以小多边形碎片化,导致文件大,超过千兆字节的不压缩文件。瓦片的生成需要数小时才能完成。如果访问瓦片服务,则预先构建矢量瓦片或栅格瓦片成为必要。在服务器中,不同格式的矢量瓦片的预构建使用的时间略有不同。对于美国毗邻的1个洪水频率数据集,MVT,2的时间为3小时3分31秒

预建设与按需建设的选择取决于洪水制图服务用例中数据的复杂性和规模。大数据预构建可能需要更高效的算法。TileServer有一个不同的瓦片创建实现,它花费的时间要少得多,大约20分钟才能完成对同一洪水频率数据集的MVT编码。生成策略的进一步细化应该为动态泛化、和离线生成、、之间的选择提供更好的决策。

5. 结论

矢量打字的应用在带宽需求、加载时间和属性分布方面执行栅格打字。向量拼接将渲染留给客户端软件,减少了服务器上计算需求的负载。磁盘存储和计算量都明显减少。对于那些无法以传统的矢量或栅格服务方式提供足够快的用户体验的大型数据集,矢量拼接尤为重要。

不同的编码格式会影响矢量化的性能。在目前最流行的矢量打字和Raster打字格式中,MVT被显示为最高效的矢量打字编码。

许多标准服务(矢量或栅格)已启用事务来更新和修改数据集。对于向量瓦片服务,在许多应用中都需要完全支持CRUD ( 创建、读取、更新和删除 )操作的能力。对矢量瓦片来说,修改特征的支持是一个挑战,需要进一步研究,以提供高效、均衡的方法。以下是今后进一步研究的方向,以推进矢量拼接策略:( 1 )超出预定义web墨卡托的空间投影支持;( 2 )超出渲染目的的编码;( 3 )利用标准矢量服务(例如)标准化矢量拼接服务。WFS ),( 4 ) BLOB (二进制大对象)以外的空间索引的存储格式。

致谢

研究小组还积极参与正在进行的OGC试验台倡议。测试床活动中的互动和讨论有助于启发研究的各个方面。这就承认了通过矢量拼写线程组对矢量拼写的启发和理解。

标签:Web,Service,Geospace,矢量,栅格,拼接,瓦片,客户端
来源: https://www.cnblogs.com/flying-birds-xyg/p/16023256.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有