- PVSM.RU - https://www.pvsm.ru -
Прошло около трех месяцев с момента создания нашего первого рабочего образца паспортного сканера [1]. Получив хорошие результаты по качеству и скорости распознавания, мы, подняв на флаг практически Олимпийский девиз “Быстрее! Качественнее! Компактнее!”, приступили к созданию следующей модели ПАК. Если вам интересно, что у нас получилось в результате, добро пожаловать под кат.

Оптическая система является сердцем нашего ПАК. Поработав в первых версиях с web-камерой от Microsoft, нам удалось сформулировать ряд требований к камере для будущих моделей:
В результате мы остановились на бескорпусной малоформатной USB-камере MI5100 [2] от известного китайского производителя систем видеонаблюдения и USB-камер ELP [3].

Дешевая, компактная, предоставляющая ручную фокусировку, возвращающая изображения до 5 MPix, функционирующая под различными операционными системами, эта “идеальная” на первый взгляд камера обладает несколькими недостатками:
Как и в первой модели, в качестве материала для корпуса мы выбрали мебельные листы ДСП. У такого решения есть несколько преимуществ:
Использование широкоугольной малогабаритной камеры позволило нам существенно уменьшить высоту устройства: 146 мм против 276 мм у предыдущего образца. ПАК предназначен для распознавания документов размера не более А5, что непосредственно определяет длину и ширину сканера.

На мой взгляд эта часть статьи самая интересная. Если вы читали наш предыдущий пост про программно-аппаратный комплекс [1], то наверняка обратили внимание на наши планы заполнить пустоты коробки вычислительными мощностями, чтобы само распознавание документов выполнялось тоже внутри ПАК. Как вы могли заметить по первому рисунку, мы это сделали и готовы поделиться своим опытом.
Итак, в качестве основного вычислительного устройства выбран одноплатный 8-ядерный мини-компьютер Odroid-XU4 [4], выполненный на архитектуре ARM. Одноплатный компьютер содержит четыре ядра Cortex-A15 с тактовой частотой 2,0 ГГц и четыре ядра Cortex-A7 с тактовой частотой 1,4 ГГц, 2 ГБ оперативной памяти, сетевой контроллер Gigabit Ethernet, два порта USB 3.0, один порт USB 2.0, а также HDMI для подключения монитора. В качестве операционной системы выбрали Lubuntu.

Собрав ядро распознавания на микро-компьютере (благо, трудностей тут не возникло, мы регулярно собираем SDK под мобильные платформы Android и iOS), убедившись, что документы распознаются мы встали перед вопросом — как будем возвращать результат распознавания клиенту наружу.
Первый очевидный подход — поднять на Odroid web-сервер и обращаться к нему за результатами распознавания. Легко в реализации, но не то, что мы хотели (а хотели мы именно автономное устройство, позволяющее сократить процедуру интеграции фактически до нуля).
Альтернативное решение пришло как всегда неожиданно. А что если научить наш ПАК притворяться USB-клавиатурой? Примерно как сканер штрих-кодов. В таком виде интеграция нашего ПАК в готовые информационные системы по сути заключается в присоединении устройства к пустому разъему USB и настройке (на устройстве) правильной последовательности нажатия “виртуальных” клавиш.
Вдохновившись идеей, докупили Odroid Shifter Shield, Arduino Micro, комплект проводов, пару кнопок и светодиод. Запрограммировали Arduino (благо, вместе с Arduino поставляется очень подробное руководство), “повесили” на кнопку запуск процедуры распознавания, на светодиод — обратную связь о качестве распознавания.
Будучи приверженцем поговорки “лучше один раз увидеть чем семь раз услышать”, делимся с вами видео работы полностью автономного сканера.
Проведенные эксперименты плавно подвели нас к важной научно-социальной цели: создать промышленный образец, позволяющий полностью решить проблему ввода паспортных данных на проходных, в банках, билетных кассах, а также подумать об импортозамещении.
Автор: Smart Engines Ltd.
Источник [5]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/programmirovanie/118342
Ссылки в тексте:
[1] первого рабочего образца паспортного сканера: https://habrahabr.ru/company/smartengines/blog/278257/
[2] MI5100: http://www.elpcctv.com/mi5100-5mp-usb-camera-module-usb20-aptina-125inch-color-cmos-sensor-100degree-lens-p-221.html
[3] ELP: http://www.elpcctv.com/
[4] Odroid-XU4: http://www.hardkernel.com/main/products/prdt_info.php?g_code=G143452239825
[5] Источник: https://habrahabr.ru/post/281857/
Нажмите здесь для печати.