Detección de bordes en imágenes con sombras mediante LIP–Canny José Manuel Palomares Jesús González, Eduardo Ros Área de Arq. y Tec. de Computadores Dept. de Arquitectura y Tecnología Dept. de Electrotecnia y Electrónica de Computadores Universidad de Córdoba Universidad de Granada Escuela Politécnica Superior ETS Ingeniería Informática 14071 Córdoba 18071 Granada [email protected] [email protected], [email protected] Resumen En el presente trabajo, se presenta una nueva técnica que unifica el conocido método de Canny para la obtención de bordes con un paradigma de procesamiento de imágenes conocido como LIP, que tiene un comportamiento logarítmico parecido al del ojo humano. Se ha observado que el método de Canny no detecta bien los bordes en zonas de baja iluminación y que el paradigma LIP permite trabajar en zonas de iluminación pobre. Esta nueva técnica (LIP–Canny) se compara con Canny, mostrando que LIP–Canny es capaz de detectar bordes en zonas de baja iluminación. También se compara con otra técnica, en la que se realiza un filtrado homomórfico previo al método de Canny, obteniéndose unos resultados visuales similares, pero LIP–Canny obtiene dichos resultados más rápidamente y con un ajuste de umbral menos sensible y, por tanto, mucho más sencillo. 1. Introducción La extracción de características es una de las primeras etapas que se realiza en muchas de las aplicaciones de reconocimiento de formas. Entre las características que se suelen obtener, los bordes o contornos de las imágenes proporcionan una información de gran relevancia para posteriores etapas. Una de las formas más habituales de calcular dichos contornos se suele realizar mediante el filtrado de las imágenes obteniéndose mapas del gradiente de las mismas (que pueden ser en color o en tonos de gris). El gradiente se ve ampliamente afectado ante imágenes que presentan cambios de iluminación locales, por ejemplo, por sombras proyectadas o por focos de luz. En estas zonas donde la iluminación es menor o mayor que la del resto de la imagen, la magnitud del gradiente de las imágenes se debilita o se aumenta, dependiendo del efecto (oscurecimiento o aclaramiento local), en términos de valor absoluto de los picos de dicho gradiente. Se han propuesto soluciones para evitar este problema utilizando normalizaciones de la intensidad o más habitualmente mediante el filtrado homomórfico [7, 8]. Si se admite como aproximación de primer orden que las imágenes están compuestas por dos componentes: iluminación y reflectancia, lo que se desea obtener es la componente de reflectancia de la imagen, que es la que contiene la información visual de los objetos. En todos los casos, el procedimiento siempre suele ser el mismo, realizar una transformada sobre la imagen, operar sobre la imagen transformada, realizar la transformación inversa y posteriormente aplicar sobre la imagen modificada alguna técnica de extracción de bordes. Sin embargo, Deng y Pinoli [2] desarrollaron un operador, LIP–Sobel, que es capaz de extraer bordes y que es invariante ante cambios suaves de iluminación de carácter local. Este operador está basado en el operador de extracción de bordes de Sobel, implementado siguiendo la filosofía LIP (Logarithmic Image Processing [4, 5]). Una de las grandes ventajas que tiene el uso de este operador frente a la filosofía tradicional de filtrado homomórfico seguido de un extractor de bordes usual, es que el tiempo de cálculo es más reducido, al no ser necesario el paso inicial de filtrado homomórfico: en un único procesado de la imagen se obtiene el resultado invariante ante los cambios de iluminación. El método de Canny [1] para la extracción de bordes es uno de los más utilizados y que su comportamiento es más robusto que el de Sobel ante la presencia de ruido de tipo gaussiano. Nosotros nos hemos planteado obtener un operador basado en el método de Canny siguiendo la filosofía de LIP, de manera análoga a como lo hace LIP–Sobel. Esto nos va a permitir obtener mapas de gradiente de las imágenes sin tener en cuenta la iluminación. Gracias a LIP conseguiremos obtener bordes con poca influencia de la iluminación, y así, en zonas de menor iluminación o en sombras, se podrán obtener bordes que en otro caso no serían detectados por el método tradicional. El presente artículo se estructura como sigue: primero, en la Sección 2 se expone una breve introducción a LIP, tras lo cual, se expondrá el operador convolución propuesto bajo este paradigma. Posteriormente, se expone el método de Canny en la Sección 3, también se propone el nuevo operador LIP–Canny. Se han realizado algunos experimentos que se muestran en la Sección 4, tras lo cual se obtienen algunas conclusiones, que se pueden encontrar en la Sección 5. 2. Bases matemáticas de LIP A finales de la década de los 80 y a lo largo de la década de los 90, Pinoli y Jourlin [4, 5] expusieron un nuevo paradigma para el procesamiento de imágenes por proyección de luz (como es el caso de imágenes de microscopía). Pretendían dar solución a un problema habitual en los sistemas de procesamiento de imágenes digitales, como era el del desbordamiento del rango en la adición de dos imágenes o en el ajuste multiplicativo por una constante. Posteriormente, otros autores hicieron grandes contribuciones a este paradigma a lo largo de toda la década de los 90. 2.1. Introducción a LIP La filosofía de LIP se puede aplicar siguiendo dos métodos: Utilizar las imágenes originales y operadores modificados, o utilizar imágenes transformadas y operadores tradicionales. La primera opción se basa en un espacio vectorial definido a partir de un conjunto de valores de imágenes (llamados funciones de tonos de gris) que son las imágenes en niveles de gris con una inversión de escala, donde notaremos a la función de tono de gris de f como fb = M − f , donde f es la imagen original y M es el valor máximo (inalcanzable) permitido. Se definen una serie de operadores para construir el espacio vectorial, como es un + ), un operador mulnuevo operador suma ( ∆ × ) y un nuevo operador tiplicación escalar ( ∆ − ). Basándose en estos operadores, se resta ( ∆ pueden crear nuevos operadores como es la sumatoria LIP: P n ∆ c + fb2 ∆ + ...∆ + f fbi = fb1 ∆ n, (1) i=1 donde fbi (i = 1 . . . n) son n funciones de tonos de gris. La segunda opción es transformar la imagen, tras lo cual, se opera sobre la imagen transformada utilizando los operadores tradicionales y finalmente, se realiza la transformación inversa a la imagen operada. La transformación directa se realiza mediante una función llamada transformada isomófica definida como: fb f˜ = ϕ(fb) = −M · ln 1 − M ! (2) Las funciones de tonos de gris transformadas las notaremos por f˜. La transformada inversa (llamada transformada isomórfica inversa) viene definida por: fb = ϕ 2.2. −1 ˜ f −M (f˜) = M · 1 − e donde K = ln M · j=0 3. (3) La convolución es un operador muy utilizado en el ámbito del procesamiento de imágenes y vídeo. Por otra parte, el paradigma LIP proporciona algunas características muy interesantes, con lo cual se ha considerado de gran importancia el uso de las convoluciones bajo el paradigma LIP. Sin embargo, nos encontramos con un inconveniente, previamente a nuestras investigaciones no existía ningún operador que unificara el paradigma LIP y las convoluciones. A continuación se mostrará una breve descripción de la formulación necesaria para obtener una convolución 2D bajo el paradigma LIP. En este caso en particular, nos centraremos en las convoluciones formadas por filtros separables: n−1 P ∆ × b(n−i) ∆ i=0 P ! m−1 ∆ b i+1,j+1) a(m−j ) ∆ I( × j =0 aplicando la transformada isomórfica (2): b F) = ϕ conv2DLIP (I, n−1 X = b(n−i) i=0 n−1 X m−1 X ! b a(m−j ) · ϕ I(i+1,j+1) = j=0 b i+1,j+1) M − I( = b(n−i) a(m−j ) −M ln M i=0 j=0 (4) 4. Tras operar sobre (4) y aplicando finalmente la transformada isomórfica inversa (3), conseguimos: b F) conv2DLIP (I, = = b F) ϕ−1 ϕ conv2DLIP (I, = M · 1 − econv1D n−1 P b(n−i). i=0 Extracción de bordes mediante Canny y LIP–Canny !!! m−1 X a(m−j ) · El método de Canny [1] es un método muy robusto para la extracción de bordes en imágenes naturales que pueden tener presencia de ruido blanco Gaussiano. Es una técnica basada en la primera derivada de la imagen, esto es, en el gradiente de la imagen. Sin embargo, para evitar o intentar minimizar el impacto del ruido gaussiano, se realiza una convolución de la imagen con un filtro gaussiano y, posteriormente, la obtención de la imagen gradiente se realiza convolucionando con la primera derivada del filtro gaussiano. Tras estas etapas, se realizan unas etapas de umbralización local con histéresis y mediante la aplicación de los pasos previos con diferentes valores de σ para el filtro gaussiano se obtienen diferentes mapas de bordes que finalmente son sintetizados en un único mapa. Este último paso, el de sintetización de bordes de distintas escalas, no se suele realizar habitualmente, ya que la mejora que se obtiene al aplicar esta etapa no justifica los grandes requisitos temporales y de computación. En este trabajo proponemos la aplicación de la filosofía LIP al extractor de bordes Canny. La adaptación a LIP se realiza en los primeros pasos, la obtención de los mapas de gradiente, en lugar de utilizar el operador convolución estándar utilizaremos el operador convolución LIP expuesto en (5). Convolucion–LIP b F) = conv2DLIP (I, m−1 P conv1D(ln I,aT ),b −K = , (5) Experimentos Se han realizado una serie de experimentos en los que se han utilizado fotografías digitales de uso libre que se ven afectadas por sombras, obtenidas del banco de imágenes del Ministerio de Educación y Ciencia de España [6]. A dichas imágenes se les ha obtenido el mapa de bordes mediante el método de Canny tradicional, aplicando filtrado homomórfico y posteriormente el método de Canny tra- Figura 1: Imagen de un soportal con sombras naturales Figura 2: Mapa de bordes obtenidos utilizando Canny. Parámetros: thlow = 0.05, thhigh = 0.125. dicional y, por último, mediante el método propuesto de LIP–Canny. Estos mapas de bordes se han mostrado a diversos individuos que han catalogado la calidad de dichos bordes según la norma ITU–T Recommendation P.800 [3] hasta encontrar los parámetros que obtenían los mejores resultados subjetivos según los encuestados para cada uno de los métodos. 4.1. Resultados visuales En la Figura 1 mostramos una de las imágenes de las que partimos. Como puede observarse, se ha tomado una fotografía de un soportal, parte del cual está en sombras. Utilizando esta imagen, se han obtenido los bordes mediante el método tradicional de Canny (ver Figura 2), mediante la aplicación del filtrado homomórfico seguido del método de Canny habitual (Ver Figura 3) y por último utilizando el método propuesto de LIP–Canny (ver Figura 4). Para todos los métodos se han utilizado los valores de los parámetros que han proporcionado en cada caso los mejores resultados, según se ha comentado previamente. De manera común a todos los métodos se ha tomado σ = 1.0, donde σ es el valor de la amplitud de la campana de la Gaussiana utilizada en las primeras fases de convolución. Como se puede observar, el método LIP– Figura 3: Mapa de bordes obtenidos utilizando filtrado homomórfico seguido de Canny. Parámetros: thlow = 0.01, thhigh = 0.05. Figura 4: Mapa de bordes obtenidos utilizando LIP–Canny. Parámetros: thlow = 0.05, thhigh = 0.4. Canny obtiene una mayor cantidad de bordes que el método de Canny para el mismo valor de umbral. Es más, el método LIP–Canny obtiene bordes precisos en la zona donde se proyecta la sombra, en la cual, el método tradicional de Canny no detecta ningún borde. Para detectar dichos bordes es necesario aplicar un paso previo de filtrado homomórfico, tras lo cual se aplica el método de Canny tradicional. En este caso, el ajuste del umbral tiene que ser mucho más preciso, puesto que los valores del gradiente con los que opera Canny tras el filtrado homomórfico son mucho más pequeños. Nótese que el mapa de bordes de LIP– Canny permite obtener los bordes de las cristaleras de la pared trasera de los soportales, aspecto que no aparece en el mapa de bordes obtenidos por Canny. También hay que indicar que los parámetros de los umbrales en el método de LIP–Canny son más altos que los mismos para el método de Canny, ya que para el mismo nivel de los umbrales, LIP–Canny es capaz de detectar muchos más bordes que Canny. Esto puede llegar a presentar un problema, porque detecta como bordes ruidos en las zonas oscuras. Por otro lado, si aplicamos filtrado homomórfico seguido del método de Canny nos encontramos un gran problema de sensibilidad del umbral superior. Es decir, se dejan de detectar la gran mayoría de bordes si ponemos un umbral algo mayor que el óptimo, y al contrario, se comienzan a detectar una cantidad excesiva de bordes en cuanto bajamos dicho umbral. 4.2. Tiempos de procesamiento Con respecto a los tiempos de cómputo, la Tabla 1 muestra los resultados de experimentos para dos tamaños distintos (la de tamaño menor, es una imagen recortada de la mayor). El tiempo de cálculo de Canny es aproximadamente entre un 14 % y un 5 % más rápido que el de LIP–Canny y esto es debido a que para calcular LIP–Canny se ha aplicado (5), la cual realiza una serie de operaciones adicionales, frente a la convolución simple que se realiza en el método de Canny. Para obtener una solución similar, a la cual no le afecten los cambios de iluminación, como se ha visto anteriormente, habría que aplicar un filtrado homomórfico. Esto aumenta el tiempo de cómputo con respecto a simplemente aplicar el método de Canny, al tener que calcular una imagen transformada, basada en aplicar el logaritmo neperiano a cada píxel de la imagen. Después hay que obtener una imagen filtro paso baja que se resta a la imagen transformada, para obtener una imagen transformada paso alta, a la que se le aplica la transformación inversa para obtener una imagen que es la componente de reflectancia. Sobre esta imagen reflectancia se calcularán los bordes con Canny. Se puede observar en la Tabla 1 como la aplicación de un filtrado homomórfico seguido del método de Canny es entre un 13 % y 20 % más lento que aplicar sólamente el método de Canny. En la misma Tabla 1, en la última columna, se indica la ganancia de velocidad, poniendo como tiempo de referencia de cada experimento según el tamaño de la imagen, el resultado de tiempos de la aplicación del método propuesto de LIP–Canny. Se puede observar, que el método híbrido de aplicar primero el filtrado homomórfico y posteriormente el método de Canny es entre un 6.5 y un 7.3 % más lento que LIP–Canny. 5. Conclusiones En este artículo presentamos un nuevo método de detección de bordes que se basa en el tradicional método de Canny y en el paradigma LIP de procesamiento de imágenes. Mediante la hibridación de ambas técnicas se han obtenido mejores rendimientos en el sentido de la obtención de más bordes, sobre todo en zonas de baja iluminación, manteniendo el mapa de bordes en las zonas con una iluminación constante. El tiempo de cómputo es aproximadamente un 10 % más elevado que el método de Canny clásico, sin embargo, al conseguir LIP–Canny un conjunto de bordes que no aparecen con el Tamaño 425 × 640 374 × 353 Método Canny F.H. + Canny LIP–Canny Canny F.H. + Canny LIP–Canny Tiempo (seg.) 1.190 1.341 1.250 0.519 0.623 0.585 Ganancia 0.952 1.073 1.0 0.887 1.065 1.0 Cuadro 1: Tiempos de procesamiento para Canny, LIP–Canny y Filtrado Homomórfico (F.H.) seguido de Canny. método de Canny clásico, ese tiempo superior es relativamente pequeño. También se ha comparado con otra aproximación tradicional para evitar los cambios de iluminación que se consigue aplicando previamente un filtrado homomórfico para obtener el componente de reflectancia, sobre la cual se aplica el método de Canny. En este caso, LIP–Canny se comporta aproximadamente un 7 % más rápido que dicha técnica de filtrado homomórfico seguido del método de Canny. Se han observado algunos problemas con la sobredetección de bordes en las zonas oscuras debido al ruido, así que como trabajo futuro, se está estudiando una posible mejora mediante un procesamiento iterativo que permita una adaptación local al ruido. [2] G. Deng and J. C. Pinoli. Differentiation– Based Edge Detection using the Logarithmic Image Processing Model. Journal of Mathematical Imaging and Vision, 8(2):161–180, March 1998. [3] ITU-T. Methods for subjective determination of transmissions quality. Recommendation P.800, 1996. [4] M. Jourlin and J. C. Pinoli. Logarithmic Image Processing. Acta Stereologica, 6:651–656, 1987. [5] M. Jourlin and J. C. Pinoli. A Model for Logarithmic Image–Processing. Journal of Microscopy, 149:21–35, January 1988. Agradecimientos [6] MEC: Ministerio de Educación y Ciencia de España. Banco de Imágenes. [Online] http://recursos.cnice.mec.es/bancoimagenes2 /buscador/index.php, April 2005. Este trabajo ha sido parcialmente financiado por el Ministerio de Ciencia y Tecnología, proyecto DEPROVI, (DPI2004–07032). [7] A. V. Oppenheim, R. W. Schafer, and T. G. Stockham. Nonlinear Filtering of Multiplied and Convolved Signals. Proceedings of the IEEE, 56(8):1264–1291, 1968. Referencias [1] J. Canny. A Computational Approach to Edge Detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 8(6):679–698, November 1986. [8] D. Toth, T. Aach, and V. Metzler. Illumination–invariant change detection. In Proceedings of the 4th IEEE Southwest Symposium on Image Analysis and Interpretation, SSIAI’00, pages 3–7, Austin, Texas, USA, April 2000. IEEE Computer Society.