ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Journal influence

Higher Attestation Commission (VAK) - К1 quartile
Russian Science Citation Index (RSCI)

Bookmark

Next issue

4
Publication date:
09 December 2024

The article was published in issue no. № 4, 1997
Abstract:
Аннотация:
Authors: Reshetnikov V.N. (rvn_@mail.ru) - Center of Visualization and Satellite Information Technologies SRISA (Professor, Supervisor), Moscow, Russia, Ph.D
Ключевое слово:
Page views: 19991
Print version

Font size:       Font:

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

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

С постоянным ростом требований к высокой сложности изображения, быстрой интерактивности, а также к более высокому разрешению, качеству и реализму отображаемых сцен предъявляются принципиально новые требования к компьютерным системам визуализации (КСВ), используемым для генерации изображения окружающей обстановки (которые пока не удовлетворяют ни 3D-акселераторы, ни рабочие станции). Современным требованиям к КСВ наиболее полно отвечают лишь самые мощные системы семейства ESIG 4XXX фирмы Evans&Sutherland. Достаточно широкому ряду применений удовлетворяют менее производительные системы R3D/PRO-1000 фирмы Lockheed Martin, Reality Engine фирмы Silicon Graphics, Maxvue фирмы CAE Electronics, ESIG 2XXX фирмы Evans&Sutherland и др.

 В РАН совместно с рядом предприятий разрабатывается система реального времени Voxel Volumes для отображения трехмерных сцен на базе высокопроизводительных DSP-процессоров (суммарная производительность до 2 млрд. оп/сек). Система решает следующие задачи: антиэлайсинг реального времени, трилинейную фильтрацию в реальном времени, спецэффекты (туман, дождь, снег), плавную смену уровней детальности, определение столкновений, динамическую подгрузку примитивов базы данных, динамическую подгрузку текстуры, защиту от перегрузок. При этом система обеспечивает полноцветную текстуру, полноразрядный цвет пикселя, среднюю глубинную сложность изображения, высокую пропускную способность шин и вычислительных ресурсов, аппаратную наращиваемость, многоканальность. Дополнительным положительным качеством системы является возможность программирования аппаратной части под конкретные задачи, предъявляемые пользователями, поскольку система базируется на DSP TMS320C80 фирмы Texas Instruments. Параллельно с разработкой аппаратной части системы визуализации разрабатывается программное обеспечение для создания трехмерных сцен.

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

То же самое можно сказать и в связи с применением Фонг (Phong)-интерполяции, при использовании которой требуется меньшее число многоугольников, чем при использовании Гуро (Gouraud)-интерполяции. Тем не менее для отображения реалистичного горного рельефа местности требуется достаточно большое количество многоугольников. Это же относится и к отображению скульптурных моделей, даже если применять NURBS (non-uniform rational B-splines) или другие spline surfaces. Все это говорит о необходимости обработки большого количества примитивов в системах визуализации.

Существующие алгоритмы визуализации работают с полигональными или полиномиальными описаниями либо с другими способами задания поверхностей. Поверхности высоких порядков, как правило, аппроксимируются многоугольниками или патчами для отображения, что приводит к большому числу последних. С другой стороны, использование полиномов высоких степеней также неудобно из-за сложности вычислений и ограничений по точности. Несмотря на то, что системы визуализации, использующие полигональное задание, получили широкое распространение в силу продвинутости архитектур и алгоритмов, актуальным остается решение вопроса об эффективности использования подобных систем для представления объемов (Volume Rendering). С практической точки зрения наиболее эффективной была бы универсальная система, обеспечивающая широкий круг задач с минимальной заменой программного обеспечения и, возможно, некоторых субмодулей под решение конкретной задачи. Обеспечение такой универсальности является одним из требований к системе визуализации нового поколения – Voxel Volumes.

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

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

2) эффективный метод растрирования с минимальным количеством вычислений.

Характерной особенностью предлагаемого метода задания отображаемых поверхностей является то, что основными примитивами выбраны поверхности второго порядка – квадрики. На этой базе строится класс свободных форм. Это дает возможность описывать сложные геометрические объекты, задавая функцию отклонения от базовой поверхности второго порядка. Частным случаем свободных форм является рельеф местности (Terrain), который задается двухмерной табличной функцией высот – отклонением относительно несущей плоскости.

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

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

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

Функции возмущения используются и для задания рельефа местности. Отметим, что обычный способ представления рельефа гранями требует большого количества многоугольников, в частности треугольников. Известно, что рельеф местности (Terrain) можно задать картой (сеткой) высот и без предварительной триангуляции его отобразить, получая при этом высокую реалистичность. Отличительной особенностью является алгебраическое задание базовой поверхности (как в случае свободных форм), а каждый узел сетки высот характеризуется только отклонением от этой поверхности. Предусматривается несколько уровней детализации, каждый из которых описывается своей картой высот. Представление карты высот как скалярного поля функциями возмущения позволяет ориентировать поле относительно базовой поверхности произвольным образом (наклонное, расходящееся в разные стороны и т.д.). Такой способ задания поверхности позволяет рассматривать карты высот как текстуру формы объекта, которая, как и обычная текстура, легко анимируется, требует минимального объема памяти, обеспечивает высокий реализм отображаемых трехмерных сцен. Для смены уровней детализации используется тот же механизм, что и для обычной текстуры.

