для чего нужны hololens
Пространственная осведомленность: что могут очки Hololens?
Сегодня мы совершим прыжок в область Spatial Awareness с помощью очков Hololens от Microsoft и поговорим о развитии Windows Mixed Reality (WMR), а также о том, чего стоит ожидать от второго поколения.
Статья рассчитана на тех, кто занимается разработкой под Hololens с использованием среды Unity и Mixed Reality Toolkit (MRTK).
Что нужно знать о Hololens?
Одна их отличительных черт Hololens – это потенциал в области смешанной реальности (Mixed Reality), то есть возможность воспринимать пространство и взаимодействовать с ним (Spatial Awareness). Не только Microsoft стремится занять данную нишу. Недавно вышел EasyAR SDK 4.0 с поддержкой Sparse & Dense SpatialMap, которые решают аналогичные задачи.
Для Microsoft важно представить «сильное» решение (25 февраля вышел очередной анонс): под второе поколение очков разработана отдельная Scene Understanding SDK.
Вероятно, основой этой идеи является Spatial Understanding, который можно встретить в Holotoolkit 2017.4.1.0 (сейчас – MRTK) под Unity версии 2017.4. На тот момент был актуален отличный материал – «How-To: Use Spatial Understanding to Query your Room with HoloLens».
Для того чтобы лучше разобраться в теме, рассмотрим очки Hololens подробнее и приведем описание их работы.
Насколько хорошо «видят» Hololens?
(Спойлер: не очень хорошо)
Для восприятия пространства в Hololens используется ToF-камера глубины.
Камера глубины принимает отраженный от объектов свет и может за счет этого определить объем объекта и расстояние до него. На основании данных, полученных от камеры, Hololens выстраивают меш (как на изображении ниже):
Стандартный меш в Hololens Spatial Awareness
Меш – объект в Unity, описывающий 3D-модель. Статью с описанием терминов можно почитать здесь.
Полученные «сырые» данные поступают в виде набора поверхностей (entry) и образуют итоговый меш пространства, который также привязан к якорной системе. В Hololens данная технология используется для взаимодействия с пространством: объекты, имеющие коллайдеры, могут быть размещены на поверхности. При включении Hololens автоматически подгружают сохраненное пространство в зависимости от его якоря.
Получаемое пространство не претендует на чрезмерную детальность (погрешность составляет 5–10 см минимум, но для расположения предметов на полу / не за стеной этого достаточно). При этом угловатость получаемой в итоге модели в любом случае будет высокой. Шум, который появляется при сканировании, может мешать как при взаимодействии с внешней средой, так и при построении модели объекта.
Входные данные
Для работы со Spatial Awareness мы будем использовать MRTK в среде Unity.
MRTK также является проектом Microsoft. Если есть необходимость посмотреть, как проходит установка в Unity и что там можно делать, то добро пожаловать на github.
В экспериментальных целях возьмем следующие параметры для сканирования:
За две минуты сканирования с такими параметрами мы получили следующее:
Выравнивание сетки
Основные параметры, задающие объемную фигуру в Unity:
Сначала применим к полученной поверхности алгоритм Лапласа, который сводится к довольно простому принципу: каждая вершина центруется относительно смежных ей по всем координатам:
Для каждой вершины мы сначала находим смежные (соседние) вершины. Делается это следующим образом:
Для вершины с индексом
меша в массиве
проверяем каждый индекс
в тройке на условие: если хотя бы один индекс совпадет с индексом
, то вершины, соответствующие этой тройке индексов, сохраняются как смежные.
Саму функцию поиска смежных вершин можете посмотреть здесь.
Далее, если смежные вершины найдены, для каждой из координат вычисляется среднее значение по x, y, z, которое присваивается данной вершине.
Код основной функции сглаживания по Лапласу:
Результат подобного преобразования выглядит следующим образом:
С перегородкой ситуация стала лучше, но на более «тонких» объектах меш стал значительно разорван. Дело в том, что сглаживание по Лапласу приводит к сильному сжатию объекта. Чтобы этого не происходило, после сглаживания скорректируем положение вершин на среднее значение от разницы.
Для коррекции сглаживания по Лапласу может быть применен алгоритм Классов Хамфри (HC-algorithm).
С целью предотвращения сжатия фигуры в точку будем сдвигать полученные после сглаживания по Лапласу вершины назад к их предыдущим позициям
и (или) оригинальным позициям
на среднее значение разниц
между ними.
Полученное положение будет вычисляться следующим образом:
где – то есть корректировка происходит на
. Получается, что разница
, которая вычисляется как среднее взвешенное значение разниц, равна:
Для того чтобы учитывать и сдвиг для нужной нам вершины , включим в расчет
с весом
:
Скаляр отвечает за степень жесткости привязки к изначальным позициям.
Математические выкладки можно посмотреть здесь. Более подробно ознакомиться со сглаживанием по Лапласу и его практическим применением можно здесь.
Поскольку сглаживание достаточно трудоемкая операция, мы будем использовать одну итерацию . А для баланса между более гладкой стенкой и не сильно «рваной» лампой установим
.
Получилась следующая картинка:
В итоге
Даже сокращение числа итераций сглаживания до одного не отменит того, что во время обработки не самого большого меша (сканировали не всю комнату) происходит «заморозка» приложения.
Базовая точность сканирования и ограниченные ресурсы самих Hololens представляют собой довольно серьезное ограничение для работы с пространством, поэтому работа с представленными подходами пока не выйдет за рамки эксперимента. Самым полезным для нашей работы оказалось написание шейдера материала, о котором, возможно, мы расскажем в следующей статье.
Если же брать небольшие значения Extents и обрабатывать только часть объектов, то описанным выше подходом можно решать интересные задачи, например реконструкцию частей тела.
Мы очень надеемся, что если когда второе поколение все же выйдет на российский рынок, точность и возможность обработки существенно возрастут (привет, Azure Kinect и Snapdragon). А пока лучше обращать внимание на отдельные камеры глубины или же работать в рамках существенных ограничений.
Начало работы с HoloLens (1-го поколения)
Готовы к поэтапному переходу в мир голограмм? Вот некоторые сведения, которые помогут приступить к работе.
в этом руководством представлено введение в смешанную реальность, жесты для взаимодействия с голограммами и введение в Windows holographic.
Откройте для себя смешанную реальность
на HoloLensе голограммы смешиваются с физической средой, чтобы выглядеть и звучит так, как они являются частью вашего мира. Даже если самые распространенные голограммы все еще видны Вам, вы по-прежнему можете видеть вашу окружающую рамку, свободно перемещаться и взаимодействовать с другими людьми и объектами. Мы вызываем этот опыт «Mixed Reality».
В holographic-кадре размещается голограмма, где ваши глаза наиболее чувствительны к деталям, а lensesное зрение не скрывается. Пространственный звук позволяет определить голограмму, даже если она находится за вами. а так как HoloLens узнает и понимает вашу среду, вы можете размещать голограммы на реальных объектах и, таким образом, выполнять приложения и игры. Таким образом, символ игры может располагаться на диване, или пробельные роботы могут должно содержать из стен.
использование HoloLens с вашими руки
Навигация в HoloLens очень похожа на использование смартфона. Вы можете использовать руки для работы с Windows holographic, меню и кнопками. Вместо того чтобы нажимать, щелкая или касаясь, вы будете использовать свое касание, ваш голосаи жесты, чтобы выбрать приложения и голограммы, а также обойтись HoloLens.
когда вы узнаете об этих основных взаимодействиях, обходится HoloLens будет привязывать.
Мы рассмотрим основы при первом использовании HoloLens. Кроме того, вы найдете учебник по жестам в меню » Пуск » — найдите приложение «Знакомство с жестами».
Поле отслеживания движений рук
Датчики устройства HoloLens могут отслеживать происходящее на расстоянии около метра по обе стороны от вас. При использовании рук они должны оставаться в пределах этого поля, иначе HoloLens не сможет их определить. По мере движения фрейм перемещается вместе с вами.
открытие меню с помощью раскрытия
Чтобы открыть меню » Пуск «, сделайте следующее:
Выбор голограмм с помощью взгляда и касания Air
Чтобы выбрать приложение или другую голограмму, Air коснитесь его при взгляде непосредственно на голограмму, которую вы выбираете. Выполните следующие действия.
Выбор голограммы с помощью голоса
Голограммы и приложения
Теперь настало время постановки жестов в тест!
установленные приложения можно найти в меню и в Microsoft Store есть больше приложений для HoloLens (1 общий).
Откройте меню Пуск и выберите приложение.
использование приложений на HoloLens немного отличается от на компьютере. некоторые приложения используют 2d-представление и выглядят как другие Windows приложения. Другие приложения (иммерсивное приложение) используют трехмерное представление, а при запуске они становятся единственным приложением, которое вы видите.
При размещении окна приложения или средства запуска приложения оно остается на месте до тех пор, пока вы не удалите его. Вы можете в любое время переместить или изменить размер этих голограмм на домашней странице смешанной реальности.
Перемещение, изменение размера и вращение приложений
перемещение и изменение размеров приложений в HoloLens работает немного иначе, чем на компьютере. Вместо перетаскивания приложения вы будете использовать свое взгляд, а также жест или щелчк. Можно также поворачивать окно приложения в трехмерном пространстве.
Переупорядочение приложений с помощью голосового взгляда в приложении и скажите «мне», «больше» или «меньше». или поКортана переместить приложение: скажите «эй, Кортана, переместить *имя приложения * здесь».
Перемещение приложения
Взгляните на приложение (в заголовке окна приложения) и выполните одно из следующих действий.
Если вы удаляете приложения при их перемещении, не забудьте продолжить свою работу в кадре жеста, следуя за ним.
Изменение размера приложения
Взгляните на приложение и выполните одно из следующих действий.
В режиме настройки можно переместить или изменить размер любой голограммы.
Поворот приложения
Взгляните на приложение и коснитесь и удерживайте обе руки, чтобы выбрать его. Поверните приложение, сохранив одну руку и переместив ее в другое. Когда все будет готово, Повысьте свои индексы.
Прокрутка содержимого в окне приложения
Взгляните на содержимое окна приложения. Коснитесь и удерживайте, а затем переместите руку немного вверх или вниз для прокрутки содержимого.
совместное использование HoloLens с несколькими людьми
обычно общий доступ к одной HoloLens с большим количеством людей или несколько людей совместно используют набор HoloLensных устройств.
Предоставление общего доступа нескольким людям с использованием собственной учетной записи
предварительное требование: HoloLens (1-й общий) необходимо обновить до Windows Holographic for Business.
при использовании собственных учетных записей Azure Active Directory (Azure AD) несколько пользователей могут использовать собственные параметры пользователя и данные пользователя на устройстве.
чтобы убедиться, что несколько пользователей могут использовать собственные учетные записи на HoloLens, выполните следующие действия.
чтобы использовать HoloLens, каждый пользователь должен выполнить следующие действия.
Если устройство используется другим пользователем, нажмите кнопку питания один раз, чтобы вернуться в режим ожидания. Затем снова нажмите кнопку питания, чтобы вернуться на экран блокировки.
Используйте учетные данные учетной записи Azure AD для входа на устройство. если вы используете устройство впервые, вам потребуется откалибровать HoloLens своими глазами.
чтобы просмотреть список пользователей устройства или удалить пользователя с устройства, перейдите в раздел Параметры учетные записи других пользователей.
Поделиться с несколькими людьми, используя одну и ту же учетную запись
при использовании одной учетной записи пользователя несколько пользователей также могут совместно использовать устройство HoloLens.
пользователи, совместно использующие одну и ту же учетную запись, должны будут повторно откалибровать HoloLens в Параметры. Подробнее о калибровке.
соответствие щелчку HoloLens (1-го поколения)
HoloLens (первое поколение) предоставляет еще один способ взаимодействия с голограммами. свяжите его с HoloLens, а затем используйте его вместе с бегунком, чтобы выбрать, прокрутить и многое другое.
Дальнейшие действия
Поздравляем! вы можете использовать HoloLens (1-й общий).
теперь вы можете настроить HoloLens (1-го поколения) в соответствии с конкретными потребностями.
Помогите! Мои голограммы не видны
если вы не видите голограмм, которые вы поместили при использовании HoloLens, выполните следующие действия:
HoloLens 2
Узнайте о функциях HoloLens 2 и ознакомьтесь с техническими характеристиками.
Действуйте точно
Оставайтесь вовлеченными в рабочий процесс без использования рук дольше и комфортнее, чтобы безопасно выполнять задачи без ошибок.
Совместно работайте без границ
Общайтесь с удаленными коллегами, работая вместе над голограммами, чтобы решать проблемы в режиме реального времени.
Уверенно внедряйте инновации
Получите доступ к отказоустойчивой экосистеме приложений, которые поддерживаются средствами обеспечения безопасности и надежности платформы Microsoft Azure, а также ее возможностями масштабирования.
Действуйте точно
Сосредоточьтесь на безопасном выполнении задач без ошибок благодаря отслеживанию движений рук и глаз, встроенным голосовым командам, пространственному сопоставлению и большой области обзора.
Отслеживание движений рук
Полное отслеживание движений рук: касайтесь голограмм, берите и перемещайте их естественным образом. HoloLens 2 адаптируется к вашим рукам, поэтому голограммы реагируют как реальные объекты.
Поддержка голоса
Встроенные голосовые команды позволяют пользователям быстро перемещать и управлять HoloLens 2, когда руки заняты чем-либо.
Отслеживание движений глаз
HoloLens 2 точно определяет, куда вы смотрите, чтобы понять ваши намерения и адаптировать голограммы к вашим глазам в режиме реального времени.
Пространственное сопоставление
Легко сопоставляйте свою физическую среду и разрешайте привязку цифрового контента к объектам или поверхностям, где бы вы ни находились.
Большая область обзора
Область обзора в два раза больше, чем у первоначального устройства HoloLens. Читайте шрифт размером 8 пунктов на голографическом веб-сайте, точно взаимодействуйте с голограммами, создавайте смешанную реальность и погружайтесь в нее.
Совместно работайте без границ
Общайтесь с удаленными коллегами в режиме реального времени и работайте вместе на голографическом холсте, наложенном в вашей физической среде, чтобы быстро решать проблемы на месте.
Легко делитесь с другими информацией о событиях с помощью фотографий и видео в режиме реального времени посредством записи смешанной реальности.
Выполняйте задачи беспрепятственно: вам не будут мешать работать провода и выносные блоки.
Обеспечьте возможность присутствия и обмена информацией в любом месте, осуществляя потоковую передачу высококачественных трехмерных ресурсов, которые можно привязывать к местоположению и (или) объекту, сохраняющемуся среди пользователей.
Уверенно внедряйте инновации
При использовании HoloLens 2 у вас будет доступ к отказоустойчивой экосистеме приложений, поддерживаемых средствами обеспечения безопасности и надежности облака Microsoft, а также его возможностям масштабирования.
Экосистема приложений
Обеспечьте рентабельность инвестиций с помощью HoloLens 2. Выбирайте из более чем 200 корпоративных решений смешанной реальности от Microsoft Dynamics 365 и партнеров Microsoft по смешанной реальности.
Windows Holographic
Обеспечьте непрерывность бизнеса с помощью версии Windows 10, предназначенной для HoloLens 2, с коммерческими возможностями управления и обновлениями функций.
Windows Hello
Быстро и безопасно входите в систему устройства HoloLens 2 с помощью биометрических данных на основе радужной оболочки глаза и начинайте работать без ввода учетных данных.
Управляйте устройствами удаленно
Управляйте устройствами HoloLens 2 с помощью Microsoft Intune или другого решения.

