Итеративный алгоритм восстановления трехмерных сцен, движения и фокусного расстояния камеры в перспективной проекции, основанный на факторизации ...
←
→
Транскрипция содержимого страницы
Если ваш браузер не отображает страницу правильно, пожалуйста, читайте содержимое страницы ниже
Итеративный алгоритм восстановления трехмерных сцен, движения и фокусного расстояния камеры в перспективной проекции, основанный на факторизации матриц. Н. В. Янова, Д. В. Юрин ЦОС и ВТ МФТИ Москва, Россия Аннотация 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 fp
8. Устранить неоднозначность знака глубины объекта: Если 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] и позволяет восстанавли- вать фокусные расстояния камер при наличии перспективных
Вы также можете почитать