Está en la página 1de 10

http://www.vinuesa.

com

GRADIENTE
La laplaciana es un buen filtro paso alto, pero no es una buena herramienta para resaltar o detectar los bordes. En muchos casos, los bordes o lmites de las figuras o de las regiones aparecen como mnimo como un salto de brillo y algunas veces por extensin sobre muchos pixeles. La laplaciana da una mayor respuesta sobre una lnea que sobre un salto, y un punto sobre una lnea. En una imagen que contiene ruido, que tpicamente se presenta como puntos variando en brillo debido a cuentas estadsticas, caractersticas del detector, etc. La laplaciana nos mostrar a los puntos mucho ms fuertes que los bordes o lmites que son de inters. Otro camino de localizar lmites es en la utilizacin de la primera derivada en dos o ms direcciones. Ser de gran ayuda la derivada primera en una dimensin. Algunas imgenes son esencialmente unidimensionales, como las preparaciones de cromatografa en la cual las protenas son diseminadas a travs de barras en un campo elctrico u otros ejemplos. Aplicando una derivada primera en la imagen, en la direccin de la variacin ms importante, demarcar los bordes y realzar la visibilidad de saltos pequeos y otros detalles. Si nos damos cuenta, para una imagen con pixeles finitos digitalizados, una derivada continua no puede ser desarrollada. A pesar de esto, la diferencia de valor entre pixeles adyacentes puede ser calculada como una derivada finita. Esta diferencia puede ser algn ruido, pero promediando en la direccin perpendicular a la derivada se puede suavizar el resultado. Una imagen derivada con apariencia suavizada puede ser producida con unos pocos pasos aplicando un kernel asimtrico. Considerando un conjunto de kernels indicado abajo. Hay 8 posibles rotaciones de orientacin de este kernel sobre el centro.

1 2 1

0 0 0

-1 -2 -1

2 1 0

1 0 -1

0 -1 -2

1 0 -1

2 0 -2

1 0 -1

Una mejora vendra de promediar todos los pixeles adyacentes en cada columna vertical antes de tomar la diferencia; esto reducira el ruido en la imagen. Una segunda forma, es que esos kernels tengan 3 pixeles de ancho y por tanto reemplacen el pixel central con el valor de la diferencia. La substraccin simple descrita anteriormente causa

http://www.vinuesa.com

un medio pixel intercalado en la imagen est ausente con este kernel. Finalmente, el mtodo mostrado aqu es ms rpido, ya que slo requiere un simple paso a travs de la imagen. Obviamente, otros valores de kernel pueden ser utilizados para producir derivadas. A medida que el tamao del kernel se incrementa, ms direcciones diferentes son posibles. Dado que es fundamentalmente una derivada unidimensional, es posible utilizar directamente los coeficientes de Savitsky y Golay, las cuales fueron originariamente publicados para uso de datos unidimensionales en espectrogramas. Esos coeficientes, como las ponderaciones de suavizados, son equivalentes a las ltimas esquinas sobre un polinomio de gran orden. En este caso, la primera derivada del polinomio es evaluada en el punto central. Usar derivadas unidimensionales para extraer datos unidimensionales de imgenes bidimensionales es relativamente inusual y requiere operaciones especiales. Sin embargo, extendiendo los mismos principios a la localizacin de bordes con orientaciones arbitrarias en imgenes de dos dimensiones, es uno de los caminos ms comunes de todas las operaciones de realzado en imgenes. El problema, claro est, es encontrar un mtodo que sea insensible la orientacin (local) de los lmites. Uno de los primeros acercamientos a esta tarea fue el Operador Cruzado de Roberts (Roberts, 1965). Utiliza la misma tcnica de diferencia mostrada anteriormente para el caso unidimensional, pero con dos pixeles de diferencia en los ngulos derechos de cada lado, como se ve en la siguiente figura. Px , y Px + 1, y D 2 = Px , y + 1 Px + 1 , y D 1 = Px + 1 , y P x , y Px , y +1 Px + 1, y +1

RESULTADO = D12 + D22


Diagrama del Operador Cruzado de Roberts. Dos diferencias en las direcciones en los ngulos derechos de cada uno son combinados para determinar la gradiente.

Esas dos diferencias representan una aproximacin finita a la derivada del brillo. Una derivada bidireccional puede ser combinada para obtener una magnitud de valor que sea insensible a la orientacin de los bordes por cuadratura, suma, y tomar la raz cuadrada del total.

http://www.vinuesa.com

