Loading...
Searching...
No Matches
pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT > Class Template Reference

Octree pointcloud compression class More...

`#include <pcl/compression/octree_pointcloud_compression.h>`

Inheritance diagram for pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >:

## Public Types

using | PointCloud = typename OctreePointCloud< PointT, LeafT, BranchT, OctreeT >::PointCloud
using | PointCloudPtr = typename OctreePointCloud< PointT, LeafT, BranchT, OctreeT >::PointCloudPtr
using | PointCloudConstPtr = typename OctreePointCloud< PointT, LeafT, BranchT, OctreeT >::PointCloudConstPtr
using | Ptr = shared_ptr< OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT > >
using | ConstPtr = shared_ptr< const OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT > >
using | LeafNode = typename OctreeT::LeafNode
using | BranchNode = typename OctreeT::BranchNode
using | RealTimeStreamCompression = OctreePointCloudCompression< PointT, LeafT, BranchT, Octree2BufBase< LeafT, BranchT > >
using | SinglePointCloudCompressionLowMemory = OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeBase< LeafT, BranchT > >
Public Types inherited from pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >
using | Base = OctreeT
using | LeafNode = typename OctreeT::LeafNode
using | BranchNode = typename OctreeT::BranchNode
using | IndicesPtr = shared_ptr< Indices >
using | IndicesConstPtr = shared_ptr< const Indices >
using | PointCloud = pcl::PointCloud< PointT >
using | PointCloudPtr = typename PointCloud::Ptr
using | PointCloudConstPtr = typename PointCloud::ConstPtr
using | SingleBuffer = OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeBase< LeafContainerT > >
using | Ptr = shared_ptr< OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT > >
using | ConstPtr = shared_ptr< const OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT > >
using | AlignedPointTVector = std::vector< PointT, Eigen::aligned_allocator< PointT > >
using | AlignedPointXYZVector = std::vector< PointXYZ, Eigen::aligned_allocator< PointXYZ > >
Public Types inherited from pcl::octree::OctreeBase< LeafContainerT, BranchContainerT >
using | OctreeT = OctreeBase< LeafContainerT, BranchContainerT >
using | BranchNode = OctreeBranchNode< BranchContainerT >
using | LeafNode = OctreeLeafNode< LeafContainerT >
using | BranchContainer = BranchContainerT
using | LeafContainer = LeafContainerT
using | Iterator = OctreeDepthFirstIterator< OctreeT >
using | ConstIterator = OctreeDepthFirstIterator< const OctreeT >
using | LeafNodeIterator = OctreeLeafNodeDepthFirstIterator< OctreeT >
using | ConstLeafNodeIterator = OctreeLeafNodeDepthFirstIterator< const OctreeT >
using | LeafNodeDepthFirstIterator = OctreeLeafNodeDepthFirstIterator< OctreeT >
using | ConstLeafNodeDepthFirstIterator = OctreeLeafNodeDepthFirstIterator< const OctreeT >
using | DepthFirstIterator = OctreeDepthFirstIterator< OctreeT >
using | ConstDepthFirstIterator = OctreeDepthFirstIterator< const OctreeT >
using | BreadthFirstIterator = OctreeBreadthFirstIterator< OctreeT >
using | ConstBreadthFirstIterator = OctreeBreadthFirstIterator< const OctreeT >
using | FixedDepthIterator = OctreeFixedDepthIterator< OctreeT >
using | ConstFixedDepthIterator = OctreeFixedDepthIterator< const OctreeT >
using | LeafNodeBreadthFirstIterator = OctreeLeafNodeBreadthFirstIterator< OctreeT >
using | ConstLeafNodeBreadthFirstIterator = OctreeLeafNodeBreadthFirstIterator< const OctreeT >

## Public Member Functions

| OctreePointCloudCompression (compression_Profiles_e compressionProfile_arg=MED_RES_ONLINE_COMPRESSION_WITH_COLOR, bool showStatistics_arg=false, const double pointResolution_arg=0.001, const double octreeResolution_arg=0.01, bool doVoxelGridDownDownSampling_arg=false, const unsigned int iFrameRate_arg=30, bool doColorEncoding_arg=true, const unsigned char colorBitResolution_arg=6)
| Constructor.
| ~OctreePointCloudCompression () override=default
| Empty deconstructor.
void | initialization ()
| Initialize globals.
void | addPointIdx (const uindex_t pointIdx_arg) override
| Add point at index from input pointcloud dataset to octree.
void | setOutputCloud (const PointCloudPtr &cloud_arg)
| Provide a pointer to the output data set.
PointCloudPtr | getOutputCloud () const
| Get a pointer to the output point cloud dataset.
void | encodePointCloud (const PointCloudConstPtr &cloud_arg, std::ostream &compressed_tree_data_out_arg)
| Encode point cloud to output stream.
void | decodePointCloud (std::istream &compressed_tree_data_in_arg, PointCloudPtr &cloud_arg)
| Decode point cloud from input stream.
Public Member Functions inherited from pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >
| OctreePointCloud (const double resolution_arg)
| Octree pointcloud constructor.
void | setInputCloud (const PointCloudConstPtr &cloud_arg, const IndicesConstPtr &indices_arg=IndicesConstPtr())
| Provide a pointer to the input data set.
IndicesConstPtr const | getIndices () const
| Get a pointer to the vector of indices used.
PointCloudConstPtr | getInputCloud () const
| Get a pointer to the input point cloud dataset.
void | setEpsilon (double eps)
| Set the search epsilon precision (error bound) for nearest neighbors searches.
double | getEpsilon () const
| Get the search epsilon precision (error bound) for nearest neighbors searches.
void | setResolution (double resolution_arg)
| Set/change the octree voxel resolution.
double | getResolution () const
| Get octree voxel resolution.
uindex_t | getTreeDepth () const
| Get the maximum depth of the octree.
void | addPointsFromInputCloud ()
| Add points from input point cloud to octree.
void | addPointFromCloud (uindex_t point_idx_arg, IndicesPtr indices_arg)
| Add point at given index from input point cloud to octree.
void | addPointToCloud (const PointT &point_arg, PointCloudPtr cloud_arg)
| Add point simultaneously to octree and input point cloud.
void | addPointToCloud (const PointT &point_arg, PointCloudPtr cloud_arg, IndicesPtr indices_arg)
| Add point simultaneously to octree and input point cloud.
bool | isVoxelOccupiedAtPoint (const PointT &point_arg) const
| Check if voxel at given point exist.
void | deleteTree ()
| Delete the octree structure and its leaf nodes.
bool | isVoxelOccupiedAtPoint (const double point_x_arg, const double point_y_arg, const double point_z_arg) const
| Check if voxel at given point coordinates exist.
bool | isVoxelOccupiedAtPoint (const index_t &point_idx_arg) const
| Check if voxel at given point from input cloud exist.
uindex_t | getOccupiedVoxelCenters (AlignedPointTVector &voxel_center_list_arg) const
| Get a PointT vector of centers of all occupied voxels.
uindex_t | getApproxIntersectedVoxelCentersBySegment (const Eigen::Vector3f &origin, const Eigen::Vector3f &end, AlignedPointTVector &voxel_center_list, float precision=0.2)
| Get a PointT vector of centers of voxels intersected by a line segment.
void | deleteVoxelAtPoint (const PointT &point_arg)
| Delete leaf node / voxel at given point.
void | deleteVoxelAtPoint (const index_t &point_idx_arg)
| Delete leaf node / voxel at given point from input cloud.
void | defineBoundingBox ()
| Investigate dimensions of pointcloud data set and define corresponding bounding box for octree.
void | defineBoundingBox (const double min_x_arg, const double min_y_arg, const double min_z_arg, const double max_x_arg, const double max_y_arg, const double max_z_arg)
| Define bounding box for octree.
void | defineBoundingBox (const double max_x_arg, const double max_y_arg, const double max_z_arg)
| Define bounding box for octree.
void | defineBoundingBox (const double cubeLen_arg)
| Define bounding box cube for octree.
void | getBoundingBox (double &min_x_arg, double &min_y_arg, double &min_z_arg, double &max_x_arg, double &max_y_arg, double &max_z_arg) const
| Get bounding box for octree.
double | getVoxelSquaredDiameter (uindex_t tree_depth_arg) const
| Calculates the squared diameter of a voxel at given tree depth.
double | getVoxelSquaredDiameter () const
| Calculates the squared diameter of a voxel at leaf depth.
double | getVoxelSquaredSideLen (uindex_t tree_depth_arg) const
| Calculates the squared voxel cube side length at given tree depth.
double | getVoxelSquaredSideLen () const
| Calculates the squared voxel cube side length at leaf level.
void | getVoxelBounds (const OctreeIteratorBase< OctreeT > &iterator, Eigen::Vector3f &min_pt, Eigen::Vector3f &max_pt) const
| Generate bounds of the current voxel of an octree iterator.
void | enableDynamicDepth (std::size_t maxObjsPerLeaf)
| Enable dynamic octree structure.
Public Member Functions inherited from pcl::octree::OctreeBase< LeafContainerT, BranchContainerT >
Iterator | begin (uindex_t max_depth_arg=0u)
ConstIterator | begin (uindex_t max_depth_arg=0u) const
ConstIterator | cbegin (uindex_t max_depth_arg=0u) const
const Iterator | end ()
const ConstIterator | end () const
const ConstIterator | cend () const
LeafNodeDepthFirstIterator | leaf_depth_begin (uindex_t max_depth_arg=0u)
ConstLeafNodeDepthFirstIterator | leaf_depth_begin (uindex_t max_depth_arg=0u) const
const LeafNodeDepthFirstIterator | leaf_depth_end ()
const ConstLeafNodeDepthFirstIterator | leaf_depth_end () const
DepthFirstIterator | depth_begin (uindex_t max_depth_arg=0u)
ConstDepthFirstIterator | depth_begin (uindex_t max_depth_arg=0u) const
const DepthFirstIterator | depth_end ()
const ConstDepthFirstIterator | depth_end () const
BreadthFirstIterator | breadth_begin (uindex_t max_depth_arg=0u)
ConstBreadthFirstIterator | breadth_begin (uindex_t max_depth_arg=0u) const
const BreadthFirstIterator | breadth_end ()
const ConstBreadthFirstIterator | breadth_end () const
FixedDepthIterator | fixed_depth_begin (uindex_t fixed_depth_arg=0u)
ConstFixedDepthIterator | fixed_depth_begin (uindex_t fixed_depth_arg=0u) const
const FixedDepthIterator | fixed_depth_end ()
const ConstFixedDepthIterator | fixed_depth_end () const
LeafNodeBreadthFirstIterator | leaf_breadth_begin (uindex_t max_depth_arg=0u)
ConstLeafNodeBreadthFirstIterator | leaf_breadth_begin (uindex_t max_depth_arg=0u) const
const LeafNodeBreadthFirstIterator | leaf_breadth_end ()
const ConstLeafNodeBreadthFirstIterator | leaf_breadth_end () const
| OctreeBase ()
| Empty constructor.
virtual | ~OctreeBase ()
| Empty deconstructor.
| OctreeBase (const OctreeBase &source)
| Copy constructor.
OctreeBase & | operator= (const OctreeBase &source)
| Copy operator.
void | setMaxVoxelIndex (uindex_t max_voxel_index_arg)
| Set the maximum amount of voxels per dimension.
void | setTreeDepth (uindex_t max_depth_arg)
| Set the maximum depth of the octree.
uindex_t | getTreeDepth () const
| Get the maximum depth of the octree.
LeafContainerT * | createLeaf (uindex_t idx_x_arg, uindex_t idx_y_arg, uindex_t idx_z_arg)
| Create new leaf node at (idx_x_arg, idx_y_arg, idx_z_arg).
LeafContainerT * | findLeaf (uindex_t idx_x_arg, uindex_t idx_y_arg, uindex_t idx_z_arg) const
| Find leaf node at (idx_x_arg, idx_y_arg, idx_z_arg).
bool | existLeaf (uindex_t idx_x_arg, uindex_t idx_y_arg, uindex_t idx_z_arg) const
| idx_x_arg for the existence of leaf node at (idx_x_arg, idx_y_arg, idx_z_arg).
void | removeLeaf (uindex_t idx_x_arg, uindex_t idx_y_arg, uindex_t idx_z_arg)
| Remove leaf node at (idx_x_arg, idx_y_arg, idx_z_arg).
std::size_t | getLeafCount () const
| Return the amount of existing leafs in the octree.
std::size_t | getBranchCount () const
| Return the amount of existing branch nodes in the octree.
void | deleteTree ()
| Delete the octree structure and its leaf nodes.
void | serializeTree (std::vector< char > &binary_tree_out_arg) const
| Serialize octree into a binary output vector describing its branch node structure.
void | serializeTree (std::vector< char > &binary_tree_out_arg, std::vector< LeafContainerT * > &leaf_container_vector_arg) const
| Serialize octree into a binary output vector describing its branch node structure and push all LeafContainerT elements stored in the octree to a vector.
void | serializeLeafs (std::vector< LeafContainerT * > &leaf_container_vector_arg)
| Outputs a vector of all LeafContainerT elements that are stored within the octree leaf nodes.
void | deserializeTree (std::vector< char > &binary_tree_input_arg)
| Deserialize a binary octree description vector and create a corresponding octree structure.
void | deserializeTree (std::vector< char > &binary_tree_input_arg, std::vector< LeafContainerT * > &leaf_container_vector_arg)
| Deserialize a binary octree description and create a corresponding octree structure.

