stringtranslate.com

Оптическое распознавание символов

Видео процесса сканирования и оптического распознавания символов (OCR) в реальном времени портативным сканером

Оптическое распознавание символов или оптическое считывание символов ( OCR ) — это электронное или механическое преобразование изображений напечатанного, рукописного или печатного текста в текст, закодированный машиной, будь то из отсканированного документа, фотографии документа, фотографии сцены (например, текст на вывесках и рекламных щитах на пейзажной фотографии) или из текста субтитров, наложенного на изображение (например: из телевизионной передачи). [1]

Широко используемый в качестве формы ввода данных из печатных бумажных записей данных – будь то паспортные документы, счета-фактуры, банковские выписки , компьютерные квитанции, визитные карточки, почта, распечатанные данные или любая подходящая документация – это распространенный метод оцифровки печатных текстов, чтобы их можно редактировать в электронном виде, искать, хранить в более компактном виде, отображать в Интернете и использовать в машинных процессах, таких как когнитивные вычисления , машинный перевод , (извлечение) преобразования текста в речь , ключевые данные и интеллектуальный анализ текста . OCR — это область исследований в области распознавания образов , искусственного интеллекта и компьютерного зрения .

Ранние версии нужно было обучать изображениям каждого символа и работать над одним шрифтом за раз. Усовершенствованные системы, способные обеспечить высокую степень точности для большинства шрифтов, теперь стали обычным явлением и поддерживают различные входные форматы файлов изображений . [2] Некоторые системы способны воспроизводить форматированный вывод, который очень похож на исходную страницу, включая изображения, столбцы и другие нетекстовые компоненты.

История

Раннее оптическое распознавание символов можно отнести к технологиям телеграфии и созданию устройств чтения для слепых. [3] В 1914 году Эмануэль Гольдберг разработал машину, которая считывала символы и преобразовывала их в стандартный телеграфный код. [4] Одновременно Эдмунд Фурнье д'Альб разработал « Оптофон» — портативный сканер, который при перемещении по печатной странице воспроизводил звуки, соответствующие определенным буквам или символам. [5]

В конце 1920-х и начале 1930-х годов Эмануэль Гольдберг разработал то, что он назвал «статистической машиной» для поиска в архивах микрофильмов с использованием системы распознавания оптического кода. В 1931 году ему был выдан патент США № 1838389 на изобретение. Патент был приобретен IBM .

Пользователи с нарушениями зрения

В 1974 году Рэй Курцвейл основал компанию Kurzweil Computer Products, Inc. и продолжил разработку системы оптического распознавания символов омнишрифтов , которая могла распознавать текст, напечатанный практически любым шрифтом. (Курцвейлу часто приписывают изобретение универсального оптического распознавания шрифтов, но оно использовалось такими компаниями, как CompuScan, в конце 1960-х и 1970-х годах. [3] [6] ). Курцвейл использовал эту технологию для создания читающей машины для слепых людей, попросите компьютер прочитать им текст вслух. Устройство включало в себя планшетный сканер CCD -типа и синтезатор речи. 13 января 1976 года готовый продукт был представлен во время широко освещаемой пресс-конференции, возглавляемой Курцвейлом и лидерами Национальной федерации слепых . [ нужна цитата ] В 1978 году компания Kurzweil Computer Products начала продавать коммерческую версию компьютерной программы оптического распознавания символов. LexisNexis была одним из первых клиентов и купила программу для загрузки юридических документов и новостных документов в свои зарождающиеся онлайн-базы данных. Два года спустя Курцвейл продал свою компанию компании Xerox , которая в конечном итоге выделила ее в Scansoft , которая объединилась с Nuance Communications .

В 2000-х годах OCR стало доступно онлайн как услуга (WebOCR), в среде облачных вычислений и в мобильных приложениях, таких как перевод знаков на иностранный язык в реальном времени на смартфоне . С появлением смартфонов и умных очков OCR можно использовать в приложениях для мобильных устройств, подключенных к Интернету, которые извлекают текст, записанный с помощью камеры устройства. Эти устройства, не имеющие встроенной функции OCR, обычно используют API OCR для извлечения текста из файла изображения, захваченного устройством. [7] [8] API OCR возвращает извлеченный текст вместе с информацией о местонахождении обнаруженного текста в исходном изображении обратно в приложение устройства для дальнейшей обработки (например, преобразования текста в речь) или отображения.

Различные коммерческие системы оптического распознавания символов и системы оптического распознавания символов с открытым исходным кодом доступны для наиболее распространенных систем письма , включая латинские, кириллические, арабские, ивритские, индийские, бенгальские (бангла), деванагари, тамильские, китайские, японские и корейские символы.

Приложения

Механизмы оптического распознавания символов были преобразованы в программные приложения, специализирующиеся на различных предметах, таких как квитанции, счета-фактуры, чеки и юридические платежные документы.

Программное обеспечение можно использовать для:

Типы

OCR обычно представляет собой автономный процесс, который анализирует статический документ. Существуют облачные сервисы, которые предоставляют онлайн-сервис API OCR. Анализ движений рукописного текста можно использовать в качестве входных данных для распознавания рукописного текста . [14] Вместо простого использования форм глифов и слов этот метод способен фиксировать движение, например, порядок рисования сегментов , направление и схему опускания и поднятия пера. Эта дополнительная информация может сделать процесс более точным. Эта технология также известна как «онлайн-распознавание символов», «динамическое распознавание символов», «распознавание символов в реальном времени» и «интеллектуальное распознавание символов».

Техники

Предварительная обработка

Программное обеспечение OCR часто предварительно обрабатывает изображения, чтобы повысить шансы на успешное распознавание. Методы включают: [15]

Сегментация шрифтов с фиксированным шагом выполняется относительно просто путем выравнивания изображения по однородной сетке на основе того, где вертикальные линии сетки реже всего пересекают черные области. Для пропорциональных шрифтов необходимы более сложные методы, поскольку пробелы между буквами иногда могут быть больше, чем между словами, а вертикальные линии могут пересекать более одного символа. [22]

Распознавание текста

Существует два основных типа основного алгоритма оптического распознавания символов, которые могут создавать ранжированный список символов-кандидатов. [23]

Такое программное обеспечение, как Cuneiform и Tesseract, использует двухпроходной подход к распознаванию символов. Второй проход известен как адаптивное распознавание и использует формы букв, распознанные с высокой степенью достоверности при первом проходе, чтобы лучше распознавать оставшиеся буквы на втором проходе. Это полезно для необычных шрифтов или сканов низкого качества, где шрифт искажен (например, размыт или выцветший). [22]

По состоянию на декабрь 2016 года современное программное обеспечение для оптического распознавания символов включает Google Docs OCR, ABBYY FineReader и Transym. [26] [ нужно обновить ] Другие, такие как OCRopus и Tesseract, используют нейронные сети , которые обучены распознавать целые строки текста, а не концентрироваться на отдельных символах.

Метод, известный как итеративное распознавание текста, автоматически разрезает документ на разделы в зависимости от макета страницы. OCR выполняется для разделов индивидуально с использованием переменных пороговых значений уровня достоверности символов, чтобы максимизировать точность OCR на уровне страницы. На этот метод выдан патент Патентного ведомства США. [27]

Результат оптического распознавания символов может быть сохранен в стандартизированном формате ALTO — специальной схеме XML, поддерживаемой Библиотекой Конгресса США . Другие распространенные форматы включают hOCR и PAGE XML.

Список программного обеспечения для оптического распознавания символов см. в разделе Сравнение программного обеспечения для оптического распознавания символов .

Постобработка

Точность оптического распознавания символов можно повысить, если вывод ограничен словарем —  списком слов, которые разрешено встречать в документе. [15] Это могут быть, например, все слова английского языка или более технический словарь для конкретной области. Этот метод может оказаться проблематичным, если документ содержит слова, отсутствующие в словаре, например имена собственные . Tesseract использует свой словарь, чтобы влиять на этап сегментации символов для повышения точности. [22]

Выходной поток может представлять собой простой текстовый поток или файл символов, но более сложные системы оптического распознавания символов могут сохранять исходный макет страницы и создавать, например, аннотированный PDF-файл , который включает в себя как исходное изображение страницы, так и текстовое представление с возможностью поиска. .

Анализ ближайших соседей может использовать частоты совместного появления для исправления ошибок, отмечая, что определенные слова часто встречаются вместе. [28] Например, «Вашингтон, округ Колумбия», как правило, гораздо чаще встречается в английском языке, чем «Вашингтон DOC».

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

Алгоритм расстояния Левенштейна также использовался при постобработке OCR для дальнейшей оптимизации результатов API OCR. [29]

Оптимизация для конкретных приложений

В последние годы [ когда? ] Крупнейшие поставщики технологий оптического распознавания начали настраивать системы оптического распознавания символов для более эффективной работы с конкретными типами входных данных. Помимо лексикона, специфичного для приложения, более высокая производительность может быть достигнута за счет учета бизнес-правил, стандартных выражений, [ необходимо пояснение ] или богатой информации, содержащейся в цветных изображениях. Эта стратегия называется «Прикладно-ориентированное распознавание текста» или «Настраиваемое распознавание текста» и применяется к распознаванию номерных знаков , счетов-фактур , снимков экрана , удостоверений личности , водительских прав и производства автомобилей .

The New York Times адаптировала технологию оптического распознавания символов в собственный инструмент, который они назвали Document Helper , который позволяет их команде интерактивных новостей ускорить обработку документов, которые необходимо просмотреть. Они отмечают, что это позволяет им обрабатывать до 5400 страниц в час, готовясь к просмотру содержания журналистами. [30]

Обходные пути

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

Принудительное улучшение ввода

Специальные шрифты, такие как шрифты OCR-A , OCR-B или MICR , с точно заданным размером, интервалом и отличительной формой символов, обеспечивают более высокую точность во время транскрипции при обработке банковских чеков. Несколько известных механизмов оптического распознавания символов были разработаны для захвата текста популярными шрифтами, такими как Arial или Times New Roman, и не способны захватывать текст этими шрифтами, которые являются специализированными и сильно отличаются от широко используемых шрифтов. Поскольку Google Tesseract можно обучить распознаванию новых шрифтов, он может распознавать шрифты OCR-A, OCR-B и MICR. [31]

Гребенчатые поля — это предварительно напечатанные поля, которые побуждают людей писать более разборчиво — по одному глифу на поле. [28] Они часто печатаются в выпадающих цветах , которые можно легко удалить с помощью системы оптического распознавания символов. [28]

В Palm OS использовался специальный набор глифов, известный как Graffiti , которые похожи на печатные английские символы, но упрощены или модифицированы для более легкого распознавания на аппаратном обеспечении платформы с ограниченными вычислительными возможностями. Пользователям придется научиться писать эти специальные символы.

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

Краудсорсинг

Краудсорсинг людей для распознавания символов может быстро обрабатывать изображения, как компьютерное распознавание символов, но с более высокой точностью распознавания изображений, чем то, которое получается с помощью компьютеров. Практические системы включают Amazon Mechanical Turk и reCAPTCHA . Национальная библиотека Финляндии разработала онлайн-интерфейс, позволяющий пользователям корректировать тексты, распознанные OCR, в стандартизированном формате ALTO. [32] Краудсорсинг также использовался не для непосредственного распознавания символов, а для приглашения разработчиков программного обеспечения для разработки алгоритмов обработки изображений, например, с помощью турниров по рангу . [33]

Точность

Появление слов laft и Last в базе данных n-грамм Google в английских документах с 1700 по 1900 год, на основе сканирования OCR корпуса «Английский язык 2009 года».
Появление Laft и Last в базе данных n-грамм Google на основе сканирования OCR корпуса английского языка 2012 года [34]
Поиск слов с длинной буквой S в английском языке 2012 года и более поздних версий нормализуется по букве S.

По заказу Министерства энергетики США (DOE) Научно-исследовательский институт информатики (ISRI) поставил перед собой задачу способствовать совершенствованию автоматизированных технологий для понимания машинно-печатных документов и с 1992 года провел самый авторитетный ежегодный тест точности оптического распознавания символов. по 1996 год. [35]

Распознавание машинописного текста, написанного латиницей , по-прежнему не является на 100% точным, даже если доступно четкое изображение. Одно исследование, основанное на распознавании газетных страниц 19-го и начала 20-го века, пришло к выводу, что точность посимвольного распознавания символов для коммерческого программного обеспечения OCR варьируется от 81% до 99%; [36] Полная точность может быть достигнута путем проверки человеком или аутентификации по словарю данных. Другие области, включая распознавание рукописной печати, рукописного письма и печатного текста в других алфавитах (особенно в тех символах восточноазиатских языков, которые содержат много штрихов для одного символа), все еще являются предметом активных исследований. База данных MNIST обычно используется для тестирования способности систем распознавать рукописные цифры.

Уровень точности можно измерить несколькими способами, и то, как они измеряются, может сильно повлиять на сообщаемый уровень точности. Например, если контекст слова (лексикон слов) не используется для исправления программного обеспечения, находящего несуществующие слова, частота ошибок в символах 1% (точность 99%) может привести к частоте ошибок 5% или хуже, если измерение основан на том, было ли распознано каждое целое слово без неправильных букв. [37] Использование достаточно большого набора данных важно в решениях для распознавания рукописного текста на основе нейронных сетей. С другой стороны, создание естественных наборов данных очень сложно и требует много времени. [38]

Примером трудностей, присущих оцифровке старого текста, является неспособность оптического распознавания символов различать символы « длинный s » и «f». [39] [34]

Веб-системы оптического распознавания символов для распознавания рукописного текста на лету стали широко известны как коммерческие продукты в последние годы [ когда? ] (см. историю планшетного ПК ). С помощью программного обеспечения для перьевых вычислений можно достичь точности от 80% до 90% на аккуратных, чисто напечатанных от руки символах , но этот уровень точности по-прежнему приводит к десяткам ошибок на странице, что делает эту технологию полезной только в очень ограниченных приложениях. [ нужна цитата ]

Распознавание рукописного текста является активной областью исследований, причем уровень распознавания даже ниже, чем у рукописного текста . Более высокие показатели распознавания общего рукописного письма, скорее всего, будут невозможны без использования контекстной или грамматической информации. Например, распознавать целые слова из словаря проще, чем пытаться проанализировать отдельные символы из сценария. Чтение строки суммы чека (которая всегда представляет собой записанное число) является примером того, как использование словаря меньшего размера может значительно повысить скорость распознавания. Формы отдельных рукописных символов сами по себе просто не содержат достаточно информации для точного (более 98%) распознавания всей рукописной рукописи. [ нужна цитата ]

Большинство программ позволяют пользователям устанавливать «уровни доверия». Это означает, что если программное обеспечение не достигает желаемого уровня точности, пользователь может быть уведомлен о необходимости проверки вручную.

Ошибку, возникшую при сканировании OCR, иногда называют сканированием ( по аналогии с термином «опечатка »). [40] [41]

Юникод

Символы для поддержки OCR были добавлены в стандарт Unicode в июне 1993 года с выпуском версии 1.1.

Некоторые из этих символов отображаются из шрифтов, специфичных для MICR , OCR-A или OCR-B .

Смотрите также

