Я хочу выполнить пакетную обработку изображений, но у меня есть очень специфическая задача, которую я хочу выполнить
Я делал это в Photoshop, но он не сохранял папки и содержимое подпапок, он просто выбрасывал каждый преобразованный файл в одном каталоге.
Моя единственная надежда - это Linux: D
Заранее благодарю!
Вы можете увидеть различные дискуссии об этом здесь, но Башарат Сиал работал на меня
- монохромный - опция, если вы хотите двоичный черно-белый (1 бит на пиксель).
Он использует некоторое умное дизеринг и генерирует очень видимый результат:
convert -monochrome in.png out.png
До :
После:
Чтобы поддерживать структуру каталогов, вам нужно будет выполнить сценарий в соответствии с , упомянутым Башаратом .
Мы можем использовать команду convert
для преобразования изображений в черно-белое изображение. белый:
convert -colorspace GRAY image.png b-w_image.png
Где image.png
- входное изображение, а b-w_image.png
- выходное изображение.
Комбинируя эту команду с find
, мы можем создать bash one liner для преобразования всех изображений, найденных в родительском каталоге.
Как:
Открыть терминал, нажав Ctrl kbd> + Alt kbd> + T kbd>, cd
перейдите в родительский / основной каталог и выполните следующую команду:
for img in $(find . -iname '*.png'); do echo -n "Converting $img"; convert -colorspace GRAY $img $img && echo ' [Done]'; done
Он преобразует и перезаписывает все изображения в родительском каталоге. Я предлагаю протестировать его на некоторых временных изображениях, и если вы удовлетворены результатами, чем запускать его на реальных изображениях.