Американские инженеры создали специальную насадку для VR-очков, в которые вставляется смартфон, позволяющую определять позу тела и губ пользователя, а также его внешний вид. Насадка состоит из двух зеркальных полусфер, установленных напротив камеры смартфона, и позволяющих ей выступать в качестве простой камеры глубины. Разработка была представлена на конференции UIST 2019.
Многие современные системы виртуальной реальности оснащаются датчиками для захвата движения, что позволяет более реалистично изображать пользователя в виртуальном мире и использовать руки для взаимодействия с виртуальными объектами. Обычно такая система состоит из нескольких камер на передней панели шлема, направленных в разные стороны. Однако помимо полноценных VR-шлемов есть картонные vr-очки, работающие благодаря вставляемому в них смартфону, выводящему изображение виртуального мира на экран.
Поскольку большинство современных смартфонов оснащаются относительно качественными камерами, инженеры из Университета Карнеги — Меллона под руководством Роберта Сяо (Robert Xiao) предложили использовать встроенную камеру для отслеживания движений тела пользователя. В vr-очках смартфон располагается таким образом, что его основная камера направлена в сторону от пользователя. Это не позволяет использовать их для захвата движений тела. Авторы решили эту проблему с помощью двух зеркальных полусфер напротив камеры.
Прототип, созданный инженерами, состоит из обычных картонных очков виртуальной реальности (за время разработки они использовали разные модели, в том числе Google Cardboard), проволоки и закрепленных на ее концах двух полусфер с зеркальным покрытием. Благодаря такой форме зеркал камера смартфона способна захватывать существенную часть окружающего пространства, в том числе всю переднюю часть тела человека. Пара полусфер вместо одной нужна для того, чтобы алгоритмы могли составлять из двух кадров, снятых с разных ракурсов, данные о глубине на кадре.
После съемки кадра он пересылается со смартфона на сервер. Там сначала происходит развёртывание сферических изображений в прямоугольные, что возможно благодаря данным о расстоянии от камеры до сферы, угле съемки, а также калибровки. После этого прямоугольное изображение анализируется алгоритмом OpenPose, который размечает на теле ключевые точки, соответствующие положениям суставов и других частей. Для получения данных о форме губ используется отдельная нейросеть, способная различать пять их конфигураций.
Авторы предлагают использовать такую систему, чтобы распознавать жесты пользователя и позволять ему управлять виртуальными объектами и приложениями с помощью рук. Кроме того, они показали еще одно применение: они научили алгоритм создавать по данным с камеры виртуального аватара, раскрашенного так же, как и одежда пользователя.