finds.dev← search

// the find

PRBonn/rko_lio

★ 578 · C++ · MIT · updated Jun 2026

A Robust Approach for LiDAR-Inertial Odometry Without Sensor-Specific Modelling

RKO-LIO is a LiDAR-inertial odometry system from the PRBonn robotics group (same lab that produced KISS-ICP) that avoids sensor-specific tuning by treating IMU integration robustly without assuming particular noise models. It's aimed at roboticists who want a SLAM odometry front-end that works across vehicle types without per-platform parameter archaeology. Published in IEEE RA-L 2026.

The pip-installable Python interface is a genuine differentiator — most LiDAR-SLAM stacks require a full ROS workspace just to try them, here you can run it against a rosbag in two commands. It ships across four ROS 2 distros (Humble through Rolling) as apt packages, so deployment in production robot stacks is straightforward. The C++ core uses Bonxai for voxel hashing and Sophus for Lie group math — both solid choices that avoid reinventing well-tested geometry primitives. The test suite covers IMU integration, scan preprocessing, timestamp handling, and voxel downsampling separately, which is rare discipline for robotics research code.

The extrinsics story is annoying: if your data doesn't encode IMU-to-LiDAR transforms in its bag metadata, you must manually construct a YAML with quaternion-then-translation ordering, and the README explains the convention in a math block rather than a worked example — you will get this wrong the first time. Mapping is listed as a topic but the repo is an odometry system, not a full SLAM pipeline; there's no loop closure, so pose drift is unbounded over long trajectories. The Python dataloaders support rosbag and HeLPR but anything else (custom binary formats, live sensor streams outside ROS) requires writing your own dataloader with no documented interface contract. No quantitative benchmark numbers in the README itself — you have to chase down the arXiv paper to see how it actually performs against other methods.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →