瓦片地图服务的调用方法、装置、存储介质及服务器与流程

文档序号:14797004发布日期:2018-06-29 19:45阅读:469来源:国知局

本发明涉及数据处理领域,特别是涉及一种瓦片地图服务的调用方法、装置、存储介质及服务器。



背景技术:

瓦片地图服务(Tile Map Service,简称为TMS)是将遥感栅格影像按照瓦片地图金字塔模型进行抽样切割,形成规则的多层次影像瓦片数据集并将该数据集发布到网络,供用户调用使用的数据服务方法。瓦片地图金字塔模型将投影后的世界地图按照四叉树进行剖分,建立瓦片层级、编号与实际地理坐标的对应关系,即能够根据瓦片编号得到经纬度区间,也可以根据地理坐标找到瓦片编号。在一个影像瓦片数据集组织中,每个瓦片的层级、行列号以及对应的地理空间位置是一一对应的,因此在瓦片地图服务中根据视口的中心位置、视口的边界范围以及视口需要观察的瓦片分辨率即可计算需要请求的瓦片编号列表,实现瓦片服务的可视化。当请求的瓦片地图服务数据源唯一时,根据瓦片行列号与瓦片层级可以获取到唯一的瓦片。

瓦片数据集是按照影像金字塔模型组织的瓦片数据集合,其中瓦片数据集仅仅体现该数据集内瓦片的空间位置关系,对于多个瓦片数据集,现有技术主要是从时相上对瓦片数据集进行标准和管理,将不同时相的瓦片数据集通过时间戳进行标准与编码,将多个瓦片金字塔组合成一个在时间上顺序排列的逻辑集合,但该方法仅适用于允许对瓦片数据集进行预处理操作的场景,例如组织一套多时相基础地理瓦片数据,多个瓦片数据集的编码转换与合并管理需要消耗较长的时间,不适用于对时效性要求高的瓦片数据服务应用。例如,在自然灾害发生后的应急响应与研判任务中,通过不同手段、不同传感器及时获取的灾区影像一般会分别发布成为相互独立的数据服务,避免对多个数据集进行合并等操作,以多个瓦片地图服务数据源进行加载现实,保证用户在第一时间了解灾区的地表地貌信息。

但是,多个瓦片地图服务同时加载会产生在局部区域出现影像重叠的情况,对于可视化端在未经任何处理和判断的情况下默认会对可视范围内所有服务中满足行、列和层级编号的瓦片全部调用并加载,存在在同一位置有多个数据源的同名瓦片(即在不同数据集中具有相同行号、列号和金字塔层级的瓦片)重叠调用、加载和绘制的问题,该问题进一步引发服务效率的降低:1)在服务器端,每个位置的瓦片调用都会遍历所有瓦片数据集,不论是否找到合适的数据集都会引发较长的时耗,拖慢服务器的响应速度;2)在传输过程,传输带宽被大量同名瓦片占用,而用户真正需要的瓦片不能及时从服务端传送至客户端,导致传输效率降低;3)在可视化端,多个同名瓦片叠加显示仅会展示最后一次调用的瓦片信息,但之前调用的数据仍会占据内存并进行数据解析,导致不必要的内存计算和空间浪费,从而影响可视化端瓦片刷新的流畅度,出现展示场景卡顿、不连贯甚至客户端崩溃的问题。



技术实现要素:

本发明提供一种瓦片地图服务的调用方法、装置、存储介质及服务器,用以解决现有技术的如下问题:多个瓦片地图服务同时加载会产生在局部区域出现影像重叠的情况,多个同名瓦片叠加虽然仅会展示最后一次调用的瓦片信息,但之前调用的数据仍会占据内存并进行数据解析,导致不必要的内存计算和空间浪费。

为解决上述技术问题,一方面,本发明提供一种瓦片地图服务的调用方法,包括:根据瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个所述瓦片数据垂直维度下的可视层级范围,并确定每个可视层级范围对应的瓦片数据的瓦片ID;将收到的影像主题与预设影像主题进行匹配,以根据匹配结果在所述瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第一预定瓦片数据集;将接收到的影像时间范围与预设影像生成时间进行匹配,以根据匹配结果在所述第一预定瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第二预定瓦片数据集;获取用户侧在地图服务中的视点信息,并根据所述视点信息确定所述第二预定瓦片数据集中待显示在屏幕上的瓦片数据的瓦片边界,其中,所述视点信息包括当前高程信息和当前经纬度信息;将所述瓦片边界内包括的每个瓦片数据都按照生成时间进行排序,并根据所述瓦片ID调用排序后生成时间离当前调用时间最近的瓦片数据。

