10

У меня есть отсканированные изображения в формате * .jpg. Они сканируются с использованием сканера А4, в оттенках серого или в цвете. Отсканированные страницы имеют очень разные размеры - некоторые A5, некоторые A6, некоторые визитные карточки и т.д. Крышка сканера белая.

Я хочу обрезать все белые границы, используя imagemagick или graphicsmagick (эти инструменты, потому что я хочу для дальнейшей пакетной обработки). Я понимаю, что граница отсканирована, поэтому не идеально белая, и это иногда может привести к обрезке слишком много или слишком мало изображения. Однако, используя параметр обрезки с fuzz, я всегда получаю слишком большое изображение. Например, используя изображение визитной карточки ниже:

gm.exe convert -crop -fuzz 50% 01-pixelated.jpg 01-pixelated-gm.jpg

производит изображение, которое все еще не вырезано справа и снизу. Результат один и тот же, независимо от того, какое число я добавлю в параметр -fuzz.

Не могли бы вы проверить это и посоветовать командную строку, которая будет делать эту работу?

1 ответ1

8

В ImageMagick попробуйте эту команду:

convert input.jpg -fuzz 80% -trim +repage output.jpg

Я протестировал его с помощью ImageMagick 6.4.4 Q16 и, исходя из изображения, которое вы связали, я получил следующее изображение:

выход

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .