Meet YOLO26: next-gen vision AI.

Link to this sectionContagem de objetos em diferentes regiões usando Ultralytics YOLO 🚀#

Link to this sectionO que é a contagem de objetos em regiões?#

A contagem de objetos em regiões com Ultralytics YOLO26 envolve a determinação precisa do número de objetos dentro de áreas especificadas usando visão computacional avançada. Esta abordagem é valiosa para otimizar processos, aumentar a segurança e melhorar a eficiência em várias aplicações.



Watch: Object Counting in Different Regions using Ultralytics YOLO26 | Ultralytics Solutions 🚀

Link to this sectionVantagens da contagem de objetos em regiões#

  • Precisão e exatidão: A contagem de objetos em regiões com visão computacional avançada garante contagens precisas e exatas, minimizando os erros frequentemente associados à contagem manual.
  • Melhoria da eficiência: A contagem automatizada de objetos aumenta a eficiência operacional, fornecendo resultados em tempo real e simplificando processos em diferentes aplicações.
  • Versatilidade e aplicação: A versatilidade da contagem de objetos em regiões torna-a aplicável em vários domínios, desde a fabricação e vigilância até ao monitoramento de tráfego, contribuindo para a sua ampla utilidade e eficácia.

Link to this sectionAplicações no mundo real#

VarejoRuas comerciais
Contagem de pessoas em diferentes regiões usando Ultralytics YOLO26Contagem de multidões em diferentes regiões usando Ultralytics YOLO26
Contagem de pessoas em diferentes regiões usando Ultralytics YOLO26Contagem de multidões em diferentes regiões usando Ultralytics YOLO26

Link to this sectionExemplos de uso#

Contagem de regiões usando Ultralytics YOLO
 import cv2

 from ultralytics import solutions

 cap = cv2.VideoCapture("path/to/video.mp4")
 assert cap.isOpened(), "Error reading video file"

 # Pass region as list
 # region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

 # Pass region as dictionary
 region_points = {
     "region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
     "region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
 }

 # Video writer
 w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
 video_writer = cv2.VideoWriter("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

 # Initialize region counter object
 regioncounter = solutions.RegionCounter(
     show=True,  # display the frame
     region=region_points,  # pass region points
     model="yolo26n.pt",  # model for counting in regions, e.g., yolo26s.pt
 )

 # Process video
 while cap.isOpened():
     success, im0 = cap.read()

     if not success:
         print("Video frame is empty or processing is complete.")
         break

     results = regioncounter(im0)

     # print(results)  # access the output

     video_writer.write(results.plot_im)

 cap.release()
 video_writer.release()
 cv2.destroyAllWindows()  # destroy all opened windows
Código de exemplo Ultralytics

O módulo de contagem de regiões da Ultralytics está disponível na nossa secção de exemplos. Podes explorar este exemplo para personalizar o código e modificá-lo de acordo com o teu caso de uso específico.

Link to this sectionArgumentos do RegionCounter#

Aqui tens uma tabela com os argumentos do RegionCounter:

ArgumentoTipoPredefiniçãoDescrição
modelstrNoneCaminho para um ficheiro de modelo YOLO da Ultralytics.
regionlist'[(20, 400), (1260, 400)]'Lista de pontos que definem a região de contagem.

A solução RegionCounter permite a utilização de parâmetros de rastreamento de objetos:

ArgumentoTipoPredefiniçãoDescrição
trackerstr'botsort.yaml'Especifica o algoritmo de rastreamento a ser usado. As opções integradas são: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.1Define 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.
verboseboolTrueControla a exibição dos resultados de rastreio, fornecendo uma saída visual dos objetos rastreados.
devicestrNoneEspecifica o dispositivo para inferência (p. ex., 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.

Adicionalmente, as seguintes definições de visualização são suportadas:

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. Proporciona personalização visual para maior clareza.
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.

Link to this sectionFAQ#

Link to this sectionO que é a contagem de objetos em regiões especificadas usando Ultralytics YOLO26?#

A contagem de objetos em regiões especificadas com Ultralytics YOLO26 envolve a deteção e contagem do número de objetos dentro de áreas definidas usando visão computacional avançada. Este método preciso aumenta a eficiência e a exatidão em várias aplicações como fabricação, vigilância e monitoramento de tráfego.

Link to this sectionComo executo o script de contagem de objetos baseada em regiões com Ultralytics YOLO26?#

Segue estes passos para executar a contagem de objetos no Ultralytics YOLO26:

  1. Clona o repositório da Ultralytics e navega para o diretório:

    git clone https://github.com/ultralytics/ultralytics
    cd ultralytics/examples/YOLOv8-Region-Counter
  2. Executa o script de contagem de regiões:

    python yolov8_region_counter.py --source "path/to/video.mp4" --save-img

Para mais opções, visita a secção Exemplos de Utilização.

Link to this sectionPor que devo usar o Ultralytics YOLO26 para contagem de objetos em regiões?#

Usar o Ultralytics YOLO26 para contagem de objetos em regiões oferece várias vantagens:

  1. Processamento em tempo real: A arquitetura do YOLO26 permite inferência rápida, tornando-a ideal para aplicações que requerem resultados de contagem imediatos.
  2. Definição flexível de regiões: A solução permite que definas várias regiões personalizadas como polígonos, retângulos ou linhas para atender às tuas necessidades específicas de monitoramento.
  3. Suporte a várias classes: Conta diferentes tipos de objetos simultaneamente dentro das mesmas regiões, fornecendo análises abrangentes.
  4. Capacidades de integração: Integra facilmente com sistemas existentes através da API Python ou interface de linha de comando da Ultralytics.

Explora benefícios mais profundos na secção Vantagens.

Link to this sectionQuais são algumas aplicações reais da contagem de objetos em regiões?#

A contagem de objetos com Ultralytics YOLO26 pode ser aplicada a inúmeros cenários do mundo real:

  • Análise de retalho: Conta clientes em diferentes secções da loja para otimizar o layout e a alocação de pessoal.
  • Gestão de tráfego: Monitoriza o fluxo de veículos em segmentos rodoviários ou cruzamentos específicos.
  • Fabricação: Rastreia produtos movendo-se através de diferentes zonas de produção.
  • Operações de armazém: Conta itens de inventário em áreas de armazenamento designadas.
  • Segurança pública: Monitoriza a densidade de multidões em zonas específicas durante eventos.

Explora mais exemplos na secção Aplicações do Mundo Real e a solução TrackZone para capacidades adicionais de monitoramento baseado em zonas.

Comentários