Classes | Public Types | Public Member Functions | Protected Member Functions | Private Attributes
pcl::SurfaceNormalModality< PointInT > Class Template Reference

Modality based on surface normals. More...

#include <surface_normal_modality.h>

Inheritance diagram for pcl::SurfaceNormalModality< PointInT >:
Inheritance graph
[legend]

List of all members.

Classes

struct  Candidate
 Candidate for a feature (used in feature extraction methods). More...

Public Types

typedef pcl::PointCloud< PointInT > PointCloudIn

Public Member Functions

void extractAllFeatures (const MaskMap &mask, size_t nr_features, size_t modality_index, std::vector< QuantizedMultiModFeature > &features) const
 Extracts all possible features from the modality within the specified mask.
void extractFeatures (const MaskMap &mask, size_t nr_features, size_t modality_index, std::vector< QuantizedMultiModFeature > &features) const
 Extracts features from this modality within the specified mask.
LINEMOD_OrientationMapgetOrientationMap ()
 Returns a reference to the orientation map.
QuantizedMapgetQuantizedMap ()
 Returns a reference to the internal quantized map.
QuantizedMapgetSpreadedQuantizedMap ()
 Returns a reference to the internal spreaded quantized map.
pcl::PointCloud< pcl::Normal > & getSurfaceNormals ()
 Returns the surface normals.
const pcl::PointCloud
< pcl::Normal > & 
getSurfaceNormals () const
 Returns the surface normals.
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).
virtual void setInputCloud (const typename PointCloudIn::ConstPtr &cloud)
 Provide a pointer to the input dataset (overwrites the PCLBase::setInputCloud method)
void setSpreadingSize (const size_t spreading_size)
 Sets the spreading size.
void setVariableFeatureNr (const bool enabled)
 Enables/disables the use of extracting a variable number of features.
 SurfaceNormalModality ()
 Constructor.
virtual ~SurfaceNormalModality ()
 Destructor.

Protected Member Functions

void computeAndQuantizeSurfaceNormals ()
 Computes and quantizes the surface normals.
void computeAndQuantizeSurfaceNormals2 ()
 Computes and quantizes the surface normals.
void computeDistanceMap (const MaskMap &input, DistanceMap &output) const
 Computes a distance map from the supplied input mask.
void computeSurfaceNormals ()
 Computes the surface normals from the input cloud.
void filterQuantizedSurfaceNormals ()
 Filters the quantized surface normals.
void quantizeSurfaceNormals ()
 Quantizes the surface normals.

Private Attributes

float feature_distance_threshold_
 The feature distance threshold.
pcl::QuantizedMap filtered_quantized_surface_normals_
 Filtered quantized surface normals.
float min_distance_to_border_
 Minimum distance of a feature to a border.
QuantizedNormalLookUpTable normal_lookup_
 Look-up-table for quantizing surface normals.
pcl::QuantizedMap quantized_surface_normals_
 Quantized surface normals.
pcl::QuantizedMap spreaded_quantized_surface_normals_
 Spreaded quantized surface normals.
size_t spreading_size_
 The spreading size.
pcl::LINEMOD_OrientationMap surface_normal_orientations_
 Map containing surface normal orientations.
pcl::PointCloud< pcl::Normalsurface_normals_
 Point cloud holding the computed surface normals.
bool variable_feature_nr_
 Determines whether variable numbers of features are extracted or not.

Detailed Description

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

Modality based on surface normals.

Author:
Stefan Holzer

Definition at line 294 of file surface_normal_modality.h.


Member Typedef Documentation

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

Definition at line 329 of file surface_normal_modality.h.


Constructor & Destructor Documentation

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

Constructor.

Definition at line 492 of file surface_normal_modality.h.

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

Destructor.

Definition at line 508 of file surface_normal_modality.h.


Member Function Documentation

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::computeAndQuantizeSurfaceNormals ( ) [protected]

Computes and quantizes the surface normals.

Definition at line 558 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::computeAndQuantizeSurfaceNormals2 ( ) [protected]

Computes and quantizes the surface normals.

Compute quantized normal image from depth image.

Implements section 2.6 "Extension to Dense Depth Sensors."

Parameters:
[in]srcThe source 16-bit depth image (in mm).
[out]dstThe destination 8-bit image. Each bit represents one bin of the view cone.
distance_thresholdIgnore pixels beyond this distance.
difference_thresholdWhen computing normals, ignore contributions of pixels whose depth difference with the central pixel is above this threshold.
Todo:
Should also need camera model, or at least focal lengths? Replace distance_threshold with mask?
Todo:
Magic number 1150 is focal length? This is something like f in SXGA mode, but in VGA is more like 530.

Definition at line 731 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::computeDistanceMap ( const MaskMap input,
DistanceMap output 
) const [protected]

Computes a distance map from the supplied input mask.

Parameters:
[in]inputthe mask for which a distance map will be computed.
[out]outputthe destination for the distance map.

Definition at line 1586 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::computeSurfaceNormals ( ) [protected]

Computes the surface normals from the input cloud.

