【问题标题】:48bit RGB single pixel value48bit RGB 单像素值
【发布时间】:2019-02-28 01:31:32
【问题描述】:

在某些图像处理应用程序中,3 RGB 值用单个值表示。

例如:RGB(2758, 5541, 4055) 的单一值是 4542.64

关于如何从 8 位 RGB 图像获取单个像素值存在一些问题,但没有一个适用于 48 位 RGB 图像。我怎样才能获得该值?

如果我这样做 (2758 + 5541 + 4055) / 3,则结果是 4118 接近但不一样。

【问题讨论】:

  • 您是使用System.Drawing 还是System.Windows.Media.Imaging 命名空间类来打开图像?
  • 打开图片没问题,我想用1个唯一值代表x像素的3个值(RGB)。

标签: vb.net rgb


【解决方案1】:

您似乎正在尝试确定用于得出该给定值的灰度公式。我建议你阅读 Tanner Helland 的 Seven grayscale conversion algorithms

根据您的示例:

RGB(2758, 5541, 4055) 的单一值是 4542.64

似乎使用以下公式计算值:

灰色 = (红色 * 0.3 + 绿色 * 0.59 + 蓝色 * 0.11)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-08
    • 2014-03-14
    • 2015-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多