Todas las apps de Studio
Visión & CCTV

Reconocimiento de patentes

LPR · ALPR

Leé patentes de cualquier cámara en vivo, cotejá una lista blanca/negra y actuá en tiempo real.

streamhub.studio/studio/lpr
Reconocimiento de patentes
El problema

Un portón, una barrera o una entrada de estacionamiento funciona sabiendo qué vehículo acaba de llegar. El ALPR comercial es una caja negra licenciada; LPR hace el mismo trabajo sobre modelos open source que son tuyos, deduplica las lecturas para que un auto detenido no te sature, y entrega el veredicto a lo que ya corras — un controlador de barrera, un sistema de alertas, un registro de estacionamiento.

Casos de uso

Control de acceso

Barrera / portón automático

Una patente en lista blanca dispara plate.allowed; conectá la URL de callback directo a un abridor de barrera y los vehículos conocidos entran sin llavero ni guardia.

Seguridad

Alertas de watchlist

Una patente en lista negra dispara plate.denied (la lista negra gana sobre la blanca), así un vehículo marcado levanta una alerta con captura apenas aparece.

Retail / Parking

Registro de parking y drive-through

Cada lectura se deduplica, se marca con hora, se captura y se registra en SQLite por plugin — un registro a nivel de patente de qué entró y salió de un lote o un drive-through.

Cómo funciona

Entrada

HLS en vivo de la cámara del portón

Un worker toma el stream en vivo de la app por HLS y muestrea unos pocos frames por segundo — de sobra para un vehículo que se detiene en una barrera.

Detección

fast-alpr, luego normalizar y deduplicar

Detección de patente YOLOv9-t + OCR ONNX (fast-alpr, MIT). Cada lectura se normaliza (sin mayúsculas/separadores), se deduplica dentro de una ventana y se coteja con tu lista blanca/negra.

Callback firmado

detected / allowed / denied

El veredicto fluye por los callbacks firmados con HMAC de la app (+ MQTT) y, opcionalmente, directo a una URL de callback como un abridor de barrera.

Tu sistema

Lecturas recientes + tu acción

Una tabla de lecturas recientes con capturas y badges de lista aparece en la pestaña del dashboard; tu sistema abre el portón, levanta la alerta o archiva el registro.

Eventos que emite

Declarados en el manifiesto del plugin y retransmitidos por los callbacks firmados con HMAC de la app (webhook + MQTT). Cualquier cosa que un worker intente emitir fuera de esta lista se rechaza — sin suplantar eventos del core.

plate.detected plate.allowed plate.denied

Alcance y límites

  • Solo modelos open source (fast-alpr / fast-plate-ocr, MIT) — sin motor ALPR propietario ni tarifas cloud por patente.
  • Lee patentes a la vista de la cámara; no resuelve una patente a un dueño registrado — esa búsqueda es tarea de tu sistema.
  • 2 fps alcanza para un vehículo que se detiene en una barrera; los carriles de flujo libre necesitan 4–8 fps y cerca de un núcleo por cámara.

Requisitos mínimos

  • Inferencia en CPU (onnxruntime, detector + OCR por defecto) a resolución de portón: ~60–120 ms por frame muestreado en un núcleo moderno, así un solo núcleo sostiene ~4–8 fps; los 2 fps por defecto usan cerca de un cuarto a la mitad de un núcleo.
  • RAM: ~400–600 MB. Disco: ~20 MB de modelos cacheados + capturas (~100–200 KB cada una). ARM (clase Pi 4/5) corre ~2–4× más lento — usá el detector 256 a 1–2 fps.
  • GPU opcional: solo necesaria para muchas cámaras por host o tasas de muestreo altas, nunca para un solo portón.

Los números son mediciones honestas de los autores del plugin, no marketing. La GPU es opcional en cada plugin de visión salvo donde se indique.

Corre como una app completa

Cada app de Studio es una aplicación de primera clase, no un modal de configuración — y no tiene por qué vivir dentro de StreamHub.

Vista de página completa en el dashboard

Se abre como su propia página dentro de la app tenant — zonas, paneles en vivo, historial y ajustes en una sola superficie, no apretados en un diálogo.

Su propia base de datos

Guarda su estado en una base SQLite dedicada por app — lecturas, alertas, ocupación y filas de evidencia — que es tuya y podés consultar.

Bundle exportable

Descargá la app como un bundle autocontenido — worker, Dockerfile, compose y una plantilla de env — para hostearla en tu propia infra y extenderla, hablando de vuelta por la API REST y los webhooks firmados.

¿Tenés cámaras o streams para poner a trabajar?

Contanos qué estás monitoreando y definimos las apps correctas, las conectamos a tus sistemas y las operamos con vos. El software es open source — el despliegue y la operación es lo que hacemos.