Definition at line 545 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::extractAllFeatures ( const MaskMap mask,
size_t  nr_features,
size_t  modality_index,
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 1244 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::extractFeatures ( const MaskMap mask,
size_t  nr_features,
size_t  modality_index,
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 972 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::filterQuantizedSurfaceNormals ( ) [protected]

Filters the quantized surface normals.

Definition at line 1414 of file surface_normal_modality.h.

template<typename PointInT>
LINEMOD_OrientationMap& pcl::SurfaceNormalModality< PointInT >::getOrientationMap ( ) [inline]

Returns a reference to the orientation map.

Definition at line 384 of file surface_normal_modality.h.

template<typename PointInT>
QuantizedMap& pcl::SurfaceNormalModality< PointInT >::getQuantizedMap ( ) [inline, virtual]

Returns a reference to the internal quantized map.

Implements pcl::QuantizableModality.

Definition at line 370 of file surface_normal_modality.h.

template<typename PointInT>
QuantizedMap& pcl::SurfaceNormalModality< PointInT >::getSpreadedQuantizedMap ( ) [inline, virtual]

Returns a reference to the internal spreaded quantized map.

Implements pcl::QuantizableModality.

Definition at line 377 of file surface_normal_modality.h.

template<typename PointInT>
pcl::PointCloud<pcl::Normal>& pcl::SurfaceNormalModality< PointInT >::getSurfaceNormals ( ) [inline]

Returns the surface normals.

Definition at line 356 of file surface_normal_modality.h.

template<typename PointInT>
const pcl::PointCloud<pcl::Normal>& pcl::SurfaceNormalModality< PointInT >::getSurfaceNormals ( ) const [inline]

Returns the surface normals.

Definition at line 363 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::processInputData ( ) [virtual]

Processes the input data (smoothing, computing gradients, quantizing, filtering, spreading).

Definition at line 514 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< 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 535 of file surface_normal_modality.h.

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::quantizeSurfaceNormals ( ) [protected]

Quantizes the surface normals.

Definition at line 1373 of file surface_normal_modality.h.

template<typename PointInT>
virtual void pcl::SurfaceNormalModality< PointInT >::setInputCloud ( const typename PointCloudIn::ConstPtr cloud) [inline, virtual]

Provide a pointer to the input dataset (overwrites the PCLBase::setInputCloud method)

Parameters:
[in]cloudthe const boost shared pointer to a PointCloud message

Definition at line 414 of file surface_normal_modality.h.

template<typename PointInT>
void pcl::SurfaceNormalModality< PointInT >::setSpreadingSize ( const size_t  spreading_size) [inline]

Sets the spreading size.

Parameters:
[in]spreading_sizethe spreading size.

Definition at line 340 of file surface_normal_modality.h.

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

Enables/disables the use of extracting a variable number of features.

Parameters:
[in]enabledspecifies whether extraction of a variable number of features will be enabled/disabled.

Definition at line 349 of file surface_normal_modality.h.


Member Data Documentation

template<typename PointInT>
float pcl::SurfaceNormalModality< PointInT >::feature_distance_threshold_ [private]

The feature distance threshold.

Definition at line 463 of file surface_normal_modality.h.

template<typename PointInT>
pcl::QuantizedMap pcl::SurfaceNormalModality< PointInT >::filtered_quantized_surface_normals_ [private]

Filtered quantized surface normals.

Definition at line 478 of file surface_normal_modality.h.

template<typename PointInT>
float pcl::SurfaceNormalModality< PointInT >::min_distance_to_border_ [private]

Minimum distance of a feature to a border.

Definition at line 465 of file surface_normal_modality.h.

template<typename PointInT>
QuantizedNormalLookUpTable pcl::SurfaceNormalModality< PointInT >::normal_lookup_ [private]

Look-up-table for quantizing surface normals.

Definition at line 468 of file surface_normal_modality.h.

template<typename PointInT>
pcl::QuantizedMap pcl::SurfaceNormalModality< PointInT >::quantized_surface_normals_ [private]

Quantized surface normals.

Definition at line 476 of file surface_normal_modality.h.

template<typename PointInT>
pcl::QuantizedMap pcl::SurfaceNormalModality< PointInT >::spreaded_quantized_surface_normals_ [private]

Spreaded quantized surface normals.

Definition at line 480 of file surface_normal_modality.h.

template<typename PointInT>
size_t pcl::SurfaceNormalModality< PointInT >::spreading_size_ [private]

The spreading size.

Definition at line 471 of file surface_normal_modality.h.

template<typename PointInT>
pcl::LINEMOD_OrientationMap pcl::SurfaceNormalModality< PointInT >::surface_normal_orientations_ [private]

Map containing surface normal orientations.

Definition at line 483 of file surface_normal_modality.h.

template<typename PointInT>
pcl::PointCloud<pcl::Normal> pcl::SurfaceNormalModality< PointInT >::surface_normals_ [private]

Point cloud holding the computed surface normals.

Definition at line 474 of file surface_normal_modality.h.

template<typename PointInT>
bool pcl::SurfaceNormalModality< PointInT >::variable_feature_nr_ [private]

Determines whether variable numbers of features are extracted or not.

Definition at line 460 of file surface_normal_modality.h.


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


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:43:37