LABORATORIO NO 1. FILTROS ESPACIALES EN IMÁGENES
FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA VISIÓN ARTIFICIAL SEPTIEMBRE 26 DE 2009
INTRODUCCIÓN
La visión artificial es un ciencia que desarrolla las bases teóricas y algorítmicas para obtener información sobre el mundo real a partir de una o varias imágenes, se encarga encarga de aplicar un adecuado adecuado procesamiento a cada imagen y produciendo una versión modificada de esta imagen. El procesamiento digital de una imagen por algoritmos de filtrado extrae las características más importantes de cada imagen, a través de algoritmos que permiten eliminar las señales indeseadas, que por causa del método de adquisición, o de las condiciones bajo las cuales fue captada. Este tipo de técnica recibe el nombre de filtrado f iltrado de imágenes. En esta práctica de laboratorio utilizando MATLAB trabajaremos los siguientes filtros: (Binomial, Pasa bajos, Laplaciano, Pasa alto, Máximo, Mínimo, Promedio, Sobel y Prewitt).
1
MARCO TEORICO
El principal objetivo del realce de la imagen es procesar una imagen de tal manera que el resultado obtenido sea el apropiado para una aplicación específica. FILTROS ESPACIALES:
Responden a la siguiente ecuación: a
g ( x , y )
b
w( s, t ) f ( x s, y t ) s a t b
donde: f(x+s, y+t): Valor de los píxeles del bloque seleccionado y w(s, t): Coeficientes que se aplicarán al bloque (máscara). Los filtros espaciales tienen como objetivo modificar la contribución de determinados rangos de frecuencias de una imagen. El término espacial se refiere al hecho de que el filtro se aplica directamente a la imagen y no a una transformada de la misma, es decir, el nivel de gris de un pixel se obtiene directamente en función del valor de sus vecinos. Los filtros espaciales pueden clasificarse basándose en su linealidad: filtros lineales y filtros no lineales. A su vez los filtros lineales pueden clasificarse según las frecuencias que dejen pasar: los filtros paso bajo atenúan o eliminan las componentes de alta frecuencia a la vez que dejan inalteradas las bajas frecuencias; los filtros paso alto atenúan o eliminan las componentes de baja frecuencia con lo que agudizan las componentes de alta frecuencia; los filtros paso banda eliminan regiones elegidas de recuencias intermedias. intermedias. La convolución es una operación operación por la cual se lleva a cabo una acción de filtrado. Como veremos más adelante y como se ha visto en las propiedades de la Transformada de Fourier, existe una relación entre el filtrado espacial y el filtrado en el dominio de la frecuencia (con una restricción a tomar en cuenta).
1) Filtro binomial
Propiedades de los filtros binomiales: • Son separables, es decir, en dos dimensiones podemos aplicar
un filtro de un mismo orden primero en la dirección x y luego en la dirección y o viceversa. • La convolución de un filtro de orden N consigo mismo produce
un filtro de orden 2N.
El resultado de aplicar un filtro suavizador binomial a una imagen con ruido como el de la figura se muestra a continuación:
2
Imagen con ruido suavizada usando un filtro binomial de 7x7.
2) Filtro Laplaciano
Este tipo de filtro se basa en un operador derivativo, por lo que acentúa las zonas que tienen gran discontinuidad en la imagen.
f ( x) x
f ( x 1) f ( x)
La aplicación fundamental del filtro Laplaciano es aumentar la nitidez (destacando los detalles) de la imagen, al afinar las líneas de transición de niveles de gris. Como se ha expuesto en filtros, el valor central de la máscara de los filtros Laplacianos es negativo (4 a 8 veces superior) que los parámetros del entorno. Esto crea el problema de que la imagen quede muy oscura después de aplicar el filtro al aproximar los valores negativos a cero. 3
Para atender este problema se suele aumentar el tipo de la imagen y sustraer a la imagen original la imagen resultante.
Imagen original
imagen aplicando filtro Laplaciano
3) Filtro Paso-Bajo Son utilizados en la reducción de ruido; suavizan y aplanan un poco las imágenes y como consecuencia se reduce o se pierde la nitidez. En inglés son conocidos como Smoothing Spatial Filters. Los filtros paso-bajas son utilizados para difuminar y reducir ruido en las imágenes, a este proceso se le conoce en inglés como smoothing. El difuminado (blurring) es usado en etapas de preprocesamiento desde la eliminación de pequeños detalles hasta la extracción de objetos y rellenado de pequeños huecos en lineas y curvas. La reducción de ruido puede ser completada por el difuminado usando filtros lineales o bien con un filtrado no lineal. 4) Filtro Paso-Alto Estos filtros son utilizados para detectar cambios de luminosidad. Son utilizados en la detección de patrones como bordes o para resaltar detalles finos de una imagen. Son conocidos como Sharpening Spatial Filters.
4
Original
Pasa Altos
Énfasis
5) Filtros Prewitt
Se usa para la detección de bordes. Éste consta de 8 matrices que se aplican pixel a pixel a la imagen. Luego se suman las imágenes para obtener los bordes bien marcados. El filtro de Prewitt marca muy bien los bordes ya que sus matrices atacan estos desde ocho lados diferentes. En general cada matriz toma el nombre de un punto cardinal: Norte, Sur, Este, Oeste, Noroeste, Noreste, Suroeste, Sureste. Imagen original
Detección de bordes con prewitt
5
6) Filtros Sobel
Muy usado para la detección de bordes, este utiliza, a su vez, dos mascaras o filtros. Una para detectar los bordes verticales y otra para los horizontales. Así, para obtener los bordes completos se realiza la suma de las imágenes que nos resultaron con los bordes verticales y horizontales.
Imagen original
Detección de bordes con sobel
OPERACIONES BASADAS EN VECINDADES:
1. Filtro mediana: Es un filtro muy interesante, ya que se clasifican los píxel con cierta intensidad para determinar el valor del píxel filtrado. La forma del filtro es la misma que los filtros normales de la convolución. Los usos de este filtro aparte de eliminar mucho ruido de la imagen también resuelven discontinuidades de una imagen sin destruir la información general. Los píxeles que no son similares en valor a sus vecinos serán eliminados; la característica de píxeles muy diferentes es una indicación de que la imagen posee ruido. En los ejemplos de abajo usted puede comparar las imágenes antes y después de aplicar el filtro Mediano:
6
Antes de aplicar el filtro Mediano
Después de aplicar el filtro Mediano
2. Filtro mínimo: De forma similar al filtro anterior se clasifican los píxeles según su valor. En este filtro se usa el menor valor del píxel como el nuevo valor filtrado. Este filtro también puede denominarse filtro de compresión o erosión porque la aplicación sucesiva del mismo causará una disminución en la intensidad de los bordes de los objetos dentro de una imagen, llegando a desgastarse. En los ejemplos de abajo usted puede comparar las imágenes antes y después de aplicar el efecto Filtro mínimo:
Antes de aplicar Filtro mínimo
Después de aplicar Filtro mínimo
7
3. Filtro máximo: En este filtro se usa el mayor valor del píxel como el nuevo valor filtrado. Este filtro también se conoce como filtro de descompresión o expansivo, porque la aplicación sucesiva de estos filtros causa un incremento en la intensidad de los bordes dentro de una imagen, llegando a aumentar de tamaño los bordes. El efecto Filtro máximo resalta píxeles claros en una imagen. En los ejemplos de abajo usted puede comparar las imágenes antes y después de aplicar el efecto Filtro máximo:
Antes de aplicar Filtro máximo
Después de aplicar Filtro máximo
8
LABORATORIO NO 1. FILTRADO ESPACIAL EN IMAGENES
Objetivos:
Conocer los diferentes tipos de filtros. Diferenciar los distintos filtros y sus aplicaciones para mejorar la calidad las imágenes.
Procedimiento:
Para el diseño de los algoritmos utilizamos la herramienta de MATLAB; aunque no se utilizaron las funciones propias de MATLAB para el filtrado de imágenes, sino que se hizo el filtrado de forma matricial y con un Kernel o mascara de tamaño (3*3). REALIZACIÓN DE LA PRÁCTICA DE LABORATORIO
Mascara filtro Laplaciano:
Laplaciano = [ 0
1
0; 1 -4
Imagen escala RGB:
9
1; 0
1
0];
Imagen con escala de grises:
Mascara filtro Prewitt: Acentuar transiciones horizontales Prewitt = [ 1
1
1; 0
0
Imagen escala RGB:
10
0; -1 -1 -1];
Imagen con escala de grises:
Mascara filtro Sobel: Acentuar transiciones horizontales Sobel = [ 1
2
1; 0 0
Imagen escala RGB:
11
0; -1 -2 -1];
Imagen con escala de grises:
Mascara filtro Pasa bajo: Reducción de ruido. Pasa bajo = [ 1
1
Imagen escala RGB:
12
1; 1 1
1; 1
1
1]./9;
Aplicando varias veces el filtro...
Imagen con escala de grises:
13
Mascara filtro Pasa Alto: Detección de patrones como bordes o para resaltar detalles finos de una imagen Pasa Alto = [ -1
-1 -1; -1 -8
Imagen escala RGB:
Imagen con escala de grises:
14
-1; -1
-1
-1];
Mascara filtro Binomial: Suaviza el ruido. Binomial =[ 1
2
1; 2
Imagen escala RGB:
Aplicando varias veces el filtro...
15
4
2; 1
2
1];
Imagen con escala de grises:
Mascara filtro Máximo:
Imagen escala RGB:
16
Aplicando varias veces el filtro...
Imagen con escala de grises:
17
Mascara filtro Minimo:
Imagen escala RGB:
Aplicando varias veces el filtro...
18
Imagen con escala de grises:
Mascara filtro Mediana:
Imagen escala RGB:
19
Imagen con escala de grises:
NOTA: Adjunto a este documento hay un manual en un archivo .txt para el manejo correcto del programa en MATLAB.
20
CONCLUSIONES
A través del desarrollo de esta práctica se pudo analizar y diferenciar los tipos de filtros los cuales a través de la aplicación de algoritmos permiten eliminar las señales indeseadas según sus características, y el manejo que hacen sobre la imagen con el fin de mejorar su calidad ya que en muchos casos la imagen original presenta algunas impurezas producidas por una gama de factores entre las que se incluyen el ambiente, el estado del sistema de adquisición, el estado del canal de transmisión, los cuales generan distorsión y ruido.
21
WEBGRAFIA
1. http://www.slideshare.net/omarspp/imagen-filtrado-espacial 2. http://ocw.um.es/ciencias/herramientas-de-teledeteccion-aplicadas-ala/material-de-clase-1/tema-6-tecnicas-de-filtrado.pdf
22