Point Cloud Library (PCL)  1.9.1-dev
Classes | Typedefs | Enumerations | Functions
pcl::segmentation::grabcut Namespace Reference

Classes

class  BoykovKolmogorov
 boost implementation of Boykov and Kolmogorov's maxflow algorithm doesn't support negative flows which makes it inappropriate for this context. More...
 
struct  Color
 Structure to save RGB colors into floats. More...
 
struct  Gaussian
 Gaussian structure. More...
 
class  GaussianFitter
 Helper class that fits a single Gaussian to color samples. More...
 
class  GMM
 

Typedefs

typedef pcl::PointCloud< ColorImage
 An Image is a point cloud of Color. More...
 

Enumerations

enum  TrimapValue { TrimapUnknown = -1, TrimapForeground, TrimapBackground }
 User supplied Trimap values. More...
 
enum  SegmentationValue { SegmentationForeground = 0, SegmentationBackground }
 Grabcut derived hard segmentation values. More...
 

Functions

float colorDistance (const Color &c1, const Color &c2)
 Compute squared distance between two colors. More...
 
PCL_EXPORTS void buildGMMs (const Image &image, const std::vector< int > &indices, const std::vector< SegmentationValue > &hardSegmentation, std::vector< std::size_t > &components, GMM &background_GMM, GMM &foreground_GMM)
 Build the initial GMMs using the Orchard and Bouman color clustering algorithm. More...
 
PCL_EXPORTS void learnGMMs (const Image &image, const std::vector< int > &indices, const std::vector< SegmentationValue > &hard_segmentation, std::vector< std::size_t > &components, GMM &background_GMM, GMM &foreground_GMM)
 Iteratively learn GMMs using GrabCut updating algorithm. More...
 

Typedef Documentation

An Image is a point cloud of Color.

Definition at line 187 of file grabcut_segmentation.h.

Enumeration Type Documentation

Grabcut derived hard segmentation values.

Enumerator
SegmentationForeground 
SegmentationBackground 

Definition at line 198 of file grabcut_segmentation.h.

User supplied Trimap values.

Enumerator
TrimapUnknown 
TrimapForeground 
TrimapBackground 

Definition at line 196 of file grabcut_segmentation.h.

Function Documentation

PCL_EXPORTS void pcl::segmentation::grabcut::buildGMMs ( const Image image,
const std::vector< int > &  indices,
const std::vector< SegmentationValue > &  hardSegmentation,
std::vector< std::size_t > &  components,
GMM background_GMM,
GMM foreground_GMM 
)

Build the initial GMMs using the Orchard and Bouman color clustering algorithm.

Referenced by pcl::GrabCut< PointT >::fitGMMs(), and pcl::segmentation::grabcut::GaussianFitter::setEpsilon().

float pcl::segmentation::grabcut::colorDistance ( const Color c1,
const Color c2 
)

Compute squared distance between two colors.

Parameters
[in]c1first color
[in]c2second color
Returns
the squared distance measure in RGB space
PCL_EXPORTS void pcl::segmentation::grabcut::learnGMMs ( const Image image,
const std::vector< int > &  indices,
const std::vector< SegmentationValue > &  hard_segmentation,
std::vector< std::size_t > &  components,
GMM background_GMM,
GMM foreground_GMM 
)

Iteratively learn GMMs using GrabCut updating algorithm.

Referenced by pcl::GrabCut< PointT >::refineOnce(), and pcl::segmentation::grabcut::GaussianFitter::setEpsilon().