Исследователи из Disney Research создали массив камер и алгоритм для съемки объемных панорамных видеороликов, а также их отображения в шлеме виртуальной реальности. В отличие от аналогичных разработок, метод позволяет снимать сцены с двигающимися объектами, к примеру, людьми. Посвященная разработке статья опубликована в журнале ACM Transactions on Graphics.
Как правило, приложения для шлемов виртуальной реальности выводят на экран полностью искусственное изображение. В таком режиме шлем может создавать для каждого глаза отдельное изображение, что позволяет создавать ощущение объема у пользователя. Но некоторые приложения используют изображения реального мира. К примеру, это может быть панорамное видео или панорама местности на картографическом сервисе. В этом случае задача передачи объема усложняется, потому что для синтеза реалистичных изображений для глаз необходимо, чтобы объекты на сцене были сняты с разных ракурсов.
Специалисты в области графики предложили несколько технологических решений для этой задачи. К примеру, Google недавно представила камеру светового поля, состоящую из 16 камер, которые поворачиваются по кругу для съемки объемного изображения. Кроме того, несколько групп исследователей предлагали создавать стереоскопические панорамы с помощью одной камеры, вращающейся по кругу, но для этого необходимо сделать десятки или даже сотни снимков разных ракурсов. Такие подходы имеют сразу несколько недостатков, в том числе они требуют много времени на съемку и не позволяют захватывать сцены с двигающимися людьми и другими объектами.
Александр Соркин-Хорнунг (Alexander Sorkine-Hornung) и его коллеги из Disney Research разработали камеру и алгоритм для нее, позволяющие снимать стереоскопические панорамные видеоролики в том числе и динамических сцен. Авторы продемонстрировали работу камер и алгоритма на примере нескольких роликов:
Разработанный исследователями алгоритм создает на основе снимков с разных камер светопольное представление сцены. Также исследователи создали функцию, преобразующую координаты изображений в координаты единой цилиндрической панорамы. Для того, чтобы получать качественные промежуточные изображения исследователи измеряли оптический поток в соседних кадрах с разных камер. Для создания объемного изображения алгоритм создает два «среза» светового поля, соответствующих каждому глазу.
Разработчики создали камеру для съемки объемных панорам, состоящую из напечатанного на 3D-принтере корпуса и 16 камер с широкоугольными объективами. Сняв несколько панорамных роликов, они обработали их с помощью алгоритма. Для того, чтобы алгоритм мог отображать эффекты, позволяющие воспринимать объем, такие как параллакс движения, он заранее просчитывает несколько десятков панорам для разных положений головы. Благодаря этому пользователь может двигать головой в стороны и видеть соответствующие изменения в изображении.
Недавно специалисты из Facebook представили алгоритм для двухкамерных смартфонов, позволяющий им снимать объемные панорамы. После съемки фотографий алгоритм склеивает все изображения в единую панораму и накладывает их на 3D-модель сцены, созданную на основе данных о глубине на каждом кадре.
Григорий Копиев