Создание сферических трехмерных фотопанорам

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 30.11.2016
Размер файла 5,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

3.2 Панорамные перспективы (8 параметров)

Чтобы преодолеть эти ограничения, некоторые авторы предложили использовать полные планарные модели движения в перспективе [30]. Плоская перспективная трансформация деформирует изображение в другое, используя 8 параметров,

где и - гомогенные или проективные координаты, а ~ указывает на равенство с точностью до масштаба. Это уравнение можно переписать в виде:

(в параллельном переносе используются только два параметра).

Для восстановления 8 параметров, мы многократно обновляем матрицу перехода с использованием

где

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

Сводим к минимуму:

где является инкрементальным параметром обновления, а , где

- это Якобиан (определитель матрицы Якоби) второй производной по d. Вхождения в Якобиан соответствуют оптическому потоку, индуцируемому мгновенным движением трехмерного пространства [27]. Минимизация методом наименьших квадратов (14) решается с помощью нормальных уравнений, аналогичных (5)

где

- Гессиан функция, а

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

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

Панорамные перспективы (3 параметра)

Для камеры с центром в начале координат, связь между точкой в трехмерном пространстве р = (X, Y, Z) и координатами изображения х = (х, у, 1) может быть описана

где

, ,

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

Для камеры, вращающейся вокруг ее центра проекции, перспективная проекция между двумя изображениями k и l определяется:

где каждое изображение представлено , т.е. фокусное расстояние и 3D вращение.

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

где приращение матрицы поворота достигается формулой Родрига [31],

где , , а

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

где

является матрицей деформации, которая играет ту же роль, что и D в (9).

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

Этот Якобиан затем подставляется в предыдущую цепь минимизации для оценки вектора приращения вращения , после чего может быть обновлена с помощью (21).

На Рис. 11 показано, как данный метод может быть использован для регистрации изображений с произвольным (не панорамированным) вращением.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

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

Оценка фокусного расстояния

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

где .

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

Исходя из этого, мы можем вычислить оценки

при

или

при и .

Подобный результат также может быть получен для . Если фокусное расстояние фиксируется для двух изображений, мы можем взять среднее геометрическое и как оценку фокусного расстояния . При наличии множественных оценок , среднее значение используется в качестве окончательной оценки. Альтернативные методы оценки фокусного расстояния приведены в [31, 32, 33, 34]. Первый метод [31] использует более двух кадров и предполагает более общую модель камеры (например, неизвестные оптический центр и соотношение сторон). Другие методы предполагают либо известные углы поворота либо использование полной панорамы (по аналогии с методикой, описанной в подразделе 3.5).

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

3.3 Замыкание разрывов в панораме

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

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

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

На Рис. 12(а) показан конечная зарегистрированная последовательность изображений и первое изображение. Существует большой разрыв между последним изображением и первым, которые фактически одно и тоже изображение. Разрыв равен 32, так как была использована неправильная оценка фокусного расстояния. Рис. 12(b) показывает регистрацию после закрытия разрыва с правильным фокусным расстоянием. Обращаем внимание на то, что обе мозаики показывают очень минимальное визуального несовпадение (за исключением промежутка), но изображение (Рис. 12(а)) было вычислено с использованием фокусного расстояния, которое имеет ошибку в 9%. Близкие по теме подходы были разработаны для решения задачи оценивания фокусной длины с использованием чистого движения панорамирование и цилиндрических изображений.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

3.4 Построение карт окружения

После того, как мы построили полную панорамную мозаику, необходимо преобразовать набор входных изображений и соответствующих преобразований в одно или несколько изображений, которые могут быть быстро подвергнуты рендерингу. Традиционный способ достижения данной цели - выбрать одну из двух (цилиндрическую или сферическую) карт (подраздел 3.2). Представление с помощью карт окружения иногда называется равнопромежуточной проекцией [26]. Цвет, связанный с каждым пикселем вычисляется сначала преобразованием адреса пикселя в 3D-луч, а затем происходит отображение этого луча в каждое входное изображение с помощью нашего преобразования. Цвета отбираются из каждого изображения, а затем смешиваются с использованием весовой функции (растушевки), описанной ранее. Например, мы можем преобразовать нашу вращательную панораму в сферическую с помощью следующего алгоритма:

