Skip to content

yandex-cloud-examples/yc-vision-ocr-recognizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OCR Recognizer

Данный скрипт берет изображения и PDF-документы из бакета Object Storage, отправляет их на распознавание в сервис Vision, после чего – сохраняет результат распознавания обратно в бакет Object Storage.

Скрипт написан на Python поэтому может быть легко разобран, доработан и оптимизирован под ваш сценарий.

Процесс распознавания

Процесс распознавания длинных аудио файлов



  1. Пользователь загружает изображения или документы в поддерживаемых форматах в бакет Object Storage, в директорию (префикс) input.

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

  3. Скрипт скачивает по одному по прямым ссылкам файлы из списка, составленного ранее; и отправляет в сервис Vision.

  4. Сервис Vision получает файл, обрабатывает его и возвращает результат распознавания, который сохраняется в папку result в формате JSON и в формате TXT.

Использование

Скрипт может быть запущен локально, для этого необходимо указать следующие переменные окружения:

Переменная Описание
S3_BUCKET Имя бакета в Object Storage
S3_PREFIX Префикс (или директория) для входящих файлов, например, input
S3_PREFIX_OUT Префикс (или директория) для результатов обработки, например, result
S3_KEY ID статического ключа доступа
S3_SECRET Секрет статического ключа доступа
API_SECRET Секрет API-ключа
FOLDER_ID ID каталога

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

Для того, чтобы создать ключ для S3 и API-ключ – необходимо создать сервисную учетную запись, а также – назначить роли storage.editor и ai.vision.user.

Примеры использования

Можно воспользоваться готовым Terraform модулем, который создает все необходимые ресурсы для начала обработки изображений и документов.