KdTreeFLANN — это универсальный тип 3D пространственного локатора, использующего структуры kD-дерева. Подробнее...
#include <pcl/kdtree/kdtree_flann.h>
Public Types | |
| using | PointCloud = typename KdTree< PointT >::PointCloud |
| using | PointCloudConstPtr = typename KdTree< PointT >::PointCloudConstPtr |
| using | IndicesPtr = shared_ptr< Indices > |
| using | IndicesConstPtr = shared_ptr< const Indices > |
| using | FLANNIndex = ::flann::Index< Dist > |
| using | Ptr = shared_ptr< KdTreeFLANN< PointT, Dist > > |
| using | ConstPtr = shared_ptr< const KdTreeFLANN< PointT, Dist > > |
|
| |
| using | IndicesPtr = shared_ptr< Indices > |
| using | IndicesConstPtr = shared_ptr< const Indices > |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointRepresentation = pcl::PointRepresentation< PointT > |
| using | PointRepresentationConstPtr = typename PointRepresentation::ConstPtr |
| using | Ptr = shared_ptr< KdTree< PointT > > |
| using | ConstPtr = shared_ptr< const KdTree< PointT > > |
Общедоступные члены-функции | |
| KdTreeFLANN (bool sorted=true) | |
| Конструктор по умолчанию для KdTreeFLANN. Подробнее... |
|
| KdTreeFLANN (const KdTreeFLANN< PointT, Dist > &k) | |
| Копирующий конструктор. Подробнее... |
|
| KdTreeFLANN< PointT, Dist > & | operator= (const KdTreeFLANN< PointT, Dist > &k) |
| Оператор копирования. Подробнее... |
|
| void | setEpsilon (float eps) override |
| Установить точность поиска ближайших соседей с помощью параметра epsilon (граница погрешности). Подробнее... |
|
| void | setSortedResults (bool sorted) |
| Ptr | makeShared () |
| ~KdTreeFLANN () override | |
| Деструктор для KdTreeFLANN. Подробнее... |
|
| void | setInputCloud (const PointCloudConstPtr &cloud, const IndicesConstPtr &indices=IndicesConstPtr()) override |
| Предоставить указатель на входные данные. Подробнее... |
|
| int | nearestKSearch (const PointT &point, unsigned int k, Indices &k_indices, std::vector< float > &k_sqr_distances) const override |
| Поиск k ближайших соседей для заданной точки запроса. Подробнее... |
|
| int | radiusSearch (const PointT &point, double radius, Indices &k_indices, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const override |
| Поиск всех ближайших соседей заданной точки в заданном радиусе. Подробнее... |
|
|
| |
| KdTree (bool sorted=true) | |
| Пустой конструктор для KdTree. Подробнее... |
|
| IndicesConstPtr | getIndices () const |
| Получить указатель на вектор индексов, используемых. Подробнее... |
|
| PointCloudConstPtr | getInputCloud () const |
| Получить указатель на набор входных точек. Подробнее... |
|
| void | setPointRepresentation (const PointRepresentationConstPtr &point_representation) |
| Указать представление точки, используемое для преобразования точек в k-мерные векторы. Подробнее... |
|
| PointRepresentationConstPtr | getPointRepresentation () const |
| Получить указатель на используемое представление точки при преобразовании точек в k-мерные векторы. Подробнее... |
|
| virtual | ~KdTree ()=default |
| Деструктор для KdTree. Подробнее... |
|
| virtual int | nearestKSearch (const PointCloud &cloud, int index, unsigned int k, Indices &k_indices, std::vector< float > &k_sqr_distances) const |
| Поиск k ближайших соседей для заданной точки запроса. Подробнее... |
|
| template<typename PointTDiff > | |
| int | nearestKSearchT (const PointTDiff &point, unsigned int k, Indices &k_indices, std::vector< float > &k_sqr_distances) const |
| Поиск k ближайших соседей для заданной точки запроса. Подробнее... |
|
| virtual int | nearestKSearch (int index, unsigned int k, Indices &k_indices, std::vector< float > &k_sqr_distances) const |
| Поиск k ближайших соседей для заданной точки запроса (без копирования). Подробнее... |
|
| virtual int | radiusSearch (const PointCloud &cloud, int index, double radius, Indices &k_indices, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const |
| Поиск всех ближайших соседей точки запроса в заданном радиусе. Подробнее... |
|
| template<typename PointTDiff > | |
| int | radiusSearchT (const PointTDiff &point, double radius, Indices &k_indices, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const |
| Поиск всех ближайших соседей точки запроса в заданном радиусе. Подробнее... |
|
| virtual int | radiusSearch (int index, double radius, Indices &k_indices, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const |
| Поиск всех ближайших соседей точки запроса в заданном радиусе (без копирования). Подробнее... |
|
| float | getEpsilon () const |
| Получить точность поиска по епсилон (граница ошибки) для поиска ближайших соседей. Подробнее... |
|
| void | setMinPts (int min_pts) |
| Минимальное количество точек k ближайших соседей, которое должна содержать результатная выборка. Подробнее... |
|
| int | getMinPts () const |
| Получить минимальное количество точек k ближайших соседей, которое должна содержать результатная выборка. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| PointCloudConstPtr | input_ |
| Входной набор точек облака, содержащий точки, которые необходимо использовать. Подробнее... |
|
| IndicesConstPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| float | epsilon_ |
| Точность ε (предел ошибки) для поиска ближайших соседей. Подробнее... |
|
| int | min_pts_ |
| Минимальное количество точек k ближайших соседей, которое должен содержать жизнеспособный результат. Подробнее... |
|
| bool | sorted_ |
| Возвращает радиус поиска ближайших соседей, отсортированных. Подробнее... |
|
| PointRepresentationConstPtr | point_representation_ |
| Для преобразования различных структур точек в векторы k-измерений для поиска ближайших соседей. Подробнее... |
|
Подробное описание
шаблон<typename PointT, typename Dist = ::flann::L2_Simple<float>>
class pcl::KdTreeFLANN< PointT, Dist >
KdTreeFLANN — это обобщённый тип 3D пространственного локатора, использующего структуры kD-дерева.
Класс использует проект FLANN (Fast Library for Approximate Nearest Neighbor) Мариуса Муджи и Дэвида Лоу.
Определение в строке 132 файла kdtree_flann.h.
Документация по typedef-членам
ConstPtr
| используя pcl::KdTreeFLANN< PointT, Dist >::ConstPtr = shared_ptr<const KdTreeFLANN<PointT, Dist> > |
Определение в строке 152 файла kdtree_flann.h.
FLANNIndex
| используя pcl::KdTreeFLANN< PointT, Dist >::FLANNIndex = ::flann::Index<Dist> |
Определение в строке 148 файла kdtree_flann.h.
IndicesConstPtr
| используя pcl::KdTreeFLANN< PointT, Dist >::IndicesConstPtr = shared_ptr<const Indices> |
Определение в строке 146 файла kdtree_flann.h.
IndicesPtr
| используя pcl::KdTreeFLANN< PointT, Dist >::IndicesPtr = shared_ptr<Indices> |
Определение в строке 145 файла kdtree_flann.h.
PointCloud
| используя pcl::KdTreeFLANN< PointT, Dist >::PointCloud = typename KdTree<PointT>::PointCloud |
Определение в строке 142 файла kdtree_flann.h.
PointCloudConstPtr
| using pcl::KdTreeFLANN< PointT, Dist >::PointCloudConstPtr = typename KdTree<PointT>::PointCloudConstPtr |
Определение в строке 143 файла kdtree_flann.h.
Ptr
| using pcl::KdTreeFLANN< PointT, Dist >::Ptr = shared_ptr<KdTreeFLANN<PointT, Dist> > |
Определение в строке 151 файла kdtree_flann.h.
Документация конструктора и деструктора
KdTreeFLANN() [1/2]
| pcl::KdTreeFLANN< PointT, Dist >::KdTreeFLANN | ( | bool |
sorted = true
|
) |
Конструктор по умолчанию для KdTreeFLANN.
- Параметры
-
[in] sorted устанавливается в true, если приложение, для которого будет использоваться дерево, требует отсортированных индексов ближайших соседей (по умолчанию). В противном случае — false.
Установка sorted в false сделает операции radiusSearch быстрее.
Определение в строке 49 файла kdtree_flann.hpp.
KdTreeFLANN() [2/2]
| pcl::KdTreeFLANN< PointT, Dist >::KdTreeFLANN | ( | const KdTreeFLANN< PointT, Dist > & | k | ) |
Конструктор копирования.
- Параметры
-
[in] k дерево, которое нужно скопировать в это дерево
Определение в строке 71 файла kdtree_flann.hpp.
~KdTreeFLANN()
| inlineoverride |
Деструктор для KdTreeFLANN.
Удаляет все выделенные массивы данных и уничтожает структуры kd-дерева.
Определение в строке 203 файла kdtree_flann.h.
Документация функций-членов
makeShared()
| inline |
Определение в строке 195 файла kdtree_flann.h.
nearestKSearch()
| overridevirtual |
Поиск k ближайших соседей для заданной точки запроса.
- Внимание
- Этот метод не выполняет проверки границ для входного индекса (т. е. index >= cloud.size() || index < 0) и предполагает допустимые (т. е. конечные) данные.
- Параметры
-
[in] point заданная допустимая (т. е. конечная) точка запроса [in] k количество соседей для поиска [out] k_indices результирующие индексы точек-соседей (должны быть предварительно изменены на k!) [out] k_sqr_distances результирующие квадраты расстояний до точек-соседей (должны быть предварительно изменены на k!)
- Возвращает
- количество найденных соседей
- Исключения
-
assert в режиме отладки, если индекс не находится между 0 и максимальным количеством точек
Реализует pcl::KdTree< PointT >.
Определение в строке 237 файла kdtree_flann.hpp.
Ссылка на pcl::gpu::DataSource::findKNNeghbors(), pcl::StatisticalMultiscaleInterestRegionExtraction< PointT >::generateCloudGraph(), pcl::getApproximateIndices() и pcl::ConcaveHull< PointInT >::performReconstruction().
operator=()
| inline |
Оператор копирования.
- Параметры
-
[in] k дерево для копирования в это дерево
Определение в строке 171 файла kdtree_flann.h.
radiusSearch()
| overridevirtual |
Поиск всех ближайших соседей заданной точки в заданном радиусе.
- Внимание
- Этот метод не выполняет проверки границ для входного индекса (т.е., index >= cloud.size () || index < 0) и предполагает допустимые (т.е., конечные) данные.
- Параметры
-
[in] point заданная допустимая (т.е., конечная) точка запроса [in] radius радиус сферы, ограничивающей всех соседей p_q [out] k_indices результирующие индексы соседних точек [out] k_sqr_distances результирующие квадраты расстояний до соседних точек [in] max_nn при заданном значении ограничивает максимальное количество возвращаемых соседей этим значением. Если max_nn установлено в 0 или значение выше числа точек в облаке ввода, будут возвращены все соседи в radius.
- Возвращает
- количество найденных соседей в радиусе
- Исключения
-
утверждения в режиме отладки, если индекс не находится в диапазоне от 0 до максимального числа точек
Реализует pcl::KdTree< PointT >.
Определение в строке 375 файла kdtree_flann.hpp.
Ссылается на pcl::radius_search().
Используется в pcl::gpu::DataSource::findRadiusNeghbors() и pcl::TextureMapping< PointInT >::textureMeshwithMultipleCameras().
setEpsilon()
| overridevirtual |
Установить точность поиска ближайших соседей (ошибка связи)
- Параметры
-
[in] eps точность (ошибка связи) для поиска ближайших соседей
Переопределено из pcl::KdTree< PointT >.
Определение в строке 84 файла kdtree_flann.hpp.
setInputCloud()
| overridevirtual |
Укажите указатель на входные данные.
- Параметры
-
[in] cloud указатель на константу boost, общий для сообщения PointCloud [in] indices подмножество индексов точек, которые необходимо использовать из cloud - если NULL, используется все облако
Переопределено из pcl::KdTree< PointT >.
Определение в строке 102 файла kdtree_flann.hpp.
Используется в pcl::gpu::DataSource::findKNNeghbors(), pcl::gpu::DataSource::findRadiusNeghbors(), pcl::StatisticalMultiscaleInterestRegionExtraction< PointT >::generateCloudGraph(), pcl::getApproximateIndices(), pcl::ConcaveHull< PointInT >::performReconstruction() и pcl::TextureMapping< PointInT >::textureMeshwithMultipleCameras().
setSortedResults()
| void pcl::KdTreeFLANN< PointT, Dist >::setSortedResults | ( | bool | sorted | ) |
Определение в строке 93 файла kdtree_flann.hpp.
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/kdtree/kdtree_flann.h
- pcl/kdtree/impl/kdtree_flann.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_kd_tree_f_l_a_n_n.html