Surface roughness using the plugin Directionality

Greetings everyone

I would like first to thank you all for your many contributions to image analysis.

I am currently trying to use the plugin (Directionality) on ImageJ, to measure surface integrity or what may be called surface roughness. However, I am facing some issues understanding if the results that I am getting actually represent what I am trying to achieve.

I have managed to extract and insulate the ROI to be only a black line (with many curvatures) on a white background. The curvature or (the so many angulations) of the line, represents its roughness.

So my question is, would using the plugin (Directionality) be a representative of the surface roughness I am trying to achieve. I have attached a photo that might elaborate more.

Any help would be really appreciated
Thank you


So… as far as using this awesome plugin by @tinevez… it depends on how you want to define ‘roughness’. If it’s related to directionality - then perhaps it could be helpful.

I think @haesleinhuepf had some nice advice on this same topic in this older thread:

Perhaps you can narrow down or more-clearly-define (mathematically) what it is you want to measure… # of peaks across that surface? height of the peaks? varied direction of the peaks? etc. Think about the question you are trying to answer in your experiment and what measures will be most insightful.


1 Like

First of all, thank you very much for the response.

In regards to answering exactly what I would like to get from the plugin that would represent (surface reghneess).
While reading through the plugin’s explanation on ImageJ page I found that there are two main results, among others, that would probably reflect what roughness is.

Which are:
1-Dispersion (º): which reports the standered deviation of the indicated directions.
2-Goodness: reports the goodness of the fit; 1 is good, 0 is bad

Since the plugin looks to indicate the amount of structures in a given direction, represented in a result Histogram, where Images with completely isotropic content are expected to give a flat histogram, whereas images in which there is a preferred orientation are expected to give a histogram with a peak at that orientation

Meaning a sample like that I have posted, which has many angles that represent changes in direction. So what I have done to see (what would be considered isotropic) is it a flat line? Or an unangulated (smooth) line. Is the proplem with curveture or angulations.

So I drew a line representing how would the picture posted be if it has no angles just so smooth.

And the results was good it appears that the Dispersion and goodness react to the smoothness of the line regardless of its shape either flat or curved.

With all of that being said, I still do not exactly understand how the plugin gets the oriantation what makes a negative or positive degree. What are the differences between the two main choices the plugin provides

Local gradient orientation. And
Fourier components analysis

I am so sorry for the very long response. And hope it makes sense.


how about running morphological opening and closing operations to obtain a “smooth” shoreline?
Once you have a “smooth” shoreline, you could calculate the ratio between it’s length (or area) and the length (area) of the original shoreline as a measure of “roughness”?


Hello mario

Thank you for the reply. It seems like an interesting idea to try.

I will be using MorphoLibJ and will let you know what I find.


1 Like

There should be a “Roughness Calculator” plugin in the Plugins tab. If not you can download it from the ImageJ/Fiji site on the web.


I have seen that plugin before however did see some comments about how it is not used often since it is from 2002. Nevertheless, the way it functions make sense, It calculates the highest peak and lowest valley and gives arithmetic means which reflects the roughness.

However I am currently leaning towards using the Directionality plugin

The good thing I found with the Directionality plugin is that the results it provides (dispersion and goodness) are simple, reflect roughness and easier for the reader to follow.

Thank you for your response
I will keep you guys posted on how it goes.

1 Like

Hello again,
Yes, the plugin is old (but only to you young folks) but it works very well, you really try it before commiting to the Directionality plugin. It also is a good plugin but not the best for what you wish to accomplish.