Skip to content

Аналитика камеры

Правила видеоаналитики хранит и исполняет сама камера. Optic читает и записывает их на вкладке Аналитика стрима, а срабатывания правил сохраняет как эпизоды с кадром камеры. Набор типов правил, их параметры и пределы зависят от модели и прошивки камеры, и вкладка показывает ровно то, что объявила камера. Особенности конкретных камер собраны в разделе Адаптеры камер.

Настраивать аналитику могут роли superadmin и admin. Те же операции доступны через API.

Подготовка стрима

Для работы вкладки нужно:

  • Адрес и учётные данные камеры — задаются в настройках ONVIF на вкладке Источники. Если адрес ONVIF не задан, Optic использует первый вход стрима, если он RTSP; у группы MBR — первый вложенный вход. Учётной записи камеры нужно право менять аналитику. Если RTSP-вход работает через агента, для управления камерой используется тот же агент, см. Добавление камеры.
  • События ONVIF — настройте их приём на вкладке Источники. Также поддерживаются метаданные ONVIF в RTSP. Правила исполняются на камере; для появления эпизодов события должны доходить до Optic.
  • Превью — по нему вкладка показывает кадр камеры. Превью добавляется на вкладке Обработка в блоке Превью с источником Ключевой кадр потока.
  • Архив и хранение эпизодов — нужны, чтобы смотреть видео вокруг срабатывания, см. архив и хранение эпизодов.

Блок «Превью» с источником «Ключевой кадр потока»

Если метаданные передаются в RTSP, на вкладке Основные настройки в блоке Что в потоке есть дорожка onvif.

Блок «Что в потоке»: видео, звук и дорожка метаданных onvif

Вкладка «Аналитика»

Слева — список Правила. Правило на охране выделено и имеет включённый выключатель, снятое с охраны — серое. Номер после названия различает правила одного типа. Под списком — Тип правила и Добавить правило.

В середине — настройки выбранного правила.

Справа — кадр камеры, он периодически обновляется. Поверх кадра Optic рисует линии, зоны и клетки выбранного правила; камера может добавлять в изображение и свои пометки. Если кадр не обновляется, причина выводится поверх его нижнего края: у стрима нет превью или для просмотра нужен токен воспроизведения.

Над списком две кнопки:

  • Перечитать — заново читает правила с камеры. Вкладка не узнаёт сама об изменениях, сделанных в веб-интерфейсе камеры, через API или с другого рабочего места.
  • Имена стандарта и подсказки — включает режим подсказок: показывает исполнителя, имена правил и параметров в стандарте ONVIF и пределы, объявленные камерой, см. Адаптеры камер.

Вкладка «Аналитика»: правила, настройки и кадр камеры

Правила

Типы правил

Вкладка знает следующие типы. Какие из них есть у камеры, сколько правил каждого типа можно создать и какие у правил параметры, объявляет камера.

Тип Что делает
Пересечение линии Объект пересёк линию в заданном направлении
Подсчёт пересечений Счёт объектов, пересёкших линию
Зона с направлением Объект движется в зоне в заданном направлении
Вход в зону Объект вошёл в зону
Выход из зоны Объект вышел из зоны
Вторжение Объект в зоне дольше порога времени
Оставленный предмет В зоне появился и остался предмет
Унесённый предмет Из зоны пропал предмет
Скопление Людей в зоне больше порога
Очередь Очередь длиннее порога или стоит дольше заданного времени
Движение в области Движение внутри области
Детектор движения Движение в отмеченных клетках кадра
Детектор объектов Люди и транспорт в кадре
Звуки Звук выбранных классов
Номера машин Распознавание номеров машин
Распознавание лиц Распознавание лиц
Силуэты людей Обнаружение людей
Транспорт Обнаружение транспорта

В списке Тип правила недоступные типы выведены серым с причиной, например «все слоты заняты». Некоторые камеры держат правило типа постоянно: такое правило нельзя создать или удалить, только поставить на охрану или снять с неё.