Работайте в регулируемых средах
HoloLens 2 включает обширный портфель устройств, которые поддерживают среды с жестким регулированием, соответствуют стандарту ISO, класс 5.0, и имеют сертификат UL, класс 1, категория 2.
HoloLens 2
HoloLens 2, вид сверху
HoloLens 2, вид справа
Дисплей МЭМС (микроэлектромеханические системы)
Источник питания
Соединительный ремешок
Источник объемного звука
Рукоятка системы подгонки по размеру
Технические характеристики HoloLens 2
Дисплей
Оптика
Прозрачные голографические линзы (волноводы)
Разрешение
Источники света 2k 3:2
Голографическая плотность
>2,5 тысячи радиантов (световых точек на радиан)
Визуализация с учетом положения глаз
Оптимизация отображения с учетом положения глаз в трех измерениях
Датчики
Отслеживание движений головы
4 камеры, чувствительные к видимому свету
Отслеживание движений глаз
Глубина
Времяпролетный датчик глубины, 1 Мп
Гиростабилизатор
Акселерометр, гироскоп, магнитометр
Камера
Фотографии 8 Мп, видео 1080p, 30 кадр/с
Аудио и речь
Массив микрофонов
Динамики
Встроенный объемный звук
Анализ человека
Отслеживание движений рук
Полностью поворачиваемая модель с двумя руками, прямое взаимодействие
Отслеживание движений глаз
Отслеживание в реальном времени
Речь
Управление на устройстве, естественный язык с подключением к Интернету
Windows Hello
Безопасность корпоративного класса с распознаванием по радужной оболочке глаза
Анализ окружающей обстановки
Отслеживание шести степеней свободы
Отслеживание местоположения без пространственных ограничений
Пространственное сопоставление
Сетка среды, обновляемая в режиме реального времени
Запись смешанной реальности
Фотографии и видеозаписи, объединяющие голограммы и физическую среду
Вычислительные ресурсы и подключение
Вычислительная платформа Qualcomm Snapdragon 850
Голографический процессор (HPU)
Специализированный голографический процессор второго поколения
Память
Хранилище
Wi-Fi
Wi-Fi: Wi-Fi 5 (802.11 AC 2×2)
Bluetooth
Посадка по размеру
Один размер
Надевается поверх обычных очков
Масса
Операционная система Windows Holographic
Microsoft Edge
Dynamics 365 Remote Assist
Dynamics 365 Guides
3D Viewer
Питание
Продолжительность автономной работы
2–3 часа активного использования
Зарядка
USB-PD для быстрой зарядки
Охлаждение
Пассивное (без вентиляторов)
Содержит литиевые аккумуляторы
