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

using | Image = pcl::PointCloud< Color >
| 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

## Image

using pcl::segmentation::grabcut::Image = typedef pcl::PointCloud<Color>

An Image is a point cloud of Color.

Definition at line 188 of file grabcut_segmentation.h.

## Enumeration Type Documentation

## SegmentationValue

enum pcl::segmentation::grabcut::SegmentationValue

Grabcut derived hard segmentation values.

Enumerator
SegmentationForeground |
SegmentationBackground |

Definition at line 199 of file grabcut_segmentation.h.

## TrimapValue

enum pcl::segmentation::grabcut::TrimapValue

User supplied Trimap values.

Enumerator
TrimapUnknown |
TrimapForeground |
TrimapBackground |

Definition at line 197 of file grabcut_segmentation.h.

## Function Documentation

## buildGMMs()

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

## colorDistance()

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

Compute squared distance between two colors.

Parameters

  [in] | c1 | first color
  [in] | c2 | second color

Returns
  the squared distance measure in RGB space

## learnGMMs()

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