Вы находитесь на странице: 1из 6

Scientia et Technica Ao XVI, No 44, Abril de 2010. Universidad Tecnolgica de Pereira.

ISSN 0122-1701

251

CALIBRACIN CMARA-BRAZO PARA EL SERVO CONTROL VISUAL DE MANIPULADORES SERIALES ROBTICOS


Hand-eye calibration for visual servoing in robotic serial manipulators

RESUMEN Se presenta una metodologa general para la obtencin semi-automatizada de la matriz de calibracin cmara-brazo, que en manipuladores robticos representa la transformacin homognea de coordenadas entre el centro ptico de la cmara y el efector final. En el mtodo presentado, la intervencin humana se limita a la pre-seleccin de las posiciones del robot que mejor ubican el patrn de calibracin dentro de las imgenes. El mtodo estima inicialmente los parmetros intrnsecos y extrnsecos de la cmara, para luego determinar la calibracin cmara-brazo por medio de un proceso iterativo altamente robusto al ruido tanto a nivel de pixel como de proceso. Se presentan los algoritmos propuestos, las interfaces grficas generadas, resultados y se discute acerca de los trabajos futuros. PALABRAS CLAVES: Calibracin, cmara-brazo, calibracin de cmara, servo control visual. ABSTRACT A general methodology for the semi-automated computation of the hand-eye calibration matrix is presented. In a robot manipulator, the hand-eye calibration is an homogeneous transformation matrix representing the pose of the camera with respect to the end-effector. The presented method requires human on the loop just for the pre-selection of adequate robot positions that allows the calibration pattern to fit into the images. The presented method estimates the intrinsic and extrinsic parameters rst, and then the hand-eye calibration by means of an iterative method highly robust to the pixel and process noise. Algorithms, graphical user interfaces and results are presented. Future work is discussed. KEYWORDS: Hand-eye calibration, camera calibration, visual servoing.

GERMN A HOLGUN L Ing. Electricista, M.Sc. Profesor Asistente Universidad Tecnolgica de Pereira gahol@ohm.utp.edu.co MAURICIO HOLGUN LONDOO Ing. Electricista, M.Sc. Profesor Auxiliar Universidad Tecnolgica de Pereira mau.hol@utp.edu.co

1. INTRODUCCIN El servo control visual es una tcnica de control automtico donde la realimentacin de lazo cerrado se lleva a cabo con la informacin obtenida de sensores visuales. Aunque esta tcnica fue inicialmente propuesta dentro de la comunidad cientfica de la robtica, con el fin de controlar el movimiento de brazos articulados, los avances en el rea se han ido incorporando con xito en una gran variedad de aplicaciones de automatizacin y control industrial [1]. En el caso especfico de los manipuladores articulados con al menos seis grados de libertad, una de las configuraciones ms populares es la llamada cmarabrazo, conocida como eye-in-hand en la literatura en ingls, que se obtiene cuando la cmara est ubicada en el efector final, es decir, en el ltimo eslabn de la cadena articulada. Esta configuracin tiene la ventaja de
Fecha de Recepcin: Enero 26 de 2010 Fecha de Aceptacin: Marzo 25 de 2010

proporcionar una vista clara y de primer plano del objeto a manipular, lo que facilita su identificacin, ubicacin y seguimiento. La configuracin cmara-brazo sin embargo, requiere de conocer con alto grado de precisin la transformacin de coordenadas entre el centro ptico de la cmara y el efector final, con el fin de ubicar el objetivo en el espacio tri-dimensional, usualmente con respecto al origen de coordenadas del robot. A medida que los sistemas de servo control visual ganan popularidad, se hace necesario desarrollar metodologas de calibracin robustas a la naturaleza dinmica y no estructurada del ambiente donde estos sistemas operarn, que hagan de su utilizacin una alternativa de automatizacin viable para su operacin en planta de forma segura, confiable, y que minimice costos de mantenimiento.

252

Scientia et Technica Ao XVI, No 44, Abril de 2010. Universidad Tecnolgica de Pereira.

