Skip to content

Latest commit

 

History

History
190 lines (131 loc) · 6 KB

README.md

File metadata and controls

190 lines (131 loc) · 6 KB

GenZ-ICP ROS wrappers

⚙️ How to build & Run

ROS1

How to build

You should not need any extra dependency, just clone and build:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/cocel-postech/genz-icp.git
cd ..
catkin build genz_icp --cmake-args -DCMAKE_BUILD_TYPE=Release
source ~/catkin_ws/devel/setup.bash

How to run

Option 1

If you want to use a pre-tuned parameter set, you need to provide the config file with the topic name as arguments:

roslaunch genz_icp odometry.launch topic:=<topic_name> config_file:=<config_file_name>.yaml
rosbag play <rosbag_file_name>.bag

For example,

  1. Long_Corridor sequence of SubT-MRS dataset
roslaunch genz_icp odometry.launch topic:=/velodyne_points config_file:=long_corridor.yaml
rosbag play subt_mrs_long_corridor.bag

The original bagfile for the Long_Corridor sequence of SubT-MRS dataset can be downloaded from here

subt_mrs_long_corridor.bag includes only the /velodyne_points topic and can be downloaded from here

Alternatively, you can download it using the following command:

wget https://postechackr-my.sharepoint.com/:u:/g/personal/daehanlee_postech_ac_kr/EduGeuaT5ypBvSQY539XFEgBRSsQSUopeNjalk9jJqyq5Q?e=2IM8ed&download=1 -O subt_mrs_long_corridor.zip
  1. Exp07 Long Corridor sequence of HILTI-Oxford dataset
roslaunch genz_icp odometry.launch topic:=/hesai/pandar config_file:=exp07.yaml
rosbag play exp07_long_corridor.bag

The bagfile for the Exp07 Long Corridor sequence of HILTI-Oxford dataset can be downloaded from here

  1. Corridor1 and Corridor2 sequences of Ground-Challenge dataset
roslaunch genz_icp odometry.launch topic:=/velodyne_points config_file:=corridor.yaml
rosbag play corridor1.bag && rosbag play corridor2.bag

The bagfile for the Corridor1 and Corridor2 sequences of Ground-Challenge dataset can be downloaded from here

  1. short experiment sequence of Newer-College dataset
roslaunch genz_icp odometry.launch topic:=/os1_cloud_node/points config_file:=newer_college.yaml
rosbag play rooster_2020-03-10-10-36-30_0.bag && rosbag play rooster_2020-03-10-10-39-18_1.bag && rosbag play rooster_2020-03-10-10-42-05_2.bag && rosbag play rooster_2020-03-10-10-44-52_3.bag && rosbag play rooster_2020-03-10-10-47-39_4.bag && rosbag play rooster_2020-03-10-10-50-26_5.bag && rosbag play rooster_2020-03-10-10-53-13_6.bag && rosbag play rooster_2020-03-10-10-56-00_7.bag && rosbag play rooster_2020-03-10-10-58-47_8.bag && rosbag play rooster_2020-03-10-11-01-34_9.bag

The bagfile for the short experiment sequence of Newer-College dataset can be downloaded from here

  1. Seq. 00 of KITTI odometry dataset
roslaunch genz_icp odometry.launch topic:=/velodyne_points config_file:=kitti.yaml
rosbag play 00.bag

The bagfile for the Seq. 00 of KITTI odometry dataset can be downloaded from here

Alternatively, you can download it using the following command:

wget https://postechackr-my.sharepoint.com/:u:/g/personal/daehanlee_postech_ac_kr/EVxChaGoOiJIr5vTy44DNUIBlAs4Mbld5wj94qJYyWwAKg?e=ZPE6JT&download=1 -O 00.zip

If you need bag files for other sequences, you can download the original files from here and convert them using lidar2rosbag_kitti

Option 2

Otherwise, the only required argument to provide is the topic name:

roslaunch genz_icp odometry.launch topic:=<topic_name>
rosbag play <rosbag_file_name>.bag

Check out the tuning guide for the parameters of GenZ-ICP at this link

ROS2

How to build

You should not need any extra dependency, just clone and build:

mkdir -p ~/colcon_ws/src
cd ~/colcon_ws/src
git clone https://github.com/cocel-postech/genz-icp.git
cd ..
colcon build --packages-select genz_icp --cmake-args -DCMAKE_BUILD_TYPE=Release --symlink-install
source ~/colcon_ws/install/setup.bash

How to convert ROS1 bag files to ROS2 bag files (.db3)

To use above demo datasets with ROS2, they must be converted to either .db3 (SQLite) or .mcap format.

  1. Install the rosbags conversion tool:
pip3 install rosbags
  1. Convert the ROS1 bag file to ROS2 format:
rosbags-convert --src <rosbag_file_name>.bag --dst <rosbag_file_name>

The generated <rosbag_file_name> folder will contain a .db3 (SQLite) file and a corresponding metadata .yaml file.

How to run

Option 1

If you want to use a pre-tuned parameter set, you need to provide the config file with the topic name as arguments:

ros2 launch genz_icp odometry.launch.py topic:=<topic_name> config_file:=<config_file_name>.yaml
ros2 bag play <rosbag_file_name>.db3

Option 2

Otherwise, the only required argument to provide is the topic name:

ros2 launch genz_icp odometry.launch.py topic:=<topic_name>
ros2 bag play <rosbag_file_name>.db3

Check out the tuning guide for the parameters of GenZ-ICP at this link