## Protected Member Functions

void | writeFrameHeader (std::ostream &compressed_tree_data_out_arg)
| Write frame information to output stream.
void | readFrameHeader (std::istream &compressed_tree_data_in_arg)
| Read frame information to output stream.
void | syncToHeader (std::istream &compressed_tree_data_in_arg)
| Synchronize to frame header.
void | entropyEncoding (std::ostream &compressed_tree_data_out_arg)
| Apply entropy encoding to encoded information and output to binary stream.
void | entropyDecoding (std::istream &compressed_tree_data_in_arg)
| Entropy decoding of input binary stream and output to information vectors.
void | serializeTreeCallback (LeafT &leaf_arg, const OctreeKey &key_arg) override
| Encode leaf node information during serialization.
void | deserializeTreeCallback (LeafT &, const OctreeKey &key_arg) override
| Decode leaf nodes information during deserialization.
Protected Member Functions inherited from pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >
void | expandLeafNode (LeafNode *leaf_node, BranchNode *parent_branch, unsigned char child_idx, uindex_t depth_mask)
| Add point at index from input pointcloud dataset to octree.
const PointT & | getPointByIndex (uindex_t index_arg) const
| Get point at index from input pointcloud dataset.
LeafContainerT * | findLeafAtPoint (const PointT &point_arg) const
| Find octree leaf node at a given point.
void | getKeyBitSize ()
| Define octree key setting and octree depth based on defined bounding box.
void | adoptBoundingBoxToPoint (const PointT &point_idx_arg)
| Grow the bounding box/octree until point fits.
bool | isPointWithinBoundingBox (const PointT &point_idx_arg) const
| Checks if given point is within the bounding box of the octree.
void | genOctreeKeyforPoint (const PointT &point_arg, OctreeKey &key_arg) const
| Generate octree key for voxel at a given point.
void | genOctreeKeyforPoint (const double point_x_arg, const double point_y_arg, const double point_z_arg, OctreeKey &key_arg) const
| Generate octree key for voxel at a given point.
virtual bool | genOctreeKeyForDataT (const index_t &data_arg, OctreeKey &key_arg) const
| Virtual method for generating octree key for a given point index.
void | genLeafNodeCenterFromOctreeKey (const OctreeKey &key_arg, PointT &point_arg) const
| Generate a point at center of leaf node voxel.
void | genVoxelCenterFromOctreeKey (const OctreeKey &key_arg, uindex_t tree_depth_arg, PointT &point_arg) const
| Generate a point at center of octree voxel at given tree level.
void | genVoxelBoundsFromOctreeKey (const OctreeKey &key_arg, uindex_t tree_depth_arg, Eigen::Vector3f &min_pt, Eigen::Vector3f &max_pt) const
| Generate bounds of an octree voxel using octree key and tree depth arguments.
uindex_t | getOccupiedVoxelCentersRecursive (const BranchNode *node_arg, const OctreeKey &key_arg, AlignedPointTVector &voxel_center_list_arg) const
| Recursively search the tree for all leaf nodes and return a vector of voxel centers.
Protected Member Functions inherited from pcl::octree::OctreeBase< LeafContainerT, BranchContainerT >
LeafContainerT * | createLeaf (const OctreeKey &key_arg)
| Create a leaf node.
LeafContainerT * | findLeaf (const OctreeKey &key_arg) const
| Find leaf node.
bool | existLeaf (const OctreeKey &key_arg) const
| Check for existence of a leaf node in the octree.
void | removeLeaf (const OctreeKey &key_arg)
| Remove leaf node from octree.
OctreeNode * | getRootNode () const
| Retrieve root node.
bool | branchHasChild (const BranchNode &branch_arg, unsigned char child_idx_arg) const
| Check if branch is pointing to a particular child node.
OctreeNode * | getBranchChildPtr (const BranchNode &branch_arg, unsigned char child_idx_arg) const
| Retrieve a child node pointer for child node at child_idx.
void | setBranchChildPtr (BranchNode &branch_arg, unsigned char child_idx_arg, OctreeNode *new_child_arg)
| Assign new child node to branch.
char | getBranchBitPattern (const BranchNode &branch_arg) const
| Generate bit pattern reflecting the existence of child node pointers.
void | deleteBranchChild (BranchNode &branch_arg, unsigned char child_idx_arg)
| Delete child node and all its subchilds from octree.
void | deleteBranch (BranchNode &branch_arg)
| Delete branch and all its subchilds from octree.
BranchNode * | createBranchChild (BranchNode &branch_arg, unsigned char child_idx_arg)
| Create and add a new branch child to a branch class.
LeafNode * | createLeafChild (BranchNode &branch_arg, unsigned char child_idx_arg)
| Create and add a new leaf child to a branch class.
uindex_t | createLeafRecursive (const OctreeKey &key_arg, uindex_t depth_mask_arg, BranchNode *branch_arg, LeafNode *&return_leaf_arg, BranchNode *&parent_of_leaf_arg)
| Create a leaf node at octree key.
void | findLeafRecursive (const OctreeKey &key_arg, uindex_t depth_mask_arg, BranchNode *branch_arg, LeafContainerT *&result_arg) const
| Recursively search for a given leaf node and return a pointer.
bool | deleteLeafRecursive (const OctreeKey &key_arg, uindex_t depth_mask_arg, BranchNode *branch_arg)
| Recursively search and delete leaf node.
void | serializeTreeRecursive (const BranchNode *branch_arg, OctreeKey &key_arg, std::vector< char > *binary_tree_out_arg, typename std::vector< LeafContainerT * > *leaf_container_vector_arg) const
| Recursively explore the octree and output binary octree description together with a vector of leaf node LeafContainerTs.

