[SLAM] Odometry

최재혁·2022년 2월 1일
1

Odometry?

주행 기록계라는 의미로 Encoder(바퀴의 회전수), IMU(관성)
등의 센서를 기반으로 움직이는 물체의 위치를 측정하는 방법이다.

Calculate?

바퀴의 회전을 통해 이동을 계산하는 Model을 필요로 한다.

대표적인 Mobile Robot Model

  • Ackermann Steering Model
    • 일반적인 후방 구동, 전방 조향의 차량 model
    • 전방 조향을 통해 원 궤적을 그리는 형태로 주행 가능
    • Pure Pursuit : 역으로 계산 시 원하는 위치에 이동하기 위한 조향각을 계산 할 수 있음
  • Differential Drive Model
    • 각 바퀴의 제어 차량 model
    • 바퀴 사이의 속도 차이를 이용하여 전진, 후진 및 회전을 제어가능

Dead Reckoning

Odometry와 유사, 실외에서 GPS연결이 끊기는 경우 아래의 정보등 을 이용하여 차량위치를 추정하는 방법

  • 차량 model
  • 차량 속도
  • Heading Angle

Visual Odometry

카메라 영상의 Frame과 Frame 차이를 비교하는 방식을 통해 Odometry를 계산하는 기술이며 6-DOF의 궤적을 계산
이동속도가 너무 빠르거나, Frmae Drop 등이 발생할 때 정확도 급격히 감소
Wheel Odometry, IMU Odometry, Visual Odometry를 전부 Fusion하여 사용하면 정확도 향상에 도움이 됨
T265 Tracking Camera : Intel RealSense 계열, 내부적으로 Visual Odometry 기능, Visual SLAM 기능 포함됨

Transformation

TF는 Frame 사이의 변환 관계를 나타내는 Topic
변환 관계를 정리 시 Tree의 형태로 확인 가능
일반적으로 Reference Frame을 기준으로 Sensor Data값이 어떻게 들어 오는지 변환하여 사용하거나, Odometry 정보를 나타낼 때 사용


3D - 3D 사이의 좌표 변환 관계인 6-DOF info

  • x, y, z
  • roll, pitch, yaw

TF Demo
http://wiki.ros.org/tf2

$ sudo apt install ros-melodic-turtle-tf2 ros-melodic-tf2-tools ros-melodic-tf
$ roslaunch turtle_tf2 turtle_tf2_demo.launch
profile
Autonomous driving vision

0개의 댓글