Общее описание#
VisionLabs LUNA CARS – система, предназначенная для детектирования, трекинга объектов, определения атрибутов транспортных средств и распознавания автомобильных номеров. Система состоит из трех подсистем:
- CARS Analytics
- CARS API
- CARS Stream
- ANPR Stream
LUNA CARS включает в себя четыре подсистемы:
- CARS API – подсистема детекции и распознавания атрибутов транспортных средств (ТС) и государственных регистрационных знаков (ГРЗ) на изображениях в режиме реального времени.
- CARS Stream – подсистема детекции ТС, ГРЗ, пешеходов и животных и трекинга ТС и ГРЗ в видеопотоке и определения лучших кадров.
- ANPR Stream – подсистема интеграции ANPR-камер в CARS Analytics.
- CARS Analytics – подсистема сбора, хранения и отображения результатов работы CARS API и CARS Stream посредством веб-интерфейса.
VisionLabs LUNA CARS позволяет в режиме реального времени:
- детектировать ТС;
- определять тип ТС;
- определять марку и модель ТС;
- определять принадлежность ТС к экстренным службам, специальному и общественному транспорту;
- определять цвет ТС;
- определять количество осей ТС;
- рассчитывать скорость ТС;
- подсчитывать количество ТС;
- предоставлять доступ к событиям распознавания и детекции ТС посредством веб-интерфейса;
- детектировать ГРЗ;
- распознавать символы ГРЗ;
- определять страну принадлежности ТС по ГРЗ;
- определять наличие дыма и/или огня;
- детектировать пешеходов;
- детектировать животных;
- управлять видеопотоками.
Схема работы LUNA CARS#
Схема работы LUNA CARS представлена на Рисунке (Рисунок 1).
Таблица 1. Описание схемы LUNA CARS
Компонент | Описание |
---|---|
Источники | RTSP-видеопотоки, видеофайлы или изображения, содержащие ТС, ГРЗ, пешеходов и/или животных |
ANPR камера | Источник вида ANPR камера, которая содержит изображения ТС, ГРЗ |
Балансировщик нагрузки | Сервис для распределения запросов и ответов между несколькими запущенными копиями CARS API или CARS Stream и внешней системой аналитики и сбора информации. Поддерживается работа только с Nginx |
CARS Stream | Подсистема детекции ТС, ГРЗ, пешеходов и животных и трекинга ТС и ГРЗ в видеопотоке и определения лучших кадров |
ANPR Stream | Подсистема интеграции ANPR-камер в CARS Analytics |
CARS API | Подсистема детекции и распознавания атрибутов ТС и ГРЗ |
CARS Analytics | Подсистема сбора, хранения и отображения результатов работы CARS API и CARS Stream посредством веб-интерфейса, включающая базу данных PostgreSQL |
Диаграммы взаимодействия компонентов LUNA CARS#
Диаграмма работы LUNA CARS с видео представлена на Рисунке (Рисунок 2).
Таблица 2. Описание диаграммы последовательности работы с видеопотоками
Шаг | Описание |
---|---|
(1) | CARS Stream получает видеопоток или видеофайл от источников |
(2) | CARS Stream делит полученные видеофайлы на кадры, детектирует на каждом кадре объекты, формирует трек и определяет лучший кадр для каждого трека |
(3) | CARS Analytics получает сообщение, содержащее лучший кадр трека от CARS Stream. Сообщение передается с помощью функции callback_manager.py и включает в себя лучший кадр, содержащий объект (ТС, ГРЗ, пешеходов или животных) и информацию о расположении объектов (ТС, ГРЗ, пешеходов или животных) на кадре |
(4) | CARS Analytics отправляет через балансировщик нагрузки запрос в CARS API с лучшим кадром на определение атрибутов ТС (марки, модели и т.д.) и ГРЗ (символов ГРЗ, страны ГРЗ и т.д.) |
(5) | Балансировщик нагрузки направляет запрос в один из экземпляров CARS API, нагрузка на который в данный момент минимальна |
(6) | CARS API обрабатывает запрос, содержащий лучший кадр |
(7) | CARS API возвращает через балансировщик нагрузки ответ на запрос, содержащий атрибуты ТС и ГРЗ лучшего кадра в CARS Analytics |
(8) | Балансировщик нагрузки отправляет ответ на запрос в CARS Analytics |
(9) | CARS Analytics проводит проверку принадлежности к типу сценария (событие или инцидент) по типу объекта |
(10) | CARS Analytics сохраняет в базу данных информацию о ТС и ГРЗ |
(11) | CARS Analytics отображает в веб-интерфейсе браузера сформированное сообщение для пользователя с определенными атрибутами ТС и ГРЗ |
Диаграмма работы LUNA CARS с источником видео ANPR камера представлена на Рисунке (Рисунок 3).
Таблица 3. Описание диаграммы последовательности работы с видеопотоками из ANPR камеры
Шаг | Описание |
---|---|
(1) | ANPR Stream получает видеопоток от источника ANPR камера |
(2) | ANPR Stream делит полученные видеофайлы на кадры, детектирует на каждом кадре объекты и формирует трек |
(3) | CARS Analytics получает сообщение, содержащее кадр трека от ANPR Stream. Сообщение передается с помощью функции callback_manager.py и включает в себя кадр, содержащий объект (ТС, ГРЗ) и информацию о расположении объектов (ТС, ГРЗ) на кадре |
(4) | CARS Analytics отправляет через балансировщик нагрузки запрос в CARS API с лучшим кадром на определение атрибутов ТС (марки, модели и т.д.) и ГРЗ (символов ГРЗ, страны ГРЗ и т.д.) |
(5) | Балансировщик нагрузки направляет запрос в один из экземпляров CARS API, нагрузка на который в данный момент минимальна |
(6) | CARS API обрабатывает запрос, содержащий лучший кадр |
(7) | CARS API возвращает через балансировщик нагрузки ответ на запрос, содержащий атрибуты ТС и ГРЗ лучшего кадра в CARS Analytics |
(8) | Балансировщик нагрузки отправляет ответ на запрос в CARS Analytics |
(9) | CARS Analytics проводит проверку принадлежности к типу сценария (событие или инцидент) по типу объекта |
(10) | CARS Analytics сохраняет в базу данных информацию о ТС и ГРЗ |
(11) | CARS Analytics отображает в веб-интерфейсе браузера сформированное сообщение для пользователя с определенными атрибутами ТС и ГРЗ |
Диаграмма последовательности работы LUNA CARS с изображениями представлена на Рисунке (Рисунок 4).
Таблица 4. Описание диаграммы последовательности работы с изображениями
Шаг | Описание |
---|---|
(1) | CARS API получает изображение и запрос на обработку изображения от источников |
(2) | Балансировщик нагрузки направляет запрос в один из экземпляров CARS API, нагрузка на который в данный момент минимальна |
(3) | CARS API обрабатывает изображение на основе полученного запроса |
(4) | CARS API возвращает через балансировщик нагрузки ответ на запрос, содержащий атрибуты ТС и ГРЗ в CARS Analytics |
(5) | Балансировщик нагрузки отправляет ответ на запрос в CARS Analytics |
(6) | CARS Analytics получает информацию о ТС и ГРЗ |
(7) | CARS Analytics отображает в веб-интерфейсе браузера сформированное сообщение для пользователя с определенными атрибутами ТС и ГРЗ |