Khám phá cách Bộ lọc Kalman tối ưu hóa việc ước tính trạng thái trong AI, theo dõi, kết hợp cảm biến, robot học, v.v., ngay cả với dữ liệu nhiễu.
Bộ lọc Kalman (KF) là một thuật toán toán học đệ quy mạnh mẽ được sử dụng để ước tính trạng thái của một hệ thống động theo thời gian. Ban đầu được phát triển bởi Rudolf E. Kálmán vào năm 1960, nó hoạt động bằng cách kết hợp một loạt các phép đo nhiễu, không đầy đủ hoặc không chính xác để tạo ra một ước tính chính xác hơn về mặt thống kê so với bất kỳ phép đo đơn lẻ nào. Trong bối cảnh học máy (ML) và trí tuệ nhân tạo (AI) , bộ lọc Kalman là nền tảng cho các tác vụ yêu cầu làm mịn dự đoán, chẳng hạn như theo dõi đối tượng trong luồng video, nơi nó giúp dự đoán vị trí tương lai của một đối tượng dựa trên quỹ đạo trong quá khứ của nó.
Điểm mạnh cốt lõi của bộ lọc Kalman nằm ở chu trình hai bước: dự đoán và hiệu chỉnh . Nó không chỉ xem xét điểm dữ liệu hiện tại; nó xem xét lịch sử của hệ thống để đưa ra dự đoán có cơ sở về trạng thái hiện tại.
Chu kỳ này lặp đi lặp lại liên tục, cho phép bộ lọc tinh chỉnh các ước tính của nó và thích ứng với những thay đổi trong thời gian thực.
Mặc dù bộ lọc Kalman có nguồn gốc từ lý thuyết điều khiển và hàng không vũ trụ (nổi tiếng được sử dụng trong máy tính điều hướng Apollo), hiện nay nó là một thành phần thiết yếu trong các quy trình xử lý hình ảnh máy tính (CV) hiện đại.
Việc phân biệt bộ lọc Kalman tiêu chuẩn với các biến thể và kỹ thuật liên quan của nó là rất hữu ích:
Trong ultralytics Trong hệ sinh thái này, bộ lọc Kalman được tích hợp trực tiếp vào các mô-đun theo dõi. Bạn có thể tận dụng khả năng này một cách dễ dàng bằng cách sử dụng... track chế độ với YOLO Mô hình. Bộ theo dõi cơ bản tự động sử dụng bộ lọc Kalman để làm mịn quỹ đạo của các đối tượng được phát hiện.
Đây là cách để bắt đầu theo dõi với YOLO26 , công cụ này sử dụng ngầm định các kỹ thuật ước lượng sau:
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Perform tracking on a video file
# The tracker (e.g., BoT-SORT) uses a Kalman Filter internally
results = model.track(source="https://ultralytics.com/images/bus.jpg", tracker="botsort.yaml")
# Print the ID of the tracked objects
for r in results:
if r.boxes.id is not None:
print(f"Track IDs: {r.boxes.id.numpy()}")
Trong thực tế triển khai, dữ liệu cảm biến hiếm khi hoàn hảo. Camera bị mờ do chuyển động, tín hiệu GPS bị lệch và radar có thể bị nhiễu. Bộ lọc Kalman đóng vai trò là cơ chế làm sạch dữ liệu quan trọng trong vòng lặp quyết định. Bằng cách liên tục tinh chỉnh các ước tính, nó đảm bảo rằng các tác nhân AI và hệ thống phân tích hoạt động trên thực tế có khả năng xảy ra cao nhất chứ không phải là các dữ liệu đầu vào thô, nhiễu. Độ tin cậy này rất cần thiết cho các ứng dụng quan trọng về an toàn, từ giám sát hoạt động sân bay đến cho phép sản xuất robot chính xác.