void

deserializeTreeRecursive (BranchNode *branch_arg, uindex_t depth_mask_arg, OctreeKey &key_arg, typename std::vector< char >::const_iterator &binary_tree_input_it_arg, typename std::vector< char >::const_iterator &binary_tree_input_it_end_arg, typename std::vector< LeafContainerT * >::const_iterator *leaf_container_vector_it_arg, typename std::vector< LeafContainerT * >::const_iterator *leaf_container_vector_it_end_arg)

| Recursive method for deserializing octree structure.
virtual void | serializeTreeCallback (LeafContainerT &, const OctreeKey &) const
| Callback executed for every leaf node during serialization.
virtual void | deserializeTreeCallback (LeafContainerT &, const OctreeKey &)
| Callback executed for every leaf node during deserialization.
bool | octreeCanResize () const
| Test if octree is able to dynamically change its depth.

## Protected Attributes

PointCloudPtr | output_
| Pointer to output point cloud dataset.
std::vector< char > | binary_tree_data_vector_
| Vector for storing binary tree structure.
std::vector< unsigned int > | point_count_data_vector_
| Vector for storing points per voxel information
std::vector< unsignedint >::const_iterator | point_count_data_vector_iterator_
| Iterator on points per voxel vector.
ColorCoding< PointT > | color_coder_
| Color coding instance.
PointCoding< PointT > | point_coder_
| Point coding instance.
StaticRangeCoder | entropy_coder_
| Static range coder instance.
bool | do_voxel_grid_enDecoding_ {false}
std::uint32_t | i_frame_rate_ {0}
std::uint32_t | i_frame_counter_ {0}
std::uint32_t | frame_ID_ {0}
std::uint64_t | point_count_ {0}
bool | i_frame_ {true}
bool | do_color_encoding_ {false}
bool | cloud_with_color_ {false}
bool | data_with_color_ {false}
unsigned char | point_color_offset_ {0}
bool | b_show_statistics_ {false}
std::uint64_t | compressed_point_data_len_ {0}
std::uint64_t | compressed_color_data_len_ {0}
const compression_Profiles_e | selected_profile_
const double | point_resolution_
const double | octree_resolution_
const unsigned char | color_bit_resolution_
std::size_t | object_count_ {0}
Protected Attributes inherited from pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >
PointCloudConstPtr | input_
| Pointer to input point cloud dataset.
IndicesConstPtr | indices_
| A pointer to the vector of point indices to use.
double | epsilon_ {0.0}
| Epsilon precision (error bound) for nearest neighbors searches.
double | resolution_
| Octree resolution.
double | min_x_ {0.0}
double | max_x_
double | min_y_ {0.0}
double | max_y_
double | min_z_ {0.0}
double | max_z_
bool | bounding_box_defined_ {false}
| Flag indicating if octree has defined bounding box.
std::size_t | max_objs_per_leaf_ {0}
| Amount of DataT objects per leafNode before expanding branch.
Protected Attributes inherited from pcl::octree::OctreeBase< LeafContainerT, BranchContainerT >
std::size_t | leaf_count_ {0}
| Amount of leaf nodes
std::size_t | branch_count_ {1}
| Amount of branch nodes
BranchNode * | root_node_
| Pointer to root branch node of octree
uindex_t | depth_mask_ {0}
| Depth mask based on octree depth
uindex_t | octree_depth_ {0}
| Octree depth.
bool | dynamic_depth_enabled_ {false}
| Enable dynamic_depth.
OctreeKey | max_key_
| key range

