Link to this sectionTrackZone usando Ultralytics YOLO26#
Link to this sectionO que é o TrackZone?#
O TrackZone é especializado em monitorar objetos dentro de áreas designadas de um quadro em vez de todo o quadro. Construído sobre Ultralytics YOLO26, ele integra detecção e rastreamento de objetos especificamente dentro de zonas para vídeos e feeds de câmera ao vivo. Os algoritmos avançados e as tecnologias de deep learning do YOLO26 o tornam a escolha perfeita para casos de uso em tempo real, oferecendo rastreamento de objetos preciso e eficiente em aplicações como monitoramento de multidões e vigilância.
Watch: How to Track Objects in Region using Ultralytics YOLO26 | TrackZone 🚀
Link to this sectionVantagens do Rastreamento de Objetos em Zonas (TrackZone)#
- Análise Direcionada: Rastrear objetos dentro de zonas específicas permite insights mais focados, possibilitando monitoramento e análise precisos de áreas de interesse, como pontos de entrada ou zonas restritas.
- Eficiência Melhorada: Ao restringir o escopo de rastreamento a zonas definidas, o TrackZone reduz a sobrecarga computacional, garantindo processamento mais rápido e desempenho ideal.
- Segurança Aprimorada: O rastreamento zonal melhora a vigilância ao monitorar áreas críticas, auxiliando na detecção precoce de atividades incomuns ou violações de segurança.
- Soluções Escaláveis: A capacidade de focar em zonas específicas torna o TrackZone adaptável a vários cenários, desde espaços de varejo até configurações industriais, garantindo integração perfeita e escalabilidade.
Link to this sectionAplicações no Mundo Real#
| Agricultura | Transporte |
|---|---|
| Rastreamento de Plantas no Campo usando Ultralytics YOLO26 | Rastreamento de Veículos na Estrada usando Ultralytics YOLO26 |
# Run a trackzone example
yolo solutions trackzone show=True
# Pass a source video
yolo solutions trackzone source="path/to/video.mp4" show=True
# Pass region coordinates
yolo solutions trackzone show=True region="[(150, 150), (1130, 150), (1130, 570), (150, 570)]"O TrackZone depende da lista region para saber qual parte do quadro monitorar. Defina o polígono para corresponder à zona física de seu interesse (portas, portões, etc.) e mantenha show=True ativado durante a configuração para que você possa verificar se a sobreposição se alinha com o feed de vídeo.
Link to this sectionArgumentos do TrackZone#
Aqui está uma tabela com os argumentos do TrackZone:
| 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. |
A solução TrackZone inclui suporte para parâmetros de track:
| 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. |
Além disso, as seguintes opções de visualização estão disponíveis:
| 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. |
Link to this sectionFAQ#
Link to this sectionComo rastrear objetos em uma área ou zona específica de um quadro de vídeo usando Ultralytics YOLO26?#
Rastrear objetos em uma área ou zona definida de um quadro de vídeo é simples com o Ultralytics YOLO26. Basta usar o comando fornecido abaixo para iniciar o rastreamento. Esta abordagem garante uma análise eficiente e resultados precisos, tornando-a ideal para aplicações como vigilância, gestão de multidões ou qualquer cenário que exija rastreamento zonal.
yolo solutions trackzone source="path/to/video.mp4" show=TrueLink to this sectionComo posso usar o TrackZone em Python com Ultralytics YOLO26?#
Com apenas algumas linhas de código, você pode configurar o rastreamento de objetos em zonas específicas, tornando fácil a integração em seus projetos.
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.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 = [(150, 150), (1130, 150), (1130, 570), (150, 570)]
# Video writer
video_writer = cv2.VideoWriter("object_counting_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Init trackzone (object tracking in zones, not complete frame)
trackzone = solutions.TrackZone(
show=True, # display the output
region=region_points, # pass region points
model="yolo26n.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
results = trackzone(im0)
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows()Link to this sectionComo configuro os pontos da zona para processamento de vídeo usando o Ultralytics TrackZone?#
Configurar pontos de zona para processamento de vídeo com o Ultralytics TrackZone é simples e personalizável. Você pode definir e ajustar diretamente as zonas através de um script Python, permitindo um controle preciso sobre as áreas que você deseja monitorar.
# Define region points
region_points = [(150, 150), (1130, 150), (1130, 570), (150, 570)]
# Initialize trackzone
trackzone = solutions.TrackZone(
show=True, # display the output
region=region_points, # pass region points
)