OCR: Как найти правильный ColorMatrix для определения новых цветов? - PullRequest
2 голосов
/ 17 февраля 2009

Я застрял прямо сейчас с определением размера каждой линии. Список, который я хочу почистить, содержит различные цвета, и что меня беспокоит больше всего:

Example

Как вы видите картинку, которую я пытаюсь проанализировать, получился белый фон с зеленым текстом. Фон выделения серый с черным текстом. И каждая вторая строка имеет немного более серый фон, но мне удалось изменить контраст с помощью ColorMatrix.

Просто для справки, у меня есть некоторые другие ColorMatrizes, такие как Greyscale, Negative, SetContrast, SetBrightness и т. Д.

Мой метод, который ищет строки, хорошо работает с большей частью изображения, но выбор тормозит.

Так что теперь я застрял и не знаю, что делать. Я гуглил в течение часа, но не нашел решения.


Я подумал, что, возможно, я смогу преобразовать серый фон из выделения в белый, не влияя на текст и не выбрасывая остальную часть изображения в оттенках серого. Но я не могу найти ColorMatrix, который делает эту работу.

Знаете ли вы одно или получили лучшее решение?

1 Ответ

1 голос
/ 19 августа 2012

Зачем вообще использовать цветовую матрицу?

Это работает (по крайней мере, для вашего конкретного примера) намного проще с операцией -threshold ImageMagick:

 convert                                              \
    http://img18.imageshack.us/img18/210/lobbymd9.jpg \
   -threshold 50%                                     \
    result.jpg

Визуальный результат:

Original => Thresholded 50%

У порогового значения в основном остаются только 2 значения (ноль или максимум) для каждого цвета. Каждое значение ниже порогового значения устанавливается равным 0, значения выше порогового значения устанавливаются равным 255 (или 65535 при работе на глубине 16 бит). Конечный эффект - чистый черный + белый рисунок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...