How can I get the RGB values of colors at the SAME value even in different environments?

1 view (last 30 days)
I can get an image RGB values, but the values change when I take the same picture in a different environment.
As you know it should not change, each color has a single RGB value and these values are independent of the environment.
How can i provide it in matlab? * | | Please explain with a sample code||*
Thank you.

Answers (2)

John D'Errico
John D'Errico on 14 Oct 2017
NO. I don't know that it should not change. The RGB that you observe in a picture as taken is not something that is immutable, a property of the object. That is something you misunderstand.
Consider a red ball. What color is it? Red? What if you remove the light source? Not red anymore. In fact, color does not exist without light.
What if you take a picture of a red ball, but using a predominantly red or green illuminant? A UV illuminant?
Reflected color is not a fundamental property of an object, but what you observe from an object under illumination. Change the illuminant, and the color changes, as it must. So you cannot talk about the color of an object in a way that is independent of environment.
Worse, then you add in the concept of RGB, which adds the camera itself into the equation.

Image Analyst
Image Analyst on 14 Oct 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!