YOLO Vision 2026:

Ultralytics Solutions: Utiliza o YOLO26 para Resolver Problemas do Mundo Real#

As Ultralytics Solutions fornecem aplicações de ponta de modelos YOLO, oferecendo soluções do mundo real como contagem de objetos, desfoque e sistemas de segurança, melhorando a eficiência e a accuracy em diversos setores. Descobre o poder do YOLO26 para implementações práticas e impactantes.

Ultralytics Solutions Thumbnail



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

Soluções#

Aqui tens a nossa lista selecionada de soluções Ultralytics que podes usar para criar projetos incríveis de computer vision.

  • Analytics: Realiza análises de dados abrangentes para descobrir padrões e tomar decisões informadas, aproveitando o YOLO26 para análises descritivas, preditivas e prescritivas.
  • Distance Calculation: Calcula distâncias entre objetos utilizando centroides de bounding box no YOLO26, essencial para análise espacial.
  • Heatmaps: Utiliza mapas de calor de deteção para visualizar a intensidade de dados numa matriz, fornecendo insights claros em tarefas de computador vision.
  • Instance Segmentation with Object Tracking: Implementa instance segmentation e rastreamento de objetos com o YOLO26 para alcançar limites de objetos precisos e monitorização contínua.
  • Live Inference with Streamlit: Aproveita o poder do YOLO26 para object detection em tempo real diretamente através do teu navegador web com uma interface Streamlit fácil de usar.
  • Object Blurring: Aplica o desfoque de objetos utilizando o YOLO26 para proteger a privacidade no processamento de imagens e vídeos.
  • Object Counting: Aprende a realizar contagem de objetos em tempo real com o YOLO26. Adiciona a perícia para contar com precisão objetos em streams de vídeo ao vivo.
  • Object Counting in Regions: Conta objetos em regiões específicas utilizando o YOLO26 para deteção precisa em várias áreas.
  • Object Cropping: Domina o corte de objetos com o YOLO26 para extração precisa de objetos de imagens e vídeos.
  • Parking Management: Organiza e direciona o fluxo de veículos em áreas de estacionamento com o YOLO26, otimizando a utilização do espaço e a experiência do utilizador.
  • Queue Management: Implementa sistemas eficientes de gestão de filas para minimizar os tempos de espera e melhorar a produtividade usando o YOLO26.
  • Security Alarm System: Cria um sistema de alarme de segurança com o YOLO26 que aciona alertas ao detetar novos objetos. Personaliza o sistema para satisfazer as tuas necessidades específicas.
  • Similarity Search: Ativa a recuperação inteligente de imagens combinando embeddings do OpenAI CLIP com a pesquisa de similaridade de cosseno, permitindo consultas em linguagem natural como "person holding a bag" ou "vehicles in motion."
  • Speed Estimation: Estima a velocidade de objetos usando o YOLO26 e técnicas de rastreamento de objetos, cruciais para aplicações como veículos autónomos e monitorização de tráfego.
  • Track Objects in Zone: Aprende a rastrear objetos dentro de zonas específicas de fotogramas de vídeo utilizando o YOLO26 para uma monitorização precisa e eficiente.
  • VisionEye View Objects Mapping: Desenvolve sistemas que imitam o foco do olho humano em objetos específicos, melhorando a capacidade do computador de discernir e priorizar detalhes.
  • Workouts Monitoring: Descobre como monitorizar treinos usando o YOLO26. Aprende a rastrear e analisar várias rotinas de fitness em tempo real.

Argumentos das Soluções#