可选的,根据所述瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个所述瓦片数据垂直维度下的可视层级范围之前,还包括:读取影像元数据,按照预定语义标注元素对每个影像元数据进行标注,以生成所述瓦片数据集,其中,所述预定语义标注元素至少包括:影像文件名称、影像生成时间、影像空间范围、影像分辨率、影像主题和影像优先级。

可选的,根据所述瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个所述瓦片数据垂直维度下的可视层级范围,包括:根据所述预设影像分辨率确定所述瓦片数据的最大可视层级,根据所述预设影像优先级确定所述瓦片数据的最小可视层级;获取所述最大可视层级与所述最小可视层级的交集,并将所述交集对应的可是层级范围确定为所述瓦片数据垂直维度下的可视层级范围。

可选的,获取用户侧在地图服务中的视点信息,并根据所述视点信息确定所述第二预定瓦片数据集中待显示在屏幕上的瓦片数据的瓦片边界,包括:按照高程信息与瓦片数据的预设金字塔可视层级的映射关系确定所述当前高程信息对应的可视层级;根据所述可视层级在所述第二预定瓦片数据集中获取对应的瓦片数据,以根据获取到的瓦片数据生成第三预定瓦片数据集;根据所述经纬度信息确定所述第三预定瓦片数据集种待显示在屏幕上的瓦片数据的瓦片边界。

另一方面,本发明还提供一种瓦片地图服务的调用装置,包括:第一确定模块,用于根据瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个所述瓦片数据垂直维度下的可视层级范围,并确定每个可视层级范围对应的瓦片数据的瓦片ID;第一匹配模块,用于将收到的影像主题与预设影像主题进行匹配,根据匹配结果在所述瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第一预定瓦片数据集;第二匹配模块,用于将接收到的影像时间范围与预设影像生成时间进行匹配,根据匹配结果在所述第一预定瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第二预定瓦片数据集;第二确定模块,用于获取用户侧在地图服务中的视点信息,并根据所述视点信息确定所述第二预定瓦片数据集中待显示在屏幕上的瓦片数据的瓦片边界,其中,所述视点信息包括当前高程信息和当前经纬度信息;调用模块,用于将所述瓦片边界内包括的每个瓦片数据都按照生成时间进行排序,并根据所述瓦片ID调用排序后生成时间离当前调用时间最近的瓦片数据。

可选的,还包括:标注模块,用于读取影像元数据,按照预定语义标注元素对每个影像元数据进行标注,以生成所述瓦片数据集,其中,所述预定语义标注元素至少包括:影像文件名称、影像生成时间、影像空间范围、影像分辨率、影像主题和影像优先级。

可选的,所述第一确定模块,具体用于:根据所述预设影像分辨率确定所述瓦片数据的最大可视层级,根据所述预设影像优先级确定所述瓦片数据的最小可视层级;获取所述最大可视层级与所述最小可视层级的交集,并将所述交集对应的可是层级范围确定为所述瓦片数据垂直维度下的可视层级范围。

可选的,所述第二确定模块,具体用于:按照高程信息与瓦片数据的预设金字塔可视层级的映射关系确定所述当前高程信息对应的可视层级;根据所述可视层级在所述第二预定瓦片数据集中获取对应的瓦片数据,以根据获取到的瓦片数据生成第三预定瓦片数据集;根据所述经纬度信息确定所述第三预定瓦片数据集种待显示在屏幕上的瓦片数据的瓦片边界。

另一方面,本发明还提供一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述瓦片地图服务的调用方法的步骤。

另一方面,本发明还提供一种服务器,至少包括存储器、处理器,所述存储器上存储有计算机程序,所述处理器在执行所述存储器上的计算机程序时实现上述瓦片地图服务的调用方法的步骤。

本发明在获取地图的瓦片数据时,将个位置的瓦片数据按照生成时间进行排序,只调用排序后生成时间离当前调用时间最近的瓦片数据,该过程前期不需要调用该位置对应的其他的瓦片数据,减少系统计算过程,也节省了系统的空间资源,解决了现有技术的如下问题:多个瓦片地图服务同时加载会产生在局部区域出现影像重叠的情况,多个同名瓦片叠加虽然仅会展示最后一次调用的瓦片信息,但之前调用的数据仍会占据内存并进行数据解析,导致不必要的内存计算和空间浪费。本方法避免同名瓦片的重复调用与内存加载,减少了服务器检索、带宽占用和客户端的内存计算与空间浪费。

