Giải thích trực quan về theo dõi với các bộ lọc Kalman


17

Tôi sẽ đánh giá cao một lời giải thích trực quan cho việc theo dõi (trực quan) với các bộ lọc Kalman. những gì tôi biết:

Bước dự đoán:

  • Trạng thái hệ thống động : vị trí mục tiêu tại thời điểm txtt
  • Đo : hình ảnh tại chỉ số thời gian t (??)ztt

Dựa vào hình ảnh / số đo Tôi muốn dự đoán trạng thái x t ? (sử dụng phương trình động) Có đúng không?1(t1)xt

Làm cách nào tôi có thể diễn giải bước điều chỉnh thành các thuật ngữ đó (hình ảnh, vị trí mục tiêu)?


Câu trả lời:


13

Đầu tiên bạn phải giả sử một mô hình chuyển động. Giả sử bạn muốn theo dõi một quả bóng bay trong không trung. Quả bóng có gia tốc hướng xuống do trọng lực 9,8m / s ^ 2. Vì vậy, trong trường hợp này mô hình chuyển động gia tốc không đổi là phù hợp.

Theo mô hình này, trạng thái của bạn là vị trí, vận tốc và gia tốc. Cho trạng thái trước bạn có thể dễ dàng dự đoán trạng thái tiếp theo.

Bạn cũng có một khái niệm phát hiện. Bạn có một video về quả bóng đang di chuyển và bằng cách nào đó bạn phải phát hiện quả bóng trong mỗi khung hình video (ví dụ: bằng cách sử dụng phép trừ nền).

Phát hiện của bạn là ồn ào. Ngoài ra, chuyển động của quả bóng không phù hợp chính xác với mô hình gia tốc không đổi vì sức cản không khí, gió, tia vũ trụ, v.v. Bộ lọc Kalman cần hai ma trận mô tả điều này: một là hiệp phương sai của phép đo (phát hiện không chính xác của bạn), và một cho hiệp phương sai của quá trình nhiễu (cách chuyển động của quả bóng lệch khỏi mô hình bạn đã chỉ định).

Nếu bạn đang theo dõi một đối tượng, thì bộ lọc Kalman cho phép bạn xử lý một số nhiễu và cũng dự đoán đối tượng ở đâu khi phát hiện bị thiếu (ví dụ: nếu đối tượng bị chặn). Dưới đây là một ví dụ về theo dõi một đối tượng bằng bộ lọc Kalman bằng Hộp công cụ Hệ thống Tầm nhìn Máy tính cho MATLAB.

Nếu bạn đang theo dõi nhiều đối tượng, thì dự đoán bộ lọc Kalman cho phép bạn quyết định phát hiện nào đi với đối tượng nào. Một cách tốt để làm điều đó là sử dụng khả năng ghi nhật ký của phát hiện với sự hiệp phương sai của dự đoán. Dưới đây là một ví dụ về theo dõi nhiều đối tượng bằng bộ lọc Kalman .


1
Câu trả lời tốt đẹp. Một lưu ý mặc dù. Các trạng thái chỉ là vị trí và vận tốc
aiao

@aiao, đối với mô hình chuyển động gia tốc không đổi, gia tốc là một phần của trạng thái. Đối với mô hình vận tốc không đổi thì không.
Dima

7

Khóa học trực tuyến này rất dễ dàng và đơn giản để hiểu và với tôi nó đã giải thích các bộ lọc Kalman thực sự tốt.

Nó được gọi là "Lập trình một chiếc xe robot", và nó nói về ba phương pháp bản địa hóa: bản địa hóa Monte Carlo, bộ lọc Kalman và bộ lọc hạt. Nó tập trung vào thông tin sonar làm ví dụ, nhưng lời giải thích đủ đơn giản để bạn có thể chỉ cần thay thế "sonar" bằng "thông tin hình ảnh" và tất cả sẽ vẫn có ý nghĩa.

Khóa học hoàn toàn miễn phí (hiện đã kết thúc nên bạn không thể tham gia tích cực nhưng bạn vẫn có thể xem các bài giảng tôi đoán), được giảng dạy bởi một giáo sư Stanford.


1
Nó vẫn hoạt động. Bạn vẫn nhận được chứng chỉ để hoàn thành các khóa học. Bạn vẫn có thể tích cực tham gia và nhận được câu hỏi của bạn được trả lời trên các diễn đàn.
Naresh

5

Khi bạn đang thực hiện theo dõi trực quan, bạn cần một mô hình , đó là một biểu diễn toán học của một quá trình trong thế giới thực. Mô hình này sẽ có ý nghĩa với bất kỳ dữ liệu nào thu được từ các phép đo, sẽ kết nối các số chúng tôi đưa vào và chúng tôi ra khỏi hệ thống.

Nhưng một mô hình là sự đơn giản hóa thực tế bởi vì bạn sẽ sử dụng số lượng tham số giảm. Những gì bạn không biết về hệ thống được gọi là tiếng ồn hoặc sự không chắc chắn. Nó quan trọng như những gì bạn biết. Vì chúng ta không thể mô tả một hệ thống hoàn hảo, chúng ta cần các phép đo từ thế giới thực để cho chúng ta biết điều gì đang xảy ra với hệ thống mà chúng ta đang mô hình hóa.

Kalman là một công cụ để kết hợp những gì chúng ta ước tính, với mô hình của chúng ta và những gì chúng ta đo được từ thế giới, bằng cách kết hợp cả hai theo nghĩa có trọng số.

Bạn sẽ tính toán một trạng thái mỗi bước. Đó là những gì bạn hiện đang biết về hệ thống. Trạng thái chịu ảnh hưởng của phương trình quá trìnhphương trình đo . Cả hai phương trình có hiệp phương sai khác nhau. Kalman sẽ quyết định cái nào trong cả hai có ảnh hưởng nhiều hơn mỗi bước bằng cách điều chỉnh mức tăng Kalman.

Đây là cách tôi nghĩ về điều này khi tôi không đi sâu vào công thức.


4

Bộ lọc Kalman đệ quy cung cấp ước tính tuyến tính tối ưu của tín hiệu bị nhiễu bởi AWGN. Trong trường hợp của bạn, trạng thái (những gì bạn muốn ước tính) sẽ được cung cấp bởi vị trí mục tiêu. Các phép đo sẽ được xác định bởi thuật toán của bạn.

Nếu bạn đã đọc bài viết Wikipedia, bạn có thể muốn xem bản trình bày này về theo dõi trực quan. Cậu có cuốn sách nào không?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.