LOAM: Lidar Odometry and Mapping in Real-time (작성중)

1 분 소요

이 페이지는 LOAM: Lidar Odometry and Mapping in Real-time 논문 리뷰를 위해 작성했습니다. 논문의 내용과 개인적인 해석이 같이 섞여있으므로 주의를 부탁드립니다. Zhang, Ji & Singh, Sanjiv. (2014). LOAM : Lidar Odometry and Mapping in real-time. Robotics: Science and Systems Conference (RSS). 109-111.

LOAM
Fig. 1. 2축 LiDAR를 이용할때 발생하는 왜곡을 보정하고 Mapping에 활용하는 것을 제안하고자 한다.

이제 논문을 자세히 읽어내려가보자.

논문의 목차

  1. Introduction
  2. Related Work
  3. Notation and Task description
  4. System overview
  5. LiDAR Odometry
  6. LiDAR Mapping
  7. Experiment

1. Introduction

LOAM (LiDAR Odometry and Mapping)은 2축 LiDAR를 사용하여, LiDAR의 이동 속도/위치와 이를 통해 주변 환경 지도를 구성하는 알고리즘이다.

3D Mapping에 있어 LiDAR의 활용은 매우 빈번한데, 이는 센서가 가지는 장점에 기인한다.

  • 거리에 따른 오차가 일정하다.
  • Update 속도가 빠르다.

만약 LiDAR가 움직이지 않는다면, 센서를 통해 얻는 정보를 이용하여 Poitn Cloud의 정합은 어렵지 않겠지만, 하필 문제는 LiDAR는 움직인다는 것이다.

funny example
카메라가 움직이는 동안 개도 움직였다. 개의 움직임을 알았다면 제대로 찍혔을까?

이 문제를 해결하기 위해 사용하는 일반적인 방법에는 GPS/INS 와 같은 위치추정 시스템을 사용하여 LiDAR의 위치를 특정한다거나, 로봇의 바퀴정보(Wheel Encoder), 또는 Visual Odometry 를 사용하여 LiDAR의 위치를 추정하고, point cloud를 정렬/정합할 수 있지만, 이러한 Odometry는 시간이 지남에 따라 누적오차가 커지는 문제가 있어, 이를 줄이기 위해 많은 연구가 이어지고 있다.(Loop Closure)

이 논문에서는 낮은 드리프트로 6자유도로 이동하는 2축 LiDAR를 사용하여 맵을 만드는 경우를 다루고자 한다. 즉 논문의 방법은 Odometry의 drift로 인해 발생하는 문제점을 최소화하는 것, 주로 Loop closure와 관련된 것은 논외로 한다. (intend to push issues related to minimizing drifting in odometry)

이후 논문 맥락을 잠시 적어보면.

  • Feautre 포인트 추출하는 방법

    c 값이 크면 엣지 c 값이 작으면 평면인데, 1 over S(점의 개수) X(점의 거리) X \sigma 중심점과 주변점의 거리

    이 수식은 유익하네.

그리고 4분면으로 나눠서 엣지는 2개, 평면은 4개씩만 허용하고, 엣지는 라인으로 메칭하고, 평면은 패치로 매핑하고.

라이다 스캔이 끝나면, 변환을 적용한 다음 바P 로 변환한다음 계산하는 것.

점과 선, 그리고 점과 면간의 거리를 구한뒤, 이걸 이용해서 라이다의 에고모션을 찾는 과정.

특히 이 에고모션 찾는 과정이 좀 복잡하다. 레벤버그 마르쿼드?

그러면 라이다 오도메트리가 나오니, 매 t_i 마다 interpolation을 활용해서 lidar의 오도메트리를 보정해주고, 이걸로 맵핑한단소린데,

이게 정확도가 좋다는거잖아?

왜……????

어쨌거나 오도메트리를 찾는 과정이 비주얼 오도메트리 찾는것과 심히 비슷하단 느낌이 든다.

수식설명하는 그림이 많이 필요할 듯 하다.

댓글남기기