forked from ctu-mrs/RMS
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add Run it yourself section with example
- Loading branch information
Showing
13 changed files
with
91 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -52,10 +52,32 @@ roslaunch rms rms_nodelet.launch NS:=<NAMESPACE> points_in:=<POINTS IN TOPIC> po | |
sensor_msgs::PointCloud2::Ptr msg = ...; | ||
rms->sample(msg); // 'msg' now contains sampled data | ||
``` | ||
- **example**: `RMSNodelet` implemented in [src/rms_nodelet.cpp](https://github.com/ctu-mrs/RMS/blob/master/src/rms_nodelet.cpp) | ||
- **example usage**: `RMSNodelet` implemented in [src/rms_nodelet.cpp](https://github.com/ctu-mrs/RMS/blob/master/src/rms_nodelet.cpp) | ||
|
||
### Example | ||
[WORK IN PROGRESS] To be added in coming days. | ||
### Run it yourself | ||
To complement the in-paper experiments, we offer comparison on the [MulRan](https://sites.google.com/view/mulran-pr/dataset) dataset by plugging its 3D LiDAR (Ouster OS1-64) data to the [KISS-ICP](https://github.com/PRBonn/kiss-icp) odometry. | ||
For **ROS Noetic**, you may follow this workflow: | ||
|
||
1) Click [here](todo) to download the `Sejong01` sequence rosbag. | ||
2) Install RMS (see `Installation` above). | ||
3) Clone, compile, and source our [KISS-ICP fork](https://github.com/petrapa6/kiss-icp) (minor changes made for ROS Noetic and launching). | ||
```bash | ||
cd ~/ROS1_WORKSPACE/src | ||
git clone [email protected]:petrapa6/kiss-icp.git | ||
cd kiss_icp | ||
git checkout noetic | ||
catkin build --this | ||
source ~/ROS1_WORKSPACE/devel/setup.sh | ||
``` | ||
4) Launch as: | ||
```bash | ||
roslaunch kiss_icp odometry.launch bagfile:=<PATH TO ROSBAG> topic:=/mulran/velo/pointclouds use_RMS:=[true | false] | ||
``` | ||
|
||
[**Results for the `Sejong01` experiment here.**](https://github.com/ctu-mrs/RMS/blob/master/example/sejong01.md). | ||
APE of the experiment (voxelization in blue, RMS in orange): | ||
|
||
![ape rms](./example/fig/APE_comparison.png) | ||
|
||
## How to cite | ||
```tex | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
## MulRan: Sejong01 | ||
|
||
Experiment summary: | ||
- Robot: car | ||
- Sensor: Ouster OS1-64 | ||
- Odometry: KISS-ICP | ||
- Trajectory length: 23 km | ||
- Duration: 47 min | ||
- Mean speed: 12.4 m/s | ||
- Max speed: 20.3 m/s | ||
- Results below comptued on: AMD Ryzen 7 PRO 4750U | ||
|
||
Graphs' legend from top to bottom: | ||
|
||
- timing (better: higher) | ||
- compression (better: higher) | ||
- per-point information in the optimization (better: higher) | ||
- \# of ICP iterations till convergence (better: lower) | ||
|
||
### Pure KISS-ICP | ||
Results: Unstable with a lot of redundancy in the data. | ||
|
||
![data vanilla](./fig/plot_vanilla.png) | ||
|
||
### KISS-ICP preceded by RMS | ||
Results: | ||
Low and stable timing+compression, which effectively lowers the \# of ICP iterations (registration time lowered 12 times on average!). | ||
High level of information preserved. | ||
|
||
![data rms](./fig/plot_RMS.png) | ||
|
||
### APE and RPE comparison | ||
$${\color{blue}\text{Blue}$$: pure KISS-ICP, $${\color{orange}\text{orange}$$: KISS-ICP preceded by RMS. | ||
Results: Higher drift reduction by RMS. | ||
|
||
| Sampling method | RMSE (m) | mean (m) | median (m) | max (m) | | ||
| Voxelization | 7100 | 6511 | 7815 | 9581 | | ||
| RMS | 2230 | 1953 | 2352 | 3292 | | ||
|
||
![ape rms](./fig/APE_comparison.png) | ||
|
||
| Sampling method | RMSE (m) | mean (m) | median (m) | max (m) | | ||
| Voxelization | 17.9 | 4.3 | 2.7 | 1311.6 | | ||
| RMS | 3.1 | 2.9 | 2.6 | 21.6 | | ||
|
||
![rpe rms](./fig/RPE_comparison.png) | ||
|
||
### Example sampling of a single frame | ||
![frame](./fig/sampling_example.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters