SIFTKeypoint обнаруживает ключевые точки преобразования масштабно-инвариантных признаков (Scale Invariant Feature Transform) для заданного набора данных облака точек, содержащего точки и интенсивность. Подробнее...
#include <pcl/keypoints/sift_keypoint.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< SIFTKeypoint< PointInT, PointOutT > > |
| using | ConstPtr = shared_ptr< const SIFTKeypoint< PointInT, PointOutT > > |
| using | PointCloudIn = typename Keypoint< PointInT, PointOutT >::PointCloudIn |
| using | PointCloudOut = typename Keypoint< PointInT, PointOutT >::PointCloudOut |
| using | KdTree = typename Keypoint< PointInT, PointOutT >::KdTree |
|
| |
| using | Ptr = shared_ptr< Keypoint< PointInT, PointOutT > > |
| using | ConstPtr = shared_ptr< const Keypoint< PointInT, PointOutT > > |
| using | BaseClass = PCLBase< PointInT > |
| 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(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 > &)> |
|
| |
| using | PointCloud = pcl::PointCloud< PointInT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Публичные члены-функции | |
| SIFTKeypoint () | |
| Пустой конструктор. Подробнее... |
|
| void | setScales (float min_scale, int nr_octaves, int nr_scales_per_octave) |
| Укажите диапазон масштабов, по которому нужно искать ключевые точки. Подробнее... |
|
| void | setMinimumContrast (float min_contrast) |
| Установите порог для ограничения обнаружения ключевых точек без достаточного контраста. Подробнее... |
|
|
| |
| 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. Подробнее... |
|
|
| |
| 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 |
| Определить ключевые точки SIFT для набора точек, заданных в setInputCloud(), используя пространственный локатор в setSearchMethod(). Подробнее... |
|
|
| |
| const std::string & | getClassName () const |
| Получить строковое представление имени этого класса. Подробнее... |
|
| virtual void | detectKeypoints (PointCloudOut &output)=0 |
| Абстрактный метод обнаружения ключевых точек. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен быть вызван перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен быть вызван после завершения фактического вычисления. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| 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_ |
| Индексы ключевых точек в входном облаке. Подробнее... |
|
|
| |
| PointCloudConstPtr | input_ |
| Входное облако точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| bool | use_indices_ |
| Устанавливается в true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, создаётся набор фиктивных индексов, имитирующих входное облако точек. Подробнее... |
|
Подробное описание
template<typename PointInT, typename PointOutT>
class pcl::SIFTKeypoint< PointInT, PointOutT >
SIFTKeypoint определяет ключевые точки преобразования масштабно-инвариантных признаков для заданного набора точек облака, содержащего точки и интенсивность.
Это реализация адаптирует исходный алгоритм из изображений к облакам точек.
Для получения дополнительной информации об операторе интереса SIFT для изображений см.:
David G. Lowe, "Distinctive image features from scale-invariant keypoints," International Journal of Computer Vision, 60, 2 (2004), pp. 91-110.
Определение в строке 93 файла sift_keypoint.h.
Документация типов-членов
ConstPtr
| using pcl::SIFTKeypoint< PointInT, PointOutT >::ConstPtr = shared_ptr<const SIFTKeypoint<PointInT, PointOutT> > |
Определение в строке 97 файла sift_keypoint.h.
KdTree
| using pcl::SIFTKeypoint< PointInT, PointOutT >::KdTree = typename Keypoint<PointInT, PointOutT>::KdTree |
Определение в строке 101 файла sift_keypoint.h.
PointCloudIn
| using pcl::SIFTKeypoint< PointInT, PointOutT >::PointCloudIn = typename Keypoint<PointInT, PointOutT>::PointCloudIn |
Определение в строке 99 файла sift_keypoint.h.
PointCloudOut
| using pcl::SIFTKeypoint< PointInT, PointOutT >::PointCloudOut = typename Keypoint<PointInT, PointOutT>::PointCloudOut |
Определение в строке 100 файла sift_keypoint.h.
Ptr
| using pcl::SIFTKeypoint< PointInT, PointOutT >::Ptr = shared_ptr<SIFTKeypoint<PointInT, PointOutT> > |
Определение в строке 96 файла sift_keypoint.h.
Документация конструкторов и деструкторов
SIFTKeypoint()
| inline |
Пустой конструктор.
Определение в строке 111 файла sift_keypoint.h.
Ссылки на pcl::Keypoint< PointInT, PointOutT >::name_.
Документация функций-членов
detectKeypoints()
| overrideprotected |
Определяет ключевые точки SIFT для набора точек, заданных в setInputCloud (), с использованием пространственного локализатора в setSearchMethod ().
- Параметры
-
output результирующее облако ключевых точек
Определение в строке 98 файла sift_keypoint.hpp.
Ссылки на pcl::Filter< PointT >::filter(), pcl::PCLBase< PointT >::setInputCloud(), pcl::VoxelGrid< PointT >::setLeafSize(), и pcl::PointCloud< PointT >::size().
initCompute()
| overrideprotectedvirtual |
Переопределено из pcl::Keypoint< PointInT, PointOutT >.
Определение в строке 64 файла sift_keypoint.hpp.
setMinimumContrast()
| void pcl::SIFTKeypoint< PointInT, PointOutT >::setMinimumContrast | ( | float | min_contrast | ) |
Установите порог для ограничения обнаружения ключевых точек без достаточного контраста.
- Параметры
-
min_contrast минимальный контраст, необходимый для обнаружения
Определение в строке 57 файла sift_keypoint.hpp.
setScales()
| void pcl::SIFTKeypoint< PointInT, PointOutT >::setScales | ( | float | min_scale, |
| int | nr_octaves, | ||
| int | nr_scales_per_octave | ||
| ) |
Укажите диапазон масштабов, в котором следует искать ключевые точки.
- Параметры
-
min_scale стандартное отклонение наименьшего масштаба в пространстве масштабов nr_octaves количество октав (т.е. удвоений масштаба), которые необходимо вычислить nr_scales_per_octave количество масштабов, которые необходимо вычислить в каждой октаве
Определение в строке 47 файла sift_keypoint.hpp.
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/keypoints/sift_keypoint.h
- pcl/keypoints/impl/sift_keypoint.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_s_i_f_t_keypoint.html