Loading...
Searching...
No Matches
pcl::CrfSegmentation< PointT > Class Template Reference

`#include <pcl/segmentation/crf_segmentation.h>`

## Public Member Functions

| CrfSegmentation ()
| Constructor that sets default values for member variables.
| ~CrfSegmentation ()
| This destructor destroys the cloud...
void | setInputCloud (typename pcl::PointCloud< PointT >::Ptr input_cloud)
| This method sets the input cloud.
void | setAnnotatedCloud (typename pcl::PointCloud< pcl::PointXYZRGBL >::Ptr anno_cloud)
void | setNormalCloud (typename pcl::PointCloud< pcl::PointNormal >::Ptr normal_cloud)
void | setVoxelGridLeafSize (const float x, const float y, const float z)
| Set the leaf size for the voxel grid.
void | setNumberOfIterations (unsigned int n_iterations=10)
void | segmentPoints (pcl::PointCloud< pcl::PointXYZRGBL > &output)
| This method simply launches the segmentation algorithm.
void | createVoxelGrid ()
| Create a voxel grid to discretize the scene.
void | createDataVectorFromVoxelGrid ()
| Get the data from the voxel grid and convert it into a vector.
void | createUnaryPotentials (std::vector< float > &unary, std::vector< int > &colors, unsigned int n_labels)
void | setSmoothnessKernelParameters (const float sx, const float sy, const float sz, const float w)
| Set the smoothness kernel parameters.
void | setAppearanceKernelParameters (float sx, float sy, float sz, float sr, float sg, float sb, float w)
| Set the appearanche kernel parameters.
void | setSurfaceKernelParameters (float sx, float sy, float sz, float snx, float sny, float snz, float w)

## Protected Attributes

pcl::VoxelGrid< PointT > | voxel_grid_
| Voxel grid to discretize the scene.
pcl::PointCloud< PointT >::Ptr | input_cloud_
| input cloud that will be segmented.
pcl::PointCloud< pcl::PointXYZRGBL >::Ptr | anno_cloud_
pcl::PointCloud< pcl::PointNormal >::Ptr | normal_cloud_
pcl::PointCloud< PointT >::Ptr | filtered_cloud_
| voxel grid filtered cloud.
pcl::PointCloud< pcl::PointXYZRGBL >::Ptr | filtered_anno_
pcl::PointCloud< pcl::PointNormal >::Ptr | filtered_normal_
Eigen::Vector4f | voxel_grid_leaf_size_
| indices of the filtered cloud.
Eigen::Vector3i | dim_
| Voxel grid dimensions.
std::vector< Eigen::Vector3i, Eigen::aligned_allocator< Eigen::Vector3i > > | data_
| voxel grid data points packing order [x0y0z0, x1y0z0,x2y0z0,...,x0y1z0,x1y1z0,...,x0y0z1,x1y0z1,...]
std::vector< Eigen::Vector3i, Eigen::aligned_allocator< Eigen::Vector3i > > | color_
std::vector< Eigen::Vector3f, Eigen::aligned_allocator< Eigen::Vector3f > > | normal_
float | smoothness_kernel_param_ [4]
| smoothness kernel parameters [0] = standard deviation x [1] = standard deviation y [2] = standard deviation z [3] = weight
float | appearance_kernel_param_ [7]
| appearance kernel parameters [0] = standard deviation x [1] = standard deviation y [2] = standard deviation z [3] = standard deviation red [4] = standard deviation green [5] = standard deviation blue [6] = weight
float | surface_kernel_param_ [7]
unsigned int | n_iterations_

## Detailed Description

template<typename PointT>
class pcl::CrfSegmentation< PointT >

Definition at line 58 of file crf_segmentation.h.

## Constructor & Destructor Documentation

## CrfSegmentation()

template<typename PointT >

pcl::CrfSegmentation< PointT >::CrfSegmentation | ( |  | ) |

Constructor that sets default values for member variables.

Definition at line 53 of file crf_segmentation.hpp.

## ~CrfSegmentation()

template<typename PointT >

pcl::CrfSegmentation< PointT >::~CrfSegmentation | ( |  | ) |

default

This destructor destroys the cloud...

## Member Function Documentation

