Если коротко:

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

Depth Sensor VR Headset помогает определить расстояние до поверхностей и построить представление о помещении. Эти данные нужны смешанной реальности: виртуальный предмет может скрываться за столом, вставать на пол и учитывать границы реальных объектов.

Часть гарнитур получает глубину без отдельного аппаратного сенсора. Такие системы вычисляют её по изображениям нескольких камер и движению устройства. Для приложения важны доступность карты, задержка и точность. Наличие отдельного модуля в характеристиках не описывает качество результата целиком.

Как получают глубину

Стереозрение сравнивает изображения двух камер. Один и тот же объект находится в разных местах кадров, а величина смещения помогает оценить расстояние. Метод зависит от освещения и наличия заметных деталей на поверхности.

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

Программная глубина использует набор обычных камер, движение гарнитуры и обученные модели. Производитель может улучшать результат обновлениями, хотя такая оценка тоже ошибается на стекле, отражающих предметах и тонких границах.

Карта глубины и пространственная модель

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

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

Для чего глубина нужна приложению

Окклюзия позволяет реальному предмету перекрывать виртуальный. Без неё цифровой объект рисуется поверх руки или стола и нарушает восприятие расстояния. Глубина также помогает определить место столкновения и приблизительно учитывать мебель при построении маршрута.

В приложениях смешанной реальности данные используют для:

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

Для точных измерений промышленного класса возможностей потребительской гарнитуры может не хватить. Ошибка зависит от расстояния, материала поверхности и угла наблюдения.

Ограничения и приватность

Тонкие ножки мебели, провода и прозрачные поверхности распознаются хуже крупных матовых объектов. Карта может содержать отверстия и дрожащие границы. Приложение не должно считать такую модель гарантией физической безопасности.

Пространственные данные описывают помещение пользователя. Разработчику следует запрашивать только нужные разрешения, не сохранять карту без необходимости и ясно объяснять назначение обработки. Конкретная политика зависит от платформы и требований магазина.

Работа с Depth API

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

Тестировать нужно на целевом устройстве. Проверка включает тёмную комнату, яркое окно, стекло, движущегося человека и предметы разного размера. Сравнивайте визуальный результат с задержкой: сильное сглаживание уменьшает шум, но оставляет след за движущимся объектом.

Датчик глубины даёт VR-гарнитуре дополнительную информацию о реальном окружении. Для пользователя результат заметен по устойчивому размещению и правильному перекрытию объектов, а разработчику приходится учитывать шум, задержку и неполную геометрию.

Поделиться:TelegramВКонтакте

Источники

  1. Meta Horizon — Depth API overview
  2. HTC VIVE — depth sensing in VR and MR
  3. Intel RealSense — depth technology