Soluções Ultralytics: Aproveite o YOLO26 para Resolver Problemas do Mundo Real

As Soluções Ultralytics oferecem aplicações de ponta dos modelos YOLO, fornecendo soluções do mundo real como contagem de objetos, desfoque e sistemas de segurança, aumentando a eficiência e a precisão em diversos setores. Descubra o poder do YOLO26 para implementações práticas e impactantes.

Miniatura das Soluções Ultralytics



Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀

Soluções

Aqui está a nossa lista selecionada de soluções Ultralytics que podem ser usadas para criar projetos incríveis de visão computacional.

  • Analytics: Realize uma análise de dados abrangente para descobrir padrões e tomar decisões informadas, aproveitando o YOLO26 para análises descritivas, preditivas e prescritivas.
  • Cálculo de Distância: Calcule distâncias entre objetos usando os centroides da caixa delimitadora no YOLO26, essencial para análise espacial.
  • Mapas de Calor: Utilize mapas de calor de detecção para visualizar a intensidade dos dados em uma matriz, fornecendo insights claros em tarefas de visão computacional.
  • Segmentação de Instância com Rastreamento de Objetos: Implemente segmentação de instância e rastreamento de objetos com YOLO26 para obter limites de objetos precisos e monitoramento contínuo.
  • Inferência ao Vivo com Streamlit: Aproveite o poder do YOLO26 para detecção de objetos em tempo real diretamente pelo seu navegador web com uma interface Streamlit amigável.
  • Desfoque de Objetos: Aplique desfoque de objetos usando YOLO26 para proteger a privacidade no processamento de imagens e vídeos.
  • Contagem de Objetos: Aprenda a realizar a contagem de objetos em tempo real com o YOLO26. Obtenha a experiência necessária para contar objetos com precisão em fluxos de vídeo ao vivo.
  • Contagem de Objetos em Regiões: Conte objetos em regiões específicas usando o YOLO26 para uma detecção precisa em diversas áreas.
  • Recorte de Objetos: Domine o recorte de objetos com o YOLO26 para a extração precisa de objetos a partir de imagens e vídeos.
  • Gerenciamento de Estacionamento: Organize e direcione o fluxo de veículos em áreas de estacionamento com o YOLO26, otimizando o uso do espaço e a experiência do usuário.
  • Gerenciamento de Filas: Implemente sistemas eficientes de gerenciamento de filas para minimizar tempos de espera e melhorar a produtividade usando o YOLO26.
  • Sistema de Alarme de Segurança: Crie um sistema de alarme de segurança com o YOLO26 que dispara alertas ao detectar novos objetos. Personalize o sistema para atender às suas necessidades específicas.
  • Busca por Similaridade: Habilite a recuperação inteligente de imagens combinando embeddings do OpenAI CLIP com o Meta FAISS, permitindo consultas em linguagem natural como "pessoa segurando uma bolsa" ou "veículos em movimento."
  • Estimativa de Velocidade: Estime a velocidade de objetos usando o YOLO26 e técnicas de rastreamento de objetos, fundamental para aplicações como veículos autônomos e monitoramento de tráfego.
  • Rastrear Objetos em Zona: Aprenda a rastrear objetos dentro de zonas específicas de quadros de vídeo usando o YOLO26 para um monitoramento preciso e eficiente.
  • Mapeamento de Objetos com VisionEye: Desenvolva sistemas que imitam o foco do olho humano em objetos específicos, aprimorando a capacidade do computador de discernir e priorizar detalhes.
  • Monitoramento de Treinos: Descubra como monitorar treinos usando o YOLO26. Aprenda a rastrear e analisar várias rotinas de condicionamento físico em tempo real.

Argumentos das Soluções

ArgumentoTipoPredefiniçãoDescrição
modelstrNoneCaminho para um arquivo de modelo Ultralytics YOLO.
regionlist'[(20, 400), (1260, 400)]'Lista de pontos definindo a região de contagem.
show_inboolTrueSinalizador para controlar se as contagens de entrada devem ser exibidas no fluxo de vídeo.
show_outboolTrueSinalizador para controlar se as contagens de saída devem ser exibidas no fluxo de vídeo.
analytics_typestr'line'Tipo de gráfico, i.e., line, bar, area ou pie.
colormapintcv2.COLORMAP_DEEPGREENMapa de cores a ser usado para o mapa de calor.
json_filestrNoneCaminho para o arquivo JSON que contém todos os dados de coordenadas de estacionamento.
up_anglefloat145.0Limite de ângulo para a pose 'up' (subida).
kptslist[int]'[6, 8, 10]'Lista de três índices de pontos-chave usados para monitorar exercícios. Esses pontos-chave correspondem a articulações ou partes do corpo, como ombros, cotovelos e pulsos, para exercícios como flexões, barras, agachamentos e abdominais.
down_angleint90Limite de ângulo para a pose 'down' (descida).
blur_ratiofloat0.5Ajusta a porcentagem da intensidade de desfoque, com valores na faixa de 0.1 - 1.0.
crop_dirstr'cropped-detections'Nome do diretório para armazenar detecções cortadas.
recordsint5Contagem total de detecções para acionar um e-mail com sistema de alarme de segurança.
vision_pointtuple[int, int](20, 20)O ponto onde a visão rastreará objetos e desenhará caminhos usando a Solução VisionEye.
sourcestrNoneCaminho para a fonte de entrada (vídeo, RTSP, etc.). Apenas utilizável com a interface de linha de comando (CLI) de Soluções.
figsizetuple[int, int](12.8, 7.2)Tamanho da figura para gráficos analíticos como mapas de calor ou gráficos.
fpsfloat30.0Quadros por segundo usados para cálculos de velocidade.
max_histint5Pontos históricos máximos para rastrear por objeto para cálculos de velocidade/direção.
meter_per_pixelfloat0.05Fator de escala usado para converter a distância em pixels para unidades do mundo real.
max_speedint120Limite máximo de velocidade em sobreposições visuais (usado em alertas).
datastr'images'Caminho para o diretório de imagens usado para busca de similaridade.
Argumentos de rastreamento

As soluções também suportam alguns dos argumentos de track, incluindo parâmetros como conf, line_width, tracker, model, show, verbose e classes.

ArgumentoTipoPredefiniçãoDescrição
trackerstr'botsort.yaml'Especifica o algoritmo de rastreamento a ser usado, por exemplo, bytetrack.yaml ou botsort.yaml.
conffloat0.1Define o limite de confiança para as detecções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos.
ioufloat0.7Define o limite de Intersection over Union (IoU) para filtrar detecções sobrepostas.
classeslistNoneFiltra resultados pelo índice da classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas.
verboseboolTrueControla a exibição dos resultados de rastreamento, fornecendo uma saída visual dos objetos rastreados.
devicestrNoneEspecifica o dispositivo para inferência (por exemplo, cpu, cuda:0 ou 0). Permite que os usuários selecionem entre CPU, uma GPU específica ou outros dispositivos de computação para a execução do modelo.
Argumentos de visualização

Você pode usar show_conf, show_labels e outros argumentos mencionados para personalizar a visualização.

ArgumentoTipoPredefiniçãoDescrição
showboolFalseSe True, exibe as imagens ou vídeos anotados numa janela. Útil para feedback visual imediato durante o desenvolvimento ou teste.
line_widthint or NoneNoneEspecifica a largura da linha das caixas delimitadoras. Se None, a largura da linha é ajustada automaticamente com base no tamanho da imagem. Oferece personalização visual para clareza.
show_confboolTrueExibe a pontuação de confiança para cada deteção ao lado do rótulo. Dá uma noção da certeza do modelo para cada deteção.
show_labelsboolTrueExibe rótulos para cada deteção na saída visual. Proporciona uma compreensão imediata dos objetos detetados.

