Реконструкция трехмерной модели объекта на основе стереопары при решении задач 3D-моделирования

большом N в процессе вычисления возникают очень маленькие и очень большие числа. Эмпирически выявлено, что данный факт не мешает получать решения вплоть до N = 125. Однако с ростом N данная проблема может стать непреодолимой.

Библиографические ссылки

1. Hull J. C. Options, Futures, and Other Derivatives. 7th ed. Upper Saddle River : Prentice Hall, 2008.

2. Li D. X. On default correlation: copula approach // J. of Fixed Income. 2000. № 9. P. 43-54.

3. Воробьев О. Ю. Эвентология / Сиб. федер. ун-т. Красноярск, 2007.

4. Воробьев О. Ю. Широкая зависимость событий и аппроксимация эвентологических распределений широкомулкгипликативными сет-функциями // Тр. VIII фАм-конф. Красноярск, 2009. С. 101-122.

5. Воробьев О. Ю. Теоретические основания эвен-тологии. Структуры симметричных событий // Тр. II ФАМ-конф. Красноярск, 2003. С. 69-113.

6. Слепов Д. С. Один способ моделирования структур зависимостей симметричных событий // Тр. IX ФАМЭТ конф. Красноярск, 2010. С. 281-283.

D. S. Slepov

VALUATION OF CORRELATION-DEPENDENT CREDIT DERIVATIVES

This paper addresses the pricing of correlation-dependent credit derivatives. We first examine the one-factor Gaussian copula model that has become the market standard. Then we present a new approach to model parametrically a dependence structure. Our approach is based on using a multiplicative approximation. Eventually, we use a numerical example to compare these models.

Keywords: credit derivatives, default correlation, Gaussian copula, eventology, wide dependence of events, multiplicative approximation.

© CienoB fl. C., 2011

УДК 004.932.2

И. В. Тупицын

РЕКОНСТРУКЦИЯ ТРЕХМЕРНОЙ МОДЕЛИ ОБЪЕКТА НА ОСНОВЕ СТЕРЕОПАРЫ ПРИ РЕШЕНИИ ЗАДАЧ 3Б-МОДЕЛИРОВАНИЯ

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

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

триангуляция.

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

димой сцены. Исходными данными является стереопара. Также в некоторых случаях могут быть использованы опорные точки, т. е. точки, для которых пространственные координаты известны. Наличие опорных точек позволяет устранить неоднозначности конструкции [1].

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

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

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

а) строки изображения параллельны стереобазе (рис. 1);

б) эпиполярные линии совпадают со строками изображения;

в) соответствующие точки лежат на одной строке изображения.

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

1. Поиск соответствующих точек на изображениях.

2. Вычисление пространственных координат точек объектов восстанавливаемой сцены.

3. Построение трехмерной модели сцены (триангуляция).

Рассмотрим каждый из этапов.

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

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

Рассмотрим подробнее одномерный метод поиска соответствующих точек, использующий DSI (disparity space image) [2]. Пусть s, и s', - соответствующие i-е строки левого и правого изображений, I(x,y) и I'(x,y) - соответствующие функции интенсивности. Тогда параметр DSI- вычисляется как разность интенсивностей:

DSI, (x, d) = ||I(x,i) -1' (x - d, 0||,

где N - ширина картинки; dmax - максимальное допустимое расхождение на изображении; при этом выполняются условия -dmax < d < dmax и 0 < (x + d) < N.

Другим способом построения DSI, является вычисление величины, основанной на корреляции функций интенсивностей вокруг пикселей (x,i) и (x - d,i). При этом размеры окна выбираются адаптивно (например, если точка находится на границе объектов, то окно с центром в этой точке будет плохим, лучше использовать окно, которое полностью принадлежит одному объекту). Далее отбрасываем строки DSIi, которые соответствуют заведомо невозможным значениям d (например, из условий, что пиксель на левом изображении должен быть правее соответствующего ему на правом, из условия |d| < dmax).

