gazebo/SLAM

SLAM ( Simultaneous Localization and Mapping ) 이란?

정지홍 2025. 2. 24. 07:59

SLAM

  • 동시적 위치 추정 및 지도 작성을 의미
  • 로봇이 미지의 환경에서 자신의 위치를 파악하면서, 동시에 지도를 생성하는 기술이다.
    • 자율주행 로봇 , 드론 , 자율주행차 , 증강현실 등에서 사용된다.

 

  • 핵심 개념 ( slam은 아래 2가지 문제를 동시에 해결해야한다. )
    • Localization  로봇의 위치추정
      • 로봇은 현재 자신이 어디에 있는지 파악해야함.
        센서 데이터를 활용해서 이전 위치외 현재 위치를 비교하고, 이동 방향과 거리를 계산한다.
    • Mapping 지도 작성
      • 로봇은 주변 환경의 지도를 구축해야함. 
        그래서 여러 센서를 가지고 주변 장애물,벽,통로 등의 위치를 파악하고 점진적으로 지도를 완성한다. 
    • ===> slam의 목표는 gps와 같은 외부의 위치 정보에 의존하지 않고, 미지의 환경에서도 정확한 지도와 자기 위치를 알아내는 것

 

  • slam의 현실적 어려움
    • 센서 노이즈  sensor noise
      • 라이더,카메라 같은 센서는 측정 오차가 존재. 이로 인해서 센서 노이즈를 보정하지 않으면 지도와 위치 추정이 부정확해질 수 있음
    • 드리프트 오류 drift error
      • 연속적인 위치 추정 과정에서 오차가 누적되어서, 로봇의 위치가 점점 틀어질수있음.
        slam에서는 로봇이 센서 데이터를 가지고 자신의 위치를 지속적 업데이트 하지만, 센서 오차가 완벽히 제거 된지 않아서 시간이 지남에 따라서 오차가 점점 커짐 
    • 데이터 연관 문제 data association
      • 로봇이 이동하면서 같은 장소를 다시 방문했을때, 기존 데이터와 새로운 데이터를 일치시키는 것이 어렵다.
    • 연산 비용 computational cost
      • 대량의 데이터를 실시간 처리해야하니 계산량이 많아져서 고성능 hw가 필요할수있음.

 

 

  • slam의 주요 기법
    • 1. 확률적 기법 ( 센서의 불확실성을 고려해서 위치를 추정, Probabilistic SLAM )
      • 1-1. 확장 칼만 필터 기반 slam ( EKF SLAM , extended kalman filter slam )
        • 확장 칼만 필터를 사용. ( 상태 벡터와 공분산 행렬을 이용해서, 예측과 업데이트를 반복. 데신에 계산량이 많아서 큰 환경에서는 비효율적일 수 있다. )
      • 1-2. FastSLAM
        • 몬테카를로 로컬라이제이션MCL기법을 사용해서 Particle Filter를 사용함.
        • EKF SLAM보다 계산량이 적으며 높은확률로 정확한 지도를 만들수있다. 대신에 파티클 수가 많아지면 계산량이 증가하는 단점이 존재.
    • 2. 그래프 기반 기법 ( 로봇의 이동 경로를 노드, 환경 데이터를 엣지로 모델링해서 최적화 하는 방식 )
      • 2-1. GraphSLAM
        • 로봇의 위치와 센서 데이터 사이의 관계를 그래프로 표현하고, 최적화 알고리즘으로 오차를 줄여서 정확한 지도와 위치를 추정. ( 데이터 연관 문제를 효과적으로 해결가능 )
      • 2-2. GTSAM ( georgia tech smoothing and mapping )
        • 그래프 최적화 방식의 대표적인 라이브러리.
          비선형 최적화 알고리즘을 활용해서 위치 추정과 지도 작성 정확도를 높임.

 

 

 

 

  • slam의 종류
    • 1. LiDAR기반의 SLAM
      • 라이다 센서를 사용해서 3d or 2d 점군(point cloud)를 수집하고, 이를 기반으로 환경 지도 생성
      • ex)
        • Hector SLAM , Gmapping , Cartographer
    • 2. visual SLAM
      • 카메라를 사용해서 SLAM을 수행하는 방식이며, RGB or RGB-D 데이터를 활용함 
      • ex)
        • ORB-SLAM , LSD-SLAM , DSO
      • 라이다 기반보다 저렴하나 조명 환경에 영향받음.

'gazebo > SLAM' 카테고리의 다른 글

pySLAM  (1) 2025.12.06
rtabmap으로 3d 지도 작성  (0) 2025.06.27
rtabmap ros 연습  (0) 2025.06.20
Mono SLAM ( Monocular Simultaneous Localization and Mapping )  (0) 2025.02.25
SLAM 종류  (0) 2025.02.24