Uso do SolutionAnnotator

Todas as Soluções Ultralytics usam a classe separada SolutionAnnotator, que estende a classe principal Annotator, e possuem os seguintes métodos:

MétodoTipo de retornoDescrição
draw_region()NoneDesenha uma região usando pontos, cores e espessura especificados.
queue_counts_display()NoneExibe as contagens de fila na região especificada.
display_analytics()NoneExibe estatísticas gerais para gerenciamento de estacionamento.
estimate_pose_angle()floatCalcula o ângulo entre três pontos na pose de um objeto.
draw_specific_points()NoneDesenha pontos-chave específicos na imagem.
plot_workout_information()NoneDesenha uma caixa de texto rotulada na imagem.
plot_angle_and_count_and_stage()NoneVisualiza o ângulo, a contagem de repetições e o estágio para o monitoramento de treino.
plot_distance_and_line()NoneExibe a distância entre centroides e os conecta com uma linha.
display_objects_labels()NoneAnota caixas delimitadoras com rótulos de classe de objeto.
sweep_annotator()NoneVisualize uma linha de varredura vertical e um rótulo opcional.
visioneye()NoneMapeia e conecta centroides de objetos a um ponto visual de "olho".
adaptive_label()NoneDesenha um rótulo com formato de fundo circular ou retangular no centro de uma caixa delimitadora.

Trabalhando com SolutionResults

Except Similarity Search, each Solution call returns a list of SolutionResults objects.

  • Para a contagem de objetos, os resultados incluem in_count, out_count e classwise_count.
SolutionResults
import cv2

from ultralytics import solutions

im0 = cv2.imread("path/to/img")

region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

