这个亮度函数是什么

What's this brightness function

图像的亮度可以通过下面提到的paper函数来测量

在本文中,他们没有谈论Cr、Cg和Cb。谁能解释一下这个功能?

提前致谢。

  • Cr:红色通道
  • Cg:绿色通道
  • Cb:蓝色通道

系数(0.241,0.691,0.068)用于计算luminance

例如:

如果您有彩色 (RGB) 图像并且想要转换为灰度:

    1. 您将从图像中提取每个通道
    1. 灰度 = (0.2126 * Cr) + (0.7152 * Cg) + (0.0722 * Cb)

这些系数由 ITU-BT709 推荐并且是 HDTV 的标准。

因此,对于计算亮度,可接受的系数为 0.241、0.691 和 0.068。

您可以打印亮度值:

import cv2
import numpy as np

# img will be BGR image
img = cv2.imread("samurgut3.jpeg")
#When we square the values overflow will occur if we have uint8 type
img = np.float64(img)
# Extract each channel
Cr = img[:, :, 2]
Cg = img[:, :, 1]
Cb = img[:, :, 0]

# Get width and height
Width = img.shape[0]
Height = img.shape[1]
#I don't think so about the height and width will not be here
brightness = np.sqrt((0.241 * (Cr**2)) + (0.691 * (Cg**2)) + (0.068 * (Cb**2))) / (Width * Height)
#We convert float64 to uint8
brightness =np.uint8(np.absolute(brightness))

print(brightness)

输出:

[[4.42336257e-05 4.09825832e-05 4.09825832e-05 ... 3.44907525e-05
  4.13226678e-05 4.13226678e-05]
 [4.09825832e-05 4.09825832e-05 4.09825832e-05 ... 3.44907525e-05
  4.13226678e-05 4.13226678e-05]