Point Cloud Library (PCL)  1.7.1
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 conext. More...
 
struct  Color
 Structure to save RGB colors into floats. More...
 
struct  Gaussian
 Gaussian structure. More...
 
class  GMM
 
class  GaussianFitter
 Helper class that fits a single Gaussian to color samples. More...
 

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 segementation values. More...
 

Functions

float colorDistance (const Color &c1, const Color &c2)
 Compute squared distance between two colors. More...
 
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...
 
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 194 of file grabcut.h.

Enumeration Type Documentation

Grabcut derived hard segementation values.

Enumerator
SegmentationForeground 
SegmentationBackground 

Definition at line 205 of file grabcut.h.

User supplied Trimap values.

Enumerator
TrimapUnknown 
TrimapForeground 
TrimapBackground 

Definition at line 203 of file grabcut.h.

Function Documentation

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().

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
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().