一种基于改进的Z曲线编码的切片检索方法及系统技术方案

技术编号:33378522 阅读:18 留言:0更新日期:2022-05-11 22:46
本发明专利技术公开了一种基于改进的Z曲线编码的切片检索方法及系统,方法包括:步骤S100:将遥感图像拼接或者分割成若干切片图像,根据切片图像的行号、列号、层级构建改进的Z曲线编码;步骤S200:设每一个切片图像对应有若干个切片元数据,将切片元数据存储至数据库;步骤S300:在数据库中建立复合索引;步骤S400:在数据库内建立目标空间和空的元数据集合;步骤S500:当目标空间内的格网数大于设定的格网数阈值时,将目标空间进行划分并转步骤S600;当格网数小于格网数阈值时转步骤S700;步骤S600:对子目标空间进行处理;步骤S700:建立编码集合,对格网进行处理;步骤S800:利用编码集合构建查询;步骤S900:返回元数据集合。返回元数据集合。返回元数据集合。

【技术实现步骤摘要】
一种基于改进的Z曲线编码的切片检索方法及系统


[0001]本专利技术涉及遥感数据存储检索
,具体为一种基于改进的Z曲线编码的切片检索方法及系统。

技术介绍

[0002]人类已有半个多世纪全球尺度的历史遥感数据积累,且随着遥感技术迅速发展,空间分辨率、时间分辨率、光谱分辨率等技术指标也不断提高,遥感数据不断增加,随着带来的就是对遥感数据的管理难度逐渐增加;常规海量遥感数据的存储采用文件+关系型数据库实现,空间信息和其他属性信息等切片元数据存储在关系型数据库中,范围查询通过利用空间信息构建的R树索引实现快速查找。
[0003]Z曲线编码是空间填充曲线,他能够把二维的空间点数据编码成一个正整数,并且保持局部有序性;相对一维B+树索引,多维的R树索引所占存储空间更大,查询效率更低;随着元数据量增加时,关系型数据库的存储容量和查询性能就会快速下降,查询耗时较多。
[0004]R树索引中因为包含不同层级,不同分辨率,不同卫星的切片空间信息,导致R树索引过大,但通常一次查询,切片的层级和传感器类型往往是固定的而且是单一的,如果不对这些条件优化,往往导致遍历过多索引数据;同时,一个大的范围查询会导致单计算机节点负担过大,引起延迟,且关系型数据库扩展能力较弱,难以满足海量元数据的存储和快速检索任务;但Z曲线编码只能保持局部有序性,但不具备全局有序性,所以不能进行范围查找。

技术实现思路

