Ir para o conteúdo

Soluções Ultralytics: Utilize YOLO11 para Resolver Problemas do Mundo Real

As Soluções Ultralytics fornecem aplicações de ponta dos modelos YOLO, oferecendo 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 YOLO11 para implementações práticas e impactantes.

Miniatura das Soluções Ultralytics



Assista: Como Executar Soluções Ultralytics a partir da Linha de Comando (CLI) | Ultralytics YOLO11 🚀

Soluções

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

  • Contagem de Objetos: Aprenda a realizar a contagem de objetos em tempo real com o YOLO11. Adquira a experiência para contar com precisão os objetos em fluxos de vídeo ao vivo.
  • Recorte de Objetos: Domine o recorte de objetos com o YOLO11 para uma extração precisa de objetos de imagens e vídeos.
  • Desfoque de Objetos: Aplique o desfoque de objetos usando o YOLO11 para proteger a privacidade no processamento de imagens e vídeos.
  • Monitoramento de Treinos: Descubra como monitorar treinos usando o YOLO11. Aprenda a rastrear e analisar várias rotinas de exercícios em tempo real.
  • Contagem de objectos em regiões: Contar objectos em regiões específicas utilizando YOLO11 para uma deteção precisa em áreas variadas.
  • Sistema de Alarme de Segurança: Crie um sistema de alarme de segurança com YOLO11 que aciona alertas ao detectar novos objetos. Personalize o sistema para atender às suas necessidades específicas.
  • 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 YOLO11 para obter limites de objetos precisos e monitoramento contínuo.
  • Mapeamento de Objetos com Visão Ocular: Desenvolva sistemas que imitem o foco do olho humano em objetos específicos, aprimorando a capacidade do computador de discernir e priorizar detalhes.
  • Estimativa de Velocidade: Estime a velocidade do objeto usando YOLO11 e técnicas de rastreamento de objetos, cruciais para aplicações como veículos autônomos e monitoramento de tráfego.
  • Cálculo de Distância: Calcule as distâncias entre objetos usando os centroides da bounding box em YOLO11, essencial para a análise espacial.
  • Gestão de Filas: Implemente sistemas eficientes de gestão de filas para minimizar os tempos de espera e melhorar a produtividade usando o YOLO11.
  • Gestão de Estacionamento: Organize e direcione o fluxo de veículos em áreas de estacionamento com o YOLO11, otimizando a utilização do espaço e a experiência do usuário.
  • Analytics: Realize uma análise de dados abrangente para descobrir padrões e tomar decisões informadas, aproveitando o YOLO11 para análises descritivas, preditivas e prescritivas.
  • Inferência ao vivo com Streamlit: Aproveite o poder do YOLO11 para detecção de objetos em tempo real diretamente através do seu navegador da web com uma interface Streamlit amigável.
  • Rastrear Objetos na Zona: Aprenda a rastrear objetos dentro de zonas específicas de frames de vídeo usando YOLO11 para um monitoramento preciso e eficiente.
  • Pesquisa de similaridade 🚀 NOVO: Habilite a recuperação inteligente de imagens combinando embeddings OpenAI CLIP com Meta FAISS, permitindo consultas em linguagem natural como "pessoa segurando uma bolsa" ou "veículos em movimento".

Argumentos de Soluções

ArgumentoTipoPadrãoDescrição
modelstrNoneCaminho para um ficheiro do modelo Ultralytics YOLO .
regionlist'[(20, 400), (1260, 400)]'Lista de pontos que definem a região de contagem.
show_inboolTrueFlag para controlar se exibe as contagens de entrada no fluxo de vídeo.
show_outboolTrueFlag para controlar se exibe as contagens de saída no fluxo de vídeo.
analytics_typestrlineTipo de gráfico, ou seja, line, bar, area, ou pie.
colormapintcv2.COLORMAP_JETMapa 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 'para cima'.
kptslist[int, int, int]'[6, 8, 10]'Lista 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 exercícios abdominais.
down_anglefloat90.0Limite de ângulo para a pose 'para baixo'.
blur_ratiofloat0.5Ajusta a porcentagem da intensidade do desfoque, com valores no intervalo 0.1 - 1.0.
crop_dirstr'cropped-detections'Nome do diretório para armazenar detecções recortadas.
recordsint5Contagem total de detecções para acionar um e-mail com o 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.). Só utilizável com a interface de linha de comandos (CLI) Solutions.
figsizetuple[int, int](12.8, 7.2)Tamanho da figura para gráficos analíticos, como mapas de calor ou gráficos.
fpsfloat30.0Frames por segundo usados para cálculos de velocidade.
max_histint5Número máximo de pontos históricos 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 utilizado para a pesquisa de similaridade.

Rastrear args

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

ArgumentoTipoPadrãoDescrição
trackerstr'botsort.yaml'Especifica o algoritmo de rastreamento a ser usado, por exemplo, bytetrack.yaml ou botsort.yaml.
conffloat0.3Define o limite de confiança para detecções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos.
ioufloat0.5Define o limite de Intersecção sobre União (IoU) para filtrar detecções sobrepostas.
classeslistNoneFiltra os resultados por índice de 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.

