Procesamiento de Imágenes Curso 011 - Clase Filtros Espaciales Filtrado espacial Ya trabajamos procesando sólo al piel individualmente. Ahora vamos a hacer un procesamiento en una vecindad de cada piel. Este proceso consistirá en : Deinir un piel central Ejecutar la operación sobre los piels de una zona predeinida vecindad El resultado de la operación es la respuesta del proceso en el piel Repetir el proceso para los demás piels 1
Recordemos Interpretación de convolución: rotábamos una unción la desplazábamos calculábamos áreas comunes. Integral ó sumatoria según continuo ó discreto. Correlación: desplazábamos una unción respecto de otra integrábamos ó sumábamos sin rotación. Correlación Convolución en 1D Para ejecutar la convolución rotamos 180 º a w colocamos el valor de más a la derecha de w coincidiendo con el origen de j. Completamos con ceros k El primer valor de la convolución es la suma de productos en la posición mostrada k. Movemos una posición a la derecha repetimos el proceso l. n es la última posición
Correlación Convolución en 1D El resultado en o llamado ull implica un cálculo en la manera vista con la imagen completada con ceros. Recordar la convolución daba la suma de los anchos. El resultado en p llamado same tiene el mismo tamaño que se calcula agregando ceros a la imagen pero se comienza con el punto central de la máscara del iltro valor 3. A la izquierda se muestra la correlación. 3
Convolución por rotación desplazamiento de la matriz de peso En nuestro caso discreto imágenes la matriz de peso es una matriz de números. Este iltro es el que rotamos desplazamos. El piel rc en la imagen de salida es la suma pesada de los piels de la imagen original vecinos a rc. Cada piel es multiplicado por el peso correspondiente. La suma de esos productos es el valor del piel de la imagen inal. Correlación Convolución en D 4
Convolución en dimensiones Correlación en dimensiones 5
Correlación Convolución en D La operación matemática en que consiste la convolución es simplemente una suma pesada de píeles vecinos del píel uente. Los pesos son determinados por una matriz llamada máscara de convolución que determina los coeicientes a aplicar sobre los puntos de una determinada área. Las dimensiones de la matriz son normalmente impares e iguales de orma que se pueda determinar un centro de una matriz cuadrada. La posición del valor central se corresponde con la posición del píel de salida. 6
Correlación Convolución en D La suma de los pesos en la máscara de convolución aecta a la intensidad general de la imagen resultante. Máscaras de convolución tienen coeicientes que suman un total de 1 como los iltros paso bajo usados en el suavizado de imagen Máscaras de convolución como las usadas en detección de bordes tienen coeicientes positivos negativos suman un total de 0 Desplazamiento del iltro Resultado suma de productos Imagen original Filtro * = Resultado inal. Se muestran sólo los productos distintos de cero 7
Otro problema La primera cuestión al implementar una unción de convolución es como tratar los bordes de la imagen. Cuando la ventana de convolución se centra en el primer píel de una imagen en 00 la ventana deslizante sobresale de la imagen en el borde superior en el izquierdo. Qué valores de la imagen deben ser multiplicados por esos coeicientes de convolución que sobresalen de los bordes? Varias soluciones..primera La primera solución es tratar las celdas vacías en la ventana de convolución como ceros. Esto se conoce como zero-padding. Es ácil de realizar pero no es una buena idea si los bordes de la imagen resultante son tan importantes como el resto de la imagen. 8
Segunda.. La siguiente solución es empezar la convolución en la primera posición donde la ventana no sobresalga de la imagen. Si la máscara de convolución es de tamaño 33 se empezaría convolucionando con el píel en 11 en vez del píel en 00. Este método es sencillo de implementar. En la imagen de salida los bordes convolucionados son copiados para crear una imagen con el mismo tamaño que la imagen de entrada. Otra. El otro método es envolver la imagen es decir considerar como píel contiguo al del borde izquierdo el píel del borde derecho viceversa así como con los del borde superior e inerior. Si se quiere convolucionar una imagen 5656 con una máscara de convolución de 33 la primera ventana de convolución opera con los píeles en las posiciones que se ven en la siguiente igura. Este último método ha sido el empleado en la implementación de la aplicación. 9
En Matlab El iltrado lineal espacial está implementado por la unción : g=imilter w iltering_mode boundar_options size_options = imagen de entrada w= máscara del iltro iltering_mode = corr ó conv boundar_options= p:padding completar con ceros r:replicate repetir el valor de los bordes size_options= ull same. 10
Filtros espaciales Los iltros espaciales tienen como objetivo modiicar la contribución de determinados rangos de recuencias a la ormación de la imagen. El término espacial se reiere al hecho de que el iltro se aplica directamente a la imagen no a una transormada de la misma es decir el nivel de gris de un píel se obtiene directamente en unción del valor de sus vecinos. Clasiicación Los iltros espaciales pueden clasiicarse basándose en su linealidad: iltros lineales iltros no lineales. A su vez los iltros lineales pueden clasiicarse según las recuencias que dejen pasar: los iltros paso bajo ; los iltros paso alto; los iltros pasa banda. 11
La orma de operar de los iltros lineales es por medio de la utilización de máscaras que recorren toda la imagen centrando las operaciones sobre los píeles que se encuadran en la región de la imagen original que coincide con la máscara el resultado se obtiene mediante una computación suma de convolución entre los píeles originales los dierentes coeicientes de las máscaras. Los iltros espaciales no lineales también operan sobre entornos. Ejemplos de iltros no lineales habituales son los iltros mínimo máimo de mediana que son conocidos como iltros de rango. El iltro de mediana tiene un eecto de diuminado de la imagen permite realizar una eliminación de ruido el iltro de máimo se emplea para buscar los puntos más brillantes de una imagen produciendo un eecto de erosión el iltro de mínimo se emplea con el objetivo contrario buscar los puntos más oscuros de una imagen produciendo un eecto de dilatación. 1
Otra clasiicación Filtros espaciales: basándose en su inalidad así tenemos: Filtros de suavizado Smoothing para diuminar la imagen. Filtros de realce Sharpening para eliminar zonas borrosas Filtros dierenciales que se componen de varios tipos de máscaras Laplaciano Prewitt Sobel etc. se utilizan para la detección de bordes. El proceso de detección de bordes se basa en realizar un incremento del contraste en las zonas donde ha una maor dierencia entre las intensidades en una reducción de éste donde no tenemos variación de intensidad. Filtro espacial: suavizado El suavizado de imágenes se utiliza normalmente bajo dos supuestos: dar a una imagen un diuminado o eecto especial para la eliminación de ruido El suavizado o iltrado espacial paso bajo borra los detalles más inos de una imagen atenúa las altas recuencias 13
Filtros de suavizado Los iltros de suavizado se utilizan principalmente para el procesamiento de una imagen con el objeto de remover pequeños detalles. En general uncionan promediando los piels vecinos. Como el ruido en general es una unción impulsiva sumada a la imagen estos iltros tienden a eliminar el ruido. Sin embargo los bordes que también son abruptos tienden a ponerse borrosos con estos iltros. Filtros pasa bajo suavizado Las máscaras de los iltros paso bajo deben tener todos sus coeicientes positivos la suma de ellos debe ser igual a uno. Las máscaras de tamaño 33 más utilizadas son las siguientes: La llamada propiamente paso bajo La llamada "Smooth" 14
Filtros de realce pasa altos El objetivo principal del realce es el de destacar los detalles inos de una imagen El problema puede haber sido el método de adquisición de la imagen El realce de una imagen aumentará su contraste Utilización: imágenes médicas detección de blancos de armas inteligentes 15
Filtros pasa altos Se utilizarán iltros pasa altos Atenúa las componentes bajas de recuncia Dejará pasar componentes de alta recuencia Mostrará los detalles Para implementar un iltro paso alto es necesario que el iltro posea coeicientes negativos en la perieria positivos en el centro. Así cuando la máscara se encuentra sobre una zona uniorme la salida proporcionada por la máscara será 0 o próima a dicho valor. Filtros pasa altos Algunos iltros 1-1 - 0-0 -1 0-4 - 0 8 0-1 4-1 1-1 - 0-0 -1 0 Cuando la máscara está sobre una zona de la imagen de poco contraste o pequeña variación del nivel de gris la salida de la máscara es cero o mu pequeña. 16
Filtros pasa altos El iltrado paso alto disminue considerablemente el número de grises presentes en la imagen original con lo que se reduce el contraste global de la imagen Filtros sharpen Los iltros pasa altos recién vistos disminuen el contraste global de la imagen. Para realce se usan los iltros sharpen que son una variedad de las máscaras a vistas. 1-1 -1-1 -1 0-1 0-5 - -1 9-1 -1 5-1 1-1 -1-1 -1 0-1 0 Sharpen 1 Sharpen Sharpen 3 17
Resumiendo pasa altos Se aumenta en 1 el valor del centro al pasa altos para obtener la máscara sharpen correspondiente. Resumiendo: El iltro pasa altos disminue el número de grises presentes en la imagen original reduciendo el contraste global de la imagen. Se mejora la nitidez los detalles al procesar la imagen con iltros sharpen. Con la máscara pasa alto se detectan los detalles de la imagen detalles que se verán realzados con un iltro sharpen. Filtros derivativos El hacer un promedio de unos píeles sobre una región de la imagen tiende a emborronar los detalles de una imagen. Como el promedio es similar a la integración la dierenciación tendrá el eecto opuesto ello realzará los detalles de una imagen. El método de dierenciación más común en el proceso de aplicaciones es el gradiente. Para una unción el gradiente de en las coordenadas se deine como el vector: 18
Filtros derivativos = = mag = 1/ Filtros derivativos 3 Considerando la región de la imagen mostrada en la siguiente igura donde I denota los valores de nivel de gris. La aproimación más simple es emplear la dierencia I 5 -I 8 en la dirección de I 5 - I 6 en la dirección de combinados ambos: ƒ [I 5 -I 8 I 5 -I 6 ] 1/ 19
Filtros derivativos 4 I 1 I I 3 I 4 I 5 I 6 I 7 I 8 I 9 Filtros derivativos 5 En vez de utilizar los cuadrados o la raíz podemos obtener resultados similares empleando los valores absolutos ƒ I 5 -I 8 I 5 -I 6 Otra aproimación es utilizar dierencias cruzadas I 1 I I 3 I 4 I 5 I 6 I 7 I 8 I 9 0
Filtros derivativos 6 ƒ [z 5 -z 9 z 6 -z 8 ] 1/ o sus valores absolutos ƒ z 5 -z 9 z 6 -z 8 las ecuaciones anteriores pueden implementarse empleando máscaras de tamaño estas máscaras se llaman operadores de Roberts Filtros derivativos 7 1 0 0 1 0-1 -1 0 1
Filtros derivativos 8 Otra aproimación es emplear máscaras de tamaño 33 ƒ I 7 I 8 I 9 -I 1 I I 3 I 3 I 6 I 9 -I 1 I 4 I 7 la dierencia entre la tercera primera ilas de la región 33 aproima la derivada en la dirección la dierencia entre la tercera la primera columna aproima la derivada en la dirección. Filtros derivativos 9 Las máscaras que implementan esta nueva aproimación se denominan iltros de Prewitt: -1-1 -1-1 0 1 0 0 0-1 0 1 1 1 1-1 0 1 Otro tipo de iltro sería el de Sobel: -1 - -1-1 0 1 0 0 0-0 1 1-1 0 1
3 Filtro Laplaciano 1 Este tipo de iltro se basa en un operador derivativo por lo que acentúa las zonas que tienen gran discontinuidad en la imagen 1 = Filtro Laplaciano 1 = 1 1 = = Si la unción depende de dos variables
4 Filtro Laplaciano 3 = La derivada de segundo orden con respecto a al variable : 1 1 = De orma similar con respecto a : 1 1 = 1 1 1 1 = Filtro Laplaciano 4 4 1 1 1 1 = La anterior epresión es equivalente a aplicar una máscara deinida por: 0 1 0 w= 1-4 1 0 1 0
Filtro Laplaciano 5 1 1 1 1 1 1 1 1 1 1 1 1 Filtro Laplaciano 6 % Imagen original >> I=imread'moon.ti' ; % Se deine una matriz de pesos >> w=[0 1 0; 1-4 1; 0 1 0]; % Se aplica el iltro >> I=imilterIw; Alternativa: >> I=imread'moon.ti'; >> w=special'laplacian'0; >> I=imilterIw'replicate'; 5
6
7
8