Inferência ao Vivo com Aplicação Streamlit usando Ultralytics YOLO11
Introdução
O Streamlit simplifica a criação e a implementação de aplicações web interativas. A combinação com o Ultralytics YOLO11 permite a detecção de objetos e análise em tempo real diretamente no seu navegador. A alta precisão e velocidade do YOLO11 garantem um desempenho perfeito para transmissões de vídeo ao vivo, tornando-o ideal para aplicações em segurança, varejo e muito mais.
Assista: Como Usar o Streamlit com Ultralytics para Tempo Real Visão Computacional no seu navegador
Aquicultura | Criação de animais |
---|---|
![]() |
![]() |
Detecção de Peixes usando Ultralytics YOLO11 | Detecção de Animais usando Ultralytics YOLO11 |
Vantagens da Inferência ao Vivo
- Detecção de Objetos Contínua em Tempo Real: O Streamlit combinado com o YOLO11 permite a detecção de objetos em tempo real diretamente do feed da sua webcam. Isso permite análises e insights imediatos, tornando-o ideal para aplicações que exigem feedback instantâneo.
- Implantação Amigável: A interface interativa do Streamlit facilita a implantação e o uso do aplicativo sem conhecimento técnico extensivo. Os usuários podem iniciar a inferência ao vivo com um simples clique, aumentando a acessibilidade e a usabilidade.
- Efficient Resource Utilization: Os algoritmos otimizados do YOLO11 garantem processamento de alta velocidade com recursos computacionais mínimos. Essa eficiência permite uma inferência de webcam suave e confiável, mesmo em hardware padrão, tornando a visão computacional avançada acessível a um público mais amplo.
Código da Aplicação Streamlit
Instalação da Ultralytics
Antes de começar a construir o aplicativo, certifique-se de ter o pacote Ultralytics Python instalado. Você pode instalá-lo usando o comando pip install ultralytics.
Inferência usando Streamlit com Ultralytics YOLO
yolo solutions inference
yolo solutions inference model="path/to/model.pt"
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
Isso iniciará o aplicativo Streamlit no seu navegador da web padrão. Você verá o título principal, o subtítulo e a barra lateral com opções de configuração. Selecione o modelo YOLO11 desejado, defina os limiares de confiança e NMS e clique no botão "Start" para iniciar a detecção de objetos em tempo real.
Você pode, opcionalmente, fornecer um modelo específico em Python:
Aplicação Streamlit com um modelo personalizado
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
Como Funciona
Internamente, o aplicativo Streamlit usa o módulo de soluções Ultralytics para criar uma interface interativa. Quando você inicia a inferência, o aplicativo:
- Captura vídeo da sua webcam ou arquivo de vídeo carregado
- Processa cada frame através do modelo YOLO11
- Aplica a detecção de objetos com os seus limiares de confiança e IoU especificados
- Exibe os frames originais e anotados em tempo real
- Ativa opcionalmente o rastreamento de objetos, se selecionado
O aplicativo fornece uma interface limpa e amigável com controles para ajustar os parâmetros do modelo e iniciar/parar a inferência a qualquer momento.
Conclusão
Ao seguir este guia, você criou com sucesso um aplicativo de detecção de objetos em tempo real usando Streamlit e Ultralytics YOLO11. Este aplicativo permite que você experimente o poder do YOLO11 na detecção de objetos através de sua webcam, com uma interface amigável e a capacidade de interromper o fluxo de vídeo a qualquer momento.
Para melhorias adicionais, pode explorar a adição de mais funcionalidades, como gravar o fluxo de vídeo, guardar os frames anotados ou integrar com outras bibliotecas de visão computacional.
Compartilhe Suas Ideias com a Comunidade
Interaja com a comunidade para aprender mais, solucionar problemas e compartilhar seus projetos:
Onde Encontrar Ajuda e Suporte
- Problemas no GitHub: Visite o repositório Ultralytics no GitHub para levantar questões, reportar bugs e sugerir funcionalidades.
- Servidor Ultralytics Discord: Junte-se ao servidor Ultralytics Discord para se conectar com outros usuários e desenvolvedores, obter suporte, compartilhar conhecimento e trocar ideias.
Documentação Oficial
- Documentação Ultralytics YOLO11: Consulte a documentação oficial do YOLO11 para obter guias e insights abrangentes sobre várias tarefas e projetos de visão computacional.
FAQ
Como posso configurar uma aplicação de detecção de objetos em tempo real usando Streamlit e Ultralytics YOLO11?
Configurar um aplicativo de detecção de objetos em tempo real com Streamlit e Ultralytics YOLO11 é simples. Primeiro, certifique-se de ter o pacote Ultralytics Python instalado usando:
pip install ultralytics
Em seguida, você pode criar um aplicativo Streamlit básico para executar a inferência ao vivo:
Aplicação Streamlit
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
yolo solutions inference
Para mais detalhes sobre a configuração prática, consulte a seção Seção de Código do Aplicativo Streamlit da documentação.
Quais são as principais vantagens de usar Ultralytics YOLO11 com Streamlit para detecção de objetos em tempo real?
Usar o Ultralytics YOLO11 com Streamlit para detecção de objetos em tempo real oferece diversas vantagens:
- Deteção Contínua em Tempo Real: Obtenha deteção de objetos em tempo real e de alta precisão diretamente de feeds de webcam.
- Interface Amigável: A interface intuitiva do Streamlit permite fácil utilização e implantação sem extenso conhecimento técnico.
- Eficiência de Recursos: Os algoritmos otimizados do YOLO11 garantem processamento de alta velocidade com recursos computacionais mínimos.
Saiba mais sobre esses benefícios na seção Vantagens da Inferência ao Vivo.
Como implemento um aplicativo de detecção de objetos Streamlit no meu navegador da web?
Depois de codificar sua aplicação Streamlit integrando o Ultralytics YOLO11, você pode implantá-la executando:
streamlit run path/to/file.py
Este comando iniciará o aplicativo em seu navegador da web padrão, permitindo que você selecione modelos YOLO11, defina limites de confiança e NMS e inicie a detecção de objetos em tempo real com um simples clique. Para um guia detalhado, consulte a seção Código do Aplicativo Streamlit.
Quais são alguns casos de uso para detecção de objetos em tempo real usando Streamlit e Ultralytics YOLO11?
A detecção de objetos em tempo real usando Streamlit e Ultralytics YOLO11 pode ser aplicada em vários setores:
- Segurança: Monitoramento em tempo real para acesso não autorizado e sistemas de alarme de segurança.
- Varejo: Contagem de clientes, gestão de prateleiras e rastreamento de estoque.
- Vida Selvagem e Agricultura: Monitoramento de animais e condições de colheitas para esforços de conservação.
Para casos de uso e exemplos mais detalhados, explore as Soluções Ultralytics.
Como o Ultralytics YOLO11 se compara a outros modelos de detecção de objetos, como YOLOv5 e RCNNs?
Ultralytics YOLO11 oferece várias melhorias em relação a modelos anteriores como YOLOv5 e RCNNs:
- Maior Velocidade e Precisão: Desempenho aprimorado para aplicações em tempo real.
- Facilidade de Uso: Interfaces e implantação simplificadas.
- Eficiência de Recursos: Otimizado para melhor velocidade com requisitos computacionais mínimos.
Para uma comparação abrangente, consulte a Documentação do Ultralytics YOLO11 e as postagens de blog relacionadas que discutem o desempenho do modelo.