• Loading…

A library of notes

LiDAR

Notes on LiDAR: how the sensor turns the flight time of laser light into a cloud of 3D points, and the algorithms that turn those points into maps, poses, objects and tracks. The crash course is a short textbook meant to be read in order, from the physics of a single laser pulse to registration, SLAM and learned 3D detectors. Alongside it, the site collects writeups of recent research papers, each linked back to the part of the course it builds on.

1 concept · 15 writeups · 1 sequence

The map

Arrows run from what a document builds on to the document itself, so following them is a reading order. Dashed lines join documents that refer to one another.

Sequences

Writeups meant to be read in order.

Index

Everything, most recently changed first.

  1. Concept· 8 min

    Attention and transformers

    Scaled dot-product attention, multi-head attention, the transformer block with residual connections and layer normalisation, absolute, relative and conditional positional encodings, vector attention, and local window attention with its efficient computation.

  2. Writeup· 14 min

    Point Transformer V3: Simpler, Faster, Stronger

    A companion to Wu et al.'s Point Transformer V3 (2024): a point-cloud transformer that serialises points along space-filling curves, attends within large patches of the sequence, and replaces relative positional encoding with a sparse convolution, trading the precision of each mechanism for the speed to scale.

  3. Writeup· 14 min

    CenterPoint: Center-based 3D Object Detection and Tracking

    A companion to Yin, Zhou and Krähenbühl's CenterPoint (2021): detecting LiDAR objects as heatmap peaks at their centres with every property regressed there, a cheap second stage on face-centre features, and tracking by greedy matching of velocity-compensated centres.

  4. Writeup· 13 min

    PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation

    A companion to Qi, Su, Mo and Guibas's PointNet (2017): the first network to consume raw point sets, built from a shared per-point network and max pooling, with its alignment networks, its universal-approximation and critical-point-set theorems, and its experiments.

  5. Writeup· 14 min

    LOAM: Lidar Odometry and Mapping in Real-time

    A companion to Zhang and Singh's LOAM (2014): real-time LiDAR odometry and mapping by splitting the problem into fast sweep-to-sweep odometry and slow scan-to-map mapping, both registering edge and planar feature points chosen by a smoothness measure along each scan line.

  6. Writeup· 11 min

    Deep learning on point clouds

    How networks consume point clouds (PointNet and PointNet++, voxel networks with sparse convolution, PointPillars, range-view networks), anchor- and centre-based detection heads, non-maximum suppression, the KITTI, nuScenes and Waymo metrics, LiDAR-specific training practice, and camera fusion.

  7. Writeup· 8 min

    Multi-object tracking

    Tracking by detection: the Kalman filter and the motion models used for road users, gating by Mahalanobis distance, optimal assignment by the Hungarian algorithm, track management, LiDAR-specific difficulties, and the MOTA family of metrics.

  8. Writeup· 7 min

    Occupancy mapping and ray casting

    Maps of free, occupied and unknown space: the occupancy grid and its log-odds update, the inverse sensor model of a LiDAR beam, Amanatides–Woo ray traversal, OctoMap, removing moving objects from point maps, and signed distance fields.

  9. Writeup· 10 min

    LiDAR odometry and SLAM

    Building odometry from registration, LOAM and feature-based odometry, LiDAR–inertial fusion, pose-graph SLAM and loop closure with an interactive example, place recognition with Scan Context, localisation in prior maps, and the ATE and KITTI drift metrics.

  10. Writeup· 11 min

    Scan registration, from Kabsch to ICP and beyond

    Aligning one point cloud to another: the closed-form Kabsch–Umeyama solution for known correspondences, ICP and the practical choices that make it work, point-to-plane ICP and degeneracy, Generalized-ICP, NDT, and global registration with descriptors and RANSAC.

  11. Writeup· 8 min

    Clustering and bounding boxes

    Grouping non-ground points into objects by Euclidean clustering, grid connected components, DBSCAN and range-image segmentation, and summarising each cluster by an oriented box found by L-shape fitting, or by a convex hull.

  12. Writeup· 9 min

    RANSAC and ground segmentation

    Robust model fitting with RANSAC (its algorithm, iteration count and variants) and the methods used to separate ground from obstacles in a scan: height thresholds, elevation grids, polar line fitting, range-image angles and region-wise plane fitting.

  13. Writeup· 8 min

    Filtering, normals and local features

    Cropping and outlier removal, surface normals by principal component analysis and how to orient them and choose their scale, the shape features given by the covariance's eigenvalues, and keypoints and descriptors (FPFH) for matching points between clouds.

  14. Writeup· 12 min

    Coordinate frames, rigid transforms and calibration

    Coordinate frames, rotations (matrices, Euler angles, axis–angle, quaternions), rigid transforms in SE(3) and the exponential map, and the operations built on them: extrinsic calibration, projection into cameras, range images and bird's-eye grids, and deskewing a moving scan.

  15. Writeup· 8 min

    Spatial data structures and neighbour search

    Why neighbour queries dominate point-cloud processing, and the structures that answer them quickly: voxel grids and spatial hashing (with voxel downsampling), k-d trees, octrees and Morton codes, and the free neighbourhoods of a range image.

  16. Writeup· 32 min

    How LiDAR works, from photons to point clouds

    The physics and electronics of a LiDAR measurement (time of flight, the LiDAR equation, emitters, detectors, FMCW and beam steering) and the structure of the data it produces: range images, point clouds, their density, occlusion, motion distortion and artefacts.