El proyecto "Calibración Monocular de Cámaras" fue realizado por Andrés Azar y Pablo Musé, como proyecto final de la carrera de Ingeniería Eléctrica, extendiéndose desde abril de 1998 hasta Noviembre de 1999. El proyecto fue realizado en el marco del Grupo de Tratamiento de Imágenes, bajo la dirección de Gregory Randall.
El problema a resolver consistió en lograr, a partir de imágenes
tomadas con un sistema de adquisición digital:
Todo lo anterior se reduce a aplicaciones particulares de la calibración
del sistema de adquisición. De esta forma, el proyecto se centró
en la implementación de una plataforma de calibración.
Los algoritmos se desarrollaron inicialmente en Matlab constituyendo una plataforma experimental conformada además por algoritmos de prueba y simulación. Luego se implementaron en C++ utilizando las librerías de Blitz++, BiCoTi (desarrollada en el IIE), Opsolve++ e ImageMagick (los fuentes pueden pedirse a los autores: azar@iie.edu.uy y pmuse@iie.edu.uy). Los ejecutables y la interfaz gráfica se compilaron para Windows95/98.
Defensa.zip
(850 kB) es una descripción muy breve del proyecto. Una descripción
más profunda se encuentra en la documentación
del proyecto.
Imágenes
de calibración:
Los resultados de la ejecución del software de calibración con estas imágenes, para un modelo de cámara pin-hole con distorsión radial, son los siguientes:
q1 = 0.080844
q2 = -0.037210
q3 = 0.707147
tx = 10.576247
ty = -11.625390
tz = 34.115490
au = 753.019377
av = 743.576335
u0 = 322.576283
v0 = 288.493315
alfa = -0.168193
Resultados de la medida en la imagen:
Con el sistema de adquisición calibrado, se obtuvieron errores de medida máximo del orden de 0.5 mm. Bajo las condiciones de esta calibración, estos errores corresponden aproximadamente a la magnitud de un pixel.
Corrección
del la distorsión radial:
Reconstrucción
del patrón de calibración (inversión del modelo completo)
Plataforma experimental en Matlab: cal_exp.zip
( kB).
Se puede bajar aquí
el archivo calib.zip (2.5 MB) que contiene todos los seis ejecutables de
la platafoma de calibración: cal_main.exe, cordmain.exe, med_main.exe,
pl_main.exe, rectmain.exe y calib.exe. Sus funcionalidades se describen
en la documentación y en al manual. Para correr el programa completo
con su interfaz basta con ejecutar "calib.exe".
Las tres imágenes de calibración
que se muestran en Demo
(datacal0, datacal1 y datacal2) se pueden bajar aquí, en formato
bmp (comprimidas), como datos de prueba de calib.exe: datacal.zip
(550 kB).
Para calibrar con estas imágenes de prueba,
se debe ejecutar calib.exe con los siguientes datos:
Deberían obtenerse aproximadamente
los mismos valores para los parámetros que se muestran en Demo.
El archivo de texto que contiene esos resultados (es una de las salidas
del programa) se puede bajar acá: caltar.tr
(1 KB).
Para medir y reconstruir, se debe hacerlo sobre imágenes contenidas en el plano de trabajo (nivel 0). Por este motivo, para medir y reconstruir con las imágenes de prueba, se deberá utilizar datacal0.bmp.
Datos para verificar medidas:
También se pueden bajar las imágenes
resultantes de la corrección de la distorsión y de la reconstrucción:
imres.zip
(470 kB).