Преобразование изображения в текст в основном означает извлечение текстовых данных, присутствующих в изображении, в редактируемую форму. Программное обеспечение, которое преобразует изображения в текст, часто называют инструментом OCR - OCR расшифровывается как Optical Character Recognition (оптическое распознавание символов).
Инструменты OCR функционируют, обнаруживая текст темных цветов на светлом фоне, чтобы отличить текст от изображения. Но это еще не все, что входит в серверную часть.
В этом посте мы узнаем секрет преобразования изображения в текст. Мы постараемся охватить все возможные детали этого процесса и детально рассмотреть его «закулисный» механизм.
Итак, не теряя времени, давайте начнем.
Процесс преобразования изображения в текст
Ниже мы поделимся шагами, которые выполняют инструменты OCR для преобразования изображения в машиночитаемый текст.
Предварительная обработка
Предварительная обработка — это та часть, где OCR еще не началось, это просто «подгонка» изображения для извлечения текста.
Чтобы настроить изображение, инструменты OCR улучшают качество изображения, применяя к нему некоторые фильтры. Такие фильтры в основном известны в цифровой обработке изображений как фильтры верхних и нижних частот.
Фильтр верхних частот используется для определения «краев» изображения. Напротив, фильтр низких частот делает прямо противоположное. Фильтр низких частот сглаживает тональные вариации изображения, устраняя любые зашумленные области в пикселях.
Инструменты OCR в основном используют фильтр верхних частот, чтобы подчеркнуть разницу между светлым фоном и темными областями текста.
Но иногда на изображении много шума. Таким образом, инструменты OCR сначала применяют фильтр низких частот к изображению, а затем извлекают текст через фильтр высоких частот.
Приведем пример, который поможет вам отличить эти два фильтра:
Слева: исходное изображение. Справа: Изображение с фильтром низких частот (источник: TutorialsPoint)
Слева: исходное изображение. Справа: изображение с фильтром верхних частот (источник: Википедия)
При предварительной обработке комбинация фильтров низких и высоких частот творит чудеса, удаляя шум и точно обнаруживая текстовые области на изображении.
Распознавание символов
С этого и начинается весь процесс. Распознавание символов работает с помощью двух основных методов: извлечение признаков и сопоставление шаблонов. Давайте разберемся в этих двух аспектах подробнее.
Извлечение признаков — это способность аппарата обнаруживать края (также известные как кляксы) на изображении, чтобы идентифицировать символы и слова на изображении. Извлечение признаков идет рука об руку с фильтром верхних частот, который помогает алгоритму определить начало и конец каждого символа в слове (ребра).
При сопоставлении шаблонов текстовые объекты идентифицируются на изображении на основе их геометрических координат в документе. В этом методе программист обучает алгоритм на нескольких «шаблонах». Обучение работает путем жесткого кодирования позиций для текста.
Это означает, что человек-программист заставит машину понять вероятные места, где она должна искать в документах, чтобы найти текст.
Таким образом, всякий раз, когда отформатированный документ с подходящим шаблоном пропускается через инструмент OCR, он автоматически извлекает текст на основе областей интереса, определенных для него ранее.
Приведем пример, который поможет вам разобраться в сопоставлении шаблонов:
Слева: Алгоритм OCR жестко запрограммирован на поиск области интереса (ROI) для извлечения текста (красное поле). Справа: шаблон, используемый для обучения алгоритма (источник: Medium)
Извлечение признаков и сопоставление шаблонов делают инструменты OCR более совершенными для обнаружения текста не только на изображениях, но и на отсканированных копиях из документов PDF/Word.
Постобработка
Наконец, инструмент OCR компилирует результаты и выполняет внутренние проверки грамматики. Это необходимо для того, чтобы убедиться, что все, что извлек инструмент, в принципе в порядке и не содержит каких-либо основных ошибок.
Инструменты OCR обучаются на больших языковых моделях и наборах данных для поиска потенциальных ошибок при преобразованиях. Таким образом, инструменты могут автоматически дополнять частично распознанные слова. Или они могут сделать слова грамматически правильными, перевернув некоторые позиции своих персонажей.
На сегодняшний день существует множество инструментов OCR, доступных в Интернете для автономного использования. В качестве примера можно привести онлайн-инструменты искусственного интеллекта, используемые для преобразования изображений в текст. Эти инструменты используют свои передовые технологии для успешного извлечения текста с более высокой точностью.
Вот пример:
(Пример изображения, используемого для преобразователя изображений в текст с помощью ИИ)
(Результат редактируемого текст после загрузки образца изображения в инструмент)
С другой стороны, многие инструменты OCR не функционируют автономно, а работают в сочетании с другими системами, например, переводчиками, банковскими приложениями, программами для защиты от секретной информации и т. д.
Такое сложное программное обеспечение OCR в основном доступно в виде настольных решений, которые помогают организациям считывать тонны текста с отсканированных изображений за считанные секунды.
Ограничения и проблемы, связанные с технологиями оптического распознавания символов
Обратите внимание, что преобразование изображения в текст не является стопроцентно точным процессом. Могут быть ошибки, допущенные программным обеспечением OCR при идентификации слов или символов на изображении.
Причин неправильной идентификации может быть несколько, некоторые из них перечислены ниже:
- Рукописные заметки: Почерк уникален для каждого человека. Стили написания могут значительно различаться, из-за чего программное обеспечение путается в некоторых словах. Заметные ошибки возникают при совместном или курсивном почерке, так как смысл слов может быть неясным.
- Изображения с низким разрешением: Это очень простое для понимания. Не давайте инструментам OCR размытые изображения. Это запутает алгоритм и может привести к ошибкам при конвертации.
- Похожий цвет для фона и текста: если цвет фона и текста совпадают по тону, то велика вероятность ошибки. Это чаще всего происходит с изображениями с темным фоном, так как инструменты не могут отличить тусклый фон от темного текста.
- Затененные изображения: Если изображение, которое вы используете для преобразования, снято под плохим углом освещения (с тенями на странице), то может возникнуть ошибка. Убедитесь, что вы находитесь на оптимальном расстоянии от источника света. Кроме того, проверьте, не блокирует ли что-нибудь путь источника света к вашей целевой странице.
- Вариант шрифта: И последнее, но не менее важное: если ваше отсканированное изображение/документ написано несколькими шрифтами, то программное обеспечение OCR может обнаружить неправильные слова. Причина в том, что программное обеспечение может быть не способно распознать некоторые слова из-за чрезмерного украшения, примененного к их стилю или формату.
Вывод
В этом посте мы подробно изучили внутренний процесс преобразования изображения в текст. Мы также узнали о факторах, которые могут привести к потенциальным ошибкам при конверсиях.
Автор статьи: Angelina Bryan