This is a modified version of the original livox_mapping.
- Make the original project able to run with ROS Noetic in Ubuntu 20.04.
- Collect a multiview point cloud that contains multiple fiducial markers for our new work Fiducial Marker Detection in Multi-Viewpoint Point Cloud.
- Save the intensity values for the points of the final 3D map.
- Solved the conflicts between the old-version OpenCV and the OpenCV inside Noetic. (Cmake error will occur otherwise)
- Solved the display issue caused by different rviz versions. Now, even using Noetic, you can watch the mapping process without changing the settings in rviz.
- Added a new script to convert the format of the final-built 3D map from RGB8 to XYZI.
map.mp4
git clone https://github.com/York-SDCNLab/Modified_livox_mapping.git
cd modified
cd catkin_ws
catkin_make
If you see a CMake error at this step complaining about livox_ros_driverConfig.camke, you need to install livox_ros_driver first. Once livox_ros_driver is installed, in the catkin_ws of livox_ros_driver, open a terminal and type in source ./devel/setup.bash
. Then go back to the catkin_ws of this project, redo catkin_make
(in the same terminal).
source ./devel/setup.bash
roslaunch livox_mapping mapping_mid.launch
Open a new terminal and type in
rosbag play yourbagname
Now you can observe the mapping in rviz directly. The PCD file (RGB8) of the 3D map will be saved in the folder named 'original_livox_mapping_result' under your home path. You may change the name of the folder in the launch file.
The rosbag corrsponding to the video above is available here.
The point type outputted by the livox mapping is XYZRGB. The folder named RGB2XYZI contains a script to convert the format.
cd RGB2XYZI
mkdir build
cd build
cmake ..
make
mkdir input
Copy the 3D map named all_points from 'original_livox_mapping_result' into the input folder. Then in the build folder, do
./RGB2XYZI
In the input folder, a pcd file named out.pcd will be generated.