Лого Сделано у нас
43

Компания «МСТ Компани» завершила проект по распознанию пиксельных (или QR) кодов на потоковом видео

 © www.uralhitech.ru

Резидент технопарка высоких технологий Свердловской области — МСТ Компани продолжает расширять сферу приложения своих компетенций, на этот раз освоено очередное направление — распознавание пиксельных (или QR) кодов на потоковом видео.

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

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

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

 © www.uralhitech.ru

Затем разработчики «решили применить тяжелую артиллерию в виде 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-video

  • Комментарий удален
Написать комментарий
Отмена
Для комментирования вам необходимо зарегистрироваться и войти на сайт,