Rico's Nerd Cluster

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

C++ - Move Semantics, Perfect Fowarding

Universal Reference, `std::move` with Emplace

Universal Reference And Perfect Forwarding Perfect forwarding in C++ preserves both the type and the value category of an input argument. Refresher - Value categories: lvalue rvalue ...

Robotics - Point Cloud Processing and KNN Problem

Bruteforce KNN Search, KD Tree, OctoTree

Overview Here is a post about the LiDAR Working Principle and different types of LiDARs. One lidar model is the Range-Azimuth-Elevation model (RAE) Its ...

C++ - Datastructures

Priority Queue

std::priority_queue (Priority Queue, or Max-Heap) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 #include <iostream> #include <...

Point Cloud Library

Point Infrastructure Point Cloud Members PointCloud Type includes points: point vector PointTypes PointType include: pcl::PointXYZ pcl::PointXYZI pcl::PointXYZRGB pcl::PointXYZRGB...

ROS Infrastructure Notes

A Running List of ROS Infrastructure I found Useful

ROS Actions The ROS Action really is a mechanism that keeps track of the exeuction state of a task. ROS Actions are built on top of ROS topics. Lifetime of ROS Actions Pending : The goal...

Robotics - IMU Pre-integration Optimization Implementation

How To Integrate IMU Pre-Integration into G2O with Odometry and GNSS

G2O Recap - What’s An Edge A single edge is a “difference” between two conceptual entities. The entities are conceptual because they don’t need to map exactly to your implementation. For example, ...

Robotics - IMU Pre-integration Model

Pre-Integration Model

Motivation In previous posts, we have seen the ESKF framework, where IMU data is fused with observations (GNSS, encoders) following this incremenetal order: 1 ESKF Prediction with IMU | ESKF Pred...

Robotics - [ESKF Series 5] Why Using Error-State Kalman Filter (ESKF) For IMU

ESKF, GINS

ESKF Handles Rotations on SO(3) Better Key issue: Rotations lie on the special orthogonal group SO(3), which is a nonlinear manifold (not a simple vector space like position). A standard EKF typic...

Robotics - [ESKF Series 4] Full Error-State Kalman Filter (ESKF) in GNSS-Inertial Navigation System (GINS)

ESKF, GINS

If you haven’t checked out a motivational 2D robot example of ESKF, please check here. In this post, $\oplus$ is the “generic add”, which “adds” on a manifold. ESKF (On Manifold) in GINS (GPS-Int...

Robotics - [ESKF Series 3] Motivational Example Of Error-State Kalman Filter (ESKF)

ESKF

Motivating Example We use the same example as the one in the EKF post: imagine our world has two cones with known locations: c1, c2, and a diff drive with wheel encoders and a cone detector. T...