Для каждого пикселя (, ) в сферической карте вычисляем соответствующее ему 3D положение на единичной сфере р = (X, Y, Z), где

, , .

Для каждого р определяют его отображение на каждое изображение k, используя .

Формируется составное (смешанное) изображение из указанных выше искривленных изображений.

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

В качестве альтернативы предлагается использовать традиционные текстурированные отображенные 3D модели, т.е. карты окружения [26]. Форма модели и вложения каждой грани в пространстве текстуры зависят от пользователя. Этот выбор может варьироваться от чего-то простого, например, куба с шестью отдельными текстурными картами, к чему-то более сложному, такому как разделенный додекаэдр или даже сотообразный шар. Этот выбор будет зависеть от характеристик аппаратного рендеринга и требуемого качества (например, сведение к минимуму искажения или локальные изменения размера пикселя), а также от легкости «раскрашивания» на полученных текстурных картах (так как некоторые вложения могут оставлять пробелы в текстурной карте). В этом разделе мы опишем, как эффективно вычислить цветовые значения карт текстуры для любой геометрии и выбор координат карт текстуры. Общее описание этого алгоритма может быть использовано для проецирования коллекции изображений на любую модель, например, на невыпуклые модели, которые не окружают зрителя.

Предполагается, что модель объекта триангулированная поверхность, т.е. совокупность треугольников и вершин, где каждая вершина идентифицирована в 3D координатах (X, Y, Z) и координатах текстуры (грани могут быть присвоены различным текстурным картам). Ограничимся моделью треугольных граней, чтобы получить простое решение в виде замкнутой формы (проективное отображение, потенциально различное для каждого треугольника) между текстурными координатами и координатами изображения. На выходе мы получаем набор цветных текстурных карт с помеченными неопределенными (невидимыми) пикселями (например, если используется альфа-канал, то ).

Представляемый алгоритм состоит из следующих четырех этапов:

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

Для каждого треугольника, определить его отображение.

Для каждого треугольника формируется комбинированное (смешанное) изображение.

Составное изображение окрашивается в итоговую карту текстуры, используя цветовые значения, вычисленные на шаге 1 в качестве шаблона.

Эти четыре стадии описаны ниже более подробно.

Шаг псевдоокрашивания использует вспомогательный буфер того же размера, что и карты текстуры. Используем цветовую модель RGB в изображение, что означает значений допустимых цветов. После первоначальной окраски, мы наращиваем цвета на невидимые области, используя простую операцию дилатации, т.е. многократная замена невидимых пикселей одним из видимых соседних цветов. Эта операция выполняется для того, чтобы устранить небольшие зазоры в текстурной карте, а также для поддержки операций фильтрации, таких как билинейная фильтрация и MIP-текстурирование [35]. Например, при использовании шестигранного куба, мы устанавливаем координаты для каждой вершины куба по краям текстуры. Таким образом, каждая карта текстуры охватывает несколько большую область, чем нужно, однако текстурная фильтрация должна быть выполнена без акцента на краевых эффектах.

На втором этапе, вычислим отображение для каждого треугольника T, вычислив матрицу 3Ч3 , которая удовлетворяет

для каждой из трех вершин треугольника. Таким образом, , где и формируются путем конкатенации и векторов. Это отображение является по существу отображением 3D-направлений в пространстве (поскольку камеры все в начале координат) к координатам. На третьем шаге мы вычисляем ограничивающую рамку вокруг каждого тройного угла в пространстве и увеличиваем его незначительно (на ту же величину, что и растяжением на стадии 1). Затем мы формируем составное изображение путем смешивания всех входных изображений согласно преобразованию . Это полное 8-параметрическое преобразование в перспективе. Это не то же самое, что 6-параметрическое аффинное преобразование, которое можно было бы получить, просто проецируя вершины треугольника в изображение, а затем отображая эти координаты 2D-изображения на двумерное пространство (в сущности, не обращая внимания на ракурс в проекции на 3D-модель). Ошибка в применении этого простого, но ошибочного метода для больших граней карты текстуры (например, для простого куба) будет довольно значительной.

