import cv2
img = cv2.imread('image.jpg', 1)
imread函数将读取图像文件并返回一个NumPy数组,其中包含图像的像素值。对于彩色图像,返回的数组是一个三维数组,包含三个颜色通道(红色、绿色、蓝色)的值。对于灰度图像,返回的数组是一个二维数组,只包含一个通道的值,表示每个像素的亮度。
【注意】如果读取的图像文件不存在或无法打开,则imread函数会返回None。
第一个参数是图像的文件路径
第二个参数取值可以是0,1。用于指定图像的读取方式,如果是0意味着返回的图像是单通道的灰度图像;如果是1表示读取原始的彩色图像,返回的是三通道的RGB图像。
对于彩色图像,每个像素由三个颜色通道的值组成:红色、绿色和蓝色(RGB)。将彩色图像转换为灰度图像时,将这三个通道的值加权平均。这个过程称为灰度化或亮度化。具体而言,将RGB值(R、G、B)转换为灰度值(灰度)的常见公式是:
灰度 = 0.299R + 0.587G + 0.114B
这个公式对红色、绿色和蓝色分量进行加权平均,以反映人眼对不同颜色的感知。使用这个公式,可以将彩色图像中的每个像素转换为一个灰度值。最终,灰度图像中的每个像素都只有一个值,表示该像素在原始彩色图像中的亮度值。