¿Por qué se utilizan los filtros gaussianos como filtros de paso bajo en el procesamiento de imágenes?

30

En el procesamiento de señales 1d, se utilizan muchos tipos de filtros de paso bajo. Sin embargo, los filtros gaussianos casi nunca se usan.

¿Por qué son tan populares en las aplicaciones de procesamiento de imágenes? ¿Son estos filtros el resultado de optimizar cualquier criterio o son solo una solución ad hoc ya que el 'ancho de banda' de la imagen generalmente no está bien definido?

nimrodm
fuente

Respuestas:

28

Las aplicaciones de procesamiento de imágenes son diferentes de las aplicaciones de procesamiento de audio, porque muchas de ellas están sintonizadas para la vista. Las máscaras gaussianas simulan casi perfectamente el desenfoque óptico (ver también funciones de dispersión de puntos ). En cualquier aplicación de procesamiento de imágenes orientada a la producción artística, los filtros gaussianos se utilizan para desenfocar de forma predeterminada.

Otra propiedad cuantitativa importante de los filtros gaussianos es que en todas partes no son negativos . Esto es importante porque la mayoría de las señales 1D varían aproximadamente 0 ( ) y pueden tener valores positivos o negativos. Las imágenes son diferentes en el sentido de que todos los valores de una imagen no son negativos ( x R + ). La convolución con un núcleo gaussiano (filtro) garantiza un resultado no negativo, por lo que dicha función asigna valores no negativos a otros valores no negativos ( f : R +R + ). El resultado es, por lo tanto, siempre otra imagen válida.XRXR+F:R+R+

En general, el rechazo de frecuencia en el procesamiento de imágenes no es tan crucial como en las señales 1D. Por ejemplo, en los esquemas de modulación, sus filtros deben ser muy precisos para rechazar otros canales transmitidos en diferentes frecuencias portadoras, y así sucesivamente. No puedo pensar en nada como una limitación para los problemas de procesamiento de imágenes.

Phonon
fuente
21

Los filtros gaussianos se usan en el procesamiento de imágenes porque tienen una propiedad de que su soporte en el dominio del tiempo es igual a su soporte en el dominio de la frecuencia. Esto se debe a que Gaussian es su propia Transformada de Fourier.

¿Cuáles son las implicaciones de esto? Bueno, si el soporte del filtro es el mismo en cualquiera de los dominios, eso significa que la relación de ambos soportes es 1. Como resultado, esto significa que los filtros gaussianos tienen el 'producto de ancho de banda de tiempo mínimo'.

Entonces, ¿qué podrías decir? Bueno, en el procesamiento de imágenes, una tarea muy importante es eliminar el ruido blanco, mientras se mantienen los bordes sobresalientes. Esto puede ser una tarea contradictoria: el ruido blanco existe en todas las frecuencias por igual, mientras que los bordes existen en el rango de alta frecuencia. (Cambios repentinos en las señales espaciales). En la eliminación de ruido tradicional a través del filtrado, una señal es de paso bajo, lo que significa que los componentes de alta frecuencia en su señal se eliminan por completo.

Pero si las imágenes tienen bordes como componentes de alta frecuencia, el LPF tradicional también los eliminará, y visualmente, esto se manifiesta a medida que los bordes se vuelven más 'manchados'.

¿Cómo, entonces, eliminar el ruido, pero también preservar los bordes de alta frecuencia? Entra en el núcleo gaussiano. Dado que la Transformada de Fourier de un gaussiano también es gaussiana, el filtro gaussiano no tiene un corte agudo en alguna frecuencia de banda de paso más allá de la cual se eliminan todas las frecuencias más altas. En cambio, tiene una cola elegante y natural que se vuelve cada vez más baja a medida que aumenta la frecuencia. Esto significa que actuará como un filtro de paso bajo, pero también permitirá componentes de mayor frecuencia proporcionales a la rapidez con que se descompone su cola. (Por otro lado, un LPF tendrá un producto de mayor ancho de banda de tiempo, porque su soporte en el dominio F no es tan grande como el de un gaussiano).

Esto permite obtener lo mejor de ambos mundos: eliminación de ruido y preservación de bordes.