ArgumentoTipoPredefiniçãoDescrição
modelstrNoneCaminho para um ficheiro de modelo YOLO da Ultralytics.
regionlist ou dictNonePontos que definem a região de interesse, seja uma lista de tuplas (x, y) ou um dicionário que mapeia nomes de regiões para listas de pontos para múltiplas regiões (apenas RegionCounter). Quando None, as soluções que exigem uma região recorrem a um padrão pré-definido.
show_inboolTrueFlag para controlar se os números de entrada devem ser exibidos no stream de vídeo.
show_outboolTrueFlag para controlar se os números de saída devem ser exibidos no stream de vídeo.
analytics_typestr'line'Tipo de grafo, ou seja, line, bar, area ou pie.
colormapintcv2.COLORMAP_DEEPGREENMapa de cores a usar para o mapa de calor.
line_widthint2Espessura da linha para as caixas, pontos-chave e contagens que a solução desenha.
verboseboolTrueAtiva o registro por quadro da solução contendo formato de entrada, contagens de classes e velocidade de processamento. A chamada de rastreamento em si é sempre silenciosa.
json_filestrNoneCaminho para o ficheiro JSON que contém todos os dados de coordenadas de estacionamento.
up_anglefloat145.0Limiar de ângulo para a pose 'cima'.
kptslist[int]'[6, 8, 10]'Lista de três índices de pontos-chave usados para monitorizar exercícios. Estes pontos-chave correspondem a articulações ou partes do corpo, como ombros, cotovelos e pulsos, para exercícios como flexões, elevações, agachamentos e abdominais.
down_angleint90Limiar de ângulo para a pose 'baixo'.
blur_ratiofloat0.5Ajusta a porcentagem da intensidade do desfoque (blur), com valores no intervalo 0.1 - 1.0.
crop_dirstr'cropped-detections'Nome do diretório para armazenar deteções recortadas.
recordsint5Contagem total de deteções para disparar um e-mail com o sistema de alarme de segurança.
vision_pointtuple[int, int](20, 20)O ponto onde a visão irá rastrear objetos e desenhar caminhos usando a VisionEye Solution.
sourcestrNoneCaminho para a fonte de entrada (vídeo, RTSP, etc.). Apenas utilizável com a interface de linha de comandos (CLI) das Solutions.
figsizetuple[float, float](12.8, 7.2)Tamanho da figura para gráficos de análise como mapas de calor ou gráficos.
fpsfloat30.0Frames por segundo usados para cálculos de velocidade.
max_histint5Pontos históricos máximos a rastrear por objeto para cálculos de velocidade/direção.
meter_per_pixelfloat0.05Fator de escala usado para converter a distância em píxeis para unidades do mundo real.
max_speedint120Limite de velocidade máxima em sobreposições visuais (usado em alertas).
datastr'images'Caminho para o diretório de imagens usado para pesquisa de similaridade.
imgszint640Tamanho da imagem de entrada para inferência do modelo.
Argumentos de rastreio

As Soluções encaminham alguns dos seus argumentos para track, nomeadamente tracker, conf, iou, classes e device.

ArgumentoTipoPredefiniçãoDescrição
trackerstr'botsort.yaml'Especifica o algoritmo de rastreamento a utilizar. Opções integradas: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.25Define o limiar de confiança para as deteções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos.
ioufloat0.7Define o limiar de Intersection over Union (IoU) para filtrar deteções sobrepostas.
classeslistNoneFiltra resultados por índice de classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas.
devicestrNoneEspecifica o dispositivo para inferência (por exemplo, cpu, cuda:0 ou 0). Permite aos utilizadores selecionar entre CPU, uma GPU específica ou outros dispositivos de computação para a execução do modelo.
Argumentos de visualização

Podes 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 em uma janela. Útil para feedback visual imediato durante o desenvolvimento ou teste.
show_confboolTrueExibe a pontuação de confiança para cada detecção ao lado do rótulo. Fornece uma visão sobre a 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 a classe principal Annotator, 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 contagens de filas na região especificada.
display_analytics()NoneExibe estatísticas gerais para gerenciamento de estacionamentos.
estimate_pose_angle()floatCalcula o ângulo entre três pontos na pose de um objeto.
draw_specific_kpts()np.ndarrayDesenha pontos-chave específicos na imagem.
plot_workout_information()intDesenha 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 monitoramento de treino.
plot_distance_and_line()NoneExibe a distância entre centróides e os conecta com uma linha.
display_objects_labels()NoneAnota caixas delimitadoras com rótulos de classe de objeto.
sweep_annotator()NoneVisualiza uma linha de varredura vertical e um rótulo opcional.
visioneye()NoneMapeia e conecta centróides de objetos a um ponto de "olho" visual.
adaptive_label()NoneDesenha um rótulo de fundo circular ou retangular no centro de uma caixa delimitadora.

