Explora la plataforma

Trabajo de Fin de Grado · Ingeniería Informática · Universitat de les Illes Balears

Ver al peatón
no basta.
Hay que anticiparlo.

Urbelyx segmenta la escena urbana, reconstruye el esqueleto de cada persona y usa esa estructura para predecir hacia dónde va — convirtiendo la detección en una evaluación de riesgo con margen de reacción.

17.05
FPS en tiempo real
113 ms
latencia de respuesta
92.5%
accuracy clasificación
escena esqueleto
pose estimada sobre la secuencia

01 — El problema

Los sistemas actuales ven el presente.
El accidente ocurre en el futuro.

70%

de los accidentes en entorno urbano implican a un peatón. Detectar que hay alguien en la imagen llega tarde si no se sabe qué va a hacer.

Dificultades de detección

  • Tiempo real sobre hardware embarcado limitado.
  • Condiciones variables: contraluz, lluvia, noche, oclusiones.
  • Peatones vulnerables mal representados en los datasets.

Límites de los modelos

  • Precisión insuficiente en instancias pequeñas y lejanas.
  • Sin contexto: no distinguen acera de calzada.
  • Clasifican qué es, no qué está a punto de hacer.

Objetivos del proyecto

  1. 01Sistema multifuncional que detecte y clasifique peatones en tiempo real valorando la escena completa.
  2. 02Combinar segmentación, detección, seguimiento y clasificación en un único flujo coherente.
  3. 03Optimizar el funcionamiento para sostener tasa de refresco útil en un vehículo real.
  4. 04Nuevo: derivar el esqueleto de cada persona y anticipar su comportamiento para evaluar el riesgo.

02 — El sistema

Seis etapas encadenadas,
ejecutadas en paralelo.

Cada frame atraviesa una cadena de percepción donde ninguna etapa espera a la anterior: un pipeline asíncrono de colas mantiene todas las GPU en trabajo simultáneo. Selecciona una etapa para ver su detalle.

Pipeline asíncrono

La ejecución secuencial desperdicia la GPU: mientras el clasificador trabaja, el segmentador está parado. Urbelyx desacopla las etapas con cinco colas intermedias y trabajadores independientes.

  • +100 % FPS frente a la ejecución secuencial.
  • Contrapartida asumida: la latencia extremo a extremo sube.
  • Frames descartables: si la cola se llena, se prioriza actualidad sobre completitud.

03 — Demostración

Del píxel al riesgo,
en el mismo frame.

Metraje real de conducción con la capa de percepción dibujada encima. El esqueleto no es decorativo: la orientación de hombros y caderas, la distancia derivada del tamaño aparente y la deriva lateral alimentan directamente la puntuación de riesgo.

frame 000 · 0 detecciones
secuencia anotada
Riesgo proyectado SEGURO
8/100

Escenario

El peatón camina tras los coches aparcados, sale del bordillo y cruza. La orientación del torso cambia antes que la posición: ahí está el margen de anticipación.

Capas de percepción

