小工具更新,影像底图下载器V1.0.1
- 2026-10-12 04:55:45
🚀
影像底图下载器 更新说明
下载提速 · 并发可调 · 修复拼接错乱与空洞
GIS 茶馆 · 工具更新合集
💡 这次更新围绕一个字:快。下载并发从写死的 8 提到 32,还能自己调;顺手修了三个隐蔽问题——批量下载时部分瓦片失败率偏高、先后下载两个图源拼出来的图一半是这个源一半是那个源,以及个别瓦片没下成功、出图后出现黑色空洞。全部用实测数据说话。
下载提速:并发 8 → 32,还能自己调
以前批量下载的并发数是写死的 8,瓦片虽小但每张都要等网络往返,8 个连接跑满约 12~13 张/秒。本次改成可配置,默认 20,在 设置 → 下载性能 → 下载并发里选:

🔹 还有一处冷启动优化
下载线程改为专用线程立即启动。以前用公共线程池,点「开始下载」的前几秒连接一个个慢慢开、实际并发跑不满;现在一点下去 20 个并发同时开跑,开头不再拖。
提速效果:同样约 2,700 张瓦片的任务,从最初约 4 分钟缩短到约 2~2.5 分钟。
修复:部分瓦片失败率偏高(重试没换节点)
排查中发现一个隐蔽问题:实际下载时曾出现 360 张里失败 99 张的情况。
修复后,同一代理源并发 20 时失败率接近 0,实测约 20~25 张/秒。之前失败的瓦片直接重跑任务即可补取(勾着「保留瓦片缓存」,已下的不重复下载)。
修复:换图源后拼接出「半张半张」
有用户反馈:先下载 ArcGIS 影像、再下载高德影像(同名同目录、勾着保留缓存),拼出来的图一半是 ArcGIS 影像、一半是高德影像。
原因在任务缓存目录。旧逻辑缓存只按文件名存放、不含图源标识:
旧:...\影像底图_tiles\
新:...\影像底图_tiles\图源指纹\
切到高德后,相同位置的旧瓦片被误判为「缓存命中」直接跳过;而高德是火星坐标、与 ArcGIS 的 WGS84 瓦片范围有错位,只有边缘瓦片重新下载——拼出来就是新旧混杂。
现在缓存目录按图源指纹(图源名 + 地址 + 授权参数 + 坐标系生成)独立存放:同一图源重跑照常命中缓存、秒过;换图源自动用独立目录,不可能再串。
⚠️ 两点提醒:① 更新后第一次跑任务会完整重下一遍(旧缓存布局不再被识别),之后重跑才正常走缓存;② 旧格式直接堆在 _tiles 目录下的瓦片已成残留,确认不需要后可手动删除,腾出空间。
修复:出图后局部出现黑色空洞
有用户反馈:下载进度看着正常,打开 tif 却发现零星几块黑色空洞。对目标区域 253 张瓦片逐一实测:232 张正常,21 张超时(该图源服务端过载),没有 404、也没有真瓦片被误删。问题出在流程上——超时瓦片重试耗尽后不在缓存里,而旧程序不管有没有失败瓦片都直接拼接,缺失位置只能是黑块,用户出图后才发现。
🔹 现在怎么处理
✅ 下载末尾自动「修复轮」:主下载结束后,程序自动检查所有应下载瓦片,把缓存里还缺的用低并发、慢节奏再补取两轮,状态栏的失败数会实时往下掉——绝大部分空洞在出图前就已悄悄补好,不需要用户操心。
✅ 图源限流参数调优:对并发敏感的图源(如无偏移谷歌源)把并发上限从 16 压到 8、重试等待加长,实测超时率明显下降而总速度不变。
⚠️ 万一图源持续限流、修复轮后仍有瓦片没取到,程序会明确弹窗给出三个选择:重试补取(已下瓦片走缓存、只补缺的)、继续拼接(接受空洞出图)、取消任务——不再像以前那样闷头拼出一张带洞的图。之前带空洞的 tif,重跑同一任务即可补齐。
下载弹窗加宽,状态文字不再换行
对下载弹窗进行一些调整,下载参数窗口整体加宽(420 → 500),底部状态栏的下载进度、缓存命中、速度等信息一行完整显示,不再折成两行看不全,解决文字被压住问题。
选了 20 级却没影像?自动降到能出图的层级
同一个图源,城区能下到 20 级,偏远山区可能 18 级以上就根本没有真影像——服务器这时候不是报错,而是返回一张灰色的「暂无数据」占位图,或者直接 404。旧版不管有没有,按你选的层级硬下,拼出来就是一片黑灰,还以为是软件坏了。
🔹 现在点「开始下载」后会先做一次层级体检
① 取选区四角 + 中心共 5 个点的当前层级瓦片,只要有 1 张是真影像,就按所选层级正常下载;
② 5 张全是空占位图或 404,说明这个区域在这一级确实没影像,自动降一级继续探测,直到找到真实有影像的层级;
③ 降级时弹窗说明情况,例如:「所选区域在 20 级没有影像,此图源在当地实际最高只到 18 级,将自动改用 18 级下载」,确认后才开始,实际下载层级也会写进完成提示。
⚠️ 两个细节:探测时如果是网络超时(分不清是没影像还是网络卡),程序不降级、不阻拦,按你选的层级正常下载并走失败重试;选区刚好横跨「有图 / 无图」边界时也不降级,保住有数据的那部分。
📌 实测 ArcGIS 影像的 20 级在中国区全部是占位灰图(连北京城区也没有),已把该源的可选上限封到 19 级;Wayback 历史影像在西部偏远地区 19 级也可能没有,自动降级会同样兜底。
影像坐标系精简:只保留 WGS84 原生输出
下载参数里原本有「影像坐标系」选项,下载后可自动投影成 CGCS2000 3 度带(自动)。实际使用中这个自动转换的成果会出现影像歪斜、边缘黑边;部分电脑还会因为系统缺少地理变换文件,转换直接报错。
本次直接移除该选项,下载成果统一为 WGS84(Web Mercator / EPSG:3857)——这正是在线瓦片的原生格网,拼完即所得、不做二次投影重采样,清晰度零损失、也不会再有黑边。
🔹 在 ArcMap 里怎么用
✅ 直接叠加显示:把数据框坐标系设成你的工程坐标系(如 CGCS2000 3 度带),ArcMap 会自动配准显示影像,不需要影像本身换投影。
✅ 确需投影坐标系的正式成果:用 ArcToolbox「投影栅格」(数据管理工具 → 投影和变换 → 栅格),重采样选双线性(BILINEAR)、背景值设为 NoData,即可得到无黑边的投影成果,效果优于程序自动转换。
图源怎么选最快?实测数据在这
速度不只是并发的事,图源本身差别很大。对常用几个源做了持续负载实测(并发取各源最佳值):
🔹 一句话选择建议
① z19 及以下、要快又不偏移 → 用「谷歌影像(无偏移)」(22~28 张/秒)或「ArcGIS 影像」
② 必须 z20、要速度 → 用「谷歌影像」代理(火星坐标已纠偏,20~25 张/秒)
③ 必须 z20 且坐标绝对无偏移 → 用「无偏移·20级备用」,约 2 张/秒,慢但干净
更新一览
① 下载并发写死 8 → 默认 20、可自行调整(8~32),设置持久化
② 下载线程冷启动即跑满并发,开头不再拖
③ 修复批量下载重试不换节点,失败后真正切换
④ 剔除被限速的慢节点,谷歌代理固定用稳定节点
⑤ 修复换图源后缓存串源、拼接半张半张,缓存按图源指纹隔离
⑥ 修复出图后黑色空洞:下载末尾自动低并发补取缺失瓦片,失败数实时回收
⑦ 敏感图源并发上限调优;补取后仍失败时弹窗三选一(重试 / 继续 / 取消)
⑧ 下载弹窗加宽,状态信息一行显示
⑨ 图源扩充:「谷歌影像(无偏移)」换成更快的镜像(22~28 张/秒、z≤19),并加回「无偏移·20级备用」源(z20、坐标干净、慢),内置图源共 16 个
⑩ 新增下载前层级体检:探测选区四角 + 中心,所选层级当地无影像时自动降级并弹窗说明,不再下出一片黑灰
⑪ ArcGIS 影像层级上限修正为 19(20 级中国区实测全是占位灰图);历史影像在西部偏远地区 19 级无数据时由层级体检自动兜底
⑫ 移除 CGCS2000 自动投影,成果统一输出 WGS84(Web Mercator 3857)原生坐标系,杜绝投影歪斜与黑边;需要投影成果可用 ArcToolbox 投影栅格
⑬ 设置界面调整:「下载性能」独立为左侧单独导航页;并发可选范围统一为 8~32
📦 获取最新版
公众号后台回复关键词:
底图下载器
解压即用,不需要安装;已激活用户授权状态保持不变
🔑 激活说明
浏览地图、导入导出矢量、改设置均不限制,仅点「开始下载」时需激活一次。打开激活窗口,复制机器码发到「GIS 茶馆」公众号后台即可获取激活码;换机器需重新获取。
GIS 茶馆 · 让 ArcMap 更好用一点
关注公众号,获取最新工具与激活码