Filtros. Mejoramiento de la imagen Previo a obtener características: –resaltar aspectos deseados,...
-
Upload
nicolas-espejo-plaza -
Category
Documents
-
view
218 -
download
0
Transcript of Filtros. Mejoramiento de la imagen Previo a obtener características: –resaltar aspectos deseados,...
Filtros
Mejoramiento de la imagen
• Previo a obtener características:– resaltar aspectos deseados,– eliminar ruido, mejorar contraste, etc.
• Técnicas de pre-procesamiento:– operaciones puntuales,– ecualización por histograma,– filtrado.
Filtrado
• Filtrar una imagen consiste en aplicar una transformación de forma que se acentúen o disminuyan ciertos aspectos
g(x,y) = T[f(x,y)]
Tipos de Filtros
• Dominio espacial - convolución
g(x,y) = h(x,y) * f(x,y)
• Dominio de la frecuencia – multiplicación en el espacio transformado de Fourier
G(u,v) = H(u,v) F(u,v)
Filtrado en el Dominio Espacial
• Operan directamente sobre los pixeles de la imagen
• Se utiliza generalmente una “máscara” que opera sobre una vecindad de pixels, centrándose sobre el pixel de interés
• Se realiza una convolución (barrido) de la máscara con la imagen
Filtrado en el Dominio Espacial
• Cada pixel de la nueva imagen se obtiene mediante la sumatoria de la multiplicación de la máscara por la vecindad del pixel:
g(x,y) = f(x-i,y-j) w(i,j)
• Generalmente se divide sobre cierto valor constante para normalizar
Aplicación de una máscara
Convolución
1 1 1
1 1 1
1 1 1
máscara
Imagenoriginal
0 1
1
0
0 0
000 1
1
1
Imagennueva
Convolución - paso 1
1 1 1
1 1 1
1 1 1
máscara
Imagenoriginal
0 1
1
0
0 0
000 1
1
1
Imagennueva
2
Convolución - paso 2
1 1 1
1 1 1
1 1 1
máscara
Imagenoriginal
0 1
1
0
0 0
000 1
1
1
Imagennueva
2 5
Normalización
1 1 1
1 1 1
1 1 1
máscara
Imagennueva
2 5
Imagennueva normalizada
0 1
En este caso se divide por 9.(suma de las valores de la máscara)
Efecto de “bordes”
1 1 1
1 1 1
1 1 1
máscara
Imagenoriginal
0
1
1
0
0 0
000 1
1
1
Dos opciones básicas:- asumir que son cero- repetir pixeles del borde
30
0 0 1
0
Filtros básicos
• Filtros puntuales (sección anterior)
• Filtros de suavizamiento
• Filtros de acentuamiento
• Filtros de énfasis de altas frecuencias
• Cada clase de filtro difiere en los valores utilizados en la máscara
Filtros de suavizamiento
• Eliminan ruido o detalles pequeños que no sean de interés
• Filtro pasa-bajos (en frecuencia)
Filtros de suavizamiento
• Promedio - promedio de pixeles vecinos (máscara con unos)
• Mediana - substituye por mediana de la vecindad (generalmente mejor al promedio)
• Gaussiano - aprox. distribución gaussiana
Ejemplos de aplicación de filtros de suavizamiento
Filtros de acentuamiento
• Intensifica los detalles y cambios, mientras que atenúa las partes uniformes
• Filtro pasa-altos (en frecuencia)
Filtros de acentuamiento
• Ejemplo de filtro pasa-alto
• Suma de los pesos es cero (se “eliminan” regiones de intensidad uniforme)
Énfasis de altas frecuencias
• Los filtros de acentuamiento tienden a eliminar las zonas de baja frecuencia
• Los filtros de énfasis de alta frecuencia también acentúan los detalles pero preservan las zonas uniformes
• Una forma de implementarlos es multiplicando la imagen original por una constante, A > 1, combinado con un filtro pasa alto
Énfasis de altas frecuencias
• Otra forma de implementar un filtro PA es “restando” a la imagen original una filtrada con un PB:
PA = I - PB• Entonces un filtro de EA se puede obtener como:
EA = (A) I - PB• Equivalente a:
EA = (A-1) I + PA
Énfasis de altas frecuencias• Máscara para un filtro de énfasis de altas
frecuencias (high boost)
w = 9 A - 1, A > 1
Ejemplos de aplicar filtros pasa-altos
Original Pasa Altos Énfasis
Filtrado en el dominio de la frecuencia
Filtros en frecuencia
• Se realiza una transformación de la imagen al dominio de la frecuencia mediante la transformada de Fourier
• Esto permite que el filtrado sea más sencillo (multiplicación) y pueda ser más preciso en frecuencia
Transformadas
• Transformado de Fourier
F(u) = f(x)e[-j2ux]dx
• Transformada inversa
f(x) = F(u)e[j2ux]du
Ejemplosf(t)F(w)
Transformadas de 2 variables
• Para el caso de una imagen se requiere aplicar la transformación en 2-D
• Transformado de Fourier
F(u) = f(x,y)e[-j2ux+vy)]dxdy
• Transformada inversa
f(x) = F(u,v)e[j2ux+vy)]dudv
Transformadas discreta
• Para el caso de una imagen digital se aplica la transformada discreta de Fourier (DFT)
• Transformado de Fourier
F(u) = (1/MN) f(x,y)e[-j2ux/M+vy/N)]
• Transformada inversa
f(x) = F(u,v)e[j2ux/M+vy/N)]
• Existe una forma eficiente de implementar la DFT llamada transformada rápida de Fourier (FFT)
Propiedades
• Separabilidad
• Traslación
• Rotación
• Periodicidad y simetría
• Convolución
Filtrado
• Se aplica la Transformada de Fourier
• Se aplica el filtro
• Se aplica la transformada inversa
Tipos de Filtros
• Pasa bajos
• Pasa banda
• Pasa altos
• Filtros ideales• Filtros butterworth
Filtro ideal pasa bajos
Filtro Butterworth pasa-bajos
Filtrado Adaptable
• Los filtros de suavizamiento tienden a eliminar propiedades importantes (p. ej. orillas) de la imagen
• Filtros adaptables: – Remover ruido y al mismo tiempo preservar las
orillas– Suavizar sólo en ciertas regiones de la imagen– Donde suavizar depende del gradiente local de
la imagen
Filtrado Adaptable
Suavizar(bajo gradiente)
Mantener orillas(alto gradiente)
Filtros adaptables
• Filtro de mediana
• Difusión anisotrópica
• Campos aleatorios de Markov
• Filtrado gaussiano no-lineal
• Filtrado gaussiano adaptable
Filtrado gaussiano adaptable
• Aplicar varios filtros gaussianos de forma que la desviación estándar dependa del gradiente local
• Para estimar el gradiente se utiliza el concepto de espacio de escalas
• Se obtiene la escala de cada región (máscara) de la imagen y en base a esta se define la del filtro para esa región
Escala
• Se refiere al nivel de detalle de la imagen– Escala “grande” – mucho detalle– Escala “pequeña” – poco detalle
• Si se filtra una imagen con gaussianas de diferente , al ir aumentando la se va disminuyendo la escala
• Existe una escala “óptima” para cada región de la imagen
Escala
Alta escala(alto gradiente)
Baja escala(bajo gradiente)
Escala óptima
• Una forma de obtener la mejor escala es aplicar varios filtros gaussianos a diferente , y quedarse con el mejor de acuerdo al principio de MDL
• MDL – minimizar el # de bits de la imagen filtrada y el error respecto a la original
I(x,y) = I(x,y) + (x,y)• Se puede demostar [Gómez 00] que la longitud de
descripción se puede estimar comodI(x,y) = ( / 2 ) + 2
• Entonces se calcula dI para cada región y se selecciona la que de el menor valor
Algoritmo
1. Seleccionar la escala local
2. Filtrar cada punto (región) con un filtro gaussiano con la óptima, correspondiente a la escala local
3. Obtener la imagen filtrada
Ejemplo – imagen original (con ruido gaussiano)
Mapa deescalas
Filtradacon
difusiónanisotrópica
50iteraciones
Filtradacon
difusiónanisotrópica
80iteraciones
Filtradacon
filtro gaussianono-lineal
Filtradacon
filtrogaussianoadaptable
References
• [González] Capítulo 3 (3.4, 3.5), 4
• [Sucar] Capítulo 2
• G. Gómez, J.L. Marroquín, L.E. Sucar, “Probabilistic estimation of local scale”, IEEE-ICPR, 2000.
Actividad 3
• Implementar en el laboratorio filtrado en el dominio espacial:– hacer un programa para aplicar una máscara cuadrada
general. – el programa tiene dos argumentos: la imagen y la
máscara (matriz)– normalizar la imagen filtrada y desplegarla (al igual
que la imagen de entrada)– probar con diferentes tipos y tamaños de filtros
• Enviar programa y entregar impresión• Leer y hacer los problemas faltantes del Capítulo 2
del texto
Normalización
• Para efectos de visualización es necesario “normalizar” (regresar al rango de valores) la imagen filtrada
• La forma más sencilla es multiplicando por una constante (suma de valores absolutos de la máscara), pero esto no es siempre lo más adecuado
• Otra forma mejor es mediante una transformación lineal, haciendo el valor mínimo=0 y el máximo=255
normalización:S = 255 * (E – min) / (max – min)
min maxE
S
255