Point Cloud Library (PCL)  1.3.1
Public Types | Public Member Functions
pcl::SmoothedSurfacesKeypoint Class Reference

Based on the paper: Xinju Li and Igor Guskov Multi-scale features for approximate alignment of point-based surfaces Proceedings of the third Eurographics symposium on Geometry processing July 2005, Vienna, Austria. More...

#include <pcl/keypoints/smoothed_surfaces_keypoint.h>

Inheritance diagram for pcl::SmoothedSurfacesKeypoint:
Inheritance graph
[legend]
Collaboration diagram for pcl::SmoothedSurfacesKeypoint:
Collaboration graph
[legend]

List of all members.

Public Types

typedef pcl::PointCloud< PointT > PointCloudT
typedef PointCloudT::ConstPtr PointCloudTConstPtr
typedef pcl::PointCloud< PointNT > PointCloudNT
typedef PointCloudNT::ConstPtr PointCloudNTConstPtr
typedef PointCloudT::Ptr PointCloudTPtr
typedef Keypoint< PointT,
PointT >::KdTreePtr 
KdTreePtr
typedef PCLBase< PointInT > BaseClass
typedef pcl::search::Search
< PointInT > 
KdTree
typedef pcl::PointCloud< PointInT > PointCloudIn
typedef PointCloudIn::Ptr PointCloudInPtr
typedef PointCloudIn::ConstPtr PointCloudInConstPtr
typedef pcl::PointCloud
< PointOutT > 
PointCloudOut
typedef boost::function< int(int,
double, std::vector< int >
&, std::vector< float > &)> 
SearchMethod
typedef boost::function< int(const
PointCloudIn &cloud, int index,
double, std::vector< int >
&, std::vector< float > &)> 
SearchMethodSurface

Public Member Functions

 SmoothedSurfacesKeypoint ()
void addSmoothedPointCloud (const PointCloudTConstPtr &cloud, const PointCloudNTConstPtr &normals, KdTreePtr &kdtree, float &scale)
void resetClouds ()
void setNeighborhoodConstant (float neighborhood_constant)
float getNeighborhoodConstant ()
void setInputNormals (const PointCloudNTConstPtr &normals)
void setInputScale (float input_scale)
void detectKeypoints (PointCloudT &output)
void setSearchSurface (const PointCloudInConstPtr &cloud)
 Provide a pointer to the input dataset that we need to estimate features at every point for.
PointCloudInConstPtr getSearchSurface ()
 Get a pointer to the surface point cloud dataset.
void setSearchMethod (const KdTreePtr &tree)
 Provide a pointer to the search object.
KdTreePtr getSearchMethod ()
 Get a pointer to the search method used.
double getSearchParameter ()
 Get the internal search parameter.
void setKSearch (int k)
 Set the number of k nearest neighbors to use for the feature estimation.
int getKSearch ()
 get the number of k nearest neighbors used for the feature estimation.
void setRadiusSearch (double radius)
 Set the sphere radius that is to be used for determining the nearest neighbors used for the key point detection.
double getRadiusSearch ()
 Get the sphere radius used for determining the neighbors.
void compute (PointCloudOut &output)
 Base method for key point detection for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod ()
int searchForNeighbors (int index, double parameter, std::vector< int > &indices, std::vector< float > &distances)
 Search for k-nearest neighbors using the spatial locator from setSearchmethod, and the given surface from setSearchSurface.

Detailed Description

Based on the paper: Xinju Li and Igor Guskov Multi-scale features for approximate alignment of point-based surfaces Proceedings of the third Eurographics symposium on Geometry processing July 2005, Vienna, Austria.

Author:
Alexandru-Eugen Ichim

Member Typedef Documentation

typedef PCLBase<PointInT> pcl::Keypoint::BaseClass [inherited]

Definition at line 60 of file keypoint.h.

typedef pcl::search::Search<PointInT> pcl::Keypoint::KdTree [inherited]

Definition at line 61 of file keypoint.h.

Reimplemented from pcl::Keypoint< PointT, PointT >.

Definition at line 68 of file smoothed_surfaces_keypoint.h.

typedef pcl::PointCloud<PointInT> pcl::Keypoint::PointCloudIn [inherited]

Definition at line 63 of file keypoint.h.

Definition at line 65 of file keypoint.h.

Definition at line 64 of file keypoint.h.

Definition at line 65 of file smoothed_surfaces_keypoint.h.

Definition at line 66 of file smoothed_surfaces_keypoint.h.

typedef pcl::PointCloud<PointOutT> pcl::Keypoint::PointCloudOut [inherited]

Definition at line 66 of file keypoint.h.

Definition at line 63 of file smoothed_surfaces_keypoint.h.

Definition at line 64 of file smoothed_surfaces_keypoint.h.

