Calibración de Cámara Cenital en Aplicaciones de Visión
Transcripción
Calibración de Cámara Cenital en Aplicaciones de Visión
1 Calibración de Cámara Cenital en Aplicaciones de Visión Artificial para Sistemas de Corte M. D. Moreno y J. A. Fernández Resumen— Las aplicaciones industriales donde intervienen sistemas de corte requieren una monitorización continua del entorno de trabajo para evitar, en la medida de lo posible, situaciones que puedan poner en peligro al ser humano. La utilización de un Sistema de Visión Artificial (SVA) en estas aplicaciones debe considerarse como un apoyo relevante. Sin embargo, para el correcto funcionamiento del SVA, es necesario calibrar la cámara respecto al sistema de corte. El SVA propuesto en este trabajo permite realizar la detección de la posición de la cámara considerando como sistema de referencia la mesa de trabajo, suministrando además la información necesaria para su correcta calibración. Palabras Clave— Seguridad Activa, Sistemas de Visión Artificial (SVA), Reconocimiento de Objetos, Calibración de Cámaras. E I. INTRODUCCIÓN N la actualidad, existe una gran variedad de aplicaciones industriales donde intervienen sistemas de corte. Entre ellos, cabe destacar las fresadoras, empleadas para trabajar la madera, los sistemas de corte por láser para trabajar chapa, los de corte por plasma para cortar acero y los de corte por chorro de agua, que permiten cortar cualquier tipo de material, independientemente de su dureza y espesor. A pesar de emplear distintas tecnologías y de estar específicamente desarrollados para el material que deben cortar, estos sistemas poseen dos características comunes: las grandes dimensiones que poseen (desde 150×300×80 cm, (largo × ancho × altura)) y el alto riesgo que conlleva trabajar con ellas [1]. Por ello, ante la existencia de peligros antes, durante y después de la puesta en funcionamiento de estos sistemas, se deben tomar medidas preventivas con el objetivo de reducirlos o eliminarlos. En general, estas medidas se clasifican en pasivas y activas. En las primeras, el objetivo es reducir al mínimo los daños producidos por un accidente cuando éste no puede ser evitado, mientras que en las segundas la finalidad es evitar que dichos accidentes se produzcan [2]. Entre los sistemas de seguridad activa, el más utilizado en la actualidad es el basado en un Sistema de Visión Artificial (SVA), diseñado para monitorizar el entorno de trabajo, de forma que, en caso de riesgo o fallo, pueda detectarse la M. D. Moreno y J. A. Fernández pertenecen, como alumna y profesor de PFC de ITI Electrónica Industrial respectivamente, al Dept. de Ingeniería Eléctrica, Electrónica y Automática de la Universidad de Extremadura, en la Escuela de Ingenierías Industriales, Av. Elvas s/n, 06006, Badajoz (España). Tel: +34 924 289 600. Fax: +34 924 289 601. E-mail: [email protected], [email protected]. anomalía de forma remota y actuar en consecuencia. No obstante, y a pesar de ser la detección de situaciones de riesgo el objetivo final de la implantación del SVA, el primer paso debe consistir en la adecuada elección del tipo de SVA (cámara, objetivo e iluminación) en función del entorno de trabajo, así como la calibración del mismo. El proceso de calibración de un SVA consiste en determinar varios parámetros del mismo, con el fin de lograr un ajuste exacto tanto en posición como en orientación espacial, y así asegurar tanto un campo de visión óptimo del entorno como la eliminación de las posibles distorsiones provocadas por el subsistema de lentes [3]. En el presente artículo se muestra una aplicación que permite calibrar un SVA a partir de la detección de la posición y geometría de la mesa de trabajo del sistema de corte, mediante técnicas de Procesamiento Digital de Imágenes (PDI) a partir de imágenes captadas por el propio sistema. El resto del presente trabajo se estructura como sigue: en la siguiente sección se presentan los principales componentes de un SVA, destacando aquellos parámetros del mismo directamente relacionados con las dimensiones del espacio de trabajo y con la calibración geométrica de la cámara. Seguidamente, en la Sección III se define el algoritmo de PDI propuesto para llevar a cabo la calibración del SVA, para, en la Sección IV, someterlo a prueba sobre un sistema de corte específico, para dar validez al algoritmo descrito. Por último, se expone un apartado final de conclusiones y trabajo futuro. II. SISTEMAS DE VISIÓN ARTIFICIAL En general, a la hora de seleccionar un SVA para una aplicación en concreto ha de tenerse en cuenta el tipo de cámara, el objetivo y la iluminación. Además, una vez realizada esta elección, se debe calibrar el SVA ya que, sólo si la cámara está calibrada es posible establecer la relación entre las coordenadas 3D de los objetos y sus correspondientes proyecciones 2D en la imagen, y viceversa. A. Cámaras Las cámaras más utilizadas en los SVA actuales son aquellas que poseen un sensor tipo CCD (Charge Coupled Device). La razón de usar este tipo de sensores frente a los CMOS (Complementary Metal Oxide Semiconductor) se debe a que los CCD ofrecen más calidad de imagen y mayor sensibilidad a la luz, lo que facilita, en general, su uso para una gran variedad de situaciones [3]. 2 Fig. 1. Parámetros intrínsecos involucrados en el modelo de proyección con distorsión [3]. El tamaño del sensor CCD elegido es importante para determinar el campo de visión que se visualiza, siendo los tamaños estándar: 1/3”, 1/4”, 1/2”, 2/3” y 1” en diagonal [4]. Existen multitud de modelos de cámaras dotadas con sensor CCD, sin embargo, los tres tipos principales son: (1) lineales, cuyo uso está muy extendido en la inspección de objetos de longitud indeterminada a priori, p. e. planchas de acero, y que a su vez pueden clasificarse en monocromas, a color o TDI (del inglés, Time Delay Integration), (2) matriciales, caracterizadas por poseer un sensor que cubre un área o está formado por una matriz de píxeles, y que produce una imagen con relación de aspecto (RA) 4:3, y (3) multiespectrales, consideradas a veces un tipo especial de cámara matricial, generan una imagen captada en varias partes del espectro electromagnético, incluyendo el espectro visible (color), el infrarrojo y/o ultravioleta, destinadas a trabajar en aplicaciones industriales y colorimétricas [3]. B. Objetivos Los objetivos son dispositivos que se utilizan para transmitir la luz al sensor de la cámara de forma controlada, con el fin de obtener una imagen enfocada y con intensidad suficiente. Se componen de: (1) un conjunto de lentes que permite dirigir la luz hacia el interior de la cámara, (2) el diafragma o iris, que gradúa la cantidad de luz que entra a la cámara y (3) el mecanismo de enfoque, que posibilita el desplazamiento de las lentes que controla la denominada distancia focal efectiva [5]. Se suelen clasificar en función de tres parámetros [6]: distancia focal, control de iris y tipo de montura. En función de la distancia focal (f), que es un importante parámetro del SVA, que indica la distancia existente entre el centro óptico del objetivo y el plano focal que define el campo de visión, medida normalmente en mm, los objetivos se clasifican en: fijo (teleobjetivo, estándar y gran angular), variable, de zoom manual y de zoom motorizado. En función del control de iris, se clasifican en manual y automático. Finalmente, en función del tipo de montura, los objetivos se clasifican en montura de rosca y de bayoneta, siendo las monturas más utilizadas en cámaras CCD las tipo C y CS [6]. C. Iluminación En un SVA, la iluminación debe ser adecuada para que la cámara pueda distinguir con claridad los objetos presentes en la imagen capturada, sin distorsión por saturación. Así, a la hora de considerar el nivel de iluminación en función de la actividad y el área de trabajo en la que se realiza, hay que tener en cuenta tanto las condiciones de iluminación como la distancia entre el SVA y el plano de enfoque. Actualmente, los SVA comerciales pueden disponer de cuatro tipos de iluminación: fluorescente, láser, LED y de fibra óptica [7]. Cada uno de ellos posee intensidad y tono característicos que afectan al valor de iris adecuado del sensor y a la temperatura media de color obtenida, respectivamente. En definitiva, el tipo de iluminación elegido afecta al color o tono medio que adquieren los objetos iluminados, que debe adaptarse a las necesidades de cada aplicación. Igualmente importante es la técnica de iluminación empleada, dado que una iluminación inapropiada puede provocar distorsiones (p. e. destellos producidos por fuentes radiantes y reflejos de estas en superficies reflectantes) que degradan el rendimiento global del SVA. La elección de la técnica de iluminación dependerá, principalmente, de la zona de la escena que se desee resaltar, existiendo las siguientes posibilidades: frontal, posterior o de contraste, de campo claro o brillante, de campo oscuro, coaxial, difusa y de luz estructurada [8]. D. Calibración Geométrica de la Cámara Como se dijo en la introducción, la calibración de una cámara consiste en determinar los parámetros de la transformación existente entre puntos 3D de la escena y puntos 2D de la imagen. Los parámetros que definen esta transformación se clasifican en intrínsecos y extrínsecos [3]. Los intrínsecos se encargan de caracterizar las propiedades inherentes de la cámara y la óptica, es decir, los parámetros involucrados en la transformación de puntos 3D en el sistema de referencia de la cámara a puntos 2D del plano imagen. Se suelen considerar los cinco parámetros intrínsecos siguientes (véase Fig. 1): distancia focal f, desplazamiento desde el centro de la imagen, Cx,, Cy y los coeficientes de distorsión radial k1, k2. De acuerdo con dichos parámetros, se considera que, en un primer paso, la imagen se forma sin distorsión (cámara tipo pinhole), después se desplaza la imagen al punto (Cx,, Cy) y, finalmente, se distorsiona según el modelo radial definido por las siguientes ecuaciones [3] [7]: x d = x u−d x (1) y d = y u−d y r= xd 2 y d 2 2 4 (2) 2 4 d x = x d k 1 · r k 2 · r d y = y d k 1 · r k 2 · r (3) 3 Fig. 2. Escenario de trabajo y variables de calibración. Fig. 3. Algoritmo propuesto para calibración de SVA en Sistemas de Corte. donde (xd, yd) son las coordenadas del píxel distorsionado y (xu, yu) las del píxel sin distorsionar. Los parámetros extrínsecos del SVA son seis, asociados a la posición y orientación de la cámara respecto al sistema de referencia absoluto [3]: traslación 3D (Tx, Ty, Tz) y rotación de ejes 3D, ángulos (α, β, θ). de la mesa de trabajo (véase Fig. 2). Para determinar la altura correcta (D), se define el campo de visión (FOV) vertical y horizontal, a partir de las dimensiones del sensor CCD (bsensor × hsensor) de la siguiente forma: FOV H = D⋅b sensor bimagen bsensor (4) FOV V = D⋅h sensor himagen hsensor (5) III. ALGORITMO DE CALIBRACIÓN Y ENTORNO DE TRABAJO En el presente apartado se especifica un algoritmo para realizar la calibración de un SVA situado sobre la mesa de trabajo de un sistema de corte en posición cenital. El programa utilizado para implementar el algoritmo es MatLab [9]. La cámara elegida es el modelo DFK 41BU02.H de The Imaging Source, que dispone de sensor CCD de escaneo progresivo de ½'' lineal en color, conexión USB, resolución de 1280×960 (bimagen × himagen) px y velocidad de 15 cuadros/s (fps). El objetivo elegido para dicha aplicación posee una distancia focal de 8 mm [6] [10]. El área de trabajo dispone de una superficie de 30 m2, donde se ubica un sistema de corte por plasma marca Praxair modelo Avant 30, con una mesa de aspiración para corte de 1.10×0.9×0.8 m (largo × ancho × altura), dotada de conducto de salida de humos [11] [12]. La cámara se calibrará respecto a la imagen cenital obtenida Teniendo en cuenta las expresiones anteriores y sin olvidar que es la zona que rodea la mesa de trabajo la que, en realidad, presenta mayor interés para un SVA destinado a aplicaciones de seguridad activa, ya que posibilita la detección de los objetos que rodean la mesa y puede evitar posibles accidentes, la cámara se situará sobre la mesa de trabajo a 2.1 m de altura, de forma que el área visualizada es FOVH × FOVV 1.6×1.2 m (véase Fig. 2) dejando un margen de 50 cm de ancho alrededor de la mesa, distancia de seguridad mínima exigida en la normativa europea de seguridad en maquinaria industrial [14]. Respecto al algoritmo de PDI, se propone el esquematizado en la Fig. 3, cuyos pasos o etapas son las siguientes: 1. Se convierte a escala de grises la imagen de entrada. A 4 b, c y d (véase Fig. 4), los cuales permiten determinar el ángulo de giro horizontal θ, en valor absoluto: (7) ∣∣=arctan c =arctan a b 6. Fig. 4. Prueba del algoritmo sobre una imagen sintética (caso ideal). 2. 3. 4. continuación, se binariza la misma eligiendo como parámetro el nivel de gris promedio de toda la imagen. Se calcula la proyección promedio por filas y columnas, obteniendo vectores de niveles de gris promedio por cada fila y columna de la imagen. En el caso ideal mostrado en la Fig. 4, puede observarse la existencia de cuatro puntos característicos por cada vector de proyección, que corresponden a los puntos extremos (máximos y mínimos) de los tramos en pendiente de cada vector. Estas pendientes se identifican con la existencia de un giro de la cámara respecto a la mesa. Para determinar con exactitud la posición de estos puntos, se calculan los valores máximo y mínimo promediados para cada vector, maxv, minv, maxh y minh. Para ello, se identifica en cada proyección los dos puntos centrales de las pendientes que se caracterizan por tener como frecuencia el valor más próximo al promedio del máximo y mínimo de cada proyección. Desde estos puntos se recorre el vector de proyección en ambas direcciones, en busca de los puntos máximos y mínimos de dichas pendientes. Se considera que, un punto es máximo o mínimo cuando tanto el punto anterior como el posterior al señalado, tienen valores prácticamente iguales (diferencia < 5% valor en cuestión). Se calcula el vector de traslación T como la diferencia entre el punto central de la imagen, Cc = (Xc, Yc) y el punto central del objeto, C0 = (X0, Y0), donde X0 e Y0 se obtienen al promediar las coordenadas de los puntos característicos máximos de cada vector de proyección. T =[ X 0−X c , Y 0−Y c ] 5. 7. (6) A partir de los cuatro puntos característicos de las proyecciones, se obtienen los valores de los segmentos a, d Para determinar el signo de dicho ángulo se recorre la fila de la imagen de entrada que posee el segundo valor del vector de proyección vertical, desde la columna correspondiente al segundo valor del vector proyección horizontal hasta el tercer valor del mismo vector, contabilizando los píxeles a 0 (negro) existentes en ambas mitades de esta fila. Si hay más píxeles a 0 en la izquierda que en la derecha, el signo del ángulo de rotación será negativo, y positivo en caso contrario. Se corrige tanto la rotación (7) como la traslación (6) mediante una transformación afín combinada [7], para comprobar que los cálculos han sido realizados adecuadamente. Por otro lado, y con el fin de demostrar la eficiencia del algoritmo propuesto, se establece una etapa adicional de cálculo en la cual se determinan las esquinas de la mesa de trabajo mediante el conocido método de Harris [13]. Para ello, deben combinarse adecuadamente los 8 puntos característicos de los vectores de proyección, considerando el sentido de rotación de la mesa de trabajo, y en un entorno de 20 píxeles alrededor de los 4 puntos obtenidos de esta combinación (posición aproximada de las esquinas) se aplica el citado método. El producto del detector de Harris son los cuatro puntos P1, P2, P3 y P4, mostrados en la Fig. 4. De estos cuatro puntos, pueden obtenerse directamente la rotación y traslación del SVA como: C 0 =[ X 0 ,Y 0 ]= =arctan P 1 P 2 P 3 P 4 4 (8) (9) P 1 y− P 2 y P 2 x− P 1 x Por último, y como dato adicional al proceso de calibración por proyecciones, se pueden calcular las dimensiones de la mesa de trabajo del sistema de corte a partir del ángulo complementario de (7), α de la forma: M= a d = cos sen N= c b = cos sen (10) IV. PRUEBAS DEL ALGORITMO Con el objetivo de validar el algoritmo propuesto en este trabajo, en las Fig. 5 y 6 se presenta una prueba realizada en el escenario de trabajo descrito en la sección anterior. Antes de analizar los resultados de la prueba realizada, es 5 (a) (a) (b) (b) (c) (c) Fig. 5. Prueba del algoritmo sobre una imagen real (parte I): (a) imagen de entrada, (b) imagen binaria, (c) vectores de proyección vertical y horizontal. Fig. 6. Prueba del algoritmo sobre una imagen real (parte II): (a) recorte de la mesa de trabajo, (b) corrección de la traslación por método de las proyecciones, (c) imagen final (por ambos métodos). 6 necesario destacar que la imagen de entrada (Fig. 5.a) puede ser mejorada en contraste, dado que las condiciones de iluminación no son las más apropiadas para la aplicación. Sin embargo, puede considerarse este hecho como una medida de la robustez del método propuesto. Una vez realizada la binarización de la versión en escala de grises de la imagen de entrada (umbral = 117) (Fig. 5.b), se calculan las proyecciones tanto horizontal como vertical de la imagen binaria, así como los puntos característicos de cada una de ellas (véase Fig. 5.c). Estos puntos característicos son, para la proyección vertical y = [69, 177, 790, 901], y para la horizontal x = [255, 351, 1134, 1222]. A partir de estos y, teniendo en cuenta el sentido de rotación que posee la imagen de entrada, se determinan las posiciones aproximadas donde se ubican las esquinas para, en un entorno de 20 píxeles alrededor de cada una de ellas, aplicar el detector de Harris [13] con el fin de evaluar el resultado obtenido por el método de proyección. En este ejemplo, los puntos esquina de Harris son: P1 = (179, 255), P2 = (71, 1134), P3 = (786, 1124) y P4 = (897,350). Antes de continuar el proceso de calibración, y aunque no tendrá efecto sobre el cálculo de los valores de rotación y traslación por cada uno de los dos métodos expuestos en la sección anterior, se recorta la imagen de entrada, de forma que, en la nueva imagen (Fig. 6.a) sólo se visualicen aquellos píxeles que estén en el área determinada por los máximos y mínimos de las proyecciones y estén a 0 (negro) en la imagen binarizada, es decir, que pertenezcan a la mesa de trabajo, dado que el suelo no aporta ninguna información necesaria para el software de calibración. En este punto comienza la calibración geométrica de la cámara en el entorno elegido a partir de la imagen capturada. Para el método de las proyecciones, se obtiene que la traslación en píxeles es T = (-99,5) siendo el obtenido a partir del método de Harris T = (-101,3). La diferencia entre ambos resultados es mínima 2 píxeles (equivalentes a 2.52 mm). En cuanto a la rotación, a partir de las proyecciones se obtiene un ángulo de rotación para la cámara θ = -7.0046º, siendo θ = -7.0025º por el método de Harris. Este error es despreciable, a efectos prácticos. Finalmente se corrige la imagen de entrada de acuerdo con los resultados numéricos obtenidos mediante una transformación afín combinada [7], obteniéndose los resultados de la Fig. 6.b y 6.c). V. CONCLUSIONES Y TRABAJO FUTURO La conclusión principal de los procedimientos de calibración de cámaras cenitales en aplicaciones de Visión Artificial sobre sistemas de corte desarrollados en este trabajo es que ambos métodos (proyecciones y Harris) llevan al mismo resultado y además son robustos ante la variación de iluminación. No obstante. comparándolos en función del tiempo que tardan en dar los parámetros necesarios para la correcta calibración del SVA el método de las proyecciones resulta ser tres veces más rápido por el hecho de no recurrir al método de detección de esquinas de Harris (5 y 15 segundos respectivamente). En próximos trabajos el objetivo será el reconocimiento de objetos en las zonas que rodean la mesa de trabajo con el fin de evitar accidentes. AGRADECIMIENTOS El presente trabajo ha sido realizado con la financiación de la Universidad de Extremadura y Grupo Santander, en la Acción VII del Plan de Iniciación a la Investigación, Desarrollo Tecnológico e Innovación 2010 para el proyecto titulado: Diseño de un Sistema Inteligente de Visión Artificial para Apoyo a Sistemas de Control Numérico Computerizado. REFERENCIAS [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] Sistemas de Corte para la Industria, en sitio web DirectIndustry, Salón Virtual de la Industria: http://www.directindustry.es/fabricanteindustrial/maquina-corte-69389.html R. D. 1644/2008, de 10 de octubre, Normas para la Comercialización y Puesta en Servicio de las Máquinas, BOE nº246, 11/10/2008, pp. 40095-40130. J. González, Visión por Computador, Paraninfo, Madrid, España, 2000. Guía de Recursos de Imagen Electrónica, en sitio web de Edmund Optics Ltd.: http://www.edmundoptics.com La cámara y sus partes, en sitio web Textos Científicos: http://www.textoscientificos.com/fotografia/camara. M. Constant, The Principles and Practice of CCTV, 3ª ed., 2005, disponible en línea en CCTV Information: http://www.cctvinformation.co.uk/i/The_Principles_%26_Practice_of_CCTV R. C. González y R. E. Woods, Digital Image Processing, 3ª ed. Prentice-Hall, Nueva York, 2008. Trabocchi, O. y Sanfilippo, F.,“Iluminación para las Aplicaciones de Visión Artificial”, Universidad Nacional de Quilmes, Quilmes (Argentina), 2005, disponible en: http://iaci.unq.edu.ar/materias/vision MATLAB website: http://www.mathworks.com/products/matlab The Imaging Source website, Cámara color USB CCD, modelo DFK41BU02H, disponible en: http://www.theimagingsource.com/ Catálogo de Sistemas de Corte, en página web de Praxair España, disponible en: http://www.praxair.com/ Catálogo de Equipos, Organización y Mejora de Medio Ambiente del Taller, en página web de Praxair España, disponible en: http://www.praxair.com/ C. Harris y M. Stephens, “A Combined Corner and Edge Detector”, Proc. 4th Alvey Vision Conf. (AVC88), 1988, pp. 147-151 . Rockwell Automatization, Sistemas de seguridad para maquinaria industrial, Allen Bradley, Madrid, España, 2010.