如何用 QGIS 下载高清天地图影像直到服务器宕机,同时解决下载质量差的问题,不仅仅天地图哦!
前言:比较标题党啦,把服务器下到宕机是不太可能的,但是你确实可以通过这个方法下载到大范围的、高清晰度(瓦片等级)的天地图影像。 并且解决长时间下载过程中出现的区域瓦片丢失的情况,并且使用任何在线的地图服务。 |
0.这篇文章能解决什么问题
在上篇文章中,提到了如何使用下载好的天地图影像提取建筑物轮廓,但是只有放大到很高级别后才能看到建筑物,但这样的话范围就小了,毕竟屏幕就那么大。
就像下面这样,大范围就看不到建筑物的形状,只有放大到街道这种小范围才能看到建筑物轮廓,也只有这样才能提取其中的信息。
不管是遥感卫星影像底图还是矢量底图都是这样,这是由栅格瓦片的特性以及动态地图技术特点决定的,也很符合直觉。
使用 QGIS 我们可以获得下面这种图像,既有大范围,又有更高的细节(地图级别),基本上把整个苏州市中心城区的建筑物都囊括进去了。
还可以下载大范围、高清晰度的各种在线卫星底图服务的影像,比如大面积的哨兵2影像,但国外的服务器一般都很烂,不可能是电信、移动的问题,毕竟国外水深火热吃不起饭,服务器差点可以理解。
所以经常下着下着,有的地方就缺一块,最后下载的结果就变成了这样,下载了一晚上难道就重新下载嘛,我这篇文章分享一个神奇的方法,当然不是上梯子这类方法(违法警告,有好果子吃)。
所以这篇文章可以在以下几个方面给出一点建议:
使用 QGIS 下载大范围的、高清晰度(瓦片等级)的天地图影像;
解决下载过程中出现的部分区域瓦片缺失的情况,适用于其他任何在线影像服务,比如下载高清晰度的去云哨兵2影像。
1.在 QGIS 中加载天地图
这是老生常谈的问题,我也不想重复说了,再说就不礼貌了。
简单过一下吧:
在天地图的网站注册个人账号;
在天地图网站开通个人开发者权限,可以获得 key;
在 QGIS 中添加 XYZ 服务链接,末尾输入你的 key。
详细的可以看看 《QGIS如何添加天地图》 这篇文章,蛮清楚的。
反正最后用这个链接添加到 QGIS 的 XYZ 服务即可:
天地图矢量底图
https://t7.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=您的Key
天地图卫星影像底图
https://t6.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=您的Key
2.使用 QGIS 下载影像
2.1什么是QGIS,如何下载
QGIS 是开源的免费 GIS 桌面软件,拥有最活跃的开源 GIS 社区。
它的使用和界面逻辑基本和 ArcMap 一样,有一定 ArcGIS 使用经验的朋友能很快上手,同时易于安装,邦邦点可以了。
就算不了解 QGIS 也不用担心,因为我们只会使用不到 0.01%的功能。
官网下载地址:https://www.qgis.org/en/site/
2.2下载底图
2.2.1 打开导出窗口
把需要的底图加载进来,比如我们前面提到的天地图矢量,添加进来后,在内容列表鼠标右击图层,选择 Export->Save As,开启栅格导出窗口。
2.2.2导出设置
这里的设置非常重要,直接决定我们能不能导出高等级的瓦片底图。
取消勾选 Create VRT;
设置保存路径,记得加上 .tif 的后缀;
设置导出范围,第一个默认的是全图的范围,第二个可使用特定图层的范围,第三个是当前画布范围:
什么是当前画布范围?如下图橙色框,就是浏览界面的范围,所以这是比较常用的选项,不过你需要提前导航到项目区。
这里是关键点哦,空间分辨率的设置,这里的单位和上面的参考系是相关的,如果是地理坐标系,那么这里的单位就是经纬度的“°”,如果是投影坐标那么单位就是米或者 feet,部分投影的单位是 feet,我们一般都是米。
这里我们使用1米x1米的空间分辨率,然后就慢慢等待吧,以这种空间分辨率下载的影像就会带有建筑物哦。
该方法首次参考于锐多宝的地理空间在知乎上分享的一篇文,翻了半天找不到了。
3.解决瓦片丢失的问题
瓦片丢失这种情况一般存在于网络不好的情况下,或者服务器在国外的在线影像服务。
3.1一般在线影像服务的解决办法
以哨兵2的在线服务举例,我是加载的这家公司提供的全球去云处理的哨兵2影像,这里有链接。
尽管在 QGIS 中可以下载,但是由于服务器在国外,可能会出现瓦片丢失的情况,下载的影像可能会这样,就算再下载一次,只是变成其他地方缺一块。
3.1.1 解决步骤1
瓦片缺失的原因一般是网络请求超时,我们可以试着把等待时间设置长一些。
点击最上方菜单栏中的 Setting->Options,打开设置窗口,在 Network 栏中,我们可以把请求时间改长,缓存大小改大。
3.1.1 解决步骤2
增加网络请求的等待时间有一定的效果,但效果一般般嘛,这里只有祭出大招了:重复下载!
没错,是重复下载,但这不是简单的重复下载,而是在上一次的基础上重新下载。
如何操作呢,当你第一次下载好以后,发现有缺失的瓦片,请不要在QGIS移动窗口he缩放,直接重复导出,一样的设置一样的空间分辨率,只有名称不一样。
这样的话,第二次下载的时候,进度条开始会涨的飞快,它会自动读取到先前下载好的缓存,然后查漏补缺去下载缺失的瓦片。
并且这样耗时也很短,除非你空白的地方实在太多了,但也比完全重新下载快很多。
我也不知道为什么会这样,但这样确实有效。
就像下面一样,重复两次得到了经过处理、完整的哨兵2去云影像。
3.2 天地图的解决方法
天地图一般不会出现瓦片丢死的问题,就算有些地方是空白的,你可以使用这种方式去尝试,不一定会有效果,因为可能是其他原因,这是我也不清楚的。
比如下面苏州市区的下面总是缺一块,建议把窗口移动到下面后,下载底图后镶嵌拼接。
需要注意哈,如果你想要提取建筑物轮廓的话,空间分辨率1米不太够哦,再大点会好些。
因为天气这么热,点个赞吧多点赞,可能会中奖哦