Skip to content

NatoliJuan/Safe_Count

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

SafeCount – Análisis de tráfico a partir de vídeo

Logo safecount

SafeCount es un proyecto de análisis de tráfico que utiliza un modelo de detección de objetos (YOLO) para extraer información estructurada a partir de vídeos de circulación y analizarla con Python.

El flujo general es:

  • Ejecución de YOLO sobre varios vídeos de tráfico para generar detecciones en formato CSV.
  • Carga y análisis exploratorio de los datos (EDA) para estudiar volúmenes de tráfico y velocidades por vehículo.

Datos y vídeos

En este repositorio se incluyen únicamente los ficheros CSV generados por el modelo, no los vídeos originales (por tamaño y privacidad).
Los principales datasets son:

  • traffic_video_detections.csv → Vídeo de autovía corto (~30 s, df1).
  • traffic_video_detections2.csv → Vídeo de calle muy transitada (~2:30 min, df2).
  • traffic_video_detections3.csv → Vídeo de autovía largo (~35 min, df3).

Cada CSV contiene, entre otras, las columnas:

  • frame_idx, timestamp_sec
  • class (car, truck, bus, motorcycle)
  • conf (confianza de detección)
  • x1, y1, x2, y2 (caja delimitadora por objeto)

Estructura del proyecto

  • yolo_detection.ipynb
    Notebook usado para ejecutar YOLO sobre los vídeos y generar los CSV de detecciones.

  • eda_traffic.ipynb
    Notebook de análisis donde se cargan df1, df2 y df3, se limpian las columnas, se agrupan detecciones por segundo y minuto, y se calculan métricas clave.

  • data/csv/
    Carpeta con los ficheros CSV de detecciones exportados desde YOLO.

Análisis realizado

En el notebook de EDA se trabaja principalmente con df3 (autovía ~35 min), realizando:

  • Conteos de objetos por segundo, minuto y clase para estimar la intensidad de tráfico en el tiempo.
  • Aproximación al número de vehículos únicos por segundo mediante discretización de posiciones y agrupación de detecciones.
  • Estimación de velocidades por vehículo a partir de la trayectoria en píxeles, una escala píxel–metro y el tiempo entre frames.

Tras filtrar detecciones poco fiables (conf ≥ 0.5), se obtienen 626 velocidades válidas con una media cercana a 90 km/h y la mayoría de valores entre 75 y 105 km/h, coherente con un tráfico fluido de autopista.

Requisitos y ejecución

  • Python 3.x
  • Librerías principales:
    • pandas, numpy
    • matplotlib, seaborn

Para reproducir el análisis:

  1. Clonar el repositorio y mantener la estructura de carpetas, incluyendo data/csv/ con los ficheros CSV.
  2. Abrir eda_traffic.ipynb en Jupyter, VSCode o Google Colab.
  3. Ejecutar las celdas en orden; las rutas de lectura usan rutas relativas (data/csv/...).

About

Análisis de tráfico y conteo de vehículos con YOLO, Python y visión por computador.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors