Cognition and State Modeling

OctoMap

OctoMap is a probabilistic 3D occupancy mapping framework based on octrees, commonly used for collision checking, navigation, and planning around observed space.

Tool Introduction

Core parameters, trigger timing, and visual before/after demo references.

Short Explanation

Use OctoMap when execution needs a compact 3D map for free-space, obstacle, and unknown-space queries.

InputPoint clouds or range measurements
OutputProbabilistic 3D occupancy map
Trigger TimingTriggered when the ROS launch file receives synchronized sensor streams.
RuntimeC++ / ROS integration
BeforePoint clouds or range measurements

Prepare the scene, image, video, sensor stream, prompt, or configuration expected by the original project.

AfterProbabilistic 3D occupancy map

Read the produced visualization, prediction, map, trajectory, mask, grasp pose, or other documented artifact.

Parameters And Output

Readable controls and the meaning of each returned artifact.

Parameter Explanation

resolutionnumber

Voxel size of the octree map.

point_cloudfile

3D measurements used to update occupancy probabilities.

Output Explanation

occupancy_tree

Octree storing occupied, free, and unknown cells.

query_result

Occupancy state for a requested 3D location or region.

How To Use

Official resources, deployment steps, academic context, citation, and source-reported benchmark numbers.

Deployment Notes

  1. Install OctoMap directly or through the ROS integration packages.
  2. Feed depth, LiDAR, or fused point-cloud observations into the map updater.
  3. Query the resulting map before planning motions through partially observed scenes.

Relative Path Example

# ROS users typically publish point clouds and consume octomap_server outputs.
ros2 run octomap_server octomap_server_node

Expected Result Shape

{
  "tool": "octomap",
  "status": "ok",
  "trajectory": [
    {
      "label": "3D occupancy mapping",
      "score": 0.87,
      "output": "Probabilistic 3D occupancy map"
    }
  ],
  "timing": {
    "runtime": "The official table focuses on occupancy accuracy and memory rather than a universal runtime figure.",
    "device": "documented in source benchmark when available"
  },
  "artifacts": {
    "visualization": "tools/octomap/runs/visualization.png",
    "raw_predictions": "tools/octomap/runs/predictions.json"
  }
}
Paper figure

Academic Info

Paper identity and contribution summary.

TitleOctoMap: An Efficient Probabilistic 3D Mapping Framework Based on Octrees
AuthorsArmin Hornung, Kai M. Wurm, Maren Bennewitz, Cyrill Stachniss, Wolfram Burgard
VenueAutonomous Robots 2013
ContributionRepresents occupied, free, and unknown space compactly in an octree so robots can query 3D geometry for navigation and manipulation safety.

Citation

@misc{octomap2013,
  title={OctoMap: An Efficient Probabilistic 3D Mapping Framework Based on Octrees},
  author={Armin Hornung and Kai M. Wurm and Maren Bennewitz and Cyrill Stachniss and Wolfram Burgard},
  year={2013},
  note={Autonomous Robots 2013},
  url={https://www.arminhornung.de/Research/pub/hornung13auro.pdf}
}

Benchmark

Only compact, source-reported numbers are shown here.

DatasetMetricValueRuntimeSource
FR-079 corridor, 5 cm resolutionAccuracy / cross-validation97.27% / 96.00%Occupancy map evaluationOfficial Autonomous Robots 2013 paper, Table 1
Freiburg campus, 10 cm resolutionAccuracy / cross-validation97.89% / 95.80%Occupancy map evaluationOfficial Autonomous Robots 2013 paper, Table 1
New College, 10 cm resolutionAccuracy / cross-validation98.79% / 98.46%Occupancy map evaluationOfficial Autonomous Robots 2013 paper, Table 1
Freiburg campus, 10 cm resolutionMemory footprint5162.90 MB 3D grid vs 504.76 MB max-likelihood octree; 13.82 MB lossy fileStorage comparisonOfficial Autonomous Robots 2013 paper, Table 2

Artifacts

Official Autonomous Robots 2013 paper, accuracy table, memory table, and example occupancy maps.

Demo Images

Visual references from the original tool. Click any image to inspect the original size.