为做 1:1 欧洲地图,他训了个地形超分模型 TerrainSR|Show HN

做历史游戏的人大概都撞过同一堵墙:想要一张 1:1 比例尺的欧洲地形,可手里的数据怎么都不对劲。100m 分辨率的地形数据太糙,放大到城市级就糊成一团;10m 的 LIDAR 数据倒是精细,却要占几百 GB 存储,而且里面全是矿井、建筑这类人造物——游戏要的是「人类干预之前的欧洲」,不是带着矿山和楼房去还原。

TerrainSR 就是被这个具体困境逼出来的。作者 joegibbs 在 Hacker News 上把这个模型挂在 Hugging Face 公开,思路很直接:只拿未开发的原始地貌做训练,让模型在低分辨率的高程数据上快速补出合理的侵蚀痕迹、岩石纹理之类的高频细节,相当于把低清高度图「脑补」回人类开发之前的样子。

这东西有意思的地方在第二层。有评论者问:同一个低分辨率种子能不能产出不同版本的地图?因为「宏观地图」往往是手工搭好的,得先保住玩法平衡,又想让每个局都带点随机感——如果超分结果能加个随机种子,那每次进游戏生成的地形不完全一样,成本几乎为零。作者回应说,除了输入图像,确实可以传一个 seed 值,不传的话默认是确定性的输出。他还贴了一张直接用纯噪点(而不是卫星数据)喂进去的效果样图,说效果也还不错。

这么说吧,这不光是个地形数据增强工具,随手塞一张噪声图进去也能当生成器玩。对做地图的人来讲,你可以先手工画个低清的宏观骨架,再让模型把细节随机补上,设计意图保住了,逐块手搓山脊和河谷的时间也省了。

当然,这还只是个模型在公开讨论里露头,8 个点、两条评论,属于典型的早期 Show HN。但技术栈和动机都很有代表性:一个单点问题(想做大尺度地形)碰上了数据的三重尴尬(太糙、太大、太脏),最后靠一个针对性训练的小模型绕过去。至于它能不能直接接进主流引擎、跑多快、泛化到其他地区表现如何,暂时没有更多细节公开。

感兴趣的人可以自己上 Hugging Face 跑一把。作者在评论区给的纯噪点测试图也值得点开看看,比起读参数,那张图更能说明这个模型到底在干什么。

相关链接:
- Hacker News 讨论:https://news.ycombinator.com/item?id=49986740
- 模型主页:https://huggingface.co/joe-gibbs/terrainsr
- 纯噪点测试样图:https://jgibbs.dev/assets/terrainsr-noise.png