Spec-Zone.ru › PointCloudLibrary

RSDEstimation вычисляет дескриптор поверхности на основе радиусов (минимальный и максимальный радиусы кривых локальной поверхности) для заданного набора данных облака точек, содержащего точки и нормали. Подробнее...

#include <pcl/features/rsd.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Открытые типы

using PointCloudOut = typename Feature< PointInT, PointOutT >::PointCloudOut
using PointCloudIn = typename Feature< PointInT, PointOutT >::PointCloudIn
using Ptr = shared_ptr< RSDEstimation< PointInT, PointNT, PointOutT > >
using ConstPtr = shared_ptr< const RSDEstimation< PointInT, PointNT, PointOutT > >
- Открытые типы, унаследованные от pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >
using PointCloudN = pcl::PointCloud< PointNT >
using PointCloudNPtr = typename PointCloudN::Ptr
using PointCloudNConstPtr = typename PointCloudN::ConstPtr
using Ptr = shared_ptr< FeatureFromNormals< PointInT, PointNT, PointOutT > >
using ConstPtr = shared_ptr< const FeatureFromNormals< PointInT, PointNT, PointOutT > >
- Открытые типы, унаследованные от 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 > &)>
- Открытые типы, унаследованные от 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

Общедоступные функции-члены

RSDEstimation ()
Конструктор без параметров. Подробнее...
void setNrSubdivisions (int nr_subdiv)
Задать количество подразделений для рассматриваемого интервала расстояний. Подробнее...
int getNrSubdivisions () const
Получить количество подразделений для рассматриваемого интервала расстояний. Подробнее...
void setPlaneRadius (double plane_radius)
Задать максимальный радиус, при превышении которого всё можно считать плоским. Подробнее...
double getPlaneRadius () const
Получить максимальный радиус, при превышении которого всё можно считать плоским. Подробнее...
void setKSearch (int)
Отключает настройку количества k ближайших соседей, используемых для оценки признаков. Подробнее...
void setSaveHistograms (bool save)
Задать, следует ли сохранять полные гистограммы расстояний и углов. Подробнее...
bool getSaveHistograms () const
Возвращает информацию о том, сохраняются ли полные гистограммы расстояний и углов. Подробнее...
shared_ptr< std::vector< Eigen::MatrixXf, Eigen::aligned_allocator< Eigen::MatrixXf > > > getHistograms () const
Возвращает указатель на список полных гистограмм расстояний и углов для всех точек. Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >
FeatureFromNormals ()
Конструктор без параметров. Подробнее...
void setInputNormals (const PointCloudNConstPtr &normals)
Предоставить указатель на входной набор данных, содержащий нормали точек набора данных XYZ. Подробнее...
PointCloudNConstPtr getInputNormals () const
Получить указатель на нормали входного набора точек XYZ. Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::Feature< PointInT, PointOutT >
Feature ()
Конструктор без параметров. Подробнее...
void setSearchSurface (const PointCloudInConstPtr &cloud)
Предоставить указатель на набор данных для добавления дополнительной информации при оценке признаков каждой точки входного набора данных. Подробнее...
PointCloudInConstPtr getSearchSurface () const
Получить указатель на набор точек облака поверхности. Подробнее...
void setSearchMethod (const KdTreePtr &tree)
Предоставить указатель на объект поиска. Подробнее...
KdTreePtr getSearchMethod () const
Получить указатель на используемый метод поиска. Подробнее...
double getSearchParameter () const
Получить внутренний параметр поиска. Подробнее...
void setKSearch (int k)
Задать количество k ближайших соседей, используемых для оценки признаков. Подробнее...
int getKSearch () const
Получить количество k ближайших соседей, используемых для оценки признаков. Подробнее...
void setRadiusSearch (double radius)
Задать радиус сферы, используемый для определения ближайших соседей при оценке признаков. Подробнее...
double getRadiusSearch () const
Получить радиус сферы, используемый для определения соседей. Подробнее...
void compute (PointCloudOut &output)
Базовый метод оценки признаков для всех точек, заданных в <setInputCloud (), setIndices ()>, с использованием поверхности из setSearchSurface () и пространственного локатора из setSearchMethod (). Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::PCLBase< PointInT >
PCLBase ()
Конструктор без параметров. Подробнее...
PCLBase (const PCLBase &base)
Конструктор копирования. Подробнее...
virtual ~PCLBase ()=default
Деструктор. Подробнее...
virtual void setInputCloud (const PointCloudConstPtr &cloud)
Предоставить указатель на входной набор данных. Подробнее...
PointCloudConstPtr const getInputCloud () const
Получить указатель на входной набор точек облака. Подробнее...
virtual void setIndices (const IndicesPtr &indices)
Предоставить указатель на вектор индексов, представляющий входные данные. Подробнее...
virtual void setIndices (const IndicesConstPtr &indices)
Предоставить указатель на вектор индексов, представляющий входные данные. Подробнее...
virtual void setIndices (const PointIndicesConstPtr &indices)
Предоставить указатель на вектор индексов, представляющий входные данные. Подробнее...
virtual void setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols)
Задать индексы точек, расположенных в интересующей области облака точек. Подробнее...
IndicesPtr getIndices ()
Получить указатель на используемый вектор индексов. Подробнее...
IndicesConstPtr const getIndices () const
Получить указатель на используемый вектор индексов. Подробнее...
const PointInT & operator[] (std::size_t pos) const
Переопределить оператор PointCloud operator[] для сокращения кода. Подробнее...

Защищенные функции-члены

void computeFeature (PointCloudOut &output) override
Вычисляет дескриптор поверхности на основе радиуса (RSD) в заданном наборе точек <setInputCloud (), setIndices ()>, используя поверхность из setSearchSurface () и пространственный локатор из setSearchMethod () Подробнее...
- Защищенные функции-члены, унаследованные от pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >
virtual bool initCompute ()
Этот метод следует вызывать перед началом фактических вычислений. Подробнее...
- Защищенные функции-члены, унаследованные от pcl::Feature< PointInT, PointOutT >
const std::string & getClassName () const
Получить строковое представление имени этого класса. Подробнее...
virtual bool deinitCompute ()
Этот метод следует вызывать после завершения фактических вычислений. Подробнее...
int searchForNeighbors (std::size_t index, double parameter, pcl::Indices &indices, std::vector< float > &distances) const
Поиск k ближайших соседей с использованием пространственного локатора из setSearchmethod и заданной поверхности из setSearchSurface. Подробнее...
int searchForNeighbors (const PointCloudIn &cloud, std::size_t index, double parameter, pcl::Indices &indices, std::vector< float > &distances) const
Поиск k ближайших соседей с использованием пространственного локатора из setSearchmethod и заданной поверхности из setSearchSurface. Подробнее...
- Защищенные функции-члены, унаследованные от pcl::PCLBase< PointInT >
bool initCompute ()
Этот метод следует вызывать перед началом фактических вычислений. Подробнее...
bool deinitCompute ()
Этот метод следует вызывать после завершения фактических вычислений. Подробнее...

Защищенные атрибуты

shared_ptr< std::vector< Eigen::MatrixXf, Eigen::aligned_allocator< Eigen::MatrixXf > > > histograms_
Список полных гистограмм расстояний и углов для всех точек. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >
PointCloudNConstPtr normals_
Указатель на входной набор данных, содержащий нормали точек набора данных XYZ. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::Feature< PointInT, PointOutT >
std::string feature_name_
Имя признака. Подробнее...
SearchMethodSurface search_method_surface_
Шаблон метода поиска для точек. Подробнее...
PointCloudInConstPtr surface_
Входное облако точек, описывающее поверхность, которая будет использоваться для поиска ближайших соседей. Подробнее...
KdTreePtr tree_
Указатель на объект пространственного поиска. Подробнее...
double search_parameter_
Фактический параметр поиска (из search_radius_ или k_). Подробнее...
double search_radius_
Радиус поиска ближайших соседей для каждой точки. Подробнее...
int k_
Количество ближайших соседей K, используемых для каждой точки. Подробнее...
bool fake_surface_
Если поверхность не задана, входное облако PointCloud используется в качестве поверхности. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLBase< PointInT >
PointCloudConstPtr input_
Входной набор облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор используемых индексов точек. Подробнее...
bool use_indices_
Установите значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, создается набор фиктивных индексов, соответствующий входному облаку PointCloud. Подробнее...

