SHOTEstimationOMP вычисляет дескриптор сигнатуры гистограмм ориентаций (SHOT) для заданного набора данных облака точек, содержащего точки и нормали, параллельно, используя стандарт OpenMP. Подробнее...
#include <pcl/features/shot_omp.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT > > |
| using | ConstPtr = shared_ptr< const SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT > > |
| using | PointCloudOut = typename Feature< PointInT, PointOutT >::PointCloudOut |
| using | PointCloudIn = typename Feature< PointInT, PointOutT >::PointCloudIn |
|
| |
| using | Ptr = shared_ptr< SHOTEstimation< PointInT, PointNT, pcl::SHOT352, pcl::ReferenceFrame > > |
| using | ConstPtr = shared_ptr< const SHOTEstimation< PointInT, PointNT, pcl::SHOT352, pcl::ReferenceFrame > > |
| using | PointCloudIn = typename Feature< PointInT, pcl::SHOT352 >::PointCloudIn |
|
| |
| using | Ptr = shared_ptr< SHOTEstimationBase< PointInT, PointNT, pcl::SHOT352, pcl::ReferenceFrame > > |
| using | ConstPtr = shared_ptr< const SHOTEstimationBase< PointInT, PointNT, pcl::SHOT352, pcl::ReferenceFrame > > |
| using | PointCloudIn = typename Feature< PointInT, pcl::SHOT352 >::PointCloudIn |
|
| |
| 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 > > |
|
| |
| 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 > &)> |
|
| |
| using | PointCloud = pcl::PointCloud< PointInT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
|
| |
| using | PointCloudLRF = pcl::PointCloud< pcl::ReferenceFrame > |
| using | PointCloudLRFPtr = typename PointCloudLRF::Ptr |
| using | PointCloudLRFConstPtr = typename PointCloudLRF::ConstPtr |
Открытые функции-члены | |
| SHOTEstimationOMP (unsigned int nr_threads=0) | |
| Пустой конструктор. Подробнее... |
|
| void | setNumberOfThreads (unsigned int nr_threads=0) |
| Инициализирует планировщик и задает количество используемых потоков. Подробнее... |
|
|
| |
| SHOTEstimation () | |
| Пустой конструктор. Подробнее... |
|
| ~SHOTEstimation () override=default | |
| Пустой деструктор. Подробнее... |
|
| void | computePointSHOT (const int index, const pcl::Indices &indices, const std::vector< float > &sqr_dists, Eigen::VectorXf &shot) override |
| Оценивает дескриптор SHOT для заданной точки на основе ее пространственного окружения, состоящего из 3D-точек с нормалями. Подробнее... |
|
|
| |
| ~SHOTEstimationBase () override=default | |
| Пустой деструктор. Подробнее... |
|
| virtual void | setLRFRadius (float radius) |
| Задает радиус, используемый для оценки локальной системы отсчета, если она не задана пользователем. Подробнее... |
|
| virtual float | getLRFRadius () const |
| Возвращает радиус, используемый для оценки локальной системы отсчета. Подробнее... |
|
|
| |
| FeatureFromNormals () | |
| Пустой конструктор. Подробнее... |
|
| void | setInputNormals (const PointCloudNConstPtr &normals) |
| Передает указатель на входной набор данных, содержащий нормали точек набора данных XYZ. Подробнее... |
|
| PointCloudNConstPtr | getInputNormals () const |
| Возвращает указатель на нормали входного набора точек XYZ. Подробнее... |
|
|
| |
| 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 |
| Получить количество ближайших соседей, используемых для оценки признака. Подробнее... |
|
| void | setRadiusSearch (double radius) |
| Задать радиус сферы для определения ближайших соседей, используемых при оценке признака. Подробнее... |
|
| double | getRadiusSearch () const |
| Получить радиус сферы, используемый для определения соседей. Подробнее... |
|
| void | compute (PointCloudOut &output) |
| Базовый метод оценки признаков для всех точек, указанных в <setInputCloud (), setIndices ()>, с использованием поверхности, заданной в setSearchSurface (), и пространственного локатора, заданного в setSearchMethod (). Подробнее... |
|
|
| |
| 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[] для сокращения кода. Подробнее... |
|
|
| |
| FeatureWithLocalReferenceFrames () | |
| Пустой конструктор. Подробнее... |
|
| virtual | ~FeatureWithLocalReferenceFrames ()=default |
| Виртуальный деструктор по умолчанию. Подробнее... |
|
| void | setInputReferenceFrames (const PointCloudLRFConstPtr &frames) |
| Предоставить указатель на входной набор данных, содержащий локальные системы координат набора данных XYZ. Подробнее... |
|
| PointCloudLRFConstPtr | getInputReferenceFrames () const |
| Получить указатель на локальные системы координат. Подробнее... |
|
Защищённые функции-члены | |
| void | computeFeature (PointCloudOut &output) override |
| Оценить дескрипторы Signatures of Histograms of OrienTations (SHOT) для набора точек, заданного с помощью <setInputCloud (), setIndices ()>, используя поверхность из setSearchSurface () и пространственный локатор из setSearchMethod () Подробнее... |
|
| bool | initCompute () override |
| Этот метод следует вызвать перед началом собственно вычислений. Подробнее... |
|
|
| |
| void | computeFeature (pcl::PointCloud< pcl::SHOT352 > &output) override |
| Оценить дескрипторы Signatures of Histograms of OrienTations (SHOT) для набора точек, заданного с помощью <setInputCloud (), setIndices ()>, используя поверхность из setSearchSurface () и пространственный локатор из setSearchMethod () Подробнее... |
|
|
| |
| SHOTEstimationBase (int nr_shape_bins=10) | |
| Пустой конструктор. Подробнее... |
|
| bool | initCompute () override |
| Этот метод следует вызвать перед началом собственно вычислений. Подробнее... |
|
| void | interpolateSingleChannel (const pcl::Indices &indices, const std::vector< float > &sqr_dists, const int index, std::vector< double > &binDistance, const int nr_bins, Eigen::VectorXf &shot) |
| Квадрилинейная интерполяция, используемая, когда цветовые и геометрические описания НЕ активированы одновременно. Подробнее... |
|
| void | normalizeHistogram (Eigen::VectorXf &shot, int desc_length) |
| Нормализовать гистограмму SHOT. Подробнее... |
|
| void | createBinDistanceShape (int index, const pcl::Indices &indices, std::vector< double > &bin_distance_shape) |
| Создать гистограмму формы расстояния, разбитого на интервалы. Подробнее... |
|
|
| |
| 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. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод следует вызвать перед началом собственно вычислений. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод следует вызвать после завершения собственно вычислений. Подробнее... |
|
|
| |
| virtual bool | initLocalReferenceFrames (const std::size_t &indices_size, const LRFEstimationPtr &lrf_estimation=LRFEstimationPtr()) |
Защищённые атрибуты | |
| unsigned int | threads_ |
| Количество потоков, которое должен использовать планировщик. Подробнее... |
|
|
| |
| int | nr_shape_bins_ |
| Количество интервалов в каждой гистограмме формы. Подробнее... |
|
| float | lrf_radius_ |
| Радиус, используемый для вычисления LRF. Подробнее... |
|
| double | sqradius_ |
| Квадрат радиуса поиска. Подробнее... |
|
| double | radius3_4_ |
| 3/4 радиуса поиска. Подробнее... |
|
| double | radius1_4_ |
| 1/4 радиуса поиска. Подробнее... |
|
| double | radius1_2_ |
| 1/2 радиуса поиска. Подробнее... |
|
| const int | nr_grid_sector_ |
| Количество азимутальных секторов. Подробнее... |
|
| const int | maxAngularSectors_ |
| ... Подробнее... |
|
| int | descLength_ |
| Длина одного дескриптора SHOT. Подробнее... |
|
|
| |
| PointCloudNConstPtr | normals_ |
| Указатель на входной набор данных, содержащий нормали точек набора данных XYZ. Подробнее... |
|
|
| |
| 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 используется в качестве поверхности. Подробнее... |
|
|
| |
| PointCloudConstPtr | input_ |
| Входной набор данных облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор используемых индексов точек. Подробнее... |
|
| bool | use_indices_ |
| Установите значение true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, создается набор фиктивных индексов, имитирующий входное облако точек. Подробнее... |
|
|
| |
| PointCloudLRFConstPtr | frames_ |
| Разделяемый указатель Boost на локальные системы координат. Подробнее... |
|
| bool | frames_never_defined_ |
| Пользователь ни разу не задавал системы координат. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| using | LRFEstimationPtr = typename Feature< PointInT, pcl::ReferenceFrame >::Ptr |
| Проверяет, правильно ли инициализирован frames_, и при необходимости вычисляет его. Подробнее... |
|
Подробное описание
template<typename PointInT, typename PointNT, typename PointOutT = pcl::SHOT352, typename PointRFT = pcl::ReferenceFrame>
class pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >
SHOTEstimationOMP вычисляет дескриптор Signature of Histograms of OrienTations (SHOT) для заданного набора данных облака точек, содержащего точки и нормали, параллельно с использованием стандарта OpenMP.
Рекомендуемый тип PointOutT — pcl::SHOT352.
- Примечание
- Если вы используете этот код в научной работе, пожалуйста, укажите следующие публикации:
- F. Tombari, S. Salti, L. Di Stefano. Уникальные сигнатуры гистограмм для описания локальной поверхности. В материалах 11-й Европейской конференции по компьютерному зрению (ECCV), Ираклион, Греция, 5–11 сентября 2010 г.
- F. Tombari, S. Salti, L. Di Stefano. Комбинированный текстурно-геометрический дескриптор для улучшенного сопоставления 3D-признаков. В материалах 18-й Международной конференции по обработке изображений (ICIP), Брюссель, Бельгия, 11–14 сентября 2011 г.
Определение в строке 69 файла shot_omp.h.
Документация по псевдонимам типов-членов
ConstPtr
| using pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::ConstPtr = shared_ptr<const SHOTEstimationOMP<PointInT, PointNT, PointOutT, PointRFT> > |
Определение в строке 73 файла shot_omp.h.
PointCloudIn
| using pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::PointCloudIn = typename Feature<PointInT, PointOutT>::PointCloudIn |
Определение в строке 95 файла shot_omp.h.
PointCloudOut
| using pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::PointCloudOut = typename Feature<PointInT, PointOutT>::PointCloudOut |
Определение в строке 94 файла shot_omp.h.
Ptr
| using pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::Ptr = shared_ptr<SHOTEstimationOMP<PointInT, PointNT, PointOutT, PointRFT> > |
Определение в строке 72 файла shot_omp.h.
Документация по конструкторам и деструкторам
SHOTEstimationOMP()
| inline |
Пустой конструктор.
Определение в строке 98 файла shot_omp.h.
См. pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::setNumberOfThreads().
Документация по функциям-членам
computeFeature()
| overrideprotectedvirtual |
Оценить дескрипторы гистограмм ориентаций (SHOT) в заданном наборе точек, определённом с помощью <setInputCloud (), setIndices ()>, используя поверхность из setSearchSurface () и пространственный локатор из setSearchMethod ()
- Параметры
-
output итоговый набор данных модели облака точек, содержащий оценки признаков SHOT
Реализует pcl::Feature< PointInT, PointOutT >.
Определение в строке 140 файла shot_omp.hpp.
Ссылки: pcl::PointCloud< PointT >::is_dense и pcl::isFinite().
initCompute()
| overrideprotectedvirtual |
Этот метод следует вызвать перед началом непосредственных вычислений.
Переопределяет pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.
Определение в строке 50 файла shot_omp.hpp.
Ссылки: pcl::PCLBase< PointT >::setIndices(), pcl::PCLBase< PointT >::setInputCloud(), pcl::SHOTLocalReferenceFrameEstimationOMP< PointInT, PointOutT >::setNumberOfThreads(), pcl::Feature< PointInT, PointOutT >::setRadiusSearch() и pcl::Feature< PointInT, PointOutT >::setSearchSurface().
setNumberOfThreads()
| void pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::setNumberOfThreads | ( | unsigned int |
nr_threads = 0
|
) |
Инициализировать планировщик и задать количество используемых потоков.
- Параметры
-
nr_threads количество используемых аппаратных потоков (0 возвращает значение в автоматический режим)
Определение в строке 126 файла shot_omp.hpp.
Используется в pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >::SHOTEstimationOMP().
Описание данных-членов
threads_
| protected |
Количество потоков, используемых планировщиком.
Определение в строке 124 файла shot_omp.h.
Документация этого класса сгенерирована на основе следующих файлов:
- pcl/features/shot_omp.h
- pcl/features/impl/shot_omp.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_s_h_o_t_estimation_o_m_p.html