Detecção de Objetos Interativa: Gradio & Ultralytics YOLO26 🚀
Introdução à Detecção de Objetos Interativa
Esta interface do Gradio oferece uma forma fácil e interativa de realizar detecção de objetos usando o modelo Ultralytics YOLO26. Os usuários podem fazer upload de imagens e ajustar parâmetros como o limite de confiança e o limite de intersecção sobre união (IoU) para obter resultados de detecção em tempo real.
Watch: Gradio Integration with Ultralytics YOLO26
Por que usar o Gradio para detecção de objetos?
- Interface Amigável: O Gradio oferece uma plataforma direta para que os usuários façam upload de imagens e visualizem os resultados da detecção sem qualquer necessidade de programação.
- Ajustes em Tempo Real: Parâmetros como os limites de confiança e IoU podem ser ajustados instantaneamente, permitindo feedback imediato e otimização dos resultados de detecção.
- Ampla Acessibilidade: A interface web do Gradio pode ser acessada por qualquer pessoa, tornando-a uma excelente ferramenta para demonstrações, fins educacionais e experimentos rápidos.
Como instalar o Gradio
pip install gradioComo usar a interface
- Upload de Imagem: Clique em 'Upload Image' (Fazer upload de imagem) para escolher um arquivo de imagem para a detecção de objetos.
- Ajustar Parâmetros:
- Limite de Confiança: Slider para definir o nível mínimo de confiança para detectar objetos.
- Limite de IoU: Slider para definir o limite de IoU para distinguir diferentes objetos.
- Ver Resultados: A imagem processada com os objetos detectados e seus rótulos será exibida.
Exemplos de Casos de Uso
- Imagem de Exemplo 1: Detecção de ônibus com limites padrão.
- Imagem de Exemplo 2: Detecção em uma imagem esportiva com limites padrão.
Exemplo de Uso
Esta seção fornece o código Python usado para criar a interface do Gradio com o modelo Ultralytics YOLO26. O código suporta tarefas de classificação, detecção, segmentação e pontos-chave (keypoints).
import gradio as gr
import PIL.Image as Image
from ultralytics import ASSETS, YOLO
model = YOLO("yolo26n.pt")
def predict_image(img, conf_threshold, iou_threshold):
"""Predicts objects in an image using a YOLO26 model with adjustable confidence and IoU thresholds."""
results = model.predict(
source=img,
conf=conf_threshold,
iou=iou_threshold,
show_labels=True,
show_conf=True,
imgsz=640,
)
for r in results:
im_array = r.plot()
im = Image.fromarray(im_array[..., ::-1])
return im
iface = gr.Interface(
fn=predict_image,
inputs=[
gr.Image(type="pil", label="Upload Image"),
gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
],
outputs=gr.Image(type="pil", label="Result"),
title="Ultralytics Gradio",
description="Upload images for inference. The Ultralytics YOLO26n model is used by default.",
examples=[
[ASSETS / "bus.jpg", 0.25, 0.45],
[ASSETS / "zidane.jpg", 0.25, 0.45],
],
)
if __name__ == "__main__":
iface.launch()Explicação dos Parâmetros
| Nome do Parâmetro | Tipo | Descrição |
|---|---|---|
img | Image | A imagem na qual a detecção de objetos será realizada. |
conf_threshold | float | Limite de confiança para detectar objetos. |
iou_threshold | float | Limite de intersecção sobre união para separação de objetos. |
Componentes da Interface Gradio
| Componente | Descrição |
|---|---|
| Entrada de Imagem | Para fazer o upload da imagem para detecção. |
| Sliders | Para ajustar os limites de confiança e IoU. |
| Saída de Imagem | Para exibir os resultados da detecção. |
FAQ
Como uso o Gradio com o Ultralytics YOLO26 para detecção de objetos?
Para usar o Gradio com o Ultralytics YOLO26 para detecção de objetos, você pode seguir estes passos:
- Instale o Gradio: Use o comando
pip install gradio. - Crie a Interface: Escreva um script Python para inicializar a interface do Gradio. Você pode consultar o exemplo de código fornecido na documentação para detalhes.
- Upload e Ajuste: Faça o upload da sua imagem e ajuste os limites de confiança e IoU na interface do Gradio para obter resultados de detecção de objetos em tempo real.
Aqui está um trecho de código mínimo para referência:
import gradio as gr
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
def predict_image(img, conf_threshold, iou_threshold):
results = model.predict(
source=img,
conf=conf_threshold,
iou=iou_threshold,
show_labels=True,
show_conf=True,
)
return results[0].plot() if results else None
iface = gr.Interface(
fn=predict_image,
inputs=[
gr.Image(type="pil", label="Upload Image"),
gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
],
outputs=gr.Image(type="pil", label="Result"),
title="Ultralytics Gradio YOLO26",
description="Upload images for YOLO26 object detection.",
)
iface.launch()Quais são os benefícios de usar o Gradio para detecção de objetos com o Ultralytics YOLO26?
Usar o Gradio para detecção de objetos com o Ultralytics YOLO26 oferece vários benefícios:
- Interface Amigável: O Gradio fornece uma interface intuitiva para os usuários fazerem upload de imagens e visualizarem os resultados de detecção sem qualquer esforço de codificação.
- Ajustes em Tempo Real: Você pode ajustar dinamicamente os parâmetros de detecção, como os limites de confiança e IoU, e ver os efeitos imediatamente.
- Acessibilidade: A interface web é acessível a qualquer pessoa, tornando-a útil para experimentos rápidos, fins educacionais e demonstrações.
Para mais detalhes, você pode ler esta postagem no blog sobre IA em radiologia que apresenta técnicas de visualização interativa semelhantes.
Posso usar o Gradio e o Ultralytics YOLO26 juntos para fins educacionais?
Sim, o Gradio e o Ultralytics YOLO26 podem ser utilizados juntos para fins educacionais de forma eficaz. A interface web intuitiva do Gradio facilita para estudantes e educadores a interação com modelos de deep learning de ponta, como o Ultralytics YOLO26, sem precisar de habilidades avançadas de programação. Esta configuração é ideal para demonstrar conceitos-chave em detecção de objetos e visão computacional, pois o Gradio fornece feedback visual imediato, o que ajuda a entender o impacto de diferentes parâmetros no desempenho da detecção.
Como ajusto os limites de confiança e IoU na interface do Gradio para o YOLO26?
Na interface do Gradio para o YOLO26, você pode ajustar os limites de confiança e IoU usando os sliders fornecidos. Esses limites ajudam a controlar a precisão da previsão e a separação de objetos:
- Limite de Confiança: Determina o nível mínimo de confiança para detectar objetos. Deslize para aumentar ou diminuir a confiança necessária.
- Limite de IoU: Define o limite de intersecção sobre união para distinguir entre objetos sobrepostos. Ajuste este valor para refinar a separação de objetos.
Para mais informações sobre esses parâmetros, visite a seção de explicação dos parâmetros.
Quais são algumas aplicações práticas de usar o Ultralytics YOLO26 com o Gradio?
Aplicações práticas de combinar o Ultralytics YOLO26 com o Gradio incluem:
- Demonstrações de Detecção de Objetos em Tempo Real: Ideal para exibir como a detecção de objetos funciona em tempo real.
- Ferramentas Educacionais: Úteis em ambientes acadêmicos para ensinar conceitos de detecção de objetos e visão computacional.
- Desenvolvimento de Protótipos: Eficiente para desenvolver e testar rapidamente protótipos de aplicações de detecção de objetos.
- Comunidade e Colaborações: Tornando fácil compartilhar modelos com a comunidade para feedback e colaboração.
Para exemplos de casos de uso semelhantes, confira o blog da Ultralytics sobre monitoramento de comportamento animal que demonstra como a visualização interativa pode aprimorar os esforços de conservação da vida selvagem.