Подробное описание

template<typename PointInT, typename PointNT, typename PointOutT>
class pcl::RSDEstimation< PointInT, PointNT, PointOutT >

RSDEstimation вычисляет дескриптор поверхности на основе радиуса (минимальный и максимальный радиусы кривых локальной поверхности) для заданного набора облака точек, содержащего точки и нормали.

Примечание
Если вы используете этот код в научной работе, пожалуйста, укажите следующие источники:
  • Z.C. Marton , D. Pangercic , N. Blodow , J. Kleinehellefort, M. Beetz Общее 3D-моделирование новых объектов по одному виду. В трудах Международной конференции IEEE/RSJ 2010 года по интеллектуальным роботам и системам (IROS), Тайбэй, Тайвань, 18–22 октября 2010 года.
  • Z.C. Marton, D. Pangercic, N. Blodow, Michael Beetz. Совместная 2D-3D категоризация и классификация для систем мультимодального восприятия. В The International Journal of Robotics Research, Sage Publications, стр. 1378–1402, том 30, номер 11, сентябрь 2011 года.
Примечание
Код хранит состояние, поскольку предполагается, что этот класс не будет распараллеливаться на нескольких ядрах.
Автор
Zoltan-Csaba Marton
Параметры шаблона
PointOutT Рекомендуемый тип: pcl::PrincipalRadiiRSD

Определение в строке 132 файла rsd.h.

Документация по псевдонимам типов-членов

ConstPtr

template<typename PointInT , typename PointNT , typename PointOutT >
using pcl::RSDEstimation< PointInT, PointNT, PointOutT >::ConstPtr = shared_ptr<const RSDEstimation<PointInT, PointNT, PointOutT> >

Определение в строке 147 файла rsd.h.

PointCloudIn

template<typename PointInT , typename PointNT , typename PointOutT >
using pcl::RSDEstimation< PointInT, PointNT, PointOutT >::PointCloudIn = typename Feature<PointInT, PointOutT>::PointCloudIn

Определение в строке 144 файла rsd.h.

PointCloudOut

template<typename PointInT , typename PointNT , typename PointOutT >
using pcl::RSDEstimation< PointInT, PointNT, PointOutT >::PointCloudOut = typename Feature<PointInT, PointOutT>::PointCloudOut

Определение в строке 143 файла rsd.h.

Ptr

template<typename PointInT , typename PointNT , typename PointOutT >
using pcl::RSDEstimation< PointInT, PointNT, PointOutT >::Ptr = shared_ptr<RSDEstimation<PointInT, PointNT, PointOutT> >

Определение в строке 146 файла rsd.h.

Документация по конструкторам и деструкторам

RSDEstimation()

template<typename PointInT , typename PointNT , typename PointOutT >
pcl::RSDEstimation< PointInT, PointNT, PointOutT >::RSDEstimation ( )
inline

Пустой конструктор.

Определение в строке 151 файла rsd.h.

Ссылки: pcl::Feature< PointInT, PointOutT >::feature_name_.

Документация по функциям-членам

computeFeature()

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::computeFeature ( PointCloudOut & output )
overrideprotectedvirtual

Вычисляет дескриптор поверхности на основе радиуса (RSD) в заданном наборе точек <setInputCloud (), setIndices ()>, используя поверхность из setSearchSurface () и пространственный локатор из setSearchMethod ()