Рис. 1. Эпиполярная геометрия:

L - эпиполярная плоскость; /ь l2 - эпиполярные линии; Сь С2 - центры камер

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

Задача решается методом динамического программирования. Если на изображении заранее известны GCP-точки (ground control points - точки, положение и соответствие которых мы можем определить достаточно точно), то количество возможных путей сокращается за счет использования следующего ограничения. Путь должен проходить так, чтобы он не противоречил расстановке базовых GCP-точек. Возможны также многозначные GCP-точки, когда точке одного изображения может соответствовать одна точка из небольшого набора вариантов на другом изображении.

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

- вычисления фундаментальной матрицы;

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

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

Зная матрицы камер (P и P') и координаты изображений точки для каждой камеры (x и x'), можно вычислить пространственные координаты X данной точки как решение системы уравнений Ix = PX;

x ' = P ' X.

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

Для нахождения координат X система (1) преобразуется к виду

Ix x(PX ) = 0;

|x ' x(P ' X ) = 0,

где знаком «х» обозначают векторное произведение, что равносильно системе уравнений

xp3T - p1'

3T 2

yp - p2

x p

y p'

Здесь pIT и p"T - строки матриц P и P'; x = (х, у, 1), x' = (х', у', 1). В качестве оценки X принимается значение сингулярного вектора, соответствующего наименьшему сингулярному значению матрицы A.

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

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

Рассмотрим случай, когда известны п опорных точек (т. е. точек, для которых заданы пространственные координаты) {XEi} и их изображения xI•^•x/. В данном случае, используя координаты соответствующих точек xI^xI', можно восстановить их координаты в пространстве {X,}, которые, в силу приведенной выше теоремы, будут связаны с истинными координатами проективным преобразованием &

X* = HXi

i = 1,..., n.

X = AX = 0.

Каждая пара xi^xi' дает три линейно независимых уравнения относительно элементов & Таким образом, для решения системы (2) необходимо не менее пяти пар, причем никакие четыре опорные точки не должны быть компланарны. В случае п > 6 система (2) может не иметь точного решения из-за погрешностей измерения координат точек. В этом случае решение H может быть получено путем минимизации алгебраической или геометрической ошибки [6].

Триангуляция. Одним из самых распространенных способов триангуляции является триангуляция Делоне. Триангуляцией Делоне для множества точек £ (иногда именуемых сайтами) на плоскости называют триангуляцию БТ(£) такую, что никакая точка А из £ не содержится внутри окружности, описанной вокруг любого треугольника из БТ(£) такого, что ни одной из вершин его не является точка А [7]. В работе [8] предлагается гибридный рекурсивно-инкремент-ный алгоритм построения триангуляции Делоне, позволяющий избежать недостатков рекурсивного и инкрементного алгоритмов. В нашем случае для построения триангуляции Делоне необходимо спроецировать множество точек на плоскость.

В качестве предобработки построим на множестве 8 выпуклую оболочку СН(£), каждое из ребер оболочки сделаем ориентированным с учетом обхода по

часовой стрелке. Определим медианы по абсциссе X^t и ординате Yм по формулам

