[发明专利]一种基于遥感影像瓦片数据的地图绘制方法有效
申请号: | 201910160966.4 | 申请日: | 2019-03-04 |
公开(公告)号: | CN110059143B | 公开(公告)日: | 2022-11-22 |
发明(设计)人: | 段云龙;常鹏飞;张岭军;李春晓;张明 | 申请(专利权)人: | 中国电子科技集团公司第二十七研究所 |
主分类号: | G06F16/29 | 分类号: | G06F16/29;G06F16/955;G06T17/00;H04L67/06 |
代理公司: | 郑州联科专利事务所(普通合伙) 41104 | 代理人: | 刘建芳;常娟 |
地址: | 450047 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 遥感 影像 瓦片 数据 地图 绘制 方法 | ||
1.一种基于遥感影像瓦片数据的地图绘制方法,其特征在于:包括以下步骤:
A、遥感影像瓦片数据下载器初始化启动并运行;
B、用户通过交互界面创建多线程下载任务;多线程下载任务分为用户漫游操作或新建下载任务两种类型;
C、下载器根据多线程下载任务产生地图瓦片数据请求,并将产生的地图瓦片数据请求发送至谷歌地图服务器;
D、谷歌地图服务器响应用户的请求并返回响应影像瓦片数据至下载器;
E、下载器对获取的响应影像瓦片数据进行解析;
F、下载器将经过解析的响应影像瓦片数据在交互界面进行更新和渲染,同时将响应影像瓦片数据存入数据库或对应文件夹中。
2.根据权利要求1所述的基于遥感影像瓦片数据的地图绘制方法,其特征在于:所述步骤A中具体过程如下:
a1:下载器加载和初始化下载任务列表配置文件
a2:OpenGL和影像渲染器初始化;
a3:根据初始窗口大小和初始窗口瓦片级别计算初始窗口所需要瓦片的行号Row和列号Col;
a4:将启动时窗口所需要的瓦片数据加入到下载任务队列中;
a5:发起多线程进行瓦片数据下载;
a6:下载成功后进行瓦片绘制,并将瓦片存入计算机内存的缓冲区。
3.根据权利要求1所述的基于遥感影像瓦片数据的地图绘制方法,其特征在于:所述多线程下载任务为用户漫游操作时,步骤B具体为:
b1.1:计算用户漫游操作所需瓦片级别Lev;
b1.2:根据当前交互界面窗口大小和瓦片级别Lev计算窗口所需瓦片的瓦片信息,并由瓦片信息构建需求瓦片集合T,定义需求瓦片集合T中的瓦片为待下载瓦片;瓦片信息包括瓦片级别Lev、瓦片行号Row和瓦片列号Col;
b1.3:在缓冲区中逐一查询每个待下载瓦片的瓦片信息,判断第i个待下载瓦片ti是否在缓冲区已存在:若是,则将已在缓冲区的待下载瓦片ti取出并直接加入下载任务队列,并将待下载瓦片ti定义为待更新瓦片;反之,则将待下载瓦片ti的信息加入到下载任务队列中并进入步骤C。
4.根据权利要求1所述的基于遥感影像瓦片数据的地图绘制方法,其特征在于:所述多线程下载任务为新建下载任务时,步骤B采用生产者-消费者的并行工作模式,具体为:
b2.1:生产任务创建:创建作为生产者的下载任务,并初始化瓦片数据库SQLite;
b2.2:启动任务生产者线程:计算各个级别Lev中待下载瓦片的瓦片信息,并将瓦片信息加入下载任务列表;瓦片信息包括瓦片级别Lev、瓦片行号Row和瓦片列号Col;
b2.3:启动消费者线程:下载任务系统启动,然后瓦片下载工作线程启动并向树视图添加任务项;
b2.4:瓦片下载工作线程启动后,瓦片下载工作线程循环检查下载任务列表是否有待下载瓦片,有则取出任务并进入步骤C进行瓦片数据下载,下载完成后的瓦片数据插入SQLite数据库和对应文件夹中;
b2.5:向树视图添加任务项后,响应控制菜单项;控制菜单项包括下载、暂停和停止。
5.根据权利要求1所述的基于遥感影像瓦片数据的地图绘制方法,其特征在于:所述步骤F中将响应影像瓦片数据在交互界面进行渲染的具体过程为:
f1:按照当前交互界面窗口的宽度和高度构造四个顶点坐标并存入顶点数组,并指定纹理映射坐标;
f2:当所需的瓦片数据下载到下载器的瓦片数据库时,从瓦片数据库的影像瓦片文件中提取出像素数据,并将提取的将像素数据作为子纹理通过调用glTexSubImage2D()接口更新到一张大二维纹理对象中;
f3:将步骤f2所得大二维纹理对象以正交投影的方式映射到步骤f1创建的顶点数组上,以此完成在交互界面窗口的瓦片纹理绘制工作,定义绘制完成的瓦片为更新完成瓦片。
6.根据权利要求1所述的基于遥感影像瓦片数据的地图绘制方法,其特征在于:所述步骤F中将响应影像瓦片数据存入数据库包括数据库存储和目录存储两种存取方式;
数据库存储采用MBTiles存储规范将地图瓦片存储到一个数据库中,并通过瓦片的ID号在不同三维坐标系中引用瓦片;
目录存储具体为:将瓦片数据存储至桑层存储目录中,第一层存储目录为瓦片数据来源对应的目录,第二层存储目录为瓦片数据所述的层级号,第三层存储目录为瓦片数据所述的行号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第二十七研究所,未经中国电子科技集团公司第二十七研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910160966.4/1.html,转载请声明来源钻瓜专利网。