SLAM(Simultaneous Localization and Mapping)을 처음 접하는 분들을 위한 강의 시리즈입니다. 제가 처음 SLAM을 공부할 때, 개념을 직관적으로 설명해주는 자료를 찾기 어려워 꽤 오랜 시간 헤맸던 기억이 있습니다. 그때 “이걸 누군가 쉽게 풀어서 설명해줬다면 얼마나 좋았을까”라는 생각이 들었고, 그 경험을 바탕으로 이 강의를 만들게 되었습니다. 학부 3-4학년 수준에서도 이해할 수 있도록 직관과 유추를 중심으로, SLAM의 핵심 아이디어부터 전체 구조까지 차근차근 설명합니다. 강의 자료는 순차적으로 업데이트될 예정입니다. This lecture series is designed for those who are new to SLAM (Simultaneous Localization and Mapping). When I first started learning SLAM, I struggled to find materials that explained the concepts in an intuitive way, and I often felt lost trying to connect the math with the bigger picture. I remember wishing there were a resource that could guide me more clearly, and this series grew out of that experience. With that in mind, these lectures aim to explain SLAM in a simple and intuitive way, covering the key ideas and the overall pipeline step by step. The materials will be updated sequentially.

강의 일정Schedule

Lecture 01: IntroductionLecture 01: Introduction

  • 1-1. SLAM이란 무엇인가? What is SLAM? Video Slide

Lecture 02: Categories & Terminology of Robot NavigationLecture 02: Categories & Terminology of Robot Navigation

  • 2-1. Robot navigation 구성 요소 Components of robot navigation Video Slide
  • 2-2. Perception vs. Cognition Perception vs. cognition
  • 2-3. Localization, Mapping, SLAM 용어 Terminology: localization, mapping, SLAM
  • 2-4. 결론: SLAM ⊂ Robot navigation Conclusion: SLAM ⊂ robot navigation

Lecture 03: State, Measurement, and EstimationLecture 03: State, Measurement, and Estimation

  • 3-1. Introduction: 키 재기 예시로 시작 Introduction: starting with a height measurement example Video Slide
  • 3-2. State와 measurement 정의 Definition of state and measurement
  • 3-3. Calculation vs. Estimation Calculation vs. estimation
  • 3-4. Example A – MLE: 평균 기반 키 추정 Example A – MLE: height estimation via average
  • 3-5. Example B – MAP: 사전 지식 활용 키 추정 Example B – MAP: height estimation using prior
  • 3-6. 결론: Estimation = Weighted Average + Uncertainty Conclusion: estimation = weighted average + uncertainty

Lecture 04: Maximum Likelihood Estimation (MLE), Maximum A Posteriori (MAP)Lecture 04: Maximum Likelihood Estimation (MLE), Maximum A Posteriori (MAP)

  • 4-1. Introduction: MLE와 MAP 개요 Introduction: overview of MLE and MAP Video Slide
  • 4-2. Probability vs. Likelihood Probability vs. likelihood
  • 4-3. 확률 모델과 MLE: Gaussian noise → least squares Probabilistic model and MLE: Gaussian noise → least squares
  • 4-4. Maximum a Posteriori (MAP): prior 활용 Maximum a posteriori (MAP): incorporating prior
  • 4-5. Weighted Least Squares와 Graph SLAM 연결 Weighted least squares and connection to Graph SLAM
  • 4-6. 결론: State estimation = weighted averages Conclusion: state estimation is a game of weighted averages

Lecture 05: Filtering vs Smoothing (1) – Kalman Filter from a MAP PerspectiveLecture 05: Filtering vs Smoothing (1) – Kalman Filter from a MAP Perspective

  • 5-1. Filtering vs. Smoothing: sequential vs. batch 비교 Filtering vs. smoothing: sequential vs. batch Video Slide
  • 5-2. Kalman Filter in 1D: prediction & update step Kalman filter in 1D: prediction & update steps
  • 5-3. Kalman Filter for Multivariable Systems: 행렬 형태로의 확장 Kalman filter for multivariable systems: matrix form
  • 5-4. 결론: KF update = MAP Conclusion: KF update = MAP
  • Supp. 수학 보충 자료 Math supplementary Slide

Lecture 06: Filtering vs Smoothing (2) – Graph Optimization from a MAP PerspectiveLecture 06: Filtering vs Smoothing (2) – Graph Optimization from a MAP Perspective

  • 6-1. Filtering vs. Smoothing 비교 복습 Filtering vs. smoothing: recap Video Slide
  • 6-2. Graph SLAM: Factor Graph 수식 꼴 Graph SLAM: factor graph-based formulation
  • 6-3. Graph-Based SLAM Framework: Front-end & Back-end Graph-based SLAM framework: front-end & back-end
  • 6-4. Mass-spring 비유를 통한 직관적 이해 Intuitive understanding: mass-spring analogy
  • 6-5. Example: 2D LiDAR Graph SLAM + Landmarks Example: 2D LiDAR Graph SLAM with landmarks
  • 6-6. 결론: Filtering vs. Smoothing, 어느 쪽이 나은가? Conclusion: filtering vs. smoothing — which is better?

Lecture 07: Rotation, and Transformation MatrixLecture 07: Rotation, and Transformation Matrix

  • 7-1. What We've Learned: 결국 SLAM = MAP이다! What we've learned: SLAM as a MAP problem Video Slide
  • 7-2. Remaining Topics: Pose 표현·최적화·Data association Remaining topics: pose representation, optimization, data association
  • 7-3. 1D vs. 2D/3D: Translation & Rotation의 결합 1D vs. 2D/3D: coupling of translation and rotation
  • 7-4. Rotation Representation: Euler, Angle-Axis, Quaternion, SO(n) Rotation representation: Euler, angle-axis, quaternion, SO(n)
  • 7-5. Transformation Matrices: SE(2) & SE(3) Transformation matrices: SE(2) & SE(3)
  • 7-6. 결론: Rotation + Translation = SE(n) Conclusion: rotation + translation = SE(n)

Lecture 08: Three Practical Tips for Transformations in CodeLecture 08: Three Practical Tips for Transformations in Code

  • 8-1. SE(3) 복습 Recap: SE(3) Video Slide
  • 8-2. Tip 1: Transform 방향 명시할 것 (T_cam_lidar 규칙) Tip 1: make transform direction explicit (T_cam_lidar convention)
  • 8-3. Tip 2: Quaternion 계수 순서 확인 (WXYZ vs. XYZW) Tip 2: verify quaternion coefficient order (WXYZ vs. XYZW)
  • 8-4. Tip 3: 좌표계 명시적 문서화 (LIO-SAM vs. FAST-LIO 예시) Tip 3: document all pose frames explicitly (LIO-SAM vs. FAST-LIO)
  • 8-5. 결론: 주석에 의도를 explicit하게 표현해두자 Conclusion: never rely on implicit conventions

Lecture 09: Lie Group and Lie AlgebraLecture 09: Lie Group and Lie Algebra

  • 9-1. Learning Objectives: SO(3) 위에서의 update 문제 Learning objectives: the update problem on SO(3) Video Slide
  • 9-2. Intuition: Lie Algebra = SO(3)의 접평면 공간 Intuition: Lie algebra as the tangent space of SO(3)
  • 9-3. Lie Algebra for SO(3): skew-symmetric matrix와 exp map Lie algebra for SO(3): skew-symmetric matrix and exponential map
  • 9-4. Lie Algebra for SE(3): twist와 SE(3) exp map Lie algebra for SE(3): twist and exponential map on SE(3)
  • 9-5. Examples/Applications: SLAM 최적화에서의 활용 Examples/applications: use in SLAM optimization
  • 9-6. 결론: Lie Algebra로 곡면 위 최적화 가능 Conclusion: Lie algebra enables optimization on curved spaces

강의는 계속 추가될 예정입니다...More lectures coming soon...