gpt4 book ai didi

python - Imagemagick 魔杖使用深度不像命令行那样工作

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:15:44 25 4
gpt4 key购买 nike

所以我曾经像这样在 bash 脚本中直接运行 imagemagick:

/usr/local/bin/convert image.jpg -resize 1000x1000\! -depth 2 result.jpg

result.jpg

所以我决定使用 wand 将我的脚本转换为 python!

from wand.image import Image
...
with Image(file=f) as img:
img.transform(resize='1000x1000!')
img.depth = 2
img.save(filename='result_py.jpg')
f.close()
...

result_py.jpg

我注意到如果我从 bash 脚本中删除“-depth 2”,结果图像将与 python 的结果完全一样,那么我在 python 程序中缺少什么?为什么 python 中的深度选项不起作用?

最佳答案

对于 Python 的 wand 库,您想使用 wand.image.Image.quantize 方法,并将颜色减少到 4(黑/白 + 2 种颜色)。

from wand.image import Image
...
with Image(file=f) as img:
img.transform(resize='1000x1000!')
img.quantize(4, # Number of colors
'gray', # Colorspace
0, # Tree depth
False, # Dither
False) # Measure Error
img.save(filename='result_py.jpg')
f.close()
...

quantize down to 4

我相信 quantize 方法是在版本 0.4.2 中添加的。另请注意,wand 目前支持 ImageMagick-6,因此您的系统可能同时安装了 6 和 7。

关于python - Imagemagick 魔杖使用深度不像命令行那样工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52249114/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com