Robotics

I benchmarked my ROS 2 localization filter (FusionCore) against robot_localization on real-world data. Here's what happened

New ROS 2 sensor fusion package achieves 5.5m accuracy vs. 23.4m for standard solution on real robot data.

Deep Dive

Developer Manan Kharwar has released benchmark results for FusionCore, a new ROS 2 Jazzy sensor fusion package designed as a replacement for the widely-used robot_localization. In a head-to-head test using the University of Michigan's NCLT dataset—real robot data from a 10-minute campus drive with challenging GPS conditions—FusionCore demonstrated significantly superior performance. While robot_localization's Extended Kalman Filter (EKF) achieved 23.4 meters of Absolute Trajectory Error (ATE), FusionCore achieved just 5.5 meters, making it 4.2 times more accurate. The robot_localization Unscented Kalman Filter (UKF) failed completely, diverging numerically after just 31 seconds.

The performance gap stems from fundamental architectural differences. robot_localization uses fixed noise parameters configured manually, trusting every GPS measurement equally. FusionCore continuously estimates IMU biases (gyroscope and accelerometer) in real-time and dynamically adapts its noise model. This allows it to identify and downweight unreliable GPS fixes caused by multipath interference from buildings and trees—common in urban environments. Additionally, FusionCore proved numerically stable at high IMU rates (100Hz), where robot_localization's UKF produced invalid outputs. The package is now seeking real hardware testers and is available as open-source on GitHub.

Key Points
  • FusionCore achieved 5.5m ATE vs. 23.4m for robot_localization EKF—a 4.2x accuracy improvement on real-world data
  • robot_localization's UKF mode diverged and failed after 31 seconds, while FusionCore ran stably for the full 600-second test
  • Key innovation is real-time IMU bias estimation and adaptive noise modeling, versus robot_localization's fixed configuration parameters

Why It Matters

Provides more reliable localization for outdoor robots in GPS-challenged environments, crucial for autonomous vehicles and drones operating in urban areas.