Существует ли что-то, что позволяет Tesseract определить какую-либо меру качества OCR?

Вопрос или проблема

Я использую Ubuntu. Большинство моих отсканированных документов на немецком, английском или французском языках.

Этот вопрос связан с моим другим вопросом на Есть ли возможность позволить pdfsandwich автоматически применять повороты на 90° для отсканированных страниц при необходимости?

Есть ли способ, чтобы tesseract мог сообщить, насколько хорошо сработало его OCR, что-то вроде меры качества, например x% всего, что выглядит как символы, могут быть четко идентифицированы, y% были идентифицированы как символы, но с сомнительным расстоянием до обучаемых данных.

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

Или была бы возможность запустить его снова с документом, повернутым на 90°, 180° или 270°, и полностью выполнить OCR для ориентации, которая работает лучше всего.

.

Ответ или решение

Тема использования Tesseract для оценки качества OCR (оптического распознавания символов) действительно актуальна для пользователей, работающих с многоязычными документами, такими как немецкие, английские и французские. Перед нами стоит задача не только обеспечить корректное распознавание текста, но и оценить его качество, что может быть полезно для улучшения процессов обработки документов, например, во время их сканирования и последующего автоматического исправления ориентации.

Теория

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

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

Пример

На практике, пользователь, работающий с tesseract, может следить за результатами обработки, анализируя логи или создавая скрипты, которые будут сравнивать результаты OCR для разных ориентаций страницы (например, 0°, 90°, 180°, 270°). Это требует знания скриптования и навыков работы в командной строке.

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

Применение

В вашем случае, когда документы на трёх языках, можно рекомендовать:

  1. Выбор языкового пакета: Используйте правильные языковые пакеты Tesseract (например, deu для немецкого, eng для английского, fra для французского). Это обеспечит более точное распознавание.

  2. Возможное использование сторонних инструментов: Существует несколько инструментов для оценки качества OCR, как коммерческих, так и с открытым исходным кодом, которые могут быть интегрированы с Tesseract. Например, некоторые библиотеки и инструменты Python, такие как pytesseract, могут использоваться для предпросмотра и дальнейшей обработки OCR-данных.

  3. Скрипты для автоматизации: Написание пользовательских скриптов, которые будут автоматически вращать и тестировать каждую страницу в разных ориентациях, а затем учитывать не только количество символов, но и их корректность на основе контекстного анализа, который можно выполнить с использованием известных слов из конкретных языков.

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

Заключение

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

Для того чтобы добиться качественного OCR, потребуется немало экспериментов и тестирования, чтобы выработать оптимальный процесс обработки сканов, однако, освоив это, можно ожидать великую экономию времени при работе с большими объёмами многоязычных документов.

Оцените материал
Добавить комментарий

Капча загружается...