Передача выходных данных
Видеопотоки и видеофайлы передаются в OMNI Agent через rtcp-протокол, после чего обрабатываются и конвертируются в формат процессов и событий.
Форматы выходных данных
Процессы
Процесс агента - это формат представления результатов распознавания и трекинга, реализованный в рамках временных интервалов.
- Идентификатор процесса;
- Временной интервал процесса (начало и окончание процесса);
- Тип процесса (трек, человек, лицо, тело, эмоция и др.);
- Объект детекции с определёнными атрибутами лица (объектом выступает человек, попавший в поле зрения камеры);
- Лучший кадр (best shot) и массив всех кадров, полученных, пока человек не вышел из поля зрения камеры.
События
Событие - это формат представления результатов идентификации, который формируется на стороне OMNI Agent и передается в OMNI Platform для последующей отправки на сторонний сервис по веб-сокету.
В зависимости от результатов идентификации OMNI Agent может передавать события двух типов: события идентификации (человек с камеры идентифицирован) и события неидентификации (человек с камеры не идентифицирован).
Структура события идентификации:
- type (тип события) - identification
- date - время события
- id - идентификатор события
- object (объект, породивший событие):
- class - класс объекта (например, human)
- id - идентификатор объекта
- parents (родитель события, как правило, процесс):
- id - идентификатор родителя события
- type - тип родителя события (например, human, face)
- source - идентификатор видеопотока
- trigger_source:
- id
- image - кроп детекции
- original_image - полный кадр
- identification_data - массив профилей-кандидатов на идентификацию:
- profile_id - идентификатор профиля
- group_ids - идентификатор группы, в которую добавлен профиль
- score - степень схожести лица с кадра с лицом из профиля от 0 (0%) до 1 (100%)
- far - вероятность ошибочных подтверждений, когда система принимает изображения разных людей за изображение одного и того же человека
- frr - вероятность ошибочных отказов, когда система принимает два изображения одного и того же человека за изображения разных людей
- distance - расстояние между сравниваемыми векторами шаблонов. Чем меньше значение, тем выше уверенность в корректном распознавании
Структура события неидентификации:
- type (тип события) - non_identification
- date - время события
- id - идентификатор события
- object (объект, породивший событие):
- class - класс объекта (например, human)
- id - идентификатор объекта
- parents (родитель события, как правило, процесс):
- id - идентификатор родителя события
- type - тип родителя события (например, human, face)
- source - идентификатор видеопотока
- trigger_source:
- id
- image - кроп детекции
- original_image - полный кадр
Передача выходных данных
OMNI Agent (Online)
Процессы и события передаются в OMNI Platform по HTTP-протоколу в режиме реального времени. Синхронизация базы лиц OMNI Agent с базой лиц OMNI Platform выполняется в среднем 1 раз в минуту.
OMNI Agent (Standalone)
Процессы передаются во внешний сервис через вебхуки. Чтобы узнать, как настроить передачу данных по вебхукам, перейдите в раздел Вебхуки.