Un problema frecuente es que la calibracin se puede perder con relativa facilidad debido a la vibracin a la que est expuesta la cmara por estar montada en el efector final. Algunas tcnicas de servo control visual libres de calibracin [2] han probado cierta viabilidad, sin embargo, por precisin y estabilidad, los mtodos basados en calibracin siguen predominando. Por esta razn, se hace necesario desarrollar una metodologa que permita la calibracin automtica en planta de sistemas cmara brazo, tal que el procedimiento pueda ser repetido con facilidad, tantas veces como sea necesario y sin sacrificar productividad ni incurrir en tiempos de parada no programados.

Donde la submatriz R representa la orientacin, y el r vector t la posicin en el espacio tri-dimensional [5]. 2.1. Nomenclatura Sea B el origen de coordenadas del robot, ubicado en la base del mismo. C el centro ptico de la cmara ubicada en el efector final, E el origen de coordenadas del efector final, O el origen de coordenadas del objeto a manipular y W el origen de coordenadas global o de referencia. Las transformaciones entre un centro de coordenadas y otra, de forma similar a Denavith-Hartenberg [6], estn denotadas por la letra mayscula H que indica que es un matriz de transformacin homognea, un subndice derecho y un superndice izquierdo que indican respectivamente el centro de coordenadas definido y la referencia utilizada. Por ejemplo, H B representa la matriz de transformacin homognea que define la posicin del efector final E con respecto a la base del robot B. La figura 2 muestra el conjunto de transformaciones utilizadas en el sistema en estudio.
E

2. MTODOS Y MATERIALES Tal y como se ilustra en la figura 1, un sistema cmarabrazo se crea al instalar una cmara rgidamente en el efector final de un manipulador de al menos seis grados de libertad.

Figura 1. Sistema Cmara-Brazo

Este ltimo requerimiento es debido a que menos de seis grados de libertad haran que el sistema fuese no holonmico, propiedad de gran aplicacin en robtica mvil y sistemas de transporte [3], pero de poca utilidad en manufactura avanzada y ensamble industrial. De esta forma, toda posicin del robot podr ser representada vectorialmente mediante 6 parmetros, 3 para la posicin en el espacio tri-dimensional y 3 para la orientacin de acuerdo con alguna de las representaciones angulares de Euler [4], o matricialmente mediante una matriz de transformacin homognea H, como en la ecuacin (1).

Figura 2. Transformaciones homogneas

Ntese que todos los sistemas de coordenadas escogidos deben son consistentes bien sea con la regla de la mano derecha, o izquierda. Lo que no es posible, es utilizarlos de forma combinada. La cmara mantendr siempre una posicin relativa constante con respecto al efector final. La matriz de coordenadas homogneas
C

R H = rT 0

r t 1

H E que representa la

(1)

posicin del centro ptico de la cmara con respecto al efector final, es conocida como la matriz de calibracin cmara-brazo, y cuya determinacin es el objeto del presente artculo.

Scientia et Technica Ao XVI, No 44, Abril de 2010. Universidad Tecnolgica de Pereira.

253

2.2. Cadena de Transformaciones Es evidente que para que un sistema como el de la figura 2 sea consistente, se debe cumplir que:
O

extrnsecos de la cmara

H C ) . Por supuesto, slo


i

HW * W H B = O H C * C H E * E H B

(2)

Donde el operador * est definido como la multiplicacin matricial. Ambos lados de la ecuacin (2) representan la posicin del objeto de inters con respecto a la base del robot
O

podrn utilizarse posiciones del efector final que permitan que el objeto patrn este contenido totalmente en la imagen capturada por la cmara, como es el caso de la figura 3, donde se muestra la imagen del patrn de calibracin capturada por la cmara, montada en el efector final, para un posicin especifica del robot. El nmero de muestras N a utilizar debe ser optimizado para minimizar el error sin causar sobre-ajuste. Cada muestra debe exhibir independencia, lo que en la prctica se logra tomando imgenes en posiciones no similares, por ejemplo, alterando suficientemente el ngulo de incidencia, la posicin del robot de una imagen a otra, procurando cubrir la mayor rea de trabajo posible.

H B , que es usualmente lo que se trata de estimar


O

en una aplicacin de servo control visual. En la prctica se utiliza slo el lado derecho de la ecuacin (2), donde la posicin del objeto respecto a la cmara

H C puede ser

estimada en tiempo real (asumiendo conocidos los parmetros intrnsecos de la cmara). La posicin del efector final H B es conocida, ya que el controlador del robot conoce las lecturas de los encoders en los servos y la cinemtica directa del robot. De esta cadena de transformaciones, slo falta por determinar entonces la
E

