Общие принципы работы с ROBIN OCR:
Для отправки документа на распознавание нужно выполнить минимум 2 запроса. Сначала отправляется запрос на создание пакета, в запрос передается единственное изображение пакета или первое. Запрос возвращает GUID пакета. Если изображений в пакете должно быть несколько, то в последующих запросах эти изображения добавляются к пакету (по одному). Завершающим запросом надо запустить пакет на обработку. Во второй и последующие запросы передается GUID созданного пакета.
Формат результата настраивается заранее, в сценарии.
Пользователь будет получать результат в виде коллекции json-объектов или xml-контекстов. С полученными результатами можно работать действиями студии.
Список классов пакета пользователь должен знать перед запуском действия.
Классы пакетов будут настроены в системе инженером, нужно выбрать класс, подходящий для обработки изображения. Имя класса пакета - это имя настроенного проекта. Имя класса пакета нужно указывать при создании пакета (обязательно). Имя пакета надо задавать в запросе.
Когда робот будет завершать работу с ошибкой, в тексте ошибки будет отображаться причина.
Если статус документа не "export", то робот не сможет получить результат и пропустит документ. Пользователь сам должен будет передвинуть документ в статус "экспорт" на сервере. Нужно провести валидацию файла вручную и отправить его на экспорт, путем внесения и принятия изменений в нем.
Статусы:
- import – импорт => ждать смены статуса
- recognize – распознавание =>ждать смены статуса
- validation – валидация=> вручную менять статус в системе Сойки
- export – экспорт => готово к выгрузке
- deleted - пакет был удален
- inaccessible - пакет недоступен
- quality control - если пользователь отправил по неправильному сценарию, вручную менять статус в системе Сойки.
- Если таймаут истекает до того как получим распознанный текст будет получен пустой результат, действие не завершается с ошибкой.
Интерфейс Сойки.
Аутентификация:
При первом подключении необходимо заходить через браузер, chrome предпочтительно. admin, admin.
Для получения доступа к функциям rest-сервиса требуется аутентификация – BasicHttpAuth, логин и пароль передаются в заголовке http, при этом логин в открытом виде, а пароль – зашифрованный MD5.
Можно сохранить учетную запись в браузере. у пользователя есть доступ только к определенным действиям, это настраивается при регистрации.
В двух вкладках открывают сразу же 2 модуля. Модуль администратора: http://localhost/administrator. Модуль валидации: http://localhost/validation.
Аутентификация при подключении через браузер - обязательная процедура для каждого пользователя. Личный логин и пароль пользователей связан с личными настроенными сценариями.
Просмотр и валидация документа.
В режиме просмотра default с зажатой клавишей Shift можно выделить область, чтобы внести в нее правки.
Когда правки применены, изменения отражаются в системе.
Когда пользователь сохранил изменения, пакет документ был принят пользователем, статус документа изменился с "валидации" на "экспорт".
Файл прошел валидацию вручную.
Файл получил статус "Экспорт".
Способы обработки результата.
Встроенные в студию действия по работе с JSON - файлами.
Пример составленной цепочки действий для обработки результата. Для распараллеливания процессов распознавания изображений можно использовать Очереди.
Представленные для текущего пользователя классы пакетов.
Профиль распознавания по умолчанию -default. Интерфейс настройки профиля распознавания.
Пример исходного файла.
Пример результирующего файла.
Составим последовательность действий, чтобы файл сохранился на компьютер.
Результат в виде json-файла. Нет необходимости сохранять полученный файл. Его можно сразу же обрабатывать действиями студии.
Действия студии, если результат получен в виде xml-файла. Далее можно воспользоваться действием "Получить элементы по XPath", чтобы получить необходимые для дальнейшей работы значения.
Действие "Отправить на распознавание" / "Send files for recognition"
Действие отправляет файл на распознавание во внешнее приложение Soica.
Первое действие из связки Отправить+Получить. Отправить файл на распознавание и Получить результат распознавания разделено на 2 действия для случаев, когда система будет долго обрабатывать большой файл, поданный на вход.
Настройки
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
URL | URL | Ссылка для аутентификации на сервисе Сойки. | Robin.String. | http://localhost/administrator | Да |
Логин | Login | Логин для входа. | Robin.String. | admin | Да |
Пароль | Password | Пароль для входа. | Robin.Password. | admin | Да |
Класс пакета | Class | Класс пакета, которым будет обрабатываться сценарий. | Robin.String. | Имя класса пакета | Да |
Файл | File | Путь к файлу, из которого необходимо извлечь текст. Поддерживаемые форматы изображений: JPEG, PDF, TIFF, BMP, PNG, DOCX, GIF. | Robin.FilePath. | C:\Users\Документ\1.jpg | Да |
Результаты | |||||
ID | ID | Идентификационный номер пакета | Robin.String. |
Особые условия использования
Нужно заранее получить данные для аутентификации в сервисе Сойки.
Если за 120 секунд сервер не отправил ответ, то сервер недоступен.
Робот вернет ошибку, если:
в поле "Файл" подается неверный формат.
неверный логин или пароль подключения. 403
неверно указан путь, ссылка - 404
Действие "Получить результат распознавания" / "Get recognition result"
Извлечение текста из файла файла изображения с использованием пред-настроенного профиля распознавания.
Настройки
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
URL | URL | Ссылка для аутентификации на сервисе Сойки. | Robin.String | http://localhost/administrator | Да |
Логин | Login | Логин для входа. | Robin.String | admin | Да |
Пароль | Password | Пароль для входа. | Robin.Password | admin | Да |
ID | ID | Идентификационный номер пакета | Robin.String | 65434 | Да |
Тип результата | Result type | Формат, в котором будут представлены результаты. Выпадающий список из элементов: XML, JSON. Значение по умолчанию: XML. | Robin.String | JSON | Нет |
Профиль распознавания | Profile | Профиль распознавания для получения результатов. Профили создаются в самой Сойке и пользователь заранее знает, какой необходимо выбрать. Значение по умолчанию задается системой при создании класса пакетов и называется default. | Robin.String | default | Нет |
Результаты | |||||
Результат | Result | Коллекция json-объектов или xml-контекстов, содержащих распознанные данные. Если распознание документа еще в процессе, то результат не заполнен. | Robin.Collection | ||
Статус | Status | Статус распознавания документа. | Robin.String |
Особые условия использования
Необходимо запустить действие "Отправить на распознавание" перед действием "Получить результат распознавания".
Чтобы получить результат, нужно чтобы файл был распознан системой и переведен в статус "export". Если робот при проверке статуса документа робот получил любой статус, кроме "export", то робот вернет полученный статус документа и пустой файл результата распознавания.
Если за 120 секунд сервер не отправил ответ, то сервер недоступен.
Робот вернет ошибку, если:
неверно указан путь, ссылка - 404
неверный логин или пароль подключения. 403
выбранный сценарий обработки не подходит. 401
внутренняя ошибка сервера -500.
личные данные и ID документа не принадлежат одному пользователю.
Робот НЕ вернет ошибку, если:
- на изображении не найден текст.
- на изображении не распознан текст.
статусы "quality control", "validation", который нужно менять вручную => вызвать rest api для перевода в другой модуль или открыть пакет на валидации, исправить ошибки и отправить его на экспорт.
Во всех этих случаях робот вернет пустой результат распознавания файла.
Если неверно указан язык текста, настроенный в алгоритме, то результатом, возможно, будет не пустая строка, совпадающие символы из алфавита.
Действие "Распознать" / "Recognize files"
Извлечение текста из файла.
Настройки
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
URL | URL | Ссылка для аутентификации на сервисе Сойки. | Robin.String | http://localhost/administrator | Да |
Логин | Login | Логин для входа. | Robin.String | admin | Да |
Пароль | Password | Пароль для входа. | Robin.Password | admin | Да |
Класс пакета | Class | Класс пакета, которым будет обрабатываться сценарий. | Robin.String. | Имя класса пакета | Да |
Файл | File | Путь к файлу, из которого необходимо извлечь текст. Поддерживаемые форматы изображений: JPEG, PDF, TIFF, BMP, PNG, DOCX, GIF. | Robin.FilePath. | C:\Users\Документ\1.jpg | Да |
Тип результата | Result type | Формат, в котором будут представлены результаты. Выпадающий список из элементов: XML, JSON. Значение по умолчанию: XML. | Robin.String | JSON | Нет |
Профиль распознавания | Profile | Профиль распознавания для получения результатов. Профили создаются в самой Сойке и пользователь заранее знает, какой необходимо выбрать. Значение по умолчанию задается системой при создании класса пакетов и называется default. | Robin.String | default | Нет |
Тайм-аут | Time out | Время в миллисекундах, в течение которого будет происходить работа действия. | Robin.Numeric | 1000000 | Нет |
Результаты | |||||
Результат | Result | Коллекция json-объектов или xml-контекстов, содержащих распознанные данные. Если распознание документа еще в процессе, то результат не заполнен. | Robin.Collection | ||
Статус | Status | Статус распознавания документа. | Robin.String |
Особые условия использования
Робот вернет ошибку, если:
неверно указан путь, ссылка - 404
неверный логин или пароль подключения. 403
выбранный сценарий обработки не подходит. 401
внутренняя ошибка сервера -500.
личные данные и ID документа не принадлежат одному пользователю.
Примеры использования
Отправить + получить
Задача: распознать текст на документе и сохранить возможность выполнять еще какие либо действия, пока происходит обработка поданного на вход документа.
Решение: использовать действия «Отправить на распознавание», "Получить результат распознавания".
Реализация:
- Последовательно установить действия «Отправить на распознавание» и "Получить результат распознавания" на рабочую область.
- Заполнить параметры действий корректными данными:
- параметры «Отправить на распознавание»;
- параметры "Получить результат распознавания".
- параметры «Отправить на распознавание»;
- Запустить робота по кнопке "Старт" в верхней панели.
Результат: Робот вернет обработанные файлы. Результат представлен в виде коллекции с json-объектами или xml-контекстами. Статус "export".
Распознать
Задача: распознать текст на документе.
Решение: использовать действие "Распознать".
Реализация:
- Установить действие "Распознать"на рабочую область.
Заполнить параметры действия корректными данными.
- Запустить робота по кнопке "Старт" в верхней панели.
Результат: Робот вернул обработанные файлы. Результат представлен в виде коллекции с json-объектами или xml-контекстами. Статус "export".