Khám phá sức mạnh của Optical Flow trong thị giác máy tính. Tìm hiểu cách nó ước tính chuyển động, tăng cường phân tích video và thúc đẩy đổi mới trong AI.
Dòng quang học là một khái niệm cơ bản trong thị giác máy tính (cv) được sử dụng để mô tả chuyển động biểu kiến của các vật thể, bề mặt và cạnh trong một cảnh thị giác do chuyển động tương đối giữa người quan sát (như máy ảnh) và cảnh đó. Nó tính toán một trường các vectơ biểu diễn sự dịch chuyển của các mẫu độ sáng (pixel hoặc đặc điểm) giữa các khung hình liên tiếp trong một chuỗi video. Điều này cung cấp thông tin có giá trị về động lực chuyển động trong video, tạo thành cơ sở cho nhiều tác vụ thị giác cấp cao hơn.
Giả định cốt lõi đằng sau hầu hết các thuật toán luồng quang học là độ sáng không đổi – ý tưởng cho rằng cường độ của một điểm cụ thể trên một vật thể vẫn không đổi trong khoảng thời gian ngắn, ngay cả khi nó di chuyển trên mặt phẳng hình ảnh. Các thuật toán theo dõi các mẫu độ sáng không đổi này từ khung hình này sang khung hình khác để ước tính các vectơ chuyển động. Các kỹ thuật phổ biến bao gồm:
Các phương pháp này cung cấp hiểu biết ở cấp độ cơ bản về chuyển động của pixel, sau đó có thể được diễn giải cho nhiều ứng dụng khác nhau.
Dòng quang học có nhiều ứng dụng thực tế trong nhiều lĩnh vực khác nhau:
Mặc dù có liên quan, luồng quang học và theo dõi đối tượng là các nhiệm vụ riêng biệt. Luồng quang học cung cấp các vectơ chuyển động cấp thấp cho các điểm ảnh hoặc các tính năng giữa hai khung hình liên tiếp . Về bản chất, nó không hiểu danh tính đối tượng hoặc theo dõi chúng trong thời gian dài hơn.
Theo dõi đối tượng , thường được thực hiện bằng các mô hình như Ultralytics YOLO , tập trung vào việc xác định các trường hợp đối tượng cụ thể (thường được phát hiện thông qua phát hiện đối tượng ) và duy trì danh tính và quỹ đạo của chúng qua nhiều khung hình, có khả năng trong thời gian dài. Các thuật toán theo dõi thường sử dụng luồng quang học làm một đầu vào (cùng với các mô hình xuất hiện, bộ lọc Kalman, v.v.) để dự đoán vị trí đối tượng trong các khung hình tiếp theo, nhưng theo dõi là một nhiệm vụ cấp cao hơn liên quan đến tính bền bỉ của đối tượng. Bạn có thể khám phá các mô hình như YOLOv8 để theo dõi .
Các thư viện như OpenCV cung cấp các triển khai có sẵn của nhiều thuật toán dòng quang học khác nhau.