На четвертом этапе мы находим псевдо цвет, связанный с каждым пикселем внутри скомпонованного участка и окрашиваем скомбинированные цвета в карты текстуры, если псевдоцвет соответствует идентификатору грани. Данный алгоритм также может быть использован для проецирования коллекции изображений на произвольный объект (чтобы сделать истинное инверсное отображение текстуры) при расширении алгоритма для обработки окклюзий. Чтобы добиться этого, мы просто окрашиваем псевдоцветовую многогранную модель в каждом входном изображение с использованием алгоритма Z-буферизации (способ учёта удалённости элемента изображения [36]). При компоновке изображения для каждой грани, мы проверяем, какие пиксели соответствуют желаемому псевдоцвету, и устанавливаем те, которые не соответствуют невидимым (т.е. не способствуют конечной композиции). На Рис. 13 показаны результаты сопоставления панорамной мозаики с сотообразной шаровой текстурой. Белые треугольники в вершине - как части карты текстуры не охватывают мозаичную модель 3D шара (из-за треугольных элементов на полюсах). На Рис.14,15,16 приведены результаты сопоставления трех различных панорамных мозаик с кубическими картами окружения. Мы можем видеть, что мозаика получилась очень высокого качества, а также мы получили качественную сферу, охватываемую этой полноформатной мозаикой. Обращаем внимание на то, что на Рис. 14 используются изображения, полученные с помощью ручной цифровой камеры.

После того, как текстурированные 3D модели были построены, они могут быть воспроизведены непосредственно в стандартной системе 3D графики. В настоящее время задача решается с помощью простой программы «3D-viewer», написанной с помощью Direct3D API, которая работает на персональном компьютере без аппаратного акселерации графики.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

4. Практическая часть работы

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

* Захват сферической панорамы для каждого глаза в отдельности с помощью камеры мобильного устройства при поэтапном повороте её на 360° градусов под несколькими углами места.

* Создание специальных меток, поясняющих пользователю, как правильно захватить кадры для дальнейшего склеивания в единый панорамный вид.

* Кроссплатформенный просмотр панорамы через устройство ВР.

* Смена вида панорамы в зависимости от положения головы пользователя.

* Проверка корректности отснятых кадров.

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

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

4.1 Создание сферической панорамы для одной точки зрения

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Фоном интерфейса в момент съемки является виртуальный «пол», состоящий из квадратных «плиток», углы которых показаны светлыми крестовидными отметками. Положение этого пола реагирует только на показания акселерометра, то есть он не вращается при поворотах устройства вокруг вертикальной оси, параллельной действию земного притяжения. Над полом располагается виртуальная сфера, на которой помещаются фотографии, из которых составлена будет сферическая панорама. Одновременно, после захвата одного кадра появляется отметка, смещенная на несколько сантиметров вправо. Это необходимо для того, чтобы создать вторую сферу для правого глаза, которую пользователь пока не видит на экране монитора (Рис. 18).

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

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

После выполнения вышеописанной процедуры с помощью определенных алгоритмов выполняется склейка кадров для каждой панорамы в отдельности.

4.2 Отображение сферической панорамы

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

Создание полной сферической текстуры.

Реализация сферического отображения текстур с помощью OpenGL.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Генерация полного отображения текстуры изображения:

Шаг 1: Для каждого пикселя (i, j) в выходных данных отображения изображения вычисляем полярные координаты (theta, phi):

а) Нормализация координат

где (x, y) находятся в диапазоне от -1 до 1

б) Получение полярных координат

где и

Шаг 2: Вычисляем соответствующий 3D вектор позиции (отобразить луч из центра), указывающий на единичную сферу

Шаг 3: для каждого р определяем его отображение в каждом изображении k, используя ;

Где - 2D точка в изображении, - общая матрица вращения,

.

Шаг 4: Смешивание

Каждый пиксель взвешивается с расстоянием до ближайшей границы изображения n-ой степени:

где n=3

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

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

Результирующее сферическое отображение текстур с помощью OpenGL:

Создание одной сферы.

Загрузка выходного изображения.

Выполнение отображения текстур с помощью функций OpenGL.

Дизайн простого и удобного пользовательского интерфейса.

Заключение

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

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

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