Список «Тип правила»: доступные и недоступные типы

Создание, изменение и удаление

Чтобы создать правило:

  1. В поле Тип правила выберите тип и нажмите Добавить правило.
  2. Расположите на кадре линию или зону.
  3. Задайте параметры правила.
  4. Нажмите Создать и включите выключатель правила в списке.

Кнопки под формой правила:

  • Отменить и Повторить — шаг назад и вперёд по правкам, ещё не записанным в камеру.
  • Сохранить — записывает правило и перечитывает его с камеры. Итог выводится сообщением «Сохранено и перечитано с камеры».
  • Удалить — удаляет правило после подтверждения и освобождает место для нового. У постоянных правил кнопки нет.
  • Отмена — закрывает форму без записи.

Если камера требует для правила расписание, вкладка не даст записать правило без отмеченных часов, см. Расписание.

Форма правила «Пересечение линии»

Линия

Новая линия проходит горизонтально через центр кадра. На кадре она выделена жёлтым, её концы перетаскиваются мышью. Сбросить возвращает исходное положение. Направление задаёт, при пересечении в какую сторону правило срабатывает, Классы объектов — на какие из объявленных камерой классов.

Линия правила на кадре камеры

Зона

Новая зона занимает почти весь кадр; Весь кадр и Сбросить возвращают её к такому виду. Вершины зоны редактируются мышью:

  • перетаскивание сдвигает вершину;
  • двойной щелчок по ребру добавляет вершину;
  • щелчок правой кнопкой по вершине удаляет её.

Число вершин ограничивает камера, вершины за пределами кадра вкладка не принимает. Если у правила, прочитанного с камеры, нет зоны, её добавляет кнопка Добавить зону или линию.

Зона правила «Вход в зону» на кадре

Клетки детектора движения

Детектор движения ищет движение в отмеченных клетках кадра. Отмеченные клетки закрашены. Размер сетки задаёт камера: число строк и столбцов зависит от модели.

Чтобы задать область поиска движения:

  1. Откройте вкладку Аналитика стрима и выберите существующее правило Детектор движения. В режиме подсказок оно может называться CellMotionDetector_1. У камеры с постоянным правилом создавать новое не нужно.
  2. Отметьте нужные клетки на кадре. Щелчок меняет состояние одной клетки. Протяжка от неотмеченной клетки выделяет прямоугольник; протяжка от отмеченной снимает выделение в прямоугольнике.
  3. Нажмите Сохранить под формой правила. Optic записывает маску в камеру и проверяет результат чтением обратно.
  4. Нажмите Перечитать и убедитесь, что нужные клетки остались отмеченными. Справа под кадром показано число отмеченных клеток.

Кнопки под кадром меняют всю сетку сразу:

  • Всё — отмечает все клетки;
  • Очистить — снимает все клетки;
  • Инвертировать — меняет отмеченные и неотмеченные клетки местами.

Детектор движения: отмеченные клетки и кнопки управления сеткой

Клетки можно настраивать у правила, снятого с охраны. Если камера поддерживает выключатель На охране, включите его, когда правило должно начать обнаруживать движение. Само выделение клеток ещё не сохраняет настройки.

Если камера не объявила размер сетки, маска показывается только для чтения. Optic не подставляет произвольный размер: без него нельзя правильно сопоставить клетки кадру. Список доступных настроек зависит от адаптера камеры.

Выбранные клетки определяют область поиска движения на камере. Короткие паузы между событиями объединяются в эпизод по окну debounce.

Номера машин

Правило Номера машин распознаёт номера в зоне на кадре; зона редактируется так же, как у других правил. Параметры распознавания объявляет камера. На снимке — параметры камеры Optimus: формат номера, чувствительность, режим детекции, минимальная и максимальная ширина номера в процентах ширины кадра.

Правило «Номера машин»: параметры и зона на кадре

