$47 en herramientas. $11,000 en facturas. El mismo mes.
Una cámara cuenta autos, personas, cajas, cualquier cosa que le apuntes. El mes pasado funcionó en 6 ubicaciones y la toqué dos veces.

un fotograma. 6 objetos encuadrados y etiquetados en 40ms.
La mayoría piensa que esto requiere un doctorado y una granja de GPUs. Solo necesitas una cámara web y un fin de semana.
Quienes lo descubrieron están facturando tranquilamente a negocios locales $1,800/mes cada uno por contar cosas que antes se contaban a mano.
Aquí está todo el montaje.
Qué es realmente
Una cámara apunta a algo. El modelo encuadra cada objeto, lo etiqueta, lo cuenta.
El negocio paga por un solo número: cuántos. Cuántos autos entraron, cuántas personas pasaron, cuántas cajas se movieron.
Ese número antes necesitaba a una persona con un portapapeles. Ahora necesita un archivo en un servidor de $6.
Ese es el sistema.
El pipeline, de principio a fin

La cámara transmite RTSP: en vivo YOLO11 detecta: 40ms por fotograma ByteTrack asigna IDs: tiempo real El contador registra en CSV: instantáneo Streamlit muestra el dashboard: 24/7
Tiempo total de montaje: un fin de semana. Costo total de operación: $47/mes. Líneas que realmente editas: una.
Paso 1: Instala el stack
1pip install ultralytics supervision opencv-python
Una línea en la terminal. YOLO11 detecta, supervision cuenta, opencv lee el video.
¿No eres programador? Este es el único comando de configuración en todo el montaje. Pégalo una vez, instala todo. Desde aquí, clonas un archivo y cambias una línea: el enlace de tu cámara.
Paso 2: Detecta cualquier cosa en 4 líneas

1from ultralytics import YOLO23model = YOLO("yolo11n.pt")4results = model("street.jpg")5results[0].show()
YOLO11 viene con 80 objetos predefinidos: persona, auto, bicicleta, camión, perro, botella. Apúntalo a cualquier imagen y los encuadra. Sin entrenamiento aún.
Cambia una línea: reemplaza "street.jpg" por tu propia foto. Esa es toda la edición.
Paso 3: Ejecútalo en vivo en una cámara
1from ultralytics import YOLO23model = YOLO("yolo11n.pt")4model.predict(source=0, show=True) # 0 = cámara web, o pega una URL RTSP
Cambia el 0 por un enlace RTSP y lee cualquier cámara de seguridad del edificio. Este es el momento en que el cliente se interesa.
Cambia una línea: pega el enlace de la cámara del cliente donde está el 0. Todo lo demás se queda igual.
Paso 4: Rastrea y cuenta, no solo detectes

La detección sola vuelve a contar el mismo auto en cada fotograma. ByteTrack le da a cada objeto una ID única y la mantiene entre fotogramas, así cuentas cada cosa una sola vez al cruzar una línea.
1import cv22from ultralytics import YOLO3import supervision as sv45model = YOLO("yolo11n.pt")6tracker = sv.ByteTrack()7line = sv.LineZone(start=sv.Point(0, 500), end=sv.Point(1920, 500))8annot = sv.LineZoneAnnotator()910cap = cv2.VideoCapture("traffic.mp4")11while True:12 ok, frame = cap.read()13 if not ok:14 break15 result = model(frame, conf=0.5)[0]16 detections = sv.Detections.from_ultralytics(result)17 detections = tracker.update_with_detections(detections)18 line.trigger(detections)19 frame = annot.annotate(frame, line_counter=line)20 cv2.imshow("count", frame)21 if cv2.waitKey(1) == 27:22 break
line[dot]in_count y line[dot]out_count contienen los totales en vivo. Ese es el producto. Copias este bloque completo, no lo escribes.
Mi primera demo falló aquí. La cámara contaba sombras como personas, así que el cliente del estacionamiento vio 400 autos en un lote vacío. La solución fue conf=0.5, la línea que ya está en el código de arriba: ignora cualquier cosa de la que el modelo no esté 50% seguro. Súbela, los fantasmas desaparecen. El cliente firmó al día siguiente.
Paso 5: Enséñale a contar TU objeto
Las 80 clases predeterminadas cubren autos y personas. Cuando un cliente quiere palets, botellas de vino o ganado, Roboflow hace la parte difícil en el navegador. Arrastras 200 fotos, haces clic en los cuadros alrededor del objeto, presionas entrenar. Sin código.