Trabalhando com SolutionResults#

Exceto Similarity Search, cada chamada de Solution devolve um objeto SolutionResults.

  • 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="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 tem os seguintes atributos:

AtributoTipoDescrição
plot_imnp.ndarrayImagem com sobreposições visuais, como contagens, efeitos de desfoque ou melhorias específicas 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 contagens de entrada/saída de objetos por classe para análises avançadas.
queue_countintNúmero de objetos atualmente dentro de uma fila ou área de espera predefinida (adequado para gerenciamento de filas).
workout_countlist[int]Contagens de repetições de treino por faixa do AI Gym (uma entrada por indivíduo rastreado no momento).
workout_anglelist[float]Ângulos de exercício por faixa do AI Gym (uma entrada por indivíduo rastreado no momento).
workout_stagelist[str]Etapa atual do treino por faixa do AI Gym (uma entrada por indivíduo rastreado no momento).
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 de velocidades de objetos calculadas, útil para análise de velocidade.
total_crop_objectsintNúmero total de imagens de objetos cortados geradas pela solução ObjectCropper.
speedDict[str, float]Dicionário contendo métricas de desempenho para rastreamento e processamento de solução.

Para mais detalhes, consulta a SolutionResults class documentation.

Uso de Soluções via CLI#

Informações de 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, Trackzone

Sintaxe

yolo SOLUTIONS SOLUTION_NAME ARGS
  • SOLUTIONS é uma palavra-chave necessária.
  • SOLUTION_NAME é um de: ['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye', 'region', 'security', 'parking'].
  • ARGS (opcional) são pares personalizados de arg=value, tais como show_in=True, para substituir as definições predefinidas.
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ê dominou 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 amigável.

Para começar, lê o nosso Contributing Guide para obteres diretrizes sobre como abrir um Pull Request (PR) 🛠️. Contamos com as tuas contribuições!

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

FAQ#

  • O Ultralytics YOLO26 pode ser usado para contagem de objetos em tempo real, tirando partido das suas capacidades avançadas de deteção de objetos. Podes seguir o nosso guia detalhado sobre Object Counting para configurar o YOLO26 para análise de streams de vídeo ao vivo. Basta instalar o YOLO26, carregar o teu modelo e processar fotogramas de vídeo para contar objetos dinamicamente.

  • O Ultralytics YOLO26 melhora os sistemas de segurança ao oferecer deteção de objetos em tempo real e mecanismos de alerta. Ao empregar o YOLO26, podes criar um sistema de alarme de segurança que aciona alertas quando novos objetos são detetados na área de vigilância. Aprende a configurar um Security Alarm System com o YOLO26 para uma monitorização de segurança robusta.

  • O Ultralytics YOLO26 pode melhorar significativamente os sistemas de gestão de filas ao contar e rastrear com precisão as pessoas nas filas, ajudando assim a reduzir os tempos de espera e a otimizar a eficiência do serviço. Segue o nosso guia detalhado sobre Queue Management para aprender a implementar o YOLO26 para monitorização e análise eficazes de filas.

  • Sim, o Ultralytics YOLO26 pode ser eficazmente utilizado para monitorizar treinos através do rastreamento e análise de rotinas de fitness em tempo real. Isto permite uma avaliação precisa da forma e do desempenho do exercício. Explora o nosso guia sobre Workouts Monitoring para aprender a configurar um sistema de monitorização de treinos potenciado por IA utilizando o YOLO26.

  • O Ultralytics YOLO26 pode gerar mapas de calor para visualizar a intensidade de dados numa dada área, destacando regiões de alta atividade ou interesse. Esta funcionalidade é particularmente útil para compreender padrões e tendências em várias tarefas de computer vision. Sabe mais sobre a criação e utilização de Heatmaps com o YOLO26 para análise e visualização abrangentes de dados.

Comentários