Разделение слоев фона / переднего плана в отсканированном документе - PullRequest
1 голос
/ 01 декабря 2010

Мне нужно автоматически удалить слегка окрашенный фон отсканированного изображения документа для распознавания текста.

ScanTailor - это приложение с открытым исходным кодом на C ++, основанное на графическом интерфейсе пользователя, которое, помимо прочего, выполняет разделение фона, но я не могу понять, как запустить только последний шаг, который фактически удаляет фон.

В идеале я мог бы найти код, который делает это, и либо:

  1. Перенос этой части на C #
  2. Измените C ++, чтобы он отвечал на выполнение командной строки, выполняя только этот шаг для данного образа

Можете ли вы помочь мне понять, как я могу это сделать?
или вы знаете другие библиотеки, которые могут это сделать? (любой язык / приемлемая платформа)

Ответы [ 2 ]

3 голосов
/ 02 декабря 2010

Вы имеете в виду методы порогового удаления, удаления пятен и удаления шума, которые необходимы в приложениях оптического распознавания символов.

Качество результатов во многом зависит от множества различных факторов -

Качество печатиоригинальное качество сканирования Разрешение изображения Используемые цвета фона и узоры.Шум и другие пометки.

Библиотеку IEvolution.NET можно найти по адресу http://www.hi -components.com / nievolution.asp .Он имеет множество функций обработки изображений, с которыми можно поиграть.

Доступно множество коммерческих движков.Нет единой идеальной функции для решения задач обработки изображений.Вы должны адаптировать функции и параметры в соответствии с вашими изображениями.http://www.recogniform.com/thresholding.htm

AПоиск Google покажет много результатов.

1 голос
/ 01 декабря 2010

Возможно, алгоритм примерно такой:

  • Определите, какой цвет фона
  • Сканируйте растровое изображение на наличие пикселей, цвет которых (и / или в достаточной степени похож на) фонcolor
  • Преобразование этих пикселей в белый или прозрачный
  • Возможно (особенно если страница содержит изображения, а не только текст) игнорировать изолированные пиксели, которые являются цветом фона, но не являются рядом с другими такжефоновые пиксели

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

...