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 Objetos em Regiões: Conte objetos em regiões específicas usando o YOLO11 para detecçã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

Argumento Tipo Padrão Descrição
model str None Caminho para o arquivo do modelo Ultralytics YOLO.
region list '[(20, 400), (1260, 400)]' Lista de pontos que definem a região de contagem.
show_in bool True Flag para controlar se exibe as contagens de entrada no fluxo de vídeo.
show_out bool True Flag para controlar se exibe as contagens de saída no fluxo de vídeo.
analytics_type str line Tipo de gráfico, ou seja, line, bar, area, ou pie.
colormap int cv2.COLORMAP_JET Mapa de cores a ser usado para o mapa de calor.
json_file str None Caminho para o arquivo JSON que contém todos os dados de coordenadas de estacionamento.
up_angle float 145.0 Limite de ângulo para a pose 'para cima'.
kpts list[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_angle float 90.0 Limite de ângulo para a pose 'para baixo'.
blur_ratio float 0.5 Ajusta a porcentagem da intensidade do desfoque, com valores no intervalo 0.1 - 1.0.
crop_dir str 'cropped-detections' Nome do diretório para armazenar detecções recortadas.
records int 5 Contagem total de detecções para acionar um e-mail com o sistema de alarme de segurança.
vision_point tuple[int, int] (20, 20) O ponto onde a visão rastreará objetos e desenhará caminhos usando a Solução VisionEye.
source str None Caminho para a fonte de entrada (vídeo, RTSP, etc.). Só utilizável com a interface de linha de comandos (CLI) Solutions.
figsize tuple[int, int] (12.8, 7.2) Tamanho da figura para gráficos analíticos, como mapas de calor ou gráficos.
fps float 30.0 Frames por segundo usados para cálculos de velocidade.
max_hist int 5 Número máximo de pontos históricos para rastrear por objeto para cálculos de velocidade/direção.
meter_per_pixel float 0.05 Fator de escala usado para converter a distância em pixels para unidades do mundo real.
max_speed int 120 Limite máximo de velocidade em sobreposições visuais (usado em alertas).
data str '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.

Argumento Tipo Padrão Descrição
tracker str 'botsort.yaml' Especifica o algoritmo de rastreamento a ser usado, por exemplo, bytetrack.yaml ou botsort.yaml.
conf float 0.3 Define o limite de confiança para detecções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos.
iou float 0.5 Define o limite de Intersecção sobre União (IoU) para filtrar detecções sobrepostas.
classes list None Filtra os resultados por índice de classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas.
verbose bool True Controla a exibição dos resultados de rastreamento, fornecendo uma saída visual dos objetos rastreados.
device str None Especifica 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.

Argumento Tipo Padrão Descrição
show bool False Se True, exibe as imagens ou vídeos anotados em uma janela. Útil para feedback visual imediato durante o desenvolvimento ou teste.
line_width None or int None Especifica 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_conf bool True Exibe 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_labels bool True Exibe 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étodo Tipo de Retorno Descrição
draw_region() None Desenha uma região usando pontos, cores e espessura especificados.
queue_counts_display() None Exibe as contagens de filas na região especificada.
display_analytics() None Exibe estatísticas gerais para gerenciamento de estacionamento.
estimate_pose_angle() float Calcula o ângulo entre três pontos em uma pose de objeto.
draw_specific_points() None Desenha keypoints específicos na imagem.
plot_workout_information() None Desenha uma caixa de texto rotulada na imagem.
plot_angle_and_count_and_stage() None Visualiza o ângulo, a contagem de passos e o estágio para o monitoramento do treino.
plot_distance_and_line() None Exibe a distância entre os centroides e os conecta com uma linha.
display_objects_labels() None Anota caixas delimitadoras com rótulos de classe de objeto.
seg_bbox() None Desenha contornos para objetos segmentados e, opcionalmente, os rotula.
visioneye() None Mapeia e conecta os centroides dos objetos a um ponto "ocular" visual.
circle_label() None Desenha um rótulo circular no lugar de uma caixa delimitadora.
text_label() None Desenha um rótulo retangular no lugar 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:

Atributo Tipo Descrição
plot_im np.ndarray Imagem com sobreposições visuais, como contagens, efeitos de desfoque ou aprimoramentos específicos da solução.
in_count int Número total de objetos detectados entrando na zona definida no fluxo de vídeo.
out_count int Número total de objetos detectados saindo da zona definida no fluxo de vídeo.
classwise_count Dict[str, int] Dicionário registrando contagens de objetos de entrada/saída por classe para análises avançadas.
queue_count int Número de objetos atualmente dentro de uma fila predefinida ou área de espera (adequado para gestão de filas).
workout_count int Número total de repetições de exercícios concluídas durante o rastreamento de exercícios.
workout_angle float Ângulo da articulação ou da pose calculado durante o treino para avaliação da forma.
workout_stage str Estágio atual do treino ou fase do movimento (por exemplo, 'subindo', 'descendo').
pixels_distance float Distância baseada em pixel entre dois objetos ou pontos, por exemplo, caixas delimitadoras (adequado para cálculo de distância).
available_slots int Número de vagas desocupadas numa área monitorizada (adequado para gestão de estacionamento).
filled_slots int Número de vagas ocupadas numa área monitorizada (adequado para gestão de estacionamento).
email_sent bool Indica se um e-mail de notificação ou alerta foi enviado com sucesso (adequado para alarme de segurança).
total_tracks int Número total de rastreamentos de objetos únicos observados durante a análise de vídeo.
region_counts Dict[str, int] Contagens de objetos dentro de regiões ou zonas definidas pelo utilizador.
speed_dict Dict[str, float] Dicionário track-wise de velocidades de objetos calculadas, útil para análise de velocidade.
total_crop_objects int Número total de imagens de objetos recortadas geradas pela solução ObjectCropper.
speed Dict[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 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.



📅 Criado há 1 ano ✏️ Atualizado há 5 dias

Comentários