HTTP/2 301
server: GitHub.com
content-type: text/html
location: https://pointclouds.org/documentation/group__octree.html
x-github-request-id: 7AB4:3157C7:93B150:A5D993:6952EC3B
accept-ranges: bytes
age: 0
date: Mon, 29 Dec 2025 21:01:47 GMT
via: 1.1 varnish
x-served-by: cache-bom-vanm7210046-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1767042107.066088,VS0,VE196
vary: Accept-Encoding
x-fastly-request-id: b1474a2b1709dbc1b77ea4ed78d5309a2b09664e
content-length: 162
HTTP/2 200
server: GitHub.com
content-type: text/html; charset=utf-8
last-modified: Sat, 27 Dec 2025 10:50:25 GMT
access-control-allow-origin: *
etag: W/"694fb9f1-3bed"
expires: Mon, 29 Dec 2025 21:11:47 GMT
cache-control: max-age=600
content-encoding: gzip
x-proxy-cache: MISS
x-github-request-id: 1C71:3827E5:958CDC:A7CA73:6952EC3A
accept-ranges: bytes
age: 0
date: Mon, 29 Dec 2025 21:01:47 GMT
via: 1.1 varnish
x-served-by: cache-bom-vanm7210047-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1767042107.318934,VS0,VE204
vary: Accept-Encoding
x-fastly-request-id: dcee408f5862b56b508e7cd705ad235a154b565a
content-length: 2976
Overview
The pcl_octree library provides efficient methods for creating a hierarchical tree data structure from point cloud data. This enables spatial partitioning, downsampling and search operations on the point data set. Each octree node has either eight children or no children. The root node describes a cubic bounding box which encapsulates all points. At every tree level, this space becomes subdivided by a factor of 2 which results in an increased voxel resolution.
The pcl_octree implementation provides efficient nearest neighbor search routines, such as "Neighbors within Voxel Search”, “K Nearest Neighbor Search” and “Neighbors within Radius Search”. It automatically adjusts its dimension to the point data set. A set of leaf node classes provide additional functionality, such as spatial "occupancy" and "point density per voxel" checks. Functions for serialization and deserialization enable to efficiently encode the octree structure into a binary format. Furthermore, a memory pool implementation reduces expensive memory allocation and deallocation operations in scenarios where octrees needs to be created at high rate.
The following figure illustrates the voxel bounding boxes of an octree nodes at lowest tree level. The octree voxels are surrounding every 3D point from the bunny's surface. The red dots represent the point data. This image is created with the octree_viewer (visualization/tools/octree_viewer).
For examples how to use the pcl_octree library, please visit the pcl tutorial page.
Requirements
|
| class | pcl::octree::Octree2BufBase< LeafContainerT, BranchContainerT > |
| | Octree double buffer class More...
|
| |
| class | pcl::octree::OctreeBase< LeafContainerT, BranchContainerT > |
| | Octree class. More...
|
| |
| class | pcl::octree::OctreeIteratorBase< OctreeT > |
| | Abstract octree iterator class More...
|
| |
| class | pcl::octree::OctreeDepthFirstIterator< OctreeT > |
| | Octree iterator class More...
|
| |
| class | pcl::octree::OctreeBreadthFirstIterator< OctreeT > |
| | Octree iterator class More...
|
| |
| class | pcl::octree::OctreeFixedDepthIterator< OctreeT > |
| | Octree iterator class More...
|
| |
| class | pcl::octree::OctreeLeafNodeDepthFirstIterator< OctreeT > |
| | Octree leaf node iterator class. More...
|
| |
| class | pcl::octree::OctreeLeafNodeBreadthFirstIterator< OctreeT > |
| | Octree leaf node iterator class. More...
|
| |
| class | pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT > |
| | Octree pointcloud class More...
|
| |
| class | pcl::octree::OctreePointCloudAdjacency< PointT, LeafContainerT, BranchContainerT > |
| | Octree pointcloud voxel class which maintains adjacency information for its voxels. More...
|
| |
| class | pcl::octree::OctreePointCloudChangeDetector< PointT, LeafContainerT, BranchContainerT > |
| | Octree pointcloud change detector class More...
|
| |
| class | pcl::octree::OctreePointCloudDensity< PointT, LeafContainerT, BranchContainerT > |
| | Octree pointcloud density class More...
|
| |
| class | pcl::octree::OctreePointCloudOccupancy< PointT, LeafContainerT, BranchContainerT > |
| | Octree pointcloud occupancy class More...
|
| |
| class | pcl::octree::OctreePointCloudPointVector< PointT, LeafContainerT, BranchContainerT, OctreeT > |
| | Octree pointcloud point vector class More...
|
| |
| class | pcl::octree::OctreePointCloudSinglePoint< PointT, LeafContainerT, BranchContainerT, OctreeT > |
| | Octree pointcloud single point class More...
|
| |
| class | pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT > |
| | Octree pointcloud voxel centroid class More...
|
| |
| class | pcl::octree::OctreePointCloudSearch< PointT, LeafContainerT, BranchContainerT > |
| | Octree pointcloud search class More...
|
| |