You are on page 1of 13

UNIVERSIDAD POLITCNICA DE MADRID

ESCUELA TCNICA SUPERIOR DE


INGENIEROS DE TELECOMUNICACIN

PROYECTO FIN DE CARRERA

SISTEMA DE AUTOCALIBRACIN DE CMARAS


Y RECONSTRUCCIN 3D
Autor:
e-mail:
Tutor:
Departamento:
Fecha de lectura:
Calicacin:

Guillermo Gallego Bonet


ggb@gti.ssr.upm.es
Jos Ignacio Ronda Prieto
Seales, Sistemas y Radiocomunicaciones
23 de febrero de 2004
Matrcula de Honor, 10p.

Sistema de Autocalibracin de Cmaras y


Reconstruccin 3D
1. Introduccin
El presente proyecto est englobado dentro del campo de la visin articial, la cual pretende emular el
comportamiento de la visin humana utilizando una cmara como sensor y un ordenador como procesador. Suponemos que se dispone de un conjunto de imgenes digitales o una secuencia de vdeo que
reeja una escena esttica. El objetivo del proyecto es fascinante: slo con la informacin contenida en las
imgenes, obtener un modelo en tres dimensiones de la escena y las caractersticas de la cmara con que
fueron adquiridas las imgenes. Suponemos que se desconoce la posicin espacial de la cmara respecto
de la escena (parmetros extrnsecos), as como los parmetros intrnsecos de la misma.
Los dos elementos principales del ttulo del proyecto ya han sido presentados: el trmino autocalibracin
signica obtener los parmetros que denen la cmara (distancia focal, punto principal, posicin del espacio, etc.) sin ningn conocimiento a priori de la escena adquirida, mientras que el trmino reconstruccin
3D signica obtener un modelo tridimensional de la escena bajo estudio: forma y localizacin de los
objetos que estn delante de la cmara.
Las herramientas necesarias para lograr el citado objetivo son: el tratamiento digital de imgenes, la
geometra proyectiva y las tcnicas de optimizacin. El tratamiento digital de imgenes permite extraer
la informacin adecuada de las proyecciones de la escena, caractersticas tales como puntos y/o rectas.
Esto reduce el problema a uno puramente geomtrico. La geometra proyectiva permite crear modelos
sencillos que describen el sistema de formacin de la imagen en la cmara y plantear diversos algoritmos
para invertir dicha operacin. Las tcnicas de optimizacin consiguen que dichos algoritmos sean tiles
desde el punto de vista numrico y prctico.
No es objeto del proyecto la extraccin de caractersticas de las imgenes digitales de partida, ni su correspondencia entre imgenes, ni la representacin tridimensional de la escena reconstruida mediante mallado
y pegado de texturas. El proyecto se centra en abordar las etapas intermedias entre estos extremos.
Me gustara resaltar que este proyecto no est precedido de ninguno otro en la escuela: es innovador ya
que la teora de autocalibracin de cmaras y reconstruccin 3D es muy reciente. Durante su elaboracin,
he podido desarrollar mis habilidades e imaginacin en temas no habituales de los ingenieros de telecomunicacin, lo que constituye un primer acercamiento a mi tarea investigadora, reejada en las aportaciones
citadas en el captulo 1.
El ejemplo del captulo 8 es muy ilustrativo y se recomienda su consulta en caso de que el lector se sienta
abrumado por los captulos intermedios. As no se pierde de vista el objetivo nal.

2. Planteamiento del problema y modelo utilizado


En adelante, suponemos que ya han sido detectados ciertos puntos entre imgenes y puestos en correspondencia, a travs de algn algoritmo de seguimiento. A partir de este nmero nito de caractersticas
pretendemos resolver nuestro problema, adems de imponer ciertas restricciones, si no sera imposible
reconstruir nuestro mundo fsico, ya que su complejidad es innitamente superior a la complejidad de las
medidas que podamos hacer en las imgenes.
Habitualmente, la resolucin del problema planteado se divide en varias etapas y los posibles resultados
intermedios de cada una de ellas son lo que se conoce como una reconstruccin proyectiva o una reconstruccin afn de la escena. Estas fases reciben el nombre de reconstruccin o calibracin estraticada.
Ambas reconstrucciones estn relacionados con la reconstruccin nal, denominada reconstruccin eucldea o mtrica, mediante una transformacin geomtrica del espacio: proyectiva o afn, respectivamente.
Las transformaciones proyectivas tambin reciben el nombre de homografas.

Todos somos conscientes de que perdemos una dimensin al proyectar el mundo real sobre una imagen: pasamos de un mundo 3D al mundo 2D de las imgenes. Nuestra misin es tratar de recuperar esta
dimensin perdida, inferirla a partir de varias proyecciones, tomadas desde distintas posiciones del espacio.
Una cmara es un dispositivo que realiza esta proyeccin del mundo tridimensional al mundo de las imgenes. Este proceso es complejo porque intervienen muchos elementos: un conjunto de lentes se utiliza
para dirigir la luz de tal forma que incida sobre un dispositivo CCD y se convierta la informacin en bits,
etc. Los fundamentos pticos de la formacin de la imagen habitualmente suponen un modelo ideal de
cmara de ojo de aguja (pinhole ): lente delgada o na cuya apertura tiende a cero, lo que simplica el
anlisis porque despreciamos los efectos de difraccin y reexin de las lentes, quedndonos con el modelo
ms sencillo de refraccin en el que todos los rayos pasan por el centro ptico de la lente.
El modelo matemtico ms popular que describe esta operacin es el de cmara proyectiva o proyeccin cnica, por lo que sus elementos bsicos son el plano de proyeccin o plano de la imagen y el centro
de proyeccin. Son necesarios varios cambios de referencia, tanto en el espacio como en el plano para
establecer una correspondencia precisa entre puntos del espacio 3D, expresados respecto de un sistema
de referencia global jo, y sus proyecciones en la imagen, expresadas respecto de un sistema de referencia
local a la imagen. La ecuacin que determina las proyecciones en las imgenes, x = (x, y, 1)> , de los
puntos 3D, X = (X, Y, Z, 1)> , se expresa en coordenadas homogneas (geometra proyectiva) de forma
lineal: x PX, donde el smbolo signica igualdad salvo proporcionalidad.
La cmara se modela mediante su matriz de proyeccin, P de 3 4, que contiene la matriz de parmetros
intrnsecos, K, que a su vez depende de 5 parmetros: distancia focal, v , relacin de aspecto de los pxeles
= u /v , ngulo entre los lados de los pxeles (skew ), punto principal1 (u0 , v0 )> y los parmetros
e respecto de un sistema de referencia del mundo 3D.
extrnsecos : rotacin R y traslacin C