Распознанные номера попадают в эпизоды вида Транспорт. На плитке — снимок номера, время, длительность и прочитанный номер; поле Номер отбирает эпизоды по номеру.

Эпизоды вида «Транспорт» с распознанными номерами

В карточке такого эпизода, кроме видео и времени, указаны классы распознанных объектов и номер. Если камера увидела машину, но не прочитала номер, вместо номера выводится «номер не распознан».

Карточка эпизода вида «Транспорт»

Расписание

Таблица Расписания есть, если камера поддерживает расписание правил. В таблице одна строка на тип правила, столбцы — часы выбранного дня. Оно нужно, если правило должно работать не всё время.

День выбирается над таблицей, все дни сразу применяет правку ко всей неделе. Протяжка мышью по строке отмечает или снимает часы, 24ч заполняет строку, кнопка рядом очищает её. Применить записывает изменённые строки в камеру, Вернуть как было отменяет правку.

Строки типов без правил на охране бледные, изменённая и ещё не записанная строка выделена жирным. Строка типа, снятого с охраны, записывается вместе с постановкой правила на охрану, рядом с кнопками это отмечено как «набрано строк: N — уедут с постановкой на охрану». Сетка показана в часовом поясе браузера, если камера сообщила свой; строка под таблицей указывает соответствие часов камеры и графика.

Таблица «Расписания»: строка «Номера машин» набрана, но ещё не записана

Если камера объявила несовместимые сценарии, вкладка проверяет расписание до записи и называет помеху с днём и часами.

Отказ постановки на охрану из-за пересечения расписаний

Если запись не удалась

Камера может ответить на запись успехом и при этом не применить часть значений. Optic сравнивает отправленное с прочитанным после записи и выводит расхождения под заголовком «Камера приняла запись, но сделала не всё:», по строке на параметр: что отправлено и что сохранила камера.

Если камера не ответила на часть запросов при чтении, вкладка пишет, на какой запрос нет ответа и каких настроек поэтому нет в форме.

Отказ записи выводится под кнопками правила, отказ чтения — в списке правил; у отказа есть кнопка Повторить:

  • У стрима нет адреса камеры — не задан адрес ONVIF, и первый вход стрима не RTSP.
  • Камера отвергла учётные данные — логин или пароль в адресе ONVIF либо RTSP не подходят.
  • Камера отвергла значение — значение вне пределов камеры.
  • Камера не держит два правила в один и тот же час — расписания несовместимых правил пересекаются.
  • Стрим сейчас не ведёт ни одна нода или Нода захвата стрима не на связи — стрим не запущен или стример, принимающий видео камеры, недоступен.
  • Камера ответила ошибкой — подробности в тексте отказа.

Каждая попытка записи правил попадает в журнал аудита central с действием stream_onvif.rules_write, в том числе отвергнутая камерой.

Срабатывания на вкладке «Эпизоды»

Эпизоды вида Движение объединяют паузы короче 30 секунд. Если движение вернулось через 5 секунд, продолжается прежний эпизод с тем же ID; после 30 секунд покоя он закрывается временем прекращения движения. Подробнее — объединение эпизодов движения (debounce).

Каждое срабатывание правила становится закрытым эпизодом с кадром камеры. На вкладке Эпизоды стрима их отбирает Вид «Сработало правило» и поле Правило; код правила, которого нет в списке, вводится вручную с Enter. Объекты и номера, распознанные камерой, попадают в эпизоды видов Транспорт и Человек, см. Номера машин. Поиск срабатываний через API описан на странице Аналитика камеры через API.

Эпизоды с фильтром «Сработало правило»

Щелчок по плитке открывает карточку эпизода. Слева — видео из архива вокруг срабатывания, справа — кадр, присланный камерой, время начала и конца, длительность и идентификатор эпизода. Без архива вместо видео выводится «Видеоархив стрима не настроен».

Карточка эпизода: видео из архива, кадр срабатывания и поля эпизода

