Sistema de conducción autónoma basado en visión por computadora. Utiliza una cámara para detectar objetos, rastrear movimiento y analizar el entorno en tiempo real.
Este proyecto implementa un sistema de percepción para conducción autónoma que combina:
- Detección de objetos con SSD MobileNet V2 COCO (TensorFlow)
- Flujo óptico (Farneback) para rastrear movimiento
- Detección de bordes (Sobel) para análisis de estructura
- Streaming web en tiempo real con Flask
- Python >= 3.13
- Cámara USB o integrada (
cv.VideoCapture(0)) - Modelo pre-entrenado COCO (ver instalación)
uv syncbash download_model.shEsto descarga el modelo ssd_mobilenet_v2_coco_2018_03_29 de TensorFlow.
python main.pyMuestra la cámara en vivo con cajas de detección sobre los objetos reconocidos. Presiona q para salir.
python cam.pyAbre múltiples ventanas: flujo óptico, magnitudes de movimiento, bordes detectados y frame original. Permite seleccionar un punto con clic del mouse para rastrearlo.
python server.pyInicia un servidor Flask en http://localhost:5000 que transmite el video procesado como MJPEG stream.
| Archivo | Propósito |
|---|---|
main.py |
Bucle principal de detección de objetos |
cam.py |
Análisis de flujo óptico + detección de bordes |
server.py |
Servidor web con streaming de video |
app.py |
Funciones auxiliares (edges, optical flow, coordenadas) |
coco_labels.txt |
Etiquetas COCO (91 clases) |
download_model.sh |
Script para descargar el modelo TensorFlow |
- Modelo: SSD MobileNet V2 COCO (
frozen_inference_graph.pb) - Cámara: Índice fijo
0(cv.VideoCapture(0)) - Flujo óptico:
cv.calcOpticalFlowFarneback() - Streaming:
multipart/x-mixed-replace(MJPEG) - Resolución: Frames escalados a 50% para rendimiento