YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

🔍 Detector de Objetos YOLOv11

Detección de objetos en tiempo real usando YOLOv11 (Ultralytics) con cámara web. El modelo está entrenado para detectar productos específicos:

  • 🫒 Aceite
  • 🧴 Desodorante
  • 💎 Perfume Prada
  • 💙 Perfume Ralph Lauren
  • 🌿 Mentollo

📋 Requisitos del Sistema

Componente Mínimo Recomendado
Python 3.8+ 3.10+
RAM 4 GB 8 GB+
CPU Dual Core Quad Core / GPU NVIDIA
Cámara Webcam USB o integrada —
SO Windows 10 Windows 10/11

🚀 Instalación

Opción 1: Automática (Windows)

  1. Haz doble clic en setup.bat
  2. Espera a que termine la configuración
  3. Listo para usar

Opción 2: Manual (cualquier SO)

# 1. Crear entorno virtual
python -m venv .venv

# 2. Activar entorno virtual
# Windows:
.\.venv\Scripts\activate
# Linux/Mac:
source .venv/bin/activate

# 3. Instalar dependencias
pip install --upgrade pip
pip install -r requirements.txt

▶️ Cómo Ejecutar

Abre una terminal en la carpeta del proyecto y ejecuta:

# Paso 1: Activar el entorno virtual
.\.venv\Scripts\activate

# Paso 2: Ejecutar el detector
python detection_video.py
  • Se abrirá una ventana con la imagen de tu webcam
  • Los objetos detectados aparecerán enmarcados con su nombre
  • Los FPS se muestran arriba a la izquierda
  • Presiona ESC para cerrar

⚡ Rendimiento y Limitaciones

Benchmark en hardware de gama baja

Probado en una PC con las siguientes especificaciones:

Componente Especificación
CPU Intel Celeron N4000 @ 1.10 GHz (2 núcleos)
RAM 4 GB
GPU Intel UHD Graphics 600 (integrada, 1 GB)

Resultados obtenidos:

Métrica Valor
Inferencia promedio ~2,200 - 2,400 ms por frame
FPS reales ~0.4 FPS
Preprocesamiento ~5 - 20 ms
Postprocesamiento ~2 ms
Resolución de entrada 480 × 640

¿Por qué es lento?

El cuello de botella es la inferencia (~2.3 segundos por frame). Esto ocurre porque:

  1. Sin GPU dedicada (NVIDIA): YOLOv11 está diseñado para correr en GPUs con CUDA. En esta PC solo hay una GPU integrada Intel que no soporta CUDA, así que todo el procesamiento recae en el CPU.
  2. CPU de bajo rendimiento: El Celeron N4000 es un procesador de 2 núcleos a 1.1 GHz, diseñado para tareas básicas de oficina, no para deep learning.
  3. RAM limitada: 4 GB deja poco margen después de lo que usa el sistema operativo.

Cómo mejorar la velocidad

📌 Opción 1: Usar el modelo ONNX (sin cambiar hardware)

El proyecto incluye best.onnx, que puede ser más rápido en CPU. Cambiar en detection_video.py:

model = YOLO("best.onnx")  # en lugar de "best.pt"

Mejora estimada: 10-30% más rápido en CPU.

📌 Opción 2: Reducir la resolución de entrada

Agregar imgsz=320 para procesar imágenes más pequeñas:

results = model(frame, imgsz=320)  # en lugar del default 640

Mejora estimada: hasta 2x más rápido, con algo de pérdida en precisión.

📌 Opción 3: Procesar cada N frames

No analizar todos los frames, sino cada 3 o 5:

frame_count = 0
while cap.isOpened():
    ret, frame = cap.read()
    frame_count += 1
    if frame_count % 3 != 0:  # Solo procesar 1 de cada 3 frames
        continue
    # ... resto del código

📌 Opción 4: Usar una PC con GPU NVIDIA

Con una GPU compatible con CUDA (ej: GTX 1650 o superior), la inferencia baja de ~2,300 ms a ~10-30 ms, logrando 30-60+ FPS fácilmente.

📌 Opción 5: Google Colab (gratis)

Subir el proyecto a Google Colab y usar una GPU T4 gratuita para ejecutar la inferencia.


📁 Estructura del Proyecto

detector_objetos_v11/
├── detection_video.py   # Script principal de detección en tiempo real
├── best.pt              # Pesos del modelo YOLOv11 (PyTorch)
├── best.onnx            # Pesos del modelo YOLOv11 (ONNX, más rápido en CPU)
├── requirements.txt     # Dependencias del proyecto
├── setup.bat            # Instalador automático para Windows
├── .gitignore           # Archivos excluidos de Git
└── .venv/               # Entorno virtual (no se sube a Git)

🐛 Solución de Problemas

Problema Solución
ModuleNotFoundError Asegúrate de activar el entorno: .\.venv\Scripts\activate
La cámara no abre Cambia cv2.VideoCapture(0) por (1) o (2)
best.pt no encontrado Verifica que el archivo esté en la misma carpeta que el script
Muy lento (~0.4 FPS) Es normal en CPU sin GPU. Ver sección "Cómo mejorar la velocidad"

⌨️ Controles

Tecla Acción
ESC Cerrar la ventana y finalizar el programa

📦 Sobre el almacenamiento del modelo

Los archivos best.pt (19 MB) y best.onnx (38 MB) están excluidos de Git por el .gitignore. Para compartir el modelo:

  • Hugging Face Hub (gratuito, recomendado para modelos de ML): sube los pesos a un repositorio en huggingface.co
  • GitHub Releases: sube los archivos como assets de un release (gratis hasta 2 GB por archivo)
  • GitHub LFS: permite versionar archivos grandes en Git (gratis hasta 1 GB de almacenamiento)
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support