【问题标题】:Calculate contrast of a color image(RGB)计算彩色图像的对比度(RGB)
【发布时间】:2019-02-05 06:07:07
【问题描述】:

在黑白图像中,我们可以通过(白色像素的总数量-黑色像素的总数量)轻松计算对比度。
如何计算彩色(RGB)图像?
任何想法将不胜感激?

【问题讨论】:

  • 这个问题可能是题外话,因为它不是关于特定的代码问题。
  • 亮像素总数 - 暗像素总数。
  • 转换为灰色

标签: image image-processing colors contrast


【解决方案1】:

您可以使用灰度图像的标准偏差作为对比度的度量。这称为“RMS 对比度”。详情请见https://en.wikipedia.org/wiki/Contrast_(vision)#RMS_contrast

【讨论】:

    【解决方案2】:

    对比度定义为图像的最高和最低强度值之间的差异。所以你可以很容易地从各自的直方图中计算出来。

    示例:如果您有一张纯白色图像,则最低和最高值都是 255,因此对比度为 255-255=0。如果您的图像只有黑色 (0) 和白色 (255),则对比度为 255,这是可能的最高值。

    如果您计算每个像素的发光度(从而将图像转换为灰度),则可以将相同的方法应用于彩色图像。将图像转换为灰度有多种不同的方法,您可以选择自己喜欢的一种。

    为了使该方法更加复杂,建议忽略一定百分比的像素以解释异常值(否则单个白色和黑色像素会导致“完全对比度”,而不管所有其他像素)。如@Yves Daoust 所述,另一种方法是考虑暗像素和亮像素的数量。这种方法有一个缺陷,即必须设置一个任意阈值来确定哪些像素算作暗/亮(通常为 127)。

    【讨论】:

      【解决方案3】:

      这没有一个单一的答案。我能想到的一个想法是分别对红色、绿色和蓝色这三个通道中的每一个进行操作。计算每个通道的直方图并对其进行操作。

      一个简单的谷歌搜索产生了许多相关的算法,我使用的其中之一是均方根(像素强度的标准偏差)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-10
        • 2015-09-26
        • 1970-01-01
        • 1970-01-01
        • 2011-06-05
        • 2011-02-24
        相关资源
        最近更新 更多