附图说明

图1是本发明第一实施例中瓦片地图服务的调用方法的流程图;

图2是本发明第二实施例中瓦片地图服务的调用装置;

图3是本发明第三实施例中生成瓦片数据集元数据文件的流程图;

图4是本发明第三实施例中瓦片自适应匹配流程图。

具体实施方式

为了解决现有技术的如下问题:多个瓦片地图服务同时加载会产生在局部区域出现影像重叠的情况,多个同名瓦片叠加虽然仅会展示最后一次调用的瓦片信息,但之前调用的数据仍会占据内存并进行数据解析,导致不必要的内存计算和空间浪费;本发明提供了一种瓦片地图服务的调用方法、装置、存储介质及服务器,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

本发明第一实施例提供了一种瓦片地图服务的调用方法,该方法的流程如图1所示,包括步骤S101至S105:

S101,根据瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个瓦片数据垂直维度下的可视层级范围,并确定每个可视层级范围对应的瓦片数据的瓦片ID;

S102,将收到的影像主题与预设影像主题进行匹配,以根据匹配结果在瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第一预定瓦片数据集;

S103,将接收到的影像时间范围与预设影像生成时间进行匹配,以根据匹配结果在第一预定瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第二预定瓦片数据集;

S104,获取用户侧在地图服务中的视点信息,并根据视点信息确定第二预定瓦片数据集中待显示在屏幕上的瓦片数据的瓦片边界,其中,视点信息包括当前高程信息和当前经纬度信息;

S105,将瓦片边界内包括的每个瓦片数据都按照生成时间进行排序,并根据瓦片ID调用排序后生成时间离当前调用时间最近的瓦片数据。

本发明实施例对瓦片数据集设置了预设参数,具体实现时,先根据预设影像分辨率和预设影像优先级确定每个瓦片数据的可视层级范围和该范围下瓦片数据的瓦片ID,随后将接收到的检索条件与预设影像主题和预设影像生成时间进行匹配,再根据视点信息确定要显示的瓦片边界,并通过瓦片ID调取该边界内部瓦片数据,进而得到用户当前视点信息下能够看到的地图。

该方法在获取地图的瓦片数据时,将个位置的瓦片数据按照生成时间进行排序,只调用排序后生成时间离当前调用时间最近的瓦片数据,该过程前期不需要调用该位置对应的其他的瓦片数据,减少系统计算过程,也节省了系统的空间资源,解决了现有技术的如下问题:多个瓦片地图服务同时加载会产生在局部区域出现影像重叠的情况,多个同名瓦片叠加虽然仅会展示最后一次调用的瓦片信息,但之前调用的数据仍会占据内存并进行数据解析,导致不必要的内存计算和空间浪费。

在根据瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个瓦片数据垂直维度下的可视层级范围之前,还需要读取影像元数据,按照预定语义标注元素对每个影像元数据进行标注,以生成瓦片数据集,其中,预定语义标注元素至少包括:影像文件名称、影像生成时间、影像空间范围、影像分辨率、影像主题和影像优先级。该过程为瓦片数据集进行了标注,减少了后续地图服务使用过程中对瓦片数据的检索时间。

具体实现的过程中,在根据瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个瓦片数据垂直维度下的可视层级范围时,具体可以包括如下过程:根据预设影像分辨率确定瓦片数据的最大可视层级,根据预设影像优先级确定瓦片数据的最小可视层级;获取最大可视层级与最小可视层级的交集,并将交集对应的可是层级范围确定为瓦片数据垂直维度下的可视层级范围。该过程为每个瓦片数据确定了其能够合理显示的可视层级范围,避免可视层级过大或过小导致的瓦片数据调用后显示不清楚的情况。

