如何在Python中更改图像的颜色通道?

时间:2017-01-10 11:57:15

标签: python

这个问题可能应该放在这里的某个地方,但我似乎找不到它。

我有这段代码:

import matplotlib.image as img     

img1 = img.imread('./images_32x32/test_1.png')
print("Shape = ", img1.shape) # Output: 32x32x3

img2 = img.imread('./images_32x32/test_2.png')
print("Shape = ", img2.shape) # Output: 32x32x4

我的问题是img2(img2.shape)的形状我希望它也是3。

如何更改此内容?

1 个答案:

答案 0 :(得分:1)

你的第一个图像是RGB图像(每个像素三个值,红色绿色和蓝色),第二个是RGBA图像(红色,绿色,蓝色和alpha,用于像素的透明度)。

它只是一个numpy数组,你可以切片:

img2_rgb = img2[:, :, :3]

产生没有透明度数据的32x32x3图像。