Rico's Nerd Cluster

「离开世界之前 一切都是过程」

Robotics - Moré-Thuente Line Search Algorithm

Introduction Introduced in the early 1990s, line search and trust-region strategies have become standard tools for improving the robustness of iterative optimization methods used in LiDAR odometry...

Robotics - Gauss Newton (GN) and Levenberg Marquardt (LM) Optimizers

Newton's Method, GN, LM optimizers

Newton’s Method Solving An Equation To find an arbitrary equation’s root $f(x) = 0$, We start from an arbitrary point $x_0$ that’s hopefully close to the solution, $x_s$ The main idea of Ne...

Robotics - [3D SLAM - 5] LIO Hands-On

Spatial Tiling

Issues That I Encountered IMU / LiDAR Synchronization There are several real-world timing problems to handle: The ROS publisher, bag writer, and LiDAR driver are all bursty — LiDAR data can a...

Underwater LiDAR: How Light-Based Sensing Works Beneath the Waves

Introduction LiDAR (Light Detection and Ranging) is incredibly effective in air, enabling autonomous vehicles, drones, and robots to map their surroundings with centimeter-level precision. But wha...

Robotics - [3D SLAM - 5] Tightly Coupled Lidar Inertial Odometry

Gauge Freedom, Corridor Degeneracy, and FastLIO

Gauge Freedom In lidar-inertial odometry, gauge freedom refers to directions in the state space that are weakly observed or unobservable from the current measurements. In practice, this appears as...

Robotics - [3D SLAM - 5] Loosely and Tightly Coupled Lidar Inertial Odometry

FastLIO

Loosely vs Tightly Coupled LIO In loosely coupled LIO, the IMU and GPS are first fed into error state kalman filter which outputs a global pose estimate T_G. T_G is fed into a lidar odometer (such...

Robotics - [3D SLAM - 4] GICP

Generalized ICP, BFGS Optimization

1. Intuition In GICP (Segal et al, 2009), each matched pair is not just two points $p_s$ and $p_t$. Each point also carries a local covariance estimated from its neighbors (for example, 20 nearest...

Robotics - [3D SLAM - 3] Lidar Odometry

Direct Lidar Odometry, NDT, Incremental NDT, Indirect Lidar Odometry, LOAM

Direct Lidar Odometry When given two scans, a direct NDT method means no features are extracted. The two scans would directly go through NDT for finding their relative poses. The workflow is as fo...

Robotics - [3D SLAM - 2] Scan Matching Hands-On Notes

Preact-Mojave, Lidar-Only Front-End

Preact-Mojave Build & Workflow The ROS2 driver for Preact-Mojave can be found here. When testing it, I ran into below questions: Why make provision & make ros2? make provisi...

Robotics - [3D SLAM - 1] Scan Matching

3D Point-Point ICP, 3D Point-Plane ICP, NDT

The Scan Matching Problem When we run scan matching, we usually have two point clouds: a source scan $S_1 = {\mathbf{p}_1, \ldots, \mathbf{p}_n}$ (the new measurement), and a target scan $S_...