Cобытия распознавания автомобильных номеров
Flussonic умеет находить и распозновать номера российских автомобилей, попавших в кадр IP камеры, включая спецтранспорт (пожарные и скорые). Эта функциональность известна как ANPR (automatic number plate recognition).
Flussonic делает следующее:
Создает события детекции номеров.
Видео приходит с IP камер на транслирующий сервер (в кластерной установке) или на управляющий сервер (в обычной установке), на котором и происходит распознавание номеров.
Предоставляет Watcher UI для просмотра событий раcпознавания номеров.
В веб-интерфейсе к Watcher можно посмотреть зарегистрированные события и видео с места событий.
Предоставляет API для выгрузки событий во внешние системы.
Чтобы начать раcпознавать автомобильные номера:
Подготовьте аппаратную и программную часть на сервере Flussonic, который будет распознавать номера.
Включите и настройте распознавание номеров. Настроить можно как через файл, так и в веб-интерфейсе Watcher, но некоторые параметры сейчас можно указать только в файле.
Содержание:
Установка модуля распознавания номеров
Чтобы распознавать номера, нужно установить Flussonic Media Server и Watcher (если вы ещё не работали с ними). Функция распознавания работает как в одиночной установке Flussonic вместе с Watcher, так и в кластере.
Распознавание номеров происходит на транслирующем сервере (в кластерной установке) или на управляющем сервере (в обычной установке). К этому серверу нужно подключить камеру, c которой вы хотите распознавать номера. Необходимо, чтобы сервер имел минимум одну производительную видеокарту NVIDIA GPU, у которой не менее 6 Гб видеопамяти.
Требования к системе, на которой будет работать ANPR
- ОС: Ubuntu 16.04 x64
- GPU: Nvidia (Pascal) от 6 Гб VRAM (более точные рекомендации мы можем дать только для конкретного проекта).
- Процессор: не менее 4-х ядер.
- Память: не менее 8 ГБ ОЗУ.
- Flussonic Media Server (для стримера в кластерной установке)
- Flussonic Media Server + Watcher (в одиночной установке)
Важно. В кластерной установке система распознавания работает на транслирующем сервере (стримере), где уже должен быть установлен Flussonic Media Server. В одиночной установке система распознавания требует установленного Flussonic Watcher вместе с Flussonic Media Server.
Установка
Для установки модуля распознавания номеров подключите официальный репозиторий Nvidia и установите пакет flussonic-vision из нашего репозитория:
wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.2.148-1_amd64.deb dpkg -i cuda-repo-ubuntu1604_9.2.148-1_amd64.deb apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub apt update apt install flussonic-vision
Настройка распознавания номеров через конфигурационный файл
Замечание. Всё то же самое можно сделать через UI — настройки сами запишутся в файл. Но вам потребуется проверить номер GPU в конфигурационном файле и при необходимости отредактировать его вручную.
- Откройте файл
/etc/flussonic/flussonic.conf
. - Для включения системы распознавания добавьте строку с плагином
plugin vision;
- Добавьте директиву
vision
в конфигурацию потока, указав номер GPU:
stream cam1 { url rtsp://192.168.0.11:554/h264; vision gpu=0; } stream cam2 { url rtsp://192.168.0.12:554/h264; vision gpu=1; } plugin vision;
- gpu (обязательная опция) – номер видеокарты, его можно получить с помощью утилиты
nvidia-smi
.
По умолчанию система распознавания ищет автомобильные номера по всей области кадра.
Перегрузите конфигурацию, чтобы изменения, сделанные в файле, вступили в силу.
Настройка распознавания номеров через UI
Предварительное условие
Прежде чем настраивать камеры в UI, убедитесь, что система распознавания включена. Для этого в файл /etc/flussonic/flussonic.conf
добавьте строку:
plugin vision;
Настройка камеры для распознавания номерных знаков
Чтобы включить детекцию и распознавание номеров для камеры:
В Watcher UI перейдите в раздел Камеры. Найдите камеру в списке камер и откройте ее настройки, щелкнув в правом верхнем углу плеера значок настроек.
Выберите опцию Распознавание номерных знаков и нажмите Сохранить.
Теперь система распознавания Flussonic будет определять номера в кадре этой камеры и фиксировать время, когда номер появился в кадре и когда он покинул кадр. Flussonic добавит опции потока в конфигурационный файл
/etc/flussonic/flussonic.conf
.Вам может потребоваться вручную отредактировать номер GPU в конфигурационном файле (см. предыдущий раздел о настройке через файл).
Просмотр событий распознавания номеров в UI
Flussonic создает события двух видов:
- enter – номер появился в кадре (в поле видимости камеры)
- leave – номер покинул кадр.
Чтобы посмотреть, какие номера появлялись в кадре камеры:
- В Watcher UI перейдите в раздел Статистика. Откроется список всех событий.
Используйте фильтры и поиск справа, чтобы найти камеру:
Список событий фильтруется сам по мере ввода вами критериев поиска.
Чтобы просмотреть запись с камеры, щелкните в строке, содержащей данное событие. Внизу экрана откроется плеер и проиграет запись. Чтобы увеличить изображение, нужно сделать двойной щелчок по изображению в плеере.
API модуля распознавания номеров
Если система правильно настроена, то вы сможете получить данные о событиях в формате JSON через Watcher API. Подробная документация по API доступна по ссылке.
Ниже пример запроса и ответа:
root@ubuntu:~# curl localhost/vsaas/api/v2/events?type=activity -H 'x-vsaas-api-key: dfb21d1f-3e00-44a2-a706-36d99f9e9d73' { "start_at": 1538645882872, "type": "activity", "id": "7ecb0a13-414c-462f-a206-3c5d047baad4", "ext_data": null, "object_id": "A123AA 77", "end_at": null, "source": "plate_detector", "camera_id": "cam0-00", "source_id": "0", "object_class": "leave", "event_data": null }
- start_at - время события
- id - уникальный ID записи
- object_id - номер автомобиля
- camera_id - имя камеры в Watcher
- object_class - событие, может быть enter и leave (машина появилась или покинула наблюдаемую зону).