Investigación · IA y radar · 2025

Proyecto personal

Proyecto DSDS: detección de supervivientes con radar UWB e IA

Modelo de procesamiento de señales UWB para detectar respiración y latido cardíaco de personas atrapadas bajo escombros, combinando DSP clásico con aprendizaje profundo.

Rescatista con casco azul y mascarilla revisa un dispositivo de detección entre los escombros de un edificio derrumbado.

Como parte de mi proyecto Disaster Survivor Detection Systems (DSDS), estoy desarrollando un modelo de procesamiento de señales UWB para detectar la respiración y el latido cardíaco de personas atrapadas bajo escombros tras un desastre natural, utilizando datos de código abierto y sintéticos.

El reto: extraer signos de vida imperceptibles

La misión es identificar la presencia de un latido humano dentro de señales complejas de radar de banda ultraancha (UWB). Estas señales capturan movimientos corporales mínimos, reflejo tanto de la respiración como del latido cardíaco. Distinguir el pulso cardíaco del ruido de fondo y de otros movimientos es un desafío que exige procesamiento avanzado de señales y técnicas de machine learning.

Paso 1: de los datos crudos del radar a la fase del movimiento

El primer paso clave consiste en transformar los datos crudos del radar (componentes I y Q) en una representación que refleje directamente el movimiento.

Construcción de la señal compleja: combinamos los dos flujos de datos crudos del radar (I y Q) para formar una señal compleja. Es similar a fusionar coordenadas X e Y para obtener una 'posición' o estado a lo largo del tiempo.

Extracción de la señal de fase: a partir de esta señal compleja, derivamos una señal de fase que actúa como representación directa de los desplazamientos mínimos que el radar detecta sobre el objetivo. Esta señal es la base sobre la que se construyen todos los análisis posteriores.

Paso 2: aislar el latido mediante filtrado inteligente

Una vez obtenida la señal general de fase, esta contiene componentes de la respiración (movimientos más lentos y amplios), del latido cardíaco (más rápidos y sutiles) y diversas formas de ruido. Para enfocarnos específicamente en el latido aplicamos un filtro pasa-banda: funciona como un tamiz que solo deja pasar las frecuencias del latido humano (entre 0.8 Hz y 2.5 Hz, equivalentes a 48-150 pulsaciones por minuto), bloqueando frecuencias respiratorias más bajas y gran parte del ruido. El resultado es una señal cardíaca mucho más limpia.

Paso 3: medir el latido — la búsqueda de frecuencias

Con la señal del latido ya aislada, el siguiente objetivo era estimar su frecuencia. Exploramos dos enfoques de procesamiento de señales:

1. Análisis espectral (Short-Time Fourier Transform - STFT): segmentamos la señal en pequeñas ventanas temporales y calculamos su espectro de frecuencias, análogo a identificar las notas musicales presentes en cada fragmento corto de una canción. Luego intentamos localizar el pico más alto dentro del rango esperado del latido como su frecuencia dominante.

2. Análisis de autocorrelación: este método busca patrones repetitivos dentro de la señal. La autocorrelación nos indica con qué frecuencia la onda se parece a sí misma. Ese tiempo de repetición representa el período del latido, y su inverso nos da la frecuencia.

Paso 4: preparar el terreno para la IA — los MFCC

Aunque los métodos clásicos de DSP ofrecen estimaciones valiosas, la complejidad del entorno del radar y la sutileza del latido sugieren un enfoque más inteligente. Aquí entra el machine learning.

Para que una IA comprenda nuestras señales, debemos transformarlas en un formato que pueda procesar. Introducimos los Mel-Frequency Cepstral Coefficients (MFCC): características ampliamente utilizadas en procesamiento de voz y música. Son una especie de huella acústica compacta del sonido, que captura cómo el oído humano percibe distintas frecuencias. Para el latido, los MFCC proporcionan una representación numérica única de sus características espectrales en cada ventana temporal.

El resultado: extrajimos exitosamente una matriz de datos (por ejemplo, 601 ventanas temporales por 13 características MFCC). Cada fila es un vector que describe el latido (o su ausencia) en un instante dado.

El horizonte: clasificación del latido con deep learning

Con los MFCC ya extraídos, el escenario está listo para entrenar modelos de machine learning. El objetivo principal es la clasificación binaria: determinar la presencia o ausencia de un latido dentro de una ventana temporal dada. Esta es una aplicación directa para la detección de supervivientes.

Para abordarlo, estamos diseñando un modelo basado en Redes Neuronales Recurrentes (RNN), específicamente redes Long Short-Term Memory (LSTM). Las LSTM son especialmente adecuadas para datos secuenciales como nuestros MFCC, ya que pueden recordar dependencias a largo plazo — algo crucial para identificar la periodicidad de un latido.

Aunque entrenar con el dataset completo (más de 1100 archivos que suman 5.3 GB) es una tarea computacionalmente intensiva, ya hemos establecido la metodología: extracción sistemática de MFCC y etiquetas desde cada archivo; preparación y escalado de los datos para alimentar la red neuronal; construcción y entrenamiento de un modelo LSTM para clasificar la presencia del latido.

Conclusión y próximos pasos

Hemos avanzado significativamente: desde señales crudas de radar hasta la extracción de características avanzadas listas para machine learning. La transición desde DSP clásico hacia MFCC y LSTM representa un salto cualitativo.

El próximo paso crítico es la implementación final y el entrenamiento a gran escala del modelo de deep learning. Con un clasificador robusto capaz de identificar la presencia de un latido, buscamos ofrecer una herramienta vital para equipos de rescate, permitiéndoles localizar vidas en situaciones críticas donde cada segundo cuenta.

Referencias

MobiVital Dataset: los datos utilizados se basan en el MobiVital-dataset, un dataset integral para detección móvil de signos vitales — https://zenodo.org/records/15022885 y https://github.com/nesl/MobiVital-dataset.

El trabajo se inspira en investigaciones de computación ubicua y salud móvil de académicos como Mani Srivastava, Distinguished Professor & Vice Chair en UCLA y Amazon Scholar (https://www.linkedin.com/in/msrivastava/).

Espero que Vikash Rungta (https://www.linkedin.com/in/vrungta/) y Navin Rungta (https://www.linkedin.com/in/nkr102/), de DSP - Digital Signal Processing, puedan leerlo. Es el primer paso de un proyecto que queremos fortalecer con más datos e integrar en hardware de drones con IA.

Radar UWBDSPDeep LearningLSTM