Khám phá theo dõi đối tượng với Ultralytics ! Học cách track chuyển động, hành vi và tương tác trong video bằng cách sử dụng YOLO mô hình cho các ứng dụng thời gian thực.
Theo dõi đối tượng là một nhiệm vụ then chốt trong thị giác máy tính (CV) , bao gồm việc xác định các thực thể cụ thể trong một chuỗi video và theo dõi chuyển động của chúng qua các khung hình liên tiếp. Không giống như phân tích hình ảnh tĩnh, quá trình này đưa vào một chiều thời gian, cho phép hệ thống duy trì một danh tính duy nhất cho mỗi mục được phát hiện khi nó di chuyển qua một cảnh. Bằng cách gán một mã số nhận dạng (ID) cố định cho mỗi thực thể, các mô hình trí tuệ nhân tạo (AI) có thể phân tích quỹ đạo, tính toán tốc độ và hiểu các tương tác theo thời gian. Khả năng này rất cần thiết để chuyển đổi dữ liệu video thô thành thông tin chi tiết hữu ích, đóng vai trò là nền tảng cho các hệ thống hiểu video tiên tiến.
Các hệ thống theo dõi hiện đại thường hoạt động theo mô hình "theo dõi bằng phát hiện". Quy trình làm việc này bắt đầu với một mô hình phát hiện đối tượng , chẳng hạn như YOLO11 tiên tiến, định vị đối tượng trong từng khung hình riêng lẻ. Sau khi đối tượng được phát hiện và định vị bằng các hộp giới hạn , thuật toán theo dõi sẽ tiếp quản việc liên kết các phát hiện này với các đường đi hiện có từ các khung hình trước đó.
Quá trình này thường bao gồm ba bước quan trọng:
Mặc dù các thuật ngữ này thường được đề cập cùng nhau, nhưng chúng phục vụ những mục đích riêng biệt trong quy trình học máy (ML) .
Khả năng theo dõi các đối tượng một cách đáng tin cậy đang chuyển đổi nhiều ngành công nghiệp khác nhau bằng cách cho phép suy luận thời gian thực trong môi trường động.
Việc triển khai theo dõi hiệu suất cao rất đơn giản với ultralytics gói. Ví dụ sau đây minh họa cách tải một gói được đào tạo trước
YOLO11 người mẫu
Và track các đối tượng trong một tập tin video. Các track chế độ tự động xử lý phát hiện và gán ID.
from ultralytics import YOLO
# Load the official YOLO11 nano model
model = YOLO("yolo11n.pt")
# Track objects in a video source (use '0' for webcam)
# The 'show=True' argument visualizes the tracking IDs in real-time
results = model.track(source="https://supervision.roboflow.com/assets/", show=True)
# Print the unique IDs detected in the first frame
if results[0].boxes.id is not None:
print(f"Tracked IDs: {results[0].boxes.id.cpu().numpy()}")
Để nắm bắt đầy đủ các sắc thái của việc theo dõi, việc hiểu về Theo dõi Đa Đối tượng (MOT) sẽ rất hữu ích, đặc biệt tập trung vào việc xử lý nhiều mục tiêu cùng lúc trong các cảnh đông đúc. Hơn nữa, theo dõi thường được kết hợp với phân đoạn thực thể để track đường viền vật thể chính xác thay vì chỉ là các hộp giới hạn, mang lại mức độ chi tiết cao hơn cho các tác vụ như chụp ảnh y tế hoặc thao tác bằng rô-bốt .