TopoUSM

Ambient shader for Digital Elevation Models

14 July 2018: QGIS Plugin version is almost coming! See demo.

2017: Reference code available in Python 3








Enabling both improved shading and enhanced visualization









Hillshade vs TopoUSM.










Slope vs TopoUSM. Works fine on LatLon grid.








How it works

  • Each pixel represents residual z-value from the "unsharped" terrain.


  • Ridges get highlighted while valleys and basins get darkened, as such illuminated by ambient light.


  • Logarithmic dynamic range compression may be applied to reduce the whitening of cones.
  • Adjusting r (radius) enables you to control which features in different scales to be enhanced.


  • In the larger r, sparse sampling may be used to improve the processing speed.


  • Composite of TopoUSM layers in optimal balance is visually scalable. Hard to get saturated by microtopography when it is zoomed-out.

Application to 3D models







AW3D30 DSM (JAXA) in BlenderGIS with TopoUSM textures


References of the data used in the pictures:

All rights reserved for these pictures.