xlabel font ejemplo change matlab image-processing filtering gaussian

font - title figure matlab



Filtro gaussiano en MATLAB (3)

En MATLAB R2015a o posterior, ya no es necesario (o aconsejable desde el punto de vista del rendimiento) usar fspecial seguido de imfilter ya que hay una nueva función llamada imgaussfilt que realiza esta operación en un solo paso y de manera más eficiente.

La sintaxis básica:

B = imgaussfilt(A,sigma) filtra la imagen A con un kernel suavizado gaussiano 2-D con una desviación estándar especificada por sigma .

El tamaño del filtro para una desviación estándar gaussiana determinada ( sigam ) se elige automáticamente, pero también se puede especificar manualmente:

B = imgaussfilt(A,sigma,''FilterSize'',[3 3]);

El valor predeterminado es 2*ceil(2*sigma)+1 .

Las características adicionales de imgaussfilter son la capacidad de operar en gpuArray s, filtrado en frecuencia o dominio espacial, y opciones avanzadas de relleno de imagen. Se parece mucho a IPP ... hmmm. Además, hay una versión 3D llamada imgaussfilt3 .

¿El filtro ''gaussiano'' en MATLAB convoluciona la imagen con el núcleo gaussiano? Además, ¿cómo se eligen los parámetros hsize (tamaño del filtro) y sigma? ¿En qué te basas?


Primero crea el filtro con fspecial y luego convoluciona la imagen con el filtro usando imfilter (que funciona en imágenes multidimensionales como en el ejemplo).

Usted especifica sigma y hsize en fspecial .

Código:

%%# Read an image I = imread(''peppers.png''); %# Create the gaussian filter with hsize = [5 5] and sigma = 2 G = fspecial(''gaussian'',[5 5],2); %# Filter it Ig = imfilter(I,G,''same''); %# Display imshow(Ig)


@Jacob ya te mostró cómo usar el filtro gaussiano en Matlab, así que no voy a repetir eso.

Yo elegiría que el tamaño del filtro sea de aproximadamente 3 * sigma en cada dirección (de redonda a impar). Por lo tanto, el filtro se desintegra casi a cero en los bordes, y no obtendrá discontinuidades en la imagen filtrada.

La elección de sigma depende mucho de lo que quieras hacer. El suavizado gaussiano es un filtro de paso bajo, lo que significa que suprime los detalles de alta frecuencia (ruido, pero también los bordes), al tiempo que conserva las partes de baja frecuencia de la imagen (es decir, aquellas que no varían tanto). En otras palabras, el filtro borra todo lo que es más pequeño que el filtro.

Si está buscando suprimir el ruido en una imagen para mejorar la detección de pequeñas características, por ejemplo, sugiero que elija una sigma que haga que el gaussiano sea ligeramente más pequeño que la función.