Извлечение данных
Извлекаем данные из изображений документов и возвращаем их в структурированном виде
Полученные из сервиса данные можно использовать для предзаполнения онлайн-форм, сравнения с данными в CRM-системах, идентификации клиента и в десятках других бизнес-сценариев.
Что делает сервис:
Находит документы на фото и сканах
Обрабатывает многостраничные файлы в форматах PDF и DJVU
Отделяет документы от фона — бабушкиных ковров и узорчатых скатертей
Поправляет повёрнутые и зеркально отражённые документы
Извлекает данные из некачественных фото:
обрезанные;
смазанные;
бликующие;
с наложением посторонних предметов.
Если вы собираетесь работать только с качественными документами, воспользуйтесь сервисами проверки перед извлечением данных
Как начать работать с сервисом извлечения данных
Есть 5 популярных способов взаимодействия с сервисом. Для любого вам нужен ключ лицензии. Чтобы получить ключ, напишите нам в телеграм или на [email protected].
Подготовьте изображение документа для теста. Если у вас такого нет, используйте паспорт РФ из Википедии.
Через веб-демо
Откройте demo.dbrain.io
Введите ключ лицензии в поле «Токен» и нажмите «Применить»
Выберите «Документы с чёткой структурой»
Нажмите кнопку «Выберите файл для распознавания»
Укажите изображение, которое нужно распознать
Нажмите кнопку «Распознать»
Через терминал
Обратитесь к методу /recognize по адресу latest.dbrain.io. В этом способе только два обязательных параметра:
token— ваш ключ лицензииimage— файл с изображением документа
Запрос curl должен выглядеть так:
Через Swagger
Подготовьте ключ лицензии
Откройте Swagger и нажмите кнопку
Authorizeв правом верхнем углуВведите свой токен в любое поле и нажмите
AuthorizeПрокрутите вниз до раздела
/pipelines/run/recognize, нажмите на негоВ открывшемся разделе нажмите на кнопку
Try it outПрокрутите страницу вниз до раздела
Request bodyНажмите на кнопку
Выберите файлпунктаimageУкажите изображение, которое нужно распознать
Нажмите кнопку
ExecuteОтвет сервиса появится в пункте
Response bodyразделаResponsesПолученный на этом этапе
Curlмы рекомендуем использовать как основу для написания интеграции с API сервиса Dbrain
Через Python
Код использует библиотеку requests для отправки POST-запроса с файлом изображения. Функция open() используется для открытия файла изображения в двоичном режиме и передачи его в параметр files. Параметр headers используется для установки заголовка accept в значение application/json. Ответ от сервера сохраняется в переменной response.
Тело запроса передавайте в кодировке UTF-8.
Параметры запроса к API
Вы можете использовать эти параметры с любыми видами документов.
Проверка типа документа
doc_type — string array
Поведение по умолчанию: сервис извлекает данные из всех поддерживаемых типов документов, которые классификатор документов найдёт в файле.
Если вам нужно извлечь данные только из одного типа документа, укажите этот тип в параметре doc_type:
Для извлечения данных только из главного разворота Паспорта РФ укажите
doc_type=passport_mainДля извлечения данных из нескольких типов документов допишите их в запрос через
&doc_type=. Например, вам нужен главный разворот и прописка Паспорта РФ. В запросе это будет выглядеть так:doc_type=passport_main&doc_type=passport_registration
Режим распознавания
mode — string
Поведение по умолчанию: mode=default
Вы можете использовать сервис классификации документов отдельно от сервиса извлечения данных. Построить разную логику обработки документов в зависимости от того какие типы документов классификатор нашёл на изображении.
Для этого передайте сервису извлечения данных результаты работы классификатора: изображение в параметре image и тип документа в параметре doc_type, а также укажите mode=recognize_only. В таком случае сервис не будет запускать лишнюю классификацию документа и вы быстрее получите ответ.
Возврат найденных изображений документов
return_crops — boolean
Поведение по умолчанию: return_crops=false — cервис не возвращает найденные изображения документов.
Если вам нужны найденные сервисом изображения документов, укажите return_crops=true. Сервис вернёт в ответе API изображение в параметре crop.
Перед началом работы с сервисами изучите раздел «Общая информация о сервисах». Там мы рассказываем про допустимые форматы файлов, виды запросов и ответов, набор HTTP-статусов и даём рекомендации по устранению ошибок
В ответе:
task_id— string, идентификатор запроса, формат: 32 символа, 16-ричная строкаitems— массив, который содержит распознанные документыdoc_type— string, тип документа, все типы перечислены в классификации документовfields— string, поля документа, список полей по каждому документу приведён в API-спецификация в Google таблице.text— string, текст поля документаconfidence— number, уровень уверенности алгоритма в корректности извлечения данных из поляcoords— массив, координаты поля на документе, вырезанного и правильно ориентированного, по четырём точкам: верхний левый угол, верхний правый, нижний левый, нижний правый
doc_coords— массив, координаты документа на оригинальном изображении по четырём точкам: верхний левый угол, верхний правый, нижний левый, нижний правыйconfidence— number, уровень уверенности алгоритма в корректности определения типа документа
task_tags— массив string, теги, если они переданы в параметре task_tagspage_count— integer, число страниц в файле, актуально для PDF и DJVUdocs_count— integer, число распознанных документов в файлеtraceback— string, сообщение об ошибке, которое содержит информацию о том, где произошла ошибка в коде и какие функции были вызваны перед ней. Это сообщение может помочь разработчикам понять причину возникновения ошибки и исправить ее. Передайте её нашей службе поддержки.
Остальные поля не несут практического смысла. Оставили их для совместимости со старыми версиями
У каждого типа документа есть свои особенности извлечения. Изучите то, что нужно вам, тут:
Last updated
Was this helpful?
