2017-04-05 8 views
1

私はpython pillowを使って簡単なgif画像を逆にしますが、画像は以前のサイズ(10m)よりも大きくなっています。誰もそれを作る方法を知っていますか? そしてここでは私のコードです:ピローは画像が前よりもサイズが大きくなるようにします

from PIL import Image, ImageSequence 
from PIL import ImagePalette 
with Image.open('sd.gif') as im: 
    if im.is_animated: 
     frames = [f.copy() for f in ImageSequence.Iterator(im)] 
     frames.reverse() 
     frames[0].save('out.gif', save_all=True, append_images = frames[1:]) 
+1

10m&1mの意味がわかりません。あなたはディスク上のサイズを意味しますか? – DrBwts

+0

ええ、何か言葉をすると私は混乱したのですか? – Rezero

答えて

-1

回答が見つかりました。 pillow image size issue

+1

ただリンクを投稿するのではなく、リンクの腐敗の場合、リンクが何を言っているかを要約してください。 – Hugo

0

私は、実際の画像を調べずに確実に伝えることはできませんが、私はおそらく何が起こったのかを推測することができます

一部のGIFは内のピクセルを見つけた方法で最適化されていますフレームごとに何も変化しない(またはわずかしか変化しない)各フレームは、各ピクセルの色を格納する代わりに透明にして、データ量を削減します。多くの連続したフレームで大きな静的領域を持ついくつかのgifでは、これはファイルサイズを縮小する非常に効率的な方法になります。

GIFを元に戻すときは、最初にフレームを最適化してはいけません。そうしないと、データがない透明な領域が表示されます。これはファイルサイズをかなり大きくすることができます。違いは、画像ごとに異なる場合があります。

おそらく、新しい画像が作成された後にgif最適化アルゴリズムを実行することでこれを解決できます。

関連する問題