
En el procesamiento de imágenes , un desenfoque gaussiano (también conocido como suavizado gaussiano ) es el resultado de desenfocar una imagen mediante una función gaussiana (que recibe su nombre del matemático y científico Carl Friedrich Gauss ).
Es un efecto muy utilizado en software gráfico, generalmente para reducir el ruido y la definición de la imagen. El efecto visual de esta técnica de desenfoque es un suave efecto borroso, similar al de ver la imagen a través de una pantalla translúcida, muy diferente del efecto bokeh producido por una lente desenfocada o la sombra de un objeto bajo iluminación normal.
El suavizado gaussiano también se utiliza como etapa de preprocesamiento en algoritmos de visión artificial para mejorar las estructuras de las imágenes a diferentes escalas (véase la representación del espacio de escalas y la implementación del espacio de escalas ).
Matemáticas
Matemáticamente, aplicar un desenfoque gaussiano a una imagen es equivalente a convolucionarla con una función gaussiana . Esto también se conoce como transformada de Weierstrass bidimensional . En cambio, la convolución con un círculo (es decir, un desenfoque circular ) reproduce con mayor precisión el efecto bokeh .
Dado que la transformada de Fourier de una gaussiana es otra gaussiana, aplicar un desenfoque gaussiano tiene el efecto de reducir los componentes de alta frecuencia de la imagen; por lo tanto, un desenfoque gaussiano es un filtro de paso bajo .

El desenfoque gaussiano es un tipo de filtro de desenfoque de imagen que utiliza una función gaussiana (que también expresa la distribución normal en estadística) para calcular la transformación que se aplicará a cada píxel de la imagen. La fórmula de una función gaussiana en una dimensión es:
En dos dimensiones, es el producto de dos funciones gaussianas de este tipo, una en cada dimensión: [ 1 ] [ 2 ] [ 3 ] donde x es la distancia desde el origen en el eje horizontal, y es la distancia desde el origen en el eje vertical, y σ es la desviación estándar de la distribución gaussiana. El origen en estos ejes se encuentra en el centro (0, 0). Al aplicar esta fórmula en dos dimensiones, se obtiene una superficie cuyos contornos son círculos concéntricos con una distribución gaussiana que parte del punto central.
Los valores de esta distribución se utilizan para construir una matriz de convolución que se aplica a la imagen original. Este proceso de convolución se ilustra visualmente en la figura de la derecha. El nuevo valor de cada píxel se establece como un promedio ponderado de su vecindario. El valor del píxel original recibe el mayor peso (al tener el valor gaussiano más alto) y los píxeles vecinos reciben pesos menores a medida que aumenta su distancia al píxel original. Esto da como resultado un desenfoque que preserva mejor los límites y los bordes que otros filtros de desenfoque más uniformes; véase también la implementación en el espacio de escala .
En teoría, la función gaussiana en cada punto de la imagen será distinta de cero, lo que significa que la imagen completa debería incluirse en los cálculos para cada píxel. En la práctica, al calcular una aproximación discreta de la función gaussiana, los píxeles a una distancia de más de 3σ tienen una influencia lo suficientemente pequeña como para considerarse prácticamente nula. Por lo tanto, las contribuciones de los píxeles fuera de ese rango pueden ignorarse. Normalmente, un programa de procesamiento de imágenes solo necesita calcular una matriz con dimensiones×(dóndees la función techo ) para asegurar un resultado suficientemente cercano al obtenido por toda la distribución gaussiana.
Además de ser circularmente simétrico, el desenfoque gaussiano se puede aplicar a una imagen bidimensional como dos cálculos unidimensionales independientes, por lo que se denomina filtro separable . Es decir, el efecto de aplicar la matriz bidimensional también se puede lograr aplicando una serie de matrices gaussianas unidimensionales en la dirección horizontal y luego repitiendo el proceso en la dirección vertical. En términos computacionales, esta es una propiedad útil, ya que el cálculo se puede realizar entiempo (donde h es altura y w es anchura; véase la notación Big O ), en contraposición apara un núcleo no separable.
Aplicar desenfoques gaussianos sucesivos a una imagen tiene el mismo efecto que aplicar un único desenfoque gaussiano más grande, cuyo radio es la raíz cuadrada de la suma de los cuadrados de los radios de desenfoque que se aplicaron realmente. Por ejemplo, aplicar desenfoques gaussianos sucesivos con radios de 6 y 8 da los mismos resultados que aplicar un único desenfoque gaussiano de radio 10, ya queDebido a esta relación, no se puede ahorrar tiempo de procesamiento simulando un desenfoque gaussiano con desenfoques sucesivos más pequeños; el tiempo requerido será al menos tan grande como realizar un único desenfoque grande.

