8 (812) 649-47-16Санкт-Петербург, ул. Заозерная, д.8, к.2
← Все статьиAR-статьи

Как вычисляется положение устройства в пространстве (world tracking)

Чтобы BIM-модель в AR вела себя как часть реального объекта, приложение должно точно понимать, где находится устройство и как оно перемещается. Это называется world tracking — определение положения и ориентации…

Текст статьи

Введение

Как вычисляется положение устройства в пространстве (world tracking)
Как вычисляется положение устройства в пространстве (world tracking) — иллюстрация из материалов статьи.

Чтобы BIM-модель в AR вела себя как часть реального объекта, приложение должно точно понимать, где находится устройство и как оно перемещается. Это называется world tracking — определение положения и ориентации устройства в пространстве.

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

Как вычисляется положение устройства в пространстве (world tracking)
Как вычисляется положение устройства в пространстве (world tracking)

Что означает положение устройства

Положение устройства — это не просто координата точки.

Система определяет:

  • где находится устройство
  • куда оно направлено
  • как оно перемещается

То есть одновременно рассчитываются и позиция, и ориентация. Это позволяет правильно пересчитывать изображение при каждом движении пользователя.

Как ARKit понимает движение

World tracking строится на сочетании двух источников данных.

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

С другой стороны используются встроенные датчики: гироскоп и акселерометр. Они дают информацию о поворотах и ускорениях.

Совмещение этих данных позволяет системе получать устойчивую оценку положения.

Роль облака точек

По мере работы формируется облако точек — набор ориентиров в пространстве.

Каждая точка соответствует элементу окружающей среды. Когда пользователь двигается, система повторно “находит” эти точки и сопоставляет их с предыдущим положением.

За счёт этого:

  • отслеживается движение
  • уточняется карта пространства
  • уменьшается ошибка

Это непрерывный процесс, который работает всё время, пока открыта AR-сессия.

Как формируется система координат

В начале AR-сессии задаётся локальная система координат.

Её ноль совпадает с положением устройства в момент запуска. Дальше все координаты считаются относительно этой точки.

Когда пользователь двигается, система не “перемещает мир”, а пересчитывает положение устройства внутри этой системы.

Именно поэтому модель остаётся на месте — меняется только точка наблюдения.

Почему модель не “едет” вместе с камерой

Если world tracking работает корректно, модель привязывается не к экрану, а к системе координат сцены.

При движении пользователя:

  • меняется положение камеры
  • пересчитывается ракурс
  • модель остаётся в тех же координатах

Это создаёт ощущение, что она “закреплена” в реальном пространстве.

Если отслеживание работает плохо, возникает обратный эффект — модель начинает “плыть”.

Где возникают ограничения

Точность world tracking зависит от условий.

Проблемы могут возникать:

  • при слабом освещении
  • на однотонных поверхностях
  • в помещениях без выраженных ориентиров
  • при резких перемещениях

В инженерных помещениях добавляется ещё один фактор — большое количество похожих элементов. Это может усложнять отслеживание.

Поэтому устойчивость сцены всегда зависит не только от технологии, но и от условий работы.

Практический пример

Пользователь запускает AR в помещении и начинает движение.

Как вычисляется положение устройства в пространстве (world tracking)
Как вычисляется положение устройства в пространстве (world tracking) — иллюстрация 2

Сначала система формирует карту пространства. Затем при каждом шаге пересчитывает положение устройства.

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

Если остановиться и снова посмотреть на тот же элемент, он будет находиться в том же месте.

Это и есть результат корректного world tracking.

Как это используется в GIP VISION

В GIP VISION world tracking используется как базовый механизм.

Фиксация модели в GIP VISION после сканирования пространства
После первичного размещения GIP VISION позволяет зафиксировать модель в сцене и продолжить работу уже с устойчивой привязкой.

Он отвечает за:

  • формирование сцены
  • отслеживание движения
  • устойчивость модели

Пользователь не взаимодействует с этим напрямую. Он видит результат: модель остаётся на месте, даже при перемещении по объекту.

Дальше поверх этого механизма добавляется прикладная логика:

  • размещение по изображению
  • привязка по проёму
  • фиксация модели

World tracking обеспечивает стабильность, а точность достигается через правильную привязку.

Вывод

World tracking — это механизм, который позволяет устройству определять своё положение и отслеживать движение в пространстве.

Он обеспечивает:

  • устойчивость сцены
  • корректное отображение модели
  • возможность перемещения пользователя

При этом он не отвечает за точную привязку BIM. Он создаёт основу, на которой эта привязка выполняется.

В GIP VISION этот механизм используется как фундамент, который делает возможной работу с моделью на площадке, а прикладные сценарии уже обеспечивают её точное совмещение с объектом.