## Static Protected Attributes

static const char * | frame_header_identifier_ = "<PCL-OCT-COMPRESSED>"

## Detailed Description

template<typename PointT, typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>
class pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >

Octree pointcloud compression class

Note
  This class enables compression and decompression of point cloud data based on octree data structures.
  typename: PointT: type of point used in pointcloud

Author
  Julius Kammerl (juliu.nosp@m.s@ka.nosp@m.mmerl.nosp@m..de)

Definition at line 66 of file octree_pointcloud_compression.h.

## Member Typedef Documentation

## BranchNode

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::BranchNode = typename OctreeT::BranchNode

Definition at line 80 of file octree_pointcloud_compression.h.

## ConstPtr

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::ConstPtr = shared_ptr<const OctreePointCloudCompression<PointT, LeafT, BranchT, OctreeT> >

Definition at line 77 of file octree_pointcloud_compression.h.

## LeafNode

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::LeafNode = typename OctreeT::LeafNode

Definition at line 79 of file octree_pointcloud_compression.h.

## PointCloud

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::PointCloud = typename OctreePointCloud<PointT, LeafT, BranchT, OctreeT>::PointCloud

Definition at line 71 of file octree_pointcloud_compression.h.

## PointCloudConstPtr

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::PointCloudConstPtr = typename OctreePointCloud<PointT, LeafT, BranchT, OctreeT>::PointCloudConstPtr

Definition at line 73 of file octree_pointcloud_compression.h.

## PointCloudPtr

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::PointCloudPtr = typename OctreePointCloud<PointT, LeafT, BranchT, OctreeT>::PointCloudPtr

Definition at line 72 of file octree_pointcloud_compression.h.

## Ptr

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::Ptr = shared_ptr<OctreePointCloudCompression<PointT, LeafT, BranchT, OctreeT> >

Definition at line 76 of file octree_pointcloud_compression.h.

## RealTimeStreamCompression

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::RealTimeStreamCompression = OctreePointCloudCompression<PointT, LeafT, BranchT, Octree2BufBase<LeafT, BranchT> >

Definition at line 82 of file octree_pointcloud_compression.h.

## SinglePointCloudCompressionLowMemory

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

using pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::SinglePointCloudCompressionLowMemory = OctreePointCloudCompression<PointT, LeafT, BranchT, OctreeBase<LeafT, BranchT> >

Definition at line 83 of file octree_pointcloud_compression.h.

## Constructor & Destructor Documentation

## OctreePointCloudCompression()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::OctreePointCloudCompression | ( | compression_Profiles_e | compressionProfile_arg = `MED_RES_ONLINE_COMPRESSION_WITH_COLOR`,
|  | bool | showStatistics_arg = `false`,
|  | const double | pointResolution_arg = `0.001`,
|  | const double | octreeResolution_arg = `0.01`,
|  | bool | doVoxelGridDownDownSampling_arg = `false`,
|  | const unsigned int | iFrameRate_arg = `30`,
|  | bool | doColorEncoding_arg = `true`,
|  | const unsigned char | colorBitResolution_arg = `6`
| ) |  |

inline

Constructor.

Parameters

  compressionProfile_arg | define compression profile
  octreeResolution_arg | octree resolution at lowest octree level
  pointResolution_arg | precision of point coordinates
  doVoxelGridDownDownSampling_arg | voxel grid filtering
  iFrameRate_arg | i-frame encoding rate
  doColorEncoding_arg | enable/disable color coding
  colorBitResolution_arg | color bit depth
  showStatistics_arg | output compression statistics

Definition at line 96 of file octree_pointcloud_compression.h.

References pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## ~OctreePointCloudCompression()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::~OctreePointCloudCompression | ( |  | ) |

override default

Empty deconstructor.

## Member Function Documentation

## addPointIdx()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::addPointIdx | ( | const uindex_t | pointIdx_arg | ) |

inline override virtual

Add point at index from input pointcloud dataset to octree.

Parameters

  [in] | pointIdx_arg | the index representing the point in the dataset given by setInputCloud to be added

Reimplemented from pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >.

Definition at line 157 of file octree_pointcloud_compression.h.

References pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::addPointIdx(), and pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::object_count_.

## decodePointCloud()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::decodePointCloud | ( | std::istream & | compressed_tree_data_in_arg,
|  | PointCloudPtr & | cloud_arg
| ) |  |

