¿Cómo aplico una ventana de función a una señal?


9

¿Cómo puedo aplicar una función de ventana como Hamming o Lanczos a una señal, usando sus coeficientes?

Quiero decir, ¿qué método puedo usar para hacer esto? FFT? ¿Circunvolución? ¿Qué método tiene el mejor rendimiento?


44
Normalmente, se hace una multiplicación vectorial de una función de ventana, escalada a la misma longitud de vector que los datos, y el vector de datos, antes de una FFT.
hotpaw2

Describa su aplicación con más detalle.
nibot

Respuestas:


3

Escribí esta larga respuesta para alguien ayer en stackoverflow.com. .

/programming/9694297/matlab-fft-xaxis-limits-messing-up-and-fftshift/9699983#9699983

Es un ejemplo basado en matlab que muestra cómo usar la FFT para el análisis, pero podría darle algunas ideas. A la mitad del segundo bloque de código, aplico una función de ventana a una señal almacenada en búfer. Esto es efectivamente una multiplicación vectorial de la función de ventana con cada bloque de datos de serie temporal almacenados en el búfer. Solo uso un engañoso truco de matriz diagonal para hacerlo de manera eficiente.


15

¿Cómo puedo aplicar una función de ventana como Hamming o Lanczos a una señal, usando sus coeficientes?

Simplemente multiplique, punto por punto.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.