Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Игнатенко Алексей Викторович

Методы интерактивной визуализации и обработки трехмерных данных на основе изображений
<
Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений Методы интерактивной визуализации и обработки трехмерных данных на основе изображений
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Игнатенко Алексей Викторович. Методы интерактивной визуализации и обработки трехмерных данных на основе изображений : Дис. ... канд. физ.-мат. наук : 05.13.11 Москва, 2005 148 с. РГБ ОД, 61:06-1/125

Содержание к диссертации

Введение

Глава 1 Методы представления и экранизации трехмерных данных с помощью изображений 11

1.1 Общие понятия и определения 11

1.1.1 Традиционный процесс трехмерной экранизации 12

1.1.2 Ручное моделирование 13

1.1.3 Автоматическое моделирование с помощью методов машииного зрения ..-.14

1.1.4 Использование аппаратных дальномерпых устройств 14

1.1.5 Проблема сложности 15

1.1.6 Представления и экранизация на основе изображений 17

1.2 Критерии сравнения алгоритмов представления и экранизации по изображениям 20

13 Основные классы методов представления и экранизации 21

1.4 Представления без соответствующей геометрии 24

1-5 Представления с неявной геометрией 30

1.6 Представления с дискретной геометрией 33

1.7 Представления с полигональной геометрией 39

L8 Результаты анализа 42

Глава 2 Представление данных и моделирование на основе изображений с глубиной 44

2.1 Введение 44

2.2 Структура данных 45

2.2.1 Карта цвета 47

2.2.2 Карта глубины ,...47

2.2.3 Карта нормалей 48

2.2.4 Карты материалов 49

2.2.5 Информация о соответствии проекций 50

2.2.6 Свойства и способы получения данных в разработанном представлении .51

23 Форматы данных 55

2.3.1 XML-запись представления 55

2.3.2 Спецификация узла MPEG-4 AFX 56

2.4 Моделирование на основе изображений с глубиной 59

2.4.1 Проблемы моделирования 59

2.4.2 Построение карты рейтингов дискретов 61

2.4.3 Удаление шума 63

2.4.4 Удаление избыточности 64

2.4.5 Улучшение степени сжатия 68

2.4.6 Методы редактирования модели 72

2.5 Заключение 74

Глава 3 Многомасштабный метод интерактивной экранизации для моделей на основе изображений с глубиной 76

3.1 Введение 76

3.2 Краткий обзор методов экранизации изображений с глубиной 78

3.3 Предлагаемый многомасштабный метод экранизации 80

3.3.1 Этап статической предобработки данных 81

3.3.2 Этап динамической предобработки данных 84

3.3.3 Этап экранизации данных 90

3.4 Архитектура реализованной программной системы 98

3.5 Заключение 102

Глава 4 Клиент-серверная система удаленной экранизации на мобильных устройствах 104

4.1 Введение 104

4.2 Обзор существующих решений.., 106

4.3 Предлагаемый метод решения задачи 109

4.4 Серверная часть системы 111

4.4.1 Информация, получаемая от клиента 111

4.4.2 Предсказание положения наблюдателя 112

4.4.3 Вычисление размера изображений 115

4,4.4 Экранизация сцены и захват буферов цвета и глубины 117

44.5 Сжатие изображений и передача по сети 117

4-5 Клиентская часть системы 120

4.5.1 Распаковка получаемых данных и запись в кэш 120

4.5.2 Алгоритм выборки из кэша 121

4.5.3 Алгоритм экранизации 124

4.6 Программная реализация и результаты тестирования 131

4.7 Заключение 133

Результаты работы 135

Приложение 1. Формат XML-записи представления на основе изображений с глубиной 136

Литература

Введение к работе

Объект исследований и актуальность темы

Одна из основных задач в области разработки человеко-машинных интерфейсов - это задача синтеза изображений трехмерных геометрических моделей. В настоящее время особую актуальность приобретают задачи, связанные с алгоритмами интерактивного синтеза изображений объектов реального мира [1]. Эти алгоритмы находят свое применение во многих прикладных областях, таких как автоматизированное проектирование, медицина, археология, мультимедийные, образовательные приложения, виртуальная реальность.

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

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

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

