Видео маппинг, видео перформансы

Использование камеры Intel RealSense с TouchDesigner. Часть 2

Содержание материала

 

Демонстрация 2. Отслеживание маркера RealSense CHOP


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

  • 1. Добавьте узел RealSense CHOP в сцену.
  • 2. На странице параметров Setup узла RealSense CHOP выберите для параметра Mode значение Marker Tracking.
  • 3. Создайте ресурс Movie File в TOP.
  • 4. На странице параметров Play узла TOP в разделе File выберите и загрузите цифровое изображение, для которого у вас также есть печатная версия.
  • 5. Перетащите Movie File в TOP на страницу параметров Setup узла RealSense CHOP и в ячейку Marker Image TOP в нижней части страницы.
  • 6. Создайте узлы Geometry COMP, Camera COMP, Light COMP и Render TOP.
  • 7. Как было сделано ранее на шаге 7 в демонстрации 1, экспортируйте канал tx из RealSense CHOP и перетащите его в параметр Translate X узла Geometry COMP.
  • 8. Создайте узел Reorder TOP и соедините его с узлом Render TOP. На странице параметров Reorder узла Output Alpha выберите One в раскрывающемся списке.
  • 9. Поместите напечатанное изображение цифрового файла перед камерой Intel RealSense и подвигайте его. Камера должна отслеживать движение и выдавать его узлу Render TOP.
  • Числа в RealSense CHOP также изменятся.

 

Рисунок 5. Это полный макет демонстрации с отслеживанием маркера

 

Рисунок 6. На странице параметров узла Geo COMP канал tx из узла RealSense CHOP перетащен на параметр Translate x

Отслеживание глаза в TouchDesigner с помощью узла RealSense CHOP

На палитре программ TouchDesigner в разделе RealSense есть шаблон eyeTracking, который можно использовать для отслеживания движения глаз пользователя. Этот шаблон использует отслеживание пальцев/лица узла RealSense CHOP; для узла RealSense TOP должен быть задан Color. В шаблоне зеленые прямоугольники WireFrame двигаются в соответствии с движением глаз человека и накладываются на цветное изображение человека в RealSense TOP.

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

 

Рисунок 7. Обратите внимание, что глаза отслеживаются даже через очки

Демонстрация 3, часть 1. Простой способ настройки полнокупольного рендеринга или виртуальной реальности

В этой демонстрации мы берем файл и показываем, как представить его в полнокупольном рендеринге и в 360-градусной виртуальной реальности. Я уже подготовила такой файл для загрузки. Это файл chopRealSense_FullDome_VR_render.toe.

Краткое описание процесса создания этого файла
В этом файле я хотела разместить геометрические фигуры (сферу, тор, цилиндры и прямоугольники) в сцене. Поэтому я создала несколько узлов SOP для этих различных геометрических фигур. Каждый узел SOP был присоединен к узлу Transform SOP для перемещения (преобразования) геометрических фигур в разных местах сцены. Все узлы SOP соединены с одним узлом Merge SOP. Узел Merge SOP подан узлу Geometry COMP.

 

Рисунок 8. Это первый шаг в разметке геометрических фигур, размещенных в сцене, в загружаемом файле

Затем я создала узел Grid SOP и узел SOP–DAT. Узел SOP–DAT был использован для получения экземпляра Geometry COMP, чтобы можно было добавить в сцену больше геометрических фигур. Я также создала узел Constant MAT, выбрала зеленый цвет и включила параметр WireFrame на странице Common.

 

Рисунок 9. Узел SOP–DAT был создан с помощью узла Grid SOP

Затем я создала узел RealSense CHOP и соединила его с узлом Select CHOP, в котором я выбрала канал hand_r/wrist:tx для отслеживания и переименовала его в x. Я соединила Select CHOP с узлом Math CHOP, чтобы можно было изменить дальность, и соединила Math CHOP с узлом Null CHOP. Рекомендуется всегда завершать цепочку узлом Null или Out, чтобы было удобнее вставлять новые фильтры в цепочку. Затем я экспортировала x Channel из узла Null CHOP в параметр Scale X узла Geometry COMP.