在获取用户侧在地图服务中的视点信息,并根据视点信息确定第二预定瓦片数据集中待显示在屏幕上的瓦片数据的瓦片边界时,具体可以包括:按照高程信息与瓦片数据的预设金字塔可视层级的映射关系确定当前高程信息对应的可视层级;根据可视层级在第二预定瓦片数据集中获取对应的瓦片数据,以根据获取到的瓦片数据生成第三预定瓦片数据集;根据经纬度信息确定第三预定瓦片数据集种待显示在屏幕上的瓦片数据的瓦片边界。该过程根据高程信息确定当前的可视层级,再确定当前可视层级下的当前经纬度信息对应的瓦片数据的瓦片边界,进而能够准确的获取用户需要查看的地图范围。

本发明第二实施例提供了一种瓦片地图服务的调用装置,该装置可以设置在服务器中,该装置的结构示意如图2所示,包括:

第一确定模块10,用于根据瓦片数据集中每个瓦片数据的预设影像分辨率和预设影像优先级确定每个瓦片数据垂直维度下的可视层级范围,并确定每个可视层级范围对应的瓦片数据的瓦片ID;第一匹配模块11,与第一确定模块10耦合,用于将收到的影像主题与预设影像主题进行匹配,根据匹配结果在瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第一预定瓦片数据集;第二匹配模块12,与第一匹配模块11耦合,用于将接收到的影像时间范围与预设影像生成时间进行匹配,根据匹配结果在第一预定瓦片数据集中获取瓦片数据,以根据获取到的瓦片数据生成第二预定瓦片数据集;第二确定模块13,与第二匹配模块12耦合,用于获取用户侧在地图服务中的视点信息,并根据视点信息确定第二预定瓦片数据集中待显示在屏幕上的瓦片数据的瓦片边界,其中,视点信息包括当前高程信息和当前经纬度信息;调用模块14,与第二确定模块13耦合,用于将瓦片边界内包括的每个瓦片数据都按照生成时间进行排序,并根据瓦片ID调用排序后生成时间离当前调用时间最近的瓦片数据。

本发明实施例对瓦片数据集设置了预设参数,具体实现时,先根据预设影像分辨率和预设影像优先级确定每个瓦片数据的可视层级范围和该范围下瓦片数据的瓦片ID,随后将接收到的检索条件与预设影像主题和预设影像生成时间进行匹配,再根据视点信息确定要显示的瓦片边界,并通过瓦片ID调取该边界内部瓦片数据,进而得到用户当前视点信息下能够看到的地图。

上述装置还可以包括:与第一确定模块10耦合的标注模块,用于读取影像元数据,按照预定语义标注元素对每个影像元数据进行标注,以生成瓦片数据集,其中,预定语义标注元素至少包括:影像文件名称、影像生成时间、影像空间范围、影像分辨率、影像主题和影像优先级。该模块的设置为瓦片数据集进行了标注,减少了后续地图服务使用过程中对瓦片数据的检索时间。

实现时,第一确定模块10,具体用于:根据预设影像分辨率确定瓦片数据的最大可视层级,根据预设影像优先级确定瓦片数据的最小可视层级;获取最大可视层级与最小可视层级的交集,并将交集对应的可是层级范围确定为瓦片数据垂直维度下的可视层级范围。该模块的设置为每个瓦片数据确定了其能够合理显示的可视层级范围,避免可视层级过大或过小导致的瓦片数据调用后显示不清楚的情况。

有选的,第二确定模块13,具体用于:按照高程信息与瓦片数据的预设金字塔可视层级的映射关系确定当前高程信息对应的可视层级;根据可视层级在第二预定瓦片数据集中获取对应的瓦片数据,以根据获取到的瓦片数据生成第三预定瓦片数据集;根据经纬度信息确定第三预定瓦片数据集种待显示在屏幕上的瓦片数据的瓦片边界。该模块使得可以根据高程信息确定当前的可视层级,再确定当前可视层级下的当前经纬度信息对应的瓦片数据的瓦片边界,进而能够准确的获取用户需要查看的地图范围。

本实施例对瓦片数据集进行语义标注,从数据集主题、时相、分辨率、范围、优先级等多个方面对数据集的元数据描述进行扩充;进一步提供视点驱动的瓦片自动过滤方法,保证面对重叠区域的瓦片地图服务每次仅请求一个服务中的瓦片,在不影响浏览效果的情况下大大降低同名瓦片的请求次数,提升多源瓦片地图服务的可视化效率。

本发明第三实施例提供了一种存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述第一实施例提供的瓦片地图服务的调用方法的各个步骤,此处不再赘述。

