NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
▲Show HN: TerrainSR – fast, realistic heightmap upscaling model (huggingface.co)
TGower 6 hours 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 24 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.

joegibbs 22 hours ago [-]
Thank you! Not very well:

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.

pugworthy 22 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 1 days ago [-]
can you talk to some about how you trained this? this is such a neat idea!!
joegibbs 23 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.
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 22:47:10 GMT+0000 (Coordinated Universal Time) with Vercel.