0

我想使用 RGB 值的值来使用一系列颜色

假设理想条件下黑色的 rbg 是 rgb(0,0,0) 但是当我扫描任何图像时。它的颜色范围从 0 到 51 不等,如 rgb(31,31,31),rgb(49,49,49) ETC

我需要使用颜色范围来满足条件

if(r=0 to 51 && g=0 to 51 && b=0 to 51) 条件执行

另一件事,所有三个值,即 rgb 应该具有相似的值,例如:-rgb(0,0,0) rgb(31,31,31)etc 以便组合颜色类似于黑色

有道理?

我使用 PHP

4

2 回答 2

0

你不能只是对这些值进行一些比较以确定它们是否属于 RGB 的黑色光谱吗?如:

$rgb = array("R" => 0, "G" => 0, "B" => 0);
if($rgb->R >= 0 && $rgb->R <= 51 && $rgb->G >= 0 && $rgb->G <= 51 && $rgb->B >= 0 && $rgb->B <= 51) {
    // RGB value is in black spectrum
}
于 2012-11-07T12:37:13.187 回答
0

您可以先将 RGB 颜色转换为 HSL,使用 HSL 您可以比较颜色的色相、饱和度和亮度。

比较两种颜色的色调,得到所有颜色,例如蓝色(ish)。在这种情况下,黑色和白色有点特殊,您可以测试黑色/白色的极端亮度(接近 0% 或接近 100%),或灰色的低饱和度(接近 0%)。

于 2012-11-07T11:59:26.250 回答