Это обеспечивает управление всеми перемещениями геометрических фигур по оси x в сцене, когда я провожу правой рукой перед камерой Intel RealSense.

 

Рисунок 10. Данные отслеживания из узла RealSense CHOP используются для создания анимации в реальном времени и движения геометрических фигур вдоль оси x

Для создания полнокупольного 180-градусного рендеринга из этого файла

  • 1. Создайте узлы Render TOP, Camera COMP и Light COMP.
  • 2. На странице параметров Render узла Render TOP выберите Cube Map в раскрывающемся меню Render Mode.
  • 3. На странице параметров Common узла Render TOP задайте для параметра Resolution разрешение с соотношением сторон 1:1, например 4096 на 4096, для получения разрешения 4K.
  • 4. Создайте узел Projection TOP и соедините с ним узел Render TOP.
  • 5. На странице параметров Projection узла Projection TOP выберите Fish-Eye в раскрывающемся меню Output.
  • 6. (Это необязательно, в этом случае у файла будет черный фон.) Создайте узел Reorder TOP и на странице параметров Reorder в правом раскрывающемся меню Output Alpha выберите One.
  • 7. Теперь все готово либо к непосредственному выполнению анимации, либо к экспорту файла фильма. Инструкции см. в первой части этой статьи. Вы создаете круговую купольную анимацию типа «Рыбий глаз». Это будет окружность с квадратом.

    Чтобы использовать альтернативный метод, вернитесь на шаг 2 и вместо выбора Cube Map в раскрывающемся меню Render Mode выберите Fish-Eye(180). Теперь перейдите к шагу 3, а также при желании — к шагу 6. Теперь анимация готова к запуску или к экспорту.
  • Для создания 360-градусной виртуальной реальности из этого файла
    1. Создайте узлы Render TOP, Camera COMP и Light COMP.
  • 2. На странице параметров Render узла Render TOP выберите Cube Map в раскрывающемся меню Render Mode.
  • 3. На странице параметров Common узла Render TOP задайте для параметра Resolution разрешение с соотношением сторон 1:1, например 4096 на 4096, для получения разрешения 4K.
  • 4. Создайте узел Projection TOP и соедините с ним узел Render TOP.
  • 5. На странице параметров Projection узла Projection TOP выберите Equirectangular в раскрывающемся меню Output. При этом будет автоматически установлено соотношение сторон 2:1.
  • 6. (Это необязательно, в этом случае у файла будет черный фон.) Создайте узел Reorder TOP, затем на странице параметров Reorder в правом раскрывающемся меню Output Alpha выберите One.
  • 7. Теперь все готово либо к непосредственному выполнению анимации, либо к экспорту файла фильма. Инструкции см. в первой части этой статьи. При экспорте фильма вы создаете прямоугольную анимацию с соотношением сторон 2:1 для просмотра в очках виртуальной реальности.

 

Рисунок 11. В файл добавлены длинные оранжевые узлы Tube SOP. Вы можете добавить собственную геометрию в этот файл

Вывод на Oculus Rift* из TouchDesigner при использовании камеры Intel RealSense

В TouchDesigner создано несколько шаблонов для загрузки. В них показано, как настроить Oculus Rift в TouchDesigner. Один из этих шаблонов — OculusRiftSimple.toe — можно найти в архиве. Для просмотра в Oculus Rift, естественно, компьютер должен быть подключен к Oculus Rift. Без Oculus Rift можно создать файл, просмотреть изображения в узлах LeftEye Render TOP и RightEye Render TOP и отобразить их в фоне сцены. Я добавила поддержку Oculus Rift в файл, использованный в демонстрации 3.

Таким образом, камера Intel RealSense анимирует изображение, которое я вижу в Oculus Rift.

 

Рисунок 12. Здесь в фоне отображается левый глаз и правый глаз. Большая часть анимации этой сцены управляется путем отслеживания из узла CHOP камеры Intel RealSense. Файл, использованный для получения этого изображения, можно загрузить, нажав на кнопку в правом верхнем углу этой статьи, chopRealSense_FullDome_VRRender_FinalArticle2_OculusRiftSetUp.toe

Источник: habrahabr.ru

EventCatalog.ru — всё для организации мероприятий!