## createDataVectorFromVoxelGrid()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::createDataVectorFromVoxelGrid | ( |  | ) |

Get the data from the voxel grid and convert it into a vector.

Definition at line 191 of file crf_segmentation.hpp.

## createUnaryPotentials()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::createUnaryPotentials | ( | std::vector< float > & | unary,
|  | std::vector< int > & | colors,
|  | unsigned int | n_labels
| ) |  |

Definition at line 316 of file crf_segmentation.hpp.

## createVoxelGrid()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::createVoxelGrid | ( |  | ) |

Create a voxel grid to discretize the scene.

Definition at line 142 of file crf_segmentation.hpp.

References pcl::Filter< PointT >::filter(), pcl::VoxelGrid< PointT >::setDownsampleAllData(), pcl::PCLBase< PointT >::setInputCloud(), and pcl::VoxelGrid< PointT >::setLeafSize().

## segmentPoints()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::segmentPoints | ( | pcl::PointCloud< pcl::PointXYZRGBL > & | output | ) |

This method simply launches the segmentation algorithm.

Definition at line 382 of file crf_segmentation.hpp.

References pcl::DenseCrf::addPairwiseBilateral(), pcl::DenseCrf::addPairwiseGaussian(), pcl::DenseCrf::addPairwiseNormals(), pcl::DenseCrf::mapInference(), pcl::DenseCrf::setColorVector(), pcl::DenseCrf::setDataVector(), and pcl::DenseCrf::setUnaryEnergy().

## setAnnotatedCloud()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setAnnotatedCloud | ( | typename pcl::PointCloud< pcl::PointXYZRGBL >::Ptr | anno_cloud | ) |

Definition at line 77 of file crf_segmentation.hpp.

## setAppearanceKernelParameters()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setAppearanceKernelParameters | ( | float | sx,
|  | float | sy,
|  | float | sz,
|  | float | sr,
|  | float | sg,
|  | float | sb,
|  | float | w
| ) |  |

Set the appearanche kernel parameters.

Parameters

  [in] | sx | standard deviation x
  [in] | sy | standard deviation y
  [in] | sz | standard deviation z
  [in] | sr | standard deviation red
  [in] | sg | standard deviation green
  [in] | sb | standard deviation blue
  [in] | w | weight

Definition at line 111 of file crf_segmentation.hpp.

## setInputCloud()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setInputCloud | ( | typename pcl::PointCloud< PointT >::Ptr | input_cloud | ) |

This method sets the input cloud.

Parameters

  [in] | input_cloud | input point cloud

Definition at line 70 of file crf_segmentation.hpp.

## setNormalCloud()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setNormalCloud | ( | typename pcl::PointCloud< pcl::PointNormal >::Ptr | normal_cloud | ) |

Definition at line 84 of file crf_segmentation.hpp.

## setNumberOfIterations()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setNumberOfIterations | ( | unsigned int | n_iterations = `10` | ) |

inline

Definition at line 92 of file crf_segmentation.h.

## setSmoothnessKernelParameters()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setSmoothnessKernelParameters | ( | const float | sx,
|  | const float | sy,
|  | const float | sz,
|  | const float | w
| ) |  |

Set the smoothness kernel parameters.

Parameters

  [in] | sx | standard deviation x
  [in] | sy | standard deviation y
  [in] | sz | standard deviation z
  [in] | w | weight

Definition at line 100 of file crf_segmentation.hpp.

## setSurfaceKernelParameters()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setSurfaceKernelParameters | ( | float | sx,
|  | float | sy,
|  | float | sz,
|  | float | snx,
|  | float | sny,
|  | float | snz,
|  | float | w
| ) |  |

Definition at line 126 of file crf_segmentation.hpp.

## setVoxelGridLeafSize()

template<typename PointT >

void pcl::CrfSegmentation< PointT >::setVoxelGridLeafSize | ( | const float | x,
|  | const float | y,
|  | const float | z
| ) |  |

Set the leaf size for the voxel grid.

Parameters

  [in] | x | leaf size x-axis
  [in] | y | leaf size y-axis
  [in] | z | leaf size z-axis

Definition at line 91 of file crf_segmentation.hpp.

## Member Data Documentation

## anno_cloud_

template<typename PointT >

