Распознавание текста с использованием OCR Tesseract

16.09.24

Интеграция - Распознавание документов и образов

В 1С:Документооборот полнотекстовый поиск по содержимому отсканированных документов возможен, но не так хорош, как бы хотелось. Всё дело в качестве распознавания сканов. Поднимаем процесс распознавания на новую высоту с использованием Xpdf и OCR Tesseract.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Распознавание текста с использованием OCR Tesseract (linux):
.cfe 40,77Kb ver:1.L.2.49
3 4 200 руб. Купить
Распознавание текста с использованием OCR Tesseract (windows):
.cfe 38,67Kb
41 4 200 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Полнотекстовый поиск по содержимому всех документов - отличная функция 1С:Документооборот, однако много документов хранится в сканах и их надо как-то распознать. Встроенный механизм базируется на откровенно устаревшей технологии (у CuneiForm последняя версия от 19.04.2011) и имеет очень низкое качество. Частично спасает ситуацию возможность удалённого распознавания на мощностях 1С, но далеко не все готовы отсылать свою переписку куда-то за пределы организации, да и не бесплатная это функция.

Однако есть выход, причем проект открытый и развивающийся, а потому можно надеяться, что качество распознавания будет расти. Я имею ввиду проект Tesseract OCR. На официальном сайте проекта есть сборка под все ОС, под Windows только alfa-версия, но работает она хорошо. Особенности установки с поддержкой кириллицы и русского языка я показал на скринах.

Неожиданно плохие результаты показало распознавание изображений, полученных из Adobe PDF с помощью утилиты Imagemagick. Часть изображений получается серые, я об этом эффекте уже писал. Нормально работает на изображениях, полученных с помощью утилиты pdftopng от производителя XpdfReader. 

Предлагаемое расширение подменяет функцию РаспознатьСПомощьюCuneiForm() общего модуля Распознавание, и корректно работает во всех сценариях, как в ручном, так и в автоматическом.

Программа первым делом производит поиск текстового слоя в файле pdf, для этого используем утилиту pdftotext из Xpdf command line tools. Тут есть один нюанс, в качестве параметра передаётся кодировка текста, который должен быть извлечён из файла, а она изначально неизвестна. Предположительно, чаще всего должна использоваться кодировка UTF-8, но как показывают тесты это не так и вообще часть текста может быть в одной кодировке, а часть в другой. А ещё лист документа может быть перевёрнут, причём в любую сторону. Тесты OCR Tesseract показали, что программа сама пытается выровнять текст. Если подать на вход изображение с текстом и это-же изображение, повёрнутое на 90 градусов, то качество распознавания не изменится. Но вот поворот на 180 и 270 градусов делает распознавание невозможным.

Что делать? Надо как-то понять, что распознанный текст содержит нормальный текст, а не мусор. Я решил, что можно считать долю кириллических символов в тексте, мы же распознаём русскоязычные документы, значит их там должно быть больше половины.

Получился следующий алгоритм:

  • пытаемся из файла Adobe PDF получить текст, если получается, то считаем долю кириллических символов, и если их больше 65% возвращаем текст;
  • разбиваем файл на изображения и начинаем каждое распознавать, после распознавания снова считаем долю символов, если меньше 65%, то переворачиваем на 180 градусов и пробуем снова.

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

Настройки программ находятся в начале функции модуля РОТР_РаспознатьСПомощьюCuneiForm() общего модуля Распознавание из расширения, там указываются все пути к программам и разрешение изображений, настройки снабжены комментариями. Есть ограничения на минимальный и максимальный объём изображений, понятно, что они ничем особо не обоснованы, только наблюдения и тесты. Всё ради увеличения быстродействия, т.к. процесс распознавания получается мягко сказать "неторопливым".

В общем модуле РОТР_ОбщегоНазначенияСервер собраны функции для работы в изображениями и распознавания текста, их можно использовать в собственных проектах, они также снабжены описанием параметров. Также хочется отметить, что процесс tesseract.exe может потреблять очень много оперативной памяти, у меня бывало доходило почти до 1 Гб (один раз), это надо иметь ввиду при внедрении данного механизма. Если раньше файлы распознавались с использованием старого алгоритма, то надо сбросить статус, для чего в расширении есть соответствующая обработка.

Расширение проверено на конфигурации 1С:ДГУ 2.1.29.16 и технологической платформе  8.3.17.1851.

Upd. 16.09.2024. Добавил адаптацию расширения под Linux, тестировал на 1С:ДГУ 2.1.34.1

Распознавание и загрузка сканов в 1С

Решение «Распознавание и загрузка сканов в 1С» — интеллектуальный инструмент, превращающий сканы накладных, счетов, УПД или Excel-файлов в готовые документы 1С. Без ручного ввода и ошибок — с распознаванием даже нечетких фото. Оптимизируйте документооборот и автоматизируйте рутину с помощью ИИ-распознавания.

Проверено на следующих конфигурациях и релизах:

  • Документооборот КОРП, релизы 2.1.34.1, 2.1.29.16

Вступайте в нашу телеграмм-группу Инфостарт

распознавание OCR Tesseract Xpdf

См. также

Учет документов Распознавание документов и образов Бухгалтер Пользователь 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Одна из наиболее удобных обработок автоматического прикрепления большого количества документов-оригиналов к документам 1С. Для файлов поточного сканирования автоматически определяются начало и конец каждого документа. Поддерживаются штрихкоды, QR-коды, отсканированные PDF документы без штрихкодов, сформированные в ЭДО текстовые PDF документы. Поддерживаются входящие и исходящие документы-оригиналы.

6588 руб.

23.12.2021    15881    30    25    

12

SALE! 30%

Нейросети Распознавание документов и образов Программист Бухгалтер Пользователь 1С 8.3 1С:Комплексная автоматизация 1.х 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Абонемент ($m)

Решение поставляется в 2 версиях: при наличии видеокарты расширение+GPU версия или расширение+СPU версия. Поддерживает 3 режима работы, локальное (на вашем ПК), ИИ-модель (облачная), гибридная локальная+ИИ. В локальном режиме распознавание бесплатно. В ИИ режиме в среднем 0.5 рубля за страницу. Неограниченное количество пользователей. Распознает сканы: УПД, счета-фактуры, товарные накладные. Проверяет цифры и помогает создавать документы в 1С. Отправляйте документы через Telegram бот

10 стартмани

20.02.2026    536    1    dasan92    0    

3

Распознавание документов и образов Программист 1С 8.3 Бесплатно (free)

Рано или поздно каждый 1С-специалист может столкнуться с фактически нерешаемой задачей: организацией загрузки из файла контрагента, где данные предлагается синхронизировать по строке, например, наименованию номенклатуры. Зачастую это строковое представление лишь отдаленно напоминает наименование из соответствующего справочника информационной базы заказчика. То есть фактически контрагент произвольно излагает своё желание, а заказчик требует автоматизировать процесс сопоставления. Надо понимать, что 100% решения задачи не существует. Например, если при анализе примеров стало понятно, что клиентам несвойственна грамотность, лучше вообще не браться за такую автоматизацию. Тем не менее, задачу сопоставления строки из последовательности слов с наименованиями из справочника, где порядок слов может различаться, автору удалось решить в приемлемом для заказчика виде. Предлагаются формулировка условий задачи и подходы к реализации решения

09.02.2026    365    Sergey1CSpb    0    

1

Распознавание документов и образов Бухгалтер Пользователь 1С 8.3 1С:Бухгалтерия 3.0 Россия Абонемент ($m)

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

1 стартмани

05.02.2026    463    6    user213093test    0    

3

Распознавание документов и образов Программист Пользователь 1С 8.3 1С:Розница 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Абонемент ($m)

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

2 стартмани

19.12.2025    2554    7    kras_71    24    

12

Распознавание документов и образов Программист Пользователь 1С:Предприятие 8 Россия Абонемент ($m)

Решение на платформе 1С для автоматической расшифровки голосовых сообщений из Telegram. Система отслеживает новые аудио в чат-боте, передает их на локальный сервер с Whisper для преобразования в текст и автоматически возвращает готовую транскрипцию обратно в чат. Должна работать на любой конфигурации 1С. Пригодится для энтузиастов и разработчиков интеграций 1С и ИИ.

1 стартмани

25.11.2025    969    3    marat987654321    3    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Semechka 22.10.21 13:46 Сейчас в теме
Добрый день, Сергей) Интересует следующее: в каком виде предоставляется результат обработки и входят ли компоненты в предоставляемое решение?
2. soulner 497 22.10.21 14:35 Сейчас в теме
(1) Добрый день. Там всё довольно хитро из-за необходимости интеграции со штатной функцией.
В штатную функцию передаются параметры РаспознанныйТекст, ПутьКФайлу, соответственно эти параметры и заполняются распознанным текстом и путём к файлу, содержащем текст.
А компоненты в решение не входят и должны быть скачены с сайта производителя самостоятельно.
Сайт XPDF Tools легко найти поиском (только там ищем именно command line tool), а с OCR Tesseract сложнее, я сборку нашёт тут https://github.com/UB-Mannheim/tesseract/wiki
denundersky; +1 Ответить
Для отправки сообщения требуется регистрация/авторизация