ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SLAM 개요
    SLAM 2023. 12. 1. 21:44

    1. SLAM?

    SLAM은 Simultaneous Localization and Mapping이다.

    직역하면 동시적 위치 추정 및 지도작성이다.

    • Simultaneous: 동시적
    • Localization: 위치추정
    • and: 및
    • Mapping: 지도작성

     

    SLAM은 원래 로봇기술부터 시작을 했다.

    • Estimates its motion: 로봇은 움직이기 때문에 자기 자신의 위치가 필요하다.
    • Builds a model of its surroundings: 로봇이 움직여서 주변 환경이 변하기 때문에 주변 환경 모델을 구축해야한다.
    • Using a specifc sensor: 센서를 통해 주변 환경 정보를 얻어야한다.
    • Without a priori information: 사전 정보 없이 자신의 위치와 지도 작성을 해야 한다.

    좋은 사전 정보가 있으면 로봇의 위치 추정을 하기 쉽지만, SLAM은 지극히 확률적인 프로세스이기 때문에 사전 정보 없이 위치 추정 및 지도 작성이 가능하다.

     

    2. Robotics

    SLAM은 Moblie Robotics에서 시작을 하였다.

    • Mobile: 이동 가능한
    • Robotics: 로보틱스

    Mobile Robotics는 사람이 갈 수 없는 위험한 곳을 가거나 인건비 절약을 위해 개발이 되었다.

    시작은 공장과 같이 고정된 위치에서 로봇이 움직여서 다양한 작업 환경에서 작업을 할 수 있는 로봇에서부터 시작을 하였다.

    하지만 이는 단순 작업에 불과했으며, Mobile Robotics는 다음의 조건을 가져야 한다.

    • 인지
    • 결정
    • 행동

     

    로봇이 이동을 한다는 것은 이동할 수 있는 곳과 이동할 수 없는 곳을 구별하는 것이다.

    세상에 완벽한 센서는 없다.

    센서는 물리적 정보를 수치적 기반으로 측량하는 도구이다. 우리는 센서로 주변 공간을 인지할 수 있지만, Noise가 존재하기 때문에 항상 오차가 발생한다.

    Noise로 인해 완벽한 정답을 얻을수는 없지만, 완벽에 가까운 정답을 얻는다는 목표를 가지고 있다.

     

    • Perception = 주변 공간 인지
      • 이동 가능한 공간 vs 이동 불가능한 공간
    • Exteroceptive sensing: Mobile robot이 외부 환경을 인식하는 센서 ex) Lidar, Camera
      • Extro: 외부
      • ceptive: 감각
    • Proprioceptive sensing: 나 자신의 위치를 인식하는 센서 ex) IMU, GPS 등
      • Pro: 나 자신
      • ~captive: 감각, 인지

    위와 같은 센서들로 외부 환경 인식과 나 자신의 위치를 인식할 수 있기 때문에 이 두 가지 방법을 빠르게 반복하면 될 것이다.

    이를 Perception & Control feedback loop라고 한다.

    • Perception & Control feedback loop의 단점
      • Proprioceptive sensing의 안전성 확보가 어려움.
      • Exteroceptive sensing / Proprioceptive sensing의 신뢰도가 낮음.
      • 노이즈를 분석하는 동안 이동할 수 없음.

    모든 센서들은 확률적으로 센싱이 가능하다.

    우리가 안전성 및 신뢰도를 얻기 위해 다음의 방법을 사용할 수 있지만, 단점도 존재한다.

    1. 여러개의 센서를 달고 평균값을 얻기. 단점: 비쌈, 센서마다 정확도가 다르면 문제가 발생.
    2. Extroceptive sensing(주변 환경을 감지)을 이용하여 측정값을 다시 보고 Propripceptive sensing(나 자신을 인지)이 맞는지 확인.(보정) 단점: 하나라도 부정확한 센서를 가지고 있다면, 진정한 값을 얻기 힘들다.

    안전한 데이터를 위해 여러번의 센서 값을 얻으려면, 모바일 로봇의 이동속도가 엄청나게 느려진다.

    즉, 완벽한 모바일 로봇의 시스템은 지속적으로 움직이며 모션과 주변 환경을 인지해야하고, Proprioceptive sensing Extroceptive sensing을 안전적으로 취득해아 한다.

     

    3. Localization, Mapping and SLAM

    완벽한 시스템을 만들기 위해 두 연구분야 Localization, Mapping이 생겼으며 Localization은 Proprioceptive sensing Mapping은 Extroceptive sensing을 연구하고 두 연구가 합쳐져서 SLAM이 개발되었다.

    Proprioceptive sensing과 Extroceptive sensing은 각각 확률 분포를 가지고 있다.

     확률 분포를 조합할 수 있는 방법이 있을까??

     

    확률 분포를 조합할 때는 조심해야 한다.

    Extroceptive sensing이 정확할 때 Proprioceptive sensing이 부정확함을 확인하고 보정이 가능했다. 하지만 Extroceptive sensing이 부정확 하면 Proprioceptive sensing을 보정할 수 없다.

    Proprioceptive sensing이 정확하다면, Extroceptive sensing의 보정이 가능하다.

    즉, 두 확률 분포중 하나만이라도 정확하다면 나머지 하나를 보정할 수 있다.

    1. Localization: Extroceptive sensing이 상대적으로 더 정확함. → Proprioceptive sensing 보정 가능
    2. Mapping: Proprioceptive sensing이 상대적으로 더 정확함. → Extroceptive sensing 보정 가능

     

    자율주행에서 정확한 지도 위치를 정확히 파악하는 것은 중요하다.

    • Mapping
      • Given accurate motion information
      • Reconstruct a map
    • Localization
      • Given an accurate map,
      • Estimate vehicle pose

    하지만 Localization & Mapping 방식도 단점이 있다.

    우리가 받아서 사용하는 힌트로 인해서 제약 조건이 생긴다.

    만약, 힌트가 부정확하다면 힌트가 주어지지 않는다면 기능을 제대로 수행할 수 있을까?

     

    대표적인 예시로 Monte Carlo Localization이 있다.

    Monte Carlo Localization은 지도가 사전 정보로 주어졌을때, Particle filter 기법으로 위치를 추정할 수 있다.

    Observation(Extroceptive sensing)정보와 Motion(Proprioceptive sensing)정보의 확률 분포를 조합하여 Optimal한 정보인 로봇의 Pose를 찾는 기법이다.

    Monte Carlo Localization

    이 과정을 여러번 반복하여 로봇이 실제로 존재하는 위치를 찾아준다.

    하지만, 데이터가 부정확하거나 지도가 없다면 이 알고리즘을 사용할 수 없다.

     

    • Chicken and Egg problem
      • Localization requires 'High-quality map'
      • Mapping requires 'High-quality pose information'

    Localization에는 높은 퀄리티의 지도가 필요.

    Mapping에는 정확한 Pose 정보가 필요.

     

    이를 해결하기 위해 SLAM(Simultaneous Localization and Mapping)이 나왔다.

    최적의 Map과 최적의 Odometry추정을 동시에 진행해야 한다.

     

    정리

    • SLAM: 위치 및 지도 정보가 아예 없거나 불안정할때 사용할 수 있다.
      • When?
        • Low quality map exists
        • Low quality position information exists
        • or none of them exists.
      • Dose What?
        • Estimates optimal pose + map information, without any prior information
    • Localization
      • When?
        • High quality map exists
      • Dose What?
        • Estimates optimal pose, with prior map
    • Mapping
      • When?
        • High quality position information exists
      • Dose What?
        • Estimates optimal map, with prior pose information

     

    고품질의 사전 정보가 있다면, Localization, Mapping중 하나만으로도 구현을 할 수 있지만, 업계에서는 두 기술을 모두 알아야한다.

    'SLAM' 카테고리의 다른 글

    Computer Vision & Visual-SLAM  (0) 2023.11.30
Designed by Tistory.