Some convenient tools used in ROS. Contents:
- For KITTI
- Building globalmap with dynamic objects and publishing to rviz and saving.
- Converting KITTI scans to range images.
- Adding ring 0-63 information.
- Others
- Removing dynamic objects using octomap offline.
-
Based on C++17
-
ROS (and Eigen, PCL, OpenMP): the all examples in this readme are tested under Ubuntu 20.04 and ROS Noetic.
-
Kitti data setups
- 百度网盘Kitti data 提取码: jbbc
Car Settings
- Building globalmap with dynamic objects and publishing to rviz and saving.
roslaunch ros_tools play_kitti.launch
Global Map with Dynamic Objects in Red | |||||
---|---|---|---|---|---|
00 | 01 | 02 | 03 | 05 | 04 |
06 | 07 | 08 | 09 | 10 | |
-
Naive raycasting: Using raycasting methods to remove dynamic objects.(Not upload yet)
Original map Raycasting dynamic removal -
kitti2range_image: Convert the kitti velodyne to range images. 貌似kitti数据集的lidar frame 180度左右存在一个严重的噪点数据,从图像中心可以看出来,有一个蓝色近距离点
roslaunch ros_tools range_images.launch
- Adding ring 0-63 information:
- kblistening:Check whether the keyboard is pressed so that the publication of bin can pause like rosbag.
-
requirement:
sudo apt-get install libncurses5-dev libncursesw5-dev target_link_libraries(your_target_name -lncurses)
-
- Subscribe to the topic, and save the pointcloud to pcd file.
rosrun pcl_ros pointcloud_to_pcd input:=/point_cloud_topic _prefix:=./pcd_save_path
- mp4 to gif.
ffmpeg -t 60 -ss 00:00:01 -i Screencast_2019-02-13-24.mp4 out.gif
-t 要截取的视频时长
-ss 开始时间
-i 源视频文件
out.gif 为输出文件名
- 转换为range images需要的一些参数:
Removert: https://github.com/irapkaist/removert