v v cot u0
1 0 0 0
R t
e]
v / sen v0 0 1 0 0
P = K[I | 0]He = 0
= KR[I | C
0> 1
0
0
1
0 0 1 0
Tambin se utilizar un modelo mejorado que aade parmetros en la cmara que modelan la distorsin
radial, que constituye la desviacin ms relevante respecto del modelo lineal. En la prctica, este error
es ms acusado cuanto menor es la distancia focal y peor es la calidad de la lente. Es posible corregir la
distorsin radial producida en las imgenes para seguir utilizando la suposicin de cmara lineal.
Con los elementos que ya han sido presentados podemos formalizar el problema ms general de la
reconstruccin 3D de la forma siguiente: dadas m imgenes con las proyecciones {xij }i=1,...,m;j=1,...,n de
n puntos (convenientemente identicados uno en cada imagen como correspondientes al mismo punto del
espacio), queremos hallar las posiciones de estos puntos en el espacio y los parmetros de las cmaras,
e i }i=1,...,m tales
es decir, las coordenadas {Xj }j=1,...,n de los puntos y las matrices y vectores {Ki , Ri , C

e i ]Xj . Esta reconstruccin es posible salvo una transformacin de semejanza, la cual


que xij Ki [Ri | Ri C
incluye un escalado, una rotacin y una traslacin.

La presencia de errores en la posicin de las proyecciones xij hace interesante plantear el problema en
trminos de estimacin estadstica. Un planeamiento natural consiste en identicar el problema con la
minimizacin de la funcin de coste de mxima verosimilitud conocida como error de reproyeccin :2

e ]Xj ),
d2 (xij , Ki [Ri | Ri C

i,j

Se trata por tanto de un problema de optimizacin no lineal con un nmero elevado de variables que
no es resoluble mediante tcnicas genricas de optimizacin. La estrategia para resolver el problema
pasa por dividirlo en subproblemas que se puedan resolver mediante factorizacin de matrices o problemas de optimizacin factibles. Posteriormente estos resultados pueden renarse mediante tcnicas de
1 El punto principal es la interseccin del eje ptico de la lente con el plano de la imagen.
2 d representa la distancia eucldea en el plano de la imagen.

optimizacin que busquen la minimizacin de la funcin de coste anterior o una aproximacin a la misma.
El esquema de procesamiento completo desde que se dispone de las imgenes hasta que se visualiza
la reconstruccin en tres dimensiones consta de los siguientes pasos:
1. Extraccin de las caractersticas de las imgenes y su correspondencia.
2. Calibracin proyectiva de las cmaras. Una reconstruccin proyectiva es una reconstruccin de la
escena que est relacionada con la reconstruccin real mediante una transformacin geomtrica del
espacio llamada homografa .
3. Autocalibracin. Dada una calibracin proyectiva de las cmaras, obtener una transformacin del
espacio para convertir una reconstruccin proyectiva en una reconstruccin mtrica o eucldea.
4. Optimizacin de la calibracin eucldea obtenida, minimizando el error de reproyeccin.
5. Presentacin de la reconstruccin. La informacin de la calibracin eucldea de las cmaras y las
posiciones de los puntos 3D se combina con la informacin de texturas de las imgenes para construir
un modelo tridimensional de la supercie del mundo real y visualizarlo mediante algn programa
de realidad virtual.
Muchos algoritmos de autocalibracin realizan hiptesis sobre los valores de algunos parmetros intrnsecos de las cmaras, en otras ocasiones se imponen restricciones en lugar de conocer esos valores. Algunas
de estas suposiciones son:
Todas las cmaras comparten los mismos parmetros intrnsecos, constantes, pero desconocidos.
Cmaras con pxeles de forma conocida o cuadrados, es decir, = /2 y = 1.
El punto principal de la cmara es conocido o est en el origen de coordenadas.
La hiptesis de pxeles cuadrados es ms cercana a la realidad que la hiptesis de punto principal en
el origen. La posicin del punto principal puede variar signicativamente de una imagen a otra, ambas
tomadas con la misma cmara; sin embargo la relacin de aspecto y el skew son parmetros jos debidos
a la construccin del dispositivo CCD de las cmaras digitales. ste no cambia de una imagen a otra.

3. Geometra Proyectiva
La geometra eucldea describe localmente nuestro mundo tridimensional. En ella, los lados de los objetos
tienen longitudes, las lneas que se intersecan determinan ngulos entre ellas, y se dice que dos lneas
son paralelas si pertenecen al mismo plano y nunca se cortan. Adems, estas propiedades no cambian
cuando aplicamos las transformaciones eucldeas (traslacin y rotacin). Sin embargo, no es el nico tipo
de geometra. La geometra eucldea es en realidad un subconjunto de lo que se conoce como geometra
proyectiva. De hecho, hay dos geometras entre ambas: la geometra del grupo conforme formado por las
semejanzas y la geometra afn.
La geometra proyectiva modela bien el proceso de adquisicin de imgenes en una cmara porque permite una clase ms amplia de transformaciones que slo traslaciones y rotaciones. Estas transformaciones
preservan el tipo (los puntos siguen siendo puntos y las rectas se transforman en rectas), la incidencia
(esto es, si un punto pertenece a una recta) y la razn doble, pero no mantiene otras medidas: longitudes, ngulos, paralelismo, etc. La geometra proyectiva existe para cualquier dimensin, al igual que la
geometra eucldea. Por ejemplo la recta proyectiva, que denotamos por P1 , es anloga al mundo eucldeo
unidimensional; el plano proyectivo, P2 , se corresponde con el plano eucldeo; y el espacio proyectivo,
P3 , est vinculado con el espacio eucldeo tridimensional. El proceso de formacin de la imagen es una
proyeccin de P3 en P2 .
El propsito del captulo 3 es hacer autocontenido el documento e instruir al lector sobre los elementos
geomtricos bsicos tales como puntos, rectas, planos, cnicas, cudricas, cbicas, etc. y las operaciones
entre los mismos. Todo esto se utilizar para resolver nuestro problema, segn mostramos a continuacin.
El paso de autocalibracin consiste en determinar la estructura afn o la estructura eucldea de la escena
dada una reconstruccin proyectiva de la misma. Esto se logra si identicamos unos objetos geomtricos

especiales: el plano del innito, y la cnica absoluta u objetos equivalentes.


El plano del innito contiene la informacin del paralelismo (dos rectas o planos son paralelos si se cortan
en el innito) y la razn simple de longitudes. Si identicamos este plano en la reconstruccin proyectiva
de la escena, podemos construir una transformacin espacial que coloque el plano del innito en su posicin correcta en una referencia eucldea. Del mismo modo, la cnica absoluta, que es una cnica especial
contenida en el plano del innito, contiene la informacin de ortogonalidad de la escena. Si identicamos
esta cnica, podremos recticar la reconstruccin proyectiva de tal forma que seamos capaces de medir
ngulos y longitudes (habremos denido un producto escalar).
Los siguientes objetos son equivalentes a los dos anteriores, es decir, contienen la informacin de ambos: la
cudrica absoluta dual, Q , que es el conjunto de todos los planos tangentes a y la cudrica absoluta
de rectas, , que es el conjunto de todas las rectas tangentes a .
Otros objetos con informacin de ortogonalidad son: la PAC o IAC, que es la proyeccin o imagen de la
cnica absoluta sobre el plano de la imagen de una cmara, expresada por i = (Ki Ki> )1 y la DIAC, dual
de la imagen de la cnica absoluta, cuya ecuacin es i = Ki Ki> y es la imagen de Q en la cmara i.
Tanto la IAC como la PAC son cnicas que se utilizan mucho en autocalibracin, ya que slo dependen
de la matriz de parmetros intrnsecos y es la informacin que se desea recuperar.

4. Estimacin de homografas entre imgenes


Las homografas del plano (las transformaciones lineales 2D ms generales) tienen muchas aplicaciones:
correccin de la distorsin perspectiva de una imagen, creacin de imgenes panormicas a partir de
varias imgenes, autocalibracin de una cmara rotatoria, etc. Sin embargo, el objetivo de este captulo
no es aprender a estimar homografas, sino introducir la teora de estimacin de transformaciones u otras
entidades geomtricas a partir de ciertas medidas u observaciones. Se dan los fundamentos para estimar:
homografas 2D a partir de pares de puntos en dos imgenes, matrices de proyeccin a partir de pares de
puntos 3D y 2D, la matriz fundamental entre dos imgenes dadas unas parejas de puntos entre ambas, etc.
En la memoria se aplica la teora de la estimacin de forma estructurada en el sentido de que en cada
captulo se plantean uno o varios problemas de estimacin de cierto objeto o transformacin y siempre se
proporcionan los siguientes mtodos: primero un algoritmo lineal basado en la tcnica de mnimos cuadrados propuesta por Gauss, despus varios algoritmos no lineales basados en la minimizacin de cierta
funcin de coste algebraico o geomtrico mediante el algoritmo de LevenbergMarquardt (una modicacin del mtodo de Newton) y por ltimo, un algoritmo robusto de estimacin frente a datos atpicos
(outliers ), basado en la tcnica RANSAC (RANdom SAmple Consensus ).
Los algoritmos lineales utilizan tcnicas estndar de lgebra lineal: principalmente la descomposicin en
autovalores y autovectores o la descomposicin en valores singulares. Se utilizan para obtener una primera solucin que inicialice algoritmos no lineales. Para que los algoritmos sean numricamente estables es
necesario normalizar los datos y no se debe descuidar la desnormalizacin de los resultados.
Los algoritmos no lineales persiguen la minimizacin de una funcin de coste o distancia mediante esquemas iterativos, habitualmente fundamentados en la suposicin de que la funcin a minimizar es localmente
cuadrtica. Estos algoritmos son muy tiles porque permiten imponer las restricciones propias que debe satisfacer la geometra de la solucin mediante una parametrizacin adecuada del espacio de soluciones.
El marco descriptivo comn de estos algoritmos consta de los siguientes elementos: un vector de parmetros P RM (variables independientes respecto a las cuales minimizar), un vector de medidas
X RN (variables dependientes) con matriz de covarianzas X , una funcin modelo f : RM RN ,
cuyo recorrido es, localmente, el conjunto de medidas permitidas y una funcin de coste a minimizar, que
se expresa como el cuadrado de la distancia de Mahalanobis: kX f (P)k2X = (X f (P))> 1
X (X f (P)).
Este captulo tambin proporciona los fundamentos para calcular analticamente cotas del rendimiento de
los algoritmos de mxima verosimilitud, mediante los conceptos de error residual y error de estimacin,
4

bajo la hiptesis de ruido gaussiano en los datos. Esto es muy til para evaluar la calidad de los resultados
de los algoritmos programados respecto de los resultados del algoritmo ptimo o de mxima verosimilitud.

5. Matriz de Proyeccin
Antes de pasar a la calibracin proyectiva de cmaras es necesario saber caracterizar las matrices de
proyeccin que las representan. En el captulo 5 se describen los elementos que componen una cmara
proyectiva en una reconstruccin eucldea y la informacin recogida en la matriz de proyeccin de una
cmara. Tambin se incluyen varios algoritmos de estimacin de una matriz de proyeccin a partir de
correspondencias de puntos del espacio y del plano: el algoritmo lineal y el algoritmo no lineal de mxima
verosimilitud (Gold Standard) que minimiza el error de reproyeccin en una imagen. Esta operacin se
conoce como reseccin.
Como ya se ha indicado, una matriz de proyeccin en un sistema de referencia eucldeo se puede descome ]. Contemos los grados de libertad: 5 parmetros intrnsecos, 3 grados de
poner de la forma: P = KR[I | C
libertad de la rotacin y 3 de la traslacin (posicin del centro ptico), 11 en total. Este nmero coincide
con los grados de libertad de una matriz de 3 4 arbitraria denida salvo proporcionalidad, que es la
caracterizacin de una cmara en una reconstruccin proyectiva arbitraria.
Slo si la submatriz formada por las tres primeras columnas de P es regular, la cmara recibe el nombre
de cmara proyectiva nita y es lcito descomponerla para obtener la matriz de parmetros intrnsecos K,
e . Esto caracteriza las cmaras en reconstrucciones eucldeas.
la orientacin R y la posicin de la cmara C
Tambin se describen las matrices de rotacin para encontrar parametrizaciones adecuadas de las mismas.
Existen distintas alternativas: ngulos de Euler, exponencial de una matriz antisimtrica o eje de rotacin
y ngulo de giro alrededor del eje.

6. Calibracin proyectiva
El captulo 6 afronta el problema de obtener una calibracin proyectiva de las cmaras a partir de las
correspondencias de puntos (y a veces, rectas) entre las imgenes. Est organizado de la siguiente manera:
primero se supone la existencia de slo 2 cmaras y se estudia la geometra de la escena, la geometra
epipolar, que nace de la restriccin epipolar y da lugar a relaciones bilineales entre las correspondencias
de puntos en las imgenes: las matrices fundamental y esencial. A continuacin se estudia la geometra
de tres cmaras, que da lugar a relaciones bilineales entre parejas de cmaras y relaciones trilineales, el
tensor trifocal, al considerar las tres cmaras a la vez. Seguimos aumentando el nmero de cmaras, esta
vez a cuatro y se presenta la geometra involucrada, aparecen relaciones bilineales, trilineales y cuadrilineales entre las correspondencias de puntos: surge el tensor cuadrifocal.
Si seguimos aumentando el nmero de cmaras la complejidad aumenta y se parametriza el problema
de forma directa mediante las matrices de proyeccin y las coordenadas de los puntos 3D de los que
provienen los puntos observados: no interesa obtener ningn tensor de mayor dimensin. Aparece la
tcnica del ajuste de haces como preponderante en estas situaciones.

6.1. Geometra de dos cmaras


Las matrices esencial y fundamental describen completamente las relaciones geomtricas entre puntos
correspondientes de un par de cmaras estreo. La nica diferencia entre las dos es que la primera se usa
con cmaras calibradas, mientras que la segunda se utiliza en caso de cmaras no calibradas. La matriz
esencial contiene cinco parmetros (tres que denen la rotacin y dos para la direccin de traslacin) y
tiene dos restricciones: (1) su determinante vale cero, y (2) sus dos valores singulares no nulos son iguales.
La matriz fundamental contiene siete parmetros: una matriz de 9 elementos, salvo proporcionalidad y
salvo la restriccin de rango dos: 9 1 1 = 7.
Dadas n 7 parejas de puntos correspondientes entre dos imgenes podemos estimar la matriz fundamental, F, utilizando varios algoritmos:

1.
2.
3.
4.
5.

Solucin exacta con n = 7 parejas de puntos.


Mtodo lineal con n 8 parejas de puntos e imposicin a posteriori de la condicin de singularidad.
Mtodo no lineal que minimiza el error algebraico dentro de la variedad de las matrices singulares.
Mtodo no lineal que minimiza el error de reproyeccin en las dos imgenes (Gold Standard).
Estimacin robusta basada en RANSAC.

La anterior lista establece una jerarqua de algoritmos: la estimacin de la matriz fundamental es mejor
a medida que descendemos en la lista. Una limitacin de la calibracin proyectiva es que la solucin es
nica a falta de una homografa del espacio, es decir, que el conocimiento de la matriz F no nos permite
obtener la estructura eucldea del espacio.
Dada una matriz fundamental es posible obtener una calibracin proyectiva de las dos cmaras involucradas. Tambin es posible y fcil el paso inverso: la obtencin de la matriz fundamental a partir de las
matrices de proyeccin de las dos cmaras.

6.2. Triangulacin
La triangulacin consiste en el clculo la posicin de un punto 3D del espacio dadas sus proyecciones en
dos imgenes y las matrices de proyeccin de ambas cmaras. Bajo la hiptesis de existencia de ruido,
los rayos retroproyectados (rectas con origen en el centro ptico de cada cmara y que pasan por los
correspondientes puntos en cada imagen) no se cortarn, en general, por lo que hay que estimar una
mejor aproximacin al punto 3D. Esto requiere denir una funcin de coste a minimizar.
En la memoria se tratan dos algoritmos de triangulacin: uno lineal y otro, estimador ptimo, cuya
solucin se obtiene sin una minimizacin iterativa. La reconstruccin es ms able cuanto mayor sea el
ngulo entre los rayos retroproyectados que pasan por las correspondientes proyecciones de un mismo
punto 3D.

6.3. Geometra de tres cmaras


El tensor trifocal T juega un papel anlogo en tres imgenes al que juega la matriz fundamental en dos.
Dadas tres proyecciones, encapsula todas las relaciones geomtricas (proyectivas) independientes de la
estructura de la escena. El tensor slo depende del movimiento entre las cmaras y de los parmetros
intrnsecos de las mismas y est denido unvocamente por las matrices de proyeccin. Para que el tensor
sea geomtricamente vlido (compatible con tres matrices de proyeccin) es necesario que satisfaga 8
restricciones algebraicas propias.
Dadas n 6 correspondencias de puntos entre tres imgenes existen mtodos numricos para estimar
el tensor trifocal asociado, sin necesidad de conocer el movimiento o la calibracin. En concreto, se han
desarrollado los siguientes algoritmos:
1.
2.
3.
4.
5.

Mtodo de clculo exacto del tensor Trifocal dadas las proyecciones de 6 puntos en 3 cmaras.
Mtodo lineal para n 7 puntos, que no es capaz de imponer las restricciones propias del tensor.
Mtodo iterativo que minimiza el error algebraico e impone las restricciones propias del tensor.
Mtodo iterativo que minimiza el error de reproyeccin entre las 3 imgenes (Gold Standard).
Estimacin robusta basada en RANSAC.

El segundo y tercer mtodo permiten estimar el tensor mediante relaciones de incidencia entre rectas o
entre puntos y rectas. Esta es una ventaja que tiene el tensor trifocal sobre la matriz fundamental. Una
vez estimado el tensor trifocal, es fcil calcular las matrices de proyeccin y as obtener la calibracin
proyectiva de tres cmaras.
Tambin se puede utilizar el tensor para transferir puntos y rectas: si conocemos el tensor y la proyeccin
de un punto o recta en dos imgenes, podemos calcular la proyeccin correspondiente del punto o recta
en la tercera imagen.

6.4. Geometra de cuatro cmaras


El tensor cuadrifocal Q juega un papel anlogo en cuatro imgenes al que juega la matriz fundamental en
dos y el tensor trifocal en tres. Para que el tensor sea geomtricamente vlido (compatible con cuatro
matrices de proyeccin) es necesario que satisfaga 51 restricciones algebraicas propias.
Dadas n 6 correspondencias de puntos entre cuatro imgenes, se han desarrollado los siguientes algoritmos para estimar el tensor cuadrifocal asociado:
1. Mtodo lineal, que no es capaz de imponer las restricciones propias del tensor.
2. Mtodo lineal de Heyden, que s impone las restricciones propias del tensor.
3. Dos mtodos no lineales que minimizan el error algebraico a la vez que satisfacen todas las restricciones del tensor.
No se ha implementado el algoritmo que minimiza el error reproyeccin para el caso particular de 4 cmaras, sino para el caso general de un nmero arbitrario de cmaras, que es la tcnica conocida como ajuste
de haces. Este algoritmo es el de mxima verosimilitud y proporciona los mejores resultados posibles.
Los mtodos 1 y 3 tambin permiten estimar del tensor mediante correspondencias de rectas o correspondencias mixtas de puntos y rectas. Hay ms combinaciones posibles que en el caso del tensor trifocal. Es
inmediato calcular las matrices de proyeccin a la vez que se estima el tensor cuadrifocal. As se dispone
de la calibracin proyectiva de cuatro cmaras.

6.5. Geometra multicmara


Esta seccin est dedicada a los algoritmos de calibracin proyectiva en caso de m > 2 cmaras. La organizacin es la siguiente: primero se introduce el ajuste de haces y se explica cmo inicializar este algoritmo
mediante una calibracin proyectiva previa. Despus se aplican los conocimientos del RANSAC para crear
un ajuste de haces proyectivo robusto. Por ltimo, se complica el modelo introduciendo la estimacin
de la distorsin radial en las cmaras. Con estos algoritmos pretendemos conseguir una reconstruccin o
calibracin proyectiva ptima, tanto incluyendo distorsin radial como sin incluirla.

i y los puntos 3D
La tcnica del ajuste de haces consiste en la estimacin de las matrices de proyeccin P
i
j tales que minimizan la distancia entre el punto reproyectado x
j y el punto observado xi , es
X
ij P
X
j
decir, el error de reproyeccin:
m X
n
X
j , xi )
i X
mn
d2 (P
j
j

Pi ,X

i=1 j=1

Las matrices de proyeccin no tienen necesariamente que ser las de una cmara proyectiva nita porque
todava se est considerando un mundo proyectivo, no eucldeo. Se llama ajuste de haces porque implica
ajustar los haces de rayos entre cada centro ptico de cada cmara y el conjunto de puntos 3D para
ij ms verosmiles a las observadas xij .
conseguir las proyecciones x
El ajuste de haces debera, en general, ser utilizado como el paso nal de cualquier algoritmo de reconstruccin. Este mtodo tiene la ventaja de ser tolerante si se pierden datos a la vez que proporciona una
autntica estimacin de mxima verosimilitud.
Para comenzar la optimizacin del ajuste de haces es necesario una fase previa que proporcione una calibracin proyectiva inicial. El objetivo es obtener una aproximacin inicial a las matrices de proyeccin de
tal forma que todas estn expresadas en una misma referencia proyectiva espacial. Una buena estrategia
consiste en estimar la matriz fundamental entre dos imgenes, obtener sus matrices de proyeccin, utilizar
un algoritmo de triangulacin para obtener los puntos 3D y estimar las matrices del resto de cmaras
mediante reseccin. Hay varias combinaciones: ya que existen tanto algoritmos lineales como ptimos
para cada paso.
Este paso de obtencin de la calibracin proyectiva inicial tiene que ser lo sucientemente bueno como
para que el ajuste de haces posterior tenga una optimizacin fcil. Como en todos los algoritmos de
optimizacin, es deseable que el punto de partida caiga dentro de la zona de atraccin del mnimo. Sin
7

embargo no debe ser demasiado costoso obtener el punto de partida, ya que la optimizacin posterior
puede ser ms rpida.
Una vez que se dispone de una calibracin proyectiva inicial, se aplica el ajuste de haces que optimiza
mediante un algoritmo de LevenbergMarquardt particionado y disperso adaptado al problema. Esto
permite una cmoda minimizacin en un espacio de parmetros de grandes dimensiones.
Si la calibracin proyectiva inicial no es buena, es muy costoso realizar una ajuste de haces con todos los
puntos y cmaras desde un principio. Por eso se ha ideado una estrategia robusta basada en RANSAC
para mejorar la ecacia.
Tambin se ha diseado un ajuste de haces proyectivo con distorsin radial, incluyendo los parmetros
de distorsin radial de las matrices de proyeccin en el espacio de parmetros. En este caso, la funcin de
coste a minimizar es el error de reproyeccin de los puntos proyectados y distorsionados respecto de los
puntos medidos en las imgenes. Este error puede ser menor que el error de reproyeccin de la proyeccin
lineal porque hay ms grados de libertad, sin embargo, en las buenas cmaras como las utilizadas para
las pruebas experimentales casi no se nota, ya que la distorsin radial es despreciable.
Respecto a las pruebas experimentales, slo me gustara destacar que se ha comprobado que las cotas
tericas de los algoritmos de mxima verosimilitud se cumplen, no slo cualitativamente, sino cuantitativamente. Esto indica que se ha alcanzado el objetivo de implementar algoritmos ptimos para la
calibracin proyectiva.

7. Autocalibracin
La autocalibracin consiste en la obtencin los parmetros de las cmaras dada una calibracin proyectiva
de las mismas. Al contrario que la calibracin, no se utiliza ningn patrn (ej. rejilla de calibracin en el
espacio) ni objeto cuyas dimensiones sean conocidas, slo la informacin contenida en las imgenes.
Para conseguir una reconstruccin eucldea es necesario identicar el plano del innito y la cnica
absoluta contenida en l, o de forma equivalente identicar las otras dos cudricas con la misma
informacin, Q o , mencionadas en el captulo 2. Todos los algoritmos de autocalibracin persiguen la
estimacin de estos objetos geomtricos especiales haciendo ciertas hiptesis sobre los parmetros de las
cmaras. Conociendo estos objetos, podemos hallar una transformacin H que convierta la reconstruccin
proyectiva actual en una reconstruccin ms restrictiva: afn o conforme, conservando las proyecciones:

{Pi , Xj } {Pi H, H1 Xj }
i

j.
xij Pi Xj = (Pi H)(H1 Xj ) = P X
Existen dos formas de determinar H: de una sola vez o en dos pasos (estraticadamente). En la calibracin
estraticada el paso costoso es el primero: determinar el plano del innito ; el segundo paso es lineal.
En este captulo se describen varios algoritmos de autocalibracin, que comentamos brevemente. El algoritmo de cmaras ortogonales consiste en suponer que las cmaras poseen pxeles cuadrados y punto
principal en el origen de coordenadas, lo que permite estimar la cudrica absoluta dual mediante un
algoritmo lineal. Las ecuaciones de Kruppa son restricciones en dos imgenes para las que slo hace
falta conocer la matriz fundamental F y consisten en dos ecuaciones cuadrticas independientes para los
elementos de la DIAC, . La restriccin unimodular es una ecuacin polinmica en las coordenadas del
plano del innito para cmaras con mismos parmetros intrnsecos. Hay varios algoritmos para estimar
la cudrica absoluta dual Q y la DIAC de cada cmara a la vez. Todos ellos se basa en la ecuacin de
proyeccin de la cudrica absoluta dual sobre el plano de la imagen: i Pi Q Pi> .
Tambin se consideran algoritmos de autocalibracin basados en la curva horptera que se dene entre
cada par de cmaras con idnticos parmetros intrnsecos. Esta curva es el lugar geomtrico de los puntos
del espacio que se ven igual desde las dos cmaras, por lo que slo depende del movimiento entre las cmaras y de los parmetros intrnsecos de las mismas. La horptera corta al plano del innito en tres
8

puntos con una conguracin caracterstica respecto de la cnica absoluta. Explotando esta disposicin,
es posible estimar el plano del innito y la cnica absoluta.
Por ltimo, se consideran los algoritmos de autocalibracin que estiman la cudrica absoluta de rectas (el
Calibration Pencil ) para cmaras con pxeles cuadrados. Esta cudrica ha sido recientemente introducida
en la literatura por el grupo en el que realic el proyecto n de carrera y es objeto de investigacin. En
la actualidad desarrollamos algoritmos no lineales de estimacin de la misma basados en su proyeccin
sobre el plano de la imagen, ya que nos publicaron el algoritmo lineal en el IEEE ICIP04.

8. Reconstruccin eucldea
El siguiente paso en el esquema de procesamiento consiste en optimizar la reconstruccin eucldea que
proporciona el algoritmo de autocalibracin (posiciones de los puntos 3D y los parmetros de las matrices
de proyeccin). El captulo 8 indica cmo obtener una reconstruccin eucldea inicial y cmo renarla
mediante un ajuste de haces eucldeo.
Supongamos que ya se ha realizado la autocalibracin, entonces la la situacin de partida est formada
por las matrices de proyeccin modicadas por la homografa que transforma lo proyectivo en lo eucldeo,
junto con los puntos 3D asociados. Una vez que se dispone unas matrices de cmaras proyectivas nitas, se
puede pasar a optimizar la calibracin eucldea. Para ello se ha diseado un ajuste de haces eucldeo para
cmaras con pxeles de forma conocida ( = 1 y = /2). El algoritmo emplea una parametrizacin de
las matrices de proyeccin que permite optimizar sin salirse del espacio de soluciones que son matrices de
proyeccin eucldeas. La funcin de coste a minimizar es el error de reproyeccin presentado al principio
de la memoria (captulo 2).
Una gran parte de este captulo est dedicado al clculo exacto de la matriz jacobiana que utiliza el
algoritmo de LevenbergMarquardt durante la optimizacin. Este clculo se fundamenta en la composicin
de funciones para aprovechar al mximo lo que ya se conoce sobre el ajuste de haces proyectivo.

8.1. Un ejemplo completo


Veamos en un ejemplo cmo los algoritmos descritos a lo largo de la memoria sirven para reconstruir
una escena 3D dadas unas imgenes de datos reales. Con una cmara digital domstica modelo Nikon
Coolpixr 3700 se tomaron 23 fotografas del Patio de los Reyes en el interior del Monasterio de San
Lorenzo de el Escorial. Todas las imgenes fueron adquiridas sin utilizar el zoom de la cmara, as que
se supone que los parmetros intrnsecos son constantes, salvo variaciones debidas al auto-enfoque. Se
desconoce la matriz de parmetros intrnsecos. La gura 1 muestra dos imgenes de la secuencia.
Se conoce un poco ms de la cmara: la distancia focal equivalente empleada durante la adquisicin de
las imgenes fue de 35 mm (la cmara permite variar la distancia focal entre 35 y 105 mm). Sin embargo,
no utilizaremos este conocimiento a durante la calibracin.
Se parte de unas correspondencias de puntos extrados de forma semi-automtica y el objetivo consiste en
obtener una reconstruccin eucldea de la escena y una calibracin eucldea de las cmaras minimizando
el error de reproyeccin, segn se present en el captulo 2. Seguiremos el esquema de procesamiento dado
en ese mismo captulo:
1. Obtener la calibracin proyectiva de las dos cmaras extremas (la N 1 y la N 23) y los puntos 3D
mediante el algoritmo Gold Standard para la matriz fundamental (captulo 6).
2. Estimar las matrices de proyeccin de las cmaras intermedias (nmeros 2 a 22) mediante el algoritmo Gold Standard para la reseccin (captulo 5).
3. Optimizar la calibracin proyectiva existente mediante el ajuste de haces proyectivo, minimizando
el error de reproyeccin (captulo 6).
4. Utilizar un algoritmo de autocalibracin para calcular el plano del innito y la matriz de parmetros
intrnsecos. En el ejemplo se ha utilizado el primero de los algoritmos de estimacin de la cudrica
absoluta dual y la DIAC (captulo 7).
9

Figura 1: Ejemplo con datos reales: imgenes 12 (izquierda) y 21 (derecha) de la secuencia del Patio de
los Reyes situado en el interior del Monasterio de San Lorenzo de el Escorial, con las correspondencias
de puntos superpuestas (cruces).
5. Actualizar la reconstruccin: construir la homografa del espacio que rectica los puntos 3D y las
matrices de proyeccin, es decir, los convierte en datos mtricos (captulo 7).
6. Optimizar la calibracin eucldea actual mediante el ajuste de haces eucldeo, imponiendo la restriccin de pxeles cuadrados a la vez que se minimiza el error de reproyeccin (captulo 8).
Tras el ajuste de haces eucldeo se puede representar la reconstruccin 3D de la escena (gura 2). Para
ello hay que unir los puntos 3D mediante una malla triangular y pegar las texturas de las imgenes sobre
los tringulos. Esta descripcin permite navegar por la escena 3D reconstruida si se utiliza un visualizador
de realidad virtual.

Figura 2: Reconstruccin 3D de la escena en el Patio de los Reyes, en VRML.


Tambin se mide objetivamente la calidad de la reconstruccin calculando el error de reproyeccin normalizado por el nmero de medidas, que indica el error medio por cada coordenada de los puntos observados
y se calcula segn la expresin:
m n
1 X X 2 i
2res =
d (P Xj , xij ).
2mn i=1 j=1
Los errores RMS de reproyeccin tras cada etapa signicativa del esquema de procesamiento son los
mostrados en el cuadro 1. Estos resultados indican que la desviacin tpica del ruido presente en los
puntos observados es inferior a 1 pxel. Aunque se ha impuesto la condicin de pxeles cuadrados en la
ltima etapa, el error sigue siendo muy pequeo, lo que justica la hiptesis de pxeles cuadrados.
10

Etapa
Calibracin proyectiva inicial
Tras el ajuste de haces proyectivo
Calibracin eucldea inicial (pxeles cuadrados)
Tras el ajuste de haces eucldeo

res (pxeles)
0,7399
0,5508
1,5878
0,5528

Cuadro 1: Ejemplo con datos reales: errores de reproyeccin en cada etapa del esquema de procesamiento.
Slo hacen falta 7 iteraciones del algoritmo de Levenberg-Marquardt en cada uno de los ajuste de haces
proyectivo y eucldeo para converger a la solucin deseada, lo que indica que el punto de partida es muy
bueno: cae dentro del pozo de atraccin del mnimo.
Considrense las dimensiones del problema: m = 23 cmaras y n = 162 puntos implican que la optimizacin de la calibracin proyectiva se hace dentro en un espacio de parmetros de dimensin 762, es decir,
se busca el mnimo en R762 y se consigue en slo 7 iteraciones del algoritmo LM! El ajuste de haces
eucldeo no se queda atrs, el espacio de parmetros es de dimensin 693.
La salida del ajuste de haces eucldeo son las matrices de proyeccin y los puntos 3D mtricos que minimizan el error de reproyeccin. De las matrices de proyeccin podemos extraer las matrices de parmetros
intrnsecos de cada imagen (en ellas se cumple que los pxeles son cuadrados, como impone el ajuste de
haces). Por ejemplo, las matrices de parmetros intrnsecos de las cmaras N 12 y N 21 son:

1157,9
0
21,4
1173,7
0
21,6
0
1157,9 13,3 ,
0
1173,7 29,9 .
K12 =
K21 =
0
0
1
0
0
1
En ambas matrices, el punto principal est expresado respecto del centro de la imagen, es decir, el pxel
de coordenadas [512, 384] respecto del sistema de referencia habitual de las imgenes (esquina superior
izquierda).
Adems, se ha aplicado el ajuste de haces proyectivo con distorsin radial y el error de reproyeccin
obtenido es res = 0,5367 pxeles, menor que el error de reproyeccin sin distorsin radial, como era
de esperar, pero la mejora no es espectacular. Los parmetros de distorsin de las cmaras 12 y 21
estn recogidos en el cuadro 2. Para cada cmara, se han utilizado cuatro coecientes en el polinomio de
distorsin radial y las dos coordenadas del centro de distorsin. Como se aprecia en el error de reproyeccin
y en los parmetros de la cmara, la distorsin radial casi no tiene importancia. Por ejemplo, para la
cmara N 12 hay que situar muy lejos del centro de la imagen el centro de distorsin para disminuir el
error de reproyeccin. En cambio, para la imagen N 21, el centro de distorsin radial no est tan alejado
del centro de la imagen y los coecientes son mayores que los de la otra cmara, aunque siguen siendo
pequeos.
Parmetro
xc
yc
1
2
3
4

Cmara N 12
706,17
110,60
8,246 106
1,167 108
1,564 1011
4,745 1015

Cmara N 21
145,90
130,95
2,934 106
5,700 108
1,043 1010
1,936 1013

Cuadro 2: Parmetros de distorsin radial de las dos cmaras consideradas.


No se debe olvidar que se est evaluando en el punto ms propenso a la distorsin, ya que si las imgenes
hubiesen sido adquiridas con cualquier otra distancia focal de las que admite la cmara, la distorsin
observada sera menor.

11

9. Resumen y trabajo futuro


A lo largo de la memoria se han descrito e implementado numerosos algoritmos de calibracin proyectiva,
clasicados es tres tipos: lineales, no lineales y robustos. Proporcionan diversidad de combinaciones para
obtener la calibracin proyectiva de las cmaras a partir de las coordenadas de los puntos y/o rectas en
las imgenes. Dicha calibracin proyectiva se puede optimizar mediante un ajuste de haces: una tcnica
muy beneciosa para etapas posteriores (autocalibracin, etc.). Tambin se ha diseado un ajuste de
haces eucldeo particularizado para cmaras con pxeles cuadrados.
Los algoritmos descritos permiten obtener la reconstruccin tridimensional de una escena esttica y los
parmetros de las cmaras slo mediante la informacin contenida en las imgenes que sta adquiere, segn se ha demostrado en el ejemplo del captulo 8. Slo resta automatizar la extraccin de caractersticas
de las imgenes y la representacin 3D, en lugar de utilizar herramientas semi-automticas, de tal forma
que sea fcil procesar secuencias de vdeo.
Una vez que se dispone de un esquema completo de autocalibracin y reconstruccin 3D se puede dar
una segunda pasada y renar ms algunos pasos. Por ejemplo, habra que evaluar si es posible atajar el
problema de la calibracin eucldea desde el principio: en lugar de establecer dos pasos separados, tratar
de realizar en un esquema conjunto la calibracin proyectiva y la autocalibracin eucldea.
Durante el proyecto, a medida que se iban implementando ms y ms algoritmos surgi la idea de dar
forma y sentido al conjunto, completarlo para as crear una librera de rutinas de calibracin que sirviera
como base slida para futuros proyectos en el campo de la visin por ordenador. Puedo decir, con gran
satisfaccin, que este objetivo se ha cumplido.

12

You might also like