W3cubDocs

/PointCloudLibrary

Modality based on surface normals. More...

#include <pcl/recognition/surface_normal_modality.h>

Classes

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

Public Types

using PointCloudIn = pcl::PointCloud< PointInT >
- Public Types inherited from pcl::PCLBase< PointInT >
using PointCloud = pcl::PointCloud< PointInT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr

Public Member Functions

SurfaceNormalModality ()
Constructor. More...
~SurfaceNormalModality ()
Destructor. More...
void setSpreadingSize (const std::size_t spreading_size)
Sets the spreading size. More...
void setVariableFeatureNr (const bool enabled)
Enables/disables the use of extracting a variable number of features. More...
pcl::PointCloud< pcl::Normal > & getSurfaceNormals ()
Returns the surface normals. More...
const pcl::PointCloud< pcl::Normal > & getSurfaceNormals () const
Returns the surface normals. More...
QuantizedMap & getQuantizedMap () override
Returns a reference to the internal quantized map. More...
QuantizedMap & getSpreadedQuantizedMap () override
Returns a reference to the internal spread quantized map. More...
LINEMOD_OrientationMap & getOrientationMap ()
Returns a reference to the orientation map. More...
void extractFeatures (const MaskMap &mask, std::size_t nr_features, std::size_t modality_index, std::vector< QuantizedMultiModFeature > &features) const override
Extracts features from this modality within the specified mask. More...
void extractAllFeatures (const MaskMap &mask, std::size_t nr_features, std::size_t modality_index, std::vector< QuantizedMultiModFeature > &features) const override
Extracts all possible features from the modality within the specified mask. More...
void setInputCloud (const typename PointCloudIn::ConstPtr &cloud) override
Provide a pointer to the input dataset (overwrites the PCLBase::setInputCloud method) More...
virtual void processInputData ()
Processes the input data (smoothing, computing gradients, quantizing, filtering, spreading). More...
virtual void processInputDataFromFiltered ()
Processes the input data assuming that everything up to filtering is already done/available (so only spreading is performed). More...
- Public Member Functions inherited from pcl::QuantizableModality
QuantizableModality ()
Constructor. More...
virtual ~QuantizableModality ()
Destructor. More...
- Public Member Functions inherited from pcl::PCLBase< PointInT >
PCLBase ()
Empty constructor. More...
PCLBase (const PCLBase &base)
Copy constructor. More...
virtual ~PCLBase ()=default
Destructor. More...
virtual void setInputCloud (const PointCloudConstPtr &cloud)
Provide a pointer to the input dataset. More...
const PointCloudConstPtr getInputCloud () const
Get a pointer to the input point cloud dataset. More...
virtual void setIndices (const IndicesPtr &indices)
Provide a pointer to the vector of indices that represents the input data. More...
virtual void setIndices (const IndicesConstPtr &indices)
Provide a pointer to the vector of indices that represents the input data. More...
virtual void setIndices (const PointIndicesConstPtr &indices)
Provide a pointer to the vector of indices that represents the input data. More...
virtual void setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols)
Set the indices for the points laying within an interest region of the point cloud. More...
IndicesPtr getIndices ()
Get a pointer to the vector of indices used. More...
const IndicesConstPtr getIndices () const
Get a pointer to the vector of indices used. More...
const PointInT & operator[] (std::size_t pos) const
Override PointCloud operator[] to shorten code. More...

Protected Member Functions

void computeSurfaceNormals ()
Computes the surface normals from the input cloud. More...
void computeAndQuantizeSurfaceNormals ()
Computes and quantizes the surface normals. More...
void computeAndQuantizeSurfaceNormals2 ()
Computes and quantizes the surface normals. More...
void quantizeSurfaceNormals ()
Quantizes the surface normals. More...
void filterQuantizedSurfaceNormals ()
Filters the quantized surface normals. More...
void computeDistanceMap (const MaskMap &input, DistanceMap &output) const
Computes a distance map from the supplied input mask. More...
- Protected Member Functions inherited from pcl::PCLBase< PointInT >
bool initCompute ()
This method should get called before starting the actual computation. More...
bool deinitCompute ()
This method should get called after finishing the actual computation. More...

Additional Inherited Members