Путем сопоставления мозаики с произвольной текстурой многогранника, окружающем среду съемки, мы можем воссоздать виртуальную среду с использованием инструментария для разработки Android SDK и подключаемые библиотеки OpenGL и OpenCV.

Съемка мозаичной панорамы для правого и левого глаза (для достижения стереоскопического эффекта) была рассмотрена в Разделе 3, где были проанализированы идеи создания планарных стереоскопических панорам с использованием одной камеры.

В данной работе приведены алгоритмы создания сферической панорамы для одной точке зрения. По аналогии будут выполнены операции съемки и склеивания и для другого глаза, но под другим углом места (основываясь на методе, описанном в разделе 2). Реализованы некоторые части алгоритмов на языке Java

Список использованных источников

Mentz J., Caldwell S. Method of stereoscopic 3d viewing using wireless or multiple protocol capable shutter glasses : заяв. пат. 12/699,685 США. - 2010.

Козик А. А. Реализация стереопары с помощью NVAPI и DirectX. - 2011. URL: http://elib.bsu.by/bitstream/123456789/25396/1/Том3_67.pdf#page=53 (дата обращения 02.03.2016).

Mazuryk T., Gervautz M. Virtual reality-history, applications, technology and future. - 1996. URL: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.7849 (дата обращения 02.03.2016).

Kato H., Billinghurst M. Marker tracking and HMD calibration for a video-based augmented reality conferencing system //Augmented Reality, 1999.(IWAR'99) Proceedings. 2nd IEEE and ACM International Workshop on. - IEEE, 1999. - С. 85-94.

Lamkin P. The best VR headsets: The virtual reality race is on. - 2015. URL: http://www.wareable.com/headgear/the-best-ar-and-vr-headsets (дата обращения 20.04.2016).

Apple iOS And Google Android Smartphone Market Share Flattening: IDC [Электронный ресурс]. URL: http://www.forbes.com/sites/dougolenick/ (дата обращения: 17.01.2016).

Burnette E. Hello, Android: introducing Google's mobile development platform. - Pragmatic Bookshelf, 2009. URL: http://dl.acm.org/citation.cfm?id=1816808 (дата обращения 20.04.2016).

Stдrk R. F., Schmid J., Bцrger E. Java and the Java virtual machine: definition, verification, validation. - Springer Science & Business Media, 2012.

Steele J., To N. The Android developer's cookbook: building applications with the Android SDK. - Pearson Education, 2010. URL: https://books.google.ru/books?hl=ru&lr=&id=Y4JR2yI2Fo0C&oi=fnd&pg=PT3&dq=Android+SDK&ots=jnRrNza9fU&sig=8LCENydtEBxCSZblDvI88EjmGzY&redir_esc=y#v=onepage&q=Android%20SDK&f=false (дата обращения 28.04.2016).

Ratabouil S. Android NDK: Beginner's Guide. - Packt Publishing Ltd, 2015.

Баяковский Ю. М., Игнатенко А. В. Начальный курс OpenGL. - М. : Планета знаний, 2007.

Umbaugh S. E. Computer Vision and Image Processing: A Practical Approach Using Cviptools with Cdrom. - Prentice Hall PTR, 1997.

Murphy G. C., Kersten M., Findlater L. How are Java software developers using the Elipse IDE? //Software, IEEE. - 2006. - Т. 23. - №. 4. - С. 76-83.

Ducrohet X., Norbye T., Chou K. Android Studio: An IDE built for Android //Internet: http://android-developers. blogspot. in/2013/05/android-studio-ide-built-for-android. html. - 2013.

M. Brown and D. G. Lowe. Automatic panoramic image stitching using invariant features. International journal of computer vision, 74(1):59-73, 2007.

L. E. Gurrieri and E. Dubois. Acquisition of omnidirectional stereoscopic images and videos of dynamic scenes: a review. Journal of Electronic Imaging, 22(3):030902-030902, 2013.

S. Peleg, M. Ben-Ezra, and Y. Pritch. Omnistereo: Panoramic stereo imaging. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 23(3):279-290, 2001.

Y. Li, H.-Y. Shum, C.-K. Tang, and R. Szeliski. Stereo recon- struction from multiperspective panoramas. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 26(1):45- 62, 2004.