Метод растрирования включает разработанный нами алгоритм многоуровневого рэй- кэстинга, осуществляющий эффективный поиск элементов объема – вокселов, участвующих в формировании изображения. Поиск производится в пространстве внутри куба от –1 до +1 по каждой координате, так что центр куба соответствует началу координат. На первом шаге рекурсии исходный объем разбивается на четыре подобъема в экранной плоскости. Для каждого подобъема выполняется тест на пересечение с объектом. Если пересечение имеет место, то подобъем подвергается следующему уровню рекурсии. Подобъемы, не пересекающиеся с объектом, дальнейшему погружению в рекурсию не подлежат, что соответствует исключению из рассмотрения квадратных областей экрана, на которые данный подобъем (следовательно, и поверхность объекта) не отображается. В процессе поиска вокселов, содержащих в себе участки поверхности объекта, формирующие изображение, алгоритм осуществляет обход кубического пространства по четверичному дереву, листья которого являются корнями двоичных поддеревьев. В процессе обхода дерева используется механизм многоуровневого маскирования в случае непрозрачных объектов. Применение проективного преобразования обобщает приведенный алгоритм на пирамидальные объемы, что позволяет синтезировать изображения с перспективой и учетом коррекции дисторсии. Подделение пространства наиболее просто осуществляется в кубе или параллелепипеде, однако при переходе к пирамидальному пространству (с учетом перспективы) можно столкнуться с проблемами либо увеличения порядка поверхностей, а следовательно, и количества вычислений, либо неоднородности пространственного описания элементов изображения (вокселов). Эти проблемы еще более усложняются при решении задачи коррекции дисторсии изображения. Задача подделения перспективного пространства без увеличения порядка поверхностей (аналогично подделению куба) была решена за счет трансформации пространства в пространство. При этом пирамидальное пространство может быть достаточно произвольной формы, что важно для коррекции дисторсии. На последнем уровне подделения получаются коэффициенты уравнения полярной плоскости (то есть касательной в данной точке поверхности), что упрощает учет освещения.

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

В случае решения таких задач, как Terrain Skinning, данный метод также имеет ряд преимуществ, а именно:

·   в геометрическом процессоре обрабатывается всего одна базовая (несущая) поверхность, например плоскость;

·   правильный приоритетный порядок видимых поверхностей рельефа обеспечивается соответствующим обходом дерева и системой масок;

·   задние поверхности рельефа отбрасываются автоматически (система без Z-буфера и без приоритетной сортировки способна правильно отображать объекты);

·   клиппирование рельефа пирамидой видимости становится ненужным, так как в процессе растрирования автоматически обеспечивается выборка только нужных высот из карты высот;

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

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

Наряду с Volume Rendering этот метод позволяет достигать качества изображения, сравнимого с методом трассировки лучей (Ray Tracing), но за меньшее время за счет быстрого поиска объектов, которые проверяются на пересечение лучей. Применение кластеризации в методе трассировки лучей ускоряет расчет, однако в предлагаемом методе список объектов, необходимых для тестирования, максимально локализован.

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

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

Визуализация четырехмерного куба

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

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

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

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

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

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

Системы отображения информации для машины виртуальной реальности

Важной составной частью проблемы визуализации является задача отображения информации, имитация человеческого зрения. Органы зрения человека позволяют видеть образы по крайней мере в виде полусферы ±180°, с градацией не менее 256 в каждом из базовых R, G, B цветов. Для построения компьютерной системы отображения реалистических образов окружающего мира требуется формирование цифровых изображений с разрешающей способностью до 10000´10000 пикселов в стереорежиме. Известно, что лучшие компьютерные мониторы обеспечивают вывод изображений не более 2000´2000 пикселов (1000 ´1000 элементов), следовательно, необходимо увеличение разрешающей способности дисплея не менее чем на порядок. В настоящее время на решение этой проблемы направлены усилия крупнейших научно-производственных коллективов в различных странах. Можно отметить фирму Barco (Бельгия), разработавшую X-терминал видеостены с разрешением 5000´5000 специально для диспетчерского зала отображения диаграмм мировых коммуникаций, фирму Synelec (Франция) с ее Х-терминалом с разрешением 4000´4000 элементов в виде 16-кубовой видеостены для отображения изображений фотографического качества по заказу Минобороны в командном центре в г. Тулуза (Франция).

Основой системы отображения синтезированных изображений или машины виртуальной реальности может стать РИР-проекция, позволяющая строить большие дисплеи, например видеостены. Видеостена, как правило, строится в виде матрицы n´m проекционных видеокубов или модулей, каждый из которых состоит из просветного экрана и источника формирования изображения (видеопроектора). Современные видеопроекторы обеспечивают вывод изображений до 1600´1200 элементов и световые потоки свыше 1000 люменов. Просветные экраны строятся в виде многослойных сэндвичевых структур, построенных с использованием микролинз Френеля. Наивысшим достижением на сегодняшний день явяляются экраны Black Stripe фирмы DNP (Япония) с диаметром микролинз 1–1.5 мм.

Для создания системы отображения информации на больших экранах, экранах коллективного пользования, в отделе информаци-онных структур ИВВС РАН ведутся работы по созданию экспериментального модуля проек- ционного видеокуба с экраном 2.4´1.8 м Black Stripe, обеспечивающим усиление до 4.5, с диаграммой направленности в горизонтальной плоскости 120°, в вертикальной – 22°. Для уменьшения глубины модуля спроектирована мультизеркальная оптическая система.

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

· использовать более 25 проекционных модулей,

· решить проблему беззазорной сшивки просветных экранов,

· обеспечить геометрическую коррекцию (трансформацию) растра в реальном масштабе времени,

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

· разработать специализированный видеопроцессор, распределяющий изображения по фрагментам видеостены, с разрешением порядка 5000´5000 пикселов.

Автор выражает благодарность коллегам Б.С. Долговесову, Б.О. Любимову, В.М. Фомичеву за помощь при подготовке данной статьи.


Permanent link:
http://swsys.ru/index.php?id=1048&lang=en&page=article
Print version
The article was published in issue no. № 4, 1997

Perhaps, you might be interested in the following articles of similar topics: