Система распознавания номерных знаков в режиме реального времени.Python

Программы на Python
Ответить
Anonymous
 Система распознавания номерных знаков в режиме реального времени.

Сообщение Anonymous »

Я создал систему отслеживания въезда/выезда транспортных средств на парковку, используя YOLOv5-n для обнаружения и распознавания персидских номерных знаков. Система работает, но не в режиме реального времени, как предполагалось, что приводит к задержкам в регистрации транспортных средств.
Аппаратное обеспечение:
  • 2 камеры со скользящим затвором (без глобального затвора)
  • Макс. 90 кадров в секунду при разрешении 1920×??? разрешение (потоки RTSP)
  • ЦП: Core i3 7100 (без выделенного графического процессора)
Стек программного обеспечения:
  • OpenCV + PyTorch (YOLOv5-n для обнаружения номеров, специальный YOLO для символов)
  • Flask API для обслуживания последнего обнаруженного номера
  • MySQL для хранения транспортных средств/журналов
  • Многопоточный захват видео (Vidgear CamGear)
Основной процесс обработки:
  • Захват RTSP-потоков (камеры входа/выхода)
  • Пропуск кадров на основе Processing_interval (для снижения нагрузки)
  • Предварительная обработка: изменение размера, обрезка нижней области (вход), выравнивание гистограммы Y-канала
  • Сначала Модель YOLO обнаруживает ограничивающую рамку пластины
  • Обрезать пластину → вторая модель YOLO распознает символы
  • Результат анализа (преобразованы персидские символы)
  • Для камеры выхода: запросить в базе данных открытый журнал записей и обновить время выхода
Проблема:

Обнаружение отстает от прямой трансляции. С камерами 90 FPS мне приходится пропускать много кадров(

Код: Выделить всё

processing_interval=5
или выше), чтобы поддерживать управляемость использования ЦП, но тогда скорость реагирования в реальном времени падает. Поворотный затвор также может повлиять на размытие изображения.
Что я пробовал:
  • Пропуск кадров
  • Понижение входного разрешения (макс. ширина 960 пикселей)
  • Потоковая обработка для обнаружения отдельно от захвата
  • YOLOv5-n (самая облегченная версия)
Вопрос:

Учитывая мои аппаратные ограничения (только процессор, камеры с рольставнями), каковы наилучшие стратегии для улучшения производительности, близкой к реальному времени?

Мне не нужно полное обнаружение 90 кадров в секунду, но я хочу, чтобы система работала в режиме реального времени (макс. задержка 2–3 секунды). В настоящее время задержки под нагрузкой могут достигать 10+ секунд.

Подробнее здесь: https://stackoverflow.com/questions/798 ... ion-system
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»