gpt4 book ai didi

bash - ImageMagick 可以从一个输入生成多个输出吗?

转载 作者:行者123 更新时间:2023-12-02 15:47:14 25 4
gpt4 key购买 nike

我从命令行运行它:

magick.exe input.png -shave '1x0' output_%d.png
magick.exe input.png -shave '2x0' output_%d.png
magick.exe input.png -shave '3x0' output_%d.png
magick.exe input.png -shave '4x0' output_%d.png
magick.exe input.png -shave '5x0' output_%d.png
magick.exe input.png -shave '0x1' output_%d.png
magick.exe input.png -shave '0x2' output_%d.png
magick.exe input.png -shave '0x3' output_%d.png
magick.exe input.png -shave '0x4' output_%d.png
magick.exe input.png -shave '0x5' output_%d.png

第一个命令创建 output_0.png 但以下命令会覆盖同一个文件。 是否有一个命令可以将 output_0.png 生成为 output_9.png

The ImageMagick documentation说:

Filename References

Optionally, use an embedded formatting character to write a sequentialimage list. Suppose our output filename is image-%d.jpg and our imagelist includes 3 images. You can expect these images files to bewritten:

image-0.jpg 
image-1.jpg
image-2.jpg

这是我发现可以在 ImageMagick 中完成我正在寻找的事情的最接近的证据。我不清楚我是否需​​要利用 shell 脚本来执行此操作,或者 ImageMagick 是否提供命令行功能。

最佳答案

使用 ImageMagick,您可以在单个命令中对输入图像的不同实例运行多个操作,方法是克隆输入并将操作隔离在括号内,如下所示...

magick input.png \
\( -clone 0 -shave '1x0' \) \
\( -clone 0 -shave '2x0' \) \
\( -clone 0 -shave '3x0' \) \
\( -clone 0 -shave '4x0' \) \
\( -clone 0 -shave '5x0' \) \
\( -clone 0 -shave '0x1' \) \
\( -clone 0 -shave '0x2' \) \
\( -clone 0 -shave '0x3' \) \
\( -clone 0 -shave '0x4' \) \
\( -clone 0 -shave '0x5' \) \
-delete 0 output_%02d.png

这将创建 10 个输出图像,每个图像都有一个连续的文件名,其中数字填充到两个位置,例如“output_00.png ... output_10.png”。

要将其转换为 Windows CMD 语法,您可以删除所有转义括号的反斜杠,并将续行反斜杠“\”替换为脱字符“^”。

编辑添加:有许多方法可以使用 ImageMagick 完成此任务。这是另一个会产生相同结果的示例命令,但它使用 FX 表达式,因此它只能在 IMv7 中工作。 (通过将“magick”更改为“convert”,上述命令应该适用于 IMv6。)

magick input.png -duplicate 9 -shave "%[fx:t<5?t+1:0]x%[fx:t>4?t-4:0]" output_%02d.png

这会读取输入并将其复制 9 次,然后使用 FX 表达式作为 -shave 操作的参数,这样它就可以遍历所有 10 张图像,根据 FX 表达式中的公式对每张图像进行剃须.

关于bash - ImageMagick 可以从一个输入生成多个输出吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73708237/

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