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.
![]()
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
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
model | str | None | Caminho para um arquivo de modelo Ultralytics YOLO. |
region | list | '[(20, 400), (1260, 400)]' | Lista de pontos definindo a região de contagem. |
show_in | bool | True | Sinalizador para controlar se as contagens de entrada devem ser exibidas no fluxo de vídeo. |
show_out | bool | True | Sinalizador para controlar se as contagens de saída devem ser exibidas no fluxo de vídeo. |
analytics_type | str | 'line' | Tipo de gráfico, i.e., line, bar, area ou pie. |
colormap | int | cv2.COLORMAP_DEEPGREEN | 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 'up' (subida). |
kpts | list[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_angle | int | 90 | Limite de ângulo para a pose 'down' (descida). |
blur_ratio | float | 0.5 | Ajusta a porcentagem da intensidade de desfoque, com valores na faixa de 0.1 - 1.0. |
crop_dir | str | 'cropped-detections' | Nome do diretório para armazenar detecções cortadas. |
records | int | 5 | Contagem total de detecções para acionar um e-mail com 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.). Apenas utilizável com a interface de linha de comando (CLI) de Soluções. |
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 | Quadros por segundo usados para cálculos de velocidade. |
max_hist | int | 5 | Pontos históricos máximos 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 usado para busca de similaridade. |
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 | Predefiniçã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.1 | Define o limite de confiança para as detecções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos. |
iou | float | 0.7 | Define o limite de Intersection over Union (IoU) para filtrar detecções sobrepostas. |
classes | list | None | Filtra resultados pelo índice da 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. |
Você pode usar show_conf, show_labels e outros argumentos mencionados para personalizar a visualização.
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
show | bool | False | Se True, exibe as imagens ou vídeos anotados numa janela. Útil para feedback visual imediato durante o desenvolvimento ou teste. |
line_width | int or None | None | Especifica 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_conf | bool | True | Exibe 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_labels | bool | True | Exibe 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é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 fila 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 na pose de um objeto. |
draw_specific_points() | None | Desenha pontos-chave 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 repetições e o estágio para o monitoramento de treino. |
plot_distance_and_line() | None | Exibe a distância entre centroides e os conecta com uma linha. |
display_objects_labels() | None | Anota caixas delimitadoras com rótulos de classe de objeto. |
sweep_annotator() | None | Visualize uma linha de varredura vertical e um rótulo opcional. |
visioneye() | None | Mapeia e conecta centroides de objetos a um ponto visual de "olho". |
adaptive_label() | None | Desenha 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_counteclasswise_count.
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_countO objeto SolutionResults possui 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 que registra as contagens de entrada/saída de objetos 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 gerenciamento de filas). |
workout_count | int | Número total de repetições de treino concluídas durante o rastreamento de exercícios. |
workout_angle | float | Ângulo da articulação ou pose calculado durante o treino para avaliação de forma. |
workout_stage | str | Estágio atual do treino ou fase do movimento (por exemplo, 'subida', 'descida'). |
pixels_distance | float | Distância baseada em pixels entre dois objetos ou pontos, por exemplo, caixas delimitadoras. (Adequado para cálculo de distância). |
available_slots | int | Número de vagas desocupadas em uma área monitorada (adequado para gerenciamento de estacionamento). |
filled_slots | int | Número de vagas ocupadas em uma área monitorada. (Adequado para gerenciamento 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 usuário. |
speed_dict | Dict[str, float] | Dicionário por rastreamento das velocidades dos objetos calculadas, útil para análise de velocidade. |
total_crop_objects | int | Número total de imagens de objetos recortados geradas pela solução ObjectCropper. |
speed | Dict[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
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, comoshow_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 pathContribua 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.