pcl::NormalEstimationOMP< PointInT, PointOutT > Class Template Reference
Module features

NormalEstimationOMP estimates local surface properties at each 3D point, such as surface normals and curvatures, in parallel, using the OpenMP standard. More...

`#include <pcl/features/normal_3d_omp.h>`

Inheritance diagram for pcl::NormalEstimationOMP< PointInT, PointOutT >:

## Public Types

using | Ptr = shared_ptr< NormalEstimationOMP< PointInT, PointOutT > >
using | ConstPtr = shared_ptr< const NormalEstimationOMP< PointInT, PointOutT > >
using | PointCloudOut = typename NormalEstimation< PointInT, PointOutT >::PointCloudOut
Public Types inherited from pcl::NormalEstimation< PointInT, PointOutT >
using | Ptr = shared_ptr< NormalEstimation< PointInT, PointOutT > >
using | ConstPtr = shared_ptr< const NormalEstimation< PointInT, PointOutT > >
using | PointCloudOut = typename Feature< PointInT, PointOutT >::PointCloudOut
using | PointCloudConstPtr = typename Feature< PointInT, PointOutT >::PointCloudConstPtr
Public Types inherited from pcl::Feature< PointInT, PointOutT >
using | BaseClass = PCLBase< PointInT >
using | Ptr = shared_ptr< Feature< PointInT, PointOutT > >
using | ConstPtr = shared_ptr< const Feature< PointInT, PointOutT > >
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< PointOutT >
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 > &)>
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

| NormalEstimationOMP (unsigned int nr_threads=0)
| Initialize the scheduler and set the number of threads to use. More...
void | setNumberOfThreads (unsigned int nr_threads=0)
| Initialize the scheduler and set the number of threads to use. More...
Public Member Functions inherited from pcl::NormalEstimation< PointInT, PointOutT >
| NormalEstimation ()
| Empty constructor. More...
| ~NormalEstimation ()
| Empty destructor. More...
bool | computePointNormal (const pcl::PointCloud< PointInT > &cloud, const pcl::Indices &indices, Eigen::Vector4f &plane_parameters, float &curvature)
| Compute the Least-Squares plane fit for a given set of points, using their indices, and return the estimated plane parameters together with the surface curvature. More...
bool | computePointNormal (const pcl::PointCloud< PointInT > &cloud, const pcl::Indices &indices, float &nx, float &ny, float &nz, float &curvature)
| Compute the Least-Squares plane fit for a given set of points, using their indices, and return the estimated plane parameters together with the surface curvature. More...
void | setInputCloud (const PointCloudConstPtr &cloud) override
| Provide a pointer to the input dataset. More...
void | setViewPoint (float vpx, float vpy, float vpz)
| Set the viewpoint. More...
void | getViewPoint (float &vpx, float &vpy, float &vpz)
| Get the viewpoint. More...
void | useSensorOriginAsViewPoint ()
| sets whether the sensor origin or a user given viewpoint should be used. More...
Public Member Functions inherited from pcl::Feature< PointInT, PointOutT >
| Feature ()
| Empty constructor. More...
virtual | ~Feature ()
| Empty destructor. More...
void | setSearchSurface (const PointCloudInConstPtr &cloud)
| Provide a pointer to a dataset to add additional information to estimate the features for every point in the input dataset. More...
PointCloudInConstPtr | getSearchSurface () const
| 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 () const
| Get a pointer to the search method used. More...
double | getSearchParameter () const
| 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 () const
| 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 feature estimation. More...
double | getRadiusSearch () const
| Get the sphere radius used for determining the neighbors. More...
void | compute (PointCloudOut &output)
| Base method for feature estimation for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod () 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...
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 Attributes

unsigned int | threads_
| The number of threads the scheduler should use. More...
Protected Attributes inherited from pcl::NormalEstimation< PointInT, PointOutT >
float | vpx_
| Values describing the viewpoint ("pinhole" camera model assumed). More...
float | vpy_
float | vpz_
EIGEN_ALIGN16 Eigen::Matrix3f | covariance_matrix_
| Placeholder for the 3x3 covariance matrix at each surface patch. More...
Eigen::Vector4f | xyz_centroid_
| 16-bytes aligned placeholder for the XYZ centroid of a surface patch. More...
bool | use_sensor_origin_
| whether the sensor origin of the input cloud or a user given viewpoint should be used. More...
Protected Attributes inherited from pcl::Feature< PointInT, PointOutT >
std::string | feature_name_
| The feature name. 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 (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...
bool | fake_surface_
| If no surface is given, we use the input PointCloud as the surface. More...
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...

## Additional Inherited Members

Protected Member Functions inherited from pcl::Feature< PointInT, PointOutT >
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...
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...

## Detailed Description

### template<typename PointInT, typename PointOutT>
class pcl::NormalEstimationOMP< PointInT, PointOutT >

NormalEstimationOMP estimates local surface properties at each 3D point, such as surface normals and curvatures, in parallel, using the OpenMP standard.

Author
  Radu Bogdan Rusu

Definition at line 53 of file normal_3d_omp.h.

## Member Typedef Documentation

## ConstPtr

template<typename PointInT , typename PointOutT >

using pcl::NormalEstimationOMP< PointInT, PointOutT >::ConstPtr = shared_ptr<const NormalEstimationOMP<PointInT, PointOutT> >

Definition at line 57 of file normal_3d_omp.h.

## PointCloudOut

template<typename PointInT , typename PointOutT >

using pcl::NormalEstimationOMP< PointInT, PointOutT >::PointCloudOut = typename NormalEstimation<PointInT, PointOutT>::PointCloudOut

Definition at line 70 of file normal_3d_omp.h.

## Ptr

template<typename PointInT , typename PointOutT >

using pcl::NormalEstimationOMP< PointInT, PointOutT >::Ptr = shared_ptr<NormalEstimationOMP<PointInT, PointOutT> >

Definition at line 56 of file normal_3d_omp.h.

## Constructor & Destructor Documentation

## NormalEstimationOMP()

template<typename PointInT , typename PointOutT >

pcl::NormalEstimationOMP< PointInT, PointOutT >::NormalEstimationOMP | ( | unsigned int | nr_threads = `0` | ) |

inline

Initialize the scheduler and set the number of threads to use.

Parameters

  nr_threads | the number of hardware threads to use (0 sets the value back to automatic)

Definition at line 76 of file normal_3d_omp.h.

References pcl::Feature< PointInT, PointOutT >::feature_name_, and pcl::NormalEstimationOMP< PointInT, PointOutT >::setNumberOfThreads().

## Member Function Documentation

## setNumberOfThreads()

template<typename PointInT , typename PointOutT >

void pcl::NormalEstimationOMP< PointInT, PointOutT >::setNumberOfThreads | ( | unsigned int | nr_threads = `0` | ) |

Initialize the scheduler and set the number of threads to use.

Parameters

  nr_threads | the number of hardware threads to use (0 sets the value back to automatic)

Definition at line 48 of file normal_3d_omp.hpp.

Referenced by pcl::NormalEstimationOMP< PointInT, PointOutT >::NormalEstimationOMP().

## Member Data Documentation

## threads_

template<typename PointInT , typename PointOutT >

unsigned int pcl::NormalEstimationOMP< PointInT, PointOutT >::threads_

protected

The number of threads the scheduler should use.

Definition at line 91 of file normal_3d_omp.h.

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

- pcl/features/normal_3d_omp.h
- pcl/features/impl/normal_3d_omp.hpp