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

image.png

Проверяет, что определенные треки объектов пересекли заданную линию в определенном направлении, вперед или назад.

Входные параметры

image.png
Линия пересечения – переменная, хранящая координаты линии, пересечения которой блок будет фиксировать

image.png
Треки объектов  – переменная, хранящая треки, получаемые из блока "Трекер"

Результаты

image.png
Треки, пересекшие линию вперед – поле принимает переменную, записывающую  определенные треки

image.png
Треки, пересекшие линию вперед - поле принимает переменную, записывающую  определенные треки

image.png
Треки, не пересекшие линию -  поле принимает переменную, записывающую  определенные треки

 

Работа блока 

Что значит “Пересечение вперед?” Что значит “Пересечение назад?”

Для работы блока нужно указать линию в настройках камеры. У линии должно быть указано две и только лишь две точки. Первая точка будет началом линии, а вторая - концом линии. Представьте часы со стрелками. Минутная стрелка часов указывает на 3 часа. Если начало линии лежит в центре циферблата, а конец на кончике стрелки (3 часа) то пересечение такое линии вперед будет значить, что мы пересекли эту линию снизу вверх. Пересечение назад же будет значить, что мы пересекли эту стрелку сверху вниз.

Очень важно то, как именно вы нарисуете линию пересечения. В зависимости от этого направления пересечения изменяются так, как показано ниже(точка начала - центр циферблата)

image.png

Ограничения блока:

Как проверить, что трек пересек линию?

Сравните выходную переменную с текстовой переменной “[]”. Список пустых треков, т.е. отсутствие треков в блоке обозначается как пустой список - “[]”.

Может возникнуть путаница с сравнением отсутствия bbox’ов и треков. Когда нет bbox’ов - блоки детекторов возвращают пустые строки, когда нет треков - возвращается строка с открывающей и закрывающей квадратными скобками “[]”.

 


Версия #1
editor1 создал 29 мая 2024 10:44:33
editor1 обновил 29 мая 2024 10:50:32