Как преобразовать фотографию в черно-белое изображение с помощью ImageMagick?


14

Как я могу преобразовать фотографию JPEG в черно-белое (не в градациях серого) изображение, как на выходе сканера факса, с помощью ImageMagick?



Не требуется ImageMagick: superuser.com/questions/75373/…
Сиро Сантилли,

Ответы:


11

Согласно этому сообщению на форуме :

Однако, если вы хотите использовать только два цвета (черный и белый), вам нужно пороговое значение. Например, чтобы выбрать цвет, где вверху будет белый, а внизу черный.

convert <input> -threshold xx% <output>

где хх находится в диапазоне 0-100 (для процентов).


8

Дизеринг более четкий и похожий на факс, чем пороговое ограничение:

convert <input> -monochrome <output>

Для менее контрастного, но более сохраняющего информацию вида размывания используйте:

convert <input> -remap pattern:gray50 <output>

(Документы)


1
Обратите внимание, что если выходные данные выглядят низкокачественными, вам может потребоваться установить более высокую плотность с помощью флага -density 150(значение 150 - это число точек на дюйм)
Дэвид Фрейзер

4

Согласно этому ответу здесь :

Если у вас установлен imagemagick:

только истинная градация серого:

convert source.jpg -colorspace Grey destination.jpg

правда черный и белый:

convert source.jpg -monochrome destination.jpg

разделить на серые каналы:

convert source.jpg -separate destination.jpg


0

Я считаю, что pamthreshold Netpbm является гораздо более быстрым и гибким решением.

Для файлов TIFF я делаю

 $ tifftopnm test.tiff | pamthreshold | pamtotiff > bitonal.tiff

Для файлов JPEG вы можете сделать

$ jpegtopnm test.jpeg | pamthreshold | pamtotiff > bitonal.tiff

Pamthreshold довольно мощный (посмотрите на его man-страницу).

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.