/opencv_test

Тестовое задание по OpenCV

Primary LanguagePython

Тестовое задание по OpenCV.

Определение сигнала светофора для дальнейшей фиксации проезда на красный. В рамках данной задачи жёлтый сигнал приравнивается к зелёному.

Реализованный вариант

Самое простое решение в виде сервера MJPEG на Flask. Расчитано на 1 клиента. Сильно жрёт ресурсы.

Demo: http://test.16bc.ru/

Примечание

Иногда частота мерцания светодиодов светофора близка к частоте кадров стрима, и сигнал "гаснет" (в т.ч. на стриме первоисточника), из-за чего он неверно распознаётся. Дублирующий светофор проблему не решает, т.к. имеет другую частоту "угасания".

Другие возможные варианты реализации и доработки:

  1. Использовать брокер сообщений в качестве посредника.
  2. Полученный от OpenCV стрим перекодировать и перераздать с помощью GStreamer, vlc и т.п., скормив плееру на фронте.
  3. Использовать готовые решения, например Vidgear, который был протестирован на данной задаче: https://github.com/16bc/omk_test_2