Kalman Filter (KF)
探索卡尔曼滤波器如何在不确定性下估计系统状态。了解如何将其与 Ultralytics YOLO26 结合用于目标跟踪,以提升 AI 精度。
卡尔曼滤波器 (KF) 是一种递归数学算法,用于估计动态系统随时间变化的状态。该技术最初由 Rudolf E. Kálmán 提出,对于处理具有不确定性、不准确性或包含随机变化(通常称为“噪声”)的数据至关重要。通过结合一系列随时间观测到的、包含统计误差的测量值,卡尔曼滤波器能够对未知变量进行估计,其精度高于仅基于单次测量的估计。在机器学习 (ML)和人工智能 (AI)领域,它是预测建模的重要工具,可平滑不规则的数据点,从而揭示真实的潜在趋势。
卡尔曼滤波器的工作原理#
该算法以两个步骤为一个循环运行:预测和更新(也称为校正)。它假设底层系统是线性的,并且噪声遵循高斯分布(钟形曲线)。
-
**预测:**滤波器使用物理模型将当前状态向前推演。例如,如果物体以恒定速度移动,滤波器会根据标准运动学方程预测其下一个位置。此步骤还会估计该预测相关的不确定性。
-
更新:当传感器传来新的测量值时,滤波器会将预测状态与观测数据进行比较。它会计算一个由卡尔曼增益决定的加权平均值,使不确定性较小的值(预测值或测量值)获得更高的可信度。结果是经过优化的状态估计,并将其作为下一个循环的基准。
在计算机视觉和 AI 中的应用#
卡尔曼滤波器最初源于控制理论和航空航天导航,如今已广泛应用于现代计算机视觉 (CV)流水线。
- **目标跟踪:**这是最常见的应用场景。当YOLO26等检测模型在视频帧中识别出物体时,它提供的是一个静态快照。为了理解物体的运动,BoT-SORT等跟踪器会利用卡尔曼滤波器关联不同帧中的检测结果。如果物体暂时被遮挡(无法看到),滤波器会利用物体先前的速度预测其位置,防止系统丢失“跟踪目标”或切换 ID。
- **机器人中的传感器融合:**在机器人技术中,机器必须使用多个带噪声的传感器进行导航。配送机器人可能会使用 GPS(可能发生漂移)、车轮编码器(可能出现打滑)和IMUs(会产生噪声)。卡尔曼滤波器会融合这些不同的输入,为导航提供一个统一且可靠的坐标,这对于自动驾驶车辆的安全运行至关重要。
区分相关概念#
了解标准卡尔曼滤波器与统计人工智能中的各种变体和替代方法之间的区别很有帮助:
- **卡尔曼滤波器与扩展卡尔曼滤波器 (EKF)的比较:**标准 KF 假设系统遵循线性方程(直线)。然而,现实世界中的运动(例如无人机进行转弯侧倾)通常是非线性的。EKF 通过使用导数在每个步骤将系统动力学线性化来解决这一问题,因此适用于复杂轨迹。
- **卡尔曼滤波器与粒子滤波器的比较:**KF 依赖高斯假设,而粒子滤波器使用一组随机样本(粒子)来表示概率分布。粒子滤波器对非高斯噪声更加灵活,但需要显著更多的计算能力,可能会影响实时推理速度。
实现示例#
在 Ultralytics 生态系统中,卡尔曼滤波器已直接集成到跟踪算法中。你无需手动编写方程,只需启用跟踪模式即可使用它们。Ultralytics Platform支持你管理数据集并训练模型,而这些模型可以轻松部署并使用相应的跟踪功能。
下面是一个使用 Python 通过 Ultralytics YOLO26 执行跟踪的简洁示例,其中底层跟踪器会自动应用卡尔曼滤波来平滑边界框的移动:
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Run tracking on a video source
# The 'botsort' tracker uses Kalman Filters internally for state estimation
results = model.track(source="traffic_video.mp4", tracker="botsort.yaml")
# Process results
for result in results:
# Access the tracked IDs (assigned and maintained via KF logic)
if result.boxes.id is not None:
print(f"Tracked IDs in frame: {result.boxes.id.cpu().numpy()}")对数据质量的重要性#
在实际部署中,数据很少是完美的。摄像头会受到运动模糊的影响,传感器也会产生信号噪声。卡尔曼滤波器在决策循环中充当一种先进的数据清洗机制。通过持续优化估计结果,它确保AI agents依据最可能的现实状态运行,而不是对输入流中的每次短暂异常都做出反应。这种可靠性对于安全关键型应用至关重要,从监控机场运营到精密工业自动化均是如此。









