Analisis espectral de señales por Python

Función estimadora de ancho de banda y analisis de señales de ECG, audio y sismogramas.

Introducción

El proyecto busca aplicar métodos computacionales para estimar el ancho de banda de señales reales mediante análisis espectral. Se aplican técnicas como el periodograma, Welch y criterios de energía percentil para cuantificar el rango frecuencial donde se concentra la mayor potencia de la señal.

Desarrollo del proyecto

Se analizan tres tipos de señales:

  • Biomédicas: Electrocardiograma (ECG) y pletismografía (PPG)
  • Audios: Voz humana y llamados de ballena franca austral
  • Sísmicas: Registros de terremotos en Chile (M6.4) y Argentina (M5.6)

Se implementaron dos funciones principales: una para señales de baja frecuencia (pasa-bajos, barriendo desde 0 Hz) y otra para señales con componentes en bandas medias (pasa-banda dinámico, expandiendo desde el pico espectral). Los resultados incluyen anchos de banda específicos y estimaciones de magnitudes sísmicas mediante integración de la PSD.

Habilidades adquiridas

Este proyecto lo realicé para la materia Procesamiento Digital de Señales, donde indagué en mayor profundidad la matemática detrás de una DFT, la cuantización de una señal, ventaneo y filtrados FIR e IIR, por mencionar algunos ejemplos.

También profundicé mi familiarización con las bibliotecas NumPy y SciPy, la visualización con Matplotlib, y aprendí a buscar bases de datos públicas para señales biomédicas y sísmicas. Esto sin duda brindó mayor flexibilidad autodidacta para futuros trabajos en análisis de señales.

Repositorio

El acceso a este y otros trabajos relevantes se encuentra en el siguiente repositorio.

Relacionado

Últimos proyectos