我在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
答案 0 :(得分:0)
修改强>
对此答案的评论是正确的 - 最好的方法是使用image.gif[0]
。
原始答案
尺寸会一次又一次地重复,因为动画gif有多个框架。当我注意到每个gif的尺寸重复了不同的次数时,我想通了。
我改变了'%w%h'到'%w%h;'并使用split来隔离第一帧。
dimensions = dimensions.decode("utf-8").split(';') #375 500