ниє. Такое представление задает кусочно-линейную аппроксимацию поверхности объекта.

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

Однако для экранизации моделей объектов реального мира традиционный процесс недостаточно эффективен по следующим причинам:

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

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

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

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

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

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

Цели работы

Исследование представлений трехмерных объектов на основе изображений, алгоритмов их обработки и экранизации.

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

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

Научная новизна работы

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

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

Разработана клиент-серверная система адаптивной экранизации (в том числе клиент для карманных ПК). Использование представлений на основе изображений позволило добиться интерактивной скорости работы в условиях низкой пропускной способности сети и при низких вычислительных мощностях клиентских устройств.

Практическая значимость и реализация

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

На основе предложенного представления трехмерных данных разработана спецификация формата данных, которая была одобрена в международный стандарт MPEG-4 AFX (Animated Framework Extension). Часть разработанных алгоритмов экранизации вошла в пакет стандартного программного обеспечения MPEG-4 AFX.

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

и алгоритмы экранизации без изменения существующего кода. Система Visual Framework используется в учебном и научном процессе в лаборатории компьютерной графики и мультимедиа на факультете ВМиК МГУ для обучения методам экранизации по изображениям и разработки новых алгоритмов.

На основе разработанных методов и алгоритмов в рамках курса компьютерной графики, который читается на 2-м курсе факультета ВМиК МГУ, было подготовлено практическое задание для студентов [2].

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

[3].

Апробация работы и публикации

Результаты работы докладывались и обсуждались на:

13-й международной конференции по компьютерной графике и машинному зрению GraphiCon 2003? "A Framework for Depth Image-Based Modeling and Rendering" («Система для экранизации и моделирования на основе изображений с глубиной»), Россия, Москва, 2003.

14-й международной конференции по компьютерной графике и машинному зрению GraphiCon 2004, "A Real-Time 3D Rendering System with BRDF Materials and Natural Lighting" («Система интерактивной визуализации с поддержкой материалов с ДФОС и природным освещением»), Россия, Москва, 2004.

Международной конференции по обработке изображений ICIP (International Conference on Image Processing), ''Depth Image-based Representations for static and animated 3D objects" («Представление на основе изображений с глубиной для статических и анимированных трехмерных объектов»), США, Нью-Йорк, 2002.

Семинаре по компьютерной графике и мультимедиа под руководством
Ю.М. Банковского (ф-т ВМиК МГУ).

* Научно-исследовательском семинаре по автоматизации программиро
вания под руководством проф. М.Р.Шура-Бура.

Основные результаты работы изложены в 4-х научных публикациях [4, 5, 6, 7]. По тематике диссертации получено четыре международных патента.

Объем и структура работы

Диссертация состоит из введения, четырех глав, заключения, списка литературы и приложения,

В первой главе приводится сравнительный анализ методов представления трехмерных данных и методов экранизации на основе изображений.

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

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

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

В приложении описан разработанный формат представления данных на основе языка XML,

Автоматическое моделирование с помощью методов машииного зрения

Наука о компьютерном зрении (computer vision, CV) занимается поиском и анализом высокоуровневой информации в изображениях- В частности, компьютерное зрение занимается реконструкцией формьт и свойств объектов по набору фотографий [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]. Это значит, что, имея набор фотографий реального объекта, можно реконструировать его форму и представить ее в виде набора треугольников. Причем алгоритмы, используемые при этом, могут напоминать принципы работы человеческого глаза и мозга. Текстуру и свойства материала объекта также можно получать из набора фотографий объекта.

Однако задача автоматической реконструкции столь сложна, что даже самые современные алгоритмы компьютерного зрения работают только в ограниченных случаях и достаточно неустойчиво [19, 20, 21], Но даже в этих случаях восстановление точной формы в настоящее время практически невозможно. Получение текстур и особенно материалов объектов - еще более сложная задача.

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

