  3D models are an essential part of many robotic applications. In applications
where the environment is unknown a-priori, or where only a part of the
environment is known, it is important that the 3D model can handle the unknown
space efficiently. Path planning, exploration, and reconstruction all fall into
this category. In this paper we present an extension to OctoMap which we call
UFOMap. UFOMap uses an explicit representation of all three states in the map,
i.e., occupied, free, and unknown. This gives, surprisingly, a more memory
efficient representation. Furthermore, we provide methods that allow for
significantly faster insertions into the octree. This enables real-time colored
volumetric mapping at high resolution (below 1 cm). UFOMap is contributed as a
C++ library that can be used standalone but is also integrated into ROS.
