Перейти к основному содержимому
Версия: 2.9.0 (последняя)

Пересечение линий

Линия — это зона, размечаемая поверх кадра видеопотока. Как только объект определенного класса полностью пересечёт эту зону, OMNI Agent отправит результаты детекции и трекинга этого объекта в OMNI Platform или во внешний сервис в формате процессов и событий.

Обнаружение пересечения линии доступно для следующих классов объектов:

  • силуэт человека;
  • лицо человека;
  • отдельные части тела человека: ладонь, лодыжка, колено и др.

На превью линия обозначается светло-красным цветом, а при пересечении объектом определенного класса становится красной.

Как добавить линии

  1. Нажмите на шестеренку в строке камеры. В разделе ROI открывшейся вкладки нажмите +.

    img.png

  2. Заполните название линии, выберите тип «Линия» и набор классов отслеживаемых объектов. Разметьте две точки на кадре видеопотока и укажите размер абстрактной зоны при помощи стрелки. После заполнения нажмите Сохранить.

    img.png

  3. Вернитесь на главную страницу веб-интерфейса. Теперь добавленная линия отображается на превью с камеры.

    img.png

Конфигурация линий

Для добавления и изменения линии откройте файл конфигурации run_params.json и отредактируйте следующие поля объекта mutlistream_ROI:

  • regions: массив объектов областей интереса. Координаты зоны линии — это координаты точек, ограничивающих область интереса (ROI)

Пример объекта в массиве regions:

"regions": [
{ // объект (область интереса)
"name": "_region_name_", // название линии (зоны)
"classes": [
{
"class": "body", // класс отсеживаемых объектов
"reduction_kind": "BBOX_BOTTOM_CENTER", // метод преобразования bbox объекта в точку
},
{
"class": "face",
"reduction_kind": "BBOX_CENTER",
},
{
"class": "left_hand",
"reduction_kind": "BBOX_CENTER",
}
],
"points": [ // координаты точек, ограничивающих зону линии
{
"x": 0,
"y": 0.975 // в относительных координатах кадра
},
{
"x": 1,
"y": 0.975
},
{
"x": 0.5,
"y": 0.5
}
],
"trigger_settings": // ключевой объект, превращающий область интереса в линию
{
"is_roi": true, // true — передача процессов при пересечении зоны линии и процессов нахождения в области интереса
"direction": // вектор направления входа (пересечение линии в обратном направлении считается выходом)
{
"x": 0.5,
"y": 0.3,
}
}
"uuid": "6acb27c7-c967-46ed-a32f-0085c0454c4c" // uuid линии. При отсутствии добавляется автоматически.
}
]