Назад
Источник: Зори С.А., Лиссенко В.В., Гуров А.В. Методы синтеза реалистичных изображений рельефов и ландшафтов для параллельных вычислительных систем трехмерной компьютерной графики. / С.А. Зори, В.В. Лиссенко, А.В. Гуров // Журнал «Информатика и компьютерные технологии-2011». – Донецк: ДонНТУ, 2011. – С. 89-96. – EDN DPUNPS.
УДК 681.3

МЕТОДЫ СИНТЕЗА РЕАЛИСТИЧНЫХ ИЗОБРАЖЕНИЙ РЕЛЬЕФОВ И ЛАНДШАФТОВ
ДЛЯ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ ТРЕХМЕРНОЙ
КОМПЬЮТЕРНОЙ ГРАФИКИ

Лиссенко В.В., Гуров А.В., Зори С.А.

Донецкий национальный технический университет,

кафедра прикладной математики и информатики

liseenko.vitaliy.vladimirovich@gmail.com, al-gurov@mail.ru,

zori@pmi.donntu.edu.ua

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

Введение

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

На сегодняшний день существует большое количество методов синтеза стереоизображений рельефов и ландшафтов, реализация которых на традиционных средствах вычислительной техники имеет высокую вычислительную сложность, однако эффективность использования и реализации этих методов существенно повышается при наличии высокопроизводительных GPU и новейших технологий вычислений общего назначения на них (CUDA (NVidia), FireStream (ATI) и пр.).

Постановка задачи

Наиболее естественным векторным форматом представления информации о рельефов и ландшафтах являются иррегулярные сети треугольников, кусочно-линейно аппроксимирующие моделируемый рельеф ρ сетью треугольников. Растровые форматы представлены картами высот (цифровые модели местности – ЦММ) h : R2 → R, такой что ρ(x,z) = [x,h(x,z),z]; z,x ∈ [0,W], y ∈ [0,H], где W и H – ширина и высота карты высот соответственно и де-факто есть основным входным форматом.

Для выполнения задач визуализации в реальном времени необходима скорость смены кадров в пределах 25-50 FPS. Современные графические системы на базе ПК могут обеспечить производительность синтеза на уровне 108 треугольников в секунду, что является недостаточным для моделирований реальных ЦММ большого объема.

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

Анализ алгоритмов визуализации рельефов

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

- сеть треугольников со вспомогательной информацией в виде дерева либо другой структуры данных;

- множество одноразмерных заплаток, размещенных мозаичным способом;

- дерево, типично бинарное дерево треугольников или квадродерево квадратов, содержащее в узлах треугольники или заплатки (патчи);

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

Техника геометрического милмаппинга (GeoMipmaps) [1]

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

Геометрические карты отсечения (Geometry Clipmaps) [2]

– позволяет перенести существенную часть процесса построения LOD на аппаратные блоки видеоадаптера. VD-аппроксимация визуализируемого ландшафта кешируется в LVM как милман-пирамида, каждый следующий уровень которой представляет участок карты высот, охватывающий в 2 раза большую площадь. В процессе передвижения камеры, уровни пирамиды сдвигаются, а недостающие данные инкрементно загружаются в LVM.

Иерархическая триангуляция на основе квадродеревьев и бинарных деревьев треугольников.

Основная идея описываемых алгоритмов в создании иерархии полурегулярных сеток LOD посредством итеративных детализации или отрубления базовых геометрических моделей. Детализация заключается в итеративной бисекции основания равнобедренного прямоугольного треугольника, порождающей два подобных треугольника меньших размеров [3]. При отрублении используется обратный процесс – пары прямоугольных треугольников итеративно объединяются.

Классическим алгоритмом, использующим иерархическую триангуляцию на основе бинарных деревьев треугольников, является ROAM [4]. Он основан на бинарном дереве треугольников, которое является специальным случаем итеративной бисекции основания треугольника по базовой вершине. В процессе операции детализации, пара треугольников разбивается по общей базовой вершине, находящейся на смежных основаниях (рис. 1).

Иллюстрация метода ROAM
Рисунок 1. Иллюстрация метода ROAM

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

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

Анализ подходов к генерации стереоизображений

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

Стерео-изображение – картина или видеоряд, использующий два отдельных изображения, позволяющих достичь стереоэффекта.

Стереоэффект (зрительный) – ощущение протяжённости пространства и рельефности, возникающие при наблюдении реальных объектов, рассматривании стереопар, стереофотографий, стереоизображений и голограмм.

Основой стереоскопии являются два изображения полученных путем взгляда на объект с двух точек зрения (левый и правый глаз) (рис. 2).

Процесс получения пары изображений
Рисунок 2. Процесс получения пары изображений
Бинокулярная стереоскопия (анаглифовые очки)

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

В одном цветовом канале (например красном) передается изображение для левого глаза, в другом или двух других (например в синем и зеленом) – для правого (рис. 3). Для того чтобы правый глаз не увидел изображение из красного канала, а левый из сине-зеленого используются анаглифические очки в которых установлены светофильтры вместо линз (в рассматриваемом случае – для левого глаза – сине-зеленый, а для правого – красный). Распространены следующие варианты анаглифа:

– red-cyan (красный и сине-зеленый) – самый распространенный формат;

– black-white (чернобелый) – анаглиф с оттенками серого, используется с целью получения более равномерной яркости изображения в ущерб цветопередачи;

– yellow-blue (желтый и синий) – данная комбинация цветов RGB позволяет получить неплохую цветопередачу, однако изображение получится более холодным из-за использования синего, для данного варианта необходимо использовать очки с синим и желтым светофильтрами.

Анализируя выбранный подход к созданию стереоизображений, можно предложить ускорение

Процесс получения анаглифного изображения
Рисунок 3. Процесс получения анаглифного изображения

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

Процесс стереовизуализации с использованием GPU
Рисунок 4. Процесс стереовизуализации с использованием GPU

Выводы

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

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

современных видеокарт ПК, а также оценка их эффективности и анализа характеристик процесса синтеза в сравнении с «классическими» реализациями.

Литература

  1. Willem H. de Boer: Fast Terrain Rendering Using Geometrical MipMapping, Emersion Project, October 2000.
  2. Lossasso F. and Hoppe H. Geometry clippnaps: terrain rendering using nested regular grids. ACM Trans. Graph., 23(3):769–776, 2004.
  3. Duchaineau, M., Wolinsky, M., Sigeti, D.E., Miller, M.C., Aldrich, C., Mineev-Weinstein, M.B.: ROAMing terrain: Realtime optimally adapting meshes. In: Proceedings IEEE Visualization, pp. 81–88 (1997).