Xu =[І Xt 1 / N;

Y"=(t Y')/N Проведем горизонтальную и вертикальную прямые X^t = const и Yм = const. Найдем точки пересечения этих прямых с соответствующими ребрами выпуклой оболочки. Сравнив расстояния по вертикали и горизонтали и учитывая предположение о случайности набора точек, за базовую возьмем прямую, для которой расстояние между точками пересечения меньше. Это позволит быстрее разделить исходное множество на два подмножества. Дальнейшую схему покажем на примере горизонтальной базовой прямой (рис. 2).

Рис. 2. Последовательность выделения разделяющей цепи выбранных треугольников

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

исследуемого ребра используем левое ребро выпуклой оболочки такое, которое пересекает базовая прямая. По методу, описанному в работе [8], находим подходящую точку, определив тем самым треугольник 1. Если прямая Хм пересекает условную верхнюю сторону, как показано на рис. 2, то она используется для продолжения построения цепи разделяющих треугольников. Нижнее непересекаемое прямой Хм ребро добавляется в список нижней оболочки. Совершенно аналогично, как это показано для треугольника 2, условно нижнее ребро используется для последующего определения треугольника 3, а верхнее непересекае-мое прямой Хм ребро добавляется в список верхней оболочки. Точки, участвующие в цепи разделяющих треугольников, исключаются из соответствующих верхнего и нижнего списков точек.

Построение разделяющей цепи треугольников, что считается единым проходом алгоритма, заканчивается, когда второе ребро пересекаемого треугольника совпадает с правым ребром оболочки, пересекаемой прямой Хм. На рис. 2 это случилось для треугольника 4. В результате первого прохода построена цепь разделяющих треугольников Делоне 1, 2, 3, 4 и подготовлены данные для следующих проходов алгоритма.

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

Программная реализация. Обобщим описанные выше методы и представим в виде обобщенного алгоритма реконструкции трехмерной модели сцены на основе стереопары (рис. 3).

Данный алгоритм был программно реализован с использованием языка программирования С++ и показал хорошие результаты при реконструкции трехмерных сцен.

Рис. 3. Обобщенный алгоритм реконструкции трехмерной модели сцены на основе стереопары

9І

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

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

Библиографические ссылки

1. Жук Д. В., Тузиков А. В. Реконструкция трехмерной модели по двум цифровым изображениям // Информатика. 2006. № 1. С. 16-26.

2. Veksler O. Stereo correspondence by dynamic programming on a tree // Proc. CVPR. 2005. Vol. 2. P. 384-390.

3. Naveed I. R., Huijun Di, Guang You Xu. Refine stereo correspondence using bayesian network and dynamic programming on a color based minimal span tree // ACIVS. 2006. P. 610-619.

4. Kolmogorov V., Zabih R. Computing visual correspondence with occlusions using graph cuts // ICCV. 2001. Vol. 2. P. 508-515.

5. Boykov Y., Veksler O., Zabih R. Fast approximate energy minimization via graph cuts // IEEE TP AMI. 2001. № 23(11). P. 1222-1239.

6. Hartley R., Zisserman A. Multiple View Geometry in Computer Vision. Cambridge, U. K. : Cambridge Univ. Press, 2001.

7. Форсайт Д. А., Понс Ж. Компьютерное зрение: современный подход. М. : Вильямс, 2004.

8. Синицын С. И. Гибридный рекурсивноинкрементный алгоритм построения триангуляции Делоне // Материалы конф. «Graphicon». Н. Новгород, 2006. С. 175-177.

I. V. Toupitsyn

RECONSTRUCTION OF THREE DIMENSIONAL MODEL OF THE OBJECT BY STEREOPAIR FOR SOLVING 3D MODELLING TASKS

A 3D model scene building algorithm by stereopair is presented. The algorithm includes three steps. On the first step the search of corresponding points is performed. On the second step three dimensional coordinates offound corresponding points are calculated. And on the third step triangulation for three dimensional points are made. On the basis of the proposed algorithm is implemented software product.

Keywords: stereoimage, epipolar geometry, the corresponding points, disparity, triangulation.

© Tynmtm H. B., 2011

УДК 539.3+539.4

Н. А. Федорова

МОДЕЛИРОВАНИЕ ДЕФОРМИРОВАНИЯ ПЛОСКИХ КОНСТРУКЦИЙ СО СЛОЖНЫМИ КРИВОЛИНЕЙНЫМИ СТРУКТУРАМИ АРМИРОВАНИЯ

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

Ключевые слова: армирование, структурная модель, изогональные траектории.

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

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