一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种栅格瓦片数据精度的动态调整方法与流程

2022-08-10 15:45:47 来源:中国专利 TAG:


1.本发明涉及地理信息服务技术领域,更具体的说是涉及一种栅格瓦片数据精度的动态调整方法。


背景技术:

2.在互联网地图服务领域,通过服务端渲染并预先制作成不同比例尺的栅格瓦片(尺寸固定的图片)缓存对外提供服务仍然是主流的服务方式之一。在栅格瓦片缓存内,每张瓦片都有自己的定位坐标,由行索引、列索引、缩放级别三个参数组成。客户端根据瓦片坐标请求每一张瓦片,并按照对应规则重组、排列即可在客户端渲染成完整的地图。
3.栅格瓦片缓存服务支持的地理范围越广,则预生产的瓦片数据量越大,意味着生产周期越长。
4.栅格瓦片缓存一旦生成,该数据集的精度就固定了,精度和生产该瓦片缓存的数据源保持一致。因此在传统模式下,若需要同一套数据源不同精度的栅格瓦片缓存,需要制作多份缓存,耗时耗力。
5.因此,如何基于一套栅格瓦片数据提供不同精度的数据服务是本领域技术人员亟需解决的问题。


技术实现要素:

6.有鉴于此,本发明提供了一种栅格瓦片数据精度的动态调整方法,基于坐标偏移算法,在客户端请求瓦片的时候,动态将请求瓦片的精度进行调整,使得基于一份栅格瓦片缓存同时提供多种精度的时空信息服务。
7.为了实现上述目的,本发明提供如下技术方案:
8.一种栅格瓦片数据精度的动态调整方法,包括以下步骤:
9.s1、计算栅格瓦片的像素偏移量;
10.s2、根据栅格瓦片的像素偏移量选择相邻的栅格瓦片拼接成图片;
11.s3、对所述图片进行仿射变换;
12.s4、将变换后的图片裁切成栅格瓦片。
13.优选的,所述计算栅格瓦片的像素偏移量具体为:
14.s11、获取栅格瓦片的坐标;
15.s12、获取栅格瓦片生产时采用的坐标参考系统;
16.s13、根据栅格瓦片的坐标以及生产时采用的坐标参考系统计算栅格瓦片覆盖的地理坐标范围;
17.s14、根据地理坐标范围计算栅格瓦片基准点地理坐标;
18.s15、通过坐标偏移算法对栅格瓦片基准点地理坐标进行偏移;
19.s16、计算栅格瓦片基准点偏移前后坐标的差值形成栅格瓦片地理坐标偏移量;
20.s17、计算栅格瓦片分辨率;
21.s18、根据栅格瓦片地理坐标偏移量和分辨率计算栅格瓦片像素偏移量。
22.优选的,所述根据栅格瓦片的像素偏移量选择相邻的栅格瓦片拼接成图片具体为:
23.s21、根据栅格瓦片的像素偏移量以八方位算法从栅格瓦片相邻的瓦片集中选取合适的瓦片;
24.s22、将s1中的栅格瓦片和s21中选取的与所述栅格瓦片相邻栅格瓦片按照栅格瓦片坐标顺序拼接成一张图片。
25.优选的,所述对所述图片进行仿射变换具体为:
26.s31、结合栅格瓦片尺寸和瓦片像素偏移量计算出变换矩阵;
27.s32、基于变换矩阵对s2中拼接得到的图片进行仿射变换得到一张新的图片。
28.优选的,所述将变换后的图片裁切成栅格瓦片具体为:
29.s41、根据栅格瓦片尺寸计算出裁切区域;
30.s42、对s3中仿射变换后的图片进行裁切生成栅格瓦片。
31.经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种栅格瓦片数据精度的动态调整方法,可以基于一套栅格瓦片在用户请求的时候实时、动态地对原始数据精度进行调整,有效减轻了数据制作的工作量。
附图说明
32.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
33.图1为本发明的总体流程图;
34.图2为本发明的栅格瓦片偏移示意图;
35.图3为本发明的八方位算法邻接瓦片示意图;
36.图4为本发明的邻接瓦片优选示意图;
37.图5为本发明的瓦片拼接示意图;
具体实施方式
38.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.实施例一:
40.本发明实施例公开了一种栅格瓦片数据精度的动态调整方法,如图1所示:包括以下步骤:
41.s1、计算栅格瓦片的像素偏移量;
42.s2、根据栅格瓦片的像素偏移量选择相邻的栅格瓦片拼接成图片;
43.s3、对所述图片进行仿射变换;
44.s4、将变换后的图片裁切成栅格瓦片。
45.实施例二:
46.本发明实施例公开了一种栅格瓦片数据精度的动态调整方法,包括以下步骤:
47.s1、计算栅格瓦片的像素偏移量,具体包括:
48.s11、获取瓦片坐标,瓦片在瓦片缓存集合中是按照规则排列,每一张都有专属的定位坐标,这里记为(zoom,col,row),其中row为瓦片行号,col为瓦片列号,zoom为缩放级别,同时瓦片尺寸记为(width,height),其中width为瓦片宽度,height为瓦片高度;
49.s12、获取瓦片生产时采用的坐标参考系统,瓦片的坐标参考系统和制作瓦片的数据源坐标参考系统一致,可采用读取配置文件或者其他方式获取到对应的坐标参考系统;
50.s13、根据瓦片坐标和坐标参考系统计算瓦片覆盖的地理坐标范围,记为(minx,miny,maxx,maxy),其中minx为经度最小值,maxx为经度最大值,miny为纬度最小值,maxy为纬度最大值;
51.s14、计算瓦片基准点地理坐标,瓦片基准点可以选择瓦片范围内任意一点;
52.优选地,选择瓦片中心点作为基准点,则瓦片基准点地理坐标计算如下:
[0053][0054]
其中lng0为瓦片基准点地理坐标的经度,lat0为瓦片基准点地理坐标的纬度;
[0055]
s15、通过坐标偏移算法对瓦片基准点地理坐标进行偏移,坐标偏移算法是一种在保证地理要素拓扑属性不变的情况下对要素的地理坐标进行线性或者非线性变换的算法,此类算法不在本发明范围内,故不再赘述。针对瓦片基准点地理坐标进行偏移的过程可简单表现为:
[0056]
(lng1,lat1)=f(lng0,lat0)
[0057]
其中f为坐标偏移函数,其中lng1为瓦片基准点偏移后地理坐标的经度,lat1为瓦片基准点偏移后地理坐标的纬度;
[0058]
s16计算瓦片基准点偏移前后坐标的差值形成瓦片地理坐标偏移量;
[0059]
s17计算瓦片分辨率;
[0060]
s18、计算瓦片像素偏移量,瓦片像素偏移量以基准点像素偏移量为准。基准点像素偏移量结合基准点偏移前后地理坐标偏移量和瓦片分辨率如下计算:
[0061][0062]
其中r为瓦片分辨率,可根据瓦片缩放级别计算得出,lng1,lat1,lng0,lat0如上文所述,px为瓦片水平方向像素偏移量,py为瓦片垂直方向像素偏移量。
[0063]
s2、根据栅格瓦片的像素偏移量选择相邻的栅格瓦片拼接成图片。
[0064]
s3、对所述图片进行仿射变换。
[0065]
s4、将变换后的图片裁切成栅格瓦片。
[0066]
实施例三:
[0067]
本发明实施例公开了一种栅格瓦片数据精度的动态调整方法,包括以下步骤:
[0068]
s1、计算栅格瓦片的像素偏移量。
[0069]
s2、根据栅格瓦片的像素偏移量选择相邻的栅格瓦片拼接成图片;理论上当计算出瓦片像素偏移量后即可对瓦片进行偏移,但是如图2所示,直接对瓦片偏移后可能会出现空白,因此需要结合相邻瓦片对空白进行补偿,具体包括以下步骤:
[0070]
s21、如图3所示,以八方位算法从瓦片相邻的瓦片集中选取合适的瓦片进行拼接处理;
[0071]
如图4所示,根据瓦片偏移量选择尽可能少的相邻瓦片进行拼接,降低瓦片拼接资源消耗,规则如下:
[0072]
当px=0、py=0,不需要选择相邻瓦片;
[0073]
当px=0、py》0,选择正南方位的邻接瓦片;
[0074]
当px=0、py《0,选择正北方位的邻接瓦片;
[0075]
当px》0、py=0,选择正西方位的邻接瓦片;
[0076]
当px《0、py=0,选择正东方位的邻接瓦片;
[0077]
当px》0、py》0,选择正南、西南、正西方位的邻接瓦片;
[0078]
当px》0、py《0,选择正北、正西、西北方位的邻接瓦片;
[0079]
当px《0、py》0,选择正东、东南、正南方位的邻接瓦片;
[0080]
当px《0、py《0,选择正北、东北、正东方位的邻接瓦片。
[0081]
s22、将待处理瓦片和选取的相邻瓦片按照瓦片坐标顺序拼接成一张图片,如图5所示,按照瓦片列号从小到大依次沿水平方向向右排列,按照瓦片行号从小到大沿垂直方向向下排列。排列完成后合并成一张图片。
[0082]
s3、对所述图片进行仿射变换。
[0083]
s4、将变换后的图片裁切成栅格瓦片。
[0084]
实施例四:
[0085]
本发明实施例公开了一种栅格瓦片数据精度的动态调整方法,包括以下步骤:
[0086]
s1、计算瓦片偏移量。
[0087]
s2、结合相邻瓦片拼接成图片。
[0088]
s3、对图片进行仿射变换,具体包括以下步骤:
[0089]
s31、结合瓦片尺寸和瓦片像素偏移量计算变换矩阵,根据上文计算出的瓦片像素偏移量(px,py),可得到变换矩阵如下:
[0090][0091]
s32、对s22得到的图片进行二维变换:
[0092][0093]
其中(x0,y0)为原始图像像素坐标,(x1,y1)为变换后图像像素坐标。
[0094]
s4、将变换后的图片裁切成瓦片。
[0095]
实施例五:
[0096]
本发明实施例公开了一种栅格瓦片数据精度的动态调整方法,包括以下步骤:
[0097]
s1、计算栅格瓦片的像素偏移量。
[0098]
s2、根据栅格瓦片的像素偏移量选择相邻的栅格瓦片拼接成图片。
[0099]
s3、对所述图片进行仿射变换。
[0100]
s4、将变换后的图片裁切成栅格瓦片,具体包括以下步骤:
[0101]
s41、计算裁切区域,裁切区域由裁切原点和裁切尺寸决定。裁切尺寸和瓦片尺寸保持一致。裁切原点的坐标分布规则如下:
[0102]
当px=0、py=0,裁切原点的坐标为(0,0);
[0103]
当px=0、py》0,裁切原点的坐标为(0,0);
[0104]
当px=0、py《0,裁切原点的坐标为(0,height);
[0105]
当px》0、py=0,裁切原点的坐标为(width,0);
[0106]
当px《0、py=0,裁切原点的坐标为(0,0);
[0107]
当px》0、py》0,裁切原点的坐标为(width,0);
[0108]
当px》0、py《0,裁切原点的坐标为(width,height);
[0109]
当px《0、py》0,裁切原点的坐标为(0,0);
[0110]
当px《0、py《0,裁切原点的坐标为(0,height);
[0111]
s42、根据裁切区域对s32得到的图片进行裁切。
[0112]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0113]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献