Point Cloud Library (PCL)
1.14.1-dev
|
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>
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) override |
![]() | |
Keypoint ()=default | |
Keypoint () | |
Empty constructor. More... | |
void | harrisCorner (PointT &output, PointT &input, const float sigma_d, const float sigma_i, const float alpha, const float thresh) |
void | hessianBlob (PointT &output, PointT &input, const float sigma, bool SCALE) |
void | hessianBlob (PointT &output, PointT &input, const float start_scale, const float scaling_factor, const int num_scales) |
void | imageElementMultiply (PointT &output, PointT &input1, PointT &input2) |
~Keypoint () override=default | |
Empty destructor. More... | |
virtual void | setSearchSurface (const PointCloudInConstPtr &cloud) |
Provide a pointer to the input dataset that we need to estimate features at every point for. More... | |
PointCloudInConstPtr | getSearchSurface () |
Get a pointer to the surface point cloud dataset. More... | |
void | setSearchMethod (const KdTreePtr &tree) |
Provide a pointer to the search object. More... | |
KdTreePtr | getSearchMethod () |
Get a pointer to the search method used. More... | |
double | getSearchParameter () |
Get the internal search parameter. More... | |
void | setKSearch (int k) |
Set the number of k nearest neighbors to use for the feature estimation. More... | |
int | getKSearch () |
get the number of k nearest neighbors used for the feature estimation. More... | |
void | setRadiusSearch (double radius) |
Set the sphere radius that is to be used for determining the nearest neighbors used for the key point detection. More... | |
double | getRadiusSearch () |
Get the sphere radius used for determining the neighbors. More... | |
pcl::PointIndicesConstPtr | getKeypointsIndices () |
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 () More... | |
int | searchForNeighbors (pcl::index_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... | |
![]() | |
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... | |
PointCloudConstPtr const | 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... | |
IndicesConstPtr const | 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 | |
bool | initCompute () override |
![]() | |
const std::string & | getClassName () const |
Get a string representation of the name of this class. More... | |
virtual void | detectKeypoints (PointCloudOut &output)=0 |
Abstract key point detection method. 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... | |
Additional Inherited Members | |
![]() | |
std::string | name_ |
The key point detection method's name. More... | |
SearchMethod | search_method_ |
The search method template for indices. More... | |
SearchMethodSurface | search_method_surface_ |
The search method template for points. More... | |
PointCloudInConstPtr | surface_ |
An input point cloud describing the surface that is to be used for nearest neighbors estimation. More... | |
KdTreePtr | tree_ |
A pointer to the spatial search object. More... | |
double | search_parameter_ |
The actual search parameter (casted from either search_radius_ or k_). More... | |
double | search_radius_ |
The nearest neighbors search radius for each point. More... | |
int | k_ |
The number of K nearest neighbors to use for each point. More... | |
pcl::PointIndicesPtr | keypoints_indices_ |
Indices of the keypoints in the input cloud. More... | |
![]() | |
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... | |
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.
Definition at line 54 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::ConstPtr = shared_ptr<const SmoothedSurfacesKeypoint<PointT, PointNT> > |
Definition at line 58 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::KdTreePtr = typename Keypoint<PointT, PointT>::KdTreePtr |
Definition at line 71 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::PointCloudNT = pcl::PointCloud<PointNT> |
Definition at line 68 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::PointCloudNTConstPtr = typename PointCloudNT::ConstPtr |
Definition at line 69 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::PointCloudT = pcl::PointCloud<PointT> |
Definition at line 66 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::PointCloudTConstPtr = typename PointCloudT::ConstPtr |
Definition at line 67 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::PointCloudTPtr = typename PointCloudT::Ptr |
Definition at line 70 of file smoothed_surfaces_keypoint.h.
using pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::Ptr = shared_ptr<SmoothedSurfacesKeypoint<PointT, PointNT> > |
Definition at line 57 of file smoothed_surfaces_keypoint.h.
|
inline |
Definition at line 73 of file smoothed_surfaces_keypoint.h.
References pcl::Keypoint< PointT, PointT >::name_.
void pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::addSmoothedPointCloud | ( | const PointCloudTConstPtr & | cloud, |
const PointCloudNTConstPtr & | normals, | ||
KdTreePtr & | kdtree, | ||
float & | scale | ||
) |
Definition at line 47 of file smoothed_surfaces_keypoint.hpp.
|
override |
Definition at line 71 of file smoothed_surfaces_keypoint.hpp.
References pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::push_back(), pcl::search::Search< PointT >::radiusSearch(), pcl::PointCloud< PointT >::size(), and pcl::PointCloud< PointT >::width.
|
inline |
Definition at line 100 of file smoothed_surfaces_keypoint.h.
|
overrideprotectedvirtual |
Reimplemented from pcl::Keypoint< PointT, PointT >.
Definition at line 182 of file smoothed_surfaces_keypoint.hpp.
void pcl::SmoothedSurfacesKeypoint< PointT, PointNT >::resetClouds |
Definition at line 61 of file smoothed_surfaces_keypoint.hpp.
|
inline |
Definition at line 103 of file smoothed_surfaces_keypoint.h.
|
inline |
Definition at line 106 of file smoothed_surfaces_keypoint.h.
|
inline |
Definition at line 97 of file smoothed_surfaces_keypoint.h.