Использование ImageMagick для удаления всех цветов, кроме черного на изображении?
ситуация такова: у меня много изображений документов от сканирования. Я хочу сохранить основное содержимое документа, которое печатается черным цветом (небольшой диапазон цветов вокруг #000000). Но, знаете, документы всегда пестрят красками: штемпель, фон, украшения, логотипы...так далее.
Я просто хочу сохранить только тексты, которые были напечатаны в черном цвете.
Я пробовал с ImageMagick и эта команда так далеко:
convert X.png -matte (+clone -fuzz 20% -transparent "#000000") -compose DstOut -composite X1.png
но результат был не таким, как ожидалось, текст был очень поврежден, что я не могу прочитать. Кто-то предложил мне увеличить пушок до 70%:
convert X.png -matte (+clone -fuzz 70% -transparent "#000000") -compose DstOut -composite X1.png
затем текст казался более читаемым,но другие цвета тоже оставались.
можете ли вы показать мне лучшее решение для моей ситуации? Каждое предложение будет высоко оценено!
3 ответов
в матче все цвета, кроме черного можно использовать +opaque "#000000"
.
для того, чтобы включить маленький круг вокруг #000000 вы можете попробовать различные проценты с fuzz
оператор:
convert input.png -fill white -fuzz 10% +opaque "#000000" result.png
протестировано с ImageMagick 6.6.0-1 на Windows
я наткнулся на этот вопрос, ища ответ на этот вопрос. Я нашел пару сообщений на форуме imagemagick, которые помогли. Вот что я придумал:
convert input.gif -matte \( +clone -fuzz 1 -transparent black \) -compose DstOut -composite ~/Desktop/output.png
сообщение на форуме: ImageMagick: удаление всех, кроме одного цвета
вы должны попробовать уровень:
convert test.png -level 25%,75% test_level.png