Rendered at 17:29:47 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
TGower 54 minutes ago [-]
Really cool! I did my master's thesis on this same problem, upscaling low resolution DEM, though my approach used a high resolution color image to guide the process.
pugworthy 18 hours ago [-]
Really neat idea - would have loved to have this 15-20 years ago!
I'm curious how it does for non-Earth data. Mars terrain for example.
Since Mars doesn't have the water-based erosion in areas it was trained on, it loses a lot of the sharper cliffs and adds gullies in places that would be smooth sand on Mars. It would probably be pretty easy to train a new model though that could handle it.
pugworthy 17 hours ago [-]
Ages ago I was working on a Mars-based game idea and at the time the terrain res data wasn't great. This kind of concept really would have been a game changer (as it were).
dvt 3 days ago [-]
On my phone but very interested in this (hence leaving a comment so I can find it later). What’s the variation, can we generate different maps from the same low res seed?
I’m interested in this because “macro maps” can be hand built in a way that may want to preserve gameplay balance while individual games can still feel broadly unique.
joegibbs 3 days ago [-]
Thank you! Yes as well as the input image you can pass in a seed value (otherwise the result is deterministic). I hadn't tried it with pure noise rather than satellite data but it does pretty well: https://jgibbs.dev/assets/terrainsr-noise.png
jauntywundrkind 20 hours ago [-]
can you talk to some about how you trained this? this is such a neat idea!!
joegibbs 18 hours ago [-]
Mostly through trial and error really, I started off getting a bunch of 100m and 10m satellite data then tried a few different methods. First I tried a bunch of ways to do it as a GAN, but there were too many artifacts and it lacked detail every time. Then I did a diffusion model that worked but took minutes to run, then kept distilling it down from 64 steps to 1 step, which looked basically the same as 64 but was fast. All in all it was about $100 to train.
I'm curious how it does for non-Earth data. Mars terrain for example.
https://jgibbs.dev/assets/jezero_steepest.png
https://jgibbs.dev/assets/jezero_delta.png
Since Mars doesn't have the water-based erosion in areas it was trained on, it loses a lot of the sharper cliffs and adds gullies in places that would be smooth sand on Mars. It would probably be pretty easy to train a new model though that could handle it.
I’m interested in this because “macro maps” can be hand built in a way that may want to preserve gameplay balance while individual games can still feel broadly unique.