Skip to main content

LPR Genérico

A integração LPR Genérico permite reconhecer placas veiculares em qualquer câmera com RTSP ou ONVIF, usando um serviço dedicado — o alpr-server — rodando localmente. É o caminho universal: funciona com Hikvision, Dahua, Intelbras, Axis, Reolink e qualquer câmera genérica que entregue stream H.264. Para câmeras com ANPR nativo (reconhecimento embarcado), fique de olho nas integrações específicas (Hikvision ANPR, Dahua ITC, Intelbras VIP LPR, Axis License Plate Verifier) que entrarão em versões futuras.

Pré-requisitos

  • Uma câmera IP com stream RTSP acessível na rede local
  • Um alpr-server rodando na mesma rede (ou acessível por IP). Veja Autohospedagem do alpr-server para instruções
  • Edge Home registrado no Portal (a integração requer execução local)
O vídeo nunca sai da LAN do cliente. Apenas os eventos JSON (placa detectada + snapshot recortado opcional) são publicados no Portal via MQTT.

Configurar

1

Suba o alpr-server

No primeiro uso o serviço baixa os modelos ONNX do GitHub (~30 MB). Depois roda offline.
2

Adicione a integração

No Portal, vá em Configurações → Integrações → Adicionar → LPR Genérico.
3

Informe o endereço do alpr-server

Preencha IP/porta onde o serviço está rodando. Se habilitou ALPR_API_TOKEN, cole o token. O probe conecta no /v1/info e mostra: versão do servidor, modelos carregados, device (CPU/CUDA).
4

Informe a câmera

URL RTSP completa (incluindo path do stream), usuário/senha se aplicável. Ajuste:
  • Confiança mínima (0.0–1.0, padrão 0.85) — leituras abaixo são descartadas
  • Debounce (ms) — tempo mínimo entre reemissões da mesma placa
  • Formato (regex) — opcional, filtra pelo padrão esperado (Mercosul: ^[A-Z]{3}[0-9][A-Z][0-9]{2}$)
  • FPS — taxa de análise (padrão 1 fps, aumente para veículos rápidos)
  • Filtro de movimento — economiza CPU rodando ALPR só quando há mudança no quadro
  • Snapshot — se guarda imagem (recorte da placa ou frame inteiro) por leitura
5

Teste

Abra o painel Placas no menu lateral — leituras aparecerão em tempo real conforme veículos passam pela câmera.

Recursos

  • Entidade license_plate_recognition por câmera cadastrada
  • Painel /lpr com feed ao vivo, histórico filtrável e placas conhecidas
  • Trigger plate_detected disponível no editor de automações
  • Ponte opcional com o Lock Manager — placas marcadas como “Permitir” abrem o lock vinculado automaticamente

URL RTSP por fabricante

Como Funciona

  1. O edge home envia um comando ao alpr-server criando um “stream” apontando para o RTSP da câmera.
  2. O alpr-server puxa frames do RTSP, aplica filtro de movimento opcional, roda o detector YOLOv9 + OCR CCT em cada frame candidato.
  3. Após debounce (mesma placa dentro da janela não é reemitida), um evento WebSocket é enviado ao edge.
  4. O edge publica o evento no MQTT org-escopado portal/{org}/events/plate_detected.
  5. O core persiste em plate_reads, atualiza o estado da entidade, dispara triggers de automação e aciona a ponte lock-manager se aplicável.

Múltiplas câmeras no mesmo servidor

Um único alpr-server serve N câmeras — basta cadastrar várias integrações apontando para o mesmo endereço. Hard cap configurável via ALPR_MAX_STREAMS (padrão 10).

Dicas e troubleshooting

  • Nenhuma leitura aparece: verifique no painel do alpr-server (http://host:8080/docs) se o stream foi criado. Confirme que o RTSP é acessível pelo container.
  • Muitos falsos positivos: aumente min_confidence para 0.90+, defina format_regex ou aumente debounce_ms.
  • CPU alto: habilite filtro de movimento, reduza FPS, considere a imagem CUDA se tiver GPU NVIDIA.
  • Snapshot não aparece: snapshot_url é relativa ao alpr-server; configure um proxy ou ignore no MVP.

Veja também