El desenfoque gaussiano se utiliza comúnmente para reducir el tamaño de una imagen. Al reducir la resolución de una imagen, es habitual aplicar un filtro de paso bajo antes del remuestreo. Esto garantiza que no aparezca información espuria de alta frecuencia en la imagen reducida ( aliasing ). Los desenfoques gaussianos poseen propiedades ventajosas, como la ausencia de bordes definidos, lo que evita la aparición de artefactos de anillo en la imagen filtrada.
Filtro de paso bajo
El desenfoque gaussiano es un filtro de paso bajo que atenúa las señales de alta frecuencia. [ 3 ]
Su diagrama de Bode de amplitud (la escala logarítmica en el dominio de la frecuencia ) es una parábola .
Reducción de la varianza
Para un filtro gaussiano con desviación estándaraplicado a una imagen de píxeles en escala de grises con desviación estándar, la desviación estándar reducidade la imagen filtrada se puede aproximar como
Matriz gaussiana de muestra
Esta matriz de muestra se produce muestreando el núcleo del filtro gaussiano (con σ = 0,84089642) en los puntos medios de cada píxel y luego normalizándolo. El elemento central (en [0, 0]) tiene el valor más grande, disminuyendo simétricamente a medida que aumenta la distancia desde el centro. Dado que el origen del núcleo del filtro está en el centro, la matriz comienza eny termina endonde R es igual al radio del núcleo.
El elemento 0,22508352 (el central) es 1177 veces mayor que 0,00019117, que está justo fuera de 3σ.
Implementación
Un efecto de desenfoque gaussiano se genera típicamente mediante la convolución de una imagen con un núcleo FIR de valores gaussianos. [ 4 ]
En la práctica, lo mejor es aprovechar la propiedad separable del desenfoque gaussiano dividiendo el proceso en dos pasadas. En la primera pasada, se utiliza un núcleo unidimensional para desenfocar la imagen solo en la dirección horizontal o vertical. En la segunda pasada, se utiliza el mismo núcleo unidimensional para desenfocar en la dirección restante. El efecto resultante es el mismo que el de la convolución con un núcleo bidimensional en una sola pasada, pero requiere menos de ellas.
La discretización se suele lograr muestreando el núcleo del filtro gaussiano en puntos discretos, normalmente en posiciones que corresponden a los puntos medios de cada píxel. Esto reduce el coste computacional, pero para núcleos de filtro muy pequeños, el muestreo puntual de la función gaussiana con muy pocas muestras genera un error considerable. En estos casos, la precisión se mantiene (con un coste computacional mínimo) mediante la integración de la función gaussiana sobre el área de cada píxel. [ 5 ]
Al convertir los valores continuos de la función gaussiana en los valores discretos necesarios para un núcleo, la suma de estos valores será distinta de 1. Esto provocará un oscurecimiento o un aumento del brillo de la imagen. Para solucionar este problema, los valores se pueden normalizar dividiendo cada término del núcleo por la suma de todos los términos del mismo.
Un enfoque mucho mejor y teóricamente más sólido consiste en realizar el suavizado con el análogo discreto del núcleo gaussiano , [ 6 ] que posee propiedades similares sobre un dominio discreto a las que hacen especial al núcleo gaussiano continuo sobre un dominio continuo; por ejemplo, el núcleo correspondiente a la solución de una ecuación de difusión que describe un proceso de suavizado espacial, obedeciendo una propiedad de semigrupo sobre sumas de la varianza del núcleo, o describiendo el efecto del movimiento browniano sobre un dominio espacial, y con la suma de sus valores exactamente igual a 1. Para una descripción más detallada del análogo discreto del núcleo gaussiano, véase el artículo sobre la implementación en el espacio de escalas . [ 6 ]
La eficiencia del FIR disminuye para valores altos de sigma. Existen alternativas al filtro FIR. Estas incluyen el desenfoque de múltiples cajas muy rápido, el detector de bordes IIR Deriche rápido y preciso , un "desenfoque de pila" basado en el desenfoque de caja, y más. [ 7 ]
suavizado temporal causal
Para procesar señales temporales o vídeo pregrabados, el núcleo gaussiano también puede utilizarse para suavizar el dominio temporal, dado que los datos están pregrabados y disponibles en todas las direcciones. Sin embargo, al procesar señales temporales o vídeo en tiempo real, el núcleo gaussiano no puede utilizarse para el suavizado temporal, puesto que accedería a datos del futuro, que obviamente no están disponibles. Para el suavizado temporal en tiempo real, se puede utilizar el núcleo temporal denominado núcleo límite causal temporal [ 8 ] , que posee propiedades similares en una situación causal temporal (no creación de nuevas estructuras hacia el aumento de la escala y covarianza de la escala temporal) a las que obedece el núcleo gaussiano en el caso no causal. El núcleo límite causal temporal corresponde a la convolución con un número infinito de núcleos exponenciales truncados acoplados en cascada, con constantes de tiempo elegidas específicamente. Para datos discretos, este núcleo a menudo se puede aproximar numéricamente bien mediante un pequeño conjunto de filtros recursivos de primer orden acoplados en cascada, consulte [ 8 ] para obtener más detalles.
Usos comunes

