记录webp图像转gif(python webp格式转换)

2022-10-28 09:35:51

最近在转换webp图像为gif格式的时候遇到一些坑,避免以后再踩遂记录一下。

1.转换方法

        转换方法很简单,主要是利用python的pillow包,转存一下就可以了。但是我这样做遇到了一些问题。(PS:如果不加save_all=True,则只会保存gif的第一帧图,即gif不会动)

from PIL import Image

def webp2gif(webp_path, gif_path, mode='gif'):
    webp = Image.open(webp_path)
    webp.save(gif_path, mode, save_all=True)

2.遇到的坑

1.pillow报错无法识别图像格式

已经确认安装了pillow,并且通过以下代码确认了包含webp支持,但还是报错。

from PIL import features

print(features.check_module('webp')) # 期待输出True

解决:

        1)pillow版本的问题,建议更新到最新版的pillow;

        2)还有就是conda的锅,如果使用的conda安装的pillow,就可能遇到这个问题。解决办法是先用conda卸载掉pillow,再通过pip安装pillow。

2.代码不会报错,能够转换成功,但是转换后的gif图像无法读取

解决办法出处

简单点说就是在save方法里加个参数  background=0 :

# 转换后无法读取
webp.save(gif_path, mode, save_all=True)

# 解决办法
webp.save(gif_path, mode, save_all=True, background=0)
  • 作者:alongname
  • 原文链接:https://blog.csdn.net/alongname/article/details/124613790
    更新时间:2022-10-28 09:35:51