Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Suavizar datos con convolución

Puede utilizar la convolución para suavizar los datos 2-D que contienen componentes de alta frecuencia.

Cree datos 2-D utilizando la función y trace los datos en varios niveles de contorno.peaks

Z = peaks(100); levels = -7:1:10; contour(Z,levels)

Inyectar ruido aleatorio en los datos y trazar los contornos ruidosos.

Znoise = Z + rand(100) - 0.5; contour(Znoise,levels)

La función de MATLAB® convoluciona datos 2-D con un kernel específico cuyos elementos definen cómo eliminar o mejorar las características de los datos originales.conv2 Los kernels no tienen que tener el mismo tamaño que los datos de entrada. Los núcleos de pequeño tamaño pueden ser suficientes para suavizar los datos que contienen solo unos pocos componentes de frecuencia. Los kernels de mayor tamaño pueden proporcionar más precisión para ajustar la respuesta de frecuencia, lo que resulta en una salida más suave.

Defina un kernel de 3 por 3 y Utilíce para suavizar los datos ruidosos.Kconv2Znoise Trace los contornos suavizados. La opción en hace que la salida del mismo tamaño que la entrada.'same'conv2

K = 0.125*ones(3); Zsmooth1 = conv2(Znoise,K,'same'); contour(Zsmooth1, levels)

Suaviza los datos ruidosos con un kernel de 5 por 5 y traza los nuevos contornos.

K = 0.045*ones(5); Zsmooth2 = conv2(Znoise,K,'same'); contour(Zsmooth2,levels)

Consulte también

| | |

Temas relacionados