etiquetando una clase personalizada en Roboflow. haz clic, nombra, listo
1from ultralytics import YOLO23model = YOLO("yolo11n.pt")4model.train(data="dataset.yaml", epochs=50, imgsz=640)
50 épocas en una GPU gratuita de Colab toma 20 minutos. De cualquier forma, el mismo pipeline ahora cuenta cualquier cosa que le muestres. Esta es la línea del titular.
Paso 6: Registra cada número
1import csv, datetime23def log_count(label, count):4 with open("counts.csv", "a", newline="") as f:5 csv.writer(f).writerow([datetime.datetime.now(), label, count])
Una fila CSV por evento. Este archivo convierte un script en un informe que el negocio puede leer. Ya está integrado en el archivo que te envío.
Paso 7: Ponlo detrás de un dashboard
1import streamlit as st2import pandas as pd34df = pd.read_csv("counts.csv", names=["time", "object", "count"])5st.metric("Total hoy", int(df["count"].sum()))6st.line_chart(df, x="time", y="count")
Ejecuta streamlit run app[dot]py, apunta un dominio al servidor, envía al cliente un enlace. Inician sesión y ven sus propios números en movimiento. Ese enlace es por lo que cobras.
El costo
La forma antigua vs este montaje:
- Modelo - Equipo de CV, 6 meses → YOLO11, gratis, 5 minutos
- Etiquetado - Empresa de anotación → Roboflow, apuntar y hacer clic
- Hardware - GPU local, $4,000 → Servidor en la nube, $46/mes
- Dashboard - Desarrollador contratado, $8,000 → Streamlit, gratis
- Dominio - Retainer de agencia → $12/año, aproximadamente $1/mes
Servidor + dominio suman $47/mes. Un solo cliente lo cubre 38 veces.
Cómo consigues al primer cliente
Olvida la presentación. Entra a un negocio que ya tenga cámaras y cuente algo a mano. Un estacionamiento, un gimnasio, un café, un almacén pequeño.
Pide su enlace RTSP o 2 minutos de su transmisión de cámara. Ejecuta el archivo en tu laptop ahí mismo. Muéstrales su propia entrada con números en vivo.
Ver su propia cámara contar por ellos cierra el trato más rápido que cualquier diapositiva. Mis primeros 3 clientes firmaron en la misma visita.
Cómo se convierte en $11,000/mes

Vendes el número, no el código.
Mes 1
- Construido en mi laptop. Primer cliente: un estacionamiento que quería conteos de autos por hora. $500/mes.
Mes 3
- 3 clientes: estacionamiento, un contador de puertas para una tienda, un gimnasio rastreando horas pico. $4,500/mes.
Mes 6
- 6 clientes a $1,800 en promedio. Un almacén contando palets, un café contando tráfico peatonal, un servicio de bicicletas compartidas rastreando estaciones. $11,000/mes.
Mes 12
- Deja de vender instalaciones, vende accesos. Un dashboard por cliente, con precio mensual. Superando los $20,000/mes con un costo aún menor a $60.
El trabajo se hace una vez. Las facturas se repiten.
Empieza aquí
El stack es gratis. La cámara ya está en la pared. Editas una línea y ejecutas un archivo.
Comenta "DETECT" y te envío el archivo completo: el enlace de la cámara va arriba, todo lo demás se ejecuta solo. Incluye el notebook de entrenamiento y la plantilla dataset[dot]yaml.
Los negocios de tu calle contaron a mano hoy. Lo harán de nuevo mañana a menos que alguien llegue con el enlace de la cámara.