Este mtodo tiene los mismos problemas que el mtodo de diferencias utilizado en una dimensin. El ruido en la imagen es agrandado por la diferencia de pixeles simples, y el resultado es intercalado por un pixel y medio sobre un pixel tanto en las direcciones x e y. Adems, el resultado, puede no ser invariante con respecto a la orientacin de los lmites. Debido a esto, los ordenadores que usaban este modelo, no eran rpidos y tenan que ser equipados con procesadores separados de coma de punto flotante. Esto hizo que la raz cuadrada de la suma de los cuadrados fuera impracticable de calcular. Dos alternativas, fueron usadas: aadir el valor absoluto de las diferencias en la direccin, o comparando los valores absolutos de las diferencias y guardar el mayor. Ambos mtodos hicieron que el resultado fuera sensitivo a la direccin. Adems, cada vez que el mtodo de la raz cuadrada es usado, la magnitud del resultado variar debido a que el espaciado entre pixeles no es el mismo en todas las direcciones, y los lmites en las direcciones verticales y horizontales extiendan el cambio de brillo sobre ms pixeles que lmites en la direccin diagonal. Normalmente, se utiliza la raz cuadrada de la suma de las diferencias de cuadrados. Debido a esto, las imgenes son caracterizadas variando la sensibilidad con respecto la orientacin de los lmites, sobre todo para seales de alto nivel de ruido. Su funcin, al ser un Filtro Paso Alto es la deteccin de bordes. Un borde en un segmento de borde de dominio continuo f[m,n] puede ser detectado mediante la formacin de una gradiente unidimensional g[m,n] a travs de una lnea normal en un borde, la cual est a un ngulo con respecto al eje horizontal. Si la gradiente es suficientemente grande, por ejemplo, sobre algn valor de umbral, un borde es considera presente. La gradiente a travs de la lnea normal al borde ascendente puede ser computerizada desde el punto de vista de la derivada a travs de los ejes ortogonales segn la siguiente ecuacin

g m, n =

f m, n f m, n cos + cos m n

http://www.vinuesa.com

La anterior frmula describe la generacin de un borde gradiente G[m,n] en el dominio discreto en trminos de una gradiente de bordes en filas GR(j,k) y una gradiente en columnas GC(j,k). La amplitud de la gradiente local viene dada por

G ( j, k ) = G R ( j, k )2 + G C ( j, k )2

Para obtener una mejor eficiencia computacional, la amplitud de la gradiente se aproxima normalmente a la magnitud combinada

G ( j, k ) = G R ( j, k ) + G C ( j, k )

El diagrama de bloques, sera el siguiente:

GRADIENTE COLUMNA

GR(j.k)

COMBINAC. GRADIENTE F(j.k) GC(j.k) G(j.k)

GRADIENTE FILA

La orientacin de la gradiente local con respecto al eje de columnas es

http://www.vinuesa.com

G ( j, k ) ( j , k ) = tan 1 C G R ( j, k )

En lo referente al diseo de mscaras utilizando el concepto de gradiente, se ha llegado a un acuerdo prcticamente unnime en una mascara estndar, que tiene la forma

A0 A7 A6

A1 F[m,n] A5

A2 A3 A4

con G ( j, k ) =

G R ( j, k ) 2 + G C ( j, k )2

donde G R ( j, k ) = 1 K +2

[( A

+ K A 3 + A4 ) ( A0 + K A7 + A6 )

G C ( j, k ) =

1 K +2

[( A

+ K A1 + A 2 ) ( A 6 + K A 5 + A 4 )

http://www.vinuesa.com

siendo K un valor arbitrario. Para la mascara de Sobel, K = 2, para la mscara de Prewitt K = 1 y para la mscara de Frei and Chen K = 2, es decir, las mscaras quedaran de la forma:

MSCARA DE SOBEL

Gradiente por columnas

Gradiente por filas

1 1 2 4 1

0 0 0

1 2 1

1 2 1 0 0 4 2 1

1 0 1

MSCARA DE PREWITT

Gradiente por columnas

Gradiente por filas

1 0 1 1 0 3 1 0

1 1 1

1 1 1 1 0 0 0 3 1 1 1 MSCARA DE FREI-CHEN

Gradiente por columnas 1 1 2 2+ 2 1 0 0 0 1 2 1

Gradiente por filas

1 2 1 0 0 2+ 2 1 2

1 0 1

Si nos fijamos bien, la relacin entre la gradiente por columnas y filas, viene dada por:

http://www.vinuesa.com

G R = ( G C )

es decir, la gradiente por filas es igual a la traspuesta de la gradiente por columnas con el signo cambiado (multiplicada por 1) y esta importante propiedad se ha utilizado en el cdigo del programa. Como indicbamos ms arriba, otro importante mscara es el operador de Roberts que viene dado mediante la siguiente norma:

G = f m, n f m + 1, n + 1 + f m + 1, n f m, n + 1

que adecundolo a una mscara 3 x 3, se quedara de la forma siguiente: OPERADOR DE ROBERTS

Gradiente por columnas

Gradiente por filas

0 0 0

0 1 0

1 0 0

1 0 0 1 0 0

0 0 0

Tambin se pueden desarrollar gradientes de mayor grado, como por ejemplo el siguiente de 5 x 5 (que usaremos para una visualizacin de imgenes).

http://www.vinuesa.com

GRADIENTE 5 X 5

Gradiente por columnas

Gradiente por filas

1 / 4 1/ 3 1 1 / 2 4 1/ 3 1 / 4

1 / 3 0 1 / 3 1 / 4 1 / 2 0 1 / 2 1 / 3 1 0 1 1 / 2 1 / 2 0 1 / 2 1 / 3 1 / 3 0 1 / 3 1 / 4

1/ 3 1/ 2 1/ 3 1/ 4 1/ 4 1/ 3 1/ 2 1 1/ 2 1/ 3 1 0 0 0 0 0 4 1 / 3 1 / 2 1 1 / 2 1 / 3 1 / 4 1 / 3 1 / 2 1 / 3 1 / 4

EJEMPLOS PRCTICOS

Operador de Sobel

http://www.vinuesa.com

Imagen original

Operador de Sobel

Operador de Sobel

Imagen original

Operador de Sobel

http://www.vinuesa.com

Los resultados obtenidos con el Operador de Prewitt y la Gradiente 5 x 5, son prcticamente iguales.

10

También podría gustarte