最“稳定”的颜色表示:RGB? HSV? CIELAB?
computer-vision
opencv
6
0

在计算机科学中,有几种颜色表示形式:标准RGB,还有HSV,HSL,CIE XYZ,YCC,CIELAB,CIELUV等。在我看来,大多数情况下,这些表示形式都试图逼近人类的视觉(颜色感知上相同的应具有相似的表示形式)

但是我想知道的是,在图片上哪种表示形式最“稳定”。我有一个物体,比如说一瓶可乐,我有成千上万个瓶子的照片,这些照片是在非常不同的情况下拍摄的(主要区别是图像的亮或暗程度不同,但方向不同。 )

我的问题是:哪种颜色表示会凭经验为我提供最稳定的瓶子颜色表示?标签的“红色”颜色不应有太大差异。好吧,我知道它会有所不同,但是我想知道最“稳定”的表示形式。

我被告知HSV在这些方面比RGB更好,但是我对其余的一切一无所知。


编辑(技术细节):我要注意瓶子的特定位置。我在这一点的一千张照片中选择了相应的像素。我现在有很多点,这取决于表示形式。我想要最小化云的“大小”的表示形式,例如最小化云的点到其重心的平均距离的表示。

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

我不知道能满足您需求的色彩空间,但是我有一些建议:

RGB与显示器上显示颜色的方式非常匹配。就近似人类感知而言,它是最差的色彩空间之一。

至于其他色彩空间:有些人试图确保在视觉上彼此靠近的颜色在色彩空间中也彼此靠近。其他人也试图确保颜色上在感知上相似的差异也会在色空间中产生相似的差异,而不管您在色空间中的位置如何。

第一种意味着,如果您认为蓝色A和蓝色B之间的颜色差异类似于蓝色A和蓝色C之间的颜色差异,那么在色空间中,蓝色A和蓝色B之间的距离将类似于蓝色A和蓝色C之间的距离,并且它们三者在色域中将彼此靠近。我认为这被称为感知平滑色彩空间。 CIE XYZ就是一个例子。

第二个含义是,如果您认为蓝色A和蓝色B之间的颜色差异类似于红色A和红色B之间的颜色差异,那么在色空间中,蓝色A和蓝色B之间的距离将类似于红色之间的差异A和红色B。这被称为感知上统一的色彩空间。 CIE Lab就是一个例子。


[edit 2011-07-29]关于您的问题:HSV,HSL,CIE XYZ,YCC,CIELAB,CIELUV,YUV中的任何一种都以某种方式将照明与颜色信息分开,所以这些是更好的选择。它们对照明的变化具有一定的抵抗力,但是当色温急剧变化或使用了彩色光时,不会为您提供帮助。 XYZ和YUV在计算上要比RGB便宜(这是大多数相机给您的),但是比HSV,HSL或CIELAB(后者通常被认为是最好的之一,但它也是其中之一)的“好”要少。最困难的)。

根据您要搜索的内容,您可以校准图像的色彩平衡 。例如:假设您匹配可口可乐徽标:您知道徽标中的字母始终为白色。因此,如果它们不在您的图像中,则可以使用它们必须校正的颜色,从而为您提供有关其他颜色的信息。

收藏
评论

我们对事物颜色的感知主要取决于其色彩;像HSV这样的色彩空间会给出代表色相的单个值,因此效果最好。

但是,眼睛是一种非凡的仪器,仅知道单个点的颜色是不够的。如果整个场景的颜色是黄色或蓝色,则眼睛会补偿您的感觉,并且您的颜色会变得更纯正-橙色的可乐瓶看起来会比它更红。黑暗与光明也是如此。如果可能,您应该在获取颜色样本之前尝试对图像进行补偿。

收藏
评论

您可能想查看http://www.cs.harvard.edu/~sjg/papers/cspace.pdf ,它提出了一个显然旨在解决这个精确问题的新色彩空间。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号