Отслеживание взгляда в HoloLens 2

Демонстрация отслеживания взгляда в MRTK

HoloLens 2 обеспечивает новый уровень контекста и понимания человеком в голографическом интерфейсе, предоставляя разработчикам возможность использовать сведения о том, что смотрит пользователь. На этой странице объясняется, как разработчики могут использовать отслеживание взгляда для различных вариантов использования и что следует искать при проектировании взаимодействия с пользователем на основе взгляда.

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

Поддержка устройств

Компонент HoloLens (1-го поколения) HoloLens 2 Иммерсивные гарнитуры
Взгляд ✔️

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

Если вы хотите посмотреть, как работает отслеживание головы и взгляда, ознакомьтесь с нашей видеодемонстрацией Designing Holograms - Head Tracking and Eye Tracking (Создание голограмм — отслеживание головы и взгляда) ниже. По завершении продолжите изучать другие темы.

Это видео было записано из приложения Designing Holograms для HoloLens 2. Скачайте его и насладитесь всеми его возможностями здесь.

Калибровка

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

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

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

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

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


Доступные данные отслеживания взгляда

Отслеживание взгляда на HoloLens 2 позволяет разработчикам разрабатывать естественные и интуитивно понятные сценарии ввода и взаимодействия. API отслеживания взгляда предоставляет сведения о том, что пользователь смотрит в виде единого луча взгляда (источник и направление взгляда) при приблизительно 30 кадров/с (30 Гц). Чтобы отслеживание взгляда работало точно, каждому пользователю нужно пройти калибровку отслеживания взгляда. Дополнительные сведения о том, как получить доступ к данным отслеживания взгляда, см. в руководствах разработчиков по использованию взгляда в DirectX и взгляда в Unity.

Прогнозируемый взгляд находится примерно в пределах 1,5 градуса в визуальном углу вокруг фактической цели (см. рисунок ниже). Ожидаются небольшие погрешности, поэтому разработчикам следует запланировать некоторое поле вокруг этого значения нижней границы (например, 2,0–3,0 градусов может привести к гораздо более комфортному взаимодействию). Мы более подробно рассмотрим, как решить вопрос о выборе небольших целевых объектов ниже.

Оптимальный размер цели на расстоянии 2 метра
Оптимальный размер цели на расстоянии 2 метра


Данные расширенного отслеживания глаз

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

Расширенные API отслеживания взгляда предоставляют доступ к существующим значениям отслеживания взгляда и новым функциям, таким как отдельные (левый и правый) векторы взгляда, поддерживаемая частота кадров и возможность задать частоту кадров отслеживания глаз 30, 60 или 90 кадров в секунду. Чтобы использовать API расширенного отслеживания глаз, ознакомьтесь с нашими руководствами разработчиков по использованию API-интерфейсов расширенного отслеживания глаз для машинного кода или Unity.

Варианты использования

Функция отслеживание взгляда предоставляет приложениям сведения о том, куда смотрит пользователь в реальном времени. В следующих вариантах использования описываются некоторые взаимодействия, которые возможны при отслеживании взгляда на HoloLens 2 в смешанной реальности. Эти варианты использования еще не являются частью интерфейса Голографической оболочки (интерфейс, который отображается при запуске HoloLens 2). Некоторые из них можно попробовать в наборе средств Смешанная реальность. Набор средств предоставляет несколько интересных и эффективных примеров использования отслеживания взгляда, таких как быстрый и удобный выбор целевых объектов, поддерживаемых глазами, и автоматическая прокрутка текста в зависимости от того, что смотрит пользователь.

Намерение пользователя

Сведения о том, где и что смотрит пользователь, предоставляют мощный контекст для других входных данных, таких как голос, руки и контроллеры. Эти данные можно применять в разных задачах. Например, пользователь может быстро и легко нацелиться на сцену, взглянув на голограмму и сказав "выбрать" (см. также взгляд и фиксацию) или "поместить это...", а затем посмотреть, где он хочет разместить голограмму, и сказать "... там". Подобные примеры доступны в наборах средств для смешанной реальности для выбора целевого объекта с поддержкой направления взгляда и позиционирования целевого объекта с поддержкой направления взгляда.

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

