Оптическое распознавание текста (OCR)
В файловом хранилище работает ОРТ (Оптическое распознавание текста, OCR) от партнера DBrain. На данный момент работает только распознавание главного разворота внутреннего паспорта РФ и сравнение селфи.
Оптическое распознавание текста (OCR) — это технология, позволяющая автоматически преобразовывать текст на изображениях, сканах документов или фотографиях в редактируемый и поисковый текстовый формат.
OCR используется для извлечения текста из бумажных документов, сканов, фотографий, PDF-файлов и других графических форматов, чтобы с ними можно было работать как с обычным текстом: копировать, редактировать, индексировать и искать.
Применение OCR:
- Автоматизация ввода данных из бумажных документов.
- Поиск и анализ информации в отсканированных архивах.
- Распознавание текстов на фотографиях и сканах для последующего использования в электронных системах.
Настройки
passport_ocr_tags
- Тэги по которым необходимо запустить распознавание паспортаselfie_check_tags
- Тэги по которым необходимо запустить проверку селфиconfidence_check_mode
- Если
avg
, то считается среднее значение уверенности по всем полям - Если
min
, то сравнивается минимальное значение по всем полям (По умолчанию)
- Если
confidence_level
- Минимальный порог уверенности после распознавания. Используется для формирования ответа ОРТю (По умолчанию = 0,98)
Методы API оптического распознавания текста (OCR)
Метод | URL | Описание |
---|---|---|
POST | api/files/{fileId}/ocr | Запуск OCR-обработки файла |
GET|HEAD | api/files/{fileId}/ocr/{ocrId} | Получить результат OCR по ID |
Запуск OCR-обработки файла
POST /api/files/{fileId}/ocr
Описание
Метод позволяет инициировать процесс оптического распознавания текста (OCR) для указанного файла. После выполнения OCR система возвращает информацию о результате распознавания, типе документа и состоянии процесса.
При положительном результате OCR в пользовательском интерфейсе UI у соответствующего документа появляется статус «Проверка пройдена».
Параметры запроса
Параметр | Тип | Описание |
---|---|---|
fileId | integer | Уникальный идентификатор файла, для которого запускается OCR. |
Пример запроса
POST /api/files/238/ocr
Пример успешного ответа
{
"status": "ok", // Статус выполнения операции
"timestamp": 1750765283000, // Время выполнения операции (Unix timestamp, мс)
"data": {
"id": 1, // Идентификатор результата OCR (или процесса)
"type": "passport", // Тип распознанного документа
"state": "OK" // Состояние процесса OCR
}
}
Пример ответа с ошибкой
{
"status": "error", // Статус выполнения операции
"timestamp": 1750834012000, // Время выполнения операции (Unix timestamp, мс)
"data": {
"message": "OCR type not found for tags: 8", // Сообщение об ошибке
"code": "OCR_TYPE_NOT_FOUND", // Код ошибки
"type": "App\\Exceptions\\OCRTypeNotFoundException", // Тип ошибки
"details": [] // Детализация ошибки
}
}
Получить результат OCR по ID
GET|HEAD /api/files/{fileId}/ocr/{ocrId}
Описание
Метод позволяет получить информацию о конкретном результате оптического распознавания текста (OCR) для указанного файла. Позволяет узнать статус выполнения OCR, тип распознанного документа и идентификатор результата.
Параметры запроса
Параметр | Тип | Описание |
---|---|---|
fileId | integer | Уникальный идентификатор файла. |
ocrId | integer | Уникальный идентификатор результата OCR. |
Пример запроса
GET /api/files/238/ocr/1
Пример успешного ответа
{
"status": "ok", // Статус выполнения операции
"timestamp": 1750772435000, // Время выполнения операции (Unix timestamp, мс)
"data": {
"id": 1, // Идентификатор результата OCR (или процесса)
"type": "passport", // Тип распознанного документа
"state": "OK" // Состояние процесса OCR
}
}
Описание полей
Поле | Тип | Описание |
---|---|---|
status | string | Статус выполнения операции ("ok"/"error") |
timestamp | integer | Время выполнения операции (Unix timestamp, мс) |
data | object | Результат операции |
data.id | integer | Идентификатор результата OCR (или процесса) |
data.type | string | Тип распознанного документа (например, "passport") |
data.state | string | Состояние процесса OCR (например, "OK", "FAILED") |
data.message | string | Сообщение об ошибке (только для error) |
data.code | string | Код ошибки (только для error) |
data.type | string | Тип ошибки (только для error) |
data.details | array | Детализация ошибки (только для error) |