Señales interpretadas

    Telemetría

    Clasenon_vulnerable
    ID de track
    Deriva lateral
    Distancia
    Tiempo a colisión
    Intención

    Las secuencias son metraje de conducción urbana generado para esta presentación. La trayectoria de cada peatón está anotada sobre el vídeo; a partir de ella el navegador deriva distancia, velocidad lateral y tiempo a colisión, y ejecuta la misma política de riesgo del sistema. No se ejecutan los pesos entrenados en el navegador: la detección no es en vivo, la evaluación de riesgo sí.

    04 — Resultados medidos

    Lo que la versión entregada
    consigue hoy.

    64.59 %

    Eficiencia de proceso

    Porcentaje de frames efectivamente procesados: aproximadamente uno de cada dos.

    17.05 FPS

    Tasa de refresco

    Promedio de refresco de la salida sobre secuencias reales de conducción.

    113 ms

    Tiempo de respuesta

    Latencia media necesaria para procesar una muestra completa en tiempo real.

    Métricas por módulo

    Segmentación semántica · mIoU0.65
    Segmentación semántica · Overall Acc0.95
    Instancias · mAP@50 (box)0.22
    Instancias · Precision (box)0.59
    Clasificación · Accuracy top-10.925

    El mAP bajo en instancias es coherente con el objetivo: se prioriza el recall de personas cercanas sobre la precisión en objetos pequeños del fondo, y la validación por segmentación filtra después los falsos positivos.

    Matriz de confusión — clasificador de vulnerabilidad

    Diagonal fuerte en blind (0.94), non_vulnerable (0.95) y wheelchair (0.97). La confusión se concentra en elder (0.66), cuya apariencia se solapa con la de un adulto no vulnerable: el módulo de esqueleto de la v2 ataca exactamente ese punto, usando la marcha en vez del aspecto.

    05 — La evolución

    De describir la escena
    a anticiparla.

    La metodología original terminaba en la clasificación. El sistema sabía que había una persona mayor a doce metros, pero no si estaba a punto de bajar de la acera. La v2 inserta dos etapas nuevas entre la percepción y la decisión.

    Metodología anterior

    1. Segmentación semántica
    2. Instanciación
    3. Postproceso y validación
    4. Clasificación de vulnerabilidad
    5. Evaluación de riesgo por posición

    El riesgo se deducía de dónde está el peatón y de qué clase es. Una foto, no una intención.

    Metodología Urbelyx v2

    1. Segmentación semántica
    2. Instanciación
    3. Postproceso y validación
    4. Clasificación de vulnerabilidad
    5. Estimación del esqueleto — 17 keypoints por persona
    6. Predicción de comportamiento sobre la secuencia de poses
    7. Evaluación de riesgo con intención y horizonte temporal

    La postura precede al movimiento. Girar el torso hacia la calzada ocurre entre 400 y 900 ms antes de que el pie deje la acera: ahí está el margen.

    Por qué el esqueleto

    Reduce a una persona a 17 puntos con relación geométrica estable. Es invariante a la ropa, al color y en buena medida a la iluminación, y es una representación pequeña: una secuencia de poses cabe en un grafo espacio-temporal que se procesa en milisegundos.

    Señales que se extraen

    • Orientación de hombros y caderas respecto a la calzada.
    • Longitud y frecuencia de zancada — velocidad real, no la del recuadro.
    • Dirección de la cabeza como proxy de atención.
    • Rupturas de cadencia: detenerse, acelerar, girar.

    De la pose a la decisión

    Un grafo espacio-temporal sobre la ventana de las últimas poses clasifica la intención — continúa, se detiene, va a cruzar, duda — y proyecta la trayectoria. El riesgo combina esa intención con la clase de vulnerabilidad, el tiempo a colisión y el contexto semántico de la calzada.

    06 — Renovación del stack

    Los modelos del TFG
    ya no son el estado del arte.

    YOLOv8 y DeepLabv3+ resolvieron el problema en su momento, pero el campo se ha movido. La v2 mantiene la restricción que da sentido al proyecto — ejecución en tiempo real sobre hardware embarcable — y sustituye cada bloque por su equivalente actual.

    Comparativa entre el stack original del TFG y el stack propuesto para la versión 2
    EtapaStack TFG (2024–25)Stack v2Qué gana
    Segmentación semántica DeepLabv3+ · MobileNet SegFormer-B0 / PIDNet-S Backbone transformer ligero: más mIoU con menos latencia y mejor comportamiento en bordes finos.
    Instanciación YOLOv8n-seg YOLO26-n / YOLO11n-seg Arquitectura sin NMS y con cabeza de máscara mejorada: menos postproceso y mejor recall en objetos pequeños.
    Seguimiento ByteTrack (sin Re-ID) BoT-SORT con Re-ID ligero Compensación de movimiento de cámara y reidentificación tras oclusión: los IDs sobreviven al coche que se cruza.
    Clasificación YOLOv8n-cls YOLO11n-cls + señales de pose La clase de vulnerabilidad deja de depender solo del aspecto y se apoya en la marcha.
    Estimación de pose YOLO11n-pose / RTMPose-t Etapa nueva: 17 keypoints por instancia, en el mismo presupuesto de latencia.
    Predicción de comportamiento ST-GCN++ sobre ventana de poses Etapa nueva: clasifica la intención y proyecta trayectoria a corto plazo.
    Despliegue PyTorch · RTX 4060 TensorRT / ONNX · INT8 Cuantización y fusión de capas para sostener el pipeline en una unidad embarcada del vehículo.

    Objetivos de la v2 proyección, no medición

    17.05 FPS≥ 30 FPS

    Con las seis etapas activas, incluida la pose.

    113 ms≤ 80 ms

    Latencia extremo a extremo tras cuantización.

    0.66 elder≥ 0.85

    Recuperado con señales de marcha en vez de apariencia.

    1.5 s

    Horizonte de anticipación de la intención de cruce.

    07 — Más allá del vehículo

    Un sistema que entiende la calle
    sirve para más de una cosa.

    01

    Integración en vehículos inteligentes

    El pipeline produce exactamente lo que un sistema ADAS necesita consumir: identidad persistente, clase de vulnerabilidad, trayectoria proyectada y una puntuación de riesgo normalizada. Se conecta como capa de percepción sobre el software de decisión del vehículo, sin sustituirlo.

    • Salida estructurada por track, lista para fusión con radar o LiDAR.
    • Aviso escalonado: atención, alerta, frenada asistida.
    02

    Retrofit sobre cámaras externas

    No hace falta un coche autónomo. Cualquier vehículo con cámara frontal —flotas de reparto, autobuses urbanos, vehículos de servicios municipales— puede ejecutar el sistema en una unidad de cómputo embarcada y ganar percepción de peatones sin tocar la electrónica del fabricante.

    • Entrada por vídeo estándar, sin dependencia del bus del vehículo.
    • Modelos cuantizados pensados para aceleradores de bajo consumo.
    03

    Inventario digital urbano

    La segmentación semántica ya reconoce e identifica todo el mobiliario y la infraestructura de la escena, no solo a las personas. Recorriendo la ciudad con una flota que ya circula a diario, el mismo sistema levanta y mantiene actualizado un inventario georreferenciado: señalización, pasos de peatones borrados, alumbrado, bordillos, estado del pavimento.

    • Cartografía viva mantenida por vehículos que ya hacen su ruta.
    • Detección de puntos negros: dónde se cruza fuera del paso, y cuándo.
    • Evidencia objetiva para priorizar inversión en seguridad vial.

    08 — Trabajo futuro

    Lo que viene después.

    1. Migración del stack y cuantización

      Sustitución de los cuatro modelos originales y exportación a TensorRT en INT8, con validación de la pérdida de precisión frente a la ganancia de latencia.

    2. Módulo de pose integrado en el pipeline asíncrono

      Sexta cola dedicada a la estimación de esqueleto, alimentada por los recortes que ya genera el postproceso, sin volver a inferir sobre el frame completo.

    3. Dataset de intención propio

      Secuencias etiquetadas de cruce, duda y detención, generadas con muestras locales y ampliadas sintéticamente para cubrir los casos raros que ningún dataset público recoge.

    4. Validación embarcada

      Pruebas sobre vehículo en circulación real con métricas de anticipación: cuántos milisegundos de margen aporta el sistema frente a la detección sin pose.