如何在保留文件夹结构的同时将图像批量转换为黑白

Lev*_*van 6 convert imagemagick batch 13.04

我想批量处理图像,但我有一个非常具体的任务要做

  1. 我不想更改图像类型
  2. 我想把它们变成黑白的
  3. 我希望它创建/保留图像和子文件夹结构

我在 Photoshop 中做了这个,但它没有保留文件夹和子文件夹内容,它只是将每个转换后的文件放在一个目录中。

我唯一的希望是 Linux :D

先感谢您!

你可以在这里看到不同的讨论,但 Basharat Sial 为我工作

http://ubuntuforums.org/showthread.php?t=2143992

Bas*_*lvi 13

我们可以使用convert命令将图像转换为黑白:

convert -colorspace GRAY image.png b-w_image.png
Run Code Online (Sandbox Code Playgroud)

image.png输入图像在哪里,输出图像在哪里b-w_image.png

结合这个命令,find我们可以创建一个 bash one liner 来转换在父目录下找到的所有图像。

操作方法:
通过点击Ctrl+ Alt+打开终端Tcd到父/主目录并运行以下命令:

for img in $(find . -iname '*.png'); do echo -n "Converting $img"; convert -colorspace GRAY $img $img && echo ' [Done]'; done
Run Code Online (Sandbox Code Playgroud)

它将转换并覆盖父目录下的所有图像。我会建议在一些临时图像上测试它,如果您对结果感到满意,则不要在实际图像上运行它。