Адаптеры камер

Optic выбирает способ работы с камерой автоматически при каждой операции. В режиме подсказок под заголовком Правила виден исполнитель:

  • адаптер: hanbang — поддержанные камеры семейства Hanbang. Optic настраивает движение через веб-API камеры.
  • адаптер: optimus — камеры Optimus. Optic работает через веб-API камеры.
  • исполнитель: камера — остальные камеры. Optic работает через сервис ONVIF Analytics самой камеры.

Режим подсказок: исполнитель и имя правила в стандарте ONVIF

Optimus

Метаданные. Камера отдаёт метаданные ONVIF, только если в RTSP-адресе есть параметр onvif_metadata=true, например rtsp://camera-user:camera-password@192.168.10.20:554/rtsp/streaming?channel=1&subtype=0&onvif_metadata=true. Optic этот параметр сам не добавляет.

Типы правил. Камера поддерживает 14 типов:

Типы Правил одного типа Создание и удаление
Пересечение линии, Зона с направлением, Вход в зону, Выход из зоны, Вторжение, Оставленный предмет, Унесённый предмет до четырёх можно
Подсчёт пересечений, Скопление, Очередь одно можно
Детектор движения, Детектор объектов, Звуки, Номера машин одно, есть всегда нельзя, только постановка на охрану

Несколько правил одного типа — это несколько зон одного сценария камеры: геометрия у каждой своя, расписание общее, а значение другого параметра, изменённое в одном правиле, камера может применить ко всем правилам типа. Снятие линии или зоны с охраны сохраняет геометрию, удаление освобождает место для нового правила.

Расписание.

  • Расписание есть у всех типов, кроме типа Детектор движения.
  • Пустая строка для камеры означает «сценарий выключен», поэтому для постановки на охрану нужен хотя бы один отмеченный час, а снятие с охраны очищает строку.
  • Пока у сценария есть расписание, камера сама включает и выключает его по сетке. Выключатель, отправленный вопреки сетке, камера не применяет, и вкладка показывает это как расхождение.
  • Камера хранит расписание по получасам; час, отмеченный в камере наполовину, таблица показывает пустым.

Несовместимые сценарии. Камера объявляет сценарии, которые не выполняет в одни часы, например линии и зоны с типами Номера машин и Детектор объектов. Вкладка не даёт записать их в пересекающиеся часы.

Геометрия. Камера хранит координаты в своей сетке, поэтому после записи вершины смещаются на доли процента кадра.

Hanbang

Для поддержанных камер этого семейства доступны маска движения и выключатель На охране. В интерфейсе правило имеет имя CellMotionDetector_1; имя правила внутри камеры не меняется.

Optic читает сохранённые клетки и у выключенного детектора. При записи маски сохраняются состояние выключателя и остальные настройки камеры, включая расписание и действия тревоги. Изменить состояние выключателя можно отдельно. Настройка чувствительности через этот адаптер недоступна; её текущее значение сохраняется при записи маски.

После записи Optic читает настройки обратно. Если камера их не сохранила или прочитать результат не удалось, интерфейс сообщает об ошибке сохранения.

Стандартный ONVIF

Для остальных камер Optic вызывает сервис ONVIF Analytics камеры. Типы правил, их параметры и пределы объявляет камера, набор зависит от модели и прошивки. Несовместимые сценарии камера через ONVIF не объявляет, поэтому конфликт отвергает она сама при записи. Результат каждой записи Optic проверяет чтением, расхождения выводятся так же, как описано в разделе Если запись не удалась.

Диагностика

В режиме подсказок рядом с заголовком Правила появляется кнопка Диагностика сервиса аналитики. Она по очереди выполняет 13 запросов к камере: от сведений об устройстве и списка сервисов до правил и топиков событий. Для каждого шага показаны запрос, время и итог:

  • ответила;
  • отказала;
  • не ответила.

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

Диагностика сервиса аналитики камеры