Dòng chảy quang học
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ốt lõi trong thị giác máy tính (CV) , liên quan đến việc ước tính chuyển động của vật thể, bề mặt và cạnh trong một cảnh trực quan 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 vectơ mô tả hướng và tốc độ chuyển động của các điểm ảnh hoặc đặc điểm giữa hai khung hình video liên tiếp. Điều này cung cấp hiểu biết chi tiết ở mức độ cơ bản về "cách" mọi thứ chuyển động, vốn là nền tảng cho nhiều tác vụ phân tích cảnh động.
Dòng quang học hoạt động như thế nào
Giả định cốt lõi đằng sau hầu hết các thuật toán dòng quang học là "độ sáng không đổi", giả định rằng cường độ của một điểm ảnh tương ứng với một điểm cụ thể trên vật thể duy trì không đổi trong các khoảng thời gian ngắn. Bằng cách tìm ra độ dịch chuyển bảo toàn độ sáng này, các thuật toán có thể ước tính chuyển động. Có hai phương pháp chính để tính toán dòng quang học:
- Dòng quang học dày đặc : Phương pháp này tính toán một vectơ chuyển động cho từng điểm ảnh trong ảnh. Nó cung cấp một trường chuyển động cực kỳ chi tiết, hữu ích cho các tác vụ như phân đoạn ảnh và hiểu các chuyển động phức tạp của cảnh. Phương pháp Horn-Schunck là một ví dụ điển hình, trong khi các mô hình học sâu hiện đại như RAFT mang lại hiệu suất vượt trội.
- Luồng Quang học Rải Rác : Thay vì phân tích từng điểm ảnh, phương pháp này theo dõi một tập hợp thưa thớt các đặc điểm "thú vị" (như góc hoặc điểm chính) trên toàn bộ khung hình. Phương pháp Lucas-Kanade là một thuật toán thưa thớt nổi tiếng. Phương pháp này hiệu quả hơn về mặt tính toán và phù hợp cho các ứng dụng chỉ cần chuyển động của các điểm cụ thể, chẳng hạn như theo dõi đối tượng .
Dòng quang học so với Theo dõi đối tượng
Mặc dù có liên quan, luồng quang học và theo dõi vật thể giải quyết những vấn đề khác nhau.
- Optical Flow mô tả chuyển động cấp thấp của các điểm ảnh. Đầu ra của nó là một tập hợp các vectơ biểu diễn chuyển động giữa hai khung hình. Về bản chất, nó không hiểu khái niệm "đối tượng" hoặc duy trì bản sắc của nó theo thời gian.
- Theo dõi Đối tượng là một tác vụ cấp cao hơn, tập trung vào việc định vị một đối tượng cụ thể và theo dõi đường đi của nó qua nhiều khung hình, đồng thời gán cho nó một ID nhất quán. Các thuật toán theo dõi thường sử dụng các kỹ thuật như luồng quang học làm đầu vào để dự đoán vị trí của đối tượng trong khung hình tiếp theo sau khi nó được xác định bởi một mô hình phát hiện đối tượng , chẳng hạn như mô hình YOLO của Ultralytics . Bạn có thể thấy điều này hoạt động trong chế độ theo dõi đối tượng của Ultralytics.
Nói tóm lại, luồng quang học trả lời câu hỏi "Các điểm ảnh di chuyển như thế nào?", trong khi theo dõi đối tượng trả lời câu hỏi "Chiếc xe đó đã đi đâu?".
Ứng dụng trong thế giới thực
Dòng quang học rất quan trọng đối với nhiều ứng dụng đòi hỏi phải hiểu chuyển động từ video:
- Hệ thống tự hành : Xe tự hành và robot sử dụng luồng quang học để đo vận tốc trực quan (ước tính chuyển động tự thân), phát hiện chướng ngại vật và hiểu chuyển động tương đối của các vật thể trong môi trường. Ví dụ, nó giúp xe tự lái ước tính tốc độ so với mặt đường hoặc theo dõi các phương tiện gần đó. Các công ty như Waymo rất coi trọng nhận thức chuyển động. Khám phá AI trong xe tự lái để hiểu rõ hơn về bối cảnh.
- Nén video : Các tiêu chuẩn như MPEG sử dụng kỹ thuật ước tính chuyển động tương tự như luồng quang học để dự đoán các khung hình tiếp theo dựa trên các khung hình trước đó. Bằng cách chỉ mã hóa các vectơ chuyển động và các lỗi dự đoán (phần dư), việc nén dữ liệu đáng kể đạt được.
- Nhận dạng hành động : Việc hiểu hành động của con người trong video, một phần quan trọng của việc ước tính tư thế , thường liên quan đến việc phân tích các mẫu chuyển động bắt nguồn từ luồng quang học. Điều này rất quan trọng đối với các ứng dụng trong phân tích thể thao và công nghệ thể dục thông minh .
- Ổn định video : Các kỹ thuật ổn định hình ảnh kỹ thuật số có thể sử dụng luồng quang học để ước tính độ rung của máy ảnh và bù trừ, giúp video mượt mà hơn. Công nghệ này phổ biến trên điện thoại thông minh và máy ảnh hiện đại.
- Phân tích hình ảnh y tế : Được sử dụng để theo dõi chuyển động của mô, chẳng hạn như chuyển động của cơ tim trong siêu âm tim hoặc biến dạng nội tạng trong quá trình phẫu thuật. Xem các tài nguyên như tạp chí Radiology: Artificial Intelligence để biết những tiến bộ liên quan.
- Robot : Cho phép robot điều hướng, tương tác với các vật thể và thực hiện các nhiệm vụ dựa trên phản hồi trực quan về chuyển động xung quanh. Tích hợp với các hệ thống như ROS thường kết hợp phân tích chuyển động.