자율주행

Day 37: ORB-SLAM 설치 및 ROS 연동

Tech Knowledge Note 2025. 10. 3. 21:00
반응형

1. 서론

이전 글에서 ORB 알고리즘의 특징점 추출 원리를 살펴봤습니다.
이번 글에서는 실제로 ORB-SLAM을 설치하고, ROS(Robot Operating System)와 연동하는 방법을 다뤄보겠습니다.

ORB-SLAM은 비전 기반 SLAM의 대표적인 알고리즘으로, ROS와 결합하면 자율주행, 드론, 로봇 연구 등 다양한 실험 환경에서 강력한 도구가 됩니다.

ORB-SLAM 설치 및 ROS 연동


2. ORB-SLAM 설치 준비

(1) 환경 설정

  • 운영체제: Ubuntu 20.04 (또는 18.04)
  • ROS 버전: ROS Noetic (Ubuntu 20.04), ROS Melodic (Ubuntu 18.04)
  • 필요 패키지: OpenCV, Pangolin, Eigen3, C++11 이상

(2) 필수 패키지 설치 명령어

bash
 
sudo apt update
sudo apt install cmake git libopencv-dev libeigen3-dev libboost-all-dev
sudo apt install ros-noetic-ros-base ros-noetic-cv-bridge ros-noetic-image-transport

3. ORB-SLAM 설치 과정

(1) ORB-SLAM 소스코드 다운로드

(2) 빌드하기

bash
 
cd ~/catkin_ws
catkin_make

빌드가 성공하면 ORB_SLAM2 실행 파일이 생성됩니다.


4. ROS 연동 방법

(1) ROS 패키지 등록

ORB-SLAM은 ROS 패키지로 제공되므로, catkin_ws/src에 위치한 상태에서 빌드하면 자동으로 ROS와 연동됩니다.

(2) ROS Launch 파일 실행

예시: 카메라 토픽을 활용한 ORB-SLAM 실행

 
roslaunch ORB_SLAM2 Mono.launch
  • Mono.launch: 단일 카메라 입력 (모노 비전)
  • RGBD.launch: RGB-D 카메라 입력 (예: RealSense, Kinect)

(3) 실행 화면

실행하면 RViz 창에서 카메라로 추출된 ORB 특징점과 SLAM을 통한 실시간 경로 및 지도 작성 과정을 확인할 수 있습니다.


5. 설치 및 연동 시 유용한 팁

  • OpenCV 버전 충돌 주의 → ROS 버전과 호환되는 OpenCV를 설치해야 오류 방지
  • catkin_make 시 에러 발생 시 → CMakeLists.txt에서 OpenCV 경로를 수동 지정
  • GPU 지원 버전 사용 시 → CUDA 설치 후 빌드 옵션 수정

6. 마무리

오늘은 ORB-SLAM 설치 및 ROS 연동 방법을 정리했습니다.
ROS 환경에서 ORB-SLAM을 구동하면 카메라 데이터를 기반으로 실시간 SLAM을 확인할 수 있으며, 이는 자율주행 및 로봇 연구의 중요한 출발점이 됩니다.

반응형

🔜 다음 글 소개

다음 글에서는 [Day 38: 카메라 데이터로 ORB-SLAM 실행]을 다룹니다.
👉 실제 카메라 데이터를 입력해 ORB-SLAM을 실행하고, 특징점 추출과 지도 작성 과정을 실시간으로 살펴보겠습니다.

반응형