S. Li and K. Fukumori. Spherical stereo for the construction of immersive vr environment. In Virtual Reality, 2005. Pro- ceedings. VR 2005. IEEE, pages 217-222. IEEE, 2005.

P. Bourke. Capturing omni-directional stereoscopic spheri- cal projections with a single camera. In Virtual Systems and Multimedia (VSMM), 2010 16th International Conference on, pages 179-183. IEEE, 2010.

R. A. Ainsworth, D. J. Sandin, J. P. Schulze, A. Prudhomme, T. A. DeFanti, and M. Srinivasan. Acquisition of stereo panoramas for display in vr environments. In IS&T/SPIE Electronic Imaging, pages 786416-786416. International So- ciety for Optics and Photonics, 2011.

D. Lowe, «Object recognition from local scale-in variant features,» в International Conference on Computer Vision, Corfu, Greece, 1999.

D. Lowe, «Distinctive Image Features from Scale-Invariant Keypoints,» International Journal of Computer Vision, 2004.

O.Faugeras.Three-dimensionalcomputervision:Ageometric viewpoint. MIT Press, Cambridge, Massachusetts, 1993.

N. Greene. Environment mapping and other applications of world projections. IEEE Computer Graphics and Applica- tions, 6(11):21-29, November 1986.

J.R.Bergen,P.Anandan,K.J.Hanna,andR.Hingorani.Hier- archical model-based motion estimation. In Second European Conference on Computer Vision (ECCV'92), pages 237-252, Santa Margherita Liguere, Italy, May 1992. Springer-Verlag.

R. Szeliski. Video mosaics for virtual environments. IEEE Computer Graphics and Applications, pages 22-30, March 1996.

R. Y. Tsai. A versatile camera calibration technique for high- accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses. IEEE Journal of Robotics and Automation, RA-3(4):323-344, August 1987.

S. Mann and R. W. Picard. Virtual bellows: Constructing high-quality images from video. In First IEEE International Conference on Image Processing (ICIP-94), volume I, pages 363-367, Austin, Texas, November 1994.

R.I.Hartley.Self-calibrationfrommultipleviewsofarotating camera. In Third European Conference on Computer Vision (ECCV'94), volume 1, pages 471-478, Stockholm, Sweden, May 1994. Springer-Verlag.

G. Stein. Accurate internal camera calibration using rotation, with analysis of sources of error. In Fifth International Con- ference on Computer Vision (ICCV'95), pages 230-236, Cam- bridge, Massachusetts, June 1995.

L. McMillan and G. Bishop. Plenoptic modeling: An image-based rendering system. Computer Graphics (SIG- GRAPH'95), pages 39-46, August 1995.

S. B. Kang and R Weiss. Characterization of errors in com- positing panoramic images. Technical Report 96/2, Digital Equipment Corporation, Cambridge Research Lab, June 1996.

L. Williams. Pyramidal parametrics. Computer Graphics, 17(3):1-11, July 1983.

H. Weghorst, G. Hooper, and D. P. Greenberg. Improved computational methods for ray tracing. ACM Transactions on Graphics, 3(1):52069, January 1984.

Размещено на Allbest.ru

...

Подобные документы

  • Знакомство с проблемами обнаружения вредоносного программного обеспечения для мобильных устройств. Анализ функций антивирусного пакета Kaspersky Mobile Security 8.0. Характеристика наиболее распространенных антивирусных программ для мобильных устройств.

    реферат [55,1 K], добавлен 11.01.2017

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

    курсовая работа [3,5 M], добавлен 22.01.2016

  • Основы программирования на языке VB.NET. Область применения трехмерных изображений. Форматы хранения пакетов инженерной графики. Преимущества трехмерного моделирования. Разработка программы по вращению трехмерных изображений на языках VB.NET и VRML.

    курсовая работа [195,1 K], добавлен 11.03.2013

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

    дипломная работа [2,5 M], добавлен 28.05.2013

  • Обзор существующего программного обеспечения для автоматизации выделения границ на изображении. Разработка математической модели обработки изображений и выделения контуров в оттенках серого и программного обеспечения для алгоритмов обработки изображений.

    дипломная работа [1,7 M], добавлен 27.03.2013

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

    дипломная работа [1,4 M], добавлен 19.01.2017

  • Обзор современных мобильных операционных систем для смартфонов, планшетов, КПК или других мобильных устройств. Symbian OS. Android. IOS. Windows Phone. Blackberry OS. Tizen. Firefox OS. Ubuntu Phone OS. Sailfish OS. Их история, преимущества и недостатки.

    реферат [38,6 K], добавлен 06.05.2016

  • Использование моделирования в программной инженерии в процессе разработки программного обеспечения. Основные этапы процесса разработки программного обеспечения, их характеристика. Моделирование процессов, их определение фазами и видами деятельности.

    реферат [2,2 M], добавлен 25.12.2017

  • Анализ современного рынка программных продуктов. Понятие виртуального тура и возможности его применения. Изучение программного обеспечения и технологии создания виртуальных туров. Панорамный снимок и виртуальная брошюра. Настройка параметров панорамы.

    курсовая работа [3,5 M], добавлен 22.03.2016

  • Особенности разработки и реализации модулей двухмерной и трехмерной визуализации. Основные задачи трехмерного модуля управления. Анализ функций модуля управления ParamColorDrawer. Характерные особенности схемы функционирования программного средства.

    реферат [2,2 M], добавлен 07.03.2012

  • Понятие и ключевое отличие распределенной разработки программного обеспечения, его достоинства и недостатки. Концептуальное решение и выбор типа разработки. Особенности программного обеспечения с открытым исходным кодом. Идея и развитие Open Source.

    курсовая работа [97,7 K], добавлен 14.12.2012

  • Трехмерное моделирование: улучшение алгоритмов рендеринга и просчета трехмерных изображений. Обоснование выбора алгоритмов. Выбор языка программирования и среды разработки. Структура данных и программного комплекса. Системные требования для работы.

    курсовая работа [263,8 K], добавлен 24.06.2009

  • Растровые и векторные графические редакторы. Форматы файлов, используемые для хранения графических изображений. Графические редакторы, используемые для создания изображений. Редакторы для создания трехмерных изображений. Создание графического редактора.

    курсовая работа [306,5 K], добавлен 23.08.2013

  • Общая информация о графическом формате. Описание формата Microsoft Windows Bitmap. Структура файла DDВ исходного формата ВМР. Преобразования графических файлов. Просмотр и редактирование растровых изображений. Создание многодокументного приложения.

    дипломная работа [1,5 M], добавлен 06.06.2010

  • Понятие программного обеспечения, вопросы его разработки и использования. Общая характеристика системного программного обеспечения и работа операционной системы. Специфика процесса управления разработкой программного обеспечения и его особенности.

    курсовая работа [636,2 K], добавлен 23.08.2011

  • Информационно-измерительные системы мобильных роботов. Системы технического зрения; дескриптивный подход к обработке, анализу и распознаванию изображений. Разработка программного обеспечения для создания СТЗ мобильного робота для ориентации в комнате.

    дипломная работа [5,5 M], добавлен 10.05.2014

  • Исследование объектно-ориентированного подхода к проектированию программного обеспечения будильника. Модель программного обеспечения. Взаимодействие между пользователями и системой. Диаграммы и генерация программного кода при помощи средств Rational Rose.

    курсовая работа [355,8 K], добавлен 26.09.2014

  • Анализ деятельности группы компаний "Инрэко ЛАН". Общая характеристика, основы проектирования и разработка операционной системы Android. Этапы разработки программного игрового приложения с использованием физики. Скриншоты, отображающие игровой процесс.

    отчет по практике [2,7 M], добавлен 19.07.2012

  • Принципы разработки в системе программного обеспечения САПР. Выбор среды для формирования моделей и функций. Процесс создания моделей деталей. Разработка API-приложения для среды разработки. Тестирование разработанного функционала портала-хранилища.

    курсовая работа [704,0 K], добавлен 18.01.2017

  • Разработка клиент-серверного игрового приложения на примере игры в шашки для мобильных устройств на базе операционной системы Android. Обзор мобильных платформ. Экраны приложения и их взаимодействие. Графический интерфейс, руководство пользователя.

    курсовая работа [2,6 M], добавлен 15.06.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.