【发布时间】:2018-05-02 18:58:55
【问题描述】:
我正在用 java 设计一个程序,用于比较图片中的像素及其 RGB 值。例如,我有一列像素,我想为每个像素分配一个值,并根据比例对每个像素进行排名。
示例比例:
深绿色=500 > 浅绿色=400 > 黄色=300 > 浅红色=200 > 深红色=100
当像素是浅绿色和深绿色之间的颜色时,我希望能够获得/打印这些值以及介于两者之间的所有内容,例如获得 430 之类的值。我努力寻找一种可以让我比较这些颜色的方法。
【问题讨论】:
-
你的问题是......?
-
如果您使用 RGB 值,则平均颜色是 R、G 和 B 值的平均值。请参阅:stackoverflow.com/questions/25878029/… 的实现,其中 P 的值设置为 0.5
-
您似乎只想按色调值对颜色进行排序。尽管如此,当它们的饱和度或值发生变化时,您将不会得到好的结果。比较颜色通常是一个无法解决的话题。您可能还想看看 delta e2000 算法。
-
@Compass: 移位 R+10, G-10 与 R-10, G+10 提供非常不同的 tint,同时保持平均值。