Далее мы увидим, что, несмотря на несовершенство, алгоритмы компьютерного зрения - ключ к решению проблемы экранизации реальных объектов и методы экранизации на основе изображений являются своего рода компенсацией недостатков компьютерного зрения [22].

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

С этой точки зрения, ключевым недостатком полигональной графики является зависимость скорости экранизации от количества полигонов в модели.

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

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

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

Экранизация на основе изображений (Image-Based Rendering, IBR) [24] - это подход к задаче экранизации, основанный на стремлении решить трудности традиционного подхода путем прямого использования исходных данных (изображений) в процессе экранизации. С экранизацией на основе изображени тесно связано моделирование на основе изображений (Image-Based Modeling, IBM) , задачей которого является создание моделей, пригодных для использования методами синтеза на основе изображений.

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

Рассмотрим, как подход на основе изображений влияет на решение проблем традиционного процесса:

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

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

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

Свойства и способы получения данных в разработанном представлении

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

Методы, использующие технологии трехмерной деформации (3D warping) [58] , требуют наличия информации о расстоянии до объекта в каждой точке исходного изображения. Такая информация обычно представляется в виде так называемых изображений с глубиной (image with depth) [4, 59, 60, 61, 28, 62, 6]. Изображение с глубиной - это пара (id,К), где id - изображение, а К - модель камеры, связанной с id .С каждым пикселем изображения id ассоциировано скалярное значение, задающее расстояние (в Евклидовом пространстве) между точкой на видовой плоскости камеры и соответствующей точкой объекта.

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

Алгоритм Мфайжацйн тем или иным способом выполняет рйтфоекциіо каждой точки исходного ижбрй/їсенкя о їлубїі-кгк ІЇІХ везевое изображение. Алгоритм прямой трехмерной деформации еопосхайдяеї каждому лпкселх исходного .изображения с глубиной ГІІЖСЄДВ делового ивображевиз", иено::.-тув параметры модели камеры К.

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

Для решения проблемы дырок, возникающих из-за различной частоты дискретизации, используются алгоритмы обратной деформации (inverse warping) [63], которые сопоставляют каждому пикселю целевого изображения пиксель в исходном изображении. Однако такие методы работают достаточно медленно, поэтому вместо них в задаче интерактивной экранизации чаще используются алгоритмы сплаттинга (splatting) [64]. Эти алгоритмы замещают целевой пиксель, координаты которого получены в результате прямой деформации изображения, на специальный сплат (splat — пятно), который, перекрываясь с соседними сплатами, закрывает дырки. В терминах цифровой обработки сигналов сплаттинг эквивалентен фильтрации передис-кретизованного сигнала низкочастотным фильтром.

Для увеличения скорости экранизации процесс ЗО-деформации может быть разбит на относительно простой этап пре-де формации и этап отображения текстуры, который может быть выполнен с помощью обычных аппаратных ускорителей [27, 65].

Для борьбы с проблемой дырок, возникающих из-за того, что части сцены невидимы в исходных картах глубины, в [66, 29] было предложено новое представление, так называемое Многослойное Изображение с Глубиной (LDI - Layered Depth Image).

