Технология распознавания паспорта уже давно лежит в реестре необходимых решений у крупных корпораций, предоставляющих услуги B2C. Большая тройка операторов связи, крупные банки и страховые компании, Ж/Д и авиаперевозчики, билетные агрегаторы успешно интегрировали в собственные информационные системы технологии распознавания документов Smart IDReader, переведя качество предоставляемой услуги на новый уровень. Но для многих компаний, которые относятся к среднему и малому бизнесу, автоматизация процессов ввода данных из документов клиентов необходима, а интеграция новой функциональности путем встраивания библиотек — это дорого или даже недоступно. И как им быть? В сегодняшней статье мы расскажем вам про то, как за полчаса реализовать распознавание паспорта в практически любой информационной системе.
RPA (Robotic Process Automation) – это передача функций сотрудников, выполняющих рутинную работу, программному модулю (роботу), который действует по определенному алгоритму. Помните, в моей предыдущей статье про паспортные сканеры я рассказывал, что наш сканер умеет «притворяться клавиатурой», чтобы возвращать распознанные данные в нужные текстовые поля точно так же, как это делает человек? Так вот, RPA – это тоже эмуляция, только не на аппаратном, а на программном уровне. Фактически мы получаем «цифрового сотрудника», который способен воспроизводить действия человека при взаимодействии с различными информационными системами, используемыми нами в бизнес-процессах.
Признаемся честно, наше личное отношение к RPA не самое позитивное: автоматизация серьезных промышленных бизнес-процессов с помощью роботов у нас, скорее, ассоциируется с «поделкой» на скорую руку, скрученную в гараже и перемотанную сверху донизу синей изолентой. Но давайте не будем лезть в этот «огород», лучше просто посмотрим на рынок IT и поймем, что там искренне любят RPA и такие «гаражные поделки». Кроме того, в некоторых случаях (например, при использовании легаси-систем), другого способа просто нет.
Вернемся к распознаванию паспорта. В сегодняшней статье в формате step-by-step будет рассказано, как за 30 минут добавить функционал распознавания в практически любую информационную систему с пользовательским интерфейсом. В качестве такой информационной системы у нас будет выступать Microsoft Excel с функционалом форм.
За последнее время множество программных продуктов, предоставляющих функционал RPA разросся: от простеньких и бесплатных до навороченных и дорогих. Практически все из них умеют запускать движки OCR общего назначения, некоторые системы RPA даже обладают специализированными модулями для распознавания типизированных документов. Так, Smart IDReader SDK уже поставляется со специальным модулем для UiPath, российский продукт ELMA RPA прямо в базовой поставке будет содержать интегрированный движок распознавания паспортов. Кстати, обе эти программы имеют бесплатную Community-версию.
На этом этапе следует конкретизировать наш бизнес-процесс. Нужно понять, когда должен запускаться робот, как обеспечивается захват изображения (с помощью сканера, веб-камеры или путем выбора изображения из директории на диске), установить, какие поля заполнять, как обеспечивается переход между полями, какие действия предпринять в случае успешного автоматического ввода данных и что делать, если какие-то поля (или даже весь паспорт целиком) не удалось распознать.
В нашем примере мы будем вводить паспортные данные из сохраненного на компьютере изображения. Созданный нами робот будет запускаться по нажатию комбинации клавиш, позволять выбрать изображение, распознавать и заполнять целевые поля.
Самый интересный шаг. С помощью дизайнера RPA процесса надо преобразовать осмысленную на прошлом шаге информацию о бизнес-процессе в конкретные действия робота! Наш робот реализуется последовательностью следующих элементов: выбор файла, распознавание файла и ввод текстовой информации (данное действие повторяется для всех полей паспорта).
В этой схеме элемент «Process image file» как раз отвечает за распознавание паспорта из файла с помощью движка Smart IDReader. Особенности настроек элементов вывода текста зависит от использования конкретной RPA системы, но везде тривиален: зачастую достаточно просто “ткнуть мышкой” в поле на форме, куда RPA должна будет ввести распознанную текстовую информацию (всю системную рутину, связанную с получением уникального идентификатора поля, RPA берет на себя).
Прежде чем устанавливать робота на боевые машины, следует его запустить в режиме отладки и проверить функционирование. Отладка процесса роботизации ничем не отличается, по сути, от отладки обычной программы: можно так же ставить точки останова, проходить по процессу шаг за шагом, начинать процесс с нужной точки и прочее.
Как только робот готов, его нужно инсталлировать на рабочие станции. В зависимости от конкретной системы RPA, это делается по-разному.
Теперь перейдем к результатам. Следующее видео демонстрирует работу робота.
Здесь для целей демонстрации специально добавлена межсимвольная пауза 300 мс, иначе робот очень быстро «долбит» по клавишам, что на видео смотрится совсем некрасиво. В реальных системах, конечно, скорость ввода надо увеличивать.
Вот как вы можете добавить распознавание паспорта в любой бизнес процесс без программирования, интеграции, и серьезных технических заморочек. Собственно, для этого и был придуман RPA. О безопасности персональных данных в таком решении беспокоиться не нужно, потому что Smart IDReader — это библиотека, а не сервис, благодаря чему работает внутри робота без обращения на сторонние ресурсы.
Спасибо за внимание.
RPA (Robotic Process Automation) – это передача функций сотрудников, выполняющих рутинную работу, программному модулю (роботу), который действует по определенному алгоритму. Помните, в моей предыдущей статье про паспортные сканеры я рассказывал, что наш сканер умеет «притворяться клавиатурой», чтобы возвращать распознанные данные в нужные текстовые поля точно так же, как это делает человек? Так вот, RPA – это тоже эмуляция, только не на аппаратном, а на программном уровне. Фактически мы получаем «цифрового сотрудника», который способен воспроизводить действия человека при взаимодействии с различными информационными системами, используемыми нами в бизнес-процессах.
Признаемся честно, наше личное отношение к RPA не самое позитивное: автоматизация серьезных промышленных бизнес-процессов с помощью роботов у нас, скорее, ассоциируется с «поделкой» на скорую руку, скрученную в гараже и перемотанную сверху донизу синей изолентой. Но давайте не будем лезть в этот «огород», лучше просто посмотрим на рынок IT и поймем, что там искренне любят RPA и такие «гаражные поделки». Кроме того, в некоторых случаях (например, при использовании легаси-систем), другого способа просто нет.
Вернемся к распознаванию паспорта. В сегодняшней статье в формате step-by-step будет рассказано, как за 30 минут добавить функционал распознавания в практически любую информационную систему с пользовательским интерфейсом. В качестве такой информационной системы у нас будет выступать Microsoft Excel с функционалом форм.
Шаг 1. Выбор системы RPA
За последнее время множество программных продуктов, предоставляющих функционал RPA разросся: от простеньких и бесплатных до навороченных и дорогих. Практически все из них умеют запускать движки OCR общего назначения, некоторые системы RPA даже обладают специализированными модулями для распознавания типизированных документов. Так, Smart IDReader SDK уже поставляется со специальным модулем для UiPath, российский продукт ELMA RPA прямо в базовой поставке будет содержать интегрированный движок распознавания паспортов. Кстати, обе эти программы имеют бесплатную Community-версию.
Шаг 2. Формализация процедуры ввода паспортных данных
На этом этапе следует конкретизировать наш бизнес-процесс. Нужно понять, когда должен запускаться робот, как обеспечивается захват изображения (с помощью сканера, веб-камеры или путем выбора изображения из директории на диске), установить, какие поля заполнять, как обеспечивается переход между полями, какие действия предпринять в случае успешного автоматического ввода данных и что делать, если какие-то поля (или даже весь паспорт целиком) не удалось распознать.
В нашем примере мы будем вводить паспортные данные из сохраненного на компьютере изображения. Созданный нами робот будет запускаться по нажатию комбинации клавиш, позволять выбрать изображение, распознавать и заполнять целевые поля.
Шаг 3. Программирование скрипта ввода данных
Самый интересный шаг. С помощью дизайнера RPA процесса надо преобразовать осмысленную на прошлом шаге информацию о бизнес-процессе в конкретные действия робота! Наш робот реализуется последовательностью следующих элементов: выбор файла, распознавание файла и ввод текстовой информации (данное действие повторяется для всех полей паспорта).
В этой схеме элемент «Process image file» как раз отвечает за распознавание паспорта из файла с помощью движка Smart IDReader. Особенности настроек элементов вывода текста зависит от использования конкретной RPA системы, но везде тривиален: зачастую достаточно просто “ткнуть мышкой” в поле на форме, куда RPA должна будет ввести распознанную текстовую информацию (всю системную рутину, связанную с получением уникального идентификатора поля, RPA берет на себя).
Шаг 4. Отладка робота
Прежде чем устанавливать робота на боевые машины, следует его запустить в режиме отладки и проверить функционирование. Отладка процесса роботизации ничем не отличается, по сути, от отладки обычной программы: можно так же ставить точки останова, проходить по процессу шаг за шагом, начинать процесс с нужной точки и прочее.
Шаг 5. Инсталляция робота
Как только робот готов, его нужно инсталлировать на рабочие станции. В зависимости от конкретной системы RPA, это делается по-разному.
Теперь перейдем к результатам. Следующее видео демонстрирует работу робота.
Здесь для целей демонстрации специально добавлена межсимвольная пауза 300 мс, иначе робот очень быстро «долбит» по клавишам, что на видео смотрится совсем некрасиво. В реальных системах, конечно, скорость ввода надо увеличивать.
Вот как вы можете добавить распознавание паспорта в любой бизнес процесс без программирования, интеграции, и серьезных технических заморочек. Собственно, для этого и был придуман RPA. О безопасности персональных данных в таком решении беспокоиться не нужно, потому что Smart IDReader — это библиотека, а не сервис, благодаря чему работает внутри робота без обращения на сторонние ресурсы.
Спасибо за внимание.
Alexufo
Такие системы очень популярны в вебе. Ввод через эмуляцию клавы не требует никаких установок в систему кроме браузера. Главное, второй язык системы как английский настроить и стандарт чисел обычный, а то прилетать могут ????? (77542) и не проходить валидатор.
У таких систем один большой недостаток — через эмуляцию клавы не передать фото. Точнее можно конечно же, в виде base64, или же сохранять в папку в фоне, а в формочку вставлять имя файла с путем. Но набрать клавой даже без задержки 15кб строки — приличное время.
А фотки часто требуют, поэтому формы часто состоят из двух экранов — автоматизированный ввод строк, и кнопочки browse для фотографии. Что сильно печалит, ведь разработчики систем опираются на стандарты в индустрии и гордят свои полуавтоматы.
usilinsergey
Да, веб формы — любимое место использования роботов. Но ведь помимо текста, роботы могут точно так же автоматизировать и «прикладывание» фотографии: просто эмулировать нажатие кнопочки browse, прикрепить файл с фоткой.
Alexufo
Роботы, помогающие запуливать фото превращаются в роботов, в которые тоже нужно закидывать данные каким-либо роботом. Они так же требуют соблюдать структуру их данных. Та же табличка эксель с путями к фото. А после — написание какого нибудь макроса, для работы с требуемой веб формой, где нужно описать сценарий заполнения.
В итоге вместо одной формы — человек заполняет две + макрос. Если поток большой и редкий — это оправдано. Но если не регулярный — проще прикреплять фото руками. Иначе процесс состоит из банальных задач, которые в сумме могут больше морочить голову своей связкой время от времени.
Фотку можно было бы все таки передавать в base64 как меньшее зло. Опцией включать сжатие какое нибудь HEIC, а на стороне браузера декодировать в битмап или jpg. А то и класть ее в буфер обмена и втавлять в веб через ctrl+v, если поставщик OCR подразумевает хоть какую-то установку софта, а не чистую эмуляцию клавы.
usilinsergey
Насколько я понял, поставщик OCR как раз и не поставляет свой собственный робот-эмулятор клавиатуры, а предлагает специальный плагин для промышленных RPA, которые умеют много чего дополнительного (в том числе «запулить фото» или вставлять фото из буфера через ctrl+v).