Boletín No. 54
1o. de mayo de 2016
DETECCIÓN DE BORDES EN IMÁGENES A COLOR UTILIZANDO LA TEORÍA DE DEMPSTER-SHAFER
Eloisa Guevara Gómez guevara.
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Dra. Yesenia Eleonor González Navarro
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas-IPN.
Abstract
In this article, the Dempster-Shafer Theory is applied for color image edge detection. Firstly, the color image is transformed into R, G and B components; secondly in these three components, the edge gradient magnitude of images are obtained by the Sobel operator; thirdly, the mass functions are selected and the orthogonal sum is calculated; finally, the mass function of the edge probability is regarded as the edge of image. Keywords: Dempster-Shafer Theory, color image, edge detection.
Introducción
La detección de bordes es uno de los principales problemas en el análisis de imágenes [1]. Anteriormente los algoritmos de detección de bordes en imágenes trabajaban sobre imágenes en escala de grises, un ejemplo es el operador de Sobel. En la actualidad el procesamiento de imágenes a color ha recibido más atención debido a que éstas proveen más información que las imágenes en escala de grises.
Una técnica a emplear es que a partir de los componentes de color de la imagen (rojo R, verde G y azul B) se consideran que son relativamente independientes entre sí y serán tomados como fuentes independientes. Empleando el operador de Sobel se pretende obtener 3 gradientes de estos componentes y posteriormente fusionarlos. La fusión de datos es una técnica que permite tomar datos simultáneamente de diferentes fuentes de información con el objetivo de obtener una mejor estimación de los objetos de investigación y reducir la incertidumbre y ambigüedad en esta información combinando datos redundantes.
Disciplinas basadas en las matemáticas como la Teoría de Evidencia o Teoría de Dempster-Shafer proporcionan una medida de esta incertidumbre y ambigüedad [2], [3]. La idea de aplicar la teoría de Dempster-Shafer para la tarea de detección de bordes es asignar un valor de la función de masa a cada pixel usando grados de membresía difusos, de esta forma, se distinguen los pixeles que pertenecen a bordes de los pixeles ambiguos de forma exacta [4]. La Teoría de Dempster-Shafer es una teoría matemática de evidencia basada en funciones de credibilidad y plausibilidad, la cual es utilizada para combinar fuentes de información independientes (evidencias) para calcular la probabilidad de un evento. Un conjunto de hipótesis Hi mutuamente excluyentes llamadas elementos focales son consideradas. En este caso H1 será la hipótesis de que el pixel se trate de un borde, H2 que no sea un borde y H3 que exista ambigüedad si el pixel es borde o no. Ver Figura 1.
Figura 1. Hipótesis posibles para cada pixel |
La función masa m para todas las hipótesis debe cumplir las siguientes condiciones:
Lo anterior indica que la creencia depositada en un conjunto vacío es cero, a todas las hipótesis se les asigna un valor de creencia entre 0 y 1, y que la suma de todos los valores debe ser uno.
La combinación de estas asignaciones es calculada de las distribuciones de masa m R, m B y m B. (asignaciones básicas de probabilidad) de las 3 fuentes de información que son los componentes R, G y B de la imagen se calcula de la siguiente manera:
donde:
K es la medida de conflicto que existe entre las diferentes fuentes. Este método propone detectar los bordes de los componentes R G y B (matrices) de forma independiente para obtener los gradientes GR, GB y GB. Posteriormente, pR(x,y), pG(x,y) y pB(x,y) son definidos como la magnitud de los gradientes de GR, GB y GB en la posición (x,y) de las matrices. Se obtienen además los valores máximos de estos como pmáxR,pmáxG,pmáxB para poder normalizarse de la siguiente forma:
Las funciones masa de H1 y H2 son obtenidas directamente de estos valores normalizados:
donde R representa al componente rojo.
H3 representa la ambigüedad entre el borde y el no-borde, entonces su función masa se calcula a partir de:
donde representa el área de la superficie de traslape entre los dos triángulos mostrados en la Figura 2 y S_máxR es el área máxima de esta superficie.
Figura 2. Superficie de traspale para calcular H3 |
Una vez obtenidas mR (H1 ),m R (H2 )y m R (H3 ) se normalizan de la siguiente manera:
donde . Esto obtiene las funciones masa para el componente R, es necesario seguir el mismo procedimiento para los componentes G y B. Posteriormente, la combinación de Dempster-Shafer se realiza mediante la suma ortogonal de estos componentes de acuerdo a la Ecuación (2). Finalmente, H1 representa el borde de la imagen original.
Desarrollo
Para la comprobación de resultados se empleó la imagen en formato de color RGB de la Figura 3 en formato jpeg.
Figura 3. Imagen utilizada para detección de bordes |
La siguiente función en MATLAB® [5] permite obtener los bordes aplicando el operador de Sobel.
Ahora bien, para detectar bordes en la imagen a color, se aplicó el operador de Sobel a cada componente R, G y B, obteniendo su gradiente. Ver Figura 4.
Figura 4. Gradiente de Sobel para las matrices R, G y B respectivamente (de izquierda a derecha) |
Los resultados obtenidos para cada componente son muy similares, sin embargo, al aplicar la teoría de Dempster-Shafer se diferencia de mejor manera el conjunto de los bordes al conjunto de los no bordes, realizando operaciones con los valores de pixel de cada una de las 3 componentes. En la Figura 5, del lado izquierdo se muestra la imagen resultante al aplicar el operador de Sobel a la imagen original en escala de grises. La imagen del lado derecho muestra la imagen resultante después de aplicar la teoría Dempster-Shafer a cada componente R, G y B.
Figura 5. Del lado izquierdo, los bordes detectados en la imagen original en escala de grises después de aplicar el operador de Sobel únicamente. Del lado derecho los bordes detectados después de aplicar la teoría de Dempster-Shafer |
El código fuente en MATLAB® que aplica la detección de bordes empleando Dempster-Shafer es el siguiente:
|
---|
La función triángulo se programó de la siguiente manera:
Conclusiones
Aplicando la Teoría de Dempster-Shafer en conjunto con el operador de Sobel permite detectar los bordes de una imagen a color de forma más efectiva que empleando solamente imágenes en escala de grises. Esto se debe a que se combinan las evidencias de las distintas fuentes de información (componentes R, G y B de la imagen) en una sola más precisa, logrando la reducción de la incertidumbre en la mayoría de los pixeles y definiendo de mejor manera el borde.
Referencias
[1] Zhao Chunjiang. Color Image Edge Detection using Dempster-Shafer Theory. Hefei, Anhui, China. 2009. International Conference on Artificial Intelligence and Computational Intelligence.
[2] Timothy, J. Ross. “Fuzzy Logic With Engineering Applications ”. 1997. Mc Graw Hill.
[3] Marta Salas, Patricia Sanz. “Teoría de la Evidencia de Dempster-Shafer”.
[4] Layachi Bentabet et. al. Estimation of Mass Functions in Dempster-Shafer Evidence Theory using Fuzzy Clustering and Spatial Information for Gray Level Based Image Fusion.
[5] Página WEB http://angeljohnsy.blogspot.com/2011/12/sobel-edge-detection.html