Level 02 / 11
Getting Familiar with SLAM
Geometry, optimization, and the anatomy of a SLAM system
Programming (core)
- C++: OOP, Modern C++, Data structures & Algorithms, Compilers, CMake/Makefile/Ninja, Design patterns, OpenCV C++
- C
- Git/GitHub
- OpenCV (opencv-python)
- Python: Deep learning, Graph plots, System scripts
- Bash/Linux: ssh, CLI text editor/Vim/tmux
- Math libraries: Eigen, Ceres-solver/GTSAM/g2o
- C++/Python interop: PyBind11, nanobind
- ROS/ROS2
- Docker
Programming (optional — engineering skills for SLAM jobs)
- Concurrency: SIMD-SSE/AVX/Neon, OpenMP, CUDA
- Edge deployment: TensorRT/ONNX export of learned frontends, Jetson benchmarking
- Mobile: Android (Java/Kotlin), iOS (Objective-C/Swift)
- C#: Unity AR, Microsoft HoloLens
- CI/CD: GitHub Actions
- Simulation: Gazebo, Isaac Sim
Image Processing
Local Feature Matching
Global Feature Matching
Feature Tracking
Multiple View Geometry
Outlier Rejection
Certifiably Optimal Algorithms
| System |
Author/Year |
Key Concepts |
| SE-Sync |
Rosen 2019 |
Certifiable pose graph optimization via SDP + Riemannian opt (arXiv 2016, IJRR 2019) |
| TEASER++ |
Yang 2020 |
Point cloud registration, 90%+ outlier robust, TLS + Max Clique (T-RO/RSS 2020) |
| GNC |
Yang 2020 |
Graduated Non-Convexity, continuation from convex → robust cost |
| QUASAR |
Yang 2019 |
Certifiably optimal rotation search (Wahba problem with outliers), quaternion QCQP + SDP relaxation |
Least Squares Optimization
Motion Model
Observation Model
Factor Graph Optimization
Gaussian Belief Propagation
Mapping
Sensors
- Camera device: Wide/telecentric lens, Lens MTF, CCD/CMOS, Rolling/Global shutter, Exposure/ISO, Stereo vision, RGB-D, Structured light, Active IR/ToF
- LiDAR → Visual-LiDAR fusion
- IMU → VIO
- RADAR → Sensor fusion, Extended Kalman filter
- Sonar
- Multi-sensor calibration: Camera-IMU, Camera-LiDAR (Kalibr)
Evaluation