Python PIL 转换为 RGBA 时图像质量会变差

问题描述 投票:0回答:1

我正在使用 PIL 处理图像。当我打开一些图像并将其转换为 RGBA 时,它们会完全恶化。

此类图像的一个示例如下:

转换后我得到以下信息:

我运行以下代码。

from PIL import Image

img = Image.open("input_image.png")
img_rgba = img.convert("RGBA")
img_rgba.save("output_image.png")

我希望输出图像看起来像输入图像。

python python-imaging-library rgba
1个回答
0
投票

您的原始图像是 16 位灰度图像。如果打印图像,您可以看到:

im = Image.open(...)
print(im)

您会看到它处于 I 模式,即 32 位,因为这是 PIL 用于 16 位图像的模式。

<PIL.PngImagePlugin.PngImageFile image mode=I size=502x1180>

您还可以使用

exiftool
看到这一点,如果您运行:

exiftool YOURIMAGE

当您将其转换为 RGBA 模式时,PIL 会将其转换为 RGBA8888 - 即 4 个通道,每个通道 8 位,并且您会丢失数据。

© www.soinside.com 2019 - 2024. All rights reserved.