16

jpg のシーケンスを gif に変換しようとするとエラーが発生します。パレットを追加する方法、またはそれが実際の問題であるかどうかを理解できないようです。images2gif.pyメインの numpy 配列を使用して、GIF を読み込むことができました。

import PIL
from PIL import Image
import StringIO
import images2gif

images = []
for frame in animation1.frames:
    img_data = s3manager.get_file_as_string(frame.s3_filename)
    image = Image.open(StringIO.StringIO(img_data))
    images.append(image)

images2gif.writeGif('lala3.gif', images, duration=0.5, dither=0)  

これにより、次のエラーが発生します。

"images2gif.py", line 436, in writeGifToFile
  fp.write(globalPalette)
TypeError: must be string or buffer, not None

これらの jpg のパレットを指定する方法がわかりません。ドキュメンテーションは私には不明確であり、それが問題であるかどうかさえわかりません。ヘルプ?

4

4 に答える 4

1

images2gif.py は、PIL.GifImagePlugin の getheader 関数を使用してパレットを取得します。

何らかの理由で、読み取った画像では機能しません。ソース画像が「P」モードでない場合、スクリプトは実際には機能しない可能性があります。

于 2013-10-03T09:34:28.587 に答える