Can anyone here explain to me what the "tol" parameter in the watershed algorithm implemented in the BioConductor package EBImage (and lidR) does?

I find the explanation in the EBImage help difficult to understand:

The minimum height of the object in the units of image intensity between its highest point (seed) and the point where it contacts another object (checked for every contact pixel). If the height is smaller than the tolerance, the object will be combined with one of its neighbors, which is the highest.

Shouldn't it be: if the height is higher than the tolerance, it will be combined with its neighbor?


Ok, after thinking 3 hours I think I have understood the purpose of the "tolerance" parameter.

Let's assume we are in a forestry setting and are investigating the canopy height model of a forest. The algorithm might identify several basins within one crown (plausible especially for large deciduous trees). If the identified "basins" are just small bumps in the crown, they will be joined to the largest neighboring "real" crown if the height difference between their seed and border is too small. Hence, the tolerance parameter filters and joins small objects to other objects.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.