Итеративный алгоритм восстановления трехмерных сцен, движения и фокусного расстояния камеры в перспективной проекции, основанный на факторизации ...
←
→
Транскрипция содержимого страницы
Если ваш браузер не отображает страницу правильно, пожалуйста, читайте содержимое страницы ниже
Итеративный алгоритм восстановления трехмерных сцен, движения и
фокусного расстояния камеры в перспективной проекции,
основанный на факторизации матриц.
Н. В. Янова, Д. В. Юрин
ЦОС и ВТ МФТИ
Москва, Россия
Аннотация 2. ПОСТАНОВКА ЗАДАЧИ
Разработан итерационный алгоритм точного решения нели- Рассмотрим систему координат (if, jf, kf), связанную с каме-
нейной задачи восстановления трёхмерных сцен, движения, и рой, такую, что орт kf направлен вдоль оптической оси в на-
внутренних параметров камеры, основанный на уточнении правлении наблюдаемой сцены (см. рис. 1.).
фокусного расстояния камер. Метод позволяет устранить
неоднозначность восстановления сцены по третьей координа-
те z в случае, когда перспективные искажения существенны.
В предложенном алгоритме итерационно применяется при-
ближение масштабируемой ортографической проекции [1].
Фокусные расстояния уточняются методом минимизации
отношения сингулярных чисел масштабируемой матрицы
измерений. Алгоритм обеспечивает лучшую точность по
сравнению с линейными методами, и отличается от извест-
ных в настоящее время алгоритмов решения нелинейной за-
дачи простотой, широким диапазоном применимости и высо-
кой скоростью сходимости.
Ключевые слова: Восстановление трехмерных сцен, Метод
факторизации.
1. ВВЕДЕНИЕ
В настоящее время задаче реконструкции трехмерных сцен
посвящено большое количество исследований [1-5]. Разрабо-
тано много различных подходов, основанных на различных
физических принципах, таких, как восстановление формы из Рисунок 1: Постановка задачи для одной камеры
фокусировки и дефокусировки, стерео [4], угловой зависимо-
сти отражательных свойств материалов, рассеянию в атмо-
сфере [5] и др. В настоящей работе за основу реконструкции Векторы if, jf, kf образуют правую ортонормированную трой-
трёхмерных сцен были взяты алгоритмы восстановления сце- ку. Отвлекаясь от эффектов, связанных с ограниченной глу-
ны по последовательности изображений, полученных с раз- биной резкости, характерной для реальных оптических сис-
личных позиций одной или нескольких камер [3]. Среди них тем, будем считать, что изображения всех точек сцены в
особый интерес представляют алгоритмы, основаны на фак- плоскости изображения находятся в фокусе, что, в частности,
торизации матриц [1,2] в виду их вычислительной эффектив- реализуется для камеры Обскура. Введем понятие передней
ности. Такие методы основаны на поиске характеристических плоскости изображения (ППИ), которая расположена в плос-
точек на изображениях в виде уголков или линий [6,7]. Зада- кости z=l, где l – фокусное расстояние объектива. В дальней-
ча нахождения взаимнооднозначного соответствия между шем будем считать, что изображение формируется на ППИ.
ними на различных изображениях обрабатываемой последо- Это не влияет на описание задачи в рамках геометрической
вательности обычно решается методами траекторного анали- оптики, однако, позволяет избавиться от несущественных
за и калмановской фильтрации [3]. Нужно заметить, что ме- знаков и усложнения, связанного с лишним преобразованием
тоды [1-3] не работают непосредственно с изображениями, а системы координат. Орты if, jf направлены соответственно
требуют на вход набор координат характеристических точек вдоль строки и столбца пикселей изображения, формируемо-
изображений в пикселях, и наличия у каждой такой точки го в ППИ камеры. Пусть на объекте находится точка sp с
маркера (номера), причём, на всей последовательности изо- координатами (x, y, z). Координаты ее изображения на ППИ
бражений одной и той же точке реальной сцены должен соот- обозначим (u ~, v~ ) , тогда из подобия треугольников можно
ветствовать одинаковый маркер. В [1] наиболее компактно и записать:
подробно описаны различные приближения, а также рассмат-
ривается применение метода факторизации в тех случаях,
когда не все характеристические точки присутствуют на всех
кадрах последовательности.В (2.3) были введены следующие обозначения: a - положи-
x u~ y v~ тельный масштабирующий коэффициент, отражающий диа-
= , = (2.1)
z l z l пазон изменения u fp , v fp : [− a 2 , a 2] , его значение
Уравнения (2.1) устанавливают связь между измеряемыми на существенно только для устойчивости и точности численных
~ ~
методов; ~uf , ~
e e
опыте значениями (u , v ) , координатами точки объекта в v f - размеры одного пикселя на фоточувст-
l камеры. вительной матрице в метрических единицах;
трехмерном пространстве и фокусным расстоянием
N = max( N x , N y ) , где N x , N y – ширина и высота изо-
Пусть имеется P точек на объекте и F камер или кадров, сня-
тых при различных положениях камеры. Принадлежность бражения в пикселях, обычно Nx > Ny .
величины к точке объекта p (point) будем обозначать индек-
сом p=1,…,P. Индексом f (frame) будем обозначать величины, Переходя к произвольной системе координат, и записывая
относящиеся к определенному кадру (камере и ее положе- уравнения (2.2) в векторной форме, получим:
нию). Тогда уравнения (2.1) принимают вид:
i f (s p − t f )
x fp u~ fp y fp v~ fp u fp = g f
z fp
= , = (2.2)
z fp lf z fp lf j f (s p − t f )
v fp = α f g f (2.6)
В практике работы с цифровыми камерами, размер изобра- z fp
жения в ППИ (то есть, размер пикселя), как правило, в еди- z fp = k f (s p − t f )
ницах длины неизвестен, и непосредственно не измеряется.
Поэтому целесообразно перейти к измеримым величинам,
таким, как координаты пикселя. Преобразуем уравнения (2.2)
к виду: Уравнения (2.6) являются основой для решения задачи вос-
становления трехмерной формы объекта. Рассмотрим их под-
~ a x fp lf a робнее. При съемке объекта измеряются величины
u
fp ~ e = u fp , v fp – всего 2FP величин. Обычно значения αf из-
u f N z fp u~ e N
f (2.3)
вестны и равны единице, поэтому в дальнейшем будем этот
v~ a = y fp lf a параметр опускать. Неизвестными являются s p, t f , g f –
fp u~ fe N z fp v~ e N 3P+3F+F=3P+4F величин и F троек векторов (i f , j f , k f ) ,
f
на которые наложены ограничения ортонормированности и
и перейдём к новым переменным: правой тройки:
a u~ fp n (fpx ) i f ⋅i f =1
u fp = = a
N u~ fe N j ⋅ j =1
f f
, f = 1,.., F (2.7)
v a v~ fp n (fpy ) i f ⋅ jf = 0
= = a
fp N v~ fe N k f = i f × j f
(2.4)
Итого получаем (6-3)F=3F неизвестных величин. Таким обра-
g lf 1
= a = зом, 2FP уравнений определяют 3P+7F неизвестных. Система
f u~ fe N ϕ f уравнений (2.6) может быть разрешена относительно этих
неизвестных в смысле метода наименьших квадратов, если
u~ f
e
выполняется условие 2FP>3P+7F, которое при достаточном
α f = количестве точек объекта и снятых кадров может быть удов-
v~ e
f
летворено. Минимальными значениями F,P являются
(F=5,P=5), (F=12,P=4), (F=3,P=7). Заметим, что количество
неизвестных может быть уменьшено, если заданы дополни-
где αf - aspect ratio; величины n (fpx ) , n (fpy ) – это координа-
тельные условия, например, постоянство фокусного расстоя-
ты пикселя на цифровом изображении; ϕ = 2tg ( β max / 2) , ния (отсутствие zoom-а), уменьшает число неизвестных на
F-1. Важно отметить также, что размеры трехмерной сцены
где β max – максимальный угол зрения камеры. на базе уравнений (2.1) могут быть восстановлены только с
точностью до масштабирующего множителя, поэтому для
Тогда, в новых обозначениях: восстановления в абсолютных единицах требуется знание
какого-либо размера сцены – расстояния между двумя точка-
x fp
u fp = g f ми, или расстояния между двумя положениями камеры.
z fp
y
(2.5)
3. МЕТОД ФАКТОРИЗАЦИИ
v fp = α f g f fp
z fp Выберем начало МСК в центре масс (ЦМ) точек объекта:1 P W = MS + T[1 … 1], (3.6)
P
∑s
p =1
p =0 (3.1) где M – матрица движения размера 2F×3, S – матрица формы
размера 3×P, T – вектор смещений камер, формирующиеся
Тогда следующим образом:
1 P 1 P x1 m 1T
∑ fp f P ∑
P p=1
z = k
p=1
sp − k f t f = −k f t f = z f ,
y1 n 1T
(3.2)
k f sp T= : , S = s1 ... s P , M= M , (3.7)
z fp = z f + k f s p = z f (1+ ). xF m T
zf F
T
yF n F
В приближении | s p |В предлагаемой работе система уравнений (3.12) решалась Тогда формулы для перспективной проекции (4.1) принима-
методом наименьших квадратов с применением SVD. Эле- ют вид, соответствующий МОП - приближению:
менты матрицы Q находятся путем факторизации матрицы u 'fp = m f s p + x f
T
Q Q. Заметим, что уравнения этой системы остаются ' (4.3)
v fp = n f s p + y f
справедливыми при умножении в (3.12) матрицы Q на мат-
рицу вида: Уравнения (4.3) совпадают с уравнениями (3.4), за исключе-
нием того, что их левая часть, наряду с данными измерений,
± 1 0 0 содержит теперь и неизвестные величины sp, kf. В матричной
записи они принимают вид, аналогичный (3.6), где матрица
0 ± 1 0 (3.13) W может быть представлена в виде двух слагаемых, первое
0 0 ± 1 из которых, W1, соответствует (3.5), а второе, W2, зависит от
W1, sp, kf, и имеет смысл поправки на перспективные искаже-
Это обусловлено тем, что до сих пор было зафиксировано ния:
только начало координат МСК, а ориентация осей в процессе W = MS + T , где W = W1 + αW2 (4.4)
решения уравнений (3.10)-(3.12) оставалась произвольна.
Зафиксировав ориентацию осей системы координат, напри- Система уравнений (4.4) может быть решена итерациями,
мер, выбрав направление осей таким же, как у системы, свя- путём уточнения этой поправки. Заметим здесь, что, в отли-
занной с первой камерой, неоднозначность в первых двух чие от алгоритма, предложенного в [2], количество парамет-
знаках (3.13) можно устранить. Неоднозначность в третьем ров, подбираемых по итерациям (фокусные расстояния ка-
знаке (3.13) связана с тем, что в МОП пренебрегают глубиной мер) существенно меньше, - F величин в предлагаемом ал-
объекта по сравнению с расстоянием до него [1]. Поэтому FP
горитме, и величин в [4], а структура каждой строки
алгоритмы, основанные на МОП, работают, по существу, с
плоскими объектами. Это приводит к неоднозначности вос- матрицы W2 предварительно определяется из приближенно-
становления формы сцены S и движения камер M. го решения. Сформулируем предлагаемый алгоритм решения
Учитывая выравнивание по первой камере, получим искомые нелинейной задачи восстановления:
матрицы движения и формы: 1. Полагаем в (4.4):
M ′ = MR 0 q := 0, α ( 0) := 0, W ( 0 ) := W1 , W2( 0) := 0
S′ = R 0 S
T
(3.14) 2. Решаем систему уравнений, описывающую МОП - при-
R = [ i , j , k ] ближение:
0 1 1 1
W (q) = M (q) S (q) + T (q) .
3. Полагаем теперь:
4. ИТЕРАЦИОННЫЙ АЛГОРИТМ ТОЧ- q := q + 1
НОГО РЕШЕНИЯ ЗАДАЧИ ВОССТА- 4. Вычисляем матрицу
НОВЛЕНИЯ
W2(q) := W2(q) (M (q −1 ) , S (q −1 ) , T(q −1 ) ).
Основными недостатками рассмотренного выше приближе-
ния МОП являются неоднозначность в определении знака 5. Находим параметр α (q ) , подбирая его таким, чтобы ранг
глубины сцены и невозможность вычисления фокусных рас- матрицы W оставался равным 3, то есть надо искать:
стояний камер. Наличие на изображениях перспективных
искажений является дополнительным источником информа- σ4
ции, позволяющим устранить перечисленные недостатки. min
α σ(q)
1
(W1 + α (q) W2(q) ),
Уравнения (2.7) можно переписать в следующем виде:
где σ 1, σ 4 - сингулярные числа матрицы
k fsp g SVD
(1 + )u fp = (i f s p − i f t f )
W (q ) : W ( q ) = UΣV , Σ = diag (σ 1 Kσ 4 ) .
T
zf zf Диапа-
(4.1) зон изменения α (q)
определяется из условия:
(1 + k f s p ) v = g ( j s + j t )
zf
fp
zf
f p f f k fsp
1 + α (q) > 0.
Введем новые обозначения:
zf'
z 'f = z f g x f = − i f t f z 'f 6. Вычислить матрицу W(q):= W1 +α(q)W2(q).
, '
,
α = 1 g y f = − j f t f z f 7. Перейти к п. 2, если не выполняется условие:
m f = i f
z 'f u 'fp = (1 + α k f s / z 'f ) u fp
(4.2)
|α ( q −1)
−α (q)
|< ε .
'
' '
n f = j f z f v fp = (1 + α k f s / z f ) v fp8. Устранить неоднозначность знака глубины объекта: Если
i obj = [100]T
α (q) < 0 , то
jobj = [010]
T
α ( q ) := −α ( q ) 1 0 0 (5.2)
S (q) := Q1S (q) , где Q1 = 0 1 0 k obj = [001]
T
M (q) := Q1M (q) 0 0 −1 В модели также предусмотрено, что камеры могут наводить-
ся не только на ЦМ точек объекта, но и на произвольную
Сделать выравнивание системы координат по первой камере
точку. В модели камеры представляются матрицей CamPos
(3.14).
размера 3×Ncam, формируемой из векторов смещений всех
Вычислить координаты позиций камер. камер. Предусмотрена также возможность совмещения ис-
ходной модели с данными, полученными в результате вос-
5. ПОСТРОЕНИЕ МОДЕЛИ ДЛЯ ГЕНЕ- становления.
РАЦИИМ СИНТЕТИЧЕСКИХ ДАННЫХ
6. РЕЗУЛЬТАТЫ
В среде Matlab была разработана модель, представляющая
собой три грани прямоугольного параллелепипеда, на каждой Предложенный алгоритм тестировался на реальных и синте-
из которых характеристические точки образуют равномер- тических данных. В настоящей работе приводится сопостав-
ную прямоугольную сетку. С помощью построенной модели ление результатов восстановления в приближении масштаби-
был организован автоматический генератор характеристиче- руемой ортографической проекции [1] и предлагаемым мето-
ских точек, который необходим в процессе реконструкции дом. Результаты восстановления сопоставляются также с
трёхмерных сцен, поскольку алгоритмы, как правило, зависят исходной моделью. Так как МОП не восстанавливает фокус-
от числа характеристических точек. Помимо этого, появилась ные расстояния камер, то, при сравнении этого приближения
возможность сравнения полученных результатов восстанов- с моделью, использовались истинные значения фокусных
ления с эталоном. В модели в качестве характеристических расстояний, полученные из модели.
точек берутся координаты вершин прямоугольников, принад- Для всех представленных в настоящей работе результатов,
лежащих поверхности трёхгранного угла. Характеристиче- расстояние от ближайшей к объекту камеры до его центра
ские точки хранятся в матрице X размера Npoints×3, в про-
масс rmin варьировалось в диапазоне от 2 до 30 размеров
цессе формирования которой было учтено, что на пересече-
нии рёбер трёхгранного угла лежат одни и те же точки. объекта. В каждой последовательности расстояние от центра
В качестве одного из методов оценки результатов восстанов- масс объекта до самой удаленной камеры rmax в 1.5 раза
ления использовался язык Virtual Reality Modeling Language превышало расстояние до ближайшей камеры.
(VRML). Для представления результатов в среде VRML тре-
На рис. 2-3 представлены результаты восстановления формы
буется задание не только трёхмерных координат точек, но и
объекта и положений камер, в сравнении с моделью для
рёбер куба. Поэтому, параллельно с построением матрицы Х,
МОП - приближения, и предлагаемого метода. Истинные
запоминается способ обхода последовательности точек на
положения камер изображены кружочком, восстановленные –
грани, посредством их нумерации. Рёбра куба представляют-
крестиком. Видно, что в присутствии сильных перспектив-
ся матрицей FaceSet, в которую записывается последова- ных искажений предлагаемый метод обеспечивает сущест-
тельность маркеров точек в вершинах обойдённых прямо- венно лучшую точность. На рис. 4-5 приведена аналогичная
угольников. В модели введены 3 системы координат: объект- пара результатов для случая больших расстояний от камер до
ная система координат (ОСК), с центром в вершине трёх- объекта, камеры не показаны, поскольку в такой ситуации
гранного угла, МСК с началом в ЦМ точек объекта, и систе- объект на рисунке будет очень мал. Видно, что, даже в этих
ма координат, связанная с камерой (КСК). Все камеры пози- условиях, предлагаемый метод обеспечивает лучшую точ-
ционированы таким образом, чтобы объект всегда находился ность восстановления формы, однако точность восстановле-
в поле зрения каждой камеры, и сориентированы на объект ния положений камер несколько снижается из-за погрешно-
следующим способом: стей восстановления фокусного расстояния. Заметим здесь,
что при очень больших расстояниях, перспективные искаже-
jobj × k cam ния отсутствуют, это и делает принципиально невозможной
i cam = оценку фокусного расстояния предлагаемым методом.
| jobj × k cam |
В модели, описанной в предыдущем разделе, фокусные рас-
jcam = −i cam × k cam (5.1) стояния вычислялись таким образом, чтобы изображение
x − x Cam
объекта, полученное с ближайшей к объекту камеры, занима-
k cam = C ло большую часть площади кадра. На рис. 6 пунктиром обо-
| x C − x Cam | значены значения фокусных расстояний, полученные из мо-
дели, сплошной линией - результаты восстановления предла-
Здесь векторы x C , x Cam задают положение ЦМ объекта и гаемым алгоритмом, и точечным пунктиром – относительная
ошибка в процентах. На рис. 7-9 результаты для МОП - при-
позиции камер, ОСК определяется следующим образом: ближения показаны штрих - пунктирной линией, а для пред-
лагаемого метода – сплошной линией с круглыми маркерами.Рисунок 2: Результаты восстановления в МОП, Рисунок 5: Результаты восстановления предлагаемым
rmin = 2a . методом при слабых искажениях, rmin = 30a .
Рисунок 3: Результаты восстановления предлагаемым Рисунок 6: Погрешность восстановления фокусного рас-
методом, rmin = 2a . стояния камер в зависимости от r для данных, приве-
дённых на рис.2-5.
Рисунок 4: Результаты восстановления в МОП,
Рисунок 7: Погрешность восстановления формы сцены в
rmin = 30a зависимости от r для данных, приведённых на рис.2-5.На рис. 7 приведена погрешность восстановления формы искажений, то есть при небольшом расстоянии от камер до
объекта, которая рассчитывалась как среднеквадратичное объекта. С ростом этого расстояния погрешность восстанов-
отклонение координат восстановленных точек от модели. На ления фокусного расстояния растет, однако структура алго-
рис. 8 показана погрешность восстановления ориентации ритма такова, что позволяет легко модернизировать его для
камер. Видно, что во всех случаях предлагаемый метод даёт динамического переключения на линейные методы [1], на
лучшую точность. На рис. 9 проиллюстрирована погреш- основании оценки фокусного расстояния в случае больших
ность восстановления позиций камер. Её рост с расстоянием расстояний до объекта, где линейные методы обеспечивают
для предлагаемого метода, обусловлен тем, что в нём исполь- хорошую точность. Систематический характер зависимости
зовались восстановленные значения фокусных расстояний погрешности восстановления фокусного расстояния с удале-
(см. рис. 6), для МОП - приближения фокусные расстояния нием камер от объекта, позволяет предположить, что этот
брались непосредственно из модели. эффект может быть объяснен и частично скомпенсирован.
Отметим здесь, что для сильно удаленных объектов перспек-
тивные искажения отсутствуют, и восстановление фокусных
расстояний камер становится принципиально невозможным.
Предлагаемый алгоритм, в отличие от линейных методов, не
приводит к неоднозначностям восстановления трехмерной
сцены [1]. В проведенных экспериментах алгоритм сходился
за несколько итераций и показал высокую устойчивость по
отношению к внесению шума в исходные данные.
8. ЛИТЕРАТУРА:
[1] Conrad I. Poelman, Takeo Kanade. A Paraperspective Fac-
torization Method for Shape and Motion Recovery: //Technical
Report CMU-CS-93-219 / School of Computer Science, Carnegie
Mellon University. — 11 December 1993.
[2] Mei Han, Takeo Kanade. Scene Reconstruction from Multiple
Uncalibrated Views //Technical Report CMU-RI-TR-00-09 /
CMU Robotics Institute. — January 2000.
Рисунок 8: Погрешность восстановления ориентации ка- [3] Tony Jebara, Ali Azarbayejani and Alex Pentland. 3D Struc-
мер в зависимости от r для данных, приведённых на ture from 2D Motion. //IEEE Signal Processing Magazine. May
рис.2-5. 1999, V.16, No.3. (MIT Media Laboratory. Perceptual Computing
Technical Report #523).
[4] Sebastien Roy, Ingemar J. Cox. A Maximum – Flow Formula-
tion of the N-camera Stereo Correspondence Problem. // IEEE.
Proc. Of Int. Conference on Computer Vision, Bombai, January
1998.
[5] Fabio Cozman, Eric Krotkov. Depth from Scattering.
//Robotics Institute, Carnegie Mellon University, Pittsburgh.
http://www.ri.cmu.edu/pub_files/pub2/cozman_fabio_1997_1/coz
man_fabio_1997_1.pdf.
[6]S.M. Smith, J.M.Brady. SUSAN - New approach to low-level
image processing. //Int. journal of computer vision. Volume 23
No.1 P. 45-78, May 1997.
[7] Непомнящий П.В., Хельвас А.В., Юрин Д.В. Обнаружение
уголковых структур на контурных изображениях полученных
сегментацией растра. //Обработка информации и моделиро-
вание. М., 2002 (в печати).
Об авторах
Рисунок 9: Погрешность восстановления позиций камер в
зависимости от r для данных, приведённых на рис.2-5. Наталья Владимировна. Янова – студентка 5-го курса ФФКЭ
Московского-Физико-Технического Института.
7. ЗАКЛЮЧЕНИЕ E-mail: Natalie@cos.ru
Разработан итерационный алгоритм решения задачи восста-
новления трехмерных сцен, движения и внутренних парамет-
Юрин Дмитрий Владимирович, к.ф.-м.н.
ров камер по последовательности изображений в перспектив-
ной проекции. Предлагаемый подход обеспечивает заметно
E-mail: yurin@cos.ru
более высокую точность, чем приближение масштабирован-
ной ортографической проекции [1] и позволяет восстанавли-
вать фокусные расстояния камер при наличии перспективныхВы также можете почитать