Comparing the color composition of images

I’m analysing images of plants infected with Albugo sp. and I would really like to compare the color composition of the different treatments, to give an estimate of leaf quality (like how much of the leaf is green vs. red).
Is it possible to get a measure like area of red, green and blue of an image? I’ve tried the “Color Profiler”, but I don’t really understand the results table (what are the units of “mean”, “p95%”, “p5%” and what do they mean??).
So if you know a tool for this job, I would really appreciate it!

Best regards

If you have a sample image that would be helpful. You could try this:

  • Image > Adjust > Color Threshold... (select RGB as the color space if that is what your image is)
  • Process > Make Binary
  • Analyze > Analyze particles
    This will give you the size of each binary blob.

Another strategy you could use is to select an area and then measure the intensity of each channel within that area.

Here’s an example of the images I’m scoring. As can be seen from this picture, some of the leaves are very green, while others are rather redish. I would like to measure the proportion of red, green and blue or something similar.

1 Like

Cool! I played around with the image for a second in ImageJ and recorded these actions to show you what I did.
After opening the image I did the following to create regions of interest around each of the leaves. It’s not perfect but it’s close enough:

run("Duplicate...", " ");
setAutoThreshold("Otsu dark");
run("Convert to Mask");
run("Fill Holes");
run("Duplicate...", " ");
run("Analyze Particles...", "display clear include summarize add in_situ");

Then I transferred the ROI back to the original image and measured each channel:

run("RGB Stack");
run("From ROI Manager");

When you create the RGB stack you have to scroll to each of the channels to measure it. This appends the measurements to the results window, so you have to split those up.

This won’t give you an area of green vs red, but it does give you mean intensity of each of the channels for each ROI (each leaf). This might be useful.

Sorry if this wasn’t totally clear. I have attached the tif of the leaves with the ROI on them. If you open it in imageJ it should overlay the ROI.

leaf_with_roi.tif (9.4 MB)

Have you had a look at Trainable WEKA Segmentation? It will give you the data you want for all three channels as I notice that the Blue channel has some influence in the yellow channel as well.
Just a suggestion.