GASDEstimation estimates the Globally Aligned Spatial Distribution (GASD) descriptor for a given point cloud dataset given XYZ data. More...
#include <pcl/features/gasd.h>
|
using |
Ptr = shared_ptr< GASDEstimation< PointInT, PointOutT > > |
using |
ConstPtr = shared_ptr< const GASDEstimation< PointInT, PointOutT > > |
using |
BaseClass = PCLBase< PointInT > |
using |
Ptr = shared_ptr< Feature< PointInT, GASDSignature512 > > |
using |
ConstPtr = shared_ptr< const Feature< PointInT, GASDSignature512 > > |
using |
KdTree = pcl::search::Search< PointInT > |
using |
KdTreePtr = typename KdTree::Ptr |
using |
PointCloudIn = pcl::PointCloud< PointInT > |
using |
PointCloudInPtr = typename PointCloudIn::Ptr |
using |
PointCloudInConstPtr = typename PointCloudIn::ConstPtr |
using |
PointCloudOut = pcl::PointCloud< GASDSignature512 > |
using |
SearchMethod = std::function< int(std::size_t, double, pcl::Indices &, std::vector< float > &)> |
using |
SearchMethodSurface = std::function< int(const PointCloudIn &cloud, std::size_t index, double, pcl::Indices &, std::vector< float > &)> |
using |
PointCloud = pcl::PointCloud< PointInT > |
using |
PointCloudPtr = typename PointCloud::Ptr |
using |
PointCloudConstPtr = typename PointCloud::ConstPtr |
using |
PointIndicesPtr = PointIndices::Ptr |
using |
PointIndicesConstPtr = PointIndices::ConstPtr |
|
void |
addSampleToHistograms (const Eigen::Vector4f &p, const float max_coord, const std::size_t half_grid_size, const HistogramInterpolationMethod interp, const float hbin, const float hist_incr, std::vector< Eigen::VectorXf > &hists) |
|
add a sample to its respective histogram, optionally performing interpolation. More...
|
void |
computeFeature (PointCloudOut &output) override |
|
Estimate GASD descriptor. More...
|
const std::string & |
getClassName () const |
|
Get a string representation of the name of this class. More...
|
virtual bool |
initCompute () |
|
This method should get called before starting the actual computation. More...
|
virtual bool |
deinitCompute () |
|
This method should get called after ending the actual computation. More...
|
int |
searchForNeighbors (std::size_t index, double parameter, pcl::Indices &indices, std::vector< float > &distances) const |
|
Search for k-nearest neighbors using the spatial locator from setSearchmethod, and the given surface from setSearchSurface. More...
|
int |
searchForNeighbors (const PointCloudIn &cloud, std::size_t index, double parameter, pcl::Indices &indices, std::vector< float > &distances) const |
|
Search for k-nearest neighbors using the spatial locator from setSearchmethod, and the given surface from setSearchSurface. More...
|
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...
|
template<typename PointInT, typename PointOutT = GASDSignature512>
class pcl::GASDEstimation< PointInT, PointOutT >
GASDEstimation estimates the Globally Aligned Spatial Distribution (GASD) descriptor for a given point cloud dataset given XYZ data.
The suggested PointOutT is pcl::GASDSignature512.
-
Note
-
If you use this code in any academic work, please cite:
- J. Lima, V. Teichrieb. An Efficient Global Point Cloud Descriptor for Object Recognition and Pose Estimation. In Proceedings of the 29th SIBGRAPI - Conference on Graphics, Patterns and Images, Sao Jose dos Campos, Brazil, October 4-7 2016.
-
Author
-
Joao Paulo Lima
Voxar Labs, Centro de Informatica, Universidade Federal de Pernambuco, Brazil
Departamento de Estatistica e Informatica, Universidade Federal Rural de Pernambuco, Brazil
Definition at line 74 of file gasd.h.
ConstPtr
template<typename PointInT , typename PointOutT = GASDSignature512>
Ptr
template<typename PointInT , typename PointOutT = GASDSignature512>
GASDEstimation()
template<typename PointInT , typename PointOutT = GASDSignature512>
addSampleToHistograms()
template<typename PointInT , typename PointOutT >
void pcl::GASDEstimation< PointInT, PointOutT >::addSampleToHistograms |
( |
const Eigen::Vector4f & |
p, |
|
|
const float |
max_coord, |
|
|
const std::size_t |
half_grid_size, |
|
|
const HistogramInterpolationMethod |
interp, |
|
|
const float |
hbin, |
|
|
const float |
hist_incr, |
|
|
std::vector< Eigen::VectorXf > & |
hists |
|
) |
|
|
|
protected |
add a sample to its respective histogram, optionally performing interpolation.
-
Parameters
-
[in] |
p |
histogram sample |
[in] |
max_coord |
normalization factor with respect to axis-aligned bounding cube centered on the origin |
[in] |
half_grid_size |
half size of the regular grid used to compute the descriptor |
[in] |
interp |
interpolation method to be used while computing the descriptor |
[in] |
hbin |
histogram bin |
[in] |
hist_incr |
normalization factor of sample contribution |
[in,out] |
hists |
updated histograms |
Definition at line 117 of file gasd.hpp.
References pcl::INTERP_NONE.
compute()
template<typename PointInT , typename PointOutT >
Overloaded computed method from pcl::Feature.
-
Parameters
-
[out] |
output |
the resultant point cloud model dataset containing the estimated feature |
Definition at line 50 of file gasd.hpp.
computeFeature()
template<typename PointInT , typename PointOutT >
template<typename PointInT , typename PointOutT = GASDSignature512>
Returns the transformation aligning the point cloud to the canonical coordinate system.
Definition at line 144 of file gasd.h.
setShapeHalfGridSize()
template<typename PointInT , typename PointOutT = GASDSignature512>
void pcl::GASDEstimation< PointInT, PointOutT >::setShapeHalfGridSize |
( |
const std::size_t |
shgs |
) |
|
|
inline |
Set the shape half grid size.
-
Parameters
-
[in] |
shgs |
shape half grid size |
Definition at line 115 of file gasd.h.
setShapeHistsInterpMethod()
template<typename PointInT , typename PointOutT = GASDSignature512>
Set the shape histograms interpolation method.
-
Parameters
-
[in] |
interp |
shape histograms interpolation method |
Definition at line 135 of file gasd.h.
setShapeHistsSize()
template<typename PointInT , typename PointOutT = GASDSignature512>
Set the shape histograms size.
If size is 1, then each histogram bin will store the number of points that belong to its correspondent cell in the 3D regular grid. If size > 1, then for each cell it will be computed a histogram of normalized distances between each sample and the cloud centroid
-
Parameters
-
[in] |
shs |
shape histograms size |
Definition at line 126 of file gasd.h.
setViewDirection()
template<typename PointInT , typename PointOutT = GASDSignature512>
void pcl::GASDEstimation< PointInT, PointOutT >::setViewDirection |
( |
const Eigen::Vector3f & |
dir |
) |
|
|
inline |
Set the view direction.
-
Parameters
-
Definition at line 106 of file gasd.h.
hist_incr_
template<typename PointInT , typename PointOutT = GASDSignature512>
Normalized sample contribution with respect to the total number of points in the cloud.
Definition at line 170 of file gasd.h.
max_coord_
template<typename PointInT , typename PointOutT = GASDSignature512>
Normalization factor with respect to axis-aligned bounding cube centered on the origin.
Definition at line 167 of file gasd.h.
pos_
template<typename PointInT , typename PointOutT = GASDSignature512>
Current position of output descriptor point cloud.
Definition at line 173 of file gasd.h.
shape_samples_
template<typename PointInT , typename PointOutT = GASDSignature512>
Point cloud aligned to the canonical coordinate system.
Definition at line 164 of file gasd.h.
The documentation for this class was generated from the following files: