Когда в разговоре звучит «нам нужна технология распознавания документов», речь может идти о трёх разных вещах: о чтении печатных символов, о чтении рукописных и о понимании документа целиком. Это три класса технологий с разной ценой и разными возможностями.
Короткий ответ такой. Печатные документы закрывает OCR, заполненные от руки поля требуют ICR, а задачи, где из документа нужны конкретные значения, решает Document AI.
Три класса технологий
| Технология | Что читает | Что на выходе | Когда нужна |
|---|---|---|---|
| OCR, оптическое распознавание символов | Печатный текст | Текст страницы и координаты слов | Нужен поиск по архиву, копирование, текстовый слой в PDF |
| ICR, интеллектуальное распознавание символов | Рукописный и рукопечатный текст: анкеты, пометки, бланки от руки | Текст рукописных полей с оценкой уверенности | В документах есть поля, заполненные от руки |
| Document AI, модели понимания документов | Документ целиком: текст, вёрстку, таблицы, связи между полями | Готовые значения полей: цена, дата, контрагент, позиции | Данные должны попадать в учёт или в сравнение без перепечатки |
Классы не заменяют друг друга, а стоят цепочкой. Document AI обычно работает поверх уже распознанного текста, а ICR подключается там, где в документе появляется рукописная часть.
OCR: печатный текст и ничего сверх
Самый старый и самый предсказуемый класс. OCR находит на странице символы и складывает их в слова, не зная, что эти слова означают. Для поиска по архиву этого достаточно, для переноса цифр в учёт нет.
Границы этого класса и надстройки, которые к нему приставляют, разбираем в статье об OCR, а что происходит внутри, от пикселя до буквы, в статье об оптическом распознавании документа.
ICR: рукописное и рукопечатное
ICR (Intelligent Character Recognition, интеллектуальное распознавание символов) отличается от OCR подходом. Символ не сравнивается с одним готовым начертанием: система обучена на множестве вариантов написания. Цифра «семь» у разных людей выглядит по-разному, и правило здесь не работает.
На практике ICR применяют не ко всему документу, а к отдельным полям бланка: клетки анкеты, дата, сумма прописью. Рукописный текст свободной формы остаётся трудным до сих пор, и обещания «читаем любой почерк» стоит проверять на своих документах.
Рядом стоит OMR (Optical Mark Recognition, распознавание меток): чтение галочек и закрашенных клеток. Технически это проще, чем буквы, и для анкет и опросных листов часто достаточно только его.
Document AI: понимание документа, а не символов
Document AI это модели, которые работают с документом как с целым. Они видят, где шапка, где таблица позиций, где итог, и понимают, что число рядом со словом «Итого» это сумма, а не номер.
Отличие от двух предыдущих классов в результате: на выходе не текст, а поля. Систему не нужно настраивать на каждый бланк по координатам, она справляется и с документами, которых раньше не видела, потому что опирается на устройство документа, а не на разметку конкретной формы.
На этом классе построен IntDoc: он читает документ построчно и достаёт цену и валюту, срок поставки, наличие на складе, номенклатуру и позиции, условия оплаты, гарантию, реквизиты поставщика и скидки, в том числе из сканов и фотографий с телефона.
Что стоит рядом и обычно входит в комплект
Ни один из трёх классов не работает в одиночку. Вокруг них всегда есть служебные технологии, о которых редко говорят отдельно.
- Анализ структуры страницы: разбор листа на блоки, колонки, таблицы и колонтитулы. Без него текст из двух колонок склеивается в одну ленту.
- Классификация документов: определение типа, счёт это, акт или договор. Нужна, когда в потоке всё вперемешку и заранее неизвестно, какие поля искать.
- Распознавание штрихкодов и QR: отдельная и самая надёжная дорожка, если на документе есть код.
- Проверка по справочникам: ИНН и КПП по контрольной сумме, коды валют, даты по календарю. Дешёвый способ поймать ошибку распознавания до человека.
Какая технология нужна под вашу задачу
| Ваша ситуация | Что нужно |
|---|---|
| Архив сканов, нужен поиск по содержимому | OCR. Что даёт результат сам по себе — в статье о распознавании текста документов |
| Печатные бланки одного вида, поля всегда на одном месте | OCR плюс разметка полей по координатам |
| Анкеты и заявления, заполненные от руки | ICR, а для галочек и клеток OMR |
| Счета и накладные от разных контрагентов, данные нужны в учёте | Document AI: шаблон на каждого контрагента не построить |
| Предложения от разных поставщиков, их нужно сравнить | Document AI с нормализацией и сравнением значений |
Правило простое: чем разнообразнее документы и чем меньше вы готовы настраивать шаблоны, тем ниже по этой таблице придётся спуститься.
С чего начать разговор о технологии
Начинать стоит не с названия технологии, а с документа. Возьмите десяток своих и посмотрите, сколько среди них печатных, сколько с рукописными полями и сколько одинаковых по форме. Ответ обычно виден сразу.
Второй вопрос: кто читает результат. Если сотрудник, хватит текста. Если программа, нужны поля, и класс технологии определяется этим, а не размером компании.
Мы начинаем знакомство с демо на реальных документах: на чужих примерах убедительно выглядит любая технология. Подключение IntDoc считается под объём, уровней три, от небольшого потока предложений до крупных закупок и тендеров.