카테고리 없음

LIO-SAM을 이용한 3D Map 만들기(Foxy)

Wood Pecker 2024. 1. 24. 12:15

1. 개요

   Lio-SAM프로그램은 Humble에서는 설치가 어렵다. Foxy에서 설치하면 설치가 용이하다.   Lio-SAM프로그램은 GTSAM 라이브러리를 사용하는데 Foxy 바이너리 설치를 지원한다. 다른 버전은 소스에서 설치할 수 있는데 버전 문제 등 설치가 매우 어렵다. 결국 Foxy에서 Lio-SAM프로그램을 사용하였다.   Lio-SAM프로그램을 이용하여 3D map인 PCD 파일을 만들어 본다.

[참고] LIO-SAM(동영상)  https://www.youtube.com/watch?v=NNR9RUNz5Pg

         원본(github): https://github.com/TixiaoShan/LIO-SAM

 

2. 환경 구축하기

  기본적으로 ROS2(Foxy)환경이 설치되었다고 가정한다.

  아래 주소에서 다운로드를 받아서 설치한다

  https://drive.google.com/drive/folders/15RzJOWTHs74MB8u_LxLM5RkA4gvQjYHj

 

  > cd  ~/lio_sam_ros2_gazebo           <= 이  폴더에 압축을 푼 파일이 들어 있다

  > sudo apt install python3-colcon-common-extensions    <= 대부분 이미 설치 되어 있을 것이다

 > sudo apt install ros-foxy-gazebo-ros

 > sudo apt install ros-foxy-gazebo-ros2-control

 > sudo apt install ros-foxy-ros2-controllers

 > sudo apt install ros-foxy-gazebo-ros-pkgs

 

 다음은 GTSAM의 설치이다. 

= foxy에서설치하기 =

 > sudo add-apt-repository ppa:borglab/gtsam-release-4.0

 > sudo apt update

 > sudo apt install libgtsam-dev libgtsam-unstable-dev

 > sudo snap install cloudcompare

 

 시뮬레이션 준비가 거의 완성되었다.  아래 폴더에 있는 3개의 모델 파일을 홈-폴더의 .gazebo/models파일에 복사한다.

 이곳에 있는  모델 파일을 홈 폴더의 .gazebo 폴더(숨김해제) 아래의 models 폴더에 복사한다.

  > cd ~/lio_sam_ros2_gazebo/models  

  > cp  -r  *   ~/.gazebo/models/.

 

lio_sam_ros2_gazebo를 빌드한다.

> cd ~/lio_sam_ros2_gazebo

> sudo apt install ros-foxy-perception-pcl  ros-foxy-pcl-msgs  ros-foxy-vision-opencv ros-foxy-xacro

> colcon build 

> source ./install/setup.bash

> ros2 launch robot_gazebo robot_sim.launch.py

 

 

# second terminal

> cd ~/lio_sam_gazebo_ros

> source ./install/setup.bash

> ros2 launch lio_sam run.launch.py

 Rviz2를 종료하면 ~/Downloads/LOAM 폴더에 pcd 파일이 생성된다.

 

작성된 3D MAP(PCD 파일)을 확인하여 보자.

> cd ~/Downloads/LOAM

>  sudo apt install pcl-tools
>  pcl_viewer cloudGlobal.pcd
   아래와 같이 3차원의 3D Map을 볼 수있다.

 

 

 

반응형