0

I am working on Java code that performs shaded-relief rendering. Although I have had some success, sometimes the surface I am rendering has an unrealistic, plastic-like appearance. Does anyone know of a good technique or algorithm for reducing this effect?

I've written up a webpage describing my algorithms at Elevation Data Shaded-Relief Techniques . If you have ideas on how to improve them, I welcome your suggestions.

Although I am working with terrestrial elevation data, I think this is really more of a problem in graphics and rendering rather than anything to do with Geographic Information Systems. Perhaps there is a good way to add a texture that matches the lighting on the surface?

I've attached a picture showing the effect. Not surprisingly, it is influenced by the quality of the data collection. The picture below is rendered from elevation data over an unpopulated area in the Arizona Desert.

enter image description here

When the data collection is better, the effect is reduced but not completely eliminated. The image below shows the difference (both images are taken at the same scale).

enter image description here

Gary Lucas
  • 426
  • 2
  • 6
  • from my point of view you just have wrong color scale (too bright) and shading is OK. You are computing the color from altitude? I usually use both altitude and slope ... – Spektre Feb 17 '22 at 06:49
  • The color comes from the Natural Earth Data set. The source color data is given in pastels which are then darkened based on illumination models. The original color data for Arizona was a little greener than it ought to have been, but on the whole, Natural Earth is excellent. Part II of the article I posted talks about color. It didn't occur to me to modify color based on slope (other than shading it). I'll have to think about that idea. Any suggestions on how I would implement it? – Gary Lucas Feb 17 '22 at 13:34
  • [Slope and Altitude affects biome](https://stackoverflow.com/a/36647622/2521214) so based on altitude you can assume what kind of trees are there lower means brighter green higher meens dark (ever)green, high slopes means gray rocky surface and or snow if high altitudes... – Spektre Feb 17 '22 at 14:10
  • What reflectance model do you use ? Is there a specular component ? Is the surface somehow smoothed ? –  Feb 17 '22 at 15:14
  • I use a diffuse lightning model based on lambertian reflectance. I do not model specular components. My data is a Digital Elevation Model that comes from the U.S. Geological Survey 3DEP program and I'm pretty sure it's based on a combination of SRTM and Lidar data. I suspect the Arizona sample has a less dense survey and depends a lot on interpolation. That might be the source of some of the apparent smoothness. My math is nothing special, but I describe it at https://gwlucastrig.github.io/GridfourDocs/notes/ElevationGeoTiff1.html#shaded-relief-algorithm – Gary Lucas Feb 17 '22 at 16:07
  • Spektre -- Thanks for the link to Slope and Altitude. Very interesting results. – Gary Lucas Feb 17 '22 at 16:16

0 Answers0