Saltar para o conteúdo

Contagem de objectos em diferentes regiões utilizando Ultralytics YOLOv8 🚀

O que é a contagem de objectos nas regiões?

A contagem de objectos em regiões com Ultralytics YOLOv8 envolve a determinação precisa do número de objectos em áreas especificadas utilizando 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.



Ver: Ultralytics YOLOv8 Contagem de objectos em regiões múltiplas e móveis

Vantagens da contagem de objectos nas regiões?

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

Aplicações no mundo real

Retalho Ruas do mercado
Contagem de pessoas em diferentes regiões utilizando Ultralytics YOLOv8 Contagem de multidões em diferentes regiões utilizando Ultralytics YOLOv8
Contagem de pessoas em diferentes regiões utilizando Ultralytics YOLOv8 Contagem de multidões em diferentes regiões utilizando Ultralytics YOLOv8

Exemplo de contagem de regiões

 import cv2
 from ultralytics import solutions

 cap = cv2.VideoCapture("Path/to/video/file.mp4")
 assert cap.isOpened(), "Error reading video file"
 w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))

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

 # 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
 video_writer = cv2.VideoWriter("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

 # Init Object Counter
 region = solutions.RegionCounter(
     show=True,
     region=region_points,
     model="yolo11n.pt",
 )

 # Process video
 while cap.isOpened():
     success, im0 = cap.read()
     if not success:
         print("Video frame is empty or video processing has been successfully completed.")
         break
     im0 = region.count(im0)
     video_writer.write(im0)

 cap.release()
 video_writer.release()
 cv2.destroyAllWindows()

Ultralytics Exemplo de código

O módulo de contagem de regiões Ultralytics está disponível na nossa secção de exemplos. Pode explorar este exemplo para personalização do código e modificá-lo para se adequar ao seu caso de utilização específico.

Argumento RegionCounter

Aqui está uma tabela com os RegionCounter argumentos:

Nome Tipo Predefinição Descrição
model str None Caminho para Ultralytics YOLO Modelo de ficheiro
region list [(20, 400), (1260, 400)] Lista de pontos que definem a região de contagem.
line_width int 2 Espessura da linha para caixas delimitadoras.
show bool False Sinalizador para controlar se o fluxo de vídeo deve ser apresentado.

FAQ

O que é a contagem de objectos em regiões específicas utilizando Ultralytics YOLOv8 ?

A contagem de objectos em regiões específicas com Ultralytics YOLOv8 envolve a deteção e contagem do número de objectos em áreas definidas utilizando visão computacional avançada. Este método preciso aumenta a eficiência e a precisão em várias aplicações, como fabrico, vigilância e monitorização do tráfego.

Como é que executo o script de contagem de objectos com Ultralytics YOLOv8 ?

Siga estes passos para executar a contagem de objectos em Ultralytics YOLOv8 :

  1. Clone o repositório Ultralytics e navegue até ao diretório:

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

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

Para mais opções, visite a secção Contagem de regiões de execução.

Por que razão devo utilizar Ultralytics YOLOv8 para a contagem de objectos em regiões?

A utilização de Ultralytics YOLOv8 para a contagem de objectos em regiões oferece várias vantagens:

  • Precisão e exatidão: Minimiza os erros frequentemente observados na contagem manual.
  • Melhoria da eficiência: Fornece resultados em tempo real e simplifica os processos.
  • Versatilidade e aplicação: Aplica-se a vários domínios, aumentando a sua utilidade.

Explore mais benefícios na secção Vantagens.

As regiões definidas podem ser ajustadas durante a reprodução de vídeo?

Sim, com Ultralytics YOLOv8 , as regiões podem ser movidas interactivamente durante a reprodução de vídeo. Basta clicar e arrastar com o botão esquerdo do rato para reposicionar a região. Esta funcionalidade aumenta a flexibilidade para ambientes dinâmicos. Saiba mais na secção de dicas para regiões móveis.

Quais são algumas das aplicações reais da contagem de objectos em regiões?

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

  • Comércio retalhista: Contagem de pessoas para análise do tráfego pedonal.
  • Ruas do mercado: Gestão da densidade das multidões.

Explore mais exemplos na secção Aplicações do mundo real.

📅C riado há 11 meses ✏️ Atualizado há 10 dias

Comentários