H E , que por ser una calibracin cmara-brazo constante puede realizarse a-priori. La transformacin
base-referencia
W

H B tambin es constante, y aunque no

se utiliza durante la operacin normal del sistema, conocerla resulta de inters prctico ya que permite validar los resultados de la calibracin tanto de forma cualitativa como cuantitativa.
Figura 3. Deteccin de esquinas del patrn de calibracin

2.3 Ecuacin homognea En la calibracin se utiliz un objeto patrn de dimensiones conocidas fijo en el espacio de trabajo del robot en una posicin y orientacin plenamente establecida con respecto al origen de coordenadas global. Como objeto patrn se utiliz una superficie plana con fondo blanco y textura tipo tablero de ajedrez, donde la posicin de cada uno de los mxn vrtices interiores de la cuadricula, con respecto al origen de coordenadas global, es conocida. Ntese adems que es posible hacer coincidir los orgenes de coordenadas global y del objeto patrn, haciendo que HW sea convenientemente igual a la matriz identidad, transformando la ecuacin (2) en:
W O

En la literatura, se pueden encontrar diferentes mtodos para resolver la ecuacin homognea (3). Por ejemplo, en [7] Tsai y Lenz, proponen un mtodo geomtrico para encontrar una solucin algebraica. Dornaika y Haraud proponen en [8], un mtodo para hallar simultneamente tanto la calibracin cmara-brazo, como la transformacin referencia-base. Para ello, se soluciona una ecuacin de matrices homogneas de la forma AX = ZB, y se sugiere separar la estimacin de la rotacin y la traslacin. Las soluciones algebraicas tienen la desventaja de no ser robustas al ruido, por lo que en la prctica los resultados presentan bajo desempeo. Hirsh, DeSouza, y Kak [9], establecieron el mtodo que arroj mejores resultados en nuestra comparacin. Aqu, se formula la ecuacin (3) como un problema de optimizacin no-lineal separando la parte rotacional de la traslacional, al igual que en [8], pero resolviendo las incgnitas de forma iterativa, mtodo que es naturalmente ms robusto al ruido tanto a nivel de pxel como de proceso.

H B = W HC * C H E * E H B
ecuacin
W

(3) dos transformaciones

La

(3) y
C

contiene

constantes, encontrar.

HB

H E , independientes de la posicin
posicin una del matriz robot de

del efector final y que constituyen las incgnitas a A cada entonces

HB )

corresponde

parmetros

254 3. PROCEDIMIENTO

Scientia et Technica Ao XVI, No 44, Abril de 2010. Universidad Tecnolgica de Pereira.

La metodologa que se propone puede ser ejecutada en lnea ya que el costo computacional del mtodo es despreciable en comparacin con el tiempo que tarda el robot en desplazarse hasta las N posiciones predeterminadas

La figura 4, muestra la ltima de las N imgenes capturadas. Los vrtices de la cuadricula de todas las N imgenes, se han superpuesto en verde. Ya que las coordenadas reales con respecto a la referencia global de cada uno de los vrtices de la cuadricula son conocidas, se utilizaron las recin calculadas matrices de calibracin para retro-proyectarlos en cada una de sus respectivas imgenes. El resultado de esta prueba es superpuesto con color rojo en la misma figura 4, probando as que la calibracin es satisfactoria.

HB )

donde

se

tomarn

correspondientes imgenes del patrn de calibracin. Las principales etapas del proceso se describen a continuacin.

3.1. Vrtices del patrn de calibracin En cada imagen capturada, se deben encontrar los vrtices interiores de la cuadricula, tal como se muestra en la figura 3. Para ello, es posible utilizar el detector de esquinas y bordos de Harris [10], o el detector de bordos optimizado de Canny [11]. Sin embargo, como es necesario etiquetar estos vrtices con el mismo nmero en todas las imgenes, resulta de gran utilidad detectar las lneas que forman la cuadricula utilizando la transformacin de Hough, como en [12]. El resultado de esta etapa ser un vector de coordenadas (x, y) de tamao mxn, para cada imagen i.

3.3. Problema de Optimizacin no-lineal De regreso a la ecuacin (3), y separando inicialmente la parte rotacional de las matrices homogneas, se tiene que
W