ArgumentoTipoPadrãoDescrição
showboolFalseSe True, exibe as imagens ou vídeos anotados em uma janela. Útil para feedback visual imediato durante o desenvolvimento ou teste.
line_widthNone or intNoneEspecifica a largura da linha das caixas delimitadoras. Se None, a largura da linha é ajustada automaticamente com base no tamanho da imagem. Fornece personalização visual para clareza.
show_confboolTrueExibe o score de confiança para cada detecção junto com o rótulo. Dá uma ideia da certeza do modelo para cada detecção.
show_labelsboolTrueExibe rótulos para cada detecção na saída visual. Fornece compreensão imediata dos objetos detectados.

Uso do SolutionAnnotator

Todas as Ultralytics Solutions usam a classe separada SolutionAnnotator, que estende o principal Annotator classe e têm 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 filas na região especificada.
display_analytics()NoneExibe estatísticas gerais para gerenciamento de estacionamento.
estimate_pose_angle()floatCalcula o ângulo entre três pontos em uma pose de objeto.
draw_specific_points()NoneDesenha keypoints 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 passos e o estágio para o monitoramento do treino.
plot_distance_and_line()NoneExibe a distância entre os 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 os centroides dos objetos a um ponto "ocular" visual.
adaptive_label()NoneDesenhe um rótulo de forma circular ou retangular no centro de uma caixa delimitadora.

Trabalhando com SolutionResults

Exceto Similarity Search, cada chamada de Solution retorna uma lista de SolutionResults objeto.

  • Para 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="yolo11n.pt",  # model="yolo11n-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

SolutionResults object têm 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 registrando contagens de objetos de entrada/saída por classe para análises avançadas.
queue_countintNúmero de objetos atualmente dentro de uma fila predefinida ou área de espera (adequado para gestão de filas).
workout_countintNúmero total de repetições de exercícios concluídas durante o rastreamento de exercícios.
workout_anglefloatÂngulo da articulação ou da pose calculado durante o treino para avaliação da forma.
workout_stagestrEstágio atual do treino ou fase do movimento (por exemplo, 'subindo', 'descendo').
pixels_distancefloatDistância baseada em pixel entre dois objetos ou pontos, por exemplo, caixas delimitadoras (adequado para cálculo de distância).
available_slotsintNúmero de vagas desocupadas numa área monitorizada (adequado para gestão de estacionamento).
filled_slotsintNúmero de vagas ocupadas numa área monitorizada (adequado para gestão 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 utilizador.
speed_dictDict[str, float]Dicionário track-wise de velocidades de objetos calculadas, útil para análise de velocidade.
total_crop_objectsintNúmero total de imagens de objetos recortadas geradas pela solução ObjectCropper.
speedDict[str, float]Dicionário contendo métricas de desempenho para rastreamento e processamento de soluções.

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

Uso de Soluções via CLI

Informações do Comando

A maioria das soluções pode ser usada diretamente através da interface de linha de comando, incluindo:

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

Sintaxe

yolo SOLUTIONS SOLUTION_NAME ARGS
  • SOLUTIONS é uma palavra-chave obrigatória.
  • SOLUTION_NAME é um dos: ['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye'].
  • ARGS (opcional) são personalizados arg=value pares, como show_in=True, para substituir as 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 para Nossas Soluções

Agradecemos as contribuições da comunidade! Se você domina algum aspecto específico do Ultralytics YOLO que ainda não foi abordado em nossas soluções, encorajamos você a compartilhar sua experiência. Escrever um guia é uma ótima maneira de retribuir à comunidade e nos ajudar a tornar nossa documentação mais abrangente e amigável.

Para começar, por favor, leia o nosso Guia de Contribuição para obter orientações sobre como abrir um Pull Request (PR) 🛠️. Aguardamos ansiosamente 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 YOLO11 pode ser usado para contagem de objetos em tempo real, aproveitando seus recursos avançados de detecção de objetos. Você pode seguir nosso guia detalhado sobre Contagem de Objetos para configurar o YOLO11 para análise de fluxo de vídeo ao vivo. Basta instalar o YOLO11, carregar seu modelo e processar os frames 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 YOLO11 aprimora os sistemas de segurança, oferecendo detecção de objetos em tempo real e mecanismos de alerta. Ao empregar o YOLO11, 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 YOLO11 para um monitoramento de segurança robusto.

Como o Ultralytics YOLO pode melhorar os sistemas de gestão de filas?

O Ultralytics YOLO11 pode melhorar significativamente os sistemas de gestão de filas, contando e rastreando com precisão as pessoas nas filas, ajudando assim a reduzir os tempos de espera e a otimizar a eficiência do serviço. Siga nosso guia detalhado sobre Gestão de Filas para aprender como implementar o YOLO11 para monitoramento e análise eficazes de filas.

O Ultralytics YOLO pode ser usado para monitoramento de treinos?

Sim, o Ultralytics YOLO11 pode ser usado eficazmente para monitorar treinos, rastreando e analisando rotinas de fitness em tempo real. Isso permite uma avaliação precisa da forma e do desempenho do exercício. Explore nosso guia sobre Monitoramento de Treinos para aprender como configurar um sistema de monitoramento de treinos alimentado por IA usando o YOLO11.

Como o Ultralytics YOLO ajuda na criação de mapas de calor para visualização de dados?

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



📅C riado há 1 ano ✏️ Atualizado há 3 dias
RizwanMunawarglenn-jocherLaughing-qUltralyticsAssistant

Comentários