Реализация реалистичной визуализации в  современных   презентационных комплексах               

С.В. Андреев,
н.с.,
esa@keldysh.ru
И.В. Валиев,
н.с.,
valiev@gin.keldysh.ru
А.Г. Волобой,
 с.н.с., к.ф.-м.н., доцент,
voloboy@gin.keldysh.ru
ИПМ им. М.В. Келдыша РАН, г. Москва

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

 

This article describes application of graphics accelerators for fast realistic rendering of scenes with the quality maximally close to the results of ray tracing method. The solution was used for organization of interactive demonstration in the modern presentation systems.

Введение

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

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

1. Презентационный комплекс Terminal V

Одним из примеров презентационной системы является комплекс Terminal V (рис. 1), находящийся в Австрии и описанный на сайте [1]. Он представляет собой демонстрационный зал со зрительными местами, обращенными к трем соединенным экранам, стоящим под углом в 120 градусов — фронтальному, левому и правому.

 

t5

рис. 1. Схема комплекса Terminal V

Этот комплекс управляется системой из семи компьютеров, объединенных в локальную сеть. Два из них управляют выводом стереокадра на фронтальный экран: первый компьютер выводит правый канал стереокадра фронтального экрана, второй — левый канал стереокадра. Соответственно, два следующих компьютера выводят стереокадр на левый экран, и еще два — на правый. Все эти шесть серверных компьютеров, выводящие изображения на экраны комплекса, управляются основным компьютером («мастером»), подключенным к обычному монитору, который является местом оператора презентационного комплекса. Таким образом, система предназначена для показа протяженных панорамных стереокадров, где каждый результирующий стереокадр состоит из трех частей (левый, правый и фронтальный экраны). Система управляется оператором с помощью компьютера с обычным монитором.

Программный комплекс реалистичной визуализации Inspirer2 [2], разработанный в Институте прикладной математики им. М.В.Келдыша РАН, позволяет физически аккуратно рассчитывать реалистичные изображения моделей трехмерных сцен. Он был также адаптирован по  презентационный комплекс Terminal V.

Базовым методом генерации изображений является обратная детерминистическая трассировка лучей. Этот точный метод достаточно ресурсоемок и не позволяет визуализировать сцены в режиме реального времени, необходимого для проведения презентаций. Поэтому для визуализации в реальном времени была выбрана платформа OpenGL в качестве базового уровня визуализации. Аппаратная поддержка визуализации через OpenGL является чрезвычайно быстрой даже для персональных компьютеров благодаря индустрии компьютерных игр [3]. Таким образом, возникает задача сделать, чтобы быстрая OpenGL визуализация максимально возможно совпадала с визуализацией при помощи трассировки лучей.

2. Атрибуты поверхности и интерполяция текстуры

Комплекс Inspirer2 для обеспечения физически аккуратного моделирования распространения света и создания реалистичных изображений поддерживает следующие оптические атрибуты поверхности: диффузное отражение, зеркальное отражение, диффузное пропускание, зеркальное пропускание, cамосвечение (излучение световой энергии геометрическим объектом сцены). Все эти атрибуты, кроме диффузного пропускания, поддерживаются OpenGL. Цвет для каждого атрибута может быть как однородным, так и заданным текстурой.

Кроме перечисленного комплекс позволяет создавать правильные изображения оптически сложных материалов, заданных с помощью двунаправленных функций отражения/пропускания (ДФО/ДФП) в наиболее общем табличном представлении. Это позволяет получить корректные изображения для, например, сложных компонентных автомобильных красок. При использовании OpenGL визуализации было решено использовать эти функции посредством сферических текстур [2].

Цвет текстурированной поверхности вычисляется в OpenGL через mipmaps – ряд изображений текстуры с разрешением каждого следующего изображения в 2 раза меньше предыдущего. В зависимости от расстояния до камеры, отображения текстуры и разрешения рисуемого изображения, подбираются 2 изображения текстуры с большим и меньшим разрешением, производится интерполяция между 4 пикселями в каждом изображении, а затем - между двумя вычисленными пикселями. Такой же алгоритм применяется и для метода трассировки лучей.