Spacey
fuente
2
No estoy seguro de que pueda comparar los dos soportes directamente, ya que uno se mide en tiempo / longitud y el otro en Hz / radianes. Su morfología es idéntica, pero la propiedad de escala universal aún se mantiene.
Phonon
Gracias por recordarme el producto de ancho de banda de tiempo mínimo. Sin embargo, como mencionó Phonon, la reducción del soporte de dominio espacial (~ tiempo) necesariamente aumenta el ancho de banda. No hay forma de suprimir el ruido y preservar los bordes con un simple filtro gaussiano. Es por eso que Perona y Malik desarrollaron el filtrado anisotrópico.
nimrodm
@Phonon Como he visto, los soportes son simplemente cuántas entradas distintas de cero describen la función en cualquiera de los dominios; creo que son lo mismo. (Por lo tanto, relación de 1). Dicho esto, el producto de ancho de banda de tiempo se mide como un producto de la varianza de la función en tiempo y frecuencia. Como su normalización difiere de los autores, he visto que equivale a 1/2 o 1/4.
Spacey
1
@nimrodm "reducir el soporte de dominio espacial (~ tiempo) necesariamente aumenta el ancho de banda". Sí, esa es la tendencia , derivada de la relación inversa frecuencia-tiempo. (Aquí es de donde proviene la incertidumbre de frecuencia de tiempo). Sin embargo, la función gaussiana es de una clase que minimiza totalmente este producto. Dada la relación inversa entre tiempo y frecuencia, no hay forma de hacerlo a menos que tenga el mismo soporte en ambos dominios.
Spacey
@nimrodm En la difusión anisotrópica, los núcleos que he visto todavía son gaussianos, aunque con matrices de covarianza que dependen del gradiente de la imagen. (También es un método no lineal, suavizado gaussiano VS que es lineal). Pero, los restos gaussianos se usan debido a sus propiedades.
Spacey
11

Ya tiene buenas respuestas, pero solo agregaré otra propiedad útil de los filtros Gaussianos 2D, que es que son separables , es decir, el filtro 2D se puede descomponer en dos filtros 1D. Esto puede ser una consideración de rendimiento importante para tamaños de kernel más grandes, ya que un filtro separable MxN puede implementarse con M+Nmúltiples agregados mientras que un filtro MxN no separable requiere M*Nmúltiples agregados.

Paul R
fuente
2
Ese es un buen argumento. Un filtro Gaussiano 2D es radialmente simétrico y aún separable, por lo que la complejidad de implementación se reduce considerablemente.
nimrodm
1
Como referencia, la Guía del científico e ingeniero para DSP proporciona una excelente descripción de esta propiedad en el Capítulo 24 .
Caleb Reister
6

El manual de imagemagick tiene una gran explicación de por qué el filtrado con funciones sinc conduce a efectos de "timbre" mientras que los gaussianos no. ( http://www.imagemagick.org/Usage/fourier/#blurring y http://www.imagemagick.org/Usage/fourier/#circle_spectrum ). Cuando tiene bordes (discontinuidades) en su imagen (lo que hace la mayoría de las imágenes), al cortar por completo todas las frecuencias altas, se producen ondas en el dominio espacial. También suena cuando filtra ondas cuadradas con una función sinc en una dimensión.

Lógica Errante
fuente
2

Ya ha habido respuestas hermosas, pero agregaré mi grano de sal, o una perspectiva bastante diferente:

El filtrado en el nivel más abstracto puede considerarse como la aplicación de algunos conocimientos previos a algunos datos sin procesar. Significa que aplicar algún algoritmo de filtrado es aplicar esto antes de encontrar una relación óptima de señal a ruido, por ejemplo.

Para la imagen, un previo clásico es la suavidad de los valores (por ejemplo, la intensidad) con respecto a la posición (esto puede verse como la función de dispersión de puntos mencionada por @Phonon). A menudo se modela como gaussiano, ya que es la forma que obtendría al mezclar diferentes objetos con un radio de suavidad conocido (esto se llama el teorema del límite central ). Esto es principalmente útil cuando desea hacer derivadas de una imagen: en lugar de diferenciar en la señal sin procesar (que produciría una salida ruidosa), debe hacerlo en la imagen suavizada. Esto es equivalente a aplicar un operador tipo wavelet como los filtros Gabor .

Meduz
fuente