Environment

Environment

Environment — это ИК-разметка зоны трекинга, по которой трекер определяет свое положение в пространстве.

Структура Environment

Environment состоит из ИК-маркеров. Все маркеры идентичны по своим свойствам, частоте излучения и длине волны, и постоянно излучают свет в ИК-диапазоне. Они не обладают каким-либо определенным ID.
Для удобства применения ИК-маркеры могут группироваться в элементарные паттерны, которые называются референс-барами (reference bar).

Алгоритм работы трекера с Environment

Трекер определяет свое положение, опираясь на уникальные комбинации расположения ИК-маркеров — фичи (feature). При первом включении или после потери положения (например, после закрытия объектива рукой) трекер пытается обнаружить фичу из маркеров, находящихся в поле его видимости.
В дальнейшем, после определения положения трекер видит маркеры и сравнивает их с Environment. Если расположение маркеров соответствует разметке, трекер продолжает работу по ИК-маркерам; если не соответствует — запускает процесс поиска фич.

Параметры Environment

У каждого Environment есть 2 ключевых параметра:
Эти параметры противоположны по своей сути. Максимальное качество трекинга достигается при равномерном размещении ИК-маркеров. При этом локальная уникальность их положения (фичи) не учитывается. Аналогично, достижение максимального качества фич снижает качество трекинга, т.к. перегруппировывает ИК-маркеры безотносительно равномерности их распределения.
Таким образом, при настройке параметров Environment нужно стремиться к балансу между качеством трекинга и фич.

Типы Environment

Существует три типа Environment:
Помимо Arbitrary2D Environment, создать собственный вариант Environment можно альтернативным способом. В этом случае пользователь может не только расположить ИК-маркеры произвольным образом, но и создать свой вариант алгоритма поиска маркеров (matching):
Подробнее смотрите в нашем проекте на Github.

Полезные ссылки