The next best view planner is a real-time capable exploration path planner. From the current pose it expands a tree to find a next pose that gives a high exploration gain. This gain reflects the exploration of space that is not yet (sufficiently) known. As the vehicle proceeds on the path, the tree is recomputed, taking into account the new information from the sensor.
This README gives a short overview. For more information refer to the wiki.
To run the current version, compile the package nbvplanner. To get it navigate to the source folder of your ros workspace:
git clone https://github.com/ethz-asl/nbvplanner.git
cd nbvplanner
git submodule init --
git submodule sync --recursive
git submodule update --recursive
cd ..
Moreover, make sure you have all the necessary libraries:
apt-get install ros-<distro>-octomap-*
apt-get install python-catkin-tools
catkin build
For a simulation demo launch
roslaunch interface_nbvp_rotors flat_exploration.launch
Tested under ROS Indigo and Jade.
Further instructions for the visualization of the exploration progress, as well as more demo scenarios and descriptions of the parameters can be found in the wiki.
If you use this software in a scientific publication, please cite the following paper:
@inproceedings{bircher2016receding,
title={Receding horizon "next-best-view" planner for 3D exploration},
author={Bircher, Andreas and Kamel, Mina and Alexis, Kostas and Oleynikova, Helen and Siegwart, Roland},
booktitle={2016 IEEE International Conference on Robotics and Automation (ICRA)},
pages={1462--1468},
year={2016},
organization={IEEE}
}
This algorithm was developed by Andreas Bircher with the help and support of the members of the Autonomous Systems Lab. The work was supported by the European Commission-funded project AEROWORKS.
You can contact us for any question or remark: