【发布时间】:2019-04-09 07:51:04
【问题描述】:
我目前正在尝试使用以下方法将一批图像转换为灰度:
convert "*.jpg" -set colorspace Gray -separate -average "*.jpg"
现在我正在处理几百张图片。当我运行命令时,我得到了所有图像的副本,但实际上只有第一个被转换为灰度。任何人都知道问题可能是什么?此外,如果有人有更好的方法一次处理大量图像(最终我需要转换数千张),我将不胜感激。
谢谢!
【问题讨论】:
-
我相信您需要遍历图像,然后一次做一个。您需要指出您正在使用的 shell,因为这会影响编写循环的正确语法。
-
在 ImageMagick 中,输出不能使用通配符 (*)。输入允许使用通配符。因此,您要么必须对列表或目录中的每个文件使用 for 循环,要么使用 mogrify 而不是转换。 Mogrify 会自动循环遍历目录中的每个文件。见imagemagick.org/Usage/basics/#mogrify
标签: image image-processing imagemagick grayscale