Point Cloud Library (PCL)  1.7.0
Classes | Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions
pcl::ColorGradientModality< PointInT > Class Template Reference

Modality based on max-RGB gradients. More...

#include <pcl/recognition/color_gradient_modality.h>

+ Inheritance diagram for pcl::ColorGradientModality< PointInT >:

List of all members.

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.
QuantizedMapgetQuantizedMap ()
 Returns a reference to the internally computed quantized map.
QuantizedMapgetSpreadedQuantizedMap ()
 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.

Detailed Description

template<typename PointInT>
class pcl::ColorGradientModality< PointInT >

Modality based on max-RGB gradients.

Author:
Stefan Holzer

Definition at line 58 of file color_gradient_modality.h.


Member Typedef Documentation

template<typename PointInT>
typedef pcl::PointCloud<PointInT> pcl::ColorGradientModality< PointInT >::PointCloudIn

Definition at line 85 of file color_gradient_modality.h.


Member Enumeration Documentation

template<typename PointInT>
enum pcl::ColorGradientModality::FeatureSelectionMethod

Different methods for feature selection/extraction.

Enumerator:
MASK_BORDER_HIGH_GRADIENTS 
MASK_BORDER_EQUALLY 
DISTANCE_MAGNITUDE_SCORE 

Definition at line 88 of file color_gradient_modality.h.


Constructor & Destructor Documentation

template<typename PointInT >
pcl::ColorGradientModality< PointInT >::ColorGradientModality ( )

Constructor.

Definition at line 277 of file color_gradient_modality.h.

template<typename PointInT >
pcl::ColorGradientModality< PointInT >::~ColorGradientModality ( ) [virtual]

Destructor.

Definition at line 294 of file color_gradient_modality.h.


Member Function Documentation

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::computeGaussianKernel ( const size_t  kernel_size,
const float  sigma,
std::vector< float > &  kernel_values 
) [protected]

Computes the Gaussian kernel used for smoothing.

Parameters:
[in]kernel_sizethe size of the Gaussian kernel.
[in]sigmathe sigma.
[out]kernel_valuesthe destination for the values of the kernel.

Definition at line 301 of file color_gradient_modality.h.

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::computeMaxColorGradients ( const typename pcl::PointCloud< pcl::RGB >::ConstPtr &  cloud) [protected]

Computes the max-RGB gradients for the specified cloud.

Parameters:
[in]cloudthe 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.

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::computeMaxColorGradientsSobel ( const typename pcl::PointCloud< pcl::RGB >::ConstPtr &  cloud) [protected]

Computes the max-RGB gradients for the specified cloud using sobel.

Parameters:
[in]cloudthe 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.

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::erode ( const pcl::MaskMap mask_in,
pcl::MaskMap mask_out 
) [static, protected]

Erodes a mask.

Parameters:
[in]mask_inthe mask which will be eroded.
[out]mask_outthe 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().

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::extractAllFeatures ( const MaskMap mask,
size_t  nr_features,
size_t  modalityIndex,
std::vector< QuantizedMultiModFeature > &  features 
) const [virtual]

Extracts all possible features from the modality within the specified mask.

Parameters:
[in]maskdefines the areas where features are searched in.
[in]nr_featuresIGNORED (TODO: remove this parameter).
[in]modality_indexthe index which is stored in the extracted features.
[out]featuresthe 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.

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::extractFeatures ( const MaskMap mask,
size_t  nr_features,
size_t  modalityIndex,
std::vector< QuantizedMultiModFeature > &  features 
) const [virtual]

Extracts features from this modality within the specified mask.

Parameters:
[in]maskdefines the areas where features are searched in.
[in]nr_featuresdefines the number of features to be extracted (might be less if not sufficient information is present in the modality).
[in]modality_indexthe index which is stored in the extracted features.
[out]featuresthe destination for the extracted features.

Implements pcl::QuantizableModality.

Definition at line 418 of file color_gradient_modality.h.

References pcl::MaskMap::getDifferenceMask(), 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.

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::filterQuantizedColorGradients ( ) [protected]

Filters the quantized gradients.

Definition at line 1027 of file color_gradient_modality.h.

template<typename PointInT>
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.

template<typename PointInT>
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.

template<typename PointInT>
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.

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::processInputData ( ) [virtual]
template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::processInputDataFromFiltered ( ) [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().

template<typename PointInT >
void pcl::ColorGradientModality< PointInT >::quantizeColorGradients ( ) [protected]

Quantizes the color gradients.

Definition at line 964 of file color_gradient_modality.h.

template<typename PointInT>
void pcl::ColorGradientModality< PointInT >::setFeatureSelectionMethod ( const FeatureSelectionMethod  method) [inline]

Sets the feature selection method.

Parameters:
[in]methodthe feature selection method.

Definition at line 124 of file color_gradient_modality.h.

template<typename PointInT>
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.

Parameters:
[in]thresholdthe new gradient magnitude threshold.

Definition at line 105 of file color_gradient_modality.h.

template<typename PointInT>
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.

Parameters:
[in]thresholdthe new gradient magnitude threshold.

Definition at line 115 of file color_gradient_modality.h.

template<typename PointInT>
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)

Parameters:
cloudthe const boost shared pointer to a PointCloud message

Definition at line 191 of file color_gradient_modality.h.

template<typename PointInT>
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.

template<typename PointInT>
void pcl::ColorGradientModality< PointInT >::setVariableFeatureNr ( const bool  enabled) [inline]

Sets whether variable feature numbers for feature extraction is enabled.

Parameters:
[in]enabledenables/disables variable feature numbers for feature extraction.

Definition at line 140 of file color_gradient_modality.h.


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