Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
UNIVERSIDAD POLITECNICA DE MADRID
ESCUELA TECNICA SUPERIOR DE INGENIEROS DE
TELECOMUNICACION
PROYECTO FIN DE CARRERA
COMPOSICI ON DE IM AGENES DIGITALES
PABLO PEREZ GARCIA
NOVIEMBRE DE 2004
Resumen del proyecto
El presente Proyecto Fin de Carrera desarrolla un sistema de composicion de imagenes
digitales. La entrada del sistema es un conjunto de imagenes de la misma escena, tomadas
con diferentes exposiciones y direcciones de vista. La salida es un mosaico formado por
la composicion de las imagenes de entrada, alineadas en geometrıa y amplitud. Con ello
se consigue generar imagenes panoramicas de gran rango dinamico a partir de fotografıas
tomadas por una camara de bajas prestaciones.
En el Proyecto se disena un diagrama de bloques del sistema. Para cada uno de los
bloques funcionales se estudian distintas soluciones y se propone la que ofrece mejores
prestaciones. El subsistema de alineamiento geometrico es capaz de encontrar la transfor-
macion entre imagenes en condiciones mas generales que los existentes en el mercado.
Desde el punto de vista radiometrico, se complementan los desarrollos teoricos existentes y
se trabaja en condiciones menos restrictivas que las que aparecen en la literatura.
Tanto las pruebas de los distintos subsistemas como el desarrollo del prototipo final han
sido realizados en el entorno de programacion MATLAB r.
Palabras clave
Imagen, mosaico, registro, alineamiento geometrico, alineamiento radiometrico, puntos
de control, momentos de Zernike, analisis comparametrico, correspondencia de intensida-
des, compresion de rango dinamico, retinex.
Indice
1. Introduccion 1
1.1. Planteamiento del problema. . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Formalizacion del problema . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1. Modelo geometrico. Camara de objetivo puntual. . . . . . . . . . 3
1.2.2. Modelos geometricos mas complejos . . . . . . . . . . . . . . . . 5
1.2.3. Modelo radiometrico . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.4. Modelo cromatico . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.5. Objetivos especıficos del proyecto. . . . . . . . . . . . . . . . . . 8
1.3. Antecedentes y trabajos previos. . . . . . . . . . . . . . . . . . . . . . . 9
1.4. Estructura de la memoria. . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2. Descripcion del Sistema de Composicion de Imagenes Digitales (SCID) 11
2.1. Especificaciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1. Algunas consideraciones. . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Diagrama de bloques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.1. Imagenes de entrada. . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2. LUMA - Luminancia . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.3. CGEO - Calculo de la transformacion geometrica. . . . . . . . . . 15
2.2.4. CRAD - Calculo de la transformacion radiometrica . . . . . . . . . 15
2.2.5. MASK - Mascara de ponderacion . . . . . . . . . . . . . . . . . . 16
2.2.6. ARAD - Alineamiento radiometrico . . . . . . . . . . . . . . . . . 17
I
II INDICE
2.2.7. AGEO - Alineamiento geometrico . . . . . . . . . . . . . . . . . . 17
2.2.8. COMP - Composicion . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.9. CPRD - Compresion de rango dinamico . . . . . . . . . . . . . . 18
2.2.10.AFT - Aplicacion de la funcion de transferencia. . . . . . . . . . 18
2.2.11. Imagen final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3. Alineamiento de la geometrıa 19
3.1. Transformaciones geometricas. Homografıa . . . . . . . . . . . . . . . . . 19
3.1.1. Correspondencia geometrica entre imagenes. . . . . . . . . . . . . 21
3.1.2. Calculo de la transformacion a partir de 4 pares de puntos. . . . . 22
3.1.3. Calculo de la transformacion a partir de multiples pares de puntos. 23
3.1.4. Estimacion robusta de la transformacion. RANSAC. . . . . . . . . 24
3.2. Obtencion de puntos singulares en una imagen. . . . . . . . . . . . . . . . 25
3.2.1. Caracterizacion y busqueda de esquinas. . . . . . . . . . . . . . . 25
3.2.2. El detector de esquinas SUSAN de Smith y Brady. . . . . . . . . 26
3.2.3. Comparacion de los algoritmos de deteccion de esquinas. . . . . . 27
3.3. Correspondencia entre puntos singulares de dos imagenes. . . . . . . . . . 28
3.3.1. El problema del seguimiento de puntos. . . . . . . . . . . . . . . 29
3.3.2. Soluciones clasicas. . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.3. El algoritmo de Kanade-Lucas-Tomasi. . . . . . . . . . . . . . . 32
3.3.4. Momentos de Zernike. . . . . . . . . . . . . . . . . . . . . . . . 33
3.4. Implementacion: bloque de calculo de la transformacion geometrica . . . . 36
3.4.1. SUSAN: modulos de deteccion de esquinas. . . . . . . . . . . . . . 38
3.4.2. ZERNIKE: correspondencia entre puntos de control. . . . . . . . . 40
3.4.3. KLT: modulo de seguimiento de puntos. . . . . . . . . . . . . . . 42
3.4.4. LM y RANSAC: modulos de calculo de la transformacion . . . . . . . 45
4. Reconstruccion de la imagen radiometrica 49
4.1. Correspondencia radiometrica entre imagenes. . . . . . . . . . . . . . . . 50
4.1.1. La Funcion de Correspondencia de Intensidades. . . . . . . . . . . 51
4.1.2. Calculo de la FCI a partir del comparagrama. . . . . . . . . . . . 52
4.1.3. Alineamiento en amplitud de dos imagenes . . . . . . . . . . . . . 54
4.2. Modelos de funcion de transferencia radiometrica . . . . . . . . . . . . . . 54
4.2.1. Modelo de Mann. . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2.2. Modelos de Grossberg-Nayar-Mitsunaga (GNM). . . . . . . . . . 56
4.2.3. Rango dinamico, sensibilidad y principio de Wyckoff. . . . . . . . 57
INDICE III
4.3. Estimacion de la respuesta en amplitud de una camara. . . . . . . . . . . . 58
4.3.1. Lımites a la obtencion de la respuesta en amplitud. . . . . . . . . 58
4.3.2. Estimacion de la exposicion . . . . . . . . . . . . . . . . . . . . . 60
4.3.3. Obtencion de f conk conocido . . . . . . . . . . . . . . . . . . . 61
4.3.4. Obtencion de f conk desconocido. . . . . . . . . . . . . . . . . . 62
4.3.5. Lımites a la obtencion de la imagen radiometrica . . . . . . . . . . 63
4.3.6. Comparacion de los distintos modelos de respuesta. . . . . . . . . 64
4.4. Implementacion: bloque de calculo de la transformacion radiometrica . . . 66
4.4.1. EEXP y MEXP: Determinacion del par de imagenes con mayor re-
lacion de exposicion . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.4.2. CFNT: Calculo de la funcion de transferencia. . . . . . . . . . . . 68
4.4.3. KREL y KABS: Calculo de la exposicion . . . . . . . . . . . . . . . 69
4.4.4. AHIST: Calculo y aplicacion de la FCI. . . . . . . . . . . . . . . . 69
4.4.5. Composicion del mosaico . . . . . . . . . . . . . . . . . . . . . . 70
4.5. Compresion de rango dinamico . . . . . . . . . . . . . . . . . . . . . . . . 71
4.5.1. Compresion Retinex. Implementacion del moduloCPRD. . . . . . . 72
4.6. Aplicacion en imagenes en color. . . . . . . . . . . . . . . . . . . . . . . 75
5. Pruebas, resultados y conclusiones 79
5.1. Pruebas de funcionamiento del SCID. . . . . . . . . . . . . . . . . . . . . 79
5.1.1. Panoramica de Madrid. . . . . . . . . . . . . . . . . . . . . . . . 81
5.1.2. Otras imagenes. . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.2. Mejoras propuestas y trabajo futuro. . . . . . . . . . . . . . . . . . . . . 91
5.2.1. Compensacion de la distorsion geometrica. . . . . . . . . . . . . . 91
5.2.2. Gestion de la memoria. . . . . . . . . . . . . . . . . . . . . . . . 92
5.2.3. Estimacion robusta, eficiente y sin supervision . . . . . . . . . . . 92
5.2.4. El problema del punto de vista. . . . . . . . . . . . . . . . . . . . 93
5.2.5. Mejora de los modelos radiometricos . . . . . . . . . . . . . . . . 95
5.3. Conclusiones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
A. Software de Composicion de Imagenes Digitales 97
Referencias 105
Pliego de condiciones 109
Presupuesto 113
IV INDICE
Indice de figuras
1.1. Mosaico de 5 fotografıas . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Modelo de camara de objetivo puntual. . . . . . . . . . . . . . . . . . . . 4
1.3. Recuperacion del plano objeto. . . . . . . . . . . . . . . . . . . . . . . . 5
2.1. Diagrama de bloques.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2. Mascara de ponderacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.1. Transformaciones geometricas . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2. Polinomios radiales de Zernike. . . . . . . . . . . . . . . . . . . . . . . . 34
3.3. Diagrama de bloques deCGEO . . . . . . . . . . . . . . . . . . . . . . . . 37
3.4. Rendimiento del moduloZERNIKE . . . . . . . . . . . . . . . . . . . . . . 41
4.1. Problema radiometrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.2. Comparagrama de dos imagenes alineadas. . . . . . . . . . . . . . . . . . 53
4.3. Principio de Wyckoff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.4. Ambiguedad auto-similar. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.5. Curvas de respuesta con distinto valor deγ . . . . . . . . . . . . . . . . . . 63
4.6. Comparacion de distintos modelos de respuesta. . . . . . . . . . . . . . . 65
4.7. Diagrama de bloques deCRAD . . . . . . . . . . . . . . . . . . . . . . . . 67
4.8. Modulo de compresion Retinex del rango dinamico. . . . . . . . . . . . . . 73
4.9. Camino recorrido en el algoritmo Retinex.. . . . . . . . . . . . . . . . . . 73
V
VI INDICE DE FIGURAS
5.1. Imagenes de entrada de la Panoramica de Madrid . . . . . . . . . . . . . . 84
5.2. Mosaico de la Panoramica de Madrid . . . . . . . . . . . . . . . . . . . . 85
5.3. Imagen radiometrica de la Panoramica de Madrid. . . . . . . . . . . . . . 86
5.4. Mascara de compresion Retinex. . . . . . . . . . . . . . . . . . . . . . . . 86
5.5. Mosaico en el que se ha comprimido en exceso el rango dinamico. . . . . . 87
5.6. Error local en la Panoramica de Madrid . . . . . . . . . . . . . . . . . . . 87
5.7. Panoramica de los Alpes: imagenes de entrada y mosaico.. . . . . . . . . . 88
5.8. Mosaico de una habitacion. . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.9. Panoramica desde el Rhin.. . . . . . . . . . . . . . . . . . . . . . . . . . 90
5.10. Cambio de punto de vista.. . . . . . . . . . . . . . . . . . . . . . . . . . 94
Glosario
Cantidad de luz Termino generico empleado para referirse a la energıa de la luz que incide
sobre un sensor, ponderado por la respuesta espectral del mismo.
Certidumbre Derivada de la funcion de transferencia radiometrica de un elemento foto-
sensible con respecto al logaritmo de la cantidad de luz de entrada. Es una medida de
la sensibilidad.
Comparagrama (Traduccion decomparagram[20]) Histograma conjunto de dos image-
nes.
Conjunto de Grossberg Conjunto de funciones de respuesta cuyas inversas estan relacio-
nadas por una constante exponencial: para cada par de funciones inversas(gi ,g j) del
mismo conjunto de Grossberg existe una constanteγ tal quegγi = g j .
Direccion de vista Direccion del ejeoptico de una fotografıa.
Ecuacion comparametrica Ecuacion en la que se compara una misma funcion medida
con dos escalas distintas, i.e.,φ(x) y φ(kx).
Eje optico Eje que pasa por el centrooptico de una camara y es perpendicular al plano del
sensor.
EMoR (Empirical Model of Response[8]) Modelo de respuesta radiometrico basado en el
analisis de componentes principales (PCA) de un conjunto de datos empıricos.
Fotocantidad Cantidad de luz.
VII
VIII INDICE DE FIGURAS
Funcion de Correspondencia de Intensidades (FCI)(Traduccion de Intensity Mapping
Function [7]) Funcion que relaciona los valores de intensidad de dos imagenes que
difierenunicamente en su exposicion. Dependeunicamente de la funcion de transfe-
rencia de la camara y de la constante de exposicion entre ambas imagenes.
Funcion de transferencia radiometrica Funcion que relaciona el valor de intensidad (va-
lor de pıxel) a la salida de la camara con la cantidad de luz a la entrada.
Grafo comparametrico Aproximacion numerica a la FCI obtenida a partir del compara-
grama de dos imagenes.
Homografıa Transformacion geometrica proyectiva, con ocho grados de libertad.
KLT Kanade-Lucas-Tomasi. Algoritmo de seguimiento de puntos basado en [19,37].
log Se utiliza la notacion ((log)) para representar el logaritmo neperiano.
Mosaico Composicion de varias fotografıas en una misma imagen.
Pinhole camera Modelo de camara fotografica en el que el objetivo es un agujero puntual
(centrooptico), de modo que todos los rayos de luz que entran en la camara pasan por
el.
Puntos de control Puntos homologos, determinados de antemano en las imagenes de en-
trada y de referencia, a partir de los cuales se calcula la transformacion geometrica
que las relaciona.
Puntos homologos Puntos de dos imagenes que representan el mismo punto de una escena
tridimensional.
Rango dinamico Rango de valores de cantidad de luz que se pueden representar, con un
valor apreciable de certidumbre, en una misma fotografıa tomada por una camara.
RANSAC (RANdom SAmple Consensus) Algoritmo robusto para ajustar pares de puntos a
un modelo.
Registro (Registration) Alineamiento geometrico entre dos imagenes. Algunos autores uti-
lizan el termino((registro radiometrico)) para referirse al alineamiento en amplitud.
Retinex Tecnica de compresion global del rango dinamico que mantiene el contraste local.
Tambien se usa para realzar contrastes locales.
INDICE DE FIGURAS IX
SCID Sistema de Composicion de Imagenes Digitales. Nombre que se le da al sistema
desarrollado en este Proyecto Fin de Carrera.
Sinc Funcionsinc(x) = sen(πx)/(πx).
SUSAN (Smallest Univalue Segment Assimilating Nucleus[33]) Algoritmo para detectar
esquinas en una imagen.
Toolbox Literalmente,caja de herramientas. En MATLAB r hace referencia a un paquete
software que incluye diversas funciones relacionadas con un campo especıfico (como
puede ser procesado de imagen, optimizacion, comunicaciones...).
Transformacion rıgida Transformacion geometrica plana que no modifica las rectas ni los
angulos entre ellas. Consta de cuatro grados de libertad: desplazamiento en ambos
ejes, escalado y rotacion rıgida.
X INDICE DE FIGURAS
CAPITULO 1
Introduccion
El objetivo de este Proyecto Fin de Carrera es el desarrollo de un sistema de compo-
sicion de imagenes digitales. En pocas palabras, se trata de un programa capaz de tomar
varias imagenes de la misma escena, con distintas direcciones de vista, y componerlas for-
mando unaunica imagen mayor. En paralelo al desarrollo del sistema en sı, se analizaran
cada uno de sus componentes, tratando de caracterizar el problema que resuelven y las
restricciones que se imponen a ese problema.
En este capıtulo se aborda el problema desde un punto de vista global, con el fin de
definir con claridad los requisitos que debe cumplir el sistema a desarrollar.
1.1. Planteamiento del problema
La transmision de imagenes se ha convertido en una de lasareas con mayor desarrollo
dentro delambito de las comunicaciones moviles. Ası ha existido una primera etapa de
manipulacion de imagenes digitales en las que la actividad principal era la descarga de las
mismas desde bases de datos mantenidas por los operadores. Posteriormente se ha pasado al
intercambio de imagenes capturadas por los usuarios. Ambas actividades se corresponden
con el uso personal de los terminales moviles.
Sin embargo, existe otra actividad emergente relacionada con las imagenes que es el uso
profesional de las mismas. Ası, se puede considerar la adquisicion de informacion visual
1
2 Introduccion
tanto para su analisis a distancia como para su archivo. La calidad actual de las camaras
asociadas a los terminales moviles es bastante limitada tanto en resolucion espacial como
en resolucion en amplitud, por lo que su uso se ve restringido a aplicaciones que no exijan
demasiada calidad. Ahora bien, es posible adquirir imagenes a distancias mas proximas a
los objetos a evaluar o archivar, con lo que se tendrıa mayor detalle a costa de perder la
posibilidad de capturar la informacion deseada en unaunica imagen.
Por lo tanto, aparece el problema de combinar varias imagenes obtenidas con la misma
camara. Un sistema automatico de composicion de imagenes digitales permitirıa utilizar una
camara de baja calidad (y coste reducido) para obtener imagenes de alta resolucion y alto
rango dinamico, tanto en el dominio espacial como en el de la amplitud. Bastarıa con tomar
varias fotografıas de distintas partes de la escena, que serıan compuestas en una imagen
unica por el sistema.
Este problema ha sido abordado, al menos de forma parcial, por distintos fabricantes.
Sin embargo, los programas que obtienen resultados de mayor calidad suelen depender de
la camara utilizada, y requerir informacion adicional o fotografıas tomadas de una forma
determinada. Lo que se pretende en ese proyecto es encontrar una solucion general al pro-
blema, minimizando la dependencia de la camara o las restricciones que se imponen a las
imagenes.
Desde el punto de vista de la investigacion en procesado de imagen y vision artificial,
el objetivo esregistrar imagenes para obtener unmosaico. Es un problema clasico, consi-
derado por diversos autores (ver, p.e., [10,3]), al menos en su aspecto geometrico.
Este Proyecto Fin de Carrera desarrolla un sistema que, a partir de distintas imagenes
de diversas partes de una misma escena, compone unaunica imagen (mosaico) resultante
de la combinacion de las imagenes de entrada (figura1.1).
El sistema desarrollado en este proyecto es capaz de trabajar con imagenes obtenidas
por cualquier camara digital, con cualesquiera orientaciones relativas entre ellas, con cua-
lesquiera relaciones de exposicion entre las tomas... en resumen, en ausencia de cualquier
tipo de calibracion previa.
1.2. Formalizacion del problema
El campo del alineamiento y composicion de imagenes digitales es bastante amplio.
Dos sistemas aparentemente parecidos en cuanto a resultados pueden partir de requisitos
muy diferentes y, por tanto, requerir tecnicas completamente distintas. Para poder describir
adecuadamente el funcionamiento de un programa de procesado de imagenes es necesaria
Formalizacion del problema 3
Figura 1.1. Mosaico de 5 fotografıas tomadas en los Alpes franceses. Se pueden ver los lımi-
tes de las imagenes originales. En algunos pares de imagenes adyacentes, la superposicion es
inferior al 25 % de la superficie.
una formalizacion del problema que se va a resolver.
El objetivo de este proyecto es lareconstruccion geometrica y radiometrica del plano
objeto. Para entender el significado preciso de esta definicion, es preciso proporcionar un
modelo de funcionamiento de una camara generica.
1.2.1. Modelo geometrico. Camara de objetivo puntual
El modelo mas sencillo de una camara es el denominadopinhole cameraen la termi-
nologıa anglosajona. Esta basado el principio de lacamera obscura: se perfora un agujero
muy pequeno (idealmente puntual) en una de las paredes de la camara, que hace las veces
de objetivo de la camara y es elunico punto de entrada de luz (figura1.2). La escena 3D
E se proyecta en el plano del sensorS mediante rayos que pasan por el punto del objetivo,
denominadocentroopticoO. El plano del sensor, por tanto, tiene una representacion bidi-
mensional de la escena tridimensionalE. En el se colocarıa la pelıcula fotografica o, en el
caso de una camara digital, la matriz CCD fotosensible.
Matematicamente, en la proyeccion de la escenaE sobre el planoS, se pierde una di-
mension: la profundidad. Considerando el sistema de coordenadas representado en la figura
1.2, un punto situado en(x,y,z) se proyecta sobre el punto(−x f/z,−y f/z,− f ) del plano
S. Para eliminar el signo negativo en la ecuacion de la proyeccion, se define un plano virtual
V, simetrico deS con respecto aO. A dicho planoV se le denomina habitualmenteplano
objeto. El mismo punto generico(x,y,z) se proyecta enV sobre el punto(x f/z,y f/z, f ).
Para definir matematicamente la camara de objetivo puntual se debe considerar, ademas
4 Introduccion
Figura 1.2. Modelo de camara de objetivo puntual. Se representan la escena tridimensional
E, el plano imagen (o sensor)S, el plano objeto (o virtual)V y el centroopticoO. El ejez
coincide con elejeoptico.
de la posicion del centrooptico y la distancia focalf , la direccion en la que se situan los
planosS y V. La recta perpendicular a dichos planos y que pasa porO se denominaeje
optico. Al rotar o inclinar la camara, manteniendo fijoO pero variando la orientacion del
ejeoptico, la escenaE se proyectara sobre un nuevo planoV, distinto del anterior.
Ademas de las consideraciones puramente proyectivas, aparecen dos elementos que
condicionan el proceso de adquisicion de imagenes: el marco y el muestreo. De las con-
secuencias del segundo, menos importantes desde el planteamiento geometrico, se trata en
3.1. La existencia del marco es, por el contrario, importante, porque es la limitacion que el
sistema pretende reducir.
El marco representa el hecho de que el elemento fotosensible (pelıcula o sensor) tiene
una extension fısica limitada. Por tanto, lo que la camara representa con cada fotografıa
esunicamente una region del planoS o, lo que es equivalente, del planoV. El objetivo del
sistema es aumentar elarea del plano objeto que se puede representar, sin perder resolucion.
Por tanto, es preciso definir unplano objeto de referenciaV0 que es el que se va a reconstruir
(figura1.3).
Para lograr este objetivo, se toman varias imagenes de la escenaE con el mismo centro
opticoO. En cada una de ellas, al rotar el ejeoptico de la camara, cambia el plano objeto
Vn. En estas condiciones,proyectar la escena tridimensionalE sobre el conjunto de planos
Vn equivale a proyectar la escena planaV0 sobre dicho conjunto de planos.
Cada planoVn representara una parte distinta de la escena planaV0. Ası pues, proyec-
tando cadaVn sobreV0 se obtiene una imagen de mayor superficie sobre dicho plano.
El sistema debe ser capaz de recuperar la imagen plana que aparece en el planoV0 (o,
Formalizacion del problema 5
Figura 1.3. Recuperacion del plano objeto. Los distintos planosVn se proyectan sobreV0
para obtener la imagen final. Notese que el marco deesta (A′B′) es mucho mayor que el marco
de una de las imagenes originales (AB).
en adelante, simplementeV), correspondiente a una proyeccion de la escenaE con un eje
optico determinado, a partir del conjunto de proyeccionesVn, con el mismo centrooptico
pero distintas direcciones del eje.
1.2.2. Modelos geometricos mas complejos
En general, no se debe asumir que una camara se comporta siguiendo el modelo idea-
lizado del objetivo puntual. Un modelo mas completo de la camara incluirıa un juego de
lentes mucho mas difıcil de modelar matematicamente.
En todo caso, suele ser posible asumir que, para un rango de distancias al centrooptico
(la profundidad de campo), los objetos de la escenaE se proyectan en el planoV. A partir
de ahı, el bloqueoptico de la camara se encarga de trasladar esa proyeccion al plano imagen
S.
En el proceso de proyeccion, es posible que se generen aberraciones de distinto tipo.
Una de las mas importantes es la distorsion geometrica radial, que suele ser significativa en
imagenes tomadas a corta distancia, especialmente si la lente es pequena. El sistema asume,
en todo caso, que la distorsion introducida es pequena y puede despreciarse.
Ası pues, se mantiene el modelo de camara de objetivo puntual, y se conserva como
finalidad del sistema la reconstruccion del plano objetoV.
6 Introduccion
1.2.3. Modelo radiometrico
Se empleara el adjetivoradiometricoreferido al comportamiento de la camara en cuanto
a la amplitud. La funcion de transferencia radiometrica es, por tanto, la que relaciona la
cantidad de luz que llega a la camara con la salida (valor de pıxel) queesta proporciona.
En la literatura aparecen tambien los terminosfotometrico (photometric)o cuantimetrico
(quantimetric), aplicados con distintos matices. En este trabajo no se hara distincion entre
ellos, y se hablara genericamente del modelo radiometrico de la camara para lo que tenga
que ver con su respuesta en amplitud.
El siguiente apartado tratara de la obtencion de imagenes en color que, basicamente,
consiste en la aplicacion de tres sensores independientes con distintas respuestas espectra-
les. Por el momento se considera uno cualquiera de ellos, con el fin de ver el proceso de
obtencion de una imagen de intensidad (en escala de grises).
Se define la radianciaLE de la escenaE como la densidad de potencia de luz por unidad
de superficie y de longitud de onda emitida por cada punto de la escena en cada direccion.
Se denomina irradiancia en el planoS, ES a la densidad de potencia de luz que alcanza cada
punto de dicho plano.
Se define lacantidad de luz(o fotocantidad) que llega a cada fotocelula del sensor
como:
qS =∫
t
∫
λES(λ )SS(λ )dλdt =
∫
t
∫
λaPLE(λ )SS(λ )dλdt (1.1)
Dondea es la superficie de la apertura del objetivo,SS(λ ) es la sensibilidad del sensor yP
es un factor que depende de la geometrıa del problema, e incluye el vineteado, la superficie
del sensor... Se puede modelar como
P = AScos4θ
f 2 (1−αr) (1.2)
dondeAS es la superficie del sensor,f es la distancia focal,θ es elangulo formado por el eje
optico y el rayo principal que llega al punto en el que se situa el sensor,α es un coeficiente
(> 0) que modela el vineteado yr es la distancia del punto considerado alpunto principal
(punto de corte del ejeoptico con el planoS).
Si el tiempo de integracion del sensor es pequeno:
qS =∫
tdt a
∫
λPEV(λ )SS(λ )dλ (1.3)
Y, simplificando:
qS =∫
tdt aqV = teaqV = ε qV (1.4)
Dondeε es la exposicion de la imagen, producto del tiempo de exposicion te y la aperturaa.
Formalizacion del problema 7
Este modelo se basa en la definicion de fotocantidad de [22] y en el modelo de respuesta
del bloqueoptico que se puede encontrar, por ejemplo, en [14].
El sistema debe recuperarqV, o bienq0 = c0qV, dondec0 es una constante desconocida,
que no se puede determinar al carecer de una referencia de iluminacion absoluta.
Se denomina funcion de transferencia radiometrica de una camara a la funcionI = f (qS)
o, en adelante,f (q) para simplificar. Se trata de la funcion que relaciona la cantidad de
luz que llega al sensorq con el valor de pıxel que corresponde a la salidaI (denominado
intensidad).
La funcion de transferenciaf modela el proceso de adquisicion de imagen de la camara,
desde que la luz llega al sensor hasta que se traduce en un valor discreto a la salida (tıpi-
camente representado con 8 bits en una camara convencional). Despreciando el ruido, se
considera el siguiente proceso simplificado:
1. Integracion de luz en el elemento fotosensible (lineal).
2. Control Automatico de Ganancia (CAG): se amplifica el valor de todos los pıxeles
por un mismo valor de gananciaG.
3. Compresion no lineal del margen dinamico: tıpicamente, se comprimen o se recortan
los valores de mas intensidad (blancos).
4. Digitalizacion. El valor de salida se cuantifica.
Incluso sin tener en cuenta la cuantificacion, la funcion de transferenciaf es, en princi-
pio, no lineal. Ademas, tiene un terminoG que, al igual que el tiempo de integracion y la
apertura, pueden variar de una imagen a otra.
La gananciaG se extrae de la funcion de transferencia de la camara, y se anade a la
exposicion. Ası pues, queda:
I = f (ε qV) = f (ε/c0q0) (1.5)
En una camara digital tıpica, la exposicion se ajusta de forma automatica a traves de
la variacion de sus tres factores principales: apertura, tiempo de exposicion y CAG. La
electronica de la camara tratara, en todo momento, de maximizar el rango dinamico de la
imagen que representa. Para ello, selecciona adecuadamente el valor de la exposicion en
funcion de la luminosidad media de la imagen que recibe.
Por tanto, en fotografıas de una escena con diferentes direcciones de vista es posible
que la luminosidad media de cada toma varıe, y lo haga tambien la exposicion de la imagen.
8 Introduccion
Se fija una referencia de iluminacion arbitraria (ya que no hay referencias absolutas),
q0, a la que se asigna una exposicion igual a la unidad. Cada una de las imagenes tendra,
para cada punto, la formaI = f (kq0), dondek es la constante de exposicion de la imagen
(k = ε/c0).
El objetivo del sistema es recuperar la imagen de cantidades de luzq0 en el planoV.
Para ello es necesario estimar tanto la funcion de transferencia de la camara f como las
constantes de exposicionk de cada imagen.
Para lo que resta de esta memoria, se prescindira del subındice y se hara referencia
simplemente aq, de modo que la funcion de transferencia tomara la formaI = f (kq), dada
la constante de exposicion de cada imagen.
1.2.4. Modelo cromatico
El sistema que se desarrolla debe trabajar con imagenes en color. Una imagen en color
RGB no es mas que la superposicion de tres imagenes en escala de intensidades, obtenidas
por tres sensores con distintas respuestas espectrales. Tras obtener las tres imagenes de
forma independiente, se multiplica cada una de ellas por una ganancia distinta, antes de
pasar por el compresor no lineal y la digitalizacion.
La ganancia que se debe aplicar a cada uno de los canales (R,G,B) se obtiene del balance
de blancos. Cada vez queeste tiene lugar, se fija un pıxel (o grupo de pıxeles), normalmente
el de mayor intensidad, a blanco (es decir, al maximo valor de intensidad del sistema para
cada uno de los canales). Esto permite, si se conserva la referencia del negro (intensidad
nula), ajustar el valor de ganancia en cada canal.
Una modificacion del balance de blancos en una imagen implica, necesariamente, una
modificacion de la crominancia, es decir, de las tonalidades de color que aparecen en la
misma.Si se aplica a cada canal una correccion de intensidad diferente se modifica el
contenido cromatico de la imagen.
El sistema carece de la informacion necesaria para saber si la crominancia de las image-
nes con las que trabaja es o no correcta. Por tanto, se asume que sı lo es y se aplica el mismo
proceso radiometrico a cada uno de los tres canales.
1.2.5. Objetivos especıficos del proyecto
Resumiendo lo presentado en apartados anteriores, el problema que se pretende solu-
cionar con el proyecto es el siguiente:
Sea una imagen planaqV que se proyecta sobre planosSi con centrooptico comunO.
Cada una de estas proyecciones planas se detecta por una matriz de elementos fotosensibles
Antecedentes y trabajos previos 9
con funcion de transferenciaIi = f (kiq). El objetivo del sistema es recuperar la imagen
originalqV a partir de lasIi , y representar posteriormente la imagen final obtenida.
Esta caracterizacion matematica es capaz de resolver con exactitud dos problemas dis-
tintos. Por un lado, la proyeccion de una escena tridimensionalE sobre el planoV, siempre
y cuando las fotografıas hayan sido tomadas desde el mismo punto (manteniendo fijo el
centrooptico). Por otro, tambien es posible resolver la composicion de fotografıas de un
objeto plano (en el planoV), aunque la posicion del centrooptico cambie.
Si se mueve el centrooptico de la camara para fotografiar escenas tridimensionales,
el modelo geometrico empleado (ver3.1) no permite resolver el problema con exactitud.
Aparecen oclusiones (objetos que se ven desde un punto de vista y no desde el otro) y se
vuelve matematicamente imposible la solucion del problema geometrico. Por tanto, para
poder trabajar con reconstruccion bidimensional (como en este proyecto) es imprescindible
que el centrooptico de la camara se mueva poco en comparacion con la distancia al objeto
que se fotografıa, para que no aparezcan oclusiones.
1.3. Antecedentes y trabajos previos
El alineamiento geometrico (o registro) de dos imagenes entre sı es un problema clasico
del procesado digital de imagenes (ver p.e. [27]). Las tecnicas de registro se utilizan en
distintas aplicaciones, tan diversas como la estabilizacion de camaras de vıdeo, la inter-
pretacion de imagenes medicas o la creacion de imagenes panoramicas, por poner algun
ejemplo. Es estaultima aplicacion la que resulta interesante para el proyecto.
La composicion de imagenes para formar un mosaico tambien ha sido ampliamente
estudiada. De hecho, varias empresas de fotografıa incluyen aplicaciones de mosaicos con
sus camaras digitales. El problema, no obstante, mantiene aun su interes, pues las tecnicas
que necesita dependen fuertemente de las condiciones de partida. Los trabajos de Richard
Szeliski y colaboradores [35,36] comprenden un estudio amplio y formalizado de algunas
de las variantes mas clasicas. En [4] hay un ejemplo de generacion automatica de mosaico
a partir de secuencias de vıdeo.
Al hablar de alineamiento en el dominio de la amplitud es necesario citar los trabajos
de Steve Mann, que son la base de todo el procesado radiometrico de este proyecto. [22] es
un buen resumen de una aplicacion de este tipo. [20,21] comprenden el soporte matematico
que se emplea en este tipo de tecnicas. Grossberg y Nayar [7,8] aportan una aproximacion
formal y sistematica al problema.
10 Introduccion
1.4. Estructura de la memoria
En este primer capıtulo se ha descrito y formalizado el problema que debe resolver el
sistema disenado, definiendo el objetivo del mismo como la reconstruccion de la imagen
radiometrica en el plano objeto. El problema se subdivide en dos claramente diferenciados:
alineamiento de la geometrıa (recuperacion de la transformacion proyectiva) y alineamiento
radiometrico (recuperacion de la funcion de transferencia).
En el capıtulo 2 se describe el Sistema de Composicion de Imagenes Digitales (SCID):
el sistema que se ha desarrollado para cubrir los objetivos del proyecto. Se presentan las
especificaciones tecnicas y los requisitos de las imagenes con las que trabaja, ası como su
diagrama de bloques.
El capıtulo 3 estudia el problema del alineamiento de la geometrıa. En primer lugar, se
caracteriza el problema desde el punto de vista teorico y se proponen algoritmos que lo re-
suelven. En segundo lugar, se disenan los bloques del SCID que, utilizando esos algoritmos,
implementan el calculo y aplicacion de la transformacion geometrica.
El capıtulo 4 estudia el problema radiometrico. Tiene una estructura similar al ante-
rior: primero se caracteriza el problema de la recuperacion de la funcion de transferencia y
luego se disena el subsistema que implementa la solucion adoptada. Ademas se trata en este
capıtulo el problema de la compresion de rango dinamico (imprescindible para representar
imagenes de gran variacion de luminosidad en un dispositivo comercial comun), ası como
la aplicacion del sistema a imagenes en color.
En el capıtulo 5 se presentan las pruebas realizadas al sistema y sus medidas de calidad.
Tambien se enuncian problemas abiertos que no han sido abordados completamente en este
trabajo: posibles mejoras al sistema o nuevas lıneas de desarrollo. Finalmente, se presentan
las conclusiones del proyecto.
El apendiceA contiene documentacion del codigo fuente del prototipoMATLAB r im-
plementado. El CD adjunto a esta memoria contiene el codigo en sı, ası como la documen-
tacion especıfica de cada uno de los ficheros fuente.
CAPITULO 2
Descripcion del Sistema de Composicion de
Imagenes Digitales (SCID)
Este capıtulo contiene la descripcion tecnica del sistema implementado. Se presentan
las especificaciones tecnicas y el diagrama de bloques del sistema, con los requisitos de
entrada y salida de cada una de sus partes.
2.1. Especificaciones
El Sistema de Composicion de Imagenes Digitales (en adelante, SCID) que se desarro-
lla en este proyecto toma como entrada un conjunto de imagenes digitales de una misma
escena, y produce como salida unaunica imagen mosaico de las imagenes de entrada.
Se asume que las imagenes de entrada se encuentran relacionadas entre sı por una trans-
formacion proyectiva (homografıa). El movimiento del centrooptico debe ser pequeno en
relacion a la profundidad de la imagen (ver1.2), para que sea posible proyectar la escena
tridimensional sobre un mismo plano. Si no se cumple esta condicion es imposible alinear
de forma exacta las imagenes, ya que aparecen oclusiones.
El mosaico resultante es una proyeccion plana de la escena, alineada en amplitud (ver
1.2.5). Si el rango dinamico del mosaico supera el de unaunica imagen (es decir, el rango
dinamico que se puede representar en el sistema), se efectua una compresion de la amplitud,
11
12 Descripcion del Sistema de Composicion de Imagenes Digitales (SCID)
que mantiene el contraste local mientras reduce las diferencias globales de luminosidad.
El SCID trabaja con un numero indeterminado de imagenes de la misma escena, de
las que se desconoce su relacion geometrica y de exposicion. Se requiere un 30 % de su-
perposicion entre imagenes consecutivas. Se requiere, ası mismo, que se introduzcan las
imagenes de tal modo que cada una este relacionada con la siguiente (con al menos un 30 %
de superposicion).
Se desconoce a priori la funcion de transferencia en amplitud de la camara, ası como
cualquier dato de calibracion de la misma. Se asume que se emplea la misma camara para
tomar todas las imagenes.
2.1.1. Algunas consideraciones
La condicion de centrooptico fijo se impone exclusivamente para evitar oclusiones,
es decir, para que las imagenes se ajusten mediante una homografıa. No es una condicion
estricta: es posible mover la camara al tomar las fotografıas, siempre y cuando este movi-
miento no haga que aparezcan oclusiones significativas.Estas, por otra parte, no impiden
el correcto funcionamiento del sistema, pero sı pueden empeorar drasticamente el resultado
final.
La homografıa es la mejor transformacion posible para crear mosaicos bidimensionales
(ver3.1). Por tanto, la condicion impuesta es intrınseca al problema a resolver: en cuanto el
punto de vista se desplaza, las imagenes dejan de estar relacionadas por una transformacion
en el plano, y se hace imprescindible utilizar modelos 3D para representar correctamente la
escena.
El requisito de una superposicion del orden del 30 % en la imagen se ha obtenido de
forma experimental. Se pueden consultar algunas pruebas al respecto en el capıtulo 5. Para
asegurar que la transformacion proyectiva es exacta, se recomienda usar un valor algo ma-
yor: un 50 %. La transformacion proyectiva es muy sensible a errores, especialmente en el
area no superpuesta (donde no se puede comparar el contenido de las dos imagenes), ası que
una superposicion alta facilita el buen funcionamiento del sistema.
Es posible generar un procedimiento automatico que determine que pares de imagenes
deben considerarseconsecutivas. Sin embargo, es un proceso computacionalmente muy
costoso y por ello no se ha incluido en el diseno final.
Del mismo modo, es posible considerar que las imagenes han sido tomadas por distintas
camaras. Sin embargo, en tal caso es imposible recuperar la funcion de transferencia y se
pierde buena parte de la potencia del SCID. Por este motivo se ha decidido considerar que
es posible extraer unaunica funcion de transferencia para todas las imagenes. Esto se aplica
Diagrama de bloques 13
tanto a fotografıas tomadas por la misma camara como por camaras similares (del mismo
modelo, por ejemplo).
2.2. Diagrama de bloques
La figura2.1 en la pagina siguiente muestra el diagrama de bloques del SCID. Se pre-
senta ahora un analisis decaja negrade los bloques de los que se compone el SCID: entra-
das, salidas y requisitos de cada uno de ellos. Los detalles de implementacion se desgranaran
en los siguientes capıtulos.
Todos los modulos funcionales son independientes del medio que se utilice para imple-
mentarlos. El prototipo desarrollado en este proyecto ha sido implementado enMATLAB r,
porque proporciona herramientas adecuadas para probar distintos algoritmos con facilidad.
Pero podrıa implementarse, por ejemplo, en C, en Java o en hardware del mismo modo.
En el apendiceA se incluye la documentacion del conjunto de ficheros desarrollados.
2.2.1. Imagenes de entrada
La entrada del SCID es un conjuntoIn = (Rn,Gn,Bn) de imagenes en RGB. Las
imagenes deben introducirse en orden, de modo que cada imagenIn tenga al menos un 30 %
de superposicion con la imagen siguienteIn+1.
Se trabaja con imagenes de tres canales (RGB), sin compresion. El formato de entrada
utilizado ha sido de 8 bits (byte sin signo) por pıxel y canal. Esta decision es arbitraria y se
debe a que el desarrollo es un prototipo. Cualquier formato de entrada que se desee admitir
se puede convertir con facilidad al utilizado en el SCID.
2.2.2. LUMA - Luminancia
Para la mayor parte del proceso se usan imagenes en blanco y negro. Esto se debe a
la necesidad de aplicar los mismos algoritmos a los tres canales, con el fin de mantener
constante la crominancia (ver1.2.4).
Este bloque recibe a la entrada el conjunto de imagenes RGBIn y lo transforma en
un conjunto de imagenes en blanco y negroYn, donde
Yn = 0.299Rn +0.587Gn +0.114Bn (2.1)
que son los coeficientes para construir la luminancia en el espacio de colorYIQ y en el
YCrCb (los utilizados en television analogica y digital respectivamente) [24].
14 Descripcion del Sistema de Composicion de Imagenes Digitales (SCID)
CGEO
CRAD
MASK
AFNT
ARAD
AGEO
COMP
CPRD
LUMA
..
..
..
..
..
..
..
..
.. . . . . . . . . . . . . ................................
?
?
?
?
?
¾
¾
-
-
-
Yn
Pn
Pn
f ,kn
f ,kn
×
f ,kn
Pn
f
+
I
In
M
k
¾
¾
mnV
mnQn
QnV
Q
Qcdr
?
-
?
-
-?
-
-
-
? ?
LUMA - LuminanciaCGEO - Calculo de la transformacion geometricaCRAD - Calculo de la transformacion radiometricaMASK - Mascara de ponderacionARAD - Alineamiento radiometricoAGEO - Alineamiento geometricoCOMP - ComposicionCPRD - Compresion de rango dinamicoAFNT - Aplicacion de la funcion de transferencia
Figura 2.1. Diagrama de bloques.
Diagrama de bloques 15
2.2.3. CGEO - Calculo de la transformacion geometrica
Este bloque toma un conjunto de imagenesYn, dondeYn eYn+1 estan relacionadas de
modo que contienen la misma escena en al menos un 30 % de su superficie. A la salida se
obtiene un conjunto de transformaciones geometricas proyectivasPn.CadaPn proyecta la imagenYn sobre unas coordenadas de referencia, elegidas de forma
arbitraria. En la implementacion desarrollada se ha tomado como referencia la imagen cen-
tral de la serie introducida. Esta decision es totalmente arbitraria, aunque puede automati-
zarse para hacer que la imagen quede lo mas centrada posible.
En el esquema de la figura1.2(pagina4), la imagen elegida determina cual es el plano
V de referencia. A partir de ahı, cadaPn proyecta la imagenYn sobreV.
El funcionamiento interno de este bloque se describe con detalle en la seccion 3.4.
En la practica, los bloquesCGEO y CRAD no estan aislados, sino que comparten resultados
parciales para mejorar la eficiencia del sistema (por ello se representa el bloque conjunto
con una lınea punteada en la figura2.1).
2.2.4. CRAD - Calculo de la transformacion radiometrica
Este bloque recibe como entrada un conjunto de imagenesYn y las transformaciones
Pn que las relacionan. A la salida proporciona una estimacion de la funcion de transfe-
rencia f (q) de la camara y las constantes de exposicionkn de cada imagen.
Es necesario conocer las transformaciones geometricas que relacionan las imagenes
entre sı, ya que la funcion de transferenciaf solo se puede estimar a partir de imagenes
registradas.
Para modelar la funcion de transferencia de la camara se ha elegido el modelopreferido
por S. Mann [20]:
I = f (q) =(
ebqa
ebqa +1
)c
=(
eaQ+b
eaQ+b +1
)c
(2.2)
dondeQ= log(q), siendologel logaritmo neperiano.a, by cson los parametros del modelo.
La constante de exposicion de una imagen se define como el cociente entre la exposicion
de dicha imagen y una exposicion de referencia, arbitraria. Por tanto se verifica que, para
dos imagenes con exposicionesεi y ε j :
εi
ε j=
ki
k j(2.3)
Se consideran, pues,unicamente las relaciones de exposicion entre unas imagenes y otras,
como ya se ha descrito en1.2.3.
El funcionamiento interno de este bloque se describe en la seccion4.4.
16 Descripcion del Sistema de Composicion de Imagenes Digitales (SCID)
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Figura 2.2. Mascara de ponderacion. A la izquierda, la funcionw0 y a la derecha la mascara
w en escala de grises.
2.2.5. MASK - Mascara de ponderacion
A la hora de mezclar las imagenes que se superponen para formar el mosaico, es ne-
cesario determinar que pesos o coeficientes se utilizan para ponderar la mezcla. Esa es la
funcion de este bloque. Para cada pıxel x de cada imagenYn se determina un coeficiente de
ponderacion:
mn(x) = c[
f−1(Yn(x))]w(x) (2.4)
El terminoc se denominacertidumbre[20] y es la derivada de la funcion de transferen-
cia en escala logarıtmica, que es una medida de la sensibilidad:
c(q) =d f(q)
d [log(q)](2.5)
El terminow tiene como fin ponderar mas los pıxeles situados en el centro de la ima-
gen, frente a los situados en los bordes. De este modo se consigue un doble objetivo: se
otorga masconfianzaa los pıxeles centrales, que seran mas robustos frente a errores en la
transformacion proyectiva, y se suavizan las transiciones de una imagen a otra.
Si x = (x1,x2), entoncesw(x) = w0(x1)w0(x2). La funcion w0(x) es una ventana como
la que aparece en la figura2.2. Se implementa como
w0 = sen4(
απxxmax
)(2.6)
α es un coeficiente que toma el valor 0.8. A mayorα, mas pronunciada es la diferencia
de ponderacion entre el centro y los bordes de la imagen.
Diagrama de bloques 17
2.2.6. ARAD - Alineamiento radiometrico
Este bloque transforma las imagenes de intensidadIn en imagenes decantidad de luz
Qn. Cada imagen
In = (Rn,Gn,Bn) (2.7)
se transforma en
Qn = (QRn,QGn,QBn) (2.8)
donde
QRn = log
(f−1(Rn)
kn
)(2.9)
y analogamente se obtienenQGn y QBn a partir deGn y Bn respectivamente.
A la salida de este bloque, todas las imagenes estan registradasen amplitud, de modo
que son imagenes de cantidad de luz (irradiancia), en escala logarıtmica y con la misma
referencia de intensidad para todas.
2.2.7. AGEO - Alineamiento geometrico
Este bloque proyecta las imagenesQn sobre el planoV. Es decir, aplica a cada imagen
Qn la transformacion proyectivaPn. Las imagenes resultantes quedan alineadas a una refe-
rencia comun. Se utiliza el procedimiento clasico: aplicacion de la transformacion inversa
para obtener el valor de cada pıxel de la imagen de salida. La interpolacion es lineal.
Las imagenes de salidaQnV se ajustan al mınimo marco tal que su distancia al origen
de coordenadas sea un numero entero de pıxeles. Dicho de otra forma, todas las imagenes
estan alineadas de modo que cada uno de sus pıxeles esta a una distancia entera del origen
de coordenadas y, por tanto, corresponde a ununico pıxel de cada una de las otras imagenes.
La transformacion geometrica se aplica del mismo modo a las mascaras de ponderacion.
2.2.8. COMP - Composicion
A la salida de este bloque se obtiene la imagen radiometrica compuesta (el mosaico).
Las imagenes, alineadas en intensidad y geometrıa, se suman ponderadamente segun los
coeficientes de las mascaras:
QR =∑n
mnVQRnV
∑n
mnV
(2.10)
Del mismo modo se calculanQG y QB para obtener la imagen finalQ.
18 Descripcion del Sistema de Composicion de Imagenes Digitales (SCID)
Hacer una media aritmetica ponderada en escala logarıtmica (Q) equivale a una ponde-
racion geometrica en escala lineal de cantidad de luz (q). El porque de esta eleccion en se
discute en4.4.5.
2.2.9. CPRD - Compresion de rango dinamico
La imagen compuestaQ tiene, normalmente, mayor rango dinamico que cada una de
las imagenes originalesQn. Por ello es necesario comprimir el rango dinamico para que la
imagen de salida se pueda representar.
Este bloque realiza una compresion local de rango dinamico. A partir de la imagenQ
genera una mascaraM del mismo tamano, de modo que la imagen
Qcdr = (QR+M,QG +M,QB +M) (2.11)
tenga el rango dinamico adecuado para poderse representar adecuadamente. Ademas, el
bloque proporciona tambien la constante de exposicion k asociada al rango deQ de la
imagen de salida.
Se utiliza el algoritmo Retinex [34], que se describe en4.5.1.
2.2.10. AFT - Aplicacion de la funcion de transferencia
Este bloque obtiene el mosaico finalI = (R,G,B) a partir deQcdr
y dek, de tal modo
que:
R= f(
kQcdrR
)(2.12)
Se opera del mismo modo conQcdrG y Qcdr
B para obtenerG y B respectivamente.
2.2.11. Imagen final
La imagen de salida es el mosaico formado por las imagenes de entrada, registradas en
geometrıa y amplitud y con rango dinamico comprimido localmente para no perder con-
traste. El formato es RGB sin comprimir.
Al igual que en las imagenes de entrada, es inmediato convertir la salida a cualquier
formato de imagen sin mas que usar el codificador adecuado.
CAPITULO 3
Alineamiento de la geometrıa
En este capıtulo se analiza el problema geometrico del alineamiento de imagenes y se
describen las soluciones que se han adoptado en el SCID. El objetivo es disenar el bloque
CGEO de la figura2.1en la pagina14. La seccion3.4tratara de esto.
Antes es necesario caracterizar el problema geometrico. La figura3.1 en la pagina21
muestra la terminologıa y notacion. En la seccion 3.1 se define el tipo de transformacion
geometrica que relaciona las imagenes entre sı, ası como diversas tecnicas para calcularla
a partir de un conjunto depuntos de control. Las secciones3.2 y 3.3 describen, respecti-
vamente, como seleccionar puntos de control en la imagen origen y como encontrar sus
homologos en la de referencia.
3.1. Transformaciones geometricas. Homografıa
Una transformacion geometrica es un operador puntual que modifica la geometrıa de la
imagen (transformacion de las coordenadas espaciales) sin modificar la intensidad de cada
elemento de la misma. Considerando imagenes continuas, se define la transformacion T
como:
T : R2 → R2
x → x′ = T(x) (3.1)
19
20 Alineamiento de la geometrıa
donde a cada puntox′ de la imagen final (o imagen destino)Io le corresponde un puntox de
la imagen inicial (o imagen origen)Ii , de modo queIo(x′) = Ii(x).
En la practica, las imagenes con que se trabaja no son continuas, sino discretas en el
espacio. La imagen destinoIo se obtiene pıxel a pıxel: para cada pıxel x′ de Io se busca el
correspondiente pıxel x = T−1(x′) en la imagen origen. En el caso general,x no correspon-
dera a las coordenadas de un pıxel, sino que sera un valor cualquiera del plano continuo. El
valor Io(x′) se obtiene por interpolacion entre los pıxeles de la imagenI que son vecinos a
T−1(x′).
La interpolacion puede verse como la aplicacion de un operador tipo convolucion a la
imagen discretaIi , de modo que se obtengan los valores de amplitud deIi para cualquier
punto del planoR2 [13, cap. 8]. El nucleo interpolador ideal es una funcion tipo sinc. En
la practica se utilizan nucleos mas sencillos: rectangulares (interpolacion delvecino mas
proximo), bilineales (triangulares) o cubicos. En el SCID se utilizan interpoladores bilinea-
les, que hacen que el valor de cada pıxel siempre este comprendido entre los valores de los
pıxeles vecinos. Esto permite controlar con facilidad el rango de amplitudes de las imagenes
resultantes tras una transformacion geometrica.
Dentro del modelo general de transformaciones geometricas, resultan especialmente in-
teresantes las que pueden modelarse y resolverse utilizando matrices. El caso mas general
es latransformacion perspectivao proyectiva, tambien denominadahomografıa. Para ca-
racterizarla, es necesario definir primero los vectores de coordenadas generalizados:
xg =
x1
x2
1
=
1w
wx1
wx2
w
(3.2)
Es decir, un vector de tres componentes(z1,z2,z3)T representa al punto(x1,x2)T ∈ R2
si
x1 =z1
z3(3.3)
x2 =z2
z3(3.4)
Una transformacion proyectivaP se define por la matriz3×3 P, de modo quex′ = P[x]
si
x′g = Pxg =
a11 a12 a13
a21 a22 a23
a31 a32 1
xg (3.5)
Como el valora33 = 1, la matrizP tiene 8 coeficientesai j que pueden variar. Una
transformacion proyectiva, por tanto, tiene 8 grados de libertad.
Transformaciones geometricas. Homografıa 21
Figura 3.1. La figura representa el problema geometrico que se aborda en este capıtulo.
Se representan las imagenesIi (imagen origen, inicial o de entrada) eIo (imagen destino,
final o de salida) en verde, mientras queIr (imagen de referencia) se representa en azul.
A la izquierda aparecen las imagenesIi e Ir , que son las entradas del bloqueCGEO (§3.4).
Su objetivo y, por ende, el de este capıtulo, es hallar, a partir de ellas, la transformacion
geometricaP que las relaciona. A la derecha, la imagenIo = P[Ii ], alineada al sistema de
coordenadas deIr .
3.1.1. Correspondencia geometrica entre imagenes
Se consideran dos imagenesIi(x) e Ir(x′), que representan una misma escena tridimen-
sional con distintas direcciones de vista. Se debe hallar la transformacion geometricaP que
las relaciona, de modo que:
x′ = P(x) =⇒ Ii(x) = Ir(x′) (3.6)
tal como se representa en la figura3.1
Dicho de otra forma, si se considera la imagenIo = P(Ii), entonces debe cumplirse que
Io ≡ Ir para todos los puntos de la interseccion del marco de ambas imagenes.
El problema geometrico que se plantea en este proyecto (§ 1.2) se resuelve con una
homografıa: dos fotografıas tomadas con el mismo punto de vista (centrooptico) estan rela-
cionadas entre sı por una transformacion proyectiva [35]. La homografıa tambien resuelve
22 Alineamiento de la geometrıa
con exactitud el problema de alinear imagenes de un plano (sin profundidad) tomadas con
cualesquiera puntos de vista [4]. Es, por tanto, la transformacion mas adecuada para mode-
lar el mosaico que construira el SCID.
En la construccion de mosaicos es frecuente proyectar la escena, en lugar de sobre un
planoV, sobre un cilindro o sobre una esfera. Estas dos proyecciones requieren, para ser
exactas, la distancia focal del sistema de adquisicion de las imagenes, por lo que precisan
de calibracion. Ademas, transforman las rectas (al menos las diagonales) en curvas, propie-
dad que no se considera deseable para el uso profesional de estos mosaicos. Por estos dos
motivos se ha descartado la posibilidad de la proyeccion esferica o cilındrica en el SCID.
3.1.2. Calculo de la transformacion a partir de 4 pares de puntos
Se considera ahora el problema de calcular la transformacion proyectiva que relaciona
dos imagenes. La estrategia a seguir es la siguiente: si para un conjunto de puntosx1 . . .xnse conocen sus respectivos transformadosx′1 . . .x′n debe de ser posible, a partir de ellos,
inferir la transformacion.
Los puntosx∈ Ii , x′ ∈ Ir se denominanpuntos homologossi representan el mismo punto
X de la escena tridimensional proyectada enIi e Ir . Se denota:x↔ x′. Si las dos imagenes
estan relacionadas por una transformacion proyectivaP, entonces se debe cumplir que
x′ = P[x] es decir (3.7)
x′g = Pxg (3.8)
Sonpuntos de controlaquellos puntos homologos, determinados de antemano en las
imagenes de entrada y de referencia, a partir de los cuales se calcula la transformacion
geometrica que las relaciona.
Como la matrizP tiene 8 grados de libertad, son necesarios 4 pares de puntos de control,
no colineales 3 a 3 en ninguna de las dos imagenes, para calcular la transformacion. En tal
caso, cada par de puntos debe verificar las siguientes ecuaciones:
x1 =a11x′1 +a12x′2 +a13
a31x′1 +a32x′2 +1(3.9)
x2 =a21x′1 +a22x′2 +a23
a31x′1 +a32x′2 +1(3.10)
que se obtienen por operacion inmediata de3.5. Se pueden expresar como ecuaciones li-
neales en los coeficientesai j:
a11x′1 +a12x
′2 +a13−a31x
′1x1−a32x
′2x1 = x1 (3.11)
a21x′1 +a22x
′2 +a23−a31x
′1x2−a32x
′2x2 = x2 (3.12)
Transformaciones geometricas. Homografıa 23
Con los otros tres pares de puntos se construyen seis ecuaciones del mismo tipo, que dan
lugar a un sistema de 8 ecuaciones con 8 incognitas, lineal en los coeficientesai j. Si los
puntos no son colineales, el sistema es compatible determinado y puede resolverse de forma
sencilla. Esta solucion directa se puede formalizar de diversas maneras, y se conoce como
algoritmo de la Transformacion Lineal Directa (DLT,Direct Linear Transform[10, §3.1]).
3.1.3. Calculo de la transformacion a partir de multiples pares de puntos
En un caso real, cualquier estimacion de la correspondencia entre pares de puntos de
control tiene cierto error o indeterminacion. Un error en uno de los puntos darıa lugar a una
transformacion erronea, que impedirıa el correctoregistrode las imagenes. Para reducir la
sensibilidad de la transformacion a errores en ununico punto, se aumenta el numero de
pares de control empleados y, por tanto, el numero de ecuaciones a considerar.
En el caso general, sera completamente imposible obtener una solucion que satisfaga
todas las ecuaciones del sistema. Ası, es preciso definir algun tipo de funcion de coste que
es necesario minimizar para encontrar la solucion optima.
La funcion de coste mas habitual es la norma euclıdea (raız cuadrada de la suma del
cuadrado de las diferencias), que esoptima si el error es aleatorio, independiente y con
distribucion gaussiana con media nula. Mas formalmente, dado el sistema
Ra = s (3.13)
dondea= (a11,a12, . . . ,a32)T , ses un vector de2N elementos yR es una matriz8×2N. N >
4 es el numero de puntos de control considerado, y las ecuaciones escalares que conforman
el sistema son las dadas por (3.11) y (3.12).
El objetivo es encontrar la soluciona0 que minimice
‖Ra0−s‖2 = (Ra0−s)T(Ra0−s) (3.14)
Para ello existe una solucion analıtica, basada en la matriz seudoinversaR†:
a0 = R†s (3.15)
R† = RT [RTR
]−1(3.16)
El calculo directo de la matriz seudoinversa, segun (3.16), es muy costoso computacio-
nalmente. Existen diversos algoritmos que permiten, mediante procedimientos iterativos,
minimizar la expresion (3.14) con menos operaciones. Se puede utilizar, por ejemplo, el de
Levenberg-Marquardt (LM) [28].
24 Alineamiento de la geometrıa
3.1.4. Estimacion robusta de la transformacion. RANSAC
Hasta este momento se ha asumido que las correspondencias entre puntosx↔ x′son correctas, aunque puedan tener algun error aleatorio de distribucion aproximadamente
gaussiana. Sin embargo, es posible que el metodo que establece las correspondencias entre
puntos singulares (ver§ 3.3) proporcione algun resultado incorrecto. En estos casos es nece-
sario detectar los puntos que se ajustan al modelo de la transformacion (inliers) y separarlos
de los que son incorrectos (outliers).
RANSAC (RANdom SAmple Consensus) es un algoritmo que permite la deteccion de
outlierspara eliminarlos de la estimacion de la transformacion, que se calcula despues me-
diante metodos como los vistos en la seccion 3.1.3. El SCID incluye la version adaptativa
del algoritmo segun [10, pag. 105], que consiste en lo siguiente:
Se toma un conjuntoS que contienenS pares de puntos de control. El objetivo es de-
terminar la transformacion representada porS a partir de conjuntos des puntos.s es el
mınimo numero de puntos que determinan una transformacion (por ejemplo,s= 4 para una
homografıa).
RANSAC toma un conjunto des puntos al azar y halla la transformacion asociada.
Despues, calcula cuantos puntos deSse ajustan a la transformacion (con un umbral de error
t). Se repite el algoritmo un numeroN de veces de modo que se asegure, con probabilidad
p, que al menosspuntos carecen deoutliers. Tıpicamentep = 0.99.
El procedimiento a seguir para el calculo robusto de la transformacion es el siguiente:
InicialmenteN = ∞. Se inicializa a cero un contador de iteraciones:k = 0. Se inicia-
liza a cero la proporcion deinliers obtenida hasta el momento.
MientrasN > k
1. Se toma aleatoriamente un conjunto despares de puntos.
2. Se calcula la transformacionT asociada a esos puntos.
3. Se hallani : el numero de puntos deS que se ajustan a la transformacion T
(inliers).
4. Se calcula la proporcion deinliers: w = ninS
.
5. Si w mejora el resultado actual, se vuelve a calcular el numero de iteraciones
necesarias:
N =log1− plog1−ws (3.17)
Con losni inliers obtenidos, se calcula la transformacion segun se vio en3.1.3.
Obtencion de puntos singulares en una imagen 25
3.2. Obtencion de puntos singulares en una imagen
Para poder estimar la transformacion que relaciona dos imagenes, es necesario disponer
de un conjunto de puntos de control. Esto requiere, a su vez, solucionar dos problemas
diferentes. Por un lado, determinar que puntos de la imagen de entrada son adecuados como
puntos de control. Por otro, localizar en la imagen de referencia los puntos homologos.
Como candidatos a puntos de control de la transformacion se buscanpuntos singulares
de la imagen origen. Un punto singular es aquel que puede diferenciarse claramente de su
entorno y, por tanto, es sencillo localizar su homologo en la imagen de referencia.
Los puntos mas adecuados para ello son las esquinas o, mas en general, los rasgos bi-
dimensionales (2D-features). Tienen caracterısticas diferenciales (alta derivada direccional)
en dos direcciones perpendiculares. Son faciles de distinguir del resto de los puntos de su
entorno y, por tanto, es facil encontrar sus respectivos puntos homologos.
3.2.1. Caracterizacion y busqueda de esquinas
Los primeros detectores de esquinas, desarrollados a lo largo de los anos 80, se basan
directamente en el calculo de la derivada. Se estudia la funcion bidimensionalI(x) y se
buscan las esquinas en los puntos en los que la curvatura horizontal es maxima. Para ello se
calcula la matriz de la segunda derivada:
J =
(∂ I∂x1
)2 (∂ I∂x1
)(∂ I∂x2
)(
∂ I∂x1
)(∂ I∂x2
) (∂ I∂x2
)2
(3.18)
Existen diversos operadores que se aproximan al problema desde este punto de vista,
como el de Kitchen y Rosenfeld [16], que maximiza el producto de la curvatura por el
gradiente:
C = κg = κ(I21 + I2
2)1/2 =I11I2
2−2I12I1I2 + I22I21
I21 + I2
2
(3.19)
donde los subındices1 y 2 indican derivadas parciales con respecto a las variablesx1 y x2
respectivamente.
El detector de Harris [9] define una funcion de respuesta a las esquinas:
R= detJ−k(trazaJ)2 (3.20)
dondek es un parametro que se fija a0.04 (a sugerencia de Harris). Las esquinas se en-
cuentran en los maximos locales de la funcionR. Es posible alcanzar precision inferior a un
pıxel usando una aproximacion cuadratica en el entorno de los maximos locales. Se puede
26 Alineamiento de la geometrıa
controlar la cantidad de esquinas detectadas fijando un umbral paraR o tomando solo un
determinado numero de maximos ordenados segun su respuesta.
Tomasi y Kanade [37] estudian los autovaloresλ1,λ2 de la matrizJ. Si los dos autovalo-
res son pequenos corresponden a un perfil de intensidad aproximadamente constante en un
entorno del punto. Uno grande y uno pequeno corresponden a un patron de textura unidirec-
cional. Dos autovalores grandes pueden representar esquinas, texturas tiposal y pimientao
cualquier otro patron facil de identificar en la imagen destino. En la practica, basta con que
el menor de los autovalores supere un cierto umbralλ , es decir:
min(λ1,λ2) > λ (3.21)
El detector de Tomasi y Kanade esta especialmente disenado para utilizar con el algoritmo
de Kanade-Lucas-Tomasi de seguimiento de puntos entre dos imagenes (ver§ 3.3.3).
Otra aproximacion al problema, completamente distinta, es usar la transformada de
Hough generalizada para obtener patrones de esquinas [5]. La transformada de Hough, en
su version original, proporciona una parametrizacion del espacio que permite detectar facil-
mente lıneas rectas. Es posible generalizarla para que localice otro tipo de patrones, como
circunferencias, cuadrados, elipses o, como en este caso, esquinas.
3.2.2. El detector de esquinas SUSAN de Smith y Brady
Una detector interesante, tanto por su eficiencia como por su simplicidad, es el pro-
puesto por Smith y Brady en [33]: SUSAN, acronimo deSmallest Univalue Segment As-
similating Nucleus. Trabaja con imagenes binarias o en escala de grises, y se basa en la
siguiente idea: en el entorno de una esquina, aproximadamente una cuarta parte de los pıxe-
les tendran la misma intensidad que el centro, y los tres cuartos restantes seran diferentes.
La generalizacion de esta idea es el((principio de SUSAN)). A cada pıxel se le asigna
un entorno circular a su alrededor, y se cuenta el numero de pıxeles de dicho entorno con
el mismo valor de intensidad que el central (o nucleo). Este conjunto de pıxeles con el
mismo valor que el nucleo se denomina USAN (Univalue Segment Assimilating Nucleus).
En un borde, elarea del USAN sera del orden del 50 % delarea del entorno circular. En
una esquina, del orden del 25 %. Y, en general, se enuncia el principio de SUSAN de la
siguiente manera:
((Una imagen procesada para dar como salida elarea del USAN invertida tiene sus
bordes y sus patrones bidimensionales realzados, con los patrones bidimensionales mas
realzados que los bordes)). [33]
Obtencion de puntos singulares en una imagen 27
Siguiendo este principio, Smith y Brady definen el siguiente algoritmo para localizar
las esquinas (patrones bidimensionales) en una imagen:
1. Se define una mascara circularΩ0 alrededor de cada puntox0.
2. Se halla el numero de pıxeles con la misma intensidad (area del USAN). Para ello se
define elarea como:
n(x0) = ∑x∈Ω0
C(x,x0) (3.22)
DondeC(x,x0) es la funcion que determina si los pıxelesI(x) e I(x0) sonde la misma
intensidad. Para ello se usa
C(x,x0) = e
(I(x)−I(x0)
t
)6
(3.23)
t es un valor que se denominaumbral de brillo.
3. Se calcula el valor delarea del USAN invertida:
R(x0) =
g−n(x0) si n(x0) > g,
0 en caso contrario.(3.24)
g se denominaumbral geometrico y, en principio, es igual a la mitad de la superficie
de la mascara, es decir, a la mitad del maximo valor que puede tomarn(x0).
4. Se eliminan falsos positivos. En una esquina, el centro de gravedad del USAN debe
estar lejos del nucleo: es necesario eliminar los puntos en los que esto no suceda.
5. Se buscan maximos locales en ventanas de5×5 o 7×7 pıxeles.
Modificando el valor det varıa la cantidadde esquinas detectadas. Como determina
la variacion de intensidad permitida dentro de un USAN, una reduccion en este umbral
considera variaciones mas sutiles y, por tanto, localiza mas esquinas. El artıculo original
proponet = 25. El umbralg afecta al tipo (calidad) de esquinas detectadas. Un bajo valor
deg detecta esquinas menos agudas que un valor alto.
3.2.3. Comparacion de los algoritmos de deteccion de esquinas
En la literatura aparecen numerosos detectores de esquinas, y resulta complicado en-
contrar razones para decidirse por el uso de uno u otro. En el desarrollo de este sistema se
han estudiado tres: Harris, Tomasi-Kanade y SUSAN.
28 Alineamiento de la geometrıa
Harris es, probablemente, el detector mas utilizado. Es flexible y potente, y supera en
prestaciones a otros detectores de la mismaepoca [29]. Tomasi-Kanade fue desarrollado a
proposito para complementar al algoritmo de seguimiento de puntos KLT, que se utilizara en
el sistema (§3.3.3). SUSAN es, segun sus desarrolladores, mas rapido (unas 10 veces) y mas
exacto que Harris.
Se puede encontrar un estudio comparativo de estos tres detectores en [15]. Se analiza su
estabilidad frente a cambios de escala, rotacion plana y diferencias de iluminacion media.
Segun este estudio, Harris es el mas estable de los tres. Sin embargo, SUSAN es mejor
frente a variaciones de intensidad (que pueden ser muy importantes en las imagenes con las
que se va a trabajar).
Los tres detectores permiten controlar la cantidad de esquinas detectadas. Tomasi-
Kanade y Harris obtienen un valor de respuesta en cada punto, que se puede ordenar para
seleccionar lasmejoresesquinas. Con SUSAN tambien es posible ordenar la funcion de res-
puestaR, definida en (3.24). Pero es mas adecuado aumentar el umbral de brillo, de modo
que solo se localicen las esquinas en las que las diferencias de intensidad sean mas grandes,
lo que facilita su seguimiento por parte de los algoritmos de correspondencia (§ 3.4.1).
Tras las pruebas realizadas se han obtenido las siguientes conclusiones:
La deteccion de esquinas no es crıtica para el sistema. Los tres detectores comparados
dan resultados parecidos y el uso de unos u otros apenas afecta al rendimiento total.
Las medidas de estabilidad realizadas en trabajos como los citados tienen lugar con
imagenes sinteticas (o modificadas artificialmente). Se pueden tener en cuenta para
el diseno del SCID, pero sus resultados no son aplicables directamente a fotografıas
como las utilizadas por el SCID.
SUSAN es mas rapido que Tomasi-Kanade y Harris.
Por este motivo se ha elegido SUSAN como detector de esquinas en el SCID.
3.3. Correspondencia entre puntos singulares de dos imagenes
Una vez localizados los puntos de la imagen origen que son candidatos a puntos de
control, se han de localizar sus homologos en la imagen de referencia. La correcta y eficiente
asociacion de pares de puntos de control es, sin duda, el problema fundamental del registro
geometrico.
Las tecnicas empleadas para encontrar la correspondencia entre pares de puntos reciben
diversos nombres, segun el campo de la vision artificial del que procedan. La mayorıa de
Correspondencia entre puntos singulares de dos imagenes 29
los sistemas de construccion de mosaicos se apoyan en tramas de vıdeo, donde se habla de
((seguimiento)) (tracking) de puntos o caracteres (features) a lo largo de la secuencia. Las
tecnicas mas robustas provienen del((reconocimiento de patrones)) (pattern recognition).
3.3.1. El problema del seguimiento de puntos
Para abordar el problema de seguimiento de puntos es preciso definirlo en terminos
adecuados. El objetivo es encontrar, en dos imagenes (fotografıas) distintasIi , Ir de una
determinada escenaE, los puntosx,x′ que representan a un mismo puntoX ∈E. En el
caso general, no se dispone en absoluto de informacion de la escena de referencia: por
tanto, es necesario extraer los puntos homologos a partirunicamente de las imagenes en
que aparecen.
Se hace uso de una propiedad: si dos puntos representan ununico lugar de la escena
original, los entornos de dichos puntos seran muy parecidos (porque representan el mismo
entorno deE). Se reformula, pues, el objetivo: encontrar entornos de puntos que sean pare-
cidos entre sı.
Las dos imagenesIi e Ir que se van a comparar estan relacionadas por una transfor-
macion geometrica perspectivaP. Se cumple la relacionx↔ x′, es decirx′ = P[x]. Dado
un entornoΩ de cada punto, se debe cumplir queΩ[x′] = Pi j (Ω[x]). El algoritmo, por tanto,
debe ser capaz de localizar, para cadaΩ[x] en la imagen de entrada, el entornoΩ[x′] de la
imagen de referencia que mas se le parece (segun algun tipo de metrica), o viceversa.
SeaP una homografıa cualquiera, desconocida a priori. Entonces, dado un entornoΩ[x],
se desconoce la forma, tamano y orientacion del entorno homologoΩ[x′] = P [Ω[x]]. Consi-
derar todas las regiones posiblesΩ[x′] supera la capacidad de cualquier algoritmo actual. Es
necesario, por tanto, restringir el conjunto de transformaciones consideradas en la busqueda
de puntos de control.
Las soluciones clasicas el problema imponen, al menos, dos restricciones: forma y
tamano. Se asume que en un entorno de cada pıxel se puede aproximarP por una trans-
formacion rıgida (sin deformacion). Ademas, salvo en esquemas que trabajen con multirre-
solucion, se asume tambien ausencia de escalado entre las imagenes consideradas.
Si se consideran secuencias de vıdeo, dos fotogramas consecutivos son muy parecidos
(siempre que no exista cambio de toma). En estos casos, es habitual simplificar aun mas
el problema considerandounicamente desplazamiento horizontal y vertical en la transfor-
macion. Ademas se suele anadir la restriccion de que el desplazamiento entre imagenes
consecutivas es pequeno, por lo que se puede reducir elarea de la imagen destino que se
debe rastrear. Estas condiciones son practicamente lasunicas consideradas en los sistemas
30 Alineamiento de la geometrıa
de composicion automatica de mosaicos que aparecen en la literatura.
En el SCID, sin embargo, se considera la busqueda de puntos en un entorno mas general.
Se asume que la transformacion es aproximadamente rıgida, es decir, con cuatro grados
de libertad: desplazamiento horizontal, desplazamiento vertical, rotacion y escalado. Los
tres primeros pueden tomar cualquier valor. El escalado debe tomar un valor proximo a la
unidad.
3.3.2. Soluciones clasicas
La mayor parte de las soluciones al problema del seguimiento de puntos pasan por
definir una metrica entre ventanas de las imagenes consideradas. Para cada punto de control
de la imagen de entradax, se toma una ventana a su alrededorΩ[x]. Despues se busca, en
la imagen de referencia, la ventanaΩ[x′] mas parecida segun una cierta metrica. Distintas
metricas presentan diferentes propiedades de invarianza, velocidad de computo o robustez
frente al ruido [30]. Algunas de ellas son:
Minimizacion de la suma de los cuadrados de las diferencias (norma euclıdea). Esto
es, minimizar:
d = ∑r∈Ω
(Ii(x+ r)− Ir(x′+ r)
)2(3.25)
Es una solucion robusta frente al ruido, pero requiere bastante tiempo de computo.
Por ello es frecuente sustituirla por la siguiente:
Minimizacion de la suma de valores absolutos de la diferencia.
d = ∑r∈Ω
∣∣Ii(x+ r)− Ir(x′+ r)∣∣ (3.26)
Maximizacion de la correlacion cruzada. Equivale a la deteccion de un patron me-
diantefiltro adaptado. La funcion a maximizar es:
c = ∑r∈Ω
Ii(x+ r)Ir(x′+ r) (3.27)
Maximizacion del coeficiente de correlacion, o correlacion cruzada normalizada:
ρ =∑r∈Ω
Ii(x+ r)Ir(x′+ r)√
∑r∈Ω
(Ii(x+ r))2 ∑r∈Ω
(Ir(x′+ r))2(3.28)
Correspondencia entre puntos singulares de dos imagenes 31
En todos ellos se consideraΩ como un entorno (o ventana) centrado en el origen. Los
tres primeros suponen que la energıa de la imagen en cada ventana es similar, y desprecian
su aportacion. Esto es ciertounicamente si las dos imagenes han sido tomadas con condi-
ciones de iluminacion y exposicion similares. El coeficiente de correlacion, por el contrario,
considera el valor de luminosidad de cada ventana y da una respuesta normalizada aeste.
Es, pues, el mas robusto frente al ruido y frente a cambios en la iluminacion global de la
imagen.
En un intento de mejorar la eficiencia del computo de estas distancias, para permitir su
uso en aplicaciones de rastreo en tiempo real, surgen aproximaciones a ellas. En la seccion
3.3.3se analizara uno de estos algoritmos: el de Kanade-Lucas-Tomasi.
Las metricas expuestas hasta ahora necesitan que se cumpla la correspondencia
(x+ r)↔ (x′+ r),∀r ∈Ω (3.29)
es decir, solo permiten desplazamiento en la transformacion (ausencia de rotacion, escalado
o deformacion). Es la situacion mas frecuente en seguimiento de tramas de vıdeo, pero
puede ser insuficiente en casos de reconocimiento de patrones.
Es posible considerar metricas que sean invariantes a rotacion o escalado. Un ejemplo
clasico son los momentos invariantes de Hu [12]: un juego de 7 momentos, derivados de los
momentos estadısticos centrales y normalizados, que presentan invarianza frente a rotacion,
translacion y escalado. Se calculan los momentos en cada una de las ventanas y se minimiza
algun tipo de distancia entre ellos.
Al trabajar con fotografıas deben matizarse las propiedades de invarianza de los mo-
mentos. La invarianza frente a escalado supone que en las ventanas de analisis aparecen los
mismos objetos con distinta escala. La invarianza frente a desplazamiento supone que apa-
recen los mismos objetos en distintas posiciones. En una fotografıa, un desplazamiento o
un escalado de la ventana hace que en ella aparezcan nuevos objetos, o desaparezca alguno
de los que habıa. Esto hace que, en la practica, no sea sencillo aplicar estas dos propiedades
de invarianza, que no son robustas frente a oclusiones.
Ademas de los momentos de Hu, es posible considerar otro juego de momentos inva-
riantes frente a rotaciones: los momentos de Zernike. Como se vera en la seccion 3.3.4, su
principal ventaja es ser una proyeccion sobre una base infinita, lo que permite, en la practica,
emplear tantos momentos distintos como sea preciso para representar adecuadamente el en-
tornoΩ.
32 Alineamiento de la geometrıa
3.3.3. El algoritmo de Kanade-Lucas-Tomasi
El algoritmo de Kanade-Lucas-Tomasi [19,37] se basa en el calculo de mınimos locales
de la suma de las diferencias al cuadrado. Es una tecnica que utiliza el gradiente espacial de
intensidad para dirigir la busqueda de los puntos homologos. Es capaz de encontrar la mejor
posicion para los puntos de control en un numero reducido de operaciones, partiendo de la
base de que en muchas aplicaciones las dos imagenes de trabajo estan aproximadamente
registradas.
Dadas dos imagenesIi e Ir , de las que se supone que estan relacionadas por un despla-
zamiento pequeno:
x′ ≈ x+d (3.30)
Ii(x) ≈ Ir(x+d) (3.31)
se trata de minimizar el error cuadratico medio entre ambas aproximaciones en un entorno
del punto considerado:
ε = ∑x∈Ω
(Ii(x)− Ir(x+d)
)2w(x) (3.32)
dondew(x) es una funcion de ponderacion.
Se considera la aproximacion de Taylor de primer orden del error:
Ir(x+d)≈ Ir(x)+g(x) ·d (3.33)
Como el error es una funcion cuadratica ded, se puede hallar su mınimo derivando e
igualando a cero:
0 = ∑x∈Ω
(Ii(x)− Ir(x)−g(x) ·d)
g(x)w(x) (3.34)
Como(g(x) ·d)g(x) = (g(x)gT(x))d se tiene (prescindiendo de la dependencia explıcita
dex):
∑Ω
(ggTw
)d = ∑
Ω(Ii− Ir)gw (3.35)
Gd = e (3.36)
G es una matriz de 2x2, y la ecuacion matricial (3.36) es un sistema de dos ecuaciones
lineales con dos incognitas.
En principio, se calculae como la diferencia de las imagenesI1 e I2 en el entornoΩ,
sin desplazamiento. Despues se va mejorando la aproximacion de forma iterativa, con un
algoritmo tipo Newton-Raphson:
Correspondencia entre puntos singulares de dos imagenes 33
d0 = 0
dk+1 =[∑
(g(x+dk)gT(x+dk)w(x)
)]−1 ·· [∑
([Ii(x)− Ir(x+dk)
]g(x+dk)w(x)
)]
(3.37)
Es necesario establecer un criterio que determine cuando el algoritmo converge y
cuando no lo hace. En la seccion siguiente se veran los criterios concretos que se emplean
en el SCID.
El metodo de Newton-Raphson converge adecuadamente si la funcion de distancia (el
residuo|e|) no presenta mınimos locales en el entorno en el que se esta buscando el punto
(es decir, solo presenta un mınimo global en dicho entorno, que se situa el punto buscado).
KLT es un seguidor de puntos disenado para secuencias de vıdeo, donde cada cuadro es
muy parecido al anterior. Ademas, se pretende que pueda funcionar en tiempo real. Por ello
asume las siguientes simplificaciones:
Entre dos cuadros consecutivos, es posible aproximar la transformacion (en entornos
pequenos) por un desplazamiento rıgido de pocos pıxeles y sin rotacion.
Entre dos cuadros consecutivos, las condiciones de iluminacion y de adquisicion son
parecidas. Por ello se utiliza la suma de diferencias al cuadrado como medida de
distancia.
Si se cumplen esas condiciones, KLT es capaz de seguir puntos una cierta distancia con
una buena tasa de aciertos. Sin embargo, las imagenes con que se trabaja en este proyecto
no tienen por que cumplirlas, ya que las condiciones impuestas a la transformacion que las
relaciona son mucho menos restrictivas (ver1.2.5).
Por tanto, es necesario establecer una estimacion previa de la transformacion, tanto en
la geometrıa como en la intensidad, que sea capaz de generar imagenes con las condiciones
que requiere KLT. Este problema se analizara en la seccion3.3.4.
3.3.4. Momentos de Zernike
Los momentos de Zernike [31] se construyen usando un conjunto de polinomios com-
plejos que forman una base ortogonal completa del disco unidad(x2 +y2 ≤ 1). Se definen
mediante la expresion:
Amn =m+1
π ∑x
∑y
I(x,y) [Vmn(x,y)]∗ conx2 +y2 ≤ 1 (3.38)
34 Alineamiento de la geometrıa
dondeI(x,y) es la imagen considerada yVmn(x,y) es el polinomio de Zernike deındicesm
y n. Los ındices cumplen que:
m = 0,1,2, . . . ,∞ (3.39)
m−|n| = par, |n| ≤m (3.40)
El polinomioVmn(x,y) se expresa en coordenadas polares como
Vmn(r,θ) = Rmn(r)exp( jnθ) (3.41)
donde
Rmn(r) =
m−|n|2
∑s=0
(−1)s (m−s)!
s!(
m+|n|2 −s
)!(
m−|n|2 −s
)!
rm−2s (3.42)
En la figura3.2se puede ver la forma del polinomio radialRmn(r) para distintos valores
demy n.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
R00
R11
R20
R22
R31
R33
Figura 3.2. Polinomios radiales de Zernike
Los momentos de Zernike forman una caracterizacion ortogonal de la imagen, de modo
que esta se puede recuperar completamente a partir de ellos. Por otra parte, es posible
tambien utilizarlos para obtener una descripcion invariante a rotacion, translacion y cam-
bio de luminosidad media en la imagen.
La invarianza frente a la media se consigue sin mas que normalizar los momentosAmn
dividiendo cada uno de ellos porA00 = media(I)/π. Por otra parte, el modulo del momento
Correspondencia entre puntos singulares de dos imagenes 35
de Zernike es invariante frente a rotaciones. Por tanto, se caracteriza cada imagen por los
momentos normalizados y en modulo:
Amn =|Amn||A00| (3.43)
La invarianza frente a translacion no resulta interesante, puesto que el objetivo de los
momentos es, precisamente, caracterizar la posicion de cada par de puntos homologos. Por
tanto, esutil que el valor de los momentos de Zernike dependa de la posicion del punto.
Los momentos de Zernike permiten caracterizar regiones circulares de una imagen (en-
tornos de cada punto), de modo que cada una de estas regiones se representa por un vector
Amn. La caracterizacion es invariante frente a rotacion y a cambios globales de luminosi-
dad. Es posible comparar el grado desimilitud de dos de estas regiones definiendo alguna
medida de distancia entre sus correspondientes vectores de momentos.
Una busqueda de pares de puntos de control mediante momentos de Zernike puede
hacerse mediante el siguiente algoritmo:
1. Se selecciona un conjunto (reducido) de puntos de interes (por ejemplo, esquinas) en
la imagen origenc.
2. Se hallan todos los puntos de interes candidatos (esquinas) en la imagen de referencia
c′.
3. Para todos los puntos hallados en ambas imagenes, se calcula un conjunto de momen-
tos de Zernike (en modulo y normalizados) en un entorno circular del punto.
4. Para cada uno de los puntosc de la imagen origen, se halla el punto de la imagen
destinoc′ que mas se le parece, usando como medida de similitud la distancia entre
los vectores de momentos de Zernike.
Los parametros de diseno asociados al algoritmo son el conjunto deındices conside-
rados y el tamano del entorno alrededor de cada punto. Se ha comprobado que la tasa de
aciertos del algoritmo mejora cuantos mas momentos se utilicen y cuanto mayor sea el
tamano de la ventana utilizada para calcular el entorno. Por otra parte, aumentar el numero
de momentos o el tamano de la ventana de calculo incrementa considerablemente la carga
computacional. Surge un compromiso de diseno que se debe resolver.
La correspondencia de momentos de Zernike es, con todo, muy sensible al ruido y
a diversos errores. Es frecuente encontrar falsos positivos con valores de distancia entre
momentos muy pequenos: la tasa de aciertos raras veces se acerca al 100 %. Por tanto, es
preciso usar algun sistema robusto para estimar la transformacion a partir de los puntos de
control calculados (§ 3.1.4).
36 Alineamiento de la geometrıa
3.4. Implementacion: bloque de calculo de la transformacion
geometrica
La figura3.3(a)en la pagina siguiente muestra el diagrama del bloqueCGEO, encargado
de encontrar la transformacion geometrica que relaciona las imagenes con el sistema de
coordenadas de referencia. Consta de cuatro modulos:
CGE1. Para cada par de imagenes de entrada halla una estimacion de la transformacion
que las relaciona. Emplea para ello correspondencia entre momentos de Zernike y
estimacion robusta RANSAC. Esta representado en la figura3.3(b).
CGE2. Mejora la transformacion obtenida por el bloque anterior usando el seguidor
KLT. Su diagrama de bloques es el de la figura3.3(c).
TREL. Calcula la transformacion relativa total, que es la composicion de la salida de
los dos bloques anteriores:
Pn,n+1 = Gn,n+1Fn,n+1 (3.44)
TABS. Calcula la transformacion con respecto a la imagen de referencia. Si la imagen
de referencia es la deındiceo,
Pn =
Pn,n+1 · · · Po−1,o cuandon < o
P−1n−1,n · · · P−1
o,o+1 cuandon > o(3.45)
El bloqueCGEO recibe a su entrada un conjunto de imagenes en escala de grises (image-
nes de luminancia) y proporciona a la salida la transformacion geometrica que las relaciona.
En la implementacion definitiva de este modulo, el bloqueCGE2 incorpora una parte del
modulo de calculo de la transformacion radiometrica (CRAD), que se describe en el capıtulo
4. La salida de este modulo es una estimacion de la Funcion de Correspondencia de Inten-
sidades de las imagenes consideradas.
El objetivo deCGE1 es obtener una transformacion de forma robusta, aun a costa de
tener baja precision. Asume que las imagenes de entrada pueden tener cualquier relacion
entre ellas, tanto de posicion y orientacion como de exposicion. Encuentra la transformacion
rıgida que mejor relaciona las dos imagenes.
El modelo de transformacion rıgida es suficiente para una primera estimacion, incluso
cuando las dos imagenes estan relacionadas por una homografıa general. Las restricciones
impuestas a las imagenes (30 % de superficie de superposicion) son suficientes para que el
Implementacion: bloque de calculo de la transformacion geometrica 37
CGE1
CGE2
TREL TABS?
-
-
-
--
-
- -
? ?
Yn Yn
Yn
Yn+1
Yn+1
Fn,n+1
Gn,n+1
Pn,n+1 Pn
Tn,n+1 Pn,n+1
(a) CGEO
SUSAN 1
SUSAN 2
ZERNIKE RANSAC-
-
-
-
-
-
Ii
Ir
c
e′c,c′,d F
(b) CGE1
AGEO1 AHIST
SUSAN 3
KLT LM-
-
- - -
6
- -
Ii
Ir
c′
c,c′ G6 6
6
?F T
(c) CGE2
Figura 3.3. (a) Diagrama de bloques del moduloCGEO del diagrama de bloques del SCID,
representado en la figura2.1 de la pagina 14. (b) y (c) representan respectivamente los
submodulosCGE1 y CGE2. Notese en (a) la salidaTn,n+1, inexistente en el diagrama ge-
neral, debida a que el modulo incluye una parte de analisis radiometrico: el bloqueAHIST de
(c).
38 Alineamiento de la geometrıa
modelo funcione adecuadamente: la deformacion en entornos pequenos (de hasta 31 pıxeles
de diametro) no es tan marcada como para impedir el funcionamiento del sistema.
El modulo parte de dos imagenes consecutivas (en el conjunto de imagenes de luminan-
cia Yn, ver § 2.2.2). En cada una de ellas busca las esquinas adecuadas, con los modulos
SUSAN 1 y SUSAN 2 (§ 3.4.1), para que el moduloZERNIKE (§ 3.4.2) obtenga un conjunto
de puntos de control. A partir de ellos se obtiene la transformacion F de forma robusta,
utilizando RANSAC (§ 3.4.4).
CGE2 mejora la transformacion obtenida enCGE1. Utiliza KLT, que proporciona eficien-
cia y exactitud siempre que las dos imagenes de entrada tengan las caracterısticas adecuadas
a las capacidades del algoritmo. En la practica, esto se traduce en que:
1. Las dos imagenes deben tener las mismas dimensiones.
2. El desplazamiento entre una y otra debe ser pequeno.
3. Las condiciones de exposicion deben ser parecidas.
Para cubrir las dos primeras condiciones, se parte de una estimacion previa de la trans-
formacion entre las imagenesF. AGEO1 aplica esa transformacion a la imagen de entradaIi
para alinearla con la imagen de referenciaIr , restringiendola al marco deesta.
DespuesAHIST corrige las diferencias de exposicion, de modo que ambas imagenes
empleen la misma correspondencia entre cantidad de luz recibida y valor de pıxel mostrado.
Para ello se calcula y aplica la Funcion de Correspondencia de Intensidades, como se vera en
la seccion 4.4.4. Aunque aparezca incluido enCGEO, el modulo AHIST forma parte del
calculo de la funcion de transferencia radiometrica (CRAD).
El resultado de estas transformaciones es una imagen que cumple los requisitos de en-
trada de KLT. A partir de ella, y de un conjunto de esquinas detectado porSUSAN 3 en
la imagen de referencia, se utiliza el moduloKLT. Con los puntos de control obtenidos, se
obtiene la transformacion proyectivaG mediante mınimos cuadrados (moduloLM, § 3.4.4).
3.4.1. SUSAN: modulos de deteccion de esquinas
El objetivo del modulo de deteccion de esquinas es seleccionar puntos de control. Para
ello se utiliza, como ya se ha visto en la seccion 3.2.3, el algoritmo SUSAN de Smith y
Brady.
En principio, es necesario utilizar el detector de esquinas para seleccionar los puntos
de control de la imagen origen, cuyos puntos homologos se van a buscar en la imagen de
referencia. Para ello es necesario limitar el numero de puntos utilizados: una aplicacion
Implementacion: bloque de calculo de la transformacion geometrica 39
sin mas de SUSAN puede dar lugar a algunos miles de puntos detectados, en una imagen
tıpica de alrededor de un megapıxel. Es necesario, ademas, que las esquinas encontradas
se repartan por toda la imagen, ya que se desconoce a priori que parte de la imagen origen
estara superpuesta con la imagen destino. Todo esto es funcion del bloqueSUSAN 1 de la
figura3.3(b)en la pagina37.
El algoritmo de deteccion de esquinas divide la imagen en 12 regiones iguales (que son
cuadradas en una fotografıa tıpica con relacion de aspecto 4:3). En cada una de ellas busca
un numero determinado de esquinas, que seran utilizadas como entradas para los algoritmos
de busqueda de correspondencia entre puntos singulares (secciones3.4.3y 3.4.2).
El numero de puntos seleccionado en cada region es uno de los parametros de diseno
que son crıticos en el sistema, pues supone un compromiso entre la robustez y la eficiencia.
Se ha comprobado que 10 puntos por region son suficientes si las imagenes son de buena
calidad (es decir, con suficientes puntos singulares, pocas oclusiones y una superposicion
razonable). 20 puntos por region es una solucion mas conservadora, suficiente para todos
los casos que se han considerado.
Otro parametro de diseno es el umbral de brillo. Con un bajo valor det, las esquinas
detectadas sonmalasy el rendimiento es bajo. Por otra parte, con un valor det alto se
detectan pocas esquinas y es posible que no coincidan en las imagenes de entrada y de
referencia, por lo que el rendimiento vuelve a bajar. Ası se puede ver en la figura3.4.
De nuevo aparece un compromiso de diseno porque, para una imagen cualquiera, es
imposible saber a priori cuantas esquinas se van a detectar con cada valor de umbral. En el
SCID se emplea un valort = 35. Es mas alto que la propuesta original de Smith y Brady: no
es necesario detectartodaslas esquinas, es preferible detectar menos y mas faciles de seguir.
Es mas bajo que el valoroptimo para imagenes como la de la figura3.4, pero ası se deja un
margen de seguridad que garantiza el funcionamiento en imagenes de menor contraste.
Como se ve en3.4.2, el modulo de alineamiento con momentos de Zernike necesita que
se detecten posibles puntos de control en la imagen destino. El modulo SUSAN 2 (figura
3.3(b)) utiliza el algoritmo SUSAN aplicado a toda la imagen, con el mismo umbralt que
en la imagen origen (t = 35en el SCID).
El moduloSUSAN 3, en la figura3.3(c), localiza tambien un numero prefijado de puntos,
pero restringidos al marco comun de las imagenesIi e Ir . Para ello, selecciona 500 puntos
x′ ∈ Ir tales queF−1[x′] ∈ Ii .
La tabla3.1resume los parametros de diseno de los modulosSUSAN. Su implementacion
se ha basado en el codigo publicado por Smith y Brady en [32].
40 Alineamiento de la geometrıa
Modulo SUSAN 1 SUSAN 2 SUSAN 3
Umbral de brillo 35 35 35
Max. num. esquinas 20×12 ∞ 500
Tabla 3.1. Parametros de diseno de los modulos SUSAN
3.4.2. ZERNIKE: correspondencia entre puntos de control
Dados un conjuntock deN puntos de control en la imagenIi , y de todas las esquinas
e′j detectadas en la imagenIr , ZERNIKE debe encontrarc′k ⊂ e′k de modo que cada
par(ck,c′k) sean puntos homologos.
Dado que los puntosck estan repartidos por toda la imagenIi y que la superposicion
sera siempre inferior al 100 %, alguno de los puntosck carecera de homologo en la imagen
Ir . Por ello a cada par(ck,c′k) le acompana una medida de confianza (distancia)dk, de modo
que un valor bajo dedk equivale a una probabilidad alta de que(ck,c′k) sean realmente
homologos.
El funcionamiento interno es el siguiente:
1. Se parte deN puntos de la imagen de entrada seleccionados conSUSAN 1 y de todas
las esquinas posibles de la imagen de referencia, halladas conSUSAN 2.
2. En cada una de las esquinas halladas se calcula un conjunto de momentos de Zernike
de ındicesmn en un entorno de diametroD pıxeles. Cada puntock o e′j se carac-
teriza por un vector de momentos de Zernike normalizados y en modulo:Ck y E j
respectivamente.
3. Para cadaCk
a) se calculan todas las distancias
dk j = ‖Ck−E j‖ (3.46)
b) se busca la mınima de las distancias, de modo que
dk = mınj
dk j (3.47)
c′k = e′r (3.48)
donder = argmınj
dk j.
Implementacion: bloque de calculo de la transformacion geometrica 41
0 5 10 15 20 25 30 35 40 45 50
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Variacion del orden de los momentos MN
2 31 35 3 31 35 4 31 35 5 31 35 6 31 35 8 31 3510 31 3512 31 35
MN D t
0 5 10 15 20 25 30 35 40 45 500
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Variacion del diametro de la ventana D
6 9 35 6 15 35 6 21 35 6 31 35 6 41 35 6 61 35 6 81 35 6 101 35
MN D t
(a) (b)
0 5 10 15 20 25 30 35 40 45 500.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Variacion del umbral de brillo t
6 31 25 6 31 30 6 31 35 6 31 40 6 31 50 6 31 70 6 31 90
MN D t
(c) (d)
Figura 3.4. La figura representa la tasa de aciertos acumulada para los pares de momentos de
Zernike de menor distancia. En la leyenda de cada figura se representan los valores de MN,
D y t utilizados, que varıan en las figuras (a), (b) y (c) respectivamente. En (d) se muestra la
composicion de las dos fotografıas empleadas en las pruebas.
42 Alineamiento de la geometrıa
El conjunto de parametros de diseno y sus valores aparece en la tabla3.2. Solo son
D y MN, ya que el valorN es un parametro del moduloSUSAN 1. El conjunto deındices
utilizados para los momentos viene fijado por el maximo orden empleado. Ası, MN = 6
quiere decir que se emplean todos los momentos posibles tales quem= 1,2, . . . ,6 y n sea
un valor valido para cadam, segun se mostro en la ecuacion (3.40) de la pagina34.
Parametro Valor Descripcion
D 31 Diametro de la mascara
MN 6 Conjunto de momentos de Zernike
Tabla 3.2. Parametros de diseno del moduloZERNIKE
La figura3.4en la pagina anterior muestra la variacion del rendimiento del modulo en
funcion de sus parametros de diseno. Se ve que cualquier valor de MN mayor o igual que
6 obtiene una tasa de aciertos similar (y buena, en este caso). Por otro la tasa de aciertos
mejora para valores deD crecientes. Sin embargo, aumentarD aumenta tambien el tiempo
de computo, por lo que se debe alcanzar un compromiso. El valor deD = 31 adoptado no
es excesivamente costoso computacionalmente y proporciona una buena tasa de aciertos.
3.4.3. KLT: modulo de seguimiento de puntos
KLT implementa el seguidor de puntos (2D-feature tracker) de Kanade-Lucas-Tomasi.
Se basa en la implementacion de S. Birchfield [2]. Utiliza una descomposicion piramidal
de la imagen: primero hace el seguimiento de puntos en una version submuestreada de la
imagen y luego refina la aproximacion. Todo el proceso de seguimiento esta controlado por
un conjunto de parametros, que definen elcontexto de rastreo(tracking context). Se
muestra en la tabla3.3
El parametrosearch range determina el numero de niveles de la piramide de mul-
tirresolucion (nPyramidLevels), y el factor de submuestreo entre cada una de ellas
(subsampling). El objetivo es que el maximo submuestreo (es decir, el producto de ambas
variables) sea aproximadamente
MS≈ 2search range
window dim(3.49)
Ademas, se trata de minimizar el numero de niveles de la piramide, y se limita a 8 el maximo
valor permitido para la variablesubsampling.
Ası, los valores de los parametros para una ventana de15×15pıxeles son los mostrados
en la tabla3.4. Una vez conocidosestos, el algoritmo KLT de Birchfield funciona de la
siguiente manera:
Implementacion: bloque de calculo de la transformacion geometrica 43
Parametro Valor Descripcion
search range 15 Superficie de busqueda: maximo desplaza-
miento admitido para las imagenes, en pıxe-
les.
smooth sigma fact 0.1 Factor que determina la anchura del filtro de
suavizado que se aplica a la imagen.
pyramid sigma fact 0.9 Factor que determina la anchura del filtro de
suavizado que se aplica a cada imagen antes
de crear el siguiente nivel de la piramide.
window dim 15 Largo y ancho de las ventanas que se utilizan
como entorno de los puntos.
max iterations 10 Maximo numero de iteraciones del algoritmo.
max residue 7 Maximo residuo permitido antes de dar por
perdido al punto.
Tabla 3.3. Parametros deltracking context del moduloKLT
search range subsampling nPyramidLevels border
1 - 6 4 1 11
7 - 21 2 2 24
22 - 35 4 2 44
36 - 64 8 2 88
65 - 521 8 3 704
522 - >1000 8 4 5632
Tabla 3.4. Relacion entre distintos parametros de la implementacion de Birchfield de KLT
44 Alineamiento de la geometrıa
En primer lugar, las imagenes se suavizan mediante la convolucion de un nucleo gaus-
siano deσ = smooth sigma fact×window dim. Con ello se mejora el proceso de segui-
miento, ya que se eliminan mınimos locales de la funcion distancia de KLT dentro de cada
ventana, evitando que el proceso iterativo de lugar a falsos positivos.
Posteriormente se construye una piramide multirresolucion, connPyramidLevels ni-
veles y un factor de submuestreosubsampling entre ellos. Antes del submuestreo se filtra
la imagen con una mascara gaussiana deσ = pyramid sigma factor×subsampling.
El modulo de seguimiento recibe como entrada la posicion en la imagen origen de los
puntos a seguir. El punto de partida para la busqueda es el que tiene las mismas coordenadas,
pero en la imagen destino. A partir de ahı, se aplica iterativamente el algoritmo hasta que se
da uno de los siguientes casos:
1. La posicion del punto se corrige menos de un cierto valormin displacement.
2. El determinante de la matriz de gradientes es menor que un cierto valor
min determinant.
3. El numero de iteraciones excedemax iterations.
4. La posicion del punto queda mas cerca del borde de la imagen que un cierto margen
de seguridadborder, que depende desearch range segun aparece en la tabla3.4.
5. El residuo es demasiado grande, es decir, la diferencia media de intensidades entre
los pıxeles de las ventanas es superior amax residue.
En el primer caso el seguidor KLT ha funcionado conexito. El resto de las situaciones
indican que el punto buscado se ha perdido, tıpicamente debido a un error en el punto de
partida o a una oclusion. En la practica, las perdidas mas comunes se dan por las situaciones
4 y 5.
La variablemin displacement tiene un valor prefijado de 0.1 pıxeles en la imple-
mentacion de Birchfield, que se ha mantenido para el SCID por considerarlo adecuado.
min determinant apenas influye en los resultados de las imagenes tomadas, ya que se
mantiene en 0.01, que es un umbral bastante bajo. El determinante de la matriz de gradien-
tes es el producto de sus autovalores: un valor bajo quiere decir que el seguidor se situa en
una zona uniforme (como se vio en3.2.1) y, por tanto, no es fiable seguir utilizando el gra-
diente para tratar de encontrar el punto. Ademas, al ser una zona uniforme, el punto buscado
(que es una esquina) no puede encontrarse allı.
Implementacion: bloque de calculo de la transformacion geometrica 45
El valor demax iterations limita la carga computacional admisible. En la practica,
cualquier valor por encima de 10 da lugar a resultados similares: normalmente antes de la
decima iteracion se ha producido alguno de los otros casos.
Despues de varias pruebas, se ha utilizadowindow dim = 15 y un area de busqueda
(search range) tambien de 15 pıxeles. Esto proporciona un valor deborder= 24, que es
adecuado para imagenes en torno al megapıxel de resolucion.
smooth sigma fact y pyramid sigma fact toman los valores 0.1 y 0.9 respectiva-
mente, que son los propuestos en el desarrollo original. El resultado final no es excesi-
vamente sensible a la modificacion de estos valores, al menos dentro de unos margenes
razonables: cualquier valor de 0.05 a 0.2 y de 0.7 a 0.95 (respectivamente), por ejemplo,
tiene un comportamiento muy parecido.
El parametro mas crıtico esmax residue. Un valor bajo da lugar a muchas perdidas,
pero un valor alto puede hacer que se consideren como aciertos resultados incorrectos. En
el SCID se usamax residue = 7 como valor de compromiso, con buenos resultados.
La implementacion de Birchfield esta codificada en C. Se ha introducido en el programa
gracias a los interfaces de programacion en C que incluyeMATLAB r (los llamadosMEX-
files).
3.4.4. LM y RANSAC: modulos de calculo de la transformacion
El SCID incluye dos modulos para el calculo de la transformacion geometrica a partir
de pares de puntos de control:LM y RANSAC. El primero resuelve el calculo por mınimos
cuadrados, utilizando el metodo de Levenberg-Marquardt (§ 3.1.3). Los parametros de la
homografıa se obtienen de la solucion de un sistema lineal de ecuaciones como (3.11) y
(3.12).
El moduloRANSAC recibe como entrada el conjunto de puntos de control obtenido por
ZERNIKE, ası como la similitud (distancia) entre ellos. A la salida proporciona la transfor-
macion que mejor relaciona dichos puntos entre sı, teniendo en cuenta la mas que probable
presencia de falsos positivos (outliers). El procedimiento es el siguiente:
1. Se ordenan los puntos de control de la entrada, de menor a mayor distancia.
2. Se toman losK mejores puntos (menores distancias) y se halla la transformacion
geometrica que mejor ajusta esos puntos entre sı, empleando para ello una estimacion
robusta mediante el algoritmo RANSAC adaptativo (§ 3.1.4).
3. Si el numero deinliersobtenido al aplicar RANSAC,ni , es menor que un determinado
valornp, se repite el punto2 con un mayor valor deK.
46 Alineamiento de la geometrıa
4. El algoritmo iterativo termina en uno de los siguientes casos:
a) Se cumple queni ≥ np.
b) El numero de puntos empleadosK supera un valor prefijadoKmax. En tal caso,
se selecciona la transformacion que mayor numero de puntos haya empleado en
las distintas iteraciones del algoritmo.
c) El algoritmo RANSAC es incapaz de encontrar una transformacion para nin-
guno de los valores deK permitidos.
5. En los dos primeros casos se ha encontrado una transformacion para relacionar las
imagenes de referencia y de entrada. En elultimo, se considera que el algoritmo no
ha sido capaz de obtener una transformacion adecuada.
La transformacion F es una transformacion plana con cuatro grados de libertad: trans-
lacion en ambos ejes (independientemente), escalado (conjunto para ambas dimensiones)
y rotacion plana. Por tanto, se puede caracterizar por el vector de parametros(δ1,δ2,k,φ),
que da lugar a la matriz de transformacion:
F =
kcosφ −ksenφ δ1
ksenφ kcosφ δ2
0 0 1
(3.50)
Es un transformacion rıgida: no modifica losangulos entre las rectas. Por tanto, aunque
la transformacion se estime con algun error, es posible recuperarse de ellos facilmente al
aplicar KLT.
Por otra parte, los parametros de los que depende la transformacion tienen un significado
fısico definido. Esto hace posible implementar controles absolutos de las transformaciones
permitidas (por ejemplo, limitar el valor del escalado entre imagenes), para eliminar falsas
estimaciones. Para ello es preciso un cierto conocimientoa priori de la transformacion.
Este tipo de control no se ha incorporado en la version definitiva del SCID, para dar mayor
flexibilidad al conjunto de transformaciones permitidas, pero ha sido probado conexito en
algunas pruebas previas.
RANSAC requiere una funcion auxiliar que determine cuando un determinado par de
puntosx,x′ se ajusta a una transformacionF. El criterio adoptado es que
‖x′−F[x]‖ ≤ t (3.51)
dondet es un valor umbral, que se ha fijado en 10 pıxeles.
El conjunto de parametros de diseno y sus valores aparece en la tabla3.5.
Implementacion: bloque de calculo de la transformacion geometrica 47
Parametro Valor Descripcion
K 20 Numero inicial de pares de puntos seleccionados
Kmax 100 Maximo numero de pares de puntos seleccionados
t 10 Distancia umbral de losinliers aF (en pıxeles)
np 10 Numero de aciertos requerido
Tabla 3.5. Parametros de diseno del moduloRANSAC
Para la implementacion enMATLAB r deLM se ha utilizado la funcion cp2tform del
Image Processing Toolbox. El codigo del algoritmo RANSAC se ha tomado de [17].
48 Alineamiento de la geometrıa
CAPITULO 4
Reconstruccion de la imagen radiometrica
Este capıtulo aborda las partes del sistema relacionadas con la amplitud: alineamiento
radiometrico, calculo de la funcion de transferencia, composicion en amplitud, compresion
de rango dinamico, aspectos cromaticos... Tiene tres partes diferenciadas, de longitud des-
igual.
La primera parte abarca desde la seccion4.1hasta la4.4. En ella se analiza el problema
radiometrico, en los terminos descritos en1.2.3. Se consideran imagenes de intensidad (en
escala de grises) que solo difieren en su exposicion. A partir de ellas, se analiza la correspon-
dencia entre sus valores de intensidad y la posibilidad de recuperar laimagen radiometrica
de la que provienen, es decir, la cantidad de luz que llega al sensor de la camara.
En esta parte se seguiran fundamentalmente dos grupos de referencias: los trabajos de
Steve Mann, de la Universidad de Toronto [20, 23, 22, 21] y los de Michael Grossberg y
Shree K. Nayar, de la Universidad de Columbia [7,8].
Las secciones4.1 a 4.3 corresponden al desarrollo teorico del problema y al plante-
amiento formal de sus soluciones. En4.4se analiza la implementacion del bloque funcional
CRAD que, como se vio en la2.2.4, es el encargado de recuperar la funcion de transferencia
de la camara y las constantes de exposicion de las imagenes. En esta seccion se analizan
tambien otros aspectos de la implementacion. Concretamente, en4.4.5se justifica como se
deben sumar las imagenes de cantidad de luz para componer el mosaico (bloqueCOMP).
La segunda parte del capıtulo se corresponde con la seccion 4.5. En ella se analiza el
49
50 Reconstruccion de la imagen radiometrica
problema de la compresion de rango dinamico. Se comparan distintas soluciones y se des-
cribe con detalle la solucion adoptada: compresion Retinex. Se describe el funcionamiento
interno del bloqueCPRD de compresion del rango dinamico.
Finalmente la tercera parte es una breve seccion, la4.6. All ı se analiza la aplicacion a
imagenes en color de las tecnicas descritas a lo largo del capıtulo y se justifican las trans-
formaciones de RGB a escala de grises que se aplican en el SCID.
4.1. Correspondencia radiometrica entre imagenes
Se consideran dos imagenesIi e I j , obtenidas de la misma escenaE y perfectamente
registradas, de modo queIi(x) e I j(x) representan el mismo puntoX de la escena tridimen-
sional. Las dos imagenes, por tanto, provienen de una mismaimagen radiometrica q(x),
pero con distintas constantes de exposicion. La figura4.1 lo describe graficamente. En el
resto del capıtulo, para simplificar, se prescindira en la notacion de la dependencia explıcita
dex, salvo cuando sea necesario.
q
qi
q j
Ii
I j
f
f
k
ki
k j
τ
R
µ
?
-
-?
Figura 4.1. Problema radiometrico. k es la constante de exposicion relativa entre las dos
imagenes, yτ es la Funcion de Correspondencia de Intensidades (FCI).
Para cada punto de la imagen se cumple que:
q =qi
ki=
q j
k j(4.1)
por lo que
q j =k j
kiqi = kqi (4.2)
Correspondencia radiometrica entre imagenes 51
Por tanto, siendoq= g(I) la funcion inversa def , es decir, siendog= f−1, se tiene que
g(I j) = kg(Ii) (4.3)
A partir de f y k es posible calcular, siguiendo el diagrama de la figura4.1, la funcionτque relaciona las dos imagenesI j = τ(Ii), mediante la expresion:
τ = f k f−1 = g−1kg (4.4)
τ se denominaFuncion de Correspondencia de Intensidades(FCI).
La aplicacion directa de (4.4) proporcionaτ a partir de los valores conocidos def y k.
En un caso practico, es posible calcularτ directamente, a partir de los valores deIi e I j ,
como se ve en la seccion4.1.2, por lo que no es habitual usar (4.4) con ese fin.
Es bastante frecuente disponer deτ, hallada a partir de las imagenes de entrada, pero
desconocerf , k o ambas. Para calcularlas se debe hacer uso de ecuaciones del tipo:
f (kq) = τ ( f (q)) (4.5)
g(τ(I)) = kg(I) (4.6)
donde, para simplificar, se asimilaq = qi , lo que equivale aki = 1 y k j = k.
La ecuacion (4.5) se denominaecuacion comparametrica, porque relaciona la misma
funcion con dos escalados distintos. En [20], S. Mann estudia como resolver analıticamente
este tipo de ecuaciones, para un conjunto determinado de modelos funcionales deτ.
Grossberg y Nayar [7,8] utilizan (4.6) para hallarg a partir del valor empırico deτ. En
4.3.3se describe como resolver estos dos tipos de ecuaciones.
4.1.1. La Funcion de Correspondencia de Intensidades
La Funcion de Correspondencia de Intensidadesτ (Intensity Mapping Function[7] o
bien Comparametric Function[20]) es aquella que relaciona los valores de pıxel (o de
intensidad) entre dos imagenes, provenientes de la misma imagen de cantidad de luzq, pero
tomadas con distintas constantes de exposicion; segun la ecuacion (4.4). Si la funcion de
transferenciaf es suave, monotona creciente y normalizada, conf (0) = 0 (ver §4.2), τcumple las siguientes propiedades:
1. τ(0) = 0,
2. τ es monotona creciente, y
3. I ≤ τ(I) si k > 1, es decir,τ esta por encima de la recta identidad.
52 Reconstruccion de la imagen radiometrica
En [20, tabla 2, pag 1349] se presenta otro conjunto de propiedades, que permite hacer
transformaciones entre ecuaciones comparametricas para ayudar a encontrar una solucion
analıtica.
Para calcularτ es necesario disponer de dos imagenes bien alineadas, es decir, que
representen la misma escena. En principio, y en ausencia de ruido,((dado el histograma de
una imagen, el histograma de la segunda es necesario y suficiente para determinar la funcion
de correspondencia de intensidades)) [7, pag. 1461].
Sea una imagen continua con valores continuos de intensidad, y dearea unidad. Elarea
total de la imagen con valores de intensidad entre0 e I viene dado por una funcion monotona
H(I), que es el histograma acumulado. En efecto, el histograma continuoh proporciona
H(I) =∫ I
0h(u)du (4.7)
Considerando dos imagenes que solo difieren en exposicion, cada intensidad de la ima-
genIi corresponde a la intensidadI j en la otra imagen, conI j = τ(Ii). El conjunto de puntos
en la primera imagen con intensidad menor o igual queIi es el mismo conjunto que, en la
segunda imagen, tiene intensidad menor o igual queI j . Por tanto, susareas seran las mismas
y se cumpliraH j(τ(Ii)) = Hi(Ii). Despejando para una intensidad generica, queda
τ(I) = H−1j (Hi(I)) (4.8)
Es decir, que la FCI entre dos imagenes es la misma funcion que ajusta el histograma de
una al de la otra. Este ajuste de histogramas es una tecnica estudiada para realzar imagenes.
Aquı se aplica como parte del procesado radiometrico.
El calculo directo de la FCI como ajuste de histogramas es exacto si las imagenes no
tienen ruido y si se desprecia el efecto de la cuantificacion. Grossberg y Nayar han obtenido
buenos resultados en imagenes digitales (y, por tanto, discretas y cuantificadas) en las que
alguno de los elementos de la escena se movıa (es decir, con oclusiones entre las imagenes).
Mann propone utilizar un procesado previo para reducir el efecto del ruido. Se estudia a
continuacion.
4.1.2. Calculo de la FCI a partir del comparagrama
Dadas dos imagenes registradas (aunque con posibles errores, ruido y oclusiones), se
denominacomparagrama, J, al histograma conjunto de ambas imagenes. Es una matriz de
N×N, dondeN es el numero de niveles de gris que tienen las imagenes.J(n,m) es igual al
numero de pıxelesx tales queIi(x) = n e I j(x) = msimultaneamente (suponiendo que los
valores posibles de intensidad son enteros).
Correspondencia radiometrica entre imagenes 53
Figura 4.2. La figura representa el comparagrama de dos imagenes alineadas, en escala
logarıtmica. En blanco aparece elarea donde el comparagrama toma valores mas altos. La
lınea roja que esta dibujada sobre esta zona la Funcion de Correspondencia de Intensidades
(FCI).
El aspecto tıpico de un comparagrama de dos imagenes alineadas (aunque con posibi-
lidad de errores y oclusiones) es el de la figura4.2. Como se puede apreciar, los maximos
del comparagrama siguen aproximadamente una curva, que se puede asimilar a la FCI. Por
tanto, el comparagrama se puede utilizar para el calculo de la FCI, procediendo del siguiente
modo:
En primer lugar, se procesa para eliminar el efecto del ruido. Se considera el compara-
grama modificado
J(i, j) =
log(J(i, j)+ ε)− log(ε) si J(i, j)≥ u
0 si J(i, j) < u(4.9)
dondeu es un umbral que se utiliza para eliminar falsos valores aislados yε > 0 evita el
calculo del logaritmo de cero.
Con el comparagrama modificado se calculan las marginales:
hi =N−1
∑j=0
J(i, j) (4.10)
h j =N−1
∑i=0
J(i, j) (4.11)
que serıan los histogramas de ambas imagenes si se considerara el comparagrama original.
Al considerarse en su lugarJ lo que se obtiene es una especie dehistograma modificado,
54 Reconstruccion de la imagen radiometrica
que Mann denominahistograph. A partir de ellos se obtienen sus versiones acumuladas,
denominadascumulagraphs:
H(u) =u
∑I=0
h(I) (4.12)
El grafo comparametrico (comparagraph), T, se obtiene de representarHi frente aH j .
T(I) = H−1j
(Hi(I)
)(4.13)
El grafo comparametrico es la aproximacion numerica a la FCI subyacente entre las dos
imagenes, pero calculada de modo que se trate de minimizar el impacto del ruido y de los
errores sobre el histograma. Todo este proceso ha sido extraıdo de [22].
La ecuacion (4.9) define un posible procesado para eliminar el peso de las oclusiones en
el calculo deT. Es posible emplear distintos metodos sobreJ para obtenerJ. En concreto,
si J = J el resultado obtenido es un simple ajuste de histogramas (que es correcto en el caso
ideal: en ausencia de ruido, errores u oclusiones).
4.1.3. Alineamiento en amplitud de dos imagenes
Dadas dos imagenes de distinta exposicion, sus valores de intensidad estan relacionados
por la FCI. Por tanto para alinearlas en amplitud es necesario y suficiente conocer y aplicar
dicha funcion. En otras palabras,para alinear dos imagenes en amplitud, basta con conocer
la FCI y no es necesario tener informacion de la funcion de transferenciaf .
El ajuste de histogramas es, por tanto, la transformacion que mejor relaciona dos image-
nes que esten perfectamente registradas en su geometrıa. Tambien lo es si el alineamiento
no es perfecto, pero ambas imagenes tienen aproximadamente el mismo histograma que si
lo fuera [7].
4.2. Modelos de funcion de transferencia radiometrica
Aunque la funcion de transferenciaf no es necesaria para determinar el alineamiento
en amplitud entre dos imagenes, sı lo es para hallar el valorq de cantidad de luz que las
ha originado. Esto, a su vez, es un paso previo para lograr imagenes de rango dinamico
ampliado, que es uno de los objetivos perseguidos en el proyecto. Es importante, pues,
caracterizar la forma de dicha funcion.
En principio, los sensores CCD que se utilizan en las camaras digitales actuales tienen
una respuesta aproximadamente lineal. Tal vez por ello sea comun ((la creencia erronea
de que las camaras producen una salida lineal y de que los dispositivos de presentacion
Modelos de funcion de transferencia radiometrica 55
responden linealmente)) [20, pag. 1392]. En efecto, como se analizo en1.2.3, las camaras
incorporan algun tipo de procesado no lineal, como puede ser la saturacion de los niveles
mas altos (blancos).
Es posible modelar, al menos, las restricciones mas importantes que se deben imponer
a f [8]:
f es la misma para todos los pıxeles del sensor.
f (0) = 0.
f es monotona creciente.
Con estas condiciones se define un espacio de funcionesWRF al que debe pertenecerf .
WRF es un conjunto convexo y, por tanto, cualquier combinacion lineal
f =N
∑i=1
αi fi con
fi ∈WRF ∀i = 1. . .N
αi ≥ 0 ∀i = 1. . .NN
∑i=1
αi = 1
(4.14)
verifica quef ∈WRF.
En [8] Grossberg y Nayar imponen la normalizacion f (1) = 1 como una condicion mas
para las funciones de respuesta. Sin embargo, no es necesaria para caracterizar las propie-
dades deWRF que se van a utilizar y, ademas, no se cumple en los modelos de funciones de
Mann. Por eso no se incluye esta restriccion.
4.2.1. Modelo de Mann
Mann estudia en [20] distintos modelos de respuesta de camaras, de los que analiza
tanto la funcion de transferenciaf como la FCI asociadaτ (queel denota porg). La funcion
considerada preferible al resto es
f (q) =(
ebqa
ebqa +1
)c
=(
eaQ+b
eaQ+b +1
)c
(4.15)
dondeQ = log(q) es la cantidad de luz en escala logarıtmica.
Este modelo proporciona una forma cerrada para la FCI
τ(I) =
(c√
I ka
c√
I (ka−1)+1
)c
(4.16)
a partir de la cual se obtienef si se resuelve una ecuacion comparametrica como (4.5).
56 Reconstruccion de la imagen radiometrica
El parametrob de la funcion de transferencia es un factor de escala arbitrario (en escala
lineal), que no es posible recuperar a partir deτ, pero que tampoco es necesario en ningun
momento para registrar las imagenes de cantidad de luz.
Segun el propio Mann,((este modelo describe una gran variedad de camaras y ha sido
usado conexito en numerosas aplicaciones de procesado de imagenes)) [21].
Si se considera el valor arbitrariob = 0 y se analiza la funcion f se comprueba que:
f (q) ≈ qac si qa ¿ 1
f (q) ≈ 1 si qa À 1(4.17)
Por tanto, se puede interpretar el modelo como una funcion potencial (la curvagamma
que se utiliza tıpicamente para modelar camaras y monitores de tubos rayos catodicos) que
incorpora compresion para valores altos de la entrada. Con esta interpretacion,γ = ac.
4.2.2. Modelos de Grossberg-Nayar-Mitsunaga (GNM)
Grossberg-Nayar [8] y Mitsunaga-Nayar [25] utilizan distintos modelos basados en
composiciones lineales de funciones deWRF. En efecto, se selecciona una base, preferi-
blemente ortogonal, de un subespacio deWRF y se haya el conjunto de coeficientescnque, para la funcion
f (q) =N
∑n=0
cnhn(q) (4.18)
mejor se ajusten a la ecuacion (4.6). Se puede utilizar, del mismo modo, la funcion de
transferencia inversag = f−1, que tambien verifica las propiedades deWRF:
g(I) =N
∑n=0
cnhinvn (I) (4.19)
Mitsunaga y Nayar proponen como base un conjunto de polinomios de orden bajo
hn(q) = qn n = 0. . .N (4.20)
dondeN toma tıpicamente un valor entre 4 y 8, en funcion de la precision requerida.
Grossberg y Nayar realizan, posteriormente, un trabajo adicional. Recogen datos
empıricos de calibracion de diversas camaras comerciales y hallan las componentes prin-
cipales del conjunto mediante PCA (Principal Component Analysis, Analisis de Compo-
nentes Principales). Con las primeras autofunciones del analisis PCA consiguen modelar
la respuesta en amplitud de un importante numero de camaras diferentes. En este modelo,
la base de datos tomada se denomina DoRF (Data of Response Functions) y el modelo en
cuestion, EMoR (Empirical Model of Response).
Modelos de funcion de transferencia radiometrica 57
−10 −8 −6 −4 −2 0 2 4 6 8 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Q
I
−10 −8 −6 −4 −2 0 2 4 6 8 1010
−7
10−6
10−5
10−4
10−3
10−2
10−1
100
Q
cert
idum
bre
(a) (b)
Figura 4.3. Principio de Wyckoff. (a) representa la funcion de transferencia F para distintas
exposiciones. (b) representa las certidumbres correspondientes. Para un valor deε = 10−3, el
rango dinamico de cada curva por separado es de 7.6 (en unidades arbitrarias). Combinando
la respuesta de las tres curvas, el rango dinamico aumenta hasta 16.6.
4.2.3. Rango dinamico, sensibilidad y principio de Wyckoff
Para cualquiera de los modelos estudiados (y, en definitiva, para cualquier camara
comercial que se pueda emplear) la funcion de transferencia en escala logarıtmicaI = F(Q),
tiene la forma aproximada de las curvas de la figura4.3(a).
La curva presenta una zona de mayor sensibilidad, en el centro, y zonas de saturacion (o
de baja sensibilidad) en los extremos. Esto se puede caracterizar mediante las denominadas
curvas decertidumbrec, donde
c =d f(q)
d [log(q)]=
dF(Q)dQ
(4.21)
dondeF(x) = f (log(x)). La figura4.3(b) representa una familia de curvas de este tipo.
Es posible considerar el rango dinamico de la camara (a la entrada) como el segmento
de valores deQ tales quec(Q) > ε, es decir, el conjunto de valores de entrada para los que
el valor obtenido a la salida presenta una sensibilidad apreciable.
Una variacion k de la exposicion supone un cambio en la cantidad de luz de entrada,
que pasa a serq′ = kq. En escala logarıtmica, esto supone un desplazamiento de la funcion
de transferencia en horizontal:Q′ = log(k)+Q. La respuesta en amplitud de la camara es,
en realidad, toda una familia de curvas como las representadas en la figura4.3. Cada curva
corresponde a un valor distinto de exposicion.
Esto conduce inmediatamente a la posibilidad de aumentar el rango dinamico de la
camara, sin mas que tomar varias imagenes de la misma escena con distintas constantes de
58 Reconstruccion de la imagen radiometrica
exposicion y combinarlas de forma adecuada. Esta tecnica ha sido denominada((principio de
Wyckoff)) [20] en honor a C. W. Wyckoff, inventor de la((pelıcula fotografica de respuesta
extendida)).
4.3. Estimacion de la respuesta en amplitud de una camara
La recuperacion de la respuesta en amplitud de la camara (o funcion de transferencia
radiometrica) es imprescindible para poder aplicar el principio de Wyckoff y obtener image-
nes de rango dinamico ampliado. Es, en definitiva, un paso necesario para poder calcular la
imagen radiometrica en el planoV, que es el objetivo perseguido en este proyecto.
Calcular la funcion de transferencia de la camara requiere algun conocimiento a priori
de la misma. El metodo mas comun es la calibracion, tomando una imagen patron conocida
y comparando directamente el valor de entrada con el de salida. Esta tecnica presenta nu-
merosas complicaciones, por la dificultad de conseguir un patron de irradiancias estable y
controlado. Ademas son numerosos los casos donde, como en este proyecto, no se dispone
de imagenes patron tomadas por la camara.
Se ha demostrado [20, 7] que es posible calcular, bajo ciertas restricciones, la funcion
de transferencia de la camara a partir de imagenes de una misma escena que solo difieren
en su exposicion. Por otro lado, asumiendo que la funcion f cumple con los requisitos
expuestos en el apartado4.2, toda la informacion aportada por las imagenes comparadas
(Ii , I j ) esta contenida en la funcion de transferencia de intensidades asociada.
Por tanto, considerando la notacion de la figura4.1, lasunicas variables que entran en
juego sonf , k y τ (o su aproximacion numericaT, vista en§4.1.2). Ya se ha comprobado
que es posible obtenerτ a partir de las otras dos. Se analizara ahora como es posible obtener
k y f a partir deτ , y que lımites y restricciones tienen estos calculos.
4.3.1. Lımites a la obtencion de la respuesta en amplitud
Es imposible recuperar unıvocamentef a partir de la FCI asociada. Existen algunos
lımites matematicos asociados al hecho de que la FCI impone restricciones af (k) con
respecto af (kq), pero no dice nada acerca de la forma de la propia funcion f . Existe un
conjunto infinito de funcionesf que cumplen una misma ecuacion comparametrica. Es
importante caracterizarlo adecuadamente, para ver que relacion tienen entre sı las funciones
de dicho conjunto y como es posible (si lo es) seleccionar la que mejor representa a laf
buscada.
Estimacion de la respuesta en amplitud de una camara 59
Fuente: Steve Mann, [22]
Figura 4.4. Dos posibles soluciones de la ecuacion comparametricaτ = 1.68I , obtenidas
conk = 2. Tanto la curva suave (mas gruesa) como la funcion pseudo-periodica triangular-
cuadrada dan lugar a la misma curvaτ.
El paso deτ a f debe dar solucion a dos indeterminaciones (o ambiguedades): indeter-
minacion auto-similar e indeterminacion exponencial [7].
La indeterminacion auto-similar(self-similar ambiguity) surge al tratar de obtener di-
rectamente la curvaf a partir deτ, sin ningun modelo establecido a priori, aunque con la
exposicionk conocida. Una ecuacion comparametrica solo relaciona el valor def (q) con el
de f (kq). Por tanto, es posible construir una solucion exacta a este tipo de ecuaciones del
siguiente modo:
Se toma una funcion cualquieraφ , definida en un intervalo(q,kq), de modo que
φ(kq) = τ(φ(q)).
Se replica esta funcion en el resto de la rectaq aplicando iterativamenteτ y τ−1 a la
funcion φ .
Con este proceso se obtiene una ciertaperiodicidad auto-similar, como se muestra en
la figura4.4. Cumpliendo la periodicidad, cualquier funcion φ puede resolver la ecuacion
comparametrica.
Esta indeterminacion se puede resolver imponiendo algunas condiciones a la funcion f ,
tıpicamente de suavidad. Todos los modelos parametricos de funciones de respuesta (entre
ellos, los estudiados en4.2.1y 4.2.2) dan alguna solucion a este problema. Es posible resol-
verla, tambien, sin necesidad de modelos, si se consideran al menos tres imagenes distintas.
Por lo tanto, no es muy importante de cara a la aplicacion practica.
La indeterminacion exponencial(exponential ambiguity) o indeterminacion gamma
afirma que es imposible determinar unıvocamente y a la vez los valores de exposicion
60 Reconstruccion de la imagen radiometrica
y funcion de transferencia. En concreto, si(k,g) es una solucion deτ(I) = g−1(kg(I)),
tambien lo es(kγ ,gγ).
En adelante, se denominara conjunto de Grossberga cualquier conjunto de funciones
de respuesta que difieran solo en sugamma. Es decir, para cada par de funciones inversas
(gi ,g j) del mismo conjunto de Grossberg existe una constanteγ tal quegγi = g j .
Esta indeterminacion tiene fuertes implicaciones en el sistema que se desarrolla en este
proyecto, y se debe tener en cuenta en el resto del desarrollo.
4.3.2. Estimacion de la exposicion
Bajo ciertas condiciones, es posible estimar la constante de exposicion entre dos image-
nes sin conocer la funcion de transferencia de la camara. Partiendo de la ecuacion (4.6), se
diferencia a ambos lados:
g′(τ(I))τ ′(I) = kg(I) (4.22)
k = τ ′(I)g′(τ(I))
g′(I)(4.23)
La ecuacion (4.23) debe cumplirse para todo valor deI . En concreto, sig′(0) 6= 0 en-
tonces
k = τ ′(0) (4.24)
Este desarrollo, sin embargo, no esta libre de la indeterminacion exponencial. En efecto,
si g′(0) 6= 0, entonces
d(gγ)dI
∣∣∣∣I=0
=
0 si γ < 1
∞ si γ > 1(4.25)
Por tanto, la estimacion4.24solo es valida si se asume queγ = 1. Se usara esta propie-
dad para definir laγ de una funcion de un conjunto de Grossberg: la funcion deγ = 1 es
aquella, si existe, que cumple queg′(0) 6= 0.
Esto es coherente con la definicion habitual deγ. Tanto para el modeloI = qγ como
para el de Mann (4.15), conγ = ac, se cumple que
g′(0) 6= 0 ⇔ γ = 1 (4.26)
Por otra parte, se esta empleando la funcion τ para valores de intensidad proximos a
cero, donde la relacion senal a ruido del sensor es siempre baja. Ası pues, las medidas
obtenidas en esa zona de la FCI tendran siempre un ruido significativo y, en consecuencia,
la estimacion dek mediante la ecuacion4.24ha de tomarse siempre con cuidado.
Estimacion de la respuesta en amplitud de una camara 61
4.3.3. Obtencion de f conk conocido
Si se conoce el valor de la constante de exposicion entre dos imagenes, es posible ob-
tener con precision el valor de la funcion de transferenciaf . Una primera tecnica para ello
consiste endesenrollarla funcion de transferencia. Se asumef (0) = 0 y se calcula una
primera funcion provisionalf :
f (1) = ε , conε pequeno
f (k) = τ( f (1)) = τ(ε)
f (k2) = τ(τ(ε)) = τ2(ε)...
f (kn) = τn(ε)
(4.27)
con lo que se hallan los valores def paraI = 0,1,k, . . . ,kn. Posteriormente se normaliza
f = cf , de modo quef ∈WRF.
Para el resto de los valores deI se interpola. En principio, existen infinitas posibilidades
para interpolar (segun la indeterminacion auto-similar), ası que se selecciona una que sea
suave.
Otra posibilidad es ajustar ese conjunto de puntos obtenidos a un modelo dado o, lo que
es equivalente, resolver directamente una ecuacion del tipo (4.5) o (4.6), conk conocido.
Las tecnicas utilizadas para ello son distintas en los dos modelos analizados.
En el modelo de Mann, la ecuacion (4.5) tiene una forma analıtica (4.16). Por tanto,
es posible hacer directamente un ajuste del grafo comparametrico T al modelo de FCIτ,
en funcion de los parametrosa y c (ya que el parametrob no se puede obtener del analisis
comparametrico). Para ello es necesario hallar los valores(a,c) que hacen mınima la norma
||T(I)− τac(I) || (4.28)
Esto se puede hacer con ayuda de un programa de optimizacion no lineal.
Para un modelo polinomico GNM, la situacion es algo mas compleja. Se considera el
modelo generico de funcion de transferencia inversa
g(I) = g0(I)+m
∑n=1
cnhinvn (I) (4.29)
que se puede derivar inmediatamente del modelo generico (4.19).
Se considera un vector de intensidades distribuidas uniformemente en todo el rango
dinamico de salidaI i . Se considera el vector relacionado por la curva comparametricaI j =
T(I i)≈ τ(I i). Se consideran los vectoresgi ,g j y las matricesH i ,H j :
gi = go(Ii) , H i = [hinv1 (Ii) · · ·hinv
n (Ii)]
g j = go(I j) , H j = [hinv1 (I j) · · ·hinv
n (I j)](4.30)
62 Reconstruccion de la imagen radiometrica
ası como el vector de coeficientesc = (c1, . . . ,cn)T .
Con estas definiciones, es posible reescribir la ecuacion4.3en forma matricial
gi−kg j +(H i−kH j)c = 0 (4.31)
que, en general, no tendra una solucion exacta enc.
El ajuste al modelo consiste en encontrar el conjunto de coeficientesc que minimiza
||(H i−kH j)c+(gi−kg j) ||2 (4.32)
imponiendo la restriccion de que la funcion g resultante sea monotona, es decir, que
g(I −1)≤ g(I) para todos los valores deI . De forma compacta
DH ic+Dgi ≥ 0 (4.33)
donde la matrizD es un operador diferencia.
Es un problema del tipo
minimizar ||Ec−v||2restringido a Ac≤ b
(4.34)
que se resuelve utilizando tecnicas de programacion cuadratica.
4.3.4. Obtencion de f conk desconocido
Debido a la indeterminacion exponencial, es completamente imposible determinar con-
juntamentek y f sin hacer ninguna suposicion a priori sobre ellos. En [23] se considera la
posibilidad de hallar conjuntamentef y k en un conjunto de imagenes que solo difieren en
exposicion, pero se obtiene bajo una indeterminacion de este tipo.
La suposicion mas razonable (y launica que permite obtener algun valor numerico) es
que se puede utilizar la aproximacion dek dada por la ecuacion (4.24). Como se ha visto
en la seccion 4.3.2, esto equivale a una condicion deγ = 1. Afortunadamente, esta es la
suposicion que se hace en dispositivos de tipo CCD, que son los sensores que se utilizan
actualmente en las camaras digitales.
Bajo esta hipotesis, se estima primero la exposicionk con la mencionada ecuacion (4.24)
y se utilizaesta para calcularf con alguna de las tecnicas estudiadas en el apartado4.3.3.
Debe tenerse en cuenta que la estimacion dek se realiza en condiciones de baja relacion
senal a ruido. Por tanto, se debe considerar la posibilidad de que, en lugar de calcularse la
exposicion correctak, se obtenga un valor erroneok′ = ku (donde esta relacion exponencial
es siempre posible ya que necesariamentek > 0). El estudio de los distintos algoritmos para
el calculo de la respuesta en amplitud debe hacerse teniendo en cuenta la robustez frente a
este tipo de errores.
Estimacion de la respuesta en amplitud de una camara 63
−10 −8 −6 −4 −2 0 2 4 6 8 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Figura 4.5. Curvas de respuesta con distinto valor deγ
4.3.5. Lımites a la obtencion de la imagen radiometrica
Una vez obtenidos los valores def y k es posible reconstruir la imagen radiometrica
q = g(Ii) = kg(I j). Debido a la indeterminacion exponencial, es posible que el valor de
exposicion determinadok′ sea erroneo, lo que implicarıa un calculo incorrecto de la funcion
f y, por tanto, deq:
k′ = ku (4.35)
q′ = qu (4.36)
Q′ = uQ (4.37)
donde, como es habitual,Q = log(q).
La figura4.5 muestra el efecto que ese error tiene en las curvas de funcion de transfe-
rencia estimadas. El resultado es un factor de escala desconocido en el ejeQ, que equivale
a un exponente en el ejeq, es decir, unacorreccion gamma.
Se denominara γ-invariantea cualquier procesadoΦ sobre la imagen radiometricaq(x)
tal que
(Φqγ(x))1/γ = Φq(x) (4.38)
Considerando la imagenQ(x), de logaritmo de cantidad de luz, la definicion se rees-
cribe:1γ
ΦγQ(x)= ΦQ(x) (4.39)
Cualquier transformacion puntualΦ lineal enQ esγ-invariante.
64 Reconstruccion de la imagen radiometrica
Si Φ esγ-invariante, se cumple que cualquier secuencia de operaciones del tipo
I q q If−1 Φ f
- - - (4.40)
proporciona a la salida el mismo resultadoI , aunque la funcion de transferencia calculada
sea erronea debido a la indeterminacion exponencial. Esta propiedad es muy interesante, ya
que permite realizar un procesado radiometrico de la imagen fijando arbitrariamente el valor
dek o deγ (que son restricciones equivalentes), obteniendo a la salida resultados correctos
siempre que se cumplan dos condiciones:
El metodo de estimacion de la funcion de transferencia debe ser consistente. Es decir,
si considerar una exposicion k da lugar a la funcion inversag, entonces considerar
una exposicionku debe dar lugar a la funciongu.
El procesado radiometrico que se realice debe serγ-invariante.
Para el alineamiento radiometrico de mas de dos imagenes la indeterminacion es la
misma para todas ellas. Es decir, debe estimarse unaunica funcion de transferenciag′,
que diferira de la funcion realg en una constante exponencial tal queg′ = gu. Todas las
constantes de exposicion estimadas se veran afectadas del mismo modo:
k′i = kui ∀i (4.41)
4.3.6. Comparacion de los distintos modelos de respuesta
Para evaluar las prestaciones de un modelo de funcion de transferencia se suele com-
parar la funcion obtenida por el modelo con una obtenida mediante medidas. Esto requiere
medir la respuesta de la camara, lo que no siempre es posible.
Se propone, pues, una medida de calidad diferente: a partir de la funcion de respuesta
obtenida f , se calcula su FCI asociadaτ(I) = f (k f−1(I)). La calidad viene dada por la
distancia
d = ‖τ(I)−T(I)‖2 = ∑I
(τ(I)−T(I))2 (4.42)
Una medida de calidad subjetiva, que tambien es interesante, consiste en comparar las
imagenesI j y τ(Ii). En caso de que se trate de partes de un mosaico, resulta especialmente
significativo comprobar como de marcada es la transicion de una imagen a otra.
Se han estudiado los modelos de Mann, el polinomico de Mitsunaga-Nayar y el EMoR
de Grossberg-Nayar. Los resultados se pueden ver en la figura4.6. Del segundo modelo
se han usado dos tipos de optimizacion: un optimizador no lineal con restricciones, mas
Estimacion de la respuesta en amplitud de una camara 65
0 0.25 0.5 0.75 10
0.25
0.5
0.75
1
TMannGNM absolutoGNM cuadrático
Figura 4.6. Comparacion de distintos modelos de respuesta
general (y lento), y un optimizador cuadratico con restricciones, mas eficiente. En la grafica
estan rotulados como((GNM absoluto)) y ((GNM cuadratico)) respectivamente.
Se han realizado medidas para distintos valores propuestos dek, para analizar el efecto
de un error dek sobre todo el proceso. Las conclusiones obtenidas son las siguientes:
Utilizando un optimizador general, el resultado obtenido por los modelos GNM es
muy bueno y robusto frente a variaciones dek. Sin embargo, el tiempo de computo
es elevado (varios minutos).
Utilizando programacion cuadratica no se ha conseguido reproducir los resultados
del optimizador generico. Las curvas obtenidas son mucho peores y muy sensibles al
valor dek estimado.
El modelo de Mann es estable frente a variaciones dek, ya que para cualquier valor
k′ = ku introducido, se obtiene la funcion g′ = gu. El tiempo de computo es aproxi-
madamente 100 veces menor que el GNM con optimizacion general.
Se utilizara el modelo de Mann ya que conjuga estabilidad y eficiencia, aunque su ren-
dimiento sea peor que el de los modelos GNM. Otra ventaja del modelo de Mann que se
aprovecha en el sistema es que se dispone de una funcion analıtica y cerrada, definida y
valida para cualquier valor deq > 0. Como se vera, los resultados finales usando este mo-
delo son satisfactorios
66 Reconstruccion de la imagen radiometrica
4.4. Implementacion: bloque de calculo de la transformacion ra-
diometrica
El diagrama de bloques de la figura4.7(a)en la pagina siguiente muestra los componen-
tes del modulo de calculo de la transformacion radiometrica. Recibe a la entrada el grafo
comparametrico (es, decir, la FCI aproximada) entre cada par de imagenes consecutivas.
A la salida, proporciona la funcion de transferencia radiometrica f y la constante de expo-
sicion de cada una de las imageneskn.La entrada del bloqueCRAD proviene del moduloAHIST, que se describe en la figura
4.7(b)y en la seccion 4.4.4. Calcula la funcion de correspondencia de intensidades entre
cada par de imagenes consecutivas. Como se ha visto en este capıtulo, la FCI contiene toda
la informacion que se necesita para recuperar la funcion de transferencia y la exposicion.
A partir de ella,CRAD hace las siguientes operaciones:
1. De todos los pares de imagenesn,n+ 1 considerados, se halla aquel en el que la
relacion de exposicion sea mayor.
2. Se utiliza este par de imagenes para obtener la funcion de transferencia, segun el
modelo de Mann.
3. Con la funcion de transferencia obtenida, se calculan todas las relaciones de expo-
sicion y se halla la constante de exposicion de cada imagen.
Tanto la funcion de transferencia calculada como las constantes de exposicion estan
sometidas a la indeterminacion exponencial. Cualquier procesado que se haga con la imagen
radiometricaq, obtenida al aplicar la funciong = f−1 calculada, debe serγ-invariante.
4.4.1. EEXP y MEXP: Determinacion del par de imagenes con mayor relacion
de exposicion
El modulo EEXP estima la exposicion relativa entre cada par de imagenes. Para ello
emplea la suposicion deγ = 1 y la aproximacion k≈ τ ′(0). Como la FCI presenta mucho
ruido para valores bajos, la estimacion deτ ′ se hace del siguiente modo:
1. Se ajustan los puntos deT(I) a un polinomiot(I) de orden 4, considerando solo la
parte inferior de la curvaI ∈ (0,0.25).
2. Se deriva el polinomio, analıticamente.
3. Se hallak = t ′(0).
Implementacion: bloque de calculo de la transformacion radiometrica 67
AHIST
EEXP MEXP
CFNT
KREL
-
- -?
-
?- - KABS
-
-?
Tn,n+1
kn,n+1 n0
Tn0,n0+1
f
f
kn,n+1 kn
f
(a) CRAD
CGRAM HGRAPH CGRAPH
ARAD1-
-- - -
6
-
?
Ii
IrJ H T
Io
T
(b) AHIST
Figura 4.7. (a) Diagrama de bloques del moduloCRAD del diagrama de bloques del SCID,
representado en la figura2.1 de la pagina14. (b) Diagrama de bloques del moduloAHIST,
que se aplica en el moduloCGE2 de la figura3.3(c)en la pagina37. Su salida es la entradaT
del bloqueCRAD.
68 Reconstruccion de la imagen radiometrica
Para el ajuste a un polinomio se emplea un algoritmo de ajuste de datos a curva basado
en mınimos cuadrados [28]. En el prototipo desarrollado se ha utilizado la funcion de
MATLAB r polyfit.
De todas las exposiciones estimadas, se calcula la mayor mediante el moduloMEXP, que
obtiene
n0 = argmaxn
kn,n+1,
1kn,n+1
(4.43)
Se considera, para calcular el maximo, tanto la exposicionkn,n+1 como la recıprocakn+1,n =
1/kn,n+1.
Es importante que la exposicion sea elevada para que el calculo deT y la recuperacion
de f sea posible. Con un valor pequeno dek, la FCI esta muy cerca de la recta identidad,
por lo que resulta difıcil asimilarla con garantıas a un modelo determinado.
4.4.2. CFNT: Calculo de la funcion de transferencia
Para calcular la funcion de transferencia se utiliza ununico par de imagenes, selecciona-
das de modo que su exposicion se lo mas distinta posible (maxima constante de exposicion).
Se considera el grafo comparametricoTn0,n0+1, para el que se ha estimado su exposicion
k = kn0,n0+1. Se calcula la funcion del modelo de Mann que mejor se ajusta a ellos, segun se
ha visto en§4.3.3.
El modelo de Mann (§4.2.1) dependeunicamente de tres parametros:a, by c. El parame-
tro b no se puede determinar a partir de la ecuacion comparametrica, ası que se fija arbitra-
riamente ab= 0. Los parametrosa y c se estiman en el moduloCFNT mediante una funcion
de optimizacion no lineal. Es un algoritmo que minimiza una determinada distancia en
funcion del valor de un conjunto de variables.
Considerando la funcionτac(I), que es la FCI del modelo de Mann, dada por la ecuacion
(4.16), se obtiene
a,c= mına,c
= ‖τac(I)−T(I)‖2 (4.44)
En la FCI del modelo de Mann, el terminoa siempre aparece como exponente dek. Por
este motivo (y ası se ha comprobado), si se calcula un nuevo conjuntoa′,c′ con un valor
distinto de exposicionk′ = ku, se obtienen los valores
a′ = au
c′ = c(4.45)
Es decir, independientemente del valor dek utilizado en la estimacion, se obtienen siem-
pre funciones del mismo conjunto de Grossberg. Siempre que el procesado posterior seaγ-
invariante, es posible utilizar cualquiera de ellas. Se tomara la deγ = ac= 1, con parametros
Implementacion: bloque de calculo de la transformacion radiometrica 69
a, c:a = 1
c
c = c(4.46)
de modo que
k = ka/a (4.47)
El valor dek que se introduce es, pues, arbitrario. Se corrige posteriormente con (4.47)
para hacerlo consistente con el modelo.
En la implementacion MATLAB r se ha usado la funcionfminsearch como optimiza-
dor no lineal.
4.4.3. KREL y KABS: Calculo de la exposicion
Con la funcion f obtenida en el moduloCFNT se calcula la constante de exposicion de
cada una de las imagenes. Este proceso se hace en dos pasos:
En primer lugar, el moduloKREL calcula, para cadaTn,n+1, el valor de exposicion que
minimiza
kn,n+1 = mınk
= ‖τk(I)−Tn,n+1(I)‖2 (4.48)
Es la misma optimizacion que en (4.44), pero cambiando la variable con respecto a la que
se minimiza. Por tanto, se usa el mismo algoritmo de minimizacion empleado en el modulo
CFNT.
En segundo lugar,KABS obtiene el valor dekn absoluto de cada imagen, que no es mas
que la constante de exposicion de la imagenIn con respecto a laIn0:
kn =
kn,n+1 · . . . ·kn0−1,n0 cuandon < n0
1 cuandon = n0
1kn−1,n
· . . . · 1kn0,n0+1
cuandon > n0
(4.49)
4.4.4. AHIST: Calculo y aplicacion de la FCI
La figura4.7(b)en la pagina67 representa el moduloAHIST, que recibe como entrada
dos imagenesIi e Ir en escala de grises y proporciona a la salida:
La FCI aproximada (es decir, el grafo comparametrico)T tal que, en los puntos comu-
nes de ambas imagenes,
T(Ii(x))≈ Ir(x) (4.50)
70 Reconstruccion de la imagen radiometrica
La imagenIo = T(Ii), es decir, la imagenIi corregida para que su distribucion de
intensidades (es decir, su histograma) sea lo mas parecida posible a la deIr .
Se utiliza el procedimiento descrito en la seccion 4.1.2, que consta de la aplicacion de
cuatro funciones:
CGRAM: CalculaJ, el comparagrama de las dos imagenes de entrada.
HGRAPH: Modifica el comparagrama segun la ecuacion (4.9) y obtiene las sumas mar-
ginales (histographs) y, de ellas, las marginales acumuladas (cumulagraphs).
CGRAPH: Halla el grafo comparametrico (comparagraph), sin mas que representarHi
frente aHr , es decir,T(I) = H−1r
(Hi(I)
). Esto proporciona una de las salidas del
moduloAHIST.
ARAD1: Aplica la FCIT a la imagenIi para obtener la imagen de salidaIo = T(Ii). Es
una transformacion puntual, pıxel a pıxel.
Como se ha visto en3.4, la imagen de entradaIi esta pre-alineada, mediante una trans-
formacion rıgida, a la imagen de referenciaIr , y restringida al marco deesta. Esto tiene dos
implicaciones:
Hay puntos de la imagenIi que no corresponden a ningun valor de la imagen origi-
nal. El SCID (funcion AGEO1 del moduloAHIST) los pone a cero. Por tanto, solo se
considera el calculo del comparagrama en aquellos puntosx tales queIi(x) 6= 0.
Las imagenes no estan perfectamente alineadas y, por tanto, el comparagrama
tendra bastante dispersion. No obstante, se ha comprobado que los resultados obteni-
dos bajo estas condiciones son muy parecidos a los obtenidos cuando el alineamiento
es perfecto, ya que los histogramas deIi e Ir apenas varıan de un caso al otro.
4.4.5. Composicion del mosaico
Como se ha visto en la descripcion del bloqueCOMP (§2.2.8), encargado de componer el
mosaico, la composicion final tiene la forma:
Q(x) =∑n
w(x)dF(Q)
dQ
∣∣∣∣Qn(x)
Qn(x)
∑n
w(x)dF(Q)
dQ
∣∣∣∣Qn(x)
(4.51)
Es inmediato demostrar que esγ-invariante. Es suficiente sustituir cadaQn(x) por
γQn(x), y comprobar que el resultado esγQ(x).
Compresion de rango dinamico 71
Esta propiedad justifica que se haya elegido para componer el mosaico una combinacion
lineal deQn, que es una media geometrica ponderada deqn. La combinacion lineal (o media
aritmetica ponderada) deqn no esγ-invariante.
4.5. Compresion de rango dinamico
La imagen radiometricaQ que el bloque de composicion del mosaico proporciona a su
salida tiene un rango dinamico mayor que cualquiera de sus componentes de entradaQn y,
por tanto, mayor que el rango dinamico representable por la funcion f . Esto quiere decir
que, para poder representar la imagenI = F(Q) adecuadamente, es necesario aplicar un
procesado que comprima el rango dinamico:
I = F(Φ(Q)) (4.52)
dondeΦ debe cumplir tres propiedades:
Serγ-invariante.
Comprimir el rango dinamico evitando reducir el contraste de la imagen.
Proporcionar una imagen lo masnatural posible, esto es, agradable a la vista. Esto
es un concepto subjetivo, pero importante: el objetivo de hallarI no es tener una
representacion fiel de la imagen (que ya se tiene enQ) sino presentarla al usuario de
la forma mas agradable posible.
En el artıculo [1] se muestran distintos metodos de compresion de rango dinamico, que
pueden clasificarse en tres familias:
1. Tecnicas globales no adaptativas. Son tecnicas sencillas y rapidas, que pueden proce-
sarse en tiempo real, y que se basan en una modificacion del histograma: lineal, ex-
ponencial, logarıtmica o combinada. El control sobre el resultado es bajo y, ademas,
tienden a comprimir el contraste local en la misma medida que el global.
2. Tecnica globales adaptativas. Se aplica una correccion de histograma basada en la
forma deeste. En concreto, se presenta una modificacion de la ecualizacion de histo-
grama. El contraste se mejora.
3. Tecnicas locales. Modifican el valor deQ de cada pıxel en funcion de su entorno.
Mantienen el contraste global y reducen las variaciones globales de luminosidad, a
costa de emplear mas tiempo de computacion. En el artıculo citado se presentan los
72 Reconstruccion de la imagen radiometrica
resultados del algoritmoRetinex, que son claramente superiores a los obtenidos con
tecnicas globales.
Dado que no hay requisitos de tiempo real, en el SCID se utilizara compresion Retinex.
Este algoritmo, que presenta multiples variantes, opera sobre el logaritmo de la cantidad de
luz en escala arbitraria. Es, pues,γ-invariante.
4.5.1. Compresion Retinex. Implementacion del modulo CPRD.
El algoritmo iterativo Retinex descrito en 1980 por Frankle y McCann preserva el con-
taste local y simultaneamente reduce el rango dinamico total. Es particularmenteutil para
revelar detalles enareas oscuras de un fotografıa, y eliminar variaciones suaves de la ilumi-
nacion.
El procesado Retinex en imagenes en color se puede hacer por separado en cada canal
(R,G y B) o de forma conjunta sobre una imagen de grises derivada de la imagen en color.
Esta segunda opcion es preferible para mantener constante la crominancia, como se describe
en la seccion4.6.
La implementacion que ha utilizado en el SCID, cuyo diagrama de bloques aparece en la
figura4.8, esta extraıda directamente de la mejora de Retinex propuesta por Sobol en [34].
Parte de una imagenQ, en logaritmo de cantidad de luz y en color RGB, para proporcionar
una mascara de compresion de rango dinamico, que se pueda aplicar a la imagen.
La imagen de entrada es transformada a monocromo mediante la funcion maxRGB, que
equivale a tomar el maximo de cada canal en cada pıxel:
I(x) = maxQR(x),QG(x),QB(x) ∀x (4.53)
Al utilizar esta imagen se garantiza que todos los colores permaneceran dentro del rango
representable.
Retinex produce una salidaO midiendo las relaciones de cantidad de luz de los pıxeles
en distintas partes de la imagen de entradaI . Se compara la imagen de entradaI con una
version desplazada de la misma, un cierto radio de desplazamientos:
O∗ =CTW[RMO(I − Is)+Os]−O
2(4.54)
La imagen de salidaO se inicializa a blanco. Se comienza a iterar con una distancias
grande: la maxima potencia de 2 menor o igual que la mitad de la anchura de la imagen.
Se procede de forma circular, rotando 90 grados y reduciendo el radio a la mitad en cada
iteracion. El resultado es un camino en forma de espiral, como el indicado en la figura4.9.
Compresion de rango dinamico 73
maxRGB s
s
-
- ¾
?
?¾CTW
(·)+(·)2
RMO
?
-
¾
¾
?¾
¾
?
?
-
CRD-
¾
¾
Calculo Iterativo Retinex
++
+
+
−
−
Q I
IsI
O Os
f
k
M
a M0
×
Figura 4.8. Modulo de compresion Retinex del rango dinamico.
*
U
¼K*
1
2
3
4
5
6
7
Figura 4.9. Camino recorrido en el algoritmo Retinex.
74 Reconstruccion de la imagen radiometrica
Sobol propone modificar el algoritmo para que sea posible iterar un cierto numero de
vecesN por cada valor des, alargando ası la espiral. Cuanto mayor sea el numero de ite-
raciones, menor es el contraste obtenido, esto es, la imagen de salidaO converge hacia la
original I . En la implementacion del moduloCPRD se ha utilizadoN = 1.
La funcion CTW (Clip To White) satura los valores de entrada al blanco de referencia
(que es el valor maximo de la imagen de entradaI ):
CTW(v) =
v si v < maxImaxI si v≥maxI
(4.55)
Para mejorar el contraste, Sobol propone introducir el operador de modificacion del
ratioRMO (Ratio Modification Operator), que amplifica los contrastes pequenos y satura los
altos. Depende de dos parametros: ganancia (G) y valor de recorte (C).
RMOG,C(v) =
Gv si v < C
GC si v≥C(4.56)
Los valores que se han adoptado en la implementacion sonC = log(4) y G = 1.2.
Despues del proceso iterativo se forma la mascaraM0 = I −O, que se aplicara a la
imagen RGB de entrada. La compresion alcanzada al aplicar esta mascara es muy alta, por
lo que se emplea un factor de suavizadoa, de modo que la mascara aplicada es
M = aM0 = a(O− I) (4.57)
El artıculo de Sobol no propone ninguna forma para determinar el valor dea. Esto es
importante, ya que una compresion excesivamente baja reduce el contraste y una muy alta
satura la imagen en exceso, siendo ambos efectos poco deseables.
Para determinara se ha desarrollado un metodo basado en el rango dinamico (CRD:
Calculo del Rango Dinamico). El objetivo es obtener a la salida una imagenQ+M con el
rango dinamico representable por la funcion de transferenciaF , es decir
RD(Q+M)≈ RD(F) (4.58)
Se asume queRD(Q+M)≈ RD(Q)−βRD(M), conβ = 1 si todo el rango dinamico de la
mascaraM es efectivo para comprimir el deQ. Ademas se cumple queRD(M) = aRD(M0).
Por tanto, se determina
a = αRD(Q)−RD(F)
RD(M0)(4.59)
Dondeα = 1/β es un factor de correccion que se ha fijado en1.5. El rango dinamico de
una imagen (Q o M) en escala logarıtmica se determina como la anchura del histograma. El
rango dinamico deF es el rango de valores de entrada con sensibilidad apreciable.
Aplicacion en imagenes en color 75
Se utiliza como medida de sensibilidad lacertidumbre, que ya se ha definido en la
ecuacion (4.21). El rango dinamico es la parte de la curva de transferencia en que la certi-
dumbre es superior a un cierto valorε > 0. El maximo y mınimo del rango dinamico deF
se denominaran valores de blanco y negro de referencia, respectivamente:
Iw = F(Qw)
Ib = F(Qb)(4.60)
El valor dek considerado es el que fija el maximo valor de(log(k)+Q) al maximo valor
representable por la funcionF , es decir, a su blanco de referencia. Por tanto
log(k) = Qw−maxQ (4.61)
La tabla4.1resume los parametros de diseno del moduloCPRD.
Parametro Valor Descripcion
N 1 Numero de iteraciones
C log(4) Valor de recorte deRMO
G 1.2 Ganancia deRMO
α 1.5 Factor de correccion dea
Tabla 4.1. Parametros de diseno del moduloCPRD
El modulo se ha codificado enMATLAB r y C, basandose en la implementacion del
algoritmo Retinex original (Frankle-McCann) publicada en [6].
4.6. Aplicacion en imagenes en color
Todos los algoritmos utilizados en el proyecto (calculo de la transformacion geometrica,
calculo de la transformacion radiometrica y compresion del rango dinamico) trabajan sobre
imagenes en escala de grises. Sin embargo, las imagenes de entrada del SCID son en color
(RGB). Es preciso definir como se va a trabajar con ellas.
El procesado cromatico mas habitual es transformar la imagen RGB en una nueva ima-
gen de tres canales: uno de ellos con informacion sobre intensidad (intensidad, valor o lu-
minancia) y dos con informacion cromatica (crominancia). El estudio de este tipo de trans-
formaciones y su efecto en la percepcion de la imagen se denomina colorimetrıa. Cada
transformacion se puede ver como un cambio de espacio de representacion de la imagen (o
espacio de color). Una referencia para este estudio puede ser [24].
76 Reconstruccion de la imagen radiometrica
De los diversos espacios cromaticos existentes, es interesante considerar aquellos basa-
dos en una transformacion lineal del espacio RGB, y que presentan una componenteY de
luminancia y dos componentes adicionales de crominancia (cuyos nombres y definiciones
varıan de un espacio a otro). Se considera
Y = αR+βG+ γB (4.62)
donde los coeficientesα ≈ 0.3, β ≈ 0.6 y γ ≈ 0.1 estan elegidos para que la luminancia
represente el valor de intensidad subjetiva percibido por un observador humano.
En el diseno del SCID se ha considerado como objetivo mantener la crominancia en
las imagenes con que se trabaja, ya que no es posible conocer si se debe efectuar al-
guna correccion sobre ella o no. Para ello es necesario aplicar la misma transformacion
radiometrica a cada uno de los tres canales, esto es,suponer que la funcion de transferencia
estimada es la misma para los tres canales.
Esta suposicion no tiene por que ser cierta. Sin embargo, dada la incertidumbre que se
tiene en el calculo de la respuesta radiometrica, resulta conveniente: la estimacion y uso de
una funcion distinta para cada canal da lugar a cambios en la tonalidad de la imagen, que
no son deseables para el sistema.
Una vez decidido que se aplicara la misma transformacion a los tres canales, es necesa-
rio considerar que imagenes monocromas se van a usar para estimar las transformaciones.
Aquı caben dos posibilidades:
Utilizar una ponderacion basada en la sensibilidad de los sensores. Dado queesta se
desconoce, se supone igual para todos. Por tanto, esto equivale a considerarα = β =
γ = 1/3.
Utilizar una ponderacion basada en la percepcion del observador. Es decir, usar valo-
res del tipoα ≈ 0.3, β ≈ 0.6 y γ ≈ 0.1.
Como el SCID ha sido desarrollado para generar imagenes que puedan ser visualizadas
por una persona, se utiliza la ponderacion basada en percepcion. Los valores empleados
concretamente son los definidos en el espacioYIQ (§2.2.2). Sin embargo, otras pondera-
ciones parecidas dan lugar a resultados similares. En la practica, se ha comprobado que el
uso de una ponderacion u otra apenas varıa el resultado final ya que las tres funciones de
respuesta (R,G,B) de la camara suelen ser parecidas.
Un problema similar surge para aplicar el algoritmo de compresion de rango dinamico
Retinex, que tambien opera sobre imagenes en grises. Aquı se ha optado por tomar el
maximo de los tres canales en cada punto, como se ha visto en la ecuacion (4.53), porque
Aplicacion en imagenes en color 77
ası se sugiere en el artıculo de Sobol del que se ha extraıdo el algoritmo. De nuevo el resul-
tado es mejor que si se aplica Retinex a los tres canales R,G,B por separado. El contraste se
modifica por igual en los tres y se mantienen los valores de crominancia adecuados.
78 Reconstruccion de la imagen radiometrica
CAPITULO 5
Pruebas, resultados y conclusiones
En este capıtulo se presentan los resultados y conclusiones del proyecto. En primer lugar
se analiza la salida del SCID para distintos juegos de imagenes de entrada, tanto desde una
perspectiva subjetiva como a traves de unas metricas de evaluacion objetiva de la calidad.
Posteriormente se enuncian algunos problemas abiertos que surgen de este proyecto: mejo-
ras que se pueden introducir y algunas lıneas de estudio relacionadas con ellas. Finalmente,
se exponen las conclusiones del trabajo realizado.
5.1. Pruebas de funcionamiento del SCID
Se han hecho numerosas pruebas de composicion automatica de mosaicos. De cada
una de ellas se han tomado diversos datos, para la evaluacion total de la calidad. Se dis-
tinguira entre datos del proceso, que aportan informacion sobre las imagenes de entrada, y
medidas de calidad, referidas a los resultados de aplicar el SCID.
Como datos del proceso se utilizan parametros relacionados con las restricciones im-
puestas a las imagenes de entrada y con el aumento de rango dinamico, tanto geometrico
como de amplitud:
Superposicion relativa de cada par de imagenes. Dadas dos imagenes de entrada con-
secutivas, la superposicion es el porcentaje de pıxeles de la imagen de referencia que
79
80 Pruebas, resultados y conclusiones
tienen un homologo en la imagen de entrada. Cuanto mas superpuestas estan dos
imagenes, mas facil es calcular la transformacion que las relaciona.
Escalado en superficie. Es el aumento de superficie de cada imagen al aplicarle una
transformacion geometrica. Esta relacionado con elangulo que forman la direccion
de vista de la imagen con el ejeoptico de referencia.
Constantes de exposicion. El maximo cociente entre exposiciones de imagenes es,
aproximadamente, el aumento en rango dinamico obtenido.
Como medidas de calidad se consideran tres parametros que estiman la calidad de la
transformacion entre cada par de imagenes:
Coeficiente de correlacion global,ρ. Se aplica sobre la parte superpuesta, previo ali-
neamiento en intensidad de las imagenes. Es una medida de la calidad del alinea-
miento geometrico.
Error cuadratico medio de la FCI obtenida segun el modelo, con respecto algrafo
comparametrico extraıdo de los datos,Eτ . Es una medida de la calidad de la esti-
macion de la transformacion radiometrica.
Distancia radiometrica global. Se mide, en escala logarıtmica, la distancia
dQ =‖Q1−Q2‖2
‖Q1‖‖Q2‖ (5.1)
DondeQ1 y Q2 son los valores de la imagen radiometrica obtenidas a partir de cada
una de las imagenes de entrada. Es decir, se considera
Qi = F−1(Pi [Ii ])+ log(ki) (5.2)
La distanciadQ es independiente del valor degammaconsiderado y, por tanto, es una
medida de calidad robusta frente a la indeterminacion exponencial.
Ademas se ha estudiado el error local en cada parte de la imagen. Para ello se ha em-
pleado el error cuadratico medio de cada pıxel de la imagen final con respecto a sus pıxeles
homologos en las imagenes de origen. La aportacion de cada pıxel al error se pondera por
la mascara de dicho pıxel. Por ejemplo, el error en el canalRes:
ER(x) =∑n
mn(P−1
n [x])[
QRn(P−1
n [x])−QR(x)
]2
∑n
mn(P−1
n [x]) (5.3)
Del mismo modo se pueden calcular los errores en los canalesG y B.
Pruebas de funcionamiento del SCID 81
5.1.1. Panoramica de Madrid
Se comenta, como ejemplo, el conjunto de resultados obtenidos en la imagen de prueba
que se denominara Panoramica de Madrid(figuras en la pagina84 y siguientes). El con-
junto de entrada (figura5.1) tiene una superposicion media del 75 % entre cada par de
imagenes (se vera despues algun caso de baja superposicion). Hay tres aspectos interesan-
tes en estas imagenes:
Tienen bastante detalle en su parte central, y se superponen hasta 7 de las 8 imagenes
en algunos puntos. Por tanto, el alineamiento geometrico debe ser casi perfecto para
que la imagen final no aparezca emborronada.
El maximo cociente exposicion es un 15 % del rango dinamico de la funcion de trans-
ferencia, que es bastante alto. Ademas, las imagenes estan tomadas a contraluz. Por
tanto, las condiciones de alineamiento radiometrico y compresion de rango dinamico
son severas.
Hay oclusiones: objetos de una imagen que no aparecen en otra (coches, peatones...).
La figura5.2 representa la imagen de salida del sistema. Como se puede apreciar, el
resultado es bueno y agradable a la vista. Las imagenes de entrada tenıan diferencias de
rango dinamico apreciables tanto en amplitud como en geometrıa, y se ha compuesto una
imagen de salida adecuada.
Las imagenes de entrada son todas de1024×768pıxeles, es decir0.79megapıxeles. El
mosaico de salida es de tamano2536×1118, es decir,2.8 megapıxeles. De ellos son validos
unicamente2.3 megapıxeles (el resto forman parte del marco irregular de la imagen). En
definitiva, el mosaico tiene unaamplitud espacialcasi 3 veces superior a la permitida por la
camara.
En lo relativo al rango de amplitudes, se obtiene un 15 % adicional, y se consiguen
combinar imagenes que difieren claramente en amplitud. Algunas de ellas, como la primera,
son contraluces muy fuertes.
En la tabla5.1en la pagina siguiente se muestran los valores numericos de los parame-
tros de calidad utilizados. Es interesante destacar, por ejemplo, que el valor total del coe-
ficiente de correlacion es superior a0.99 en todas las imagenes, lo que da una idea de la
buena calidad del sistema.
En la figura5.3 se representa en falso color el canal verde de la imagen radiometrica
Q. Se observa, en blanco, elarea en que el sol ha saturado el sensor en todas las imagenes
captadas. Los contrastes locales son de hasta 6 unidades logarıtmicas, mientras que el rango
dinamico total es de unas 20.
82 Pruebas, resultados y conclusiones
Imagenes Superposicion k ρ Eτ dQ
1-2 55.5 % 0.63 0.9954 0.1825 0.0275
2-3 74.0 % 0.71 0.9938 0.5830 1.0736
3-4 81.0 % 1.62 0.9966 0.3453 1.1169
4-5 70.2 % 0.89 0.9967 0.0894 0.0059
5-6 89.2 % 0.93 0.9964 0.0168 0.0028
6-7 66.5 % 0.67 0.9916 0.3321 0.0806
7-8 89.1 % 1.07 0.9952 0.0190 0.1386
Tabla 5.1. Calidad de las transformaciones en laPanoramica de Madrid
Es necesario comprimir cerca de 3 unidades el rango dinamico. Para ello se utiliza la
mascara generada por el algoritmo Retinex, que se muestra en la figura5.4. La mascara se
aplica multiplicada por un parametroa que es, en definitiva, el que controla el grado de
compresion de rango dinamico. Si se sobreestima el valor de ese parametro se puede tener
una imagen como la figura5.5, donde el contraste se ha realzado en exceso.
En la figura5.6se observa la imagenlog(ER(x)), representada en coordenadas arbitra-
rias. En ella se pueden ver cuales son las mayores contribucion al error (las partes de la
imagen en todos purpuras o blanco). Lo primero que se observa es que el error es mayor
en las zonas en las que se superponen mas imagenes. Esto es natural, ya que la estimacion
deF no es exacta yP no esta exenta de errores: cuantas mas imagenes haya en una misma
zona, mayor sera la incertidumbre.
Los errores son importantes en los bordes. Esto se debe a que un error de un pıxel en la
transformacion geometrica puede cambiar drasticamente el valor de amplitud. Notese espe-
cialmente en la parte superior de los edificios, donde el contraste con el cielo es muy fuerte.
Del mismo modo, muchas zonas de error bajo estan en lasareas localmente uniformes de la
escena.
Finalmente se encuentran valores altos de error en las zonas con oclusiones.Este es el
caso de los coches y peatones en la carretera, que son distintos de una fotografıa a otra.
Tambien es importante el error en las hojas de losarboles, que son movidas por el viento
y cambian su posicion entre las distintas imagenes. Como consecuencia de esto, aparecen
algo borrosos en el mosaico final.
Este tipo de pequenos movimientos son los que mas dificultan el funcionamiento del
modulo del calculo de la transformacion geometrica, al tratar de registrar dos imagenes. Un
objeto que apareceunicamente en una de las imagenes sencillamente sera declaradoperdido
Pruebas de funcionamiento del SCID 83
Imagenes Superposicion k ρ Eτ dQ
1-2 24.3 % 0.9 0.9949 1.4333 7.9×10−4
2-3 32.1 % 0.9 0.9979 0.5867 3.7×10−4
3-4 38.9 % 0.9 0.9967 1.1801 1.7×10−4
4-5 49.9 % 1.2 0.9973 0.5224 0.2×10−4
Tabla 5.2. Calidad de las transformaciones en laPanoramica de los Alpes
en la otra, y no contribuira al calculo. Sin embargo, un objeto que se ha desplazado lige-
ramente puede ser seguido correctamente e introducir errores en la transformacion. Contra
este problema solo caben dos estrategias de aproximacion: tomar cuantos mas puntos de
control mejor, para minimizar el efecto de los puntos ruidosos, y usar algoritmos de esti-
macion robusta de la transformacion. Ambas tecnicas se complementan en este proyecto
aunque, como se vera en§5.2.3, es posible introducir alguna mejora en ese sentido.
5.1.2. Otras imagenes
La secuenciaPanoramica de los Alpeses un conjunto de cinco imagenes cuya com-
posicion se muestra en la figura5.7 en la pagina88. Es facil apreciar en la composicion
los lımites de las imagenes originales. La tabla5.2 muestra los resultados numericos del
conjunto.
Comparandolas con las imagenes de laPanoramica de Madrid, las de los Alpes presen-
tan diferencias significativas. La mas destacada es que su superposicion es siempre inferior
al 50 %, llegando incluso a un 25 % entre las dos primeras.
La correlacion sigue siendo alta y el error es mas bajo que anteriormente, a pesar de
la baja superposicion. Esto se debe a que las imagenes estan relacionadasunicamente dos
a dos: ningun punto de la imagen final tiene mas de dos homologos en las imagenes de
entrada.
Las imagenes de entrada son de800×600pıxeles. La de salida tiene2.8 megapıxeles
efectivos, por lo que el rango espacial representable se ha aumentado en un factor5.8.
Este dato es muy positivo, pero debe ser tomado con cierta cautela: debido a la escasa
superposicion, las transformaciones proyectivas implicadas aumentan considerablemente el
tamano de las imagenes. En concreto, la primera se aumenta casi en un factor 6.
La figura 5.8 es la composicion de cuatro fotografıas del interior de una habitacion
de hotel. Es interesante porque muestra el buen funcionamiento del sistema en imagenes
tomadas a corta distancia, en interiores. Permite hacer una composicion de la escena que no
84 Pruebas, resultados y conclusiones
1 2
3 4
5 6
7 8
Figura 5.1. Imagenes de entrada de la Panoramica de Madrid
Pruebas de funcionamiento del SCID 85
Figura 5.2. Mosaico de la Panoramica de Madrid
86 Pruebas, resultados y conclusiones
−16 −14 −12 −10 −8 −6 −4 −2 0 2
Figura 5.3. Imagen radiometrica de la Panoramica de Madrid. Se trata del canal verdeQG,
representado en falso color.
0 2 4 6 8 10 12 14 16
Figura 5.4. Mascara de compresion Retinex.
Pruebas de funcionamiento del SCID 87
Figura 5.5. Mosaico en el que se ha comprimido en exceso el rango dinamico.
Figura 5.6. Error local en la Panoramica de Madrid. Se representa el logaritmo del error
cuadratico medio de cada pıxel, en unidades arbitrarias.
88 Pruebas, resultados y conclusiones
Figura 5.7. Panoramica de los Alpes: imagenes de entrada y mosaico.
Pruebas de funcionamiento del SCID 89
Figura 5.8. Mosaico de una habitacion.
90 Pruebas, resultados y conclusiones
(a)
(b)
(c)
Figura 5.9. (a) Panoramica desde el Rhin. (b) Detalle en el que se aprecia como la boya roja
aparece tres veces, por efecto del cambio de posicion del centrooptico. (c) Las tres imagenes
de entrada que contienen la boya. Observese el cambio de posicion relativa entre la boya y la
construccion en la orilla, que es consecuencia del movimiento del punto de vista.
Mejoras propuestas y trabajo futuro 91
es posible con unaunica camara convencional.
Otro mosaico interesante es el de la figura5.9, donde se componen ocho imagenes to-
madas desde un barco en el Rhin (Alemania). El barco va avanzando a medida que se toman
las fotografıas, por lo que el centrooptico no permanece fijo. Esto se puede comprobar en
la boya que hay en el rıo que, como se muestra en el detalle de la figura, cambia de posicion
con respecto al fondo de una imagen a otra. Al componer la imagen final, la boya aparece
simultaneamente en tres posiciones distintas, con mas o menos intensidad en funcion de los
valores de certidumbre de cada fotografıa en esa zona.
Este tipo de oclusiones, debidas al cambio de punto de vista, dificultan la estimacion
de una transformacion adecuada y degradan la calidad de la imagen final. Pese a todo, el
resultado sigue siendo interesante.
5.2. Mejoras propuestas y trabajo futuro
En este proyecto se ha desarrollado un sistema capaz de cubrir los objetivos marcados
en 1.2.5. Los resultados obtenidos son buenos, tanto globalmente como analizando cada
bloque de forma independiente. No obstante, el problema abordado no se puede dar por
cerrado. Es posible mejorar el sistema o aplicarlo bajo condiciones distintas. Ademas, hay
algunas mejoras relacionadas con la eficiencia que es interesante abordar de cara a una
implementacion comercial del sistema.
En esta seccion se presentan algunos de los problemas abiertos que surgen de este pro-
yecto. Se pueden interpretar tanto como mejoras del sistema implementado como lıneas de
trabajo que pueden apoyarse en los resultados que se han presentado aquı.
5.2.1. Compensacion de la distorsion geometrica
Las imagenes con que se ha trabajado provienen, fundamentalmente, de camaras con
distorsion geometrica bastante baja. Los efectos de dicha distorsion en el resultado final no
son apreciables o, al menos, no son mayores que los introducidos por errores en el calculo
de la transformacion.
Sin embargo, resultarıa interesante introducir un modelo de distorsion en el problema
geometrico, ya que permitirıa aplicar el sistema con imagenes distorsionadas. Este modelo
modificarıa las transformaciones geometricas de modo que cada una tuviera la forma
Ti j = D−1i Pi j D j (5.4)
dondeD es la correccion de la distorsion geometrica.
92 Pruebas, resultados y conclusiones
El problema que surge es interesante, puesto que se trata de generar un modelo de
distorsion a partir de imagenes genericas y sin calibracion previa.
5.2.2. Gestion de la memoria
En el prototipo desarrollado en este proyecto se ha trabajado enMATLAB r. Las image-
nes intermedias, que deben utilizar necesariamente aritmetica entera, se almacenan en me-
moria formato de doble precision. El resultado es que un mosaico tıpico de 8 fotografıas
de un megapıxel cada una puede dar lugar a una imagen final, en doble precision y sin
comprimir, de unos 100 MBytes, y ocupar alrededor de 700 MBytes de memoria durante el
procesado.
Estas cifras hacen que, en un sistema tıpico en PC, la composicion del mosaico final
sea muy costosa, debido a la inmensa cantidad de memoria que esta en juego y al gran
numero de operaciones de memoria virtual involucradas. Un sistema comercial basado en
este prototipo debe incluir, necesariamente, un modulo de gestion eficiente de la memoria.
5.2.3. Estimacion robusta, eficiente y sin supervision
Uno de los bloques mas crıticos del sistema es la estimacion previa de la transformacion.
Como ya se ha visto (§3.3.4) la correspondencia por momentos de Zernike es pesada compu-
tacionalmente, presenta errores y es bastante sensible a los valores de los parametros de
diseno.
Con el fin de afrontar estos inconvenientes, se proponen algunas modificaciones en el
diseno, que han sido probadas parcialmente y conexito:
Utilizar un esquema multirresolucion en la estimacion de la transformacion. Se ha
comprobado que es posible estimar correctamente la transformacion geometrica con
versiones submuestreadas de las imagenes de entrada (tıpicamente con imagenes de
640x480 o incluso de 320x240 pıxeles). En principio no parece que esto mejore la ca-
lidad de la estimacion final, pero sı reduce considerablemente el tiempo de computo.
Comprobar la calidad de la transformacion en tiempo de ejecucion. Es posible detec-
tar si la transformacion estimada es incorrecta si se cumple alguna de las siguientes
condiciones:
• La correlacion entre la imagen de referencia y la imagen pre-alineada es baja.
Se puede hacer un filtrado paso-bajo previo a la correlacion, para suavizar el
efecto producido porque la transformacion solo es aproximada.
Mejoras propuestas y trabajo futuro 93
• La superposicion resultante tras el pre-alineamiento es inferior a un umbral (por
ejemplo, el 10 %).
• La transformacion resultante es inconsistente con las condiciones en que se ha
hallado. Por ejemplo, el valor de escalado entre las imagenes es superior a 2 o
inferior a 0.5.
Recuperarse frente a errores en la transformacion calculando una transformacion
nueva. Para ello se puede intentar modificar sobre la marcha los parametros de diseno,
para hacer la transformacion mas robusta progresivamente.
El primer esquema propuesto tiene como fin reducir la carga computacional. Las otras
dos propuestas, por el contrario, hacen al sistema mas robusto a costa de emplear mas
tiempo de computacion. En la practica, es necesario un equilibrio entre robustez y eficien-
cia, que vendra dado por los requisitos concretos que se impongan al sistema final. Esto
garantiza que el sistema funciona en un mayor numero de casos y que es capaz, en cierta
medida, de ajustar dinamicamente sus parametros de control.
Otra mejora posible es ampliar el rango de transformaciones permitidas incluyendo la
posibilidad de un cambio de escala importante entre ambas imagenes. Esto abre una nueva
vıa de estudio del problema, basada en la seleccion automatica de escala. Un posible punto
de partida es [18].
Ademas es posible ir componiendo el mosaico a medida que se alinean las imagenes, de
modo que el registro de cada una de ellas se haga sobre el mosaico de todas las anteriores
a la vez. Esta solucion ya se ha propuesto en [4], donde se aplicaba para la composicion
de mosaicos sin procesado radiometrico. Estas tecnicas se pueden utilizar para mejorar los
resultados del alineamiento. Sin embargo, es necesario modificar el algoritmo citado para
que incluya tambien un procesado en intensidad.
5.2.4. El problema del punto de vista
La transformacion geometrica calculada toma como origen de coordenadas la imagen
central y, por tanto, como ejeoptico de toda la imagen el de dicha fotografıa. El resultado
final es una imagen correcta desde el punto de vista geometrico, pero que puede aparecer
deformadacon respecto a lo que un observador humano desearıa.
Dado que se desconoce completamente la escena que esta siendo representada por las
distintas imagenes, tambien se desconoce, a priori, cual es el origen de coordenadas mas
adecuado para componer el mosaico. Por ello se ha utilizado en el proyecto una de las
imagenes como referencia absoluta.
94 Pruebas, resultados y conclusiones
Figura 5.10. Cambio de punto de vista. La imagen superior es la obtenida directamente al
aplicar el SCID. La inferior es el mismo mosaico tras una transformacion proyectiva posterior.
Es posible cambiar el punto de vista sin mas que aplicar una transformacion proyectiva
Pc a toda la imagen resultante. Esto equivale a aplicar sobre cada imagen de entrada, en vez
de la transformacionPn, la siguiente:
P′n = PcPn (5.5)
Se puede ver el resultado de una transformacion de este tipo en la figura5.10. El calculo
de la transformacion proyectiva puede hacerse
Manualmente, determinando cuatro puntos de la imagen global y sus transforma-
dos. Tıpicamente se trata de seleccionar un cuadrilatero en la imagen que deberıa
transformarse en un rectangulo (es decir, corregir la deformacion introducida por la
perspectiva). El objetivo es que las rectas verticales queden verticales y no inclinadas,
en la medida de lo posible.
Automaticamente, definiendo algun algoritmo que estime el mejor punto de vista.
Esto tiene cierta complejidad ya que, en principio, el punto de vistaoptimo es un
concepto subjetivo y, ademas, depende fuertemente de las imagenes de entrada.
Conclusiones 95
5.2.5. Mejora de los modelos radiometricos
El modelo de respuesta radiometrico utilizado es el de Mann: robusto, sencillo y facil
de manejar. Como se ha comentado (§4.3.6), es posible encontrar modelos mas precisos,
aunque mas difıciles de manejar: los de Grossberg-Nayar-Mitsunaga. En este proyecto se
han estudiado las bases teoricas del modelado radiometrico de camaras, pero es posible un
modelado mas preciso de las mismas.
Una vıa de mejora puede ser la inclusion de modelos GNM como funciones de trans-
ferencia, ası como su comportamiento en condiciones de indeterminacion exponencial
(§4.3.1). En este sentido, el reciente artıculo de Grossberg y Nayar [8] propone una adap-
tacion al modelo EMoR para que sea una combinacion lineal de funciones en escala lo-
garıtmicaF(Q).
En [11] se estudia algun otro modelo diferente a los empleados en el proyecto. Ademas,
se incluye en el analisis el efecto del vineteado (dependencia de la intensidad recibida con
cos4(α), siendoα el angulo de incidencia). Este analisis permite corregir este efecto al
aplicar las transformaciones radiometricas. Ası es posible suavizar aun mas el efecto de las
transiciones entre imagenes (los bordes de las imagenes originales).
5.3. Conclusiones
En este Proyecto Fin de Carrera se ha disenado un sistema de composicion de imagenes
digitales, capaz de crear mosaicos con imagenes que difieren tanto en geometrıa (direccion
de vista) como en amplitud (exposicion). Las condiciones en que tiene lugar esto permiten
que las fotografıas de entrada esten tomadas con mucha mas libertad que los sistemas de
composicion de mosaicos existentes en el mercado.
Se ha analizado el problema de la transformacion geometrica entre imagenes en au-
sencia de calibracion. Se han determinado las condiciones en las que es posible hallar una
correspondencia geometrica entre imagenes, y han resultado ser mas laxas que las asumidas
en cualquiera de las referencias que se han consultado. Se imponen dos restricciones en la
geometrıa: superposicion del 30 % de la superficie y ausencia de escalado significativo.
Se han estudiado metodos de correspondencia geometrica entre imagenes, invariantes
frente a rotacion y sin determinacion a priori delarea en que se deben buscar los puntos
homologos. Se ha disenado un metodo robusto basado en la aplicacion de momentos de
Zernike.
Se ha estudiado bajo que condiciones es posible recuperar la respuesta en amplitud
de una camara a partir de imagenes con distinta exposicion. Se han determinado las con-
96 Pruebas, resultados y conclusiones
diciones en las que se puede trabajar con funciones de respuesta radiometrica cuando se
desconocen las relaciones de exposicion entre las imagenes. Se ha generalizado el concepto
de gammapara hacerlo aplicable a distintos modelos de respuesta, y se han definido los
conceptos deγ-invarianzay conjunto de Grossbergpara fijar dichas condiciones.
Se ha demostrado que es posible, a partir de una funcion de transferencia calculada de
forma erronea (por la indeterminacion exponencial), obtener en el procesado radiometrico
los mismos resultados que si se hubiera calculado la funcion correctamente. Se ha aplicado
esta propiedad para garantizar la estabilidad de los resultados en el sistema disenado.
Se han analizado distintos metodos de compresion del rango dinamico y se ha imple-
mentado un algoritmo de compresion Retinex modificado, con el que se consiguen imagenes
de rango dinamico comprimido y contraste elevado, agradables a la vista.
Se ha desarrollado una tecnica objetiva de evaluacion de la calidad de la composicion.
Se han estudiado los mosaicos generados por el sistema empleando esa tecnica.
Se han estudiado algunas de las limitaciones del sistema y se han propuesto mejoras
para una posible implementacion comercial.
APENDICE A
Software de Composicion de Imagenes Digitales
Para el desarrollo del SCID se ha implementado untoolboxen MATLAB r, con el que
se pueden desarrollar todas las funcionalidades del sistema. Ademas, contiene algunas fun-
ciones adicionales que se pueden utilizar de forma complementaria, como algoritmos alter-
nativos a algunas de las soluciones o para evaluar la calidad de los resultados.
El modulo clave esta en el ficheromosaic.m: es el prototipo completo del SCID. Este
programa llama a algunos otros de los desarrollados, ası como a funciones delImage Pro-
cessing Toolboxde MATLAB r. La funcion mosaic opera sobre un conjunto de imagenes
de entrada en RGB, con 24 bits por pıxel. La imagen de salida es el mosaico, RGB, en coma
flotante de doble precision (Double).
El algoritmo utilizado responde a la descripcion hecha a lo largo del proyecto y, por
tanto, al diagrama de bloques de la figura2.1en la pagina14. Los bloques funcionales del
SCID no se corresponden directamente con funciones deltoolbox. Las subdivision en fun-
ciones se ha hecho buscando facilidad y flexibilidad durante el desarrollo y las pruebas del
prototipo, mientras que el diagrama de bloques se ha disenado para facilitar la comprension
de las tecnicas utilizadas y su posterior implementacion.
El listado presentado en la pagina siguiente muestra el conjunto de ficheros que confor-
man elToolboxde Composicion de Imagenes Digitales. Ademas, para el funcionamiento
de alguno de ellos es necesario utilizar algunas funciones adicionales, extraıdas de [17]
(implementacion de RANSAC) y [26] (optimizacion cuadratica).
97
98 Software de Composicion de Imagenes Digitales
Tabla A.1. Ayuda delToolboxde Composicion de Imagenes Digitales. Contiene un listado
de todos los ficheros desarrollados.
************************************************************
SCID. Software para composicion de imagenes digitales
Desarrollado por Pablo Perez Garcia para el PFC
<[email protected]> Septiembre 2004
************************************************************
Composicion de imagenes digitales
MOSAIC - Crea un mosaico con las imagenes de entrada
Deteccion de esquinas y puntos de control
CORNERS - Detector de esquinas generico
HARRIS (1)- Detector de esquinas de Harris
KLTFEAT (2)- Deteccion de patrones 2D usando klt
SUSAN (3)- Detector de esquinas (SUSAN)
BLKSUSAN - Deteccion de esquinas con susan por bloques
KLTDT (2)- KLT deteccion y seguimiento
TAKEN - Toma N puntos de control
Seguimiento (tracking) de puntos de control
XCORR_CPFIND - Encontrar puntos de control por correlacion cruzada
ZERNIKE_CPFIND - Encontrar puntos de control por momentos de Zernike
ZERNIKE_CPMATCH - Emparejar puntos de control por momentos de Zernike
KLTTRACK (2)- Seguimiento de puntos usando KLT
KLTDT (2)- KLT deteccion y seguimiento
Calculos de momentos de Zernike
ZERNIKE - Momentos de Zernike
ZERNIKE_POL - Polinomios de Zernike
ZERNIKE_M - Orden de los momentos de Zernike
Estima de la transformacion geometrica
CP2AFFINE - Puntos de Control a Transformacion Afin
BESTAFFINE - Mejor Transformacion Afin
CP2PARAM - Puntos de Control a Transformacion Rigida
BESTPARAMS - Mejores parametros de Transformacion Rigida
99
ZERNIKE_TFORM - Estimar transformacion por momentos de Zernike
ZERNIKE_TFORM_RANSAC - Estima robusta por momentos de Zernike
FIND_TFORM - Transformacion de alineamiento
Herramientas de calculo comparametrico
CGRAPH - Comparagraph de dos imagenes
COMPARAGRAPH - Comparagraph a partir de dos cumulagraphs
COMPARAGRAM - Comparagrama (histograma cruzado)
COMPADJUST - Ajustar iluminacion usando comparagramas
FIND_K - Estimar la constante de exposicion
G2TAU - Calcula la FCI a partir de la respuesta inversa ’g’
Modelo de "Funcion Preferida" de Mann
INVMANN - Funcion de Mann inversa
LINMANN - Funcion de Mann directa
INVLOGMANN - Funcion de Mann inversa, escala logaritmica
LOGMANN - Funcion de Mann directa, escala logaritmica
TAUMANN - Comparagraph (FCI) del modelo de Mann
NORMMANN - Distancia de la FCI al modelo de Mann
NORMMANNC - Distancia de la FCI al modelo de Mann, parametro C
NORMMANNA - Distancia de la FCI al modelo de Mann, parametro A
NORMMANNGAMMA - Distancia de la FCI al modelo de Mann, fijando gamma
Modelo de Grossberg-Nayar-Mitsunaga (GNM)
GNMQUAD - Optimizacion cuadratica de datos GNM
GNMPOLY - Modelo polinomico GNM
GNMEMOR - EMoR (Empirical Model of Response)
Transformaciones entre espacios de color
RGB2Y - Imagen en grises (luminancia) a partir de RGB
RGB2UVY - Transforma de RGB a uvY
UVY2RGB - Transforma de uvY a RGB
Retinex: compresion de rango dinamico
APPLY_RETINEX_MASK - Aplicar compresion retinex
RETINEXMASK (4)- Mascara de compresion retinex
Alineamiento de las imagenes
REGISTER_BAS - Herramienta para alinear imagenes
REGISTER_PREV - Herramienta para prealinear imagenes
100 Software de Composicion de Imagenes Digitales
REGISTER_PART - Alineamiento parcial
REGISTER_RAD - Hallar mapa radiometrico y prealinear
Suma de imagenes (composicion)
SUMAR_IMAGENES - Suma dos imagenes
REGISTER_MIX - Sumar imagenes ponderadamente
REGISTER_MEDIAN - Mediana ponderada de imagenes
REGISTER_LOG_MANN - Composicion de imagenes siguiendo el modelo de Mann
Comprobacion del alineamiento y medidas de calidad
TESTDISTANCIA - Comprueba si los puntos encontrados son correctos
CPTEST - Comprueba que puntos encontrados son correctos
QXCORR - Correlacion entre dos imagenes
EVALREG - Evalua la calidad de un registro de imagenes
QUALMOSAIC - Evalua la calidad de un mosaico
FINDZOOM - Halla la escala asociada a la transformacion
ERROR_MASK - Mascara de error (modelo de Mann)
(1) Basado en el codigo de P.Kovesi
http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/
(2) Basado en el codigo de S.Birchfield
http://www.ces.clemson.edu/~stb/klt/
(3) Basado en el codigo de S.M.Smith
http://www.fmrib.ox.ac.uk/~steve/susan/
(4) Basado en el codigo de F.Funt et al.
http://www.cs.sfu.ca/~colour/publications/IST-2000/
101
Cada uno de los ficheros implementados tiene su propia ayuda, por lo que su uso es
sencillo. En el CD adjunto se puede encontrar todo el codigo documentado y una breve guıa
de instalacion y uso.
Se comentan ahora algunas de las funciones, agrupadas por bloques segun su cometido.
Deteccion de esquinas y puntos de control
Se han implementado los detectores de Harris, SUSAN y Tomasi-Kanade (KLT). Para
seleccionar un numero concreto de puntos de control en la imagen se utilizataken (pun-
tos repartidos por toda la imagen) yblksusan (dividiendo la imagen en partes iguales y
tomando puntos en cada una de ellas). Esteultimo solo funciona con SUSAN (aunque es
inmediato implementar modulos similares con Harris y KLT).
Seguimiento de puntos de control
Una vez localizados los puntos de control en la imagen de entrada es necesario encontrar
sus puntos homologos en la de referencia. Se han implementado modulos que utilizan corre-
lacion cruzada (xcorr_cpfind) y momentos de Zernike (zernike_cpfind), buscando los
homologos por toda la imagen de referencia.
zernike_cpmatch busca los puntos homologos solo en esquinas de la imagen de refe-
rencia: es la solucion que se ha usado en el prototipo definitivo.
klttrack implementa un seguidor KLT ykltdt contiene, en una misma funcion, de-
teccion y seguimiento de puntos de control por KLT.
Calculos de los momentos de Zernike
Conjunto de funciones auxiliares. Calculan los momentos de Zernike en un conjunto de
puntos de una imagen (zernike), a partir de los polinomios de Zernike (zernike_pol).
Conzernike_m se generan automaticamente losındices de todos los momentos de Zernike
de grado igual o inferior a un valormque se pasa como parametro
Estima de la transformacion geometrica
La funcion find_tform implementa el bloque funcionalCGEO del SCID: calcula la
transformacion geometrica a partir de un conjunto de imagenes de entrada.
zernike_tform_ransac estima una primera transformacion rıgida, como ya se ha
visto en la presente memoria. Toda las transformaciones posibles con los puntos de con-
102 Software de Composicion de Imagenes Digitales
trol hallados se calculan concp2param. Despues se selecciona la mejor de ellas usando
RANSAC.
zernike_tform es una version anterior que no utiliza RANSAC, por lo que es menos
robusta, aunque algo mas rapida. Utiliza otro algoritmo, implementado enbestparams,
para calcular la mejor transformacion.
cp2affine y bestaffine permiten cambiar el modelo de transformacion rıgida por
una transformacion afın generica.
Herramientas de calculo comparametrico
compadjust es la funcion equivalente al modulo AHIST del SCID (§ 4.4.4 en la
pagina69): ajusta dos imagenes en amplitud y devuelve el grafo comparametrico asociado.
La FCI de dos imagenes se puede estimar a partir de sus histogramas acumulados, mo-
dificados o no (comparagraph), de las imagenes (cgraph) a traves de su comparagrama
(calculado concomparagram) o directamente a partir de la inversa de la funcion de trans-
ferencia (g2tau).
Modelo de “Funcion preferida” de Mann
Aquı se implementa el modelo de funcion de respuesta de Mann, tanto directa como
inversa, en escala lineal o logarıtmica. Tambien se implementa la FCIτ(I) del modelo a
partir de los valores de intensidadI y de los parametros que definen la funcion de respuesta
y la exposicion.
Finalmente se calcula la distancia entre un grafo comparametrico y la FCI analıtica,
en funcion de distintos parametros de entrada (todas las funciones que empiezan por
normmann). Con ellas se calcula la funcion de transferencia o la exposicion utilizando el
optimizador no lineal deMATLAB r fminsearch.
Modelo de Grossberg-Nayar-Mitsunaga
Funciones de respuesta tipo GNM, tanto EMoR (gnmemor) como polinomica
(gnmpoly). gnmquad utiliza el optimizador cuadratico desarrollado por Neumaier [26] para
calcular los parametros de la funcion de transferencia. Se sugiere utilizar, si se dispone de
el, el optimizadorquadprog delOptimization ToolboxdeMATLAB r.
103
Transformaciones entre espacios de color
Permite obtener, a partir de imagenes RGB, la luminancia (rgb2y). Tambien se im-
plementan las transformaciones entre el espacio de color RGB y el espacio uvY, que es el
espacio luminancia-crominancia mas adecuado para trabajar con sistemas de este tipo (la
transformacion es lineal y las variaciones de crominancia son, aproximadamente, percep-
tualmente uniformes).
Retinex: compresion del rango dinamico
Modulo de compresion Retinex segun el algoritmo de Sobol, tal como se describe en
4.5.1. apply_retinex_mask implementa el modulo completo.retinex_mask calcula la
mascara de compresionM.
Alineamiento de las imagenes
Distintas alternativas al alineamiento de imagenes. Todas ellas toman una imagen de
entrada y una transformacion geometrica y generan la imagen de salida. Difieren unas de
otras en el marco en que se coloca la imagen final:
register_bas alinea dos imagenes (entrada y referencia) al mınimo marco que con-
tiene a ambas.
register_prev transforma la imagen de entrada restringida al marco de la imagen
de referencia.
register_part halla y aplica el mınimo marco que contiene a la imagen de salida
y que esta a una distancia entera del origen de coordenadas.
register_rad hace lo mismo que el anterior y, ademas, aplica la funcion de trans-
ferencia inversag y la constante de exposicion k a la imagen de entrada, por lo que
genera una imagen en escala de cantidad de luz.
Suma de imagenes (composicion)
sumar_imagenes hace la media, pıxel a pıxel, de dos imagenes (salvo en los pun-
tos en que una de ellas vale cero, donde toma el valor de la otra).register_mix imple-
menta el modulo de composicion COMP, es decir, calcula la composicion de las imagenes
de entrada ponderada por sus respectivas mascaras, que tambien se toman como entrada.
104 Software de Composicion de Imagenes Digitales
register_median hace lo mismo pero, en vez de tomar medias ponderadas, tomamedia-
nas ponderadas.
register_log_mann implementa los modulos ARAD, MASK, AGEO (a traves de
register_part) y COMP (a traves deregister_mix). Recibe como entrada un conjunto
de imagenes RGB, las transformaciones geometricas que las relacionan, sus constantes de
exposicion y la funcion de transferencia radiometrica. Obtiene a su salida el mosaico com-
puesto, en escala de logaritmo de cantidad de luz. La funcion de transferencia es la de
Mann.
Comprobacion del alineamiento y medidas de calidad
Se han implementado distintas funciones que miden la calidad de las transformaciones
calculadas, en diversas partes del proceso.testdistancia y cptest comparan pares de
puntos de control con un modelo de transformacion dado.qxcorr calcula la correlacion
cruzada entre dos imagenes, tomando ventanas cuadradas a partir de cada uno de sus pıxeles.
Con las funciones restantes (evalreg, qualmosaic, findzoom, error_mask) se han
hecho las medidas de calidad descritas en5.1.
Referencias
[1] BATTIATO, S.; CASTORINA, A. y MANCUSO, M. “High dynamic range imaging for digitalstill camera: an overview”.Journal of Electronic Imaging, vol 12, num 3, pp. 459–469, Julio2003.
[2] BIRCHFIELD, S. “KLT: An implementation of the Kanade-Lucas-Tomasi feature tracker [enlınea]”. Citado: Octubre de 2004,http://www.ces.clemson.edu/∼stb/klt/.
[3] CAPEL, D. Image Mosaicing and Super-resolution. Springer Verlag, 2004. ISBN: 1-85233-771-0.
[4] CAPEL, D. y ZISSERMAN, A. “Automated mosaicing with super-resolution zoom”. EnProc.Computer Vision and Pattern Recognition, pp. 885 – 891. Junio 1998.
[5] DAVIES, E. R. Machine Vision: Theory, Algorithms, Practicalities, cap. 14: “Corner Loca-tion”. Academic Press, 1990.
[6] FUNT, B.; CIUREA, F. y MCCANN, J. “Retinex in Matlab”. EnProceedings of the IS&T/SIDEighth Color Imaging Conference: Color Science, Systems and Applications, pp. 112–121.2000. Citado: Octubre de 2004,http://www.cs.sfu.ca/∼colour/publications/IST-2000/.
[7] GROSSBERG, M. D. y NAYAR, S. K. “Determining the camera response from images: Whatis knowable?”. IEEE Transactions on Pattern Analysis and Machine Intelligence, vol 25,num 11, pp. 1455–1467, Noviembre 2003.
[8] GROSSBERG, M. D. y NAYAR, S. K. “Modeling the space of camera response functions”.IEEE Transactions on Pattern Analysis and Machine Intelligence, vol 26, num 10, pp. 1272–1282, Octubre 2004.
[9] HARRIS, C. y STEPHENS, M. “A combined corner and edge detector”. EnProceedings ofThe Fourth Alvey Vision Conference, Manchester, pp. 147–151. 1988.
105
106 REFERENCIAS
[10] HARTLEY, R. y ZISSERMAN, A. Multiple view geometry in computer vision. CambridgeUniversity Press, 2000. ISBN: 0-521-62304-9.
[11] HASLER, D. y SUSSTRUNK, S. “Mapping colour in image stitching applications”.Journalof Visual Communication and Image Representation, vol 15, num 1, pp. 65–90, Marzo 2004.
[12] HU, M. K. “Visual pattern recognition by moment invariants”.IRE Transactions on Informa-tion Theory, vol 233, pp. 179–187, Febrero 1962.
[13] JAEHNE, B.Practical Handbook on Image Processing for Scientific Applications. CRC Press,1997. ISBN: 0-8493-8906-2.
[14] KIM, D.-W. y HONG, K.-S. “Enhanced mosaic blending using intrinsic camera parametersform a rotating and zooming camera”. EnProceedings of th IEEE International Conferenceon Image Processing, pp. 3303–3306. Octubre 2004.
[15] KIM, S.-H. Probabilistic Model-based Object Recognition using Local Zernike Moments.Master Thesis, Robotic and Computer-Vision Laboratory. Korea Advanced Institute of Science,2002.
[16] KITCHEN, L. y ROSENFELD, A. “Gray-level corner detection”.Pattern Recognition Letters,vol 1, pp. 95–102, 1982.
[17] KOVESI, P. “Matlab functions for computer vision and image analysis [en lınea]”. Citado:Octubre de 2004,http://www.csse.uwa.edu.au/∼pk/Research/MatlabFns/.
[18] LINDEBERG., T. “Principles for automatic scale selection”. Inf. Tec. ISRN KTH/NA/P-98/14-SE, Department of Numerical Analysis and Computing Science, KTH, Stockholm, Swe-den, 1998.
[19] LUCAS, B. D. y KANADE, T. “An iterative image registration technique with an applicationto stereo vision”. EnInternational Joint Conference on Artificial Intelligence, pp. 674–679.1981.
[20] MANN, S. “Comparametric equations with practical applications in quantigraphic image pro-cessing”.IEEE Transactions on Image Processing, vol 9, num 8, pp. 1389–1406, Agosto 2000.
[21] MANN, S. Intelligent Image Processing. John Wiley and Sons, 2001. ISBN: 0-471-40637-6.
[22] MANN, S.; MANDERS, C. y FUBG, J. “Painting with looks: Photographic images from videousing quantimetric processing”. EnProc. Multimedia 2002, Juan les Pins. Diciembre 2002.
[23] MANN, S. y MANN, R. “Quantigraphic imaging: Estimating the camera response and expo-sures from differently exposed images”. EnProc. of IEEE Conference on Computer Vision andPattern Recognition, pp. 842–849. 2001.
[24] MARTIN, A. y MARTIN, P. Colorimetrıa. Ciencia 3. Distribucion, S.A., 1996. ISBN: 84-95391-78-3.
[25] MITSUNAGA, T. y NAYAR, S. K. “Radiometric self calibration”. EnProc. CVPR, pp. 374 –380. junio 1999.
REFERENCIAS 107
[26] NEUMAIER, A. “MINQ: General definite and bound constrained indefinite quadratic pro-gramming [en lınea]”. Citado: Octubre de 2004,http://www.mat.univie.ac.at/∼neum/software/minq/.
[27] NIBLACK, W. An Introduction to Digital Image Processing. Prentice-Hall International, 1985.ISBN: 0-13-480674-3.
[28] PRESS, W. et al.Numerical Recipes in C: The Art of Scientific Computing. Cambridge Uni-versity Press, 1988. ISBN: 0-521-43108-5.
[29] SCHMID, C.; MOHR, R. y BAUCKHAGE, C. “Comparing and evaluating interest points”.EnProceedings of the 6th International Conference on Computer Vision, Bombay, India. IEEEComputer Society Press, Enero 1998.
[30] SECILLA, J. P.; GARCIA, N. y CARRASCOSA, J. L. “Template location in noisy pictures”.Signal Processing, vol 14, num 4, pp. 347–361, Junio 1988.
[31] SHUTLER, J. “Statistical moments”. EnCVonline: On-Line Compendium of Computer Vision[en lınea], Agosto 2002. Citado: Octubre de 2004,http://homepages.inf.ed.ac.uk/rbf/CVonline.
[32] SMITH, S. M. “SUSAN low level image processing [en lınea]”. Citado: Octubre de 2004,http://www.fmrib.ox.ac.uk/∼steve/susan/.
[33] SMITH, S. M. y BRADY, J. M. “SUSAN - a new approach to low level image processing”.International Journal of Computer Vision, vol 23, num 1, pp. 47–58, Mayo 1997.
[34] SOBOL, P. “Improving the retinex algorithm for rendering wide dynamic range phtographs”.Journal of Electronic Imaging, vol 13, num 1, pp. 65–75, Enero 2004.
[35] SZELISKI, R. “Image mosaicing for tele-reality applications”. Inf. Tec. 94/2, Digital Equip-ment Corporation, Cambridge Research Lab, Junio 1994.
[36] SZELISKI, R. y HEUNG-YEUNG, S. “Creating full view panoramic image mosaics andenvironment maps”. EnProceedings of the 24th annual conference on Computer graphics andinteractive techniques, pp. 251–258. 1997.
[37] TOMASI, C. y KANADE, T. “Detection and tracking of point features”. Inf. Tec. CMU-CS-91-132, Carnegie Mellon University, Abril 1991.
108 REFERENCIAS
Pliego de Condiciones
Este documento contiene las condiciones legales que guiaran la implementacion, en esteproyecto, del Sistema de Composicion de Imagenes Digitales. En lo que sigue se supondra queel proyecto ha sido encargado por una empresa cliente a una empresa consultora, con la finalidadde llevar a cabo el desarrollo comentado. Dicha empresa ha debido desarrollar una lınea deinvestigacion con objeto de elaborar el proyecto considerado. Esta lınea de investigacion, juntocon el posterior desarrollo de los programas, esta amparada por las condiciones particulares delsiguiente pliego.
Supuesto que la utilizacion industrial de los metodos recogidos en el presente proyecto ha sidodecidida por parte de la empresa cliente o de otras, la obra a realizar se regulara por las siguientes:
Condiciones generales
1. La modalidad de contratacion sera el concurso. La adjudicacion se hara, por tanto, a laproposicion mas favorable sin atender exclusivamente al valor economico, dependiendode las mayores garantıas ofrecidas. La empresa que somete el proyecto a concurso sereserva el derecho a declararlo desierto.
2. El montaje y mecanizacion completa de los equipos que intervengan sera realizadototalmente por la empresa licitadora.
3. En la oferta se hara constar el precio total por el que se compromete a realizar la obra yel tanto por ciento de baja que supone este precio en relacion con un importe lımite sieste se hubiera fijado.
4. La obra se realizara bajo la direccion tecnica de un Ingeniero Superior de Telecomuni-cacion, auxiliado por el numero de Ingenieros Tecnicos y Programadores que se estimepreciso para el desarrollo de la misma.
5. Aparte del Ingeniero Director, el contratista tendra derecho a contratar al resto del per-sonal, pudiendo ceder esta prerrogativa a favor del Ingeniero Director, quien no es-tara obligado a aceptarla.
109
110 Pliego de condiciones
6. El contratista tiene derecho a sacar copias a su costa de los planos, pliego de condicio-nes y presupuestos. El Ingeniero autor del proyecto autorizara con su firma las copiassolicitadas por el contratista despues de confrontarlas.
7. Se abonara al contratista la obra que realmente ejecute con sujecion al proyecto quesirvio de base para la contratacion, a las modificaciones autorizadas por la superioridado a lasordenes que con arreglo a sus facultades le hayan comunicado por escrito alIngeniero Director de obras, siempre que dicha obra se haya ajustado a los preceptosde los pliegos de condiciones, con arreglo a los cuales, se haran las modificaciones yla valoracion de las diversas unidades, sin que el importe total pueda exceder de lospresupuestos aprobados. Por consiguiente, el numero de unidades que se consignan enel proyecto o en el presupuesto no podra servirle de fundamento para entablar reclama-ciones de ninguna clase, salvo en los casos de rescision.
8. Tanto en las certificaciones de obras como en la liquidacion final se abonaran los tra-bajos realizados por el contratista a los precios de ejecucion material que figuran en elpresupuesto para cada unidad de la obra.
9. Si, excepcionalmente, se hubiera ejecutado algun trabajo que no se ajustase a las con-diciones de la contrata, pero que sin embargo fuera admisible a juicio del IngenieroDirector de obras, se dara conocimiento a la Direccion, proponiendo a la vez la rebajade precios que el Ingeniero estime justa, y si la Direccion resolviera aceptar la obra,quedara el contratista obligado a conformarse con la rebaja acordada.
10. Cuando se juzgue necesario emplear materiales o ejecutar obras que no figuren en elpresupuesto de la contrata, se evaluara su importe a los precios asignados a otras obras omateriales analogos si los hubiere, y cuando no, se discutiran entre el Ingeniero Directory el contratista, sometiendolos a la aprobacion de la Direccion. Los nuevos preciosconvenidos por uno u otro procedimiento se sujetaran siempre a lo establecido en elpunto anterior.
11. Cuando el contratista, con autorizacion del Ingeniero Director de obras, emplee mate-riales de calidad mas elevada o de mayores dimensiones de lo estipulado en el proyecto,o sustituya una clase de fabricacion por otra que tenga asignado mayor precio, o eje-cute con mayores dimensiones cualquier otra parte de las obras, o en general, introduzcaen ellas cualquier modificacion que sea beneficiosa a juicio del Ingeniero Director deobras, solo tendra derecho, sin embargo, a lo que le corresponderıa si hubiera realizadola obra con estricta sujecion a lo proyectado y contratado.
12. Las cantidades calculadas para obras accesorias, aunque figuren por partida alzada enel presupuesto final (general), no seran abonadas sino a los precios de la contrata, segunlas condiciones de la misma y los proyectos particulares que para ellas se formen, o ensu defecto, por lo que resulte de su medicion final.
13. El contratista queda obligado a abonar al Ingeniero autor del proyecto y director deobras, ası como a los Ingenieros Tecnicos, el importe de sus respectivos honorariosfacultativos por formacion del proyecto, direccion tecnica y administracion en su caso,con arreglo a las tarifas y honorarios vigentes.
14. Concluida la ejecucion de la obra sera reconocida por el Ingeniero Director que a talefecto designe la empresa.
15. La garantıa definitiva sera del4%del presupuesto, y la provisional del2%.
16. La forma de pago sera por certificaciones mensuales de la obra ejecutada, de acuerdocon los precios del presupuesto, deducida la baja si la hubiera.
Pliego de condiciones 111
17. La fecha de comienzo de las obras sera a partir de los 15 dıas naturales del replanteooficial de las mismas, y la definitiva, al ano de haber ejecutado la provisional, pro-cediendose, si no existe reclamacion alguna, a la reclamacion de la fianza.
18. Si el contratista, al efectuar el replanteo, observase algun error en el proyecto, de-bera comunicarlo en el plazo de quince dıas al Ingeniero Director de obras, pues trans-currido ese plazo sera responsable de la exactitud del proyecto.
19. El contratista esta obligado a designar una persona responsable que se entendera con elIngeniero Director de obras, o con el delegado queeste designe, para todo lo relacionadocon ella. Al ser el Ingeniero Director de obras el que interpreta el proyecto el contratistadebera consultarle cualquier duda que surja en su realizacion.
20. Durante la realizacion de la obra se giraran visitas de inspeccion por personal faculta-tivo de la empresa cliente para hacer las comprobaciones que se crean oportunas. Esobligacion del contratista la conservacion de la obra ya ejecutada hasta la recepcionde la misma, por lo que el deterioro parcial o total de ella, aunque sea por agentesatmosfericos u otras causas, debera ser reparado o reconstruido por su cuenta.
21. El contratista debera realizar la obra en el plazo mencionado a partir de la fecha del con-trato, incurriendo en multa por retraso de la ejecucion, siempre queeste no sea debidoa causas de fuerza mayor. A la terminacion de la obra se hara una recepcion provisio-nal previo reconocimiento y examen por la direccion tecnica, el depositario de efectos,el interventor y el jefe de servicio o un representante, estampando su conformidad elcontratista.
22. Hecha la recepcion provisional se certificara al contratista el resto de la obra, re-servandose la administracion el importe de los gastos de conservacion de la mismahasta su recepcion definitiva y la fianza durante el tiempo senalado como plazo degarantıa. La recepcion definitiva se hara en las mismas condiciones que la provisio-nal, extendiendose el acta correspondiente. El Director Tecnico propondra a la JuntaEconomica la devolucion de la fianza al contratista de acuerdo con las condicioneseconomicas legales establecidas.
23. Las tarifas para la determinacion de honorarios, reguladas por orden de la Presidenciadel Gobierno el 19 de Octubre de 1961, se aplicaran sobre el denominado en la actua-lidad ”Presupuesto de Ejecucion de Contrata”, anteriormente llamado ”Presupuesto deEjecucion Material”que hoy designa otro concepto.
Condiciones particulares La empresa consultora que ha desarrollado el presente proyectolo entregara a la empresa cliente bajo las condiciones generales ya formuladas, debiendoanadirse las siguientes condiciones particulares:
1. La propiedad intelectual de los procesos descritos y analizados en el presente trabajopertenece por entero a la empresa consultora representada por el Ingeniero Director delProyecto.
2. La empresa consultora se reserva el derecho a la utilizacion total o parcial de los resul-tados de la investigacion realizada para desarrollar el siguiente proyecto, bien para supublicacion, bien para su uso en trabajos o proyectos posteriores para la misma empresacliente o para otra.
3. Cualquier tipo de reproduccion aparte de las resenadas en las condiciones generales,bien sea para uso particular de la empresa cliente, o para cualquier otra aplicacion,
112 Pliego de condiciones
contara con autorizacion expresa y por escrito del Ingeniero Director del Proyecto, queactuara en representacion de la empresa consultora.
4. En la autorizacion se ha de hacer constar la aplicacion a que se destinan sus reproduc-ciones, ası como su cantidad.
5. En todas las reproducciones se indicara su procedencia, explicitando el nombre delproyecto, nombre del Ingeniero Director y de la empresa consultora.
6. Si el proyecto pasa la etapa de desarrollo, cualquier modificacion que se realice sobreeldebera ser notificada al Ingeniero Director del Proyecto, y a criterio deeste la empresaconsultora decidira aceptar o no la modificacion propuesta.
7. Si la modificacion se acepta la empresa consultora se hara responsable al mismo nivelque el proyecto inicial del que resulta el anadirla.
8. Si la modificacion no es aceptada, por el contrario, la empresa consultora declinara todaresponsabilidad que se derive de la aplicacion o influencia de la misma.
9. Si la empresa cliente decide desarrollar industrialmente uno o varios productos en losque resulte parcial o totalmente aplicable el estudio de este proyecto debera comuni-carlo a la empresa consultora.
10. La empresa consultora no se responsabiliza de los efectos laterales que se puedan pro-ducir en el momento en que se utilice la herramienta objeto del presente proyecto parala realizacion de otras aplicaciones.
11. La empresa consultora tendra prioridad respecto a otras en la elaboracion de los proyec-tos auxiliares que fuese necesario desarrollar para dicha aplicacion industrial, siempreque no haga explıcita renuncia a este hecho. En este caso, debera autorizar expresa-mente los proyectos presentados por otros.
12. El Ingeniero Director del presente proyecto sera el responsable de la direccion de laaplicacion industrial, siempre que la empresa consultora lo estime oportuno. En casocontrario la persona designada debera contar con la autorizacion del mismo, quien de-legara enel las responsabilidades que ostente.
Presupuesto
Ejecucion Material
− Compra de un ordenador de sobremesa (software incluido) . . . . . . . . . . . . . . . . . 1.500e
− Compra de una camara fotografica digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350e
− LicenciaI deMATLAB r (incluyendoImage Processing Toolbox) . . . . . . . . . . . . . 525e
− Alquiler de una impresora laser durante 1 mes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180e
− Material de oficina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150e
− Subtotal de ejecucion material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.705e
Gastos Generales
− 16 % sobre Ejecucion Material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433e
Beneficio Industrial
− 6 % sobre Ejecucion Material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162e
Gastos de personal
− 8 h/dıa · 20 dıas/mes· 8 meses= 1280horas
− Gasto (directo e indirecto) por hora de trabajo de ingeniero: 24e/hora 30.720e
Material Fungible
− Gastos de impresion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30e
− Encuadernacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150e
− Subtotal de material fungible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180e
Subtotal del presupuesto
ISe imputa a este proyecto un 15 % del coste de la licencia.
113
114 Presupuesto
− Subtotal Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33.570e
I.V.A. aplicable
− 16 % Subtotal Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.371e
Total Presupuesto
− Total Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38.941e
Madrid, a de noviembre de 2004.
El Ingeniero Jefe del Proyecto
Fdo: Pablo Perez Garcıa
Ingeniero de Telecomunicacion