- Protected Attributes inherited from pcl::PCLBase< PointInT >
PointCloudConstPtr input_
The input point cloud dataset. More...
IndicesPtr indices_
A pointer to the vector of point indices to use. More...
bool use_indices_
Set to true if point indices are used. More...
bool fake_indices_
If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More...

Detailed Description

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

Modality based on surface normals.

Author
Stefan Holzer

Definition at line 299 of file surface_normal_modality.h.

Member Typedef Documentation

PointCloudIn

template<typename PointInT >
using pcl::SurfaceNormalModality< PointInT >::PointCloudIn = pcl::PointCloud<PointInT>

Definition at line 334 of file surface_normal_modality.h.

Constructor & Destructor Documentation

SurfaceNormalModality()

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

Constructor.

Definition at line 497 of file surface_normal_modality.h.

~SurfaceNormalModality()

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

Destructor.

Definition at line 507 of file surface_normal_modality.h.

Member Function Documentation

computeAndQuantizeSurfaceNormals()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::computeAndQuantizeSurfaceNormals
protected

Computes and quantizes the surface normals.

Definition at line 557 of file surface_normal_modality.h.

computeAndQuantizeSurfaceNormals2()

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."

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 723 of file surface_normal_modality.h.

computeDistanceMap()

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] input the mask for which a distance map will be computed.
[out] output the destination for the distance map.

Definition at line 1578 of file surface_normal_modality.h.

computeSurfaceNormals()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::computeSurfaceNormals
protected

Computes the surface normals from the input cloud.

Definition at line 544 of file surface_normal_modality.h.

extractAllFeatures()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::extractAllFeatures ( const MaskMap & mask,
std::size_t nr_features,
std::size_t modality_index,
std::vector< QuantizedMultiModFeature > & features
) const
overridevirtual

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

Parameters
[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 1236 of file surface_normal_modality.h.

extractFeatures()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::extractFeatures ( const MaskMap & mask,
std::size_t nr_features,
std::size_t modality_index,
std::vector< QuantizedMultiModFeature > & features
) const
overridevirtual

Extracts features from this modality within the specified mask.

Parameters
[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 964 of file surface_normal_modality.h.

filterQuantizedSurfaceNormals()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::filterQuantizedSurfaceNormals
protected

Filters the quantized surface normals.

Definition at line 1406 of file surface_normal_modality.h.

getOrientationMap()

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

Returns a reference to the orientation map.

Definition at line 389 of file surface_normal_modality.h.

getQuantizedMap()

template<typename PointInT >
QuantizedMap& pcl::SurfaceNormalModality< PointInT >::getQuantizedMap ( )
inlineoverridevirtual

Returns a reference to the internal quantized map.

Implements pcl::QuantizableModality.

Definition at line 375 of file surface_normal_modality.h.

getSpreadedQuantizedMap()

template<typename PointInT >
QuantizedMap& pcl::SurfaceNormalModality< PointInT >::getSpreadedQuantizedMap ( )
inlineoverridevirtual

Returns a reference to the internal spread quantized map.

Implements pcl::QuantizableModality.

Definition at line 382 of file surface_normal_modality.h.

getSurfaceNormals() [1/2]

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

Returns the surface normals.

Definition at line 361 of file surface_normal_modality.h.

getSurfaceNormals() [2/2]

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

Returns the surface normals.

Definition at line 368 of file surface_normal_modality.h.

processInputData()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::processInputData
virtual

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

Definition at line 513 of file surface_normal_modality.h.

processInputDataFromFiltered()

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 534 of file surface_normal_modality.h.

quantizeSurfaceNormals()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::quantizeSurfaceNormals
protected

Quantizes the surface normals.

Definition at line 1365 of file surface_normal_modality.h.

setInputCloud()

template<typename PointInT >
void pcl::SurfaceNormalModality< PointInT >::setInputCloud ( const typename PointCloudIn::ConstPtr & cloud )
inlineoverride

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

Parameters
[in] cloud the const boost shared pointer to a PointCloud message

Definition at line 419 of file surface_normal_modality.h.

setSpreadingSize()

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

Sets the spreading size.

Parameters
[in] spreading_size the spreading size.

Definition at line 345 of file surface_normal_modality.h.

setVariableFeatureNr()

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] enabled specifies whether extraction of a variable number of features will be enabled/disabled.

Definition at line 354 of file surface_normal_modality.h.


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

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_surface_normal_modality.html