Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Bộ lọc Kalman mở rộng (EKF)

Tìm hiểu cách Bộ lọc Kalman mở rộng cho phép ước tính trạng thái chính xác cho các hệ thống phi tuyến tính trong robot học, xe tự hành và hợp nhất cảm biến.

Bộ lọc Kalman Mở rộng (EKF) là một thuật toán phức tạp được sử dụng để ước tính trạng thái trong các hệ thống thể hiện động lực học phi tuyến tính. Mặc dù Bộ lọc Kalman (KF) tiêu chuẩn cung cấp giải pháp tối ưu cho các bài toán tuyến tính, nhưng hầu hết các hệ thống vật lý trong thế giới thực—chẳng hạn như máy bay không người lái chống lại sức cản của gió hoặc cánh tay robot quay trên nhiều trục—đều không tuân theo đường thẳng. EKF giải quyết vấn đề này bằng cách áp dụng một quy trình được gọi là tuyến tính hóa để xấp xỉ hệ thống phi tuyến tính thành hệ thống tuyến tính tại mỗi thời điểm. Khả năng này cho phép các kỹ sư và nhà khoa học dữ liệu kết hợp dữ liệu nhiễu từ nhiều cảm biến khác nhau để tạo ra ước tính mượt mà và chính xác về vị trí, vận tốc hoặc hướng của vật thể.

Cơ chế cốt lõi và hoạt động

EKF hoạt động theo chu trình "dự đoán-cập nhật" đệ quy, tương tự như Bộ lọc Kalman tiêu chuẩn, nhưng có thêm các bước toán học để xử lý tính phi tuyến tính. Trong nhiều bối cảnh học máy (ML) và lý thuyết điều khiển, hệ thống sử dụng ma trận Jacobian để tính toán xấp xỉ tuyến tính các hàm của hệ thống.

  1. Bước Dự đoán: Thuật toán sử dụng mô hình vật lý để ước tính trạng thái hiện tại của hệ thống (ví dụ: vị trí của một chiếc xe dựa trên tốc độ của nó). Thuật toán cũng dự đoán hiệp phương sai , biểu thị mức độ không chắc chắn hoặc "mờ" của ước tính này.
  2. Bước Cập nhật: Hệ thống nhận dữ liệu mới từ các cảm biến, chẳng hạn như camera hoặc LiDAR . EKF so sánh phép đo này với trạng thái dự đoán. Nó tính toán giá trị trung bình có trọng số—được gọi là Độ lợi Kalman—để hiệu chỉnh dự đoán, giảm thiểu sai số do nhiễu dữ liệu .

Vòng lặp liên tục này cho phép EKF duy trì độ chính xác cao ngay cả khi các chỉ số cảm biến riêng lẻ không đáng tin cậy hoặc tạm thời không có sẵn.

Sự liên quan trong Thị giác máy tính và AI

Trong lĩnh vực thị giác máy tính (CV) , Bộ lọc Kalman Mở rộng thường được sử dụng để tăng cường khả năng theo dõi đối tượng . Mặc dù các mô hình học sâu như YOLO11 rất xuất sắc trong việc phát hiện đối tượng trong từng khung hình riêng lẻ, nhưng về bản chất chúng không hiểu được tính liên tục của chuyển động. EKF sẽ thu hẹp khoảng cách này bằng cách mô hình hóa quỹ đạo của các vật thể được phát hiện.

Khi một mô hình phát hiện một người hoặc một phương tiện, EKF sẽ dự đoán vị trí của khung giới hạn đó trong khung hình video tiếp theo. Nếu việc phát hiện bị bỏ sót trong khung hình tiếp theo do bị che khuất, EKF có thể cung cấp vị trí dự đoán, đồng thời giữ nguyên vị trí hiện tại. track vẫn còn sống cho đến khi đối tượng được phát hiện lại. Đây là yếu tố cơ bản để đạt được khả năng theo dõi đa đối tượng (MOT) mạnh mẽ và thường là một thành phần của các thuật toán theo dõi tiên tiến như SORT (Theo dõi Trực tuyến và Thời gian thực Đơn giản).

Ví dụ sau đây minh họa cách khởi tạo trình theo dõi bằng cách sử dụng ultralytics, sử dụng các khái niệm lọc này bên trong để duy trì danh tính đối tượng trên các khung hình video:

from ultralytics import YOLO

# Load the YOLO11 model (nano version)
model = YOLO("yolo11n.pt")

# Run tracking on a video source
# The tracker (e.g., ByteTrack) uses Kalman filtering logic for state estimation
results = model.track(source="path/to/video.mp4", tracker="bytetrack.yaml")

Các Ứng dụng Thực tế

Tính linh hoạt của EKF khiến nó trở nên không thể thiếu trong nhiều ngành công nghiệp công nghệ cao:

  • Xe tự hành: Xe tự lái sử dụng công nghệ kết hợp cảm biến để kết hợp dữ liệu từ GPS, hệ thống đo quãng đường và camera quan sát. EKF tổng hợp dữ liệu rời rạc này để ước tính vị trí và vận tốc chính xác của xe, một yêu cầu quan trọng đối với xe tự hành an toàn.
  • Robot và SLAM: Robot di chuyển trong môi trường không xác định sử dụng Định vị và Lập bản đồ Đồng thời (SLAM) . EKF giúp robot lập bản đồ môi trường xung quanh đồng thời xác định vị trí của nó trên bản đồ đó, hiệu chỉnh độ trượt bánh xe hoặc độ trôi cảm biến.
  • Ước tính tư thế con người: Trong các ứng dụng liên quan đến ước tính tư thế , chẳng hạn như huấn luyện viên thể hình ảo, EKF có thể làm mượt chuyển động rung lắc của các điểm chính (khớp) để tạo ra hình ảnh chuyển động của con người tự nhiên và mượt mà hơn.

So sánh với các khái niệm liên quan

Để hiểu khi nào nên sử dụng EKF, bạn cần phân biệt nó với các kỹ thuật lọc tương tự:

  • Bộ lọc Kalman Mở rộng so với Bộ lọc Kalman: Bộ lọc Kalman tiêu chuẩn (KF) chỉ tối ưu cho các hệ thống tuyến tính. EKF mở rộng điều này sang các hệ thống phi tuyến tính. Tuy nhiên, nếu hệ thống cực kỳ phi tuyến tính, các phép xấp xỉ tuyến tính hóa của EKF có thể gây ra lỗi.
  • EKF so với Bộ lọc Hạt: Bộ lọc Hạt sử dụng một tập hợp các mẫu ngẫu nhiên (hạt) để biểu diễn phân phối xác suất. Nó có thể xử lý các yếu tố phi tuyến tính và nhiễu phi Gauss tốt hơn EKF nhưng thường đòi hỏi sức mạnh tính toán lớn hơn đáng kể, ảnh hưởng đến tốc độ suy luận theo thời gian thực .
  • EKF so với Bộ lọc Kalman không mùi (UKF): UKF là một biến thể khác tránh được tuyến tính hóa bằng cách sử dụng phương pháp lấy mẫu xác định được gọi là biến đổi không mùi. Nó thường mang lại độ ổn định cao hơn EKF cho các động lực học phức tạp nhưng có thể phức tạp hơn về mặt toán học khi triển khai.

Bất chấp sự tồn tại của các phương pháp mới hơn, Bộ lọc Kalman mở rộng vẫn là tiêu chuẩn cho mô hình dự đoán cấp ngành do sự cân bằng giữa hiệu quả và hiệu suất.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay