ico_date
Дата:
24 июня 2022
ico_time
Время:
00:00
Распознание QR кодов на потоковом видео
Резидент технопарка высоких технологий Свердловской области – МСТ Компани продолжает расширять сферу приложения своих компетенций, на этот раз освоено очередное направление - распознавание QR кодов на потоковом видео.

Максим Борноволоков, основатель компании, рассказал о старте работы: «Перед нами поставили следующую задачу: реализовать приложение распознавания QR кодов в потоковом видео. Основные ограничения – жесткий лимит на обработку одного кадра - не более 20 миллисекунд и точность распознавания в X %. Ещё один условием, но не таким жестким, была работа на Linux системе, что является для нас вполне обыденной задачей».

Разработчикам в качестве вводных данных было предоставлено несколько видео фрагментов, на которых можно было производить тестирование нашего приложения, однако из-за NDA показать здесь данные кадры не представляется возможным. Частично, что смогли рассказать разработчики, данные представляют собой черно-белое видео частотой 50 кадров в секунду, где QR код движется в направлении справа налево.

В МСТ Компани поделились подробностями выполнения поставленных задач: «Для работы с видео мы сразу взяли OpenCV и в качестве первого варианта решили проверить реализацию пустого цикла обработки на Python. После первого запуска мы поняли, что реализация данной идеи не принесет требуемого результата, и мы потратим слишком много времени на оптимизацию кода. Стоит отметить, что на обработку в среднем тратилось порядка 300 миллисекунд, и это при отсутствующем коде обработки!»

Затем разработчики «решили применить тяжелую артиллерию в виде C++. Реализацию программы разбили на три этапа: базовая реализация, этап оптимизация кода и финальная версия».
На этапе базовой реализации был написан почти аналогичный код программы на Python, но при этом добавлено распознавание QR кода на базе всё того же OpenCV. В среднем кадр обрабатывался за 15 миллисекунд, но были большие выбросы до 81 миллисекунды, что не вписывалось в заданные рамки задачи.

Основные претензии были к коду распознавания QR кодов. Применяя различные подходы, разработчики сталкивались с тем, что, Класс QRCodeDetector, из библиотеки OpenCV, не очень хорошо справлялся с распознаванием и не очень стабильно себя вёл по времени вычисления.

Поэтому был совершен плавный переход к этапу оптимизации кода. В МСТ Компани решили отказаться от QRCodeDetector и использовать стороннюю библиотеку quirc. Решение оказалось верным, и был сразу получен хороший прирост в скорости обработки – в среднем на кадр требовалось от 10 до 11 миллисекунд, да и точность распознавания стала гораздо выше.

По сути разработчики уже выполнили задачу, поставленную заказчиком, но решили пойти немного дальше и стали повышать достигнутую точность распознавания. Максим Борноволоков: «Самый простой метод с помощью которого мы ещё немного увеличили точность распознавания QR кодов – использование адаптивной бинаризации с помощью метрики mean».

В итоге, финальная версия приложения претерпела ещё несколько изменений. Среди самых значимых можно выделить – поддержку распознавания EAN кодов и адаптацию приложения для работы в виде linux демона.

Завершение работы над проектом резюмировал Максим Борноволоков: «В конечном итоге проект был завершен точно в срок. Клиент получил эффективный инструмент для распознавания QR кодов, который по точности превосходит первоначальные требования. Использование созданного нами программного обеспечения позволило клиенту в значительной степени оптимизировать производственный процесс, и снизить затраты».

Обладая большим опытом в реализации нестандартных и сложных проектов, Команда МСТ готова разработать даже самые требовательные программные решения для оптимизации процессов на предприятии.
МСТ Компани профессионально занимается разработкой и внедрением IT решений и сервисов для малого, среднего и крупного бизнеса уже на протяжении более 9 лет. Среди клиентов компании Почта России, DHL, DPD, несколько десятков банков, включая СКБ и Точка-банк, авиакомпании AzurAir, ИжАвиа, RedWings, ж/д и автотранспортные организации, промышленные предприятия, к примеру, АО «КМЗ».


https://mst-company.ru/kejsy/razrabotka-programmnogo-obespecheniya/raspoznanie-qr-kodov-na-potokovom...

Фотогалерея

1
/
1

Поделилось (0)
Просмотров (45)

Комментарии

Добавить комментарий

Поля, отмеченные * обязательны для заполнения

Нажимая кнопку Подписаться, вы соглашаетесь получать персонализированную информацию и предложения, касающиеся "Технопарк высоких технологий Свердловской области", по электронной почте. Политика конфиденциальности.