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#
| Varejo | Ruas comerciais |
|---|---|
![]() | ![]() |
| Contagem de pessoas em diferentes regiões usando Ultralytics YOLO26 | Contagem de multidões em diferentes regiões usando Ultralytics YOLO26 |
Link to this sectionExemplos de uso#
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 windowsO 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:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
model | str | None | Caminho para um ficheiro de modelo YOLO da Ultralytics. |
region | list | '[(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:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
tracker | str | '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. |
conf | float | 0.1 | Define o limiar de confiança para as deteções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos. |
iou | float | 0.7 | Define o limiar de Intersection over Union (IoU) para filtrar deteções sobrepostas. |
classes | list | None | Filtra 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 rastreio, fornecendo uma saída visual dos objetos rastreados. |
device | str | None | Especifica 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:
| 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. Proporciona personalização visual para maior clareza. |
show_conf | bool | True | Exibe 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_labels | bool | True | Exibe 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:
-
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 -
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:
- 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.
- 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.
- Suporte a várias classes: Conta diferentes tipos de objetos simultaneamente dentro das mesmas regiões, fornecendo análises abrangentes.
- 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.

