Как выполнить пакетную обработку изображений, чтобы разделить и собрать их по вертикали?
У меня 6000 картин с двумя горизонтальными полосами текста, одна сверху, другая снизу.
Цель состоит в том, чтобы вырезать верхнюю панель и поместить ее под нижнюю строку текста. Как бы я сделал это в пакетном процессе? Я знаю, что XnView может разрезать изображения пополам и обрезать их в пакетном процессе, но хитрость заключается в том, чтобы соединить их вместе в пакетном режиме.
Мой вход показан слева; желаемый результат показан справа:
РЕДАКТИРОВАТЬ: Я, честно говоря, сбит с толку, что вы бы описали это как "слишком широкий". Я старался придерживаться общих правил, потому что КАЖДЫЙ РАЗ я упоминаю о программе, вы прыгаете мне на шею и кричите о слишком конкретном, "спрашивая мнение об одной программе против другой", поэтому, возможно, вы, люди, должны решить, хотите ли вы услышать об отдельных программы или нет.
Я попробовал использовать PaintShop Pro от Corel, чтобы вырезать ОДНО изображение, но мне не хватает времени, чтобы сделать это для более чем 6000 изображений.
Затем я попробовал XnView, но в нем есть только функция обрезки, а не функция "стежка назад вместе".
Если вы просто не понимаете, о чем я прошу, скажите, пожалуйста.
1 ответ
Microsoft Windows [Версия 10.0.17134.706]
Скачать Imagemagick для Windows
REM MOVE A ROW 32 PIXELS TALL STARTING FROM 0,0 TO THE BOTTOM USING ROLL
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%USERPROFILE% \Desktop\IQ1Xi.jpg" -roll +0-32 "%USERPROFILE%\Desktop\IQ1Xi2.jpg"
REM BRING THE TEXT CLOSER TOGETHER BY MAKING TWO CROPS OF IQ1Xi2.jpg AND -APPEND THEM
REM CROP 1
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%USERPROFILE%\Desktop\IQ1Xi2.jpg" -crop 352x204+0+0 "%USERPROFILE%\Desktop\IQ1Xi3.jpg"
REM CROP 2
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%USERPROFILE%\Desktop\IQ1Xi2.jpg" -gravity South -crop 352x24+0+0 "%USERPROFILE%\Desktop\IQ1Xi4.jpg"
REM FINISHED IMAGE USING -APPEND
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%USERPROFILE%\Desktop\IQ1Xi3.jpg" "%USERPROFILE%\Desktop\IQ1Xi4.jpg" -append "%USERPROFILE%\Desktop\IQ1Xi5.jpg"
ОРИГИНАЛЬНОЕ ИЗОБРАЖЕНИЕ:
РУЛОННОЕ ИЗОБРАЖЕНИЕ:
ПРИНЯТЬ ТЕКСТ БЛИЖЕ ВМЕСТЕ, СДЕЛАЯ ДВА КРУГА ИЗ КАТУШКОГО ИЗОБРАЖЕНИЯ И - ПРИНЯТЬ ИХ.
УРОЖАЙТЕ ОДИН:
УРОЖАЙ ДВА:
Законченное изображение:
Больше информации:
https://www.imagemagick.org/script/command-line-options.php
https://www.imagemagick.org/script/command-line-options.php
https://www.imagemagick.org/script/command-line-options.php
https://www.imagemagick.org/script/command-line-options.php
Пакетный файл для обработки всех изображений:
Обработка.jpg (ролл, обрезка и добавление) может ухудшить их, поэтому лучше начинать с перезаписи. Скопируйте все ваши изображения в "%USERPROFILE%\Desktop\ Новая папка \"
@echo off
SETLOCAL ENABLEEXTENSIONS
cd "%USERPROFILE%\Desktop\New folder\"
md "%USERPROFILE%\Desktop\New folder\processed\"
for /f "tokens=*" %%x in ('dir /b "%USERPROFILE%\desktop\new folder\*.jpg"') do (
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%%x" -roll +0-32 "%TEMP%\1.jpg"
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%TEMP%\1.jpg" -crop 352x204+0+0 "%TEMP%\2.jpg"
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%TEMP%\1.jpg" -gravity South -crop 352x24+0+0 "%TEMP%\3.jpg"
"%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%TEMP%\2.jpg" "%TEMP%\3.jpg" -append "%USERPROFILE%\Desktop\New folder\processed\%%x"
)
exit /b