【问题标题】:PIL not always using 3 channels for PNGPIL 并不总是对 PNG 使用 3 个通道
【发布时间】:2019-12-25 04:11:41
【问题描述】:

我有一些图像保存到 PNG,不幸的是,由于编码,它们总是不是 3 通道(这似乎是 LodePNG 的一部分)。

当使用 PIL 时,我将加载图像,大多数将是 (256,256,3),但没有太多颜色信息的最终是 (256,256)(据我所知,这是 LodePNG 的东西)。由于我的大多数图像都有 3 个通道,因此我更愿意这样做。但是做img.convert('RGB') 并不能完成任务。

有没有办法强制 PIL 打开一个具有 3 个通道的 png 图像?

注意:我可以通过预览打开图像,并通过查看检查器查看它们缺少第三个通道。这些文件也用 lodePNG 保存。

【问题讨论】:

    标签: python image python-imaging-library channels


    【解决方案1】:

    是的。

    from PIL import Image
    im = Image.open("image.png").convert('RGB')
    

    我后来做了更好的解释here

    【讨论】:

    • 我不得不说我有点震惊,这行得通。为什么这与im = Image.open("image.png"); im = im.convert('RGB') 不同?因为这就是我之前所做的,并且切换到单行我绝对没有问题了。
    猜你喜欢
    • 1970-01-01
    • 2018-10-19
    • 1970-01-01
    • 2019-07-07
    • 1970-01-01
    • 2020-12-25
    • 1970-01-01
    • 2011-11-19
    • 1970-01-01
    相关资源
    最近更新 更多