本实施例针对多源瓦片地图服务选择可视化中多个逻辑图层叠加产生同名瓦片数据重叠引起的数据无效访问和内存冗余等问题,提出了一种瓦片地图服务语义标注与自动过滤方法,从空间范围、时相范围、分辨率、主题、优先级等多个方面在传统瓦片地图服务元数据描述的基础上增加语义标注,用于进一步在调用服务时增加数据源的区别度。面对大量新增的瓦片地图服务源,通过自动过滤方法针对每一个瓦片调用过程均能够根据用户需求自动选择最佳的服务源进行瓦片请求,既增加了丰富数据源的可用性,也避免了因数据众多而导致的冗余问题。本实施例的存储介质在设置时,包括如下两个方法部分:

(1)瓦片地图服务语义标注方法。

在遥感影像由文件切片建立瓦片金字塔的过程中为瓦片数据集添加语义标注,包括范围语义、时相语义、分辨率语义、优先级语义和主题语义。范围语义描述数据集的空间区域范围;时间语义记录遥感图像的采集时间;分辨率语义定义了本地金字塔的垂直范围;优先级语义控制数据集的排列顺序;主题语义是记录瓦片数据集的应用信息(如任务主题等)的一组子标签。瓦片数据集的语义标注内容由资源描述框架(RDF,Resource Description Framework)表达,语义的详细描述和功能如下:

范围语义,描述瓦片数据集在地球表面的二维区域边界。在影像切片过程中,一组新的图像通常首先被切割成一个形状与目标区域边界匹配的图像。范围语义通过一组二维坐标点串描述图像覆盖地表的多边形形状,可准确描述图像的边界范围。在瓦片地图服务中,范围语义用于视口精确地过滤目标范围以外的不相关服务。在元数据RDF文件中,范围语义以<Polygon>标签标示,由一组二维点串表达。

时相语义,描述了时间维度中数据集的顺序和生命周期。每个数据集的时间范围以时间戳的形式定义,支持可视化对多个瓦片地图服务的序列分析和多时相影像瓦片的展示。对于同一时相范围内,其他参数相同情况下以时间最邻近的瓦片为默认调度瓦片,保证了同名瓦片调用的唯一性。在元数据RDF文件中,时相语义以<StartTime>和<EndTime>标签标示,以“20140808041230”的形式记录年、月、日、小时、分钟、秒。

分辨率语义,描述影像分辨率对应金字塔模型的最高级别。在金字塔构建过程中,影像的分辨率决定在三维空间下其瓦片金字塔的深度。分辨率语义代表当前金字塔在Z轴的可视范围。例如,当视点到达靠近地表位置时,意味着相比全局背景数据集的低分辨率纹理,用户更关心高分辨率图像数据集所展示的地貌细节特征。在这种情况下,分辨率语义信息用以排除用户视野范围之外的瓦片地图服务。在元数据RDF文件中,分辨率语义以<Resolution>标签标示,以整型字符表达。

优先级语义,其是确定服务加载顺序的辅助索引。在例如减灾应急任务中,随着影像数据的获取会生成许多空间范围、可见深度和生命周期存在重叠的瓦片地图服务。优先级用于区分高度重叠的这些地图服务。优先级语义由人工经验初始化。例如,如果当前影像更适合于洪水灾害中的水体抽取,则相应金字塔的优先级高于其他传感器(即摄像头)获取影像的瓦片服务。优先级语义用于确保瓦片服务过滤结果的唯一性。在元数据RDF文件中,优先级语义以<Priority>标签标示,以整型字符表达。

主题语义,其是根据传感器类型、数据源、任务偏好等信息区分瓦片地图服务特性差异的约束。例如在减灾应急可视化任务中,不同的灾害类型对应的图像分辨率和传感器类型的偏好不同。通过主题语义构建一组子标签来描述图像层的主题特征。它有效地增加了不同可视化任务和数据集的匹配关系,支持用户批量选择和丢弃瓦片地图服务。在元数据RDF文件中,主题语义以<Theme>标签标示,以字符串表达。表1为瓦片数据集RDF元数据文件示例。

图3展示了由影像数据切片建立金字塔过程中瓦片数据集元数据生成步骤。

步骤1:读取影像元数据,获取影像信息,包括影像文件名称、影像生成时间、影像空间参考、影像描述(即分辨率)等信息,自动映射为瓦片数据集字段描述并记录每个字段的值。

步骤2:读取影像数据的头文件,获取影像的空间范围信息,设置<Polygon>的值。