counter = solutions.ObjectCounter(
    show=True,  # display the output
    region=region_points,  # pass region points
    model="yolo26n.pt",  # model="yolo26n-obb.pt" for object counting with OBB model.
    # classes=[0, 2],  # count specific classes i.e. person and car with COCO pretrained model.
    # tracker="botsort.yaml"  # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count)  # display in_counts
print(results.out_count)  # display out_counts
print(results.classwise_count)  # display classwise_count

O objeto SolutionResults possui os seguintes atributos:

AtributoTipoDescrição
plot_imnp.ndarrayImagem com sobreposições visuais, como contagens, efeitos de desfoque ou aprimoramentos específicos da solução.
in_countintNúmero total de objetos detectados entrando na zona definida no fluxo de vídeo.
out_countintNúmero total de objetos detectados saindo da zona definida no fluxo de vídeo.
classwise_countDict[str, int]Dicionário que registra as contagens de entrada/saída de objetos por classe para análises avançadas.
queue_countintNúmero de objetos atualmente dentro de uma fila predefinida ou área de espera (adequado para gerenciamento de filas).
workout_countintNúmero total de repetições de treino concluídas durante o rastreamento de exercícios.
workout_anglefloatÂngulo da articulação ou pose calculado durante o treino para avaliação de forma.
workout_stagestrEstágio atual do treino ou fase do movimento (por exemplo, 'subida', 'descida').
pixels_distancefloatDistância baseada em pixels entre dois objetos ou pontos, por exemplo, caixas delimitadoras. (Adequado para cálculo de distância).
available_slotsintNúmero de vagas desocupadas em uma área monitorada (adequado para gerenciamento de estacionamento).
filled_slotsintNúmero de vagas ocupadas em uma área monitorada. (Adequado para gerenciamento de estacionamento)
email_sentboolIndica se um e-mail de notificação ou alerta foi enviado com sucesso (adequado para alarme de segurança).
total_tracksintNúmero total de rastreamentos de objetos únicos observados durante a análise de vídeo.
region_countsDict[str, int]Contagens de objetos dentro de regiões ou zonas definidas pelo usuário.
speed_dictDict[str, float]Dicionário por rastreamento das velocidades dos objetos calculadas, útil para análise de velocidade.
total_crop_objectsintNúmero total de imagens de objetos recortados geradas pela solução ObjectCropper.
speedDict[str, float]Dicionário que contém métricas de desempenho para rastreamento e processamento de soluções.

Para mais detalhes, consulte a documentação da classe SolutionResults.

Uso de Soluções via CLI

Informações do Comando

A maioria das Soluções pode ser usada diretamente pela interface de linha de comando, incluindo:

Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference, Trackzone

Sintaxe

yolo SOLUTIONS SOLUTION_NAME ARGS
  • SOLUTIONS é uma palavra-chave obrigatória.
  • SOLUTION_NAME é um dos seguintes: ['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye'].
  • ARGS (opcionais) são pares personalizados arg=value, como show_in=True, para substituir configurações padrão.
yolo solutions count show=True # for object counting

yolo solutions count source="path/to/video.mp4" # specify video file path

Contribua com Nossas Soluções

Recebemos contribuições da comunidade! Se você domina um aspecto específico do Ultralytics YOLO que ainda não está coberto em nossas soluções, encorajamos você a compartilhar seu conhecimento. Escrever um guia é uma ótima maneira de retribuir à comunidade e nos ajudar a tornar nossa documentação mais abrangente e fácil de usar.

Para começar, leia nosso Guia de Contribuição para diretrizes sobre como abrir um Pull Request (PR) 🛠️. Aguardamos suas contribuições!

Vamos trabalhar juntos para tornar o ecossistema Ultralytics YOLO mais robusto e versátil 🙏!

FAQ

Como posso usar o Ultralytics YOLO para contagem de objetos em tempo real?

O Ultralytics YOLO26 pode ser usado para contagem de objetos em tempo real aproveitando suas capacidades avançadas de detecção de objetos. Você pode seguir nosso guia detalhado sobre Contagem de Objetos para configurar o YOLO26 para análise de fluxo de vídeo ao vivo. Basta instalar o YOLO26, carregar seu modelo e processar quadros de vídeo para contar objetos dinamicamente.

Quais são os benefícios de usar o Ultralytics YOLO para sistemas de segurança?

O Ultralytics YOLO26 aprimora sistemas de segurança ao oferecer detecção de objetos em tempo real e mecanismos de alerta. Ao empregar o YOLO26, você pode criar um sistema de alarme de segurança que dispara alertas quando novos objetos são detectados na área de vigilância. Aprenda como configurar um Sistema de Alarme de Segurança com o YOLO26 para um monitoramento de segurança robusto.

Como o Ultralytics YOLO pode melhorar os sistemas de gerenciamento de filas?

O Ultralytics YOLO26 pode melhorar significativamente os sistemas de gerenciamento de filas contando e rastreando pessoas em filas com precisão, ajudando a reduzir tempos de espera e otimizar a eficiência do serviço. Siga nosso guia detalhado sobre Gerenciamento de Filas para aprender como implementar o YOLO26 para monitoramento e análise eficaz de filas.

O Ultralytics YOLO pode ser usado para monitoramento de treinos?

Sim, o Ultralytics YOLO26 pode ser usado efetivamente para monitorar treinos, rastreando e analisando rotinas de fitness em tempo real. Isso permite a avaliação precisa da forma e do desempenho nos exercícios. Explore nosso guia sobre Monitoramento de Treinos para aprender como configurar um sistema de monitoramento de treinos baseado em IA usando o YOLO26.

Como o Ultralytics YOLO ajuda a criar mapas de calor para visualização de dados?

O Ultralytics YOLO26 pode gerar mapas de calor para visualizar a intensidade dos dados em uma determinada área, destacando regiões de alta atividade ou interesse. Esse recurso é particularmente útil para entender padrões e tendências em várias tarefas de visão computacional. Saiba mais sobre como criar e usar Mapas de Calor com o YOLO26 para análise e visualização de dados abrangentes.

Comentários