RB = ( W RC ) * C RE * ( E RB )
i

i
C

(4)

En la iteracin inicial se asume que RE es la matriz identidad. Entonces, la iteracin j + 1 est dada por

RB )

j +1

1 N

((
N i =1

RC ) * ( C RE ) * ( E RB )
i j

(5)

3.2 Parmetros de la cmara Los parmetros intrnsecos de la cmara se obtienen utilizando el mtodo flexible propuesto por Zhang en [13] que utiliza el algoritmo de minimizacin de Levenberg-Marquardt para hallar las distancias focales, el punto principal, y los parmetros de distorsin radial. Luego, para cada posicin
E W

( los parmetros extrnsecos (

H B ) se pueden encontrar
H C ) , [5].
i i

El mayor cuidado que se debe tener al evaluar (5), es recordar que las funciones suma y cociente no estn definas para los rotacionales en la forma aritmtica convencional. Debe utilizarse aritmtica de cuaterniones [14], por lo que la representacin matricial de la rotacin debe ser convertida primero a cuaternin. El resultado deber ser regresado de nuevo a la representacin matricial. La iteracin termina encontrando el nuevo valor de RE para lo que ser necesario pre y pos multiplicar por algunas transformaciones homogneas inversas
C

1 N

((
N i =1

RW ) * ( W RB )
i

j +1

* ( B RE ) = ( C RE )
i

j +1

(6) El proceso iterativo contina hasta que el cambio en las matrices buscadas sea menor a la tolerancia deseada. La convergencia del mtodo est probada en [9]. De nuevo, la funcin promedio en la ecuacin (6) debe ser entendida como el promedio de las rotaciones descritas por las matrices R, y no como un simple promedio matricial aritmtico. Una vez determinadas RB y RE , la parte traslacional puede sar calculada entonces utilizando la misma estrategia. La formulacin, mostrada en la ecuacin (7), es sin embargo un poco ms simple ya que en primer
W C

Figura 4. Calibracin de Cmara

Scientia et Technica Ao XVI, No 44, Abril de 2010. Universidad Tecnolgica de Pereira.

255

lugar se pueden asumir constantes las partes rotacionales y en segundo lugar, porque en geometra euclidiana la parte translacional s es operada con aritmtica clsica.

futura utilizacin en el sistema de servo control visual y pueden ser visualizadas en pantalla como se muestra en la figura 6.

WR r B 0T WR r C 0T

uuur W tB = 1 uuur W tC C RE * r 0T 1 i

uuu r C t E E RB * r 0T 1

uuur W tB 1 i
(7)

4. IMPLEMENTACIN El mtodo y los algoritmos mencionados fueron implementados en su totalidad utilizando el compilador GNU de C/C++ para Linux. Se utilizaron adems las libreras OpenCV [15], libdc1394 [16], y lapack3 [17], para procesamiento de imagen, captura de vdeo de cmaras IEEE1394 y lgebra lineal respectivamente. Adicionalmente, se cre una interfaz grfica de usuario que permite controlar el sistema remotamente desde una terminal de supervisin va TCP/IP. Las interfaces grficas de usuario fueron creadas en LabVIEW de National Instruments, con el fin de que pueda ser utilizada en cualquier sistema operativo. La figura 5, muestra el men principal desde donde se pueden escoger las N posiciones deseadas, o simplemente iniciar el procedimiento de calibracin utilizando un conjunto de posiciones preseleccionado.

Figura 6. Resultados de la calibracin

5. RESULTADOS Y TRABAJOS FUTUROS La metodologa presentada permite encontrar en forma semi-automatizada la matriz de calibracin cmara-brazo para un sistema de servo control visual. El mtodo toma slo un par de minutos en ejecutarse, siendo el movimiento del robot el principal contribuyente al tiempo de ejecucin. En el experimento presentado se utilizaron 27 imgenes del patrn de calibracin tomadas desde diferentes posiciones y orientaciones del efector final. Una vez se han obtenido todas las imgenes requeridas, el mtodo tarda menos de 5 segundos en converger, presentar y almacenar los resultados. Consideramos que el mtodo es semi-automatizado, ya que an se requiere intervencin humana para la preseleccin de las posiciones de calibracin. En la actualidad, estamos trabajando para incorporar los elementos necesarios que permitan al sistema escoger autnomamente dichas posiciones del efector final de forma ptima. El procedimiento discutido puede ser considerado, en el sentido estadstico, como la captura de una sola muestra del valor de la matriz de calibracin. Una mejor estiamacin del valor real puede ser obtenida simplemente aumentando el nmero de muestras que se obtienen para el mismo conjunto de posiciones preselecionadas y aplicando cualquier tcnica clsica de estimacin paramtrica. Gracias a que el mtodo calcula adems la transformacin referencia-base, es posible hacer una evaluacin cualitativa del resultado de la calibracin, simplemente ordenando al robot desplazarse a una posicin cuyas coordenadas respecto del origen global sean conocidas. El mtodo presentado es de gran utilidad, ya que permite recalibrar el sistema completamente, en minutos, tantas

Figura 5. Interfaz de control

La interfaz grfica permite adems calibrar simultneamente cualquier nmero de cmaras, lo que en la prctica est limitado por el nmero actual de cmaras que puedan ser fijadas del efector final. Las matrices resultado de la calibracin son almacenadas para su

256

Scientia et Technica Ao XVI, No 44, Abril de 2010. Universidad Tecnolgica de Pereira.

veces como sea necesario, presionando tan slo un botn, sin afectar significativamente la produccin, ni incrementar tiempos de parada no programados.

6. BIBLIOGRAFA [1] F. Chaumette y S. Hutchinson, Visual servo control I. basic approaches, Robotics and Automation Magazine, IEEE, vol. 13, pp. 8290, Dec. 2006. [2] F. Chaumette y S. Hutchinson, Visual servo control II, advanced approaches [tutorial], Robotics & Automation Magazine, IEEE, vol. 14, pp. 109118, March 2007. [3] K. Kyriakopoulos, P. Kakambouras y N. Krikelis, Potential fields for nonholonomic vehicles, in Intelligent Control, 1995., Proceedings of the 1995 IEEE International Symposium on, pp. 461465, Aug 1995. [4] J. Selig, Geometric fundamentals of robotics. Springer Verlag, 2005. [5] R. Hartley y A. Zisserman, Multiple view geometry in computer vision. Cambridge Univ Pr, 2003. [6] J. Denavit y R. Hartenberg, A kinematic notation for lower-pair mechanisms based on matrices, Trans. ASME J. Appl. Mech, vol. 22, no. 1, pp. 215221, 1955. [7] R. Tsai y R. Lenz, A new technique for fully autonomous and efficient 3d robotics hand/eye calibration, Robotics and Automation, IEEE Transactions on, vol. 5, pp. 345358, Jun 1989. [8] F. Dornaika y R. Horaud, Simultaneous robot-world and hand-eye calibration, Robotics and Automation, IEEE Transactions on, vol. 14, pp. 617622, Aug 1998. [9] R. Hirsh, G. DeSouza y A. Kak, An iterative approach to the hand-eye and base-world calibration problem, en Robotics and Automation, 2001. Proceedings 2001 ICRA. IEEE International Conference on, vol. 3, pp. 21712176 vol.3, 2001. [10] C. Harris y M. Stephens, A combined corner and edge detector, en Alvey vision conference, vol. 15, p. 50, Manchester, UK, 1988. [11] J. Canny, A computational approach to edge detection, Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. PAMI-8, pp. 679698, Nov. 1986. [12] R. O. Duda y P. E. Hart, Use of the hough transformation to detect lines and curves in pictures, Commun. ACM, vol. 15, no. 1, pp. 1115, 1972. [13] Z. Zhang, A flexible new technique for camera calibration, Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 22, pp. 13301334, Nov 2000. [14] W. Hamilton, On quaternions; or on a new system of imaginaries in algebra, Philosophical Magazine, vol. 25, no. 3, pp. 489495, 1844.

[15] G. Bradski y A. Kaehler, Learning OpenCV: Computer vision with the OpenCV library. OReilly Media, Inc., 2008. [16] D. Douxchamps, 1394-based dc control library. Free Open Source Software, Sourceforge.net. [17] E. Anderson, Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney y D. Sorensen, LAPACK Users Guide. Philadelphia, PA: Society for Industrial and Applied Mathematics, third ed., 1999.

Вам также может понравиться