步骤3:读取影像的分辨率信息,由分辨率转换为瓦片金字塔模型的层级信息,存入<Resolution>标签。

步骤4:设置时相信息,包括两种方式,默认由影像的生成时间自动转换存储<StartTime>标签,并以此为起始时间顺延24小时记录终止时间,存储<EndTime>标签,或由人工制定输入起始、终止时间,存入时相语义标签内。

步骤5:由人工根据经验设置主题信息,将多个字符串依次存储<Theme>标签。

步骤6:由人工根据经验(例如任务偏好、数据质量、覆盖兴趣区程度等)设置瓦片数据集优先级,例如,最高级为5,最低级为0。

步骤7:根据上述标签生成瓦片数据集RDF元数据文件。

(2)瓦片地图服务自动过滤方法。

本方法通过RDF文件描述数据集的时空语义特点,在瓦片检索过程中结合当前视点位置信息对瓦片进行自适应匹配和筛选。图4展示了瓦片自适应匹配流程,包括如下步骤:

步骤1:遍历并结构化存储所有瓦片数据集的元数据RDF文件,对瓦片数据集的数据集名称、主题和数据源作为粗粒度的标识信息进行存储。

步骤2:加载<StartTime>、<EndTime>、<Resolution>等标签值,假设<Resolution>记录的金字塔最大层级为Range1。该金字塔最大层级为Range1为原始分辨率对应的最清晰的可视程度。

步骤3:将<Priority>的优先级与最小可视范围进行映射,得到当前优先级所对应的垂直方向的金字塔最小可视层级Range2。该过程中,虽然分辨率可能很高,但可能噪点大,因此,优先级可能较低。

步骤4:将Range1和Range2求交集,确定该瓦片数据集在垂直维度的可视范围,该可视范围为一个较为合适的范围。

步骤5:计算数据集在range1∩range2的各金子塔层级上处于包围盒左下和右上位置的瓦片ID,作为范围边界标识,准备自适应匹配。该过程将经纬度信息转换为瓦片ID。

步骤6:根据用户输入信息获取可视化主题和时相。前者体现了操作者的兴趣对象,通过信息主题与数据集的相关属性进行匹配,过滤后形成相关数据集列表list1。

步骤7:进一步将list1与时间信息进行比对,剔除列表内输入时间区间以外的数据集,得到列表list2,缩小后续自动匹配和检索的范围。

此时,相当于地图上已呈现地图,但可能地图的可视层级较小,用户看不清具体景物,所以用户会不断调整视点位置,来挪动到自己想要看清的位置。

步骤8:随着视点位置的移动,实时获取视点信息,包括视点的高程和经纬度位置,根据视点高程与金字塔层级划分的映射关系计算视点当前所处的层级LOD(即细节层级)。

步骤9:遍历数据集列表list2,将LOD与数据集的可见深度进行匹配,选择垂直维度可见范围包含LOD的瓦片数据集。

步骤10:进一步查询该数据集的金字塔数组,找到LOD层级的瓦片边界,将待请求瓦片的行列号与之进行匹配,包含瓦片的数据集构成列表list3。

步骤11:将list3按照时相再次排序。

步骤12:将最后list3的第一顺位瓦片地图服务源作为结果进行调用。

备注:在上述前三次自动过滤时,若list所含服务源数量仅为小于等于1,则直接跳到步骤12。

与现有技术相比,本发明优化了面向众多瓦片地图服务时的瓦片选择问题,通过对每一个瓦片请求进行自动筛选能够保证从大量服务源中调取瓦片的唯一性,在服务器端保证需要遍历的瓦片数据集只有一个,避免对所有瓦片数据集进行遍历查找,提高了服务器端的响应效率;在传输层显著减少了同名瓦片的数量,缓解了原有技术中同名瓦片同时调用导致的带宽资源浪费与低效;在可视化端有效减少了瓦片的总体请求和加载数量,提升了有效瓦片的请求率,既合理充分地利用了众多瓦片地图服务资源,又保证有限的内存资源应用于最合适的瓦片解析与绘制,保持了可视化的流畅效果。此外,该过滤技术是在客户端内存中遍历完成,能够承担数百个瓦片数据集遍历对比的响应时效,因此上述瓦片地图服务效率的提升不会因为瓦片地图服务数量的增加而下降,保证了瓦片地图服务调用的高效稳定。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例记载的方法步骤。可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1