Decode point cloud from input stream.

Parameters

  compressed_tree_data_in_arg | binary input stream containing compressed data
  cloud_arg | reference to decoded point cloud

Warning
  This function is blocking until there is data available from the input stream. If the stream never contains any data, this will hang forever!

Definition at line 175 of file octree_pointcloud_compression.hpp.

## deserializeTreeCallback()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::deserializeTreeCallback | ( | LeafT & | ,
|  | const OctreeKey & | key_arg
| ) |  |

override protected

Decode leaf nodes information during deserialization.

Parameters

  key_arg | octree key of new leaf node

Definition at line 507 of file octree_pointcloud_compression.hpp.

## encodePointCloud()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::encodePointCloud | ( | const PointCloudConstPtr & | cloud_arg,
|  | std::ostream & | compressed_tree_data_out_arg
| ) |  |

Encode point cloud to output stream.

Parameters

  cloud_arg | point cloud to be compressed
  compressed_tree_data_out_arg | binary output stream containing compressed data

Definition at line 54 of file octree_pointcloud_compression.hpp.

## entropyDecoding()

template<typename PointT , typename LeafT , typename BranchT , typename OctreeT >

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::entropyDecoding | ( | std::istream & | compressed_tree_data_in_arg | ) |

protected

Entropy decoding of input binary stream and output to information vectors.

Parameters

  compressed_tree_data_in_arg | binary input stream

Definition at line 312 of file octree_pointcloud_compression.hpp.

## entropyEncoding()

template<typename PointT , typename LeafT , typename BranchT , typename OctreeT >

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::entropyEncoding | ( | std::ostream & | compressed_tree_data_out_arg | ) |

protected

Apply entropy encoding to encoded information and output to binary stream.

Parameters

  compressed_tree_data_out_arg | binary output stream

Definition at line 252 of file octree_pointcloud_compression.hpp.

## getOutputCloud()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

PointCloudPtr pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::getOutputCloud | ( |  | ) | const

inline

Get a pointer to the output point cloud dataset.

Returns
  pointer to pointcloud output class.

Definition at line 179 of file octree_pointcloud_compression.h.

References pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::output_.

## initialization()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization | ( |  | ) |

inline

Initialize globals.

Definition at line 123 of file octree_pointcloud_compression.h.

References pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::color_bit_resolution_, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::color_coder_, pcl::io::configurationProfile_t::colorBitResolution, pcl::io::compressionProfiles_, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::do_color_encoding_, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::do_voxel_grid_enDecoding_, pcl::io::configurationProfile_t::doColorEncoding, pcl::io::configurationProfile_t::doVoxelGridDownSampling, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::i_frame_rate_, pcl::io::configurationProfile_t::iFrameRate, pcl::io::MANUAL_CONFIGURATION, pcl::io::configurationProfile_t::octreeResolution, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_coder_, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_resolution_, pcl::io::configurationProfile_t::pointResolution, pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::selected_profile_, and pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::setResolution().

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::OctreePointCloudCompression().

## readFrameHeader()

template<typename PointT , typename LeafT , typename BranchT , typename OctreeT >

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::readFrameHeader | ( | std::istream & | compressed_tree_data_in_arg | ) |

protected

Read frame information to output stream.

Parameters

  compressed_tree_data_in_arg | binary input stream

Definition at line 431 of file octree_pointcloud_compression.hpp.

## serializeTreeCallback()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::serializeTreeCallback | ( | LeafT & | leaf_arg,
|  | const OctreeKey & | key_arg
| ) |  |

override protected

Encode leaf node information during serialization.

Parameters

  leaf_arg | reference to new leaf node
  key_arg | octree key of new leaf node

Definition at line 472 of file octree_pointcloud_compression.hpp.

## setOutputCloud()

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::setOutputCloud | ( | const PointCloudPtr & | cloud_arg | ) |

inline

Provide a pointer to the output data set.

Parameters

  cloud_arg | the boost shared pointer to a PointCloud message

Definition at line 167 of file octree_pointcloud_compression.h.

References pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::output_.

## syncToHeader()

template<typename PointT , typename LeafT , typename BranchT , typename OctreeT >

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::syncToHeader | ( | std::istream & | compressed_tree_data_in_arg | ) |

protected

Synchronize to frame header.

Parameters

  compressed_tree_data_in_arg | binary input stream

Definition at line 416 of file octree_pointcloud_compression.hpp.

## writeFrameHeader()

template<typename PointT , typename LeafT , typename BranchT , typename OctreeT >

void pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::writeFrameHeader | ( | std::ostream & | compressed_tree_data_out_arg | ) |

protected

Write frame information to output stream.

Parameters

  compressed_tree_data_out_arg | binary output stream

Definition at line 369 of file octree_pointcloud_compression.hpp.

## Member Data Documentation

## b_show_statistics_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

bool pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::b_show_statistics_ {false}

protected

Definition at line 280 of file octree_pointcloud_compression.h.

## binary_tree_data_vector_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::vector<char> pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::binary_tree_data_vector_

protected

Vector for storing binary tree structure.

Definition at line 250 of file octree_pointcloud_compression.h.

## cloud_with_color_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

bool pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::cloud_with_color_ {false}

protected

Definition at line 275 of file octree_pointcloud_compression.h.

## color_bit_resolution_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

const unsigned char pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::color_bit_resolution_

protected

Definition at line 290 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## color_coder_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

ColorCoding<PointT> pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::color_coder_

protected

Color coding instance.

Definition at line 259 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## compressed_color_data_len_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::uint64_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::compressed_color_data_len_ {0}

protected

Definition at line 282 of file octree_pointcloud_compression.h.

## compressed_point_data_len_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::uint64_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::compressed_point_data_len_ {0}

protected

Definition at line 281 of file octree_pointcloud_compression.h.

## data_with_color_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

bool pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::data_with_color_ {false}

protected

Definition at line 276 of file octree_pointcloud_compression.h.

## do_color_encoding_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

bool pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::do_color_encoding_ {false}

protected

Definition at line 274 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## do_voxel_grid_enDecoding_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

bool pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::do_voxel_grid_enDecoding_ {false}

protected

Definition at line 267 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## entropy_coder_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

StaticRangeCoder pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::entropy_coder_

protected

Static range coder instance.

Definition at line 265 of file octree_pointcloud_compression.h.

## frame_header_identifier_

template<typename PointT , typename LeafT , typename BranchT , typename OctreeT >

const char * pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::frame_header_identifier_ = "<PCL-OCT-COMPRESSED>"

static protected

Definition at line 285 of file octree_pointcloud_compression.h.

## frame_ID_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::uint32_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::frame_ID_ {0}

protected

Definition at line 270 of file octree_pointcloud_compression.h.

## i_frame_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

bool pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::i_frame_ {true}

protected

Definition at line 272 of file octree_pointcloud_compression.h.

## i_frame_counter_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::uint32_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::i_frame_counter_ {0}

protected

Definition at line 269 of file octree_pointcloud_compression.h.

## i_frame_rate_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::uint32_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::i_frame_rate_ {0}

protected

Definition at line 268 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## object_count_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::size_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::object_count_ {0}

protected

Definition at line 292 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::addPointIdx().

## octree_resolution_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

const double pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::octree_resolution_

protected

Definition at line 289 of file octree_pointcloud_compression.h.

## output_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

PointCloudPtr pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::output_

protected

Pointer to output point cloud dataset.

Definition at line 247 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::getOutputCloud(), and pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::setOutputCloud().

## point_coder_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

PointCoding<PointT> pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_coder_

protected

Point coding instance.

Definition at line 262 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## point_color_offset_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

unsigned char pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_color_offset_ {0}

protected

Definition at line 277 of file octree_pointcloud_compression.h.

## point_count_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::uint64_t pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_count_ {0}

protected

Definition at line 271 of file octree_pointcloud_compression.h.

## point_count_data_vector_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::vector<unsigned int> pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_count_data_vector_

protected

Vector for storing points per voxel information

Definition at line 253 of file octree_pointcloud_compression.h.

## point_count_data_vector_iterator_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

std::vector<unsignedint>::const_iterator pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_count_data_vector_iterator_

protected

Iterator on points per voxel vector.

Definition at line 256 of file octree_pointcloud_compression.h.

## point_resolution_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

const double pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::point_resolution_

protected

Definition at line 288 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

## selected_profile_

template<typename PointT , typename LeafT = OctreeContainerPointIndices, typename BranchT = OctreeContainerEmpty, typename OctreeT = Octree2BufBase<LeafT, BranchT>>

const compression_Profiles_e pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::selected_profile_

protected

Definition at line 287 of file octree_pointcloud_compression.h.

Referenced by pcl::io::OctreePointCloudCompression< PointT, LeafT, BranchT, OctreeT >::initialization().

The documentation for this class was generated from the following files:

- pcl/compression/octree_pointcloud_compression.h
- pcl/compression/impl/octree_pointcloud_compression.hpp