当前位置: 首页 > 工具软件 > Open1X > 使用案例 >

Image.open(x).convert(‘RGB‘)为什么要转换为RGB

秦景福
2023-12-01

Reason:最近在看FADA论文源码,碰到了这句代码,不明白为什么要convert(‘RGB’)

---------------------------------正文如下----------------------------------

使用Image.open读出图像,为什么还需要使用convert(‘RGB’)转换成RGB,难道Image.open()读出的彩色图像不是RGB吗

使用如下代码进行测试:

img = Image.open('pokeman\\bulbasaur\\00000000.png').convert('RGB')
img2 = Image.open('pokeman\\bulbasaur\\00000000.png')
print(img)
print(img2)
print(img.shape)
print(img2.shape)

输出结果:

<PIL.Image.Image image mode=RGB size=900x900 at 0x15D0609AF28>
<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=900x900 at 0x15D08BD6550>
(3, 900, 900)
(4, 900, 900)

可以看到,如果不使用.convert(‘RGB’)进行转换的话,读出来的图像是RGBA四通道的,A通道为透明通道,该对深度学习模型训练来说暂时用不到,因此使用convert(‘RGB’)进行通道转换。

 类似资料: