Imagemagick GIF 尺寸一遍又一遍地重复

Imagemagick GIF Dimensions Repeat Over and Over

我在 Python 脚本中使用 Imagemagick 标识来确定图像的尺寸。在分析动画 GIF 时,尺寸会一次又一次地重复,例如500 375500 375500 375500 375500 375500 375500 375500 375.

为什么会这样?如何将此输出清理成简单的宽度/高度?

产生此结果的 Python 脚本:

#!/usr/bin/env python
import subprocess, logging

# identify -ping -format "%w %h" test.gif
dimensions = subprocess.check_output([
    r'C:\Program Files\ImageMagick-6.9.3-Q16\identify.exe',
    '-ping',
    '-format',
    '%w %h',
    "../www/content/test.gif"
])

# b string to utf-8 string
dimensions = dimensions.decode("utf-8")

logging.warning(dimensions)

并且在日志中输出如下:

WARNING:root:500 375500 375500 375500 375500 375500 375500 375500 375

编辑

对该答案的评论是正确的 - 最好的方法是使用 image.gif[0]

原答案

由于 gif 动画有多个帧,所以尺寸重复了一遍又一遍。当我注意到每个 gif 的尺寸重复不同的次数时,我明白了。

我将“%w %h”更改为“%w %h;”并使用 split 来隔离第一帧。

dimensions = dimensions.decode("utf-8").split(';') #375 500