Thermal Erosion

Applies a thermal erosion effect on a static noise.

The principle of the thermal erosion is to reduce the slopes in images. It simulates the erosion of a terrain: when there is a high point in a terrain, the effect of gravity will tend to move matter from higher points to lower points, thus reducing the slopes. In the case of pictures, for each pixel, if it is a lot higher than its neighbors, a quantity of the pixel value is transferred to the neighbors according to the height difference.

To obtain good results, a high number of iterations is required. However, this effect requires a lot of computation time, and it increases with the number of iteration. That’s why it is not suited for real-time applications, but still can be used during loading times.

Node inputs/outputs

The post-process parameters are:

  • Neighborhood: the pixels which will be considered when computing height difference ; either Moore (all surrounding pixels), Von Neumann (pixels at cardinal points) or Rotated Von Neuman (pixels at the corners) ; the Von Neuman neighborhoods are twice faster than the Moore neighborhood.
  • Threshold: the minimum height difference to trigger the transfer of height
  • TransferPercentage: the percentage of the height difference that will be transferred from the higher pixel to the lower pixel during an iteration, between 0 and 1 (and usually 0.5)
  • Iterations: the total number of iterations of the thermal erosion process
  • Module: the static module that will be processed

The output value is a Static Module.


Thermal erosion applied on a rasterized Checkerboard