3. Источники света

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

OpenGL накладывает свои ограничения на использование источников света. Гониограмма не поддерживается в OpenGL и, следовательно, не может быть использована при OpenGL визуализации. Площадные источники освещения также не поддерживаются в OpenGL. Сила источника света, задаваемая в OpenGL в диапазоне от 0 до 1, пересчитывается по формуле, обеспечивающей такой же цвет поверхности, что и при трассировке лучей.

4. Модель освещения

Inspirer2 поддерживает физически правильную модель освещения. Диффузное отражение и пропускание рассеивают падающее излучение согласно закону Ламберта, яркость рассеивающей поверхности одинакова во всех направлениях и пропорциональна освещенности поверхности. Зеркально отраженное излучение рассеивается в зависимости от коэффициента глянцевости поверхности. В компьютерной графике используются две модели глянцевого отражения источника света.  OpenGL использует Blinn-Phong shading model [4], тогда как метод трассировки лучей обычно использует Phong shading model [5]. Для того чтобы результаты визуализации были одинаковы была обеспечена возможность использования Blinn-Phong shading model и для метода трассировки лучей.

5. Преобразование яркости в цвет монитора

Метод трассировки лучей в Inspirer2 вычисляет физическую яркость пикселей и использует двухступенчатое преобразование яркости в цвет монитора. Сначала применяется кривая чувствительности человеческого глаза (это стандартная кривая Международной комиссии по освещению [6]), а затем кривая отклика монитора.

Визуализация OpenGL не работает с физическими яркостями, а цвет пикселя вычисляется как сумма произведений цвета источника света (в диапазоне [0 – 1]), с учетом ослабления в зависимости от расстояния и атрибутов поверхности.  Для сопоставления результатов OpenGL и метода трассировки лучей в последнем применялось линейное преобразование яркости пикселя в цвет монитора.

Результаты

Результаты примененных методов показаны на рис. 2 и 3.

11             12

рис. 2. Автомобиль, окрашенный краской, заданной с помощью ДФО, в сцене с HDRI освещением и фоном
(
OpenGL визуализация слева и трассировка лучей справа)

 

21          22

рис. 3. Салон автомобиля, освещенный двумя точечными источниками света (OpenGL визуализация слева  и трассировка лучей справа)

В результате разработанных алгоритмов комплекс Inspirer2 позволяет генерировать вполне реалистичные изображения с помощью аппаратных ускорителей OpenGL. Это обеспечило возможность проведения качественных интерактивных стерео демонстраций на штатном оборудовании Terminal V [7].

Работа поддержана грантом РФФИ № 11-01-00870 и фирмой Integra Inc. (Япония).

Литература

1.  Terminal V. http://www.vr-center.at/;

2.  Ignatenko A., Barladian B., Dmitriev K., Ershov S., Galaktionov V., Valiev I., Voloboy A. A Real-Time 3D Rendering System with BRDF Materials and Natural Lighting // Proc. GraphiCon-2004 – 14-th International Conference on Computer Graphics and Vision, Moscow, 2004, pp.159-162.

3.  А.В. Боресков. Графика трехмерной компьютерной игры на основе OpenGL. Изд. «Диалог-МИФИ», Москва, 2004.

4.  Wikipedia the free encyclopedia. Blinn-Phong shading model. http://en.wikipedia.org/wiki/Blinn;

5.  Wikipedia the free encyclopedia. Phong shading. http://en.wikipedia.org/wiki/Phong_shading;

6.  IESNA Lighting Handbook by Mark S. Rea. Reference & Application. 8th ed., New York, 1993.

7.  С.В. Андреев, В.А.Галактионов, Е.Ю. Денисов, Н.Е. Кирилов. Синтез фотореалистичных трехмерных изображений в современных системах презентаций // "Программные продукты и системы", № 3, 2007, с.37-40.