От.лхічие многослойных в.аобр. їжсмв.й І; г.иуби.ной от простых .адкшоча-етея к том, что одно воображение пот&одяет хр&їшіь информацию НУ ТОЛЬКО о йшшмой с дайной исходной камеры частя поверхности объекта, а полную информацию об объекте. В сущности, LD1 - аго -ірехмврная с-руктура дан-ІІМХ, нр дечаалЖ Оіна;: собой арямоугоны-ую мзтрину, каждым адеменгом которой является синеок точек. Каждая точка содержим пгубяну (расстояние до видовой плоскости! и атрибуты, в -іросгзишем случае - нвет.

Для описания всего объекта можно венолъчовать единственное Многослойное ИжбрІШОКИС, ОДНаКО В [2S]. (шесть персак кпнзных LDT с адцкым пеитром проекции. Такаа структура но проводить вкауалканпию хак методами деформации [58. 27], гак и просто ксдолнадватъ хранимую инфорінанню как облако точек н 8и уаднзи-ровать его .напрямую с помогдыо графической библиотеки (налрїшср, ОреїЮІ[б7, J]).

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

Однако LDI не позволяет напрямую визуализировать объект с различными степенями детализации. В работе [30] была предпринята попытка создать много масштабное представление на основе LDI с использованием так называемого дерева LDI (LDI tree).

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

Краткий обзор методов экранизации изображений с глубиной

Наиболее очевидным алгоритмом экранизации изображений с глубиной является реконструкция полигональной поверхности для каждой карты глубины с последующей экранизацией обычными средствами для полигональной геометрии, например, с помощью OpenGL API [75, 76]. Действительно, поскольку карта глубины задает поверхность, соседние точки можно сделать вершинами смежных треугольников, тем самым достроив поверхность до непрерывной. Однако на самом деле поверхность, задаваемая картой глубины, может не являться непрерывной, поэтому при построении полигональной поверхности необходимо сегментировать карту глубины на непрерывные участки. Другой проблемой является необходимость совмещения полигональных сеток, полученных для разных карт глубины- Она может решаться с помощью смешивания полученных поверхностей в буфере кадра [76].

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

Альтернативой данному подходу является так называемая точечная экранизация (point-based rendering, [80]), Суть точечной экранизации заключается в том, что вместо полигонов в качестве геометрических примитивов используются пространственные дискреты (точки, диски, сферы) разного размера и ориентации, аппроксимирующие поверхность модели. Алгоритмически, экранизация точечных моделей может быть быстрее, чем полигональных за счет более простой структуры примитивов, С точки зрения экранизации изображений с глубиной, этот подход разбивается на два шага: реконструкция облака точек и его проекция на экран. Этот подход использовался в предлагаемом алгоритме.

Другой класс методов экранизации изображений с глубиной использует тот факт, что входные данные являются изображениями и, следовательно, обладают регулярной структурой. Для генерации нового вида исходных данных используются специальным образом деформированные исходные изображения. Эти методы называются методами экранизации на основе деформации изображений (image warping).

Различают прямую деформацию и обратную деформацию. Методы, использующие прямую деформацию, используют функцию деформации F, которая каждой точке исходного изображения ставит в соответствие некоторую точку целевого изображения (х,,уг) = F(xt,y4)[27]. Методы обратной деформации для каждой точки целевого (результирующего) изображения находят соответствующую точку исходного изображения. Методы прямой и обратной деформации характерны тем, что не используют явно реконструкцию трехмерных положений точек. В силу этого алгоритмическая сложность этих методов значительно ниже, чем для реконструкции полигональной поверхности с последующей проекцией. Подходы на основе деформаций хорошо подходят к задачам, где требуется экранизация на небольших дисплеях, т.к. их сложность пропорциональна разрешению карт глубины. В частности, прямая деформация использовалась при реализации юшент-сервержж смета экранизации. Для получения нового представления карты глубины разбиваются на участки разного размера, каждый из которых выбран с целью минимизации вариации глубины в нем. Полученные области становятся новыми картами глубины.

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

Этап репроекции. На этом этапе выполняется экранизация обработанных карт глубины с помощью аппаратных ускорителей.

Экранизация сцены и захват буферов цвета и глубины

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

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

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

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

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

Предсказание положения наблюдателя

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

Чтобы произвести предсказание, необходимо рассчитать время TIafettcy, которое пройдет с момента начала экранизации модели на сервере до экранизации модели клиентом. Для этого необходимо учесть влияние следующих факторов: время генерации изображения и карты глубины на сервере {TSKttder); время сжатия изображения и карты глубины на сервере (7 ); время передачи данных клиенту ( TtmIf ); время распаковки данных одного кадра на клиенте {TdeeompF ) Расчет TloIency производится с помощью следующего метода: при посылке новых данных клиенту посылается специальная уникальная метка (число). Время посылки метки запоминается. Клиент во время отсылки данных о положении наблюдателя пересылает метку назад, что позволяет серверу высчитать задержку с помощью разницы во времени посылки и получения.

Похожие диссертации на Методы интерактивной визуализации и обработки трехмерных данных на основе изображений