Modality based on max-RGB gradients. More...
#include <pcl/recognition/color_gradient_modality.h>


Classes | |
| struct | Candidate |
| Candidate for a feature (used in feature extraction methods). More... | |
Public Types | |
| enum | FeatureSelectionMethod { MASK_BORDER_HIGH_GRADIENTS, MASK_BORDER_EQUALLY, DISTANCE_MAGNITUDE_SCORE } |
Different methods for feature selection/extraction. More... | |
| typedef pcl::PointCloud< PointInT > | PointCloudIn |
Public Member Functions | |
| ColorGradientModality () | |
| Constructor. | |
| virtual | ~ColorGradientModality () |
| Destructor. | |
| void | setGradientMagnitudeThreshold (const float threshold) |
| Sets the threshold for the gradient magnitude which is used when quantizing the data. | |
| void | setGradientMagnitudeThresholdForFeatureExtraction (const float threshold) |
| Sets the threshold for the gradient magnitude which is used for feature extraction. | |
| void | setFeatureSelectionMethod (const FeatureSelectionMethod method) |
| Sets the feature selection method. | |
| void | setSpreadingSize (const size_t spreading_size) |
| Sets the spreading size for spreading the quantized data. | |
| void | setVariableFeatureNr (const bool enabled) |
| Sets whether variable feature numbers for feature extraction is enabled. | |
| QuantizedMap & | getQuantizedMap () |
| Returns a reference to the internally computed quantized map. | |
| QuantizedMap & | getSpreadedQuantizedMap () |
| Returns a reference to the internally computed spreaded quantized map. | |
| pcl::PointCloud < pcl::GradientXY > & | getMaxColorGradients () |
| Returns a point cloud containing the max-RGB gradients. | |
| void | extractFeatures (const MaskMap &mask, size_t nr_features, size_t modalityIndex, std::vector< QuantizedMultiModFeature > &features) const |
| Extracts features from this modality within the specified mask. | |
| void | extractAllFeatures (const MaskMap &mask, size_t nr_features, size_t modalityIndex, std::vector< QuantizedMultiModFeature > &features) const |
| Extracts all possible features from the modality within the specified mask. | |
| virtual void | setInputCloud (const typename PointCloudIn::ConstPtr &cloud) |
| Provide a pointer to the input dataset (overwrites the PCLBase::setInputCloud method). | |
| virtual void | processInputData () |
| Processes the input data (smoothing, computing gradients, quantizing, filtering, spreading). | |
| virtual void | processInputDataFromFiltered () |
| Processes the input data assuming that everything up to filtering is already done/available (so only spreading is performed). | |
Protected Member Functions | |
| void | computeGaussianKernel (const size_t kernel_size, const float sigma, std::vector< float > &kernel_values) |
| Computes the Gaussian kernel used for smoothing. | |
| void | computeMaxColorGradients (const typename pcl::PointCloud< pcl::RGB >::ConstPtr &cloud) |
| Computes the max-RGB gradients for the specified cloud. | |
| void | computeMaxColorGradientsSobel (const typename pcl::PointCloud< pcl::RGB >::ConstPtr &cloud) |
| Computes the max-RGB gradients for the specified cloud using sobel. | |
| void | quantizeColorGradients () |
| Quantizes the color gradients. | |
| void | filterQuantizedColorGradients () |
| Filters the quantized gradients. | |
Static Protected Member Functions | |
| static void | erode (const pcl::MaskMap &mask_in, pcl::MaskMap &mask_out) |
| Erodes a mask. | |
Modality based on max-RGB gradients.
Definition at line 58 of file color_gradient_modality.h.
| typedef pcl::PointCloud<PointInT> pcl::ColorGradientModality< PointInT >::PointCloudIn |
Definition at line 85 of file color_gradient_modality.h.
| enum pcl::ColorGradientModality::FeatureSelectionMethod |
Different methods for feature selection/extraction.
Definition at line 88 of file color_gradient_modality.h.
| pcl::ColorGradientModality< PointInT >::ColorGradientModality | ( | ) | [inline] |
Constructor.
Definition at line 277 of file color_gradient_modality.h.
| pcl::ColorGradientModality< PointInT >::~ColorGradientModality | ( | ) | [inline, virtual] |
Destructor.
Definition at line 294 of file color_gradient_modality.h.
| void pcl::ColorGradientModality< PointInT >::computeGaussianKernel | ( | const size_t | kernel_size, | |
| const float | sigma, | |||
| std::vector< float > & | kernel_values | |||
| ) | [inline, protected] |
Computes the Gaussian kernel used for smoothing.
| [in] | kernel_size | the size of the Gaussian kernel. |
| [in] | sigma | the sigma. |
| [out] | kernel_values | the destination for the values of the kernel. |
Definition at line 301 of file color_gradient_modality.h.
Referenced by pcl::ColorGradientModality< PointInT >::processInputData().
| void pcl::ColorGradientModality< PointInT >::computeMaxColorGradients | ( | const typename pcl::PointCloud< pcl::RGB >::ConstPtr & | cloud | ) | [inline, protected] |
Computes the max-RGB gradients for the specified cloud.
| [in] | cloud | the cloud for which the gradients are computed. |
Definition at line 755 of file color_gradient_modality.h.
References pcl::GradientXY::angle, pcl::PointCloud< PointT >::height, pcl::GradientXY::magnitude, pcl::PointCloud< PointT >::points, pcl::PointCloud< PointT >::width, pcl::GradientXY::x, and pcl::GradientXY::y.
| void pcl::ColorGradientModality< PointInT >::computeMaxColorGradientsSobel | ( | const typename pcl::PointCloud< pcl::RGB >::ConstPtr & | cloud | ) | [inline, protected] |
Computes the max-RGB gradients for the specified cloud using sobel.
| [in] | cloud | the cloud for which the gradients are computed. |
Definition at line 842 of file color_gradient_modality.h.
References pcl::GradientXY::angle, pcl::PointCloud< PointT >::height, pcl::GradientXY::magnitude, pcl::PointCloud< PointT >::points, pcl::PointCloud< PointT >::width, pcl::GradientXY::x, and pcl::GradientXY::y.
Referenced by pcl::ColorGradientModality< PointInT >::processInputData().
| void pcl::ColorGradientModality< PointInT >::erode | ( | const pcl::MaskMap & | mask_in, | |
| pcl::MaskMap & | mask_out | |||
| ) | [inline, static, protected] |
Erodes a mask.
| [in] | mask_in | the mask which will be eroded. |
| [out] | mask_out | the destination for the eroded mask. |
Definition at line 1097 of file color_gradient_modality.h.
References pcl::MaskMap::getHeight(), pcl::MaskMap::getWidth(), and pcl::MaskMap::resize().
Referenced by pcl::ColorGradientModality< PointInT >::extractFeatures().
| void pcl::ColorGradientModality< PointInT >::extractAllFeatures | ( | const MaskMap & | mask, | |
| size_t | nr_features, | |||
| size_t | modalityIndex, | |||
| std::vector< QuantizedMultiModFeature > & | features | |||
| ) | const [inline, virtual] |
Extracts all possible features from the modality within the specified mask.
| [in] | mask | defines the areas where features are searched in. |
| [in] | nr_features | IGNORED (TODO: remove this parameter). |
| [in] | modality_index | the index which is stored in the extracted features. |
| [out] | features | the destination for the extracted features. |
Implements pcl::QuantizableModality.
Definition at line 705 of file color_gradient_modality.h.
References pcl::MaskMap::getHeight(), pcl::MaskMap::getWidth(), pcl::ColorGradientModality< PointInT >::Candidate::gradient, pcl::GradientXY::magnitude, pcl::QuantizedMultiModFeature::modality_index, pcl::QuantizedMultiModFeature::quantized_value, pcl::QuantizedMultiModFeature::x, pcl::ColorGradientModality< PointInT >::Candidate::x, pcl::QuantizedMultiModFeature::y, and pcl::ColorGradientModality< PointInT >::Candidate::y.
| void pcl::ColorGradientModality< PointInT >::extractFeatures | ( | const MaskMap & | mask, | |
| size_t | nr_features, | |||
| size_t | modalityIndex, | |||
| std::vector< QuantizedMultiModFeature > & | features | |||
| ) | const [inline, virtual] |
Extracts features from this modality within the specified mask.
| [in] | mask | defines the areas where features are searched in. |
| [in] | nr_features | defines the number of features to be extracted (might be less if not sufficient information is present in the modality). |
| [in] | modality_index | the index which is stored in the extracted features. |
| [out] | features | the destination for the extracted features. |
Implements pcl::QuantizableModality.
Definition at line 418 of file color_gradient_modality.h.
References pcl::ColorGradientModality< PointInT >::DISTANCE_MAGNITUDE_SCORE, pcl::ColorGradientModality< PointInT >::erode(), pcl::MaskMap::getDifferenceMask(), pcl::MaskMap::getHeight(), pcl::MaskMap::getWidth(), pcl::ColorGradientModality< PointInT >::Candidate::gradient, pcl::GradientXY::magnitude, pcl::ColorGradientModality< PointInT >::MASK_BORDER_EQUALLY, pcl::ColorGradientModality< PointInT >::MASK_BORDER_HIGH_GRADIENTS, pcl::QuantizedMultiModFeature::modality_index, pcl::QuantizedMultiModFeature::quantized_value, pcl::QuantizedMultiModFeature::x, pcl::ColorGradientModality< PointInT >::Candidate::x, pcl::QuantizedMultiModFeature::y, and pcl::ColorGradientModality< PointInT >::Candidate::y.
| void pcl::ColorGradientModality< PointInT >::filterQuantizedColorGradients | ( | ) | [inline, protected] |
Filters the quantized gradients.
Definition at line 1027 of file color_gradient_modality.h.
References pcl::QuantizedMap::getData(), pcl::PCLBase< PointInT >::input_, and pcl::QuantizedMap::resize().
Referenced by pcl::ColorGradientModality< PointInT >::processInputData().
| pcl::PointCloud<pcl::GradientXY>& pcl::ColorGradientModality< PointInT >::getMaxColorGradients | ( | ) | [inline] |
Returns a point cloud containing the max-RGB gradients.
Definition at line 161 of file color_gradient_modality.h.
| QuantizedMap& pcl::ColorGradientModality< PointInT >::getQuantizedMap | ( | ) | [inline, virtual] |
Returns a reference to the internally computed quantized map.
Implements pcl::QuantizableModality.
Definition at line 147 of file color_gradient_modality.h.
| QuantizedMap& pcl::ColorGradientModality< PointInT >::getSpreadedQuantizedMap | ( | ) | [inline, virtual] |
Returns a reference to the internally computed spreaded quantized map.
Implements pcl::QuantizableModality.
Definition at line 154 of file color_gradient_modality.h.
| void pcl::ColorGradientModality< PointInT >::processInputData | ( | ) | [inline, virtual] |
Processes the input data (smoothing, computing gradients, quantizing, filtering, spreading).
Definition at line 348 of file color_gradient_modality.h.
References pcl::ColorGradientModality< PointInT >::computeGaussianKernel(), pcl::ColorGradientModality< PointInT >::computeMaxColorGradientsSobel(), pcl::filters::Convolution< PointIn, PointOut >::convolve(), pcl::ColorGradientModality< PointInT >::filterQuantizedColorGradients(), pcl::PointCloud< PointT >::height, pcl::PCLBase< PointInT >::input_, pcl::PointCloud< PointT >::is_dense, pcl::ColorGradientModality< PointInT >::quantizeColorGradients(), pcl::PointCloud< PointT >::resize(), pcl::filters::Convolution< PointIn, PointOut >::setInputCloud(), pcl::filters::Convolution< PointIn, PointOut >::setKernel(), pcl::QuantizedMap::spreadQuantizedMap(), and pcl::PointCloud< PointT >::width.
| void pcl::ColorGradientModality< PointInT >::processInputDataFromFiltered | ( | ) | [inline, virtual] |
Processes the input data assuming that everything up to filtering is already done/available (so only spreading is performed).
Definition at line 406 of file color_gradient_modality.h.
References pcl::QuantizedMap::spreadQuantizedMap().
| void pcl::ColorGradientModality< PointInT >::quantizeColorGradients | ( | ) | [inline, protected] |
Quantizes the color gradients.
Definition at line 964 of file color_gradient_modality.h.
References pcl::PCLBase< PointInT >::input_, and pcl::QuantizedMap::resize().
Referenced by pcl::ColorGradientModality< PointInT >::processInputData().
| void pcl::ColorGradientModality< PointInT >::setFeatureSelectionMethod | ( | const FeatureSelectionMethod | method | ) | [inline] |
Sets the feature selection method.
| [in] | method | the feature selection method. |
Definition at line 124 of file color_gradient_modality.h.
| void pcl::ColorGradientModality< PointInT >::setGradientMagnitudeThreshold | ( | const float | threshold | ) | [inline] |
Sets the threshold for the gradient magnitude which is used when quantizing the data.
Gradients with a smaller magnitude are ignored.
| [in] | threshold | the new gradient magnitude threshold. |
Definition at line 105 of file color_gradient_modality.h.
| void pcl::ColorGradientModality< PointInT >::setGradientMagnitudeThresholdForFeatureExtraction | ( | const float | threshold | ) | [inline] |
Sets the threshold for the gradient magnitude which is used for feature extraction.
Gradients with a smaller magnitude are ignored.
| [in] | threshold | the new gradient magnitude threshold. |
Definition at line 115 of file color_gradient_modality.h.
| virtual void pcl::ColorGradientModality< PointInT >::setInputCloud | ( | const typename PointCloudIn::ConstPtr & | cloud | ) | [inline, virtual] |
Provide a pointer to the input dataset (overwrites the PCLBase::setInputCloud method).
| cloud | the const boost shared pointer to a PointCloud message |
Definition at line 191 of file color_gradient_modality.h.
| void pcl::ColorGradientModality< PointInT >::setSpreadingSize | ( | const size_t | spreading_size | ) | [inline] |
Sets the spreading size for spreading the quantized data.
Definition at line 131 of file color_gradient_modality.h.
| void pcl::ColorGradientModality< PointInT >::setVariableFeatureNr | ( | const bool | enabled | ) | [inline] |
Sets whether variable feature numbers for feature extraction is enabled.
| [in] | enabled | enables/disables variable feature numbers for feature extraction. |
Definition at line 140 of file color_gradient_modality.h.