Tengo un sensor EEG (ElectroEncephaloGram) de ondas cerebrales que envía datos continuamente a mi programa a aproximadamente 200 puntos de datos por segundo. ¿Alguien puede sugerir qué tamaño de ventana/contenedor debo usar si quiero hacer una transformada rápida de Fourier (FFT) de esta señal?
Estoy pensando en usar el máximo: 1024 puntos, pero eso significaría que necesito casi 5 segundos de datos para actualizar las lecturas. ¿Hay algún tamaño más pequeño que pueda usar para actualizaciones más rápidas que aún sean precisas?
Así es como se ve mi señal (línea naranja, arriba):
¡Gracias!
Depende de la compensación que desee entre resolución de frecuencia y tiempo. Cuanto más corta haga su ventana de tiempo, mejor podrá saber cuándo ocurren los cambios, pero lo pagará con una resolución de frecuencia reducida. Las ventanas más largas dan una resolución de frecuencia nítida, pero una resolución de tiempo pobre. Cf. "Límite de Gabor"
Tenga en cuenta que los límites de las bandas de frecuencia de EEG son un poco confusos. No es que el contenido a 3,9 Hz signifique algo completamente diferente a 4,1 Hz desde un punto de vista biológico. Las ventanas de 1 segundo brindan mucha precisión de frecuencia, y he visto cosas geniales hechas con ventanas de menos de 1/4 de segundo. Después de todo, estamos midiendo un cerebro, no un oscilador de cristal.
Tome un fft tan grande como necesite para obtener la resolución en la frecuencia que necesita. No necesita esperar 5 segundos para reevaluar un fft, simplemente deslice su ventana. Por ejemplo, tome los puntos 1-1024 y tome el fft. Luego espere 100ms, tome el fft de los puntos 21-1044, etc. Esto actualizará su fft diez veces por segundo, siempre usando los datos más recientes. Solo necesita 1024 puntos para tomar un fft de 1024 puntos. ¡No es necesario que sean 1024 puntos nuevos !
De hecho, probablemente no esté limitado a un fft. Su programa puede tomar múltiples ffts en múltiples resoluciones para capturar lo que necesite.
yippie
scott seidman
chris stratton
yippie
alex piedra