[0005]本专利技术的目的在于提供一种基于改进的Z曲线编码的切片检索方法及系统,以解决上述
技术介绍
中提出的问题
[0006]为了解决上述技术问题,本专利技术提供如下技术方案:一种基于改进的Z曲线编码的切片检索方法,方法包括:
[0007]步骤S100:将遥感图像拼接或者分割成大小相同的若干切片图像,并将若干切片图像进行分层存放,不同层级的切片图像具有不同的分辨率;分别对若干切片图像的行号和列号进行确认;根据若干切片图像的层级、行号、列号分别对若干切片图像构建改进的Z曲线编码;
[0008]上述步骤将若干切片图像进行分层存放,不同层级的切片图像具有不同的分辨率的过程相当于是往Z曲线的编码中融入层级信息,不同层表示范围大小不同;在同一层级下每个切片的空间范围固定,可以由该行号和列号计算出;上述步骤意味着可以根据改进的Z曲线编码计算得到切片的空间信息和分辨率信息;本申请中的切片图像为遥感图像切片;
[0009]步骤S200:设每一个切片图像对应有若干个切片元数据,切片元数据包括但不限于传感器信息、时间信息、云量信息;将切片元数据存储至数据库;根据编码对数据进行哈希分区,使瓦片元数据存储在不同的计算机节点上;分区函数利用改进的Z曲线编码的前48位,使4096个空间相邻的瓦片元数据在同一个分区,避免数据倾斜;
[0010]上述步骤可实现当并发查询量大时,避免数据倾斜导致的单个计算机节点负载过重,同时也保持了切片元数据的局部有序性;
[0011]步骤S300:在数据库中使用改进的Z曲线编码、时间信息、云量信息建立复合索引;
[0012]步骤S400:当用户输入查询范围在数据库内进行窗口查询的同时建立目标空间和空的元数据集合;目标空间是指与查询范围存在交集的区域,初始化为整个地球空间;元数据集合为并发集合,用来存放数据查询得到的查询结果;
[0013]步骤S500:对目标空间内的格网数进行获取;当格网数大于设定的格网数阈值时,将目标空间进行划分得到若干个子目标空间并转步骤S600;当格网数小于格网数阈值时转步骤S700;
[0014]步骤S600:基于若干个子目标空间和查询范围之间的关系对子目标空间进行处理;
[0015]步骤S700:建立编码集合,遍历当前目标空间内所含格网;基于格网与查询范围之间的关系对格网进行处理;
[0016]步骤S800:利用编码集合构建查询;其中,空间查询为in子句,条件语句顺序与复合索引内数据顺序一致,将查询得到的返回结果加入元数据集合;
[0017]此步骤使得此编码集合内编码不再是一个连续序列,且当子目标空间大时,每次范围查询连续序列的时间不会太长;
[0018]步骤S900:返回元数据集合,完成对切片元数据的快速检索。
[0019]进一步的,步骤S300中建立复合索引的过程包括:
[0020]步骤S301:获取各所述切片图像改进的Z曲线编码以及各所述切片图像对应的切片元数据;
[0021]步骤S302:将步骤S301中获取到的数据按照从左到右分别为传感器信息、改进的Z曲线编码、云量信息、时间信息的顺序建立复合索引;
[0022]上述步骤是将层级相同的切片元数据索引在空间上实现聚集,同一层下按照Z曲线编码进行排序,保持局部有序性,提高查询性能;
[0023]建立复合索引时,切片的二维空间信息转化为一维的改进的Z曲线编码后,可以与其他属性信息如分辨率,传感器,云量,时间建立复合索引,就像字典是按第一个字母,第二个字母...那样建立索引,这其实是根据用户的查询习惯和数据本身特性决定的,能反应用户的习惯和规律特性,加速对切片元数据的查询;这种方法摆脱了切片元数据存储对空间数据库的依赖,使得实际应用中可以使用MongoDB等水平扩展性更强的NoSQL数据库进行存储。
[0024]进一步的,步骤S500中将目标空间进行划分是指分别对目标空间从水平方向和垂直方向上进行划分,得到若干个大小相同的不存在重叠区域的子目标空间。
[0025]进一步的,步骤S600中基于若干个子目标空间和查询范围之间的关系对子目标空间进行处理的过程包括:
[0026]步骤S601:当某个子目标空间与用户输入的查询范围不相交,丢弃该子目标空间;
[0027]步骤S602:当用户输入的查询范围包含子目标空间,将子目标空间内的最小编码和最大编码同分辨率信息、云量信息、时间信息一起构建范围查询;其中空间查询为between子句,条件语句顺序与复合索引内数据顺序一致;将范围查询得到的返回结果加入
元数据集合;
[0028]在上述步骤S602中正是因为Z曲线编码局部有序,所以只需提取子目标空间内最小编码和最大编码就可以知道子目标空间编码范围;
[0029]步骤S603:当用户输入的查询范围与子目标空间相交但是不包含,将该子目标空间设为当前目标空间,在另一个线程中执行S500及其后步骤;
[0030]上述步骤相当于是将二维空间查询转化为多个一维子查询的过程,且由于一维查询性能高于二维空间查询性能,上述步骤有利于提高数据查询效率;上述步骤还能使得切片元数据不再依赖于空间数据库,相比Polygon表示空间范围,本专利技术中编码所占存储空间更少,所以可实现对一个大的范围查询进行多线程并发查询,同样利于提升查询效率;此步骤使得此子目标空间内的所有格网在查询范围内,且子目标空间内所有编码是一个连续的序列。
[0031]进一步的,步骤S700中基于格网与查询范围之间的关系对格网进行处理的过程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于改进的Z曲线编码的切片检索方法,其特征在于,所述方法包括:步骤S100:将遥感图像拼接或者分割成大小相同的若干切片图像,并将所述若干切片图像进行分层存放,不同层级的切片图像具有不同的分辨率;分别对所述若干切片图像的行号和列号进行确认;根据若干切片图像的层级、行号、列号分别对若干切片图像构建改进的Z曲线编码;步骤S200:设每一个切片图像对应有若干个切片元数据,切片元数据包括但不限于传感器信息、时间信息、云量信息;将切片元数据存储至数据库;根据编码对数据进行哈希分区,使瓦片元数据存储在不同的计算机节点上;分区函数利用改进的Z曲线编码的前48位,使4096个空间相邻的瓦片元数据在同一个分区,避免数据倾斜;步骤S300:在数据库中使用改进的Z曲线编码、时间信息、云量信息建立复合索引;步骤S400:当用户输入查询范围在数据库内进行窗口查询的同时建立目标空间和空的元数据集合;所述目标空间是指与查询范围存在交集的区域,初始化为整个地球空间;所述元数据集合为并发集合,用来存放数据查询得到的查询结果;步骤S500:对所述目标空间内的格网数进行获取;当所述格网数大于设定的格网数阈值时,将所述目标空间进行划分得到若干个子目标空间并转步骤S600;当所述格网数小于所述格网数阈值时转步骤S700;步骤S600:基于所述若干个子目标空间和查询范围之间的关系对子目标空间进行处理;步骤S700:建立编码集合,遍历当前目标空间内所含格网;基于格网与查询范围之间的关系对格网进行处理;步骤S800:利用所述编码集合构建查询;其中,空间查询为in子句,条件语句顺序与复合索引内数据顺序一致,将查询得到的返回结果加入元数据集合;步骤S900:返回元数据集合,完成对切片元数据的快速检索。2.根据权利要求1所述的一种基于改进的Z曲线编码的切片检索方法,其特征在于,所述步骤S300中建立复合索引的过程包括:步骤S301:获取各所述切片图像改进的Z曲线编码以及各所述切片图像对应的切片元数据;步骤S302:将步骤S301中获取到的数据按照从左到右分别为传感器信息、改进的Z曲线编码、云量信息、时间信息的顺序建立复合索引。3.根据权利要求1所述的一种基于改进的Z曲线编码的切片检索方法,其特征在于,所述步骤S500中将所述目标空间进行划分是指分别对所述目标空间从水平方向和垂直方向上进行划分,得到若干个大小相同的不存在重叠区域的子目标空间。4.根据权利要求1所述的一种基于改进的Z曲线编码的切片检索方法,其特征在于,所述步骤S600中基于所述若干个子目标空间和查询范围之间的关系对子目标空间进行处理的过程包括:步骤S601:当某个子目标空间与用户输入的查询范围不相交,丢弃该子目标空间;步骤S602:当用户输入的查询范围包含子目标空间,将子目标空间内的最小编码和最大编码同分辨率信息、云量信息、时间信息一起构建范围查询;其中空间查询为between子句,条件语句顺序与复合索引内数据顺序一致;将范围查询得到的返回结果加入元数据集
合;步骤S603:当用户输入的查询范围与子目标空间相交但是不...

【专利技术属性】
技术研发人员:余涛赵小明黄祥志扈子豪臧文乾王宝玉王帅刘川
申请(专利权)人:中科星通廊坊信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1