Rico's Nerd Cluster

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

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_...

Robotics - [Bugs - 2] SLAM Related Small Bugs

Passing Ptr By Value

⚠️ Beware of Passing Smart Pointers by Value Passing a smart pointer (e.g. std::shared_ptr or boost::shared_ptr) by value is fine when you’re only modifying the object it points to. But if you int...

Robotics - [Bugs - 1] SLAM Related "Epic Bugs"

G2O Optimization Vertex Updates, Compiler-Specific Bugs, Yaml-cpp

Below is a list of bugs that took me multiple hours, if not days, to troubleshoot and analyze. These are the “epic bugs” that are worth remembering for my career. Epic Bug 1: G2O Optimization Didn...

[ML] K-Nearest-Neighbor Using Heap With CUDA

KNN (Heap-Based Implementation) Goal: For a query point qqq, find its kkk nearest neighbors from a set of NNN points. Algorithm Idea We use a max-heap of size k. Why a max-heap? The hea...

[ML] -Point-cloud-compression-2-FPFH-Features

Other Alternatives Chamfer distance Earth Mover’s Distance (EMD) Normal consistency loss Curvature loss Learned feature-space loss (via PointNet / DGCNN embeddings) What is FPFH FPFH...

Robotics - Spatial Hashing

Spatial Hashing Hash integer coordinates <x,y,z>. A good hash should make small input changes produce very different outputs. 1 2 3 4 5 6 7 std::size_t operator()(const TileKey &k) cons...

Robotics - A Short Introduction To Underwater Sonar Imaging Cameras

Beam Forming

Sonar Imaging Pipeline Here is a nice introduction to the concept of beam-forming Beam Forming If you have multiple attenae, say each attena is attached to a fixed delay,...

AI - LLM Applications

Techniques For Using AI Reflection is extremely helpful. “validate this code”, “check instructions for coherence and completeness”; “make this code more concise.” For subjective questions, AI is ...

Robotics - A Survey On Oil Pipe Inspection Robotics (Revising)

Sonar Imaging, gradian

Non-Destructive Testing Methods American Society for Testing and Materials (ASTM) and American Society of Mechanical Engineers (ASME) develops standards for pipe inspections Ultrasonic Testing...

Robotics - ROS2 Logging

Logging Level Tweaking

Logging Level Tweaking Programmatic API (in-process) In C++, any rclcpp::Logger can have its level tweaked at runtime: 1 2 3 #include <rclcpp/logger.hpp> auto my_logger = rclc...