Spec-Zone.ru › PointCloudLibrary

HarrisKeypoint3D использует идею 2D-точек ключевых Harris, но вместо использования градиентов изображения, она использует нормали поверхности. Подробнее...

#include <pcl/keypoints/harris_3d.h>

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

Общедоступные типы

перечисление ResponseMethod {
HARRIS = 1 , NOBLE , LOWE , TOMASI ,
CURVATURE
}
используя Ptr = shared_ptr< HarrisKeypoint3D< PointInT, PointOutT, NormalT > >
используя ConstPtr = shared_ptr< const HarrisKeypoint3D< PointInT, PointOutT, NormalT > >
используя PointCloudIn = typename Keypoint< PointInT, PointOutT >::PointCloudIn
используя PointCloudOut = typename Keypoint< PointInT, PointOutT >::PointCloudOut
используя KdTree = typename Keypoint< PointInT, PointOutT >::KdTree
используя PointCloudInConstPtr = typename PointCloudIn::ConstPtr
используя PointCloudN = pcl::PointCloud< NormalT >
используя PointCloudNPtr = typename PointCloudN::Ptr
используя PointCloudNConstPtr = typename PointCloudN::ConstPtr
- Общедоступные типы, унаследованные от pcl::Keypoint< PointInT, PointOutT >
используя Ptr = shared_ptr< Keypoint< PointInT, PointOutT > >
используя ConstPtr = shared_ptr< const Keypoint< PointInT, PointOutT > >
используя BaseClass = PCLBase< PointInT >
используя KdTree = pcl::search::Search< PointInT >
используя KdTreePtr = typename KdTree::Ptr
используя PointCloudIn = pcl::PointCloud< PointInT >
используя PointCloudInPtr = typename PointCloudIn::Ptr
используя PointCloudInConstPtr = typename PointCloudIn::ConstPtr
используя PointCloudOut = pcl::PointCloud< PointOutT >
используя SearchMethod = std::function< int(pcl::index_t, double, pcl::Indices &, std::vector< float > &)>
using SearchMethodSurface = std::function< int(const PointCloudIn &cloud, pcl::index_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

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

HarrisKeypoint3D (ResponseMethod method=HARRIS, float radius=0.01f, float threshold=0.0f)
Конструктор. Подробнее...
~HarrisKeypoint3D () override=default
Пустой деструктор. Подробнее...
void setInputCloud (const PointCloudInConstPtr &cloud) override
Предоставьте указатель на входные данные. Подробнее...
void setMethod (ResponseMethod type)
Установите метод для расчёта ответа. Подробнее...
void setRadius (float radius)
Установите радиус для оценки нормалей и подавления не-максимумов. Подробнее...
void setThreshold (float threshold)
Установите порог для обнаружения углов. Подробнее...
void setNonMaxSupression (bool=false)
Применять ли подавление не-максимумов или возвращать ответ для каждой точки. Подробнее...
void setRefine (bool do_refine)
Нужно ли уточнять обнаруженные ключевые точки. Подробнее...
void setNormals (const PointCloudNConstPtr &normals)
Установить нормали, если доступны предварительно рассчитанные. Подробнее...
void setSearchSurface (const PointCloudInConstPtr &cloud) override
Предоставьте указатель на набор данных для добавления дополнительной информации для оценки признаков каждой точки в наборе входных данных. Подробнее...
void setNumberOfThreads (unsigned int nr_threads=0)
Инициализируйте планировщик и установите количество потоков для использования. Подробнее...
- Общедоступные члены-функции, унаследованные от pcl::Keypoint< PointInT, PointOutT >
Keypoint ()=default
Keypoint ()
Пустой конструктор. Подробнее...
void harrisCorner (PointInT &output, PointInT &input, const float sigma_d, const float sigma_i, const float alpha, const float thresh)
void hessianBlob (PointInT &output, PointInT &input, const float sigma, bool SCALE)
void hessianBlob (PointInT &output, PointInT &input, const float start_scale, const float scaling_factor, const int num_scales)
void imageElementMultiply (PointInT &output, PointInT &input1, PointInT &input2)
~Keypoint () override=default
Пустой деструктор. Подробнее...
virtual void setSearchSurface (const PointCloudInConstPtr &cloud)
Предоставьте указатель на входной набор данных, для которого необходимо оценить характеристики в каждой точке. Подробнее...
PointCloudInConstPtr getSearchSurface ()
Получить указатель на набор данных облака точек поверхности. Подробнее...
void setSearchMethod (const KdTreePtr &tree)
Предоставьте указатель на объект поиска. Подробнее...
KdTreePtr getSearchMethod ()
Получить указатель на метод поиска, который используется. Подробнее...
double getSearchParameter ()
Получить внутренний параметр поиска. Подробнее...
void setKSearch (int k)
Установить количество k ближайших соседей, которые следует использовать для оценки признаков. Подробнее...
int getKSearch ()
Получить количество k ближайших соседей, используемых для оценки признаков. Подробнее...
void setRadiusSearch (double radius)
Установить радиус сферы, который будет использоваться для определения ближайших соседей, используемых для обнаружения ключевых точек. Подробнее...
double getRadiusSearch ()
Получить радиус сферы, используемый для определения соседей. Подробнее...
pcl::PointIndicesConstPtr getKeypointsIndices ()
void compute (PointCloudOut &output)
Базовый метод для обнаружения ключевых точек для всех точек, заданных в <setInputCloud (), setIndices ()>, используя поверхность в setSearchSurface () и пространственный локатор в setSearchMethod () Подробнее...
int searchForNeighbors (pcl::index_t index, double parameter, pcl::Indices &indices, std::vector< float > &distances) const
Поиск k ближайших соседей с использованием пространственного локатора из setSearchmethod и заданной поверхности из setSearchSurface. Подробнее...
- Общедоступные методы, унаследованные от 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 оператор[] для сокращения кода. Подробнее...

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

bool initCompute () override
void detectKeypoints (PointCloudOut &output) override
void responseHarris (PointCloudOut &output) const
получает ответ для углов для допустимых входных точек Подробнее...
void responseNoble (PointCloudOut &output) const
void responseLowe (PointCloudOut &output) const
void responseTomasi (PointCloudOut &output) const
void responseCurvature (PointCloudOut &output) const
void refineCorners (PointCloudOut &corners) const
void calculateNormalCovar (const pcl::Indices &neighbors, float *coefficients) const
вычисляет верхнюю треугольную часть ненормализованной ковариационной матрицы по нормалям, заданным индексами. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::Keypoint< PointInT, PointOutT >
const std::string & getClassName () const
Получить строковое представление имени этого класса. Подробнее...
virtual void detectKeypoints (PointCloudOut &output)=0
Абстрактный метод обнаружения ключевых точек. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::PCLBase< PointInT >
bool initCompute ()
Этот метод должен вызываться перед началом фактического вычисления. Подробнее...
bool deinitCompute ()
Этот метод должен вызываться после завершения фактического вычисления. Подробнее...

Дополнительные унаследованные члены

- Защищённые атрибуты, унаследованные от pcl::Keypoint< PointInT, PointOutT >
std::string name_
Имя метода обнаружения ключевых точек. Подробнее...
SearchMethod search_method_
Шаблон метода поиска для индексов. Подробнее...
SearchMethodSurface search_method_surface_
Шаблон метода поиска для точек. Подробнее...
PointCloudInConstPtr surface_
Входное облако точек, описывающее поверхность, используемую для оценки ближайших соседей. Подробнее...
KdTreePtr tree_
Указатель на объект пространственного поиска. Подробнее...
double search_parameter_
Фактический параметр поиска (преобразованный из search_radius_ или k_). Подробнее...
double search_radius_
Радиус поиска ближайших соседей для каждой точки. Подробнее...
int k_
Количество K ближайших соседей для каждой точки. Подробнее...
pcl::PointIndicesPtr keypoints_indices_
Индексы ключевых точек в входном облаке. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::PCLBase< PointInT >
PointCloudConstPtr input_
Входное облако точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
bool use_indices_
Установить в true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, мы создаём набор фиктивных индексов, имитирующих входное облако точек. Подробнее...

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

шаблон<typename PointInT, typename PointOutT, typename NormalT = pcl::Normal>
класс pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >

HarrisKeypoint3D использует идею 2D ключевых точек Harris, но вместо использования градиентов изображений, использует нормали поверхности.

Автор
Suat Gedikli

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

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

ConstPtr

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::ConstPtr = shared_ptr<const HarrisKeypoint3D<PointInT, PointOutT, NormalT> >

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

KdTree

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::KdTree = typename Keypoint<PointInT, PointOutT>::KdTree

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

PointCloudIn

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::PointCloudIn = typename Keypoint<PointInT, PointOutT>::PointCloudIn

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

PointCloudInConstPtr

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::PointCloudInConstPtr = typename PointCloudIn::ConstPtr

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

PointCloudN

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::PointCloudN = pcl::PointCloud<NormalT>

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

PointCloudNConstPtr

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::PointCloudNConstPtr = typename PointCloudN::ConstPtr

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

PointCloudNPtr

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::PointCloudNPtr = typename PointCloudN::Ptr

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

PointCloudOut

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::PointCloudOut = typename Keypoint<PointInT, PointOutT>::PointCloudOut

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

Ptr

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
using pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::Ptr = shared_ptr<HarrisKeypoint3D<PointInT, PointOutT, NormalT> >

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

Перечисление членов документации

ResponseMethod

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
enum pcl::HarrisKeypoint3D::ResponseMethod
Перечисление
HARRIS
NOBLE
LOWE
TOMASI
CURVATURE

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

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

HarrisKeypoint3D()

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::HarrisKeypoint3D ( ResponseMethod method = HARRIS,
float radius = 0.01f,
float threshold = 0.0f
)
inline

Конструктор.

Параметры
[in] method метод, используемый для определения ответов углов
[in] radius радиус для оценки нормалей, а также для подавления не-максимумов
[in] threshold порог для фильтрации слабых углов

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

Ссылки на pcl::Keypoint< PointInT, PointOutT >::name_, и pcl::Keypoint< PointInT, PointOutT >::search_radius_.

~HarrisKeypoint3D()

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::~HarrisKeypoint3D ( )
overridedefault

Пустой деструктор.

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

calculateNormalCovar()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::calculateNormalCovar ( const pcl::Indices & neighbors,
float * coefficients
) const
protected

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

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

detectKeypoints()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::detectKeypoints ( PointCloudOut & output )
overrideprotected

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

Ссылки на pcl::PointCloud< PointT >::is_dense, pcl::isFinite(), pcl::PointCloud< PointT >::points, и pcl::PointCloud< PointT >::size().

initCompute()

template<typename PointInT , typename PointOutT , typename NormalT >
bool pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::initCompute
overrideprotectedvirtual

Переопределено из pcl::Keypoint< PointInT, PointOutT >.

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

Ссылки на pcl::Feature< PointInT, PointOutT >::compute(), pcl::NormalEstimation< PointInT, PointOutT >::setInputCloud(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::setInputCloud(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::setNormalEstimationMethod(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::setNormalSmoothingSize(), и pcl::Feature< PointInT, PointOutT >::setRadiusSearch().

refineCorners()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::refineCorners ( PointCloudOut & corners ) const
protected

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

responseCurvature()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::responseCurvature ( PointCloudOut & output ) const
protected

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

responseHarris()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::responseHarris ( PointCloudOut & output ) const
protected

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

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

Ссылки на pcl::isFinite().

responseLowe()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::responseLowe ( PointCloudOut & output ) const
protected

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

Ссылки на pcl::isFinite().

responseNoble()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::responseNoble ( PointCloudOut & output ) const
protected

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

Ссылки на pcl::isFinite().

responseTomasi()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::responseTomasi ( PointCloudOut & output ) const
protected

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

Ссылки на pcl::eigen33(), и pcl::isFinite().

setInputCloud()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setInputCloud ( const PointCloudInConstPtr & cloud )
override

Предоставьте указатель на входной набор данных.

Параметры
[in] cloud постоянный указатель boost shared на сообщение PointCloud

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

setMethod()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setMethod ( ResponseMethod type )

Установить метод для расчёта ответа.

Параметры
[in] type

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

setNonMaxSupression()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setNonMaxSupression ( bool nonmax = false )

Необходимо ли применять подавление не-максимумов или возвращать ответ для каждой точки.

Примечание
Это значение необходимо включить для применения порогового значения и уточнения
Параметры
[in] nonmax по умолчанию false

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

setNormals()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setNormals ( const PointCloudNConstPtr & normals )

Установить нормали, если нормали предварительно рассчитаны.

Параметры
normals

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

setNumberOfThreads()

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setNumberOfThreads ( unsigned int nr_threads = 0 )
inline

Инициализировать планировщик и установить количество потоков для использования.

Параметры
nr_threads количество аппаратных потоков для использования (0 устанавливает значение обратно к автоматическому)

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

setRadius()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setRadius ( float radius )

Установить радиус для оценки нормалей и подавления не-максимумов.

Параметры
[in] radius

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

setRefine()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setRefine ( bool do_refine )

Определяет, должны ли обнаруженные ключевые точки быть уточнены или нет.

Если отключено, ключевые точки являются подмножеством исходного облака точек. В противном случае ключевые точки могут быть произвольными.

Обратите внимание, что подавление не-максимумов должно быть включено, чтобы использовать эту функцию.

Параметры
[in] do_refine

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

setSearchSurface()

template<typename PointInT , typename PointOutT , typename NormalT = pcl::Normal>
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setSearchSurface ( const PointCloudInConstPtr & cloud )
inlineoverride

Предоставить указатель на набор данных для добавления дополнительной информации для оценки функций для каждой точки в исходном наборе данных.

Это необязательно, если это не задано, то будут использованы только данные в входном облаке для оценки характеристик. Это полезно, когда вам нужно вычислить характеристики только для уменьшенного облака.

Параметры
[in] cloud указатель на сообщение PointCloud

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

Ссылки на pcl::Keypoint< PointInT, PointOutT >::surface_.

setThreshold()

template<typename PointInT , typename PointOutT , typename NormalT >
void pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::setThreshold ( float threshold )

Установить значение порога для обнаружения углов.

Это оценивается только в том случае, если включено подавление не-максимумов.

Обратите внимание, что подавление не-максимумов должно быть активировано, чтобы использовать эту функцию.

Параметры
[in] threshold

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


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

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

Spec-Zone.ru

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