我正在从包含灰度.png图像的数据集中读取python中的图像。
img_1.png已经是一个灰度图像。
img=cv2.imread('img_1.png')
print(img.shape)在读取图像时,img.shape显示了3个通道。
(16, 16, 3)然而,它是一个灰度图像,所以它应该只有宽度和高度。
(16, 16)我在MATLAB中也读过同样的灰度图像,它只显示宽度和高度。
但是在python中读取rgb图像并将其转换为灰度并不显示3个通道。为甚麽会这样?
gray_img=cv2.imread('rgb_1.png',cv2.IMREAD_GRAYSCALE)
print(gray_img.shape)产出:
(1050, 1400)在python中读取灰度图像和转换为灰度的图像的输出是否相同?有什么关系?
我想看那些灰度图像而不显示频道。
发布于 2022-07-04 11:02:46
cv.imread总是将所有内容转换为BGR,除非您告诉它不要这样做。使用cv.IMREAD_UNCHANGED标志进行此操作。
将维度数错误为颜色维度的大小。
(h,w)是二维的,它等价于(h,w,1),其中颜色维数为1.
(h,w,3)是三维的(元组的长度为3),而最后一个位置的3表示颜色维度的长度为3(用于三种颜色)。
https://stackoverflow.com/questions/72854714
复制相似问题