tôi đang làm việc trên dòng quang học, và dựa trên the lecture notes here và một số mẫu trên Internet, I wrote this Python code.Lucas Kanade Optical Flow, Direction Vector
Tất cả mã và hình ảnh mẫu đều ở đó. Đối với chuyển vị nhỏ khoảng 4-5 pixel, hướng của vector tính toán có vẻ là tốt, nhưng độ lớn của vectơ quá nhỏ (đó là lý do tại sao tôi phải nhân u, v bằng 3 trước khi vẽ chúng).
Đây có phải là do giới hạn của thuật toán hoặc lỗi trong mã không? Bài giảng được chia sẻ ở trên cũng nói rằng chuyển động cần phải nhỏ "u, v nhỏ hơn 1 pixel", có thể đó là lý do tại sao. Lý do cho giới hạn này là gì?
LK sử dụng ước lượng đơn hàng đầu tiên, và vì vậy (u, v) phải lý tưởng << 1, nếu không, các điều khoản bậc cao sẽ chi phối hành vi và bạn là bánh mì nướng. Để khắc phục vấn đề này, trong các trang 20 và 21, tác giả đề xuất sử dụng một chuỗi các bước hậu duệ, bắt đầu bằng độ phân giải rất thấp và sau đó tăng nó. Tuy nhiên, thuật toán chưa được giải thích đầy đủ trong nguồn của bạn. –