Неявные действия

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

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

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

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

  • Смарт-уведомления: Вас когда-нибудь раздражали уведомления, всплывающие прямо в середине вашего представления? Вы можете сделать это лучше, сместив уведомления, от которых пользователь в настоящее время смотрит. Это ограничивает отвлекающие факторы и автоматически закрывает их после завершения чтения пользователем.
  • Внимательные голограммы: Это голограммы, которые реагируют тонко, когда на них смотрит. Это может варьироваться от слегка светящихся элементов пользовательского интерфейса до медленно цветущих цветков и виртуальной собаки, начинающей смотреть назад на пользователя и вилять хвостом. Это взаимодействие может обеспечить интересное чувство связи и удовлетворенности в приложении.

Отслеживание внимания

Информация о том, где и что смотрят пользователи, может быть очень мощным инструментом. Он может помочь оценить удобство использования проектов и выявить проблемы в рабочих процессах, чтобы сделать их более эффективными. Визуализация отслеживания взгляда и аналитика являются распространенной практикой в различных областях приложений. Благодаря HoloLens 2 мы предоставляем новое измерение для этого понимания. Трехмерные голограммы можно поместить в реальные контексты и оценить соответствующим образом.

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

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

Другие приложения из этой сферы поддерживают следующие функции:

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

Другие варианты использования

  • Игровой: Вы когда-нибудь хотели иметь сверхдержавы? Вам сюда!

Вы можете левитировать голограммы, глядя на них.

Стреляйте лазерными лучами из ваших глаз - попробуйте его в RoboRaid для HoloLens 2.

Превратить врагов в камень или заморозить их.

Примените рентгеновское зрение, чтобы исследовать здания.

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

  • Выразительные аватары: Отслеживание взгляда помогает в более выразительных трехмерных аватарах, используя данные отслеживания глаз в реальном времени, чтобы анимировать глаза аватара и заставить их следовать тому, что смотрит пользователь.

  • Текстовая запись: Отслеживание взгляда можно использовать в качестве альтернативы для ввода текста с минимальными усилиями, особенно если речь или руки неудобны в использовании.


Использование взгляда для взаимодействия

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

Резервные решения, когда отслеживание взгляда недоступно

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

  • Системе не удалось откалибровать пользователя.
  • Пользователь пропустил калибровку.
  • Пользователь откалиброван, но решил не предоставлять приложению разрешение на использование данных отслеживания взгляда.
  • У пользователя есть уникальные очки или некоторые условия глаз, которые система еще не поддерживает.
  • Внешние факторы, препятствующие надежному отслеживанию глаз, такие как пятно на визор HoloLens или очки, интенсивный прямой солнечный свет, и окклюзии из-за волос перед глазами.

Разработчики должны обеспечить соответствующую резервную поддержку для этих пользователей. На странице Отслеживание взгляда в DirectX мы объясним API, необходимые для определения доступности данных отслеживания взгляда.

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

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

Откат для приложений, использующих взгляд в качестве основного указателя ввода

Если ваше приложение использует взгляд в качестве входных данных указателя для быстрого выбора голограмм в сцене, но данные отслеживания взгляда недоступны, рекомендуется вернуться к взгляду головы и показать курсор взгляда головы. Мы рекомендуем использовать время ожидания (например, 500–1500 мс), чтобы определить, следует ли переключаться. Это действие предотвращает появление курсоров каждый раз, когда система может ненадолго потерять отслеживание из-за быстрых движений глаз или подмигнуть и мигать. Если вы разработчик Unity, автоматический переход на головной взгляд уже обрабатывается в Смешанная реальность Toolkit. Если вы являетесь разработчиком DirectX, вам нужно самостоятельно справиться с этим параметром.

Откат к другим приложениям для отслеживания взгляда

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


Мы надеемся, что на этой странице вы получили хороший обзор, чтобы вы начали понимать роль отслеживания взгляда и ввода взгляда для HoloLens 2. Чтобы приступить к разработке, ознакомьтесь с нашими сведениями о роли взгляда для взаимодействия с голограммами, взглядом в Unity и взглядом в DirectX.

См. также раздел