Detección de bordes
El suavizado gaussiano se usa comúnmente con la detección de bordes . La mayoría de los algoritmos de detección de bordes son sensibles al ruido; el filtro laplaciano 2D, construido a partir de una discretización del operador de Laplace , es altamente sensible a entornos ruidosos.
El uso de un filtro de desenfoque gaussiano antes de la detección de bordes tiene como objetivo reducir el nivel de ruido en la imagen, lo que mejora el resultado del algoritmo de detección de bordes posterior. Este enfoque se conoce comúnmente como filtrado laplaciano de Gauss o filtrado LoG. [ 9 ]
Fotografía
Las cámaras digitales de gama baja , incluidas muchas cámaras de teléfonos móviles , suelen utilizar el desenfoque gaussiano para disimular el ruido de la imagen causado por las sensibilidades ISO más altas .
El desenfoque gaussiano se aplica automáticamente como parte del posprocesamiento de la imagen por el software de la cámara, lo que conlleva una pérdida irreversible de detalle. [ 10 ]
Véase también
Notas y referencias
- ↑ Shapiro, Linda G.; Stockman, George C. (2001). Visión por computadora . Prentice Hall. págs. 137, 150. ISBN 978-0-13-030796-5.
- ↑ Nixon, Mark; Aguado, Alberto S. (25 de septiembre de 2012). Extracción de características y procesamiento de imágenes para visión por computadora . Academic Press. pág. 88. ISBN 978-0-12-396549-3.
- 1 2 Haddad, RA; Akansu, AN (marzo de 1991). "Una clase de filtros binomiales gaussianos rápidos para el procesamiento de voz e imagen". IEEE Transactions on Signal Processing . 39 (3): 723– 727. Bibcode : 1991ITSP...39..723H . doi : 10.1109/78.80892 . ISSN 1941-0476 .
- ↑ Lindeberg, Tony (1 de octubre de 2024). "Aproximaciones discretas del suavizado gaussiano y las derivadas gaussianas" . Journal of Mathematical Imaging and Vision . 66 (5): 759–800 . arXiv : 2311.11317 . Bibcode : 2024JMIV...66..759L . doi : 10.1007/s10851-024-01196-9 . ISSN 1573-7683 .
- ↑ Reinhard, Erik; Ward, Greg; Pattanaik, Sumanta; Debevec, Paul (21 de noviembre de 2005). High Dynamic Range Imaging: Acquisition, Display, and Image-Based Lighting . Elsevier. pp. 233–234 . ISBN 978-0-08-047831-9.
- 1 2 Lindeberg, Tony (1990). "Espacio de escalas para señales discretas" . IEEE Transactions on Pattern Analysis and Machine Intelligence . 12 (3): 234– 254. Bibcode : 1990ITPAM..12..234L . doi : 10.1109/34.49051 .
- ↑ Getreuer, Pascal (17 de diciembre de 2013). "Un estudio de algoritmos de convolución gaussiana" . Image Processing on Line . 3 : 286–310 . doi : 10.5201/ipol.2013.87 .( Documento del código archivado el 31/10/2020 en Wayback Machine )
- 1 2 Lindeberg, T. (23 de enero de 2023). "Una representación de espacio de escala covariante de escala, causal y recursiva en el tiempo, de señales temporales y tiempo pasado" . Cibernética Biológica . 117 ( 1–2 ): 21–59 . doi : 10.1007/s00422-022-00953-6 . PMC 10160219. PMID 36689001 .
- ↑ Fisher, R.; Wolfart, E.; Walker, A.; Perkins, S. (2003). "Filtros espaciales: laplaciano de Gauss" . homepages.inf.ed.ac.uk . Archivado del original el 22 de julio de 2021. Consultado el 13 de septiembre de 2010 .
- ^ Ritter, Frank (24 de octubre de 2013). "Cámaras de teléfonos inteligentes: Warum gute Fotos zu schießen nicht mehr ausreicht [ Commentar ] " . GIGA (en alemán). Televisión GIGA . Archivado desde el original el 18 de julio de 2021 . Consultado el 20 de septiembre de 2020 .
Bei Fotos, die in der Nacht entstanden sind, dominiert Pixelmatsch.
Enlaces externos
- Implementación en GLSL de un filtro de desenfoque gaussiano separable .
- Ejemplo de desenfoque gaussiano (filtrado de paso bajo) aplicado a una xilografía y a un grabado para eliminar detalles y poder comparar las imágenes.
- Función de filtro gaussiano de Mathematica
- Función GaussianBlur de OpenCV (C++)
- Procesamiento de imágenes
- función gaussiana
- Técnicas de reducción de ruido de imagen