-
Notifications
You must be signed in to change notification settings - Fork 54
Performance
UFOMap introduced a new fast integrator. This integrator is freeing space at a higher level in the octree, making it significantly faster while still preserving the occupied space.
Method | Voxel size (cm) | Time (ms) |
---|---|---|
UFOMap OctoMap |
16 |
4.98 ± 1.30 5.52 ± 1.66 |
UFOMap UFOMap fast OctoMap |
8 |
12.3 ± 7.4 6.5 ± 2.2 16.3 ± 10.4 |
UFOMap UFOMap fast OctoMap |
4 |
60.9 ± 44.7 10.9 ± 4.7 104.6 ± 82.2 |
UFOMap UFOMap fast OctoMap |
2 |
371 ± 254 28 ± 15 745 ± 548 |
UFOMap fast is always freeing space at 16 cm voxel size in this case.
Performed on the cow dataset.
UFOMap differentiates between inner nodes and leaf nodes and is packing the nodes more densly. This means UFOMap uses less memory compared to OctoMap.
Dataset | Voxel size (cm) | UFOMap (MiB) | OctoMap (MiB) |
---|---|---|---|
FR-078 tidyup | 5 | 7.42 | 21.49 |
FR-079 corridor | 5 | 19.70 | 51.86 |
Freiburg campus | 20 | 58.71 | 155.46 |
freiburg1_360 | 2 | 15.98 | 42.05 |
New College | 20 | 29.41 | 75.40 |
Performed on the OctoMap 3D scan dataset.
UFOMap's explicit representation of unknown space means it has more nodes in total compared to OctoMap. However, as seen in Memory Consumption above, it still uses less memory.
Dataset | Voxel size (cm) | UFOMap | OctoMap |
---|---|---|---|
FR-078 tidyup | 5 | 1 642 113 | 1 369 165 |
FR-079 corridor | 5 | 2 823 713 | 1 829 134 |
Freiburg campus | 20 | 8 402 193 | 5 515 178 |
freiburg1_360 | 2 | 2 161 849 | 1 547 112 |
New College | 20 | 4 157 217 | 2 633 701 |
Performed on the OctoMap 3D scan dataset.
Using UFOMap for RH-NBVP exploration significantly increases the exploration performance.
You can read more about UFOMap in the paper.
If you use UFOMap in a scientific publication, please cite the following paper:
@article{duberg2020ufomap,
author={Daniel Duberg and Patric Jensfelt},
journal={IEEE Robotics and Automation Letters},
title={{UFOMap}: An Efficient Probabilistic {3D} Mapping Framework That Embraces the Unknown},
year={2020},
volume={5},
number={4},
pages={6411-6418},
doi={10.1109/LRA.2020.3013861}
}
If you use UFOMap in a scientific publication, please cite the following paper:
@article{duberg2020ufomap,
author={Daniel Duberg and Patric Jensfelt},
journal={IEEE Robotics and Automation Letters},
title={{UFOMap}: An Efficient Probabilistic {3D} Mapping Framework That Embraces the Unknown},
year={2020},
volume={5},
number={4},
pages={6411-6418},
doi={10.1109/LRA.2020.3013861}
}
- Creating a UFOMap
- Integrate Point Cloud into UFOMap
- Collision Checking
- K-Nearest Neighbor Search
- Saving UFOMap to File
- Loading UFOMap from File
- Convert Between UFOMap and OctoMap
- ROS Tutorials
- Introduction
- CmakeLists.txt and package.xml
- UFOMap Publisher
- UFOMap Subscriber
- Integrate sensor_msgs/PointCloud2
- Perform Mapping
- Visualize UFOMap in RViz
- Convert Between UFOMap and OctoMap
- General UFOMap Usage
- Advanced ROS Tutorials