SLAM (동시적 위치추정 및 지도작성)
쉽게 풀면
눈을 가리고 낯선 방에 들어간 사람을 떠올려 보세요. 지도가 없으니 벽을 더듬으며 방의 구조를 하나씩 파악해야 하고, 동시에 "내가 지금 방의 어디쯤 서 있는지"도 알아야 길을 잃지 않습니다. 그런데 지도를 그리려면 내 위치를 알아야 하고, 내 위치를 알려면 지도가 있어야 하니 서로 맞물린 문제입니다.
SLAM은 로봇이 카메라나 레이저 센서로 주변 환경을 조금씩 관찰하면서, 지도를 조금 그리고 그 지도를 기준으로 위치를 추정하고, 다시 그 위치를 기준으로 지도를 보정하는 과정을 반복해서 두 가지를 동시에 점점 정확하게 만들어가는 방법입니다.
왜 중요한가
SLAM은 자율주행차, 실내 배송 로봇, 증강현실 기기 등 사전 지도 없이 스스로 위치를 파악해야 하는 거의 모든 자율 시스템의 기초 기술이기 때문에 로봇공학과 컴퓨터비전 논문에서 핵심적으로 다뤄집니다. 센서 데이터로부터 환경을 인식하고 동시에 자기 위치를 추정하는 문제는 확률적 상태 추정, 컴퓨터비전, 최적화 이론이 결합된 상위 연구주제와 맞닿아 있어, 다양한 분야의 연구가 교차하는 지점이기도 합니다.
어떤 절차인가
SLAM은 지도와 자기 위치를 함께 추정하는 문제이며, 대부분의 시스템은 다음 구성 요소를 갖습니다(Cadena 등, 2016).
- 센서 입력: 카메라, 라이다, 관성센서(IMU), 바퀴 주행거리(오도메트리) 등.
- 전단부(front-end): 센서 자료에서 특징점이나 정합 결과를 뽑아 연속한 관측 사이의 움직임을 추정하고, 어떤 관측이 같은 장소를 가리키는지 연결합니다.
- 후단부(back-end): 모아 둔 관측을 하나의 최적화(그래프 최적화 등)로 풀어 궤적과 지도를 함께 보정합니다. 초기 연구는 확장 칼만 필터를 주로 썼습니다(Smith 등, 1990).
- 폐루프 검출(loop closure): 이전에 지나간 장소를 다시 알아보고 누적 오차를 한 번에 바로잡습니다.
- 지도 표현: 점군, 격자 지도, 특징점 지도 등으로 결과를 저장합니다.
언제 쓰고 무엇을 얻나
- 쓰는 때: 사전 지도가 없거나 GPS를 쓸 수 없는 실내·지하·도심 협곡에서 로봇, 자율주행차, 증강현실 기기가 위치를 알아야 할 때.
- 얻는 것: 자기 궤적과 환경 지도. 지도는 이후 경로 계획이나 재위치 추정에 쓰입니다.
- 왜 필요한가(가상의 예, 코드로 계산): 오도메트리만으로 위치를 이어 가면 작은 방향 오차도 누적됩니다. 방향이 계속 1° 틀어진 채 직진한다고 하면 옆으로 벗어나는 거리는 이동 거리 × sin(1°)입니다.
| 이동 거리 | 옆으로 벗어난 거리 |
|---|---|
| 10 m | 0.17 m |
| 100 m | 1.75 m |
| 1000 m | 17.45 m |
이동 거리에 비례해 오차가 커지므로, 같은 장소를 다시 인식해 오차를 줄이는 폐루프 검출이 중요합니다. 실제 오차는 센서마다 다르며 위 값은 단순화한 설명용입니다.
논문에는 이렇게 적는다
- 시스템 구성: 센서 종류(단안·스테레오·RGB-D 카메라, 라이다, IMU), 사용한 SLAM 알고리즘과 버전, 매개변수 설정을 적습니다.
- 평가: 궤적 오차는 흔히 절대 궤적 오차(ATE)와 상대 자세 오차(RPE)로 보고하고, 정답 궤적을 어떻게 얻었는지(모션캡처, GPS/RTK 등)를 밝힙니다.
- 환경 조건: 실내·실외, 조명, 동적 물체, 거리를 적고, 폐루프가 있었는지 구분해 보고합니다.
- 공개 데이터셋 결과를 인용할 때는 데이터셋 이름과 구간 이름을 밝혀 다른 연구와 비교할 수 있게 합니다.
논문에서는 이렇게 쓰입니다
실제 논문에서
이 용어를 직접 쓴 국내 논문 문장을 아직 수집하지 못했습니다. 수집되는 대로 출처와 함께 싣겠습니다.
예시 문장
아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.
이 문장은 "사전에 만들어진 지도 없이도, 로봇이 이동하면서 스스로 실내 지도를 만들고 동시에 자신의 위치를 계산하는 방식을 사용했다"는 뜻입니다. 사전 지도가 없는 새 환경에서도 로봇이 스스로 길을 찾을 수 있게 해주는 핵심 기술입니다.
컴퓨터비전 및 증강현실 논문에서는 라이다 대신 카메라 영상만으로 지도를 만들고 위치를 추정하는 시각 SLAM이 자주 다뤄지며, 실시간성과 계산 효율이 중요한 평가 기준으로 제시된다.
해양공학이나 수중로봇 연구에서는 GPS를 쓸 수 없는 환경에서 SLAM이 위치 추정의 유일한 대안으로 언급되며, 소나처럼 그 환경에 맞는 센서와 결합해 활용된다.
조금 더 깊게 보면
SLAM 알고리즘은 크게 필터 기반 방식과 그래프 최적화 기반 방식으로 나뉘는데, 초기에는 확장 칼만 필터나 파티클 필터를 이용한 방식이 많이 쓰였고, 최근에는 여러 시점의 관측을 하나의 최적화 문제로 놓고 한꺼번에 오차를 줄이는 그래프 기반 SLAM이 널리 쓰입니다.
특히 로봇이 이전에 지나간 장소를 다시 인식해 누적된 오차를 한 번에 바로잡는 폐쇄루프 탐지(loop closure)는 표류 문제를 완화하는 핵심 절차로 자주 언급됩니다. 센서 종류에 따라 라이다 SLAM, 시각 SLAM, 여러 센서를 함께 쓰는 센서 융합 SLAM 등으로 구분되기도 합니다.
주의할 점
SLAM은 완벽한 지도를 한 번에 만드는 기술이 아니라, 센서 오차가 누적되면서 지도와 위치 추정이 조금씩 어긋나는 "표류(drift)" 문제를 안고 있습니다. 그래서 실제 구현에서는 오차를 주기적으로 바로잡는 보정 과정이 함께 필요하며, 위치 추정 자체는 흔히 칼만 필터 같은 추정 기법을 기반으로 합니다.
헷갈리기 쉬운 용어
위치 추정 관련 용어는 층위가 다릅니다.
| 용어 | 하는 일 | SLAM과의 관계 |
|---|---|---|
| SLAM | 지도 작성과 위치 추정을 동시에 수행 | — |
| 오도메트리 | 움직임을 누적해 위치 추정 | SLAM의 입력 중 하나이며 오차가 누적됨 |
| 칼만 필터 | 잡음 있는 측정으로 상태를 추정 | 초기 SLAM의 추정 도구 |
| 라이다 | 레이저로 거리 측정 | SLAM에 쓰이는 센서 |
참고 문헌
- Smith, R., Self, M., & Cheeseman, P. (1990). Estimating uncertain spatial relationships in robotics. In I. J. Cox & G. T. Wilfong (Eds.), Autonomous Robot Vehicles. Springer.
- Durrant-Whyte, H., & Bailey, T. (2006). Simultaneous localization and mapping: Part I. IEEE Robotics & Automation Magazine, 13(2), 99–110.
- Cadena, C., Carlone, L., Carrillo, H., Latif, Y., Scaramuzza, D., Neira, J., Reid, I., & Leonard, J. J. (2016). Past, present, and future of simultaneous localization and mapping: Toward the robust-perception age. IEEE Transactions on Robotics, 32(6), 1309–1332.
- Thrun, S., Burgard, W., & Fox, D. (2005). Probabilistic Robotics. MIT Press.
표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.