Looking for a way to measure the oxdiation colours of copper



Hello ImageJ-People :slight_smile:

if got photos of different oxidised copper and im looking for a way to measure the oxidation-colours to create a oxidation ranking for copper.

Right now i use the Plugin "RGB Measure Macro" and get these rgb results (see the screenshot at the end of the post). I could use the mean-Value of Red, Green and Blue from the plugin and predefine a min-max-range for each Oxidation-level:

For example: For Oxidation-Level 0 the mean-colour-values have to be inbetween:
Red 200-210, Green 130-140, Blue 110-120

For Oxidation-Level 1 the mean-colour-values have to be in between:
Red 120-130, Green 80-90, Blue 70-80

and so on…

Do you have hints for a better plugin to use or a better way to create measurable oxidation-colour-levels?

Thank you :slight_smile:


I think this is a complicated problem.
I would make an image that has the various types of material and then analyse it with the Color Inspector 3D plugin.
You will see that there isn’t a single colour but a range of values and they are not equally distant. A problem would be how to calibrate the “types” to colour ranges according to…?



Hello Fabi123,
Since the spectrums are different for all the images, you could use the ratios of the colors = color level per channel/ total color level. Just a thought.


Sorry, accidently hit the button.
This would allow for varying lighting levels in most cases.


Thanks for your suggestions, i will try them :slight_smile: i get more photos the next weeks, lets see if find a good solution with your hints


O.K. Fabi 123,
I look forward to it.


I tried the 3D inspector plugin, its good for a color shift overview between the different photos. But i need more numeric values.
I tried the plugin “color histogramm”. It was quite useful to detect a trend of the color shifts of the different oxidation levels.

Are there any other plugins for numeric/statistic color analysis?


Good day,

to me the task isn’t really defined and maybe it isn’t for you too.

a way to measure the oxidation-colours to create a oxidation ranking for copper

What does that mean?

But i need more numeric values.

What for?

You want to get a quantitative relation between the colour and what exactly?

I fear that if we give you values for the colours you won’t be happy. Why?

In the image above you show colour histograms and they come with statistical measures, i.e. descriptive parameters. Obviously, these numerical parameters are not what your looking for. Why?

Please re-think your task and answer all of the above questions.




Hi Herbie,
i was looking for some ImageJ Plugin recommendations for color-analysis here in the forum and my research task is a bit complicated to explane so i didnt want to make to the posts here to lengthy .
Here is it in more detail. My research task is to find it out, if there is way to classify copper oxidation photos with ImageJ. I oxidize copper with different laser beam settings, right now i only varify the power in six steps p=600W, p=500W, … p=100W, so i got this six oxidation images. Later i will weld small copper rods together with laser-beam-welding and examine how the oxidation level of the copper rods effects the welding-quality. So in the end my target is, that i can say: “This oxidation level leads to this weld-quality and the oxidation can be qualified through a microskop-photo-analysis of the oxidation color.”
I can set the oxidation-levels myself, so i thought of the RGB-Levels, with the plugin “RGB-Measure” or “Color Histogramm”. If the Red-, Green- and Blue-Values of the oxidation-photo are in a specific range, the oxidation is for exmaple level 3 of 6.
There will be more levels at the end, im just starting to varify the laser-parameters for more different copper oxidation.
Thank you for you interest and help :slight_smile:


Sorry but you didn’t answer most of my questions.

Are “oxidation levels” defined by other means than colour?

What are “RGB-Levels”?




The structure of the oxdidated copper surfaces are also different, but i think the colors are the best way to classify the different oxidations with ImageJ-Plugins. So right now the oxidation-levels are only defined by colour.
With self-defined Oxidation-RGB-Levels or RGB-Ranges i mean, you analyse a oxidation-photo with the RGB-Measure-plugin and can classify it, by the red-, green-, blue-mean-values which you get from the plugin. For example:
Oxidation Level 0:
The measured Mean-Red-Value has to be in between: 200-210
Mean-Green has to be in between: 130-140
Mean-Blue has to be in between: 110-120

Oxidation level 6:
Mean-Red has to be in between: 80-90
Mean-Green has to be in between: 100-110
Mean-Blue has to be in between: 70-80

But I’m not sure yet how to set the red-, blue-, green-ranges for each oxidation level. I have to make more smaller oxidation-steps with the laser like p=600, p=550, p=500, p=450 etc and measure them with RGB-Measure-Plugin and the Color-Histogramm-Plugin and compare the Mean-Values.
Perhaps there are better Plugins to get information of the colours to define those oxiddation-color-levels.


Here you write:

But i need more numeric values.

Then you have the mean numbers (they are given below the histograms you showed).

Now you define intervals for the otherwise undefined oxidation levels.

Do you say that the mean values are sufficient?
If yes, I don’t understand why you need “more numeric values”.

Your argumentation appears a bit circular — no?

Finally you tell us:

But I’m not sure yet how to set the red-, blue-, green-ranges for each oxidation level.

Don’t you think that this is somehow confusing?

If this

oxidation-levels are only defined by colour.

is true, then my question

You want to get a quantitative relation between the colour and what exactly?

can’t be answered and I fear that the whole project is ill-posed.




The ImageJ-based oxidation-level-analysis is a squishy topic in my master-thesis. Im not sure how to handle it. I hope i find a way to manage it or to convince my supervisor to leave it behind, so i can focus on other experiments.


If you want to relate colour to oxidation then of course you need to define oxidation by other means than colour. As long as you can’t, you can’t find a relation.

If you define oxidation by the applied laser power, then you must guarantee that the colour is uniquely related to the laser power which I doubt, because oxidation depends on other parameters as well: surrounding medium, humidity, etc.

If however, you are convinced that colour, as you measure it, is related to the laser power, then I think you’ve all you need to do what you want.

Good luck



Hello fabi123,
There is a very good macro in the macro download site named “RGB Profile plot” which will give you the spectrum information you need. Use the macro, it also gives you a listing of the values which you can mathematically manipulate as you wish. Sounds like a great project! I’m very interested in your research results. Good Luck.


Don’t give up! Read down farther.



RGB alone can’t provide spectral information, at least if you can’t provide a lot of additional information. We had this discussion already. But actually the OP doesn’t need spectral information …




Our discussion Doesn’t mean you are correct. You are not!


I couldnt find the Plugin “RGB Profile Plot” on the plugin download page, but it is preinstalled in imageJ. But when i start it there only comes a error message. Do you know what the error message means? Otherwise i could make a new post, about the error message, perhaps someone knows the problem with the plugin.


Here ya go,
RGB%20Profiles-1 RGB%20Profiles-2 RGB%20Profiles-3 RGB%20Profiles-4
These are in order from top to bottom of the samples you sent earlier.
I’ll send you the macro.