Definition at line 67 of file smoothed_surfaces_keypoint.h.

typedef boost::function<int (int, double, std::vector<int> &, std::vector<float> &)> pcl::Keypoint::SearchMethod [inherited]

Definition at line 67 of file keypoint.h.

typedef boost::function<int (const PointCloudIn &cloud, int index, double, std::vector<int> &, std::vector<float> &)> pcl::Keypoint::SearchMethodSurface [inherited]

Definition at line 68 of file keypoint.h.


Constructor & Destructor Documentation

pcl::SmoothedSurfacesKeypoint::SmoothedSurfacesKeypoint ( ) [inline]

Definition at line 70 of file smoothed_surfaces_keypoint.h.


Member Function Documentation

void pcl::SmoothedSurfacesKeypoint::addSmoothedPointCloud ( const PointCloudTConstPtr cloud,
const PointCloudNTConstPtr normals,
KdTreePtr kdtree,
float &  scale 
)

Definition at line 48 of file smoothed_surfaces_keypoint.hpp.

void pcl::Keypoint::compute ( PointCloudOut output) [inline, inherited]

Base method for key point detection for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod ()

Parameters:
outputthe resultant point cloud model dataset containing the estimated features
void pcl::SmoothedSurfacesKeypoint::detectKeypoints ( PointCloudT output)

Definition at line 72 of file smoothed_surfaces_keypoint.hpp.

int pcl::Keypoint::getKSearch ( ) [inline, inherited]

get the number of k nearest neighbors used for the feature estimation.

Definition at line 106 of file keypoint.h.

float pcl::SmoothedSurfacesKeypoint::getNeighborhoodConstant ( ) [inline]

Definition at line 95 of file smoothed_surfaces_keypoint.h.

double pcl::Keypoint::getRadiusSearch ( ) [inline, inherited]

Get the sphere radius used for determining the neighbors.

Definition at line 117 of file keypoint.h.

KdTreePtr pcl::Keypoint::getSearchMethod ( ) [inline, inherited]

Get a pointer to the search method used.

Definition at line 92 of file keypoint.h.

double pcl::Keypoint::getSearchParameter ( ) [inline, inherited]

Get the internal search parameter.

Definition at line 96 of file keypoint.h.

PointCloudInConstPtr pcl::Keypoint::getSearchSurface ( ) [inline, inherited]

Get a pointer to the surface point cloud dataset.

Definition at line 82 of file keypoint.h.

void pcl::SmoothedSurfacesKeypoint::resetClouds ( )

Definition at line 62 of file smoothed_surfaces_keypoint.hpp.

int pcl::Keypoint::searchForNeighbors ( int  index,
double  parameter,
std::vector< int > &  indices,
std::vector< float > &  distances 
) [inline, inherited]

Search for k-nearest neighbors using the spatial locator from setSearchmethod, and the given surface from setSearchSurface.

Parameters:
indexthe index of the query point
parameterthe search parameter (either k or radius)
indicesthe resultant vector of indices representing the k-nearest neighbors
distancesthe resultant vector of distances representing the distances from the query point to the k-nearest neighbors

Definition at line 135 of file keypoint.h.

void pcl::SmoothedSurfacesKeypoint::setInputNormals ( const PointCloudNTConstPtr normals) [inline]

Definition at line 98 of file smoothed_surfaces_keypoint.h.

void pcl::SmoothedSurfacesKeypoint::setInputScale ( float  input_scale) [inline]

Definition at line 101 of file smoothed_surfaces_keypoint.h.

void pcl::Keypoint::setKSearch ( int  k) [inline, inherited]

Set the number of k nearest neighbors to use for the feature estimation.

Parameters:
kthe number of k-nearest neighbors

Definition at line 102 of file keypoint.h.

void pcl::SmoothedSurfacesKeypoint::setNeighborhoodConstant ( float  neighborhood_constant) [inline]

Definition at line 92 of file smoothed_surfaces_keypoint.h.

void pcl::Keypoint::setRadiusSearch ( double  radius) [inline, inherited]

Set the sphere radius that is to be used for determining the nearest neighbors used for the key point detection.

Parameters:
radiusthe sphere radius used as the maximum distance to consider a point a neighbor

Definition at line 113 of file keypoint.h.

void pcl::Keypoint::setSearchMethod ( const KdTreePtr tree) [inline, inherited]

Provide a pointer to the search object.

Parameters:
treea pointer to the spatial search object.

Definition at line 88 of file keypoint.h.

void pcl::Keypoint::setSearchSurface ( const PointCloudInConstPtr cloud) [inline, inherited]

Provide a pointer to the input dataset that we need to estimate features at every point for.

Parameters:
cloudthe const boost shared pointer to a PointCloud message

Definition at line 78 of file keypoint.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines