检测表面的灰度级

时间:2015-02-25 09:00:52

标签: python python-2.7 opencv colors grayscale

我正在寻找一个想法/概念来解决我的问题。

如果表面的颜色不超过某个灰度,我需要检查。所以我想计算它的亮度。

问题是colors像这样#BCB0F5会给我一个可接受的灰度级,但表面的颜色看起来不应该是人眼的蓝色。它必须(对于人类的眼睛)看起来像某个灰度级(黑色和白色)。

如何解决此问题? 谢谢你的任何提示。

1 个答案:

答案 0 :(得分:0)

在感性的颜色模型中,我们可以谈论特定颜色的亮度和色度(它的“亮度”和它的“质量”)。通过将您拥有的样本从RGB转换为CIELAB(通过ColorPy说),您可以过滤掉比您想要的灰色(L_sample> L_grey更亮的颜色)白点大于JND(例如sqrt(a_sample**2 + b_sample**2) > 2.3