pcl::PointCloud<pcl::PointXYZRGBL>::Ptr pcl::CrfSegmentation< PointT >::anno_cloud_

protected

Definition at line 149 of file crf_segmentation.h.

## appearance_kernel_param_

template<typename PointT >

float pcl::CrfSegmentation< PointT >::appearance_kernel_param_[7]

protected

appearance kernel parameters [0] = standard deviation x [1] = standard deviation y [2] = standard deviation z [3] = standard deviation red [4] = standard deviation green [5] = standard deviation blue [6] = weight

Definition at line 192 of file crf_segmentation.h.

## color_

template<typename PointT >

std::vector<Eigen::Vector3i, Eigen::aligned_allocator<Eigen::Vector3i> > pcl::CrfSegmentation< PointT >::color_

protected

Definition at line 171 of file crf_segmentation.h.

## data_

template<typename PointT >

std::vector<Eigen::Vector3i, Eigen::aligned_allocator<Eigen::Vector3i> > pcl::CrfSegmentation< PointT >::data_

protected

voxel grid data points packing order [x0y0z0, x1y0z0,x2y0z0,...,x0y1z0,x1y1z0,...,x0y0z1,x1y0z1,...]

Definition at line 169 of file crf_segmentation.h.

## dim_

template<typename PointT >

Eigen::Vector3i pcl::CrfSegmentation< PointT >::dim_

protected

Voxel grid dimensions.

Definition at line 164 of file crf_segmentation.h.

## filtered_anno_

template<typename PointT >

pcl::PointCloud<pcl::PointXYZRGBL>::Ptr pcl::CrfSegmentation< PointT >::filtered_anno_

protected

Definition at line 154 of file crf_segmentation.h.

## filtered_cloud_

template<typename PointT >

pcl::PointCloud<PointT>::Ptr pcl::CrfSegmentation< PointT >::filtered_cloud_

protected

voxel grid filtered cloud.

Definition at line 153 of file crf_segmentation.h.

## filtered_normal_

template<typename PointT >

pcl::PointCloud<pcl::PointNormal>::Ptr pcl::CrfSegmentation< PointT >::filtered_normal_

protected

Definition at line 155 of file crf_segmentation.h.

## input_cloud_

template<typename PointT >

pcl::PointCloud<PointT>::Ptr pcl::CrfSegmentation< PointT >::input_cloud_

protected

input cloud that will be segmented.

Definition at line 148 of file crf_segmentation.h.

## n_iterations_

template<typename PointT >

unsigned int pcl::CrfSegmentation< PointT >::n_iterations_

protected

Definition at line 197 of file crf_segmentation.h.

## normal_

template<typename PointT >

std::vector<Eigen::Vector3f, Eigen::aligned_allocator<Eigen::Vector3f> > pcl::CrfSegmentation< PointT >::normal_

protected

Definition at line 173 of file crf_segmentation.h.

## normal_cloud_

template<typename PointT >

pcl::PointCloud<pcl::PointNormal>::Ptr pcl::CrfSegmentation< PointT >::normal_cloud_

protected

Definition at line 150 of file crf_segmentation.h.

## smoothness_kernel_param_

template<typename PointT >

float pcl::CrfSegmentation< PointT >::smoothness_kernel_param_[4]

protected

smoothness kernel parameters [0] = standard deviation x [1] = standard deviation y [2] = standard deviation z [3] = weight

Definition at line 181 of file crf_segmentation.h.

## surface_kernel_param_

template<typename PointT >

float pcl::CrfSegmentation< PointT >::surface_kernel_param_[7]

protected

Definition at line 194 of file crf_segmentation.h.

## voxel_grid_

template<typename PointT >

pcl::VoxelGrid<PointT> pcl::CrfSegmentation< PointT >::voxel_grid_

protected

Voxel grid to discretize the scene.

Definition at line 145 of file crf_segmentation.h.

## voxel_grid_leaf_size_

template<typename PointT >

Eigen::Vector4f pcl::CrfSegmentation< PointT >::voxel_grid_leaf_size_

protected

indices of the filtered cloud.

Voxel grid leaf size

Definition at line 161 of file crf_segmentation.h.

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

- pcl/segmentation/crf_segmentation.h
- pcl/segmentation/impl/crf_segmentation.hpp