Рекомендации

  1. ^ OnDemand, HPE Haven. «Документ OCR». Архивировано из оригинала 15 апреля 2016 года.
  2. ^ OnDemand, HPE Haven. "неопределенный". Архивировано из оригинала 19 апреля 2016 года.
  3. ^ Аб Шанц, Герберт Ф. (1982). История OCR, оптического распознавания символов . [Манчестер-Центр, Вермонт]: Ассоциация пользователей технологий распознавания. ISBN 9780943072012.
  4. ^ Дхавале, Сунита Викрант (2017). Передовые методы обнаружения и фильтрации спама на основе изображений. Херши, Пенсильвания: IGI Global. п. 91. ИСБН 9781683180142.
  5. ^ д'Альбе, EEF (1 июля 1914 г.). «О печатающем оптофоне». Труды Королевского общества A: Математические, физические и технические науки . 90 (619): 373–375. Бибкод : 1914RSPSA..90..373D. дои : 10.1098/rspa.1914.0061.
  6. ^ «История OCR». Журнал обработки данных . 12:46 . 1970.
  7. ^ «Извлечение текста из изображений с помощью OCR на Android» . 27 июня 2015 г. Архивировано из оригинала 15 марта 2016 г.
  8. ^ «[Учебное пособие] OCR на Google Glass» . 23 октября 2014 г. Архивировано из оригинала 5 марта 2016 г.
  9. ^ Цзэн, Цин-Ань (2015). Беспроводная связь, сети и приложения: материалы WCNA 2014. Springer. ISBN 978-81-322-2580-5.
  10. ^ «[javascript] Использование оптического распознавания символов и извлечения сущностей для поиска компаний в LinkedIn» . 22 июля 2014 г. Архивировано из оригинала 17 апреля 2016 г.
  11. ^ «Как взломать капчу» . andrewt.net. 28 июня 2006 года . Проверено 16 июня 2013 г.
  12. ^ «Взлом визуальной капчи» . Cs.sfu.ca. 10 декабря 2002 года . Проверено 16 июня 2013 г.
  13. Резиг, Джон (23 января 2009 г.). «Джон Резиг – OCR и нейронные сети в JavaScript». Ejohn.org . Проверено 16 июня 2013 г.
  14. ^ Тапперт, CC; Суен, Калифорния; Вакахара, Т. (1990). «Современное состояние онлайн-распознавания рукописного текста». Транзакции IEEE по анализу шаблонов и машинному интеллекту . 12 (8): 787. дои : 10.1109/34.57669. S2CID  42920826.
  15. ^ ab «Оптическое распознавание символов (OCR) - Как это работает». Nicomsoft.com . Проверено 16 июня 2013 г.
  16. ^ Сезгин, Мехмет; Санкур, Бюлент (2004). «Обзор методов определения порога изображения и количественной оценки эффективности» (PDF) . Журнал электронных изображений . 13 (1): 146. Бибкод : 2004JEI....13..146S. дои : 10.1117/1.1631315. Архивировано из оригинала (PDF) 16 октября 2015 года . Проверено 2 мая 2015 г.
  17. ^ Гупта, Майя Р.; Джейкобсон, Натаниэль П.; Гарсия, Эрик К. (2007). «Бинаризация OCR и предварительная обработка изображений для поиска исторических документов» (PDF) . Распознавание образов . 40 (2): 389. Бибкод : 2007PatRe..40..389G. дои : 10.1016/j.patcog.2006.04.043. Архивировано из оригинала (PDF) 16 октября 2015 года . Проверено 2 мая 2015 г.
  18. ^ Трир, Ойвинд Дуэ; Джайн, Анил К. (1995). «Целевая оценка методов бинаризации» (PDF) . Транзакции IEEE по анализу шаблонов и машинному интеллекту . 17 (12): 1191–1201. дои : 10.1109/34.476511. Архивировано (PDF) из оригинала 16 октября 2015 г. Проверено 2 мая 2015 г.
  19. ^ Миляев, Сергей; Баринова Ольга; Новикова, Татьяна; Кохли, Пушмит; Лемпицкий, Виктор (2013). «Бинаризация изображений для сквозного понимания текста в натуральных изображениях». 2013 12-я Международная конференция по анализу и распознаванию документов (PDF) . стр. 128–132. дои : 10.1109/ICDAR.2013.33. ISBN 978-0-7695-4999-6. S2CID  8947361. Архивировано (PDF) из оригинала 13 ноября 2017 г. . Проверено 2 мая 2015 г.
  20. ^ Пати, ПБ; Рамакришнан, А.Г. (29 мая 1987 г.). «Идентификация нескольких сценариев на уровне слов». Буквы для распознавания образов . 29 (9): 1218–1229. Бибкод : 2008PaReL..29.1218P. doi :10.1016/j.patrec.2008.01.027.
  21. ^ «Базовое распознавание текста в OpenCV | Damiles» . Блог.damiles.com. 20 ноября 2008 года . Проверено 16 июня 2013 г.
  22. ^ abc Смит, Рэй (2007). «Обзор механизма OCR Tesseract» (PDF) . Архивировано из оригинала (PDF) 28 сентября 2010 года . Проверено 23 мая 2013 г.
  23. ^ «Введение в OCR». Dataid.com . Проверено 16 июня 2013 г.
  24. ^ «Как работает программное обеспечение OCR» . Мастер OCR. Архивировано из оригинала 16 августа 2009 года . Проверено 16 июня 2013 г.
  25. ^ «Основы распознавания и классификации образов с помощью openCV | Damiles» . Блог.damiles.com. 14 ноября 2008 года . Проверено 16 июня 2013 г.
  26. ^ Ассефи, Мехди (декабрь 2016 г.). «OCR как услуга: экспериментальная оценка оптического распознавания символов Google Docs, Tesseract, ABBYY FineReader и Transym». Исследовательские ворота .
  27. ^ «Как лучшая технология оптического распознавания символов захватывает 99,91% данных» . www.bisok.com . Проверено 27 мая 2021 г.
  28. ^ abc Вудфорд, Крис (30 января 2012 г.). «Как работает сканирование документов OCR?». Объясните этот материал . Проверено 16 июня 2013 г.
  29. ^ «Как оптимизировать результаты API OCR при извлечении текста из изображения? - Сообщество разработчиков Haven OnDemand» . Архивировано из оригинала 22 марта 2016 года.
  30. Фер, Тифф (26 марта 2019 г.). «Как мы просмотрели 900 страниц документов Коэна менее чем за 10 минут». Нью-Йорк Таймс . ISSN  0362-4331 . Проверено 16 июня 2023 г.
  31. ^ «Тренируйте свой Тессеракт». Тренируйте свой Тессеракт . 20 сентября 2018 года . Проверено 20 сентября 2018 г.
  32. ^ «В чем смысл онлайн-интерактивного текстового редактора OCR? - Фенно-Угрика» . 21 февраля 2014 г.
  33. ^ Ридл, К.; Занибби, Р.; Херст, Массачусетс; Чжу, С.; Мениетти, М.; Крузан, Дж.; Метельский И.; Лакхани, К. (20 февраля 2016 г.). «Обнаружение рисунков и меток деталей в патентах: конкурентная разработка алгоритмов обработки изображений». Международный журнал по анализу и распознаванию документов . 19 (2): 155. arXiv : 1410.6751 . дои : 10.1007/s10032-016-0260-8. S2CID  11873638.
  34. ^ ab "Программа просмотра Ngram Google Книг" . book.google.com . Проверено 20 июля 2023 г. Когда мы создали исходный корпус Ngram Viewer в 2009 году, наше распознавание текста было не так хорошо […]. Это было особенно очевидно в английском языке до XIX века, где удлиненная медиальная буква s (ſ) часто интерпретировалась как f, […]. Вот свидетельства улучшений, которые мы сделали с тех пор, используя оператор корпуса для сравнения версий 2009, 2012 и 2019 годов […]
  35. ^ «Код и данные для оценки точности оптического распознавания символов, первоначально из UNLV/ISRI» . Архив кода Google.
  36. ^ Холли, Роуз (апрель 2009 г.). «Насколько это может быть хорошо? Анализ и повышение точности оптического распознавания символов в крупномасштабных программах оцифровки исторических газет». Журнал D-Lib . Проверено 5 января 2014 г.
  37. ^ Суен, Калифорния; Пламондон, Р.; Тапперт, А.; Томассен, А.; Уорд, младший; Ямамото, К. (29 мая 1987 г.). Будущие проблемы в области рукописного ввода и компьютерных приложений. 3-й Международный симпозиум по рукописному письму и компьютерным приложениям, Монреаль, 29 мая 1987 г. Проверено 3 октября 2008 г.
  38. ^ Мохсени, Айда; Азми, Реза; Малеки, Арвин и Лайеги, Камран (2019). Сравнение синтезированных и естественных наборов данных в решениях для рукописного ввода на основе нейронных сетей. ИТКТ.{{cite book}}: CS1 maint: несколько имен: список авторов ( ссылка )
  39. ^ Капидакис, Сарантос; Мазурек, Цезари и Верла, Марцин (2015). Исследования и передовые технологии для цифровых библиотек. Спрингер. п. 257. ИСБН 9783319245928.{{cite book}}: CS1 maint: несколько имен: список авторов ( ссылка )
  40. ^ Аткинсон, Кристин Х. (2015). «Изобретение непатентной литературы для патентования фармацевтических препаратов». Фармацевтический патентный аналитик . 4 (5): 371–375. дои : 10.4155/ppa.15.21. ПМИД  26389649.
  41. ^ http://www.hoopoes.com/jargon/entry/scanno.shtml Неработающая ссылка

Внешние ссылки