Projeto aberto e reproduzível de engenharia de visão computacional, concentrado no que acontece ao redor do modelo: entrega, tracking, latência, monitoramento, drift e privacidade.
O repositório oferece um contrato de inferência testado com FastAPI, adaptador opcional para Ultralytics, suporte a ByteTrack em sessões de vídeo, métricas operacionais e um executor de benchmarks para Apple Silicon. O projeto não distribui pesos, dados privados nem resultados fabricados de modelos.
A imagem abaixo é uma captura real da documentação OpenAPI gerada pelo serviço local:
O painel abaixo é um mockup ilustrativo com dados fictícios. Ele representa a direção visual da futura demonstração de detecção, tracking e observabilidade; ainda não é uma interface implementada.
Levar visão computacional do notebook para um serviço muda as perguntas: qual checkpoint e limiar são adequados? Qual é a latência p95? A distribuição de confiança mudou? O resultado pode ser reproduzido? Quais restrições de privacidade se aplicam? O VisionOps torna essas decisões visíveis.
python -m venv .venv
source .venv/bin/activate
pip install ".[dev,vision]"
export VISIONOPS_MODEL=yolo11n.pt
export VISIONOPS_DEVICE=mps
visionops serveA API expõe GET /health, POST /v1/detect e GET /v1/metrics. As imagens são enviadas em base64 e
processadas somente em memória. A documentação OpenAPI fica disponível em /docs.
Execute os testes sem baixar um modelo:
pip install ".[dev]"
ruff check .
pytest -qExecute um benchmark local somente com uma imagem de teste licenciada:
visionops benchmark --model yolo11n.pt --image path/to/open-image.jpg --runs 30 --device mps \
--output artifacts/m5-pro-yolo11n.jsonO JSON gerado identifica explicitamente o escopo como benchmark local. Antes de publicar qualquer resultado, registre a origem e a licença da imagem nas notas do experimento.
O primeiro benchmark versionado usa um quadro sintético de 640×640 gerado localmente. Assim, ele mede a latência de execução sem introduzir dados pessoais nem alegar acurácia de detecção. Em um MacBook Pro com M5 Pro e 24 GB de RAM, o YOLO11n executou 30 iterações após o aquecimento:
| Dispositivo | Média | p50 | p95 |
|---|---|---|---|
| Apple MPS | 5.48 ms | 5.06 ms | 7.69 ms |
| CPU | 24.73 ms | 24.72 ms | 25.50 ms |
Neste teste local específico, o MPS foi aproximadamente 4,9× mais rápido em p50. Esses números não
são resultados de acurácia, throughput de vídeo ou uma afirmação geral sobre o hardware. Os dados
brutos estão em benchmarks/.
- Inferência YOLO por meio de um adaptador opcional.
- ByteTrack pelo fluxo de tracking do Ultralytics.
- Serviço FastAPI com limites explícitos para o tamanho das imagens.
- Percentis de latência, distribuição de confiança, contagem de classes e indicador PSI de drift.
- Model card, data card, análise de privacidade, Docker e integração contínua.
- Exportação para ONNX/Core ML e rastreamento com MLflow são os próximos experimentos; não são apresentados como funcionalidades concluídas.
Consulte a arquitetura, o model card, o data card e a análise de privacidade.
Este projeto não foi desenvolvido para reconhecimento facial, inferência biométrica, vigilância individual ou decisões automatizadas de alto impacto. Não envie materiais de empregadores, clientes ou qualquer conteúdo confidencial.
MIT. Pesos de modelos e conjuntos de dados mantêm suas respectivas licenças.

