Multi-Object Tracking (MOT)
Theo dõi nhiều đối tượng (MOT) theo dõi mọi đối tượng trong video và duy trì một ID cho mỗi đối tượng qua các frame. Tìm hiểu cách tracker liên kết các detection, các metric và code.
Theo dõi nhiều đối tượng (MOT) là tác vụ thị giác máy tính theo dõi đồng thời mọi đối tượng quan tâm xuyên suốt một video, cấp cho mỗi đối tượng một ID cố định để các vị trí của đối tượng qua từng khung hình tạo thành quỹ đạo. Không thể biết trước số lượng đối tượng và số lượng này thay đổi liên tục khi người hoặc phương tiện đi vào, rời khỏi, cắt ngang đường đi và khuất sau nhau; do đó, ở mỗi khung hình, bộ theo dõi phải quyết định detection nào tiếp tục các track hiện có, detection nào bắt đầu track mới và track nào đã kết thúc. MOT là dạng theo dõi đối tượng phổ biến nhất; theo dõi một đối tượng (SOT) theo dõi một mục tiêu được chọn ở khung hình đầu tiên, bất kể lớp của mục tiêu.
Cách theo dõi nhiều đối tượng hoạt động#
Hầu hết hệ thống MOT dùng phương pháp theo dõi dựa trên detection: model phát hiện đối tượng tìm đối tượng trong từng khung hình, còn bộ theo dõi liên kết các detection đó với những track hiện có. Bộ theo dõi dự đoán vị trí của mỗi track bằng model chuyển động, thường là bộ lọc Kalman, tạo ma trận chi phí giữa các track dự đoán và detection mới dựa trên độ chồng lấp của bounding box (IoU), chuyển động và, nếu cần, embedding hình ảnh từ model tái nhận dạng đối tượng (Re-ID), rồi giải bài toán ghép cặp dưới dạng bài toán gán tuyến tính bằng thuật toán Hungary. Track được ghép giữ nguyên ID; detection chưa ghép nhưng có độ tin cậy cao sẽ bắt đầu track mới; track không được ghép sẽ được giữ ở trạng thái “mất dấu” trong một số khung hình để có thể khôi phục sau khi bị che khuất.
Đám đông khiến bước liên kết trở nên khó khăn, vì những người bị che khuất một phần tạo ra detection có độ tin cậy thấp mà ngưỡng đơn giản có thể loại bỏ. ByteTrack giữ lại các detection này cho lượt ghép cặp thứ hai:
Các thiết kế bộ theo dõi#
- SORT và các phiên bản kế nhiệm: SORT (2016) kết hợp bộ lọc Kalman, chi phí IoU và thuật toán Hungary. DeepSORT bổ sung đặc trưng hình ảnh để khôi phục danh tính sau khi bị che khuất; ByteTrack thêm lượt xử lý các detection có độ tin cậy thấp; OC-SORT giúp ước lượng chuyển động ổn định hơn khi bị che khuất; còn BoT-SORT bổ sung bù chuyển động camera cho camera đang di chuyển.
- Phát hiện và embedding kết hợp (FairMOT): FairMOT huấn luyện một mạng duy nhất để đồng thời tạo detection và embedding Re-ID, nhờ đó không cần thêm model thứ hai để xử lý đặc trưng hình ảnh.
- Theo dõi end-to-end (MOTR): MOTR và TrackFormer mở rộng Transformer DETR bằng các truy vấn track mang theo danh tính của từng đối tượng từ khung hình này sang khung hình tiếp theo, nhờ đó quá trình liên kết được học trong lúc huấn luyện.
Chế độ track của Ultralytics YOLO chạy tracking-by-detection trên mọi model phát hiện YOLO26, segmentation, pose hoặc hộp định hướng, với sáu tracker tích hợp được chọn qua đối số tracker: TrackTrack (mặc định), BoT-SORT, ByteTrack, OC-SORT, Deep OC-SORT và FastTracker. Ví dụ này theo dõi người trong một clip ngắn và đếm số frame mỗi ID còn tồn tại:
from collections import Counter
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
video = "https://github.com/ultralytics/assets/releases/download/v0.0.0/decelera_portrait_min.mov"
# Theo dõi người (lớp COCO 0) và đếm số khung hình xuất hiện của mỗi ID track
frames_per_id = Counter()
for result in model.track(video, stream=True, classes=[0]):
if result.boxes.is_track:
frames_per_id.update(result.boxes.id.int().tolist())
# Năm quỹ đạo dài nhất theo định dạng (ID track, số khung hình)
print(frames_per_id.most_common(5))Mỗi cặp gồm một ID track và số khung hình ID đó được duy trì, vì vậy ID tồn tại lâu cho biết bộ theo dõi đã tiếp tục theo dõi một người qua nhiều khung hình.
Đo lường chất lượng tracking#
MOT được đánh giá trên các benchmark như MOT17, MOT20 dành cho đám đông dày đặc và DanceTrack, nơi các vũ công trông giống nhau và di chuyển khó đoán. Ba metric phổ biến nhất là:
- MOTA: Một trừ đi tổng số đối tượng bị bỏ sót, false positive và lần đổi ID, chia cho số đối tượng ground truth; vì vậy metric này chủ yếu phản ánh chất lượng detection.
- IDF1: Điểm F1 của các detection được nhận dạng chính xác, đo lường mức độ nhất quán khi mỗi đối tượng thực giữ cùng một ID.
- HOTA: Trung bình nhân của độ chính xác detection và độ chính xác liên kết, đánh giá ngang nhau việc tìm thấy đối tượng và liên kết chúng.
Thách thức#
- Che khuất: Đối tượng bị khuất trong nhiều khung hình có thể quay lại với ID mới nếu dự đoán chuyển động hoặc ghép cặp hình ảnh không khôi phục được ID cũ.
- Đám đông và ngoại hình tương tự: Trong nhóm đông người hoặc các vận động viên mặc đồng phục, chi phí IoU và hình ảnh trở nên khó phân biệt, khiến các ID bị hoán đổi.
- Chuyển động camera: Camera lia hoặc rung làm mọi bounding box cùng di chuyển, phá vỡ các model chuyển động vận tốc không đổi trừ khi bộ theo dõi có cơ chế bù chuyển động.
- Ngân sách thời gian thực: Detection, liên kết và mọi model Re-ID đều dùng chung ngân sách thời gian của mỗi khung hình; model Re-ID riêng biệt cần chạy thêm một lượt mạng cho mỗi đối tượng được phát hiện.