Параметры
output результирующий набор облака точек, содержащий оценки признака RSD (значения r_min и r_max)

Реализует pcl::Feature< PointInT, PointOutT >.

Определение в строке 248 файла rsd.hpp.

Ссылки: pcl::PointCloud< PointT >::clear(), pcl::computeRSD(), pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.

getHistograms()

template<typename PointInT , typename PointNT , typename PointOutT >
shared_ptr<std::vector<Eigen::MatrixXf, Eigen::aligned_allocator<Eigen::MatrixXf> > > pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getHistograms ( ) const
inline

Возвращает указатель на список полных гистограмм расстояний и углов для всех точек.

Возвращает
гистограмму, сохраненную при вычислении RSD

Определение в строке 206 файла rsd.h.

Ссылки: pcl::RSDEstimation< PointInT, PointNT, PointOutT >::histograms_.

getNrSubdivisions()

template<typename PointInT , typename PointNT , typename PointOutT >
int pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getNrSubdivisions ( ) const
inline

Получить количество подразделений для рассматриваемого интервала расстояний.

Возвращает
количество подразделений

Определение в строке 166 файла rsd.h.

getPlaneRadius()

template<typename PointInT , typename PointNT , typename PointOutT >
double pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getPlaneRadius ( ) const
inline

Получить максимальный радиус, выше которого все можно считать плоским.

Возвращает
используемое значение plane_radius

Определение в строке 180 файла rsd.h.

getSaveHistograms()

template<typename PointInT , typename PointNT , typename PointOutT >
bool pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getSaveHistograms ( ) const
inline

Возвращает, сохраняются ли полные гистограммы расстояний и углов.

Возвращает
true, если гистограммы сохраняются

Определение в строке 200 файла rsd.h.

setKSearch()

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setKSearch ( int )
inline

Отключает настройку количества k ближайших соседей, используемых для вычисления признаков.

Определение в строке 184 файла rsd.h.

См. также pcl::Feature< PointInT, PointOutT >::getClassName().

setNrSubdivisions()

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setNrSubdivisions ( int nr_subdiv )
inline

Задать количество подразделений для рассматриваемого интервала расстояний.

Параметры
[in] nr_subdiv количество подразделений

Определение в строке 160 файла rsd.h.

Используется в pcl::GRSDEstimation< PointInT, PointNT, PointOutT >::computeFeature().

setPlaneRadius()

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setPlaneRadius ( double plane_radius )
inline

Задать максимальный радиус, выше которого все можно считать плоским.

Примечание
порядок величины должен быть примерно в 10–20 раз больше радиуса поиска (значение 0.2 хорошо подходит для типичных наборов данных).
Для точных 3D-данных (например, полученных с помощью датчиков OpenNI) радиус поиска всего 0.01 также дает хорошие результаты.
Параметры
[in] plane_radius новый радиус плоскости

Определение в строке 174 файла rsd.h.

Используется в pcl::GRSDEstimation< PointInT, PointNT, PointOutT >::computeFeature().

setSaveHistograms()

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setSaveHistograms ( bool save )
inline

Задать, следует ли сохранять полные гистограммы расстояний и углов.

Примечание
Получить список гистограмм можно с помощью getHistograms ()
Параметры
[in] save установите значение true, если гистограммы следует сохранять

Определение в строке 194 файла rsd.h.

См. также pcl::io::save().

Описание данных-членов

histograms_

template<typename PointInT , typename PointNT , typename PointOutT >
shared_ptr<std::vector<Eigen::MatrixXf, Eigen::aligned_allocator<Eigen::MatrixXf> > > pcl::RSDEstimation< PointInT, PointNT, PointOutT >::histograms_
protected

Список полных гистограмм расстояний и углов для всех точек.

Определение в строке 219 файла rsd.h.

Используется в pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getHistograms().


Документация этого класса создана на основе следующих файлов:
  • pcl/features/rsd.h
  • pcl/features/impl/rsd.hpp

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API