KdTree представляет базовый класс пространственного локатора для реализаций kd-дерева. Подробнее...
#include <pcl/kdtree/kdtree.h>
Public Types | |
| 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 > > |
Общедоступные члены-функции | |
| KdTree (bool sorted=true) | |
| Пустой конструктор для KdTree. Подробнее... |
|
| virtual void | setInputCloud (const PointCloudConstPtr &cloud, const IndicesConstPtr &indices=IndicesConstPtr()) |
| Предоставьте указатель на входные данные. Подробнее... |
|
| IndicesConstPtr | getIndices () const |
| Получить указатель на вектор индексов, используемых. Подробнее... |
|
| PointCloudConstPtr | getInputCloud () const |
| Получить указатель на входной набор данных облака точек. Подробнее... |
|
| void | setPointRepresentation (const PointRepresentationConstPtr &point_representation) |
| Предоставьте указатель на представление точки, используемое для преобразования точек в векторы k-D. Подробнее... |
|
| PointRepresentationConstPtr | getPointRepresentation () const |
| Получить указатель на представление точки, используемое при преобразовании точек в векторы k-D. Подробнее... |
|
| virtual | ~KdTree ()=default |
| Деструктор для KdTree. Подробнее... |
|
| virtual int | radiusSearch (int index, double radius, Indices &k_indices, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const |
| Поиск всех ближайших соседей точки запроса в заданном радиусе (без копирования). Подробнее... |
|
| virtual void | setEpsilon (float eps) |
| Установить точность поиска ε (предел погрешности) для поиска ближайших соседей. Подробнее... |
|
| float | getEpsilon () const |
| Получить точность поиска ε (предел погрешности) для поиска ближайших соседей. Подробнее... |
|
| void | setMinPts (int min_pts) |
| Минимальное количество точек ближайших соседей k, которое должна содержать допустимая результирующая точка. Подробнее... |
|
| int | getMinPts () const |
| Получить минимальное количество точек ближайших соседей k, которое должна содержать допустимая результирующая точка. Подробнее... |
|
Защищенные члены функций | |
| virtual std::string | getName () const =0 |
| Метод getName класса. Подробнее... |
|
Защищенные атрибуты | |
| PointCloudConstPtr | input_ |
| Набор данных входного облака точек, содержащий точки, которые нам нужно использовать. Подробнее... |
|
| IndicesConstPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| float | epsilon_ |
| Точность ε (предел погрешности) для поиска ближайших соседей. Подробнее... |
|
| int | min_pts_ |
| Минимальное количество точек ближайших соседей k, которое должна содержать допустимая результирующая точка. Подробнее... |
|
| bool | sorted_ |
| Возвращает соседей поиска в радиусе, отсортированные. Подробнее... |
|
| PointRepresentationConstPtr | point_representation_ |
| Для преобразования различных структур точек в k-мерные векторы для поиска ближайших соседей. Подробнее... |
|
Подробное описание
шаблон<typename PointT>
класс pcl::KdTree< PointT >
KdTree представляет базовый класс пространственного локатора для реализации kd-дерева.
Документация члена-типа
ConstPtr
| используется pcl::KdTree< PointT >::ConstPtr = shared_ptr<const KdTree<PointT> > |
IndicesConstPtr
| используется pcl::KdTree< PointT >::IndicesConstPtr = shared_ptr<const Indices > |
IndicesPtr
| используется pcl::KdTree< PointT >::IndicesPtr = shared_ptr<Indices > |
PointCloud
| using pcl::KdTree< PointT >::PointCloud = pcl::PointCloud<PointT> |
PointCloudConstPtr
| using pcl::KdTree< PointT >::PointCloudConstPtr = typename PointCloud::ConstPtr |
PointCloudPtr
| using pcl::KdTree< PointT >::PointCloudPtr = typename PointCloud::Ptr |
PointRepresentation
| using pcl::KdTree< PointT >::PointRepresentation = pcl::PointRepresentation<PointT> |
PointRepresentationConstPtr
| using pcl::KdTree< PointT >::PointRepresentationConstPtr = typename PointRepresentation::ConstPtr |
Ptr
| using pcl::KdTree< PointT >::Ptr = shared_ptr<KdTree<PointT> > |
Конструктор и деструктор
KdTree()
| inline |
Пустой конструктор для KdTree.
Устанавливает некоторые внутренние значения по умолчанию.
- Параметры
-
[in] sorted устанавливается в true, если для приложения, для которого будет использоваться дерево, требуются отсортированные индексы ближайших соседей (по умолчанию). В противном случае - false.
~KdTree()
| virtualdefault |
Деструктор для KdTree.
Удаляет все выделенные массивы данных и разрушает структуры kd-дерева.
Документация по функциям-членам
getEpsilon()
| inline |
Получение точности поиска с помощью эпсилон (границы ошибки) для поиска ближайших соседей.
Определение в строке 313 файла kdtree.h.
Ссылка на pcl::KdTree< PointT >::epsilon_.
getIndices()
| inline |
Получение указателя на вектор индексов, используемых.
Определение в строке 93 файла kdtree.h.
Ссылка на pcl::KdTree< PointT >::indices_.
Используется в pcl::extractEuclideanClusters().
getInputCloud()
| inline |
Получить указатель на набор входных данных облака точек.
Определение в строке 100 файла kdtree.h.
Ссылается на pcl::KdTree< PointT >::input_.
Используется в pcl::extractEuclideanClusters().
getMinPts()
| inline |
Получить минимальное разрешённое количество точек ближайших k соседей, которое должно содержаться в допустимом результате.
Определение в строке 329 файла kdtree.h.
Ссылается на pcl::KdTree< PointT >::min_pts_.
getName()
| protectedpure virtual |
Метод getName класса.
getPointRepresentation()
| inline |
Получить указатель на представление точки, используемое при преобразовании точек в k-мерные векторы.
Определение в строке 118 файла kdtree.h.
Ссылается на pcl::KdTree< PointT >::point_representation_.
nearestKSearch() [1/3]
| inlinevirtual |
Поиск k ближайших соседей для заданной точки запроса.
- Внимание
- Этот метод не выполняет проверки границ для входного индекса (т.е., index >= cloud.size () || index < 0), и предполагает действительные (т.е., конечные) данные.
- Параметры
-
[in] cloud данные облака точек [in] index действительный индекс в cloud, представляющий действительную (т.е., конечную) точку запроса [in] k число соседей, для поиска которых [out] k_indices результирующие индексы соседних точек (должны быть предварительно изменены до k!) [out] k_sqr_distances результирующие квадратные расстояния до соседних точек (должны быть предварительно изменены до k!)
- Возвращает
- количество найденных соседей
- Исключения
-
утверждения в режиме отладки, если индекс не находится между 0 и максимальным числом точек
Определение в строке 155 файла kdtree.h.
Ссылается на pcl::KdTree< PointT >::nearestKSearch() и pcl::PointCloud< PointT >::size().
nearestKSearch() [2/3]
| pure virtual |
Поиск k ближайших соседей для заданной точки запроса.
- Параметры
-
[in] p_q заданная точка запроса [in] k количество соседей для поиска [out] k_indices результирующие индексы точек-соседей (должны быть предварительно изменены на k!) [out] k_sqr_distances результирующие квадраты расстояний до соседних точек (должны быть предварительно изменены на k!)
- Возвращает
- количество найденных соседей
Реализовано в pcl::KdTreeFLANN< PointTarget >, pcl::KdTreeFLANN< PointT, Dist >, pcl::KdTreeFLANN< pcl::VFHSignature308 >, pcl::KdTreeFLANN< pcl::PointXYZRGB >, pcl::KdTreeFLANN< pcl::PointXYZLAB >, pcl::KdTreeFLANN< pcl::InterestPoint >, и pcl::KdTreeFLANN< FeatureT >.
Ссылка на pcl::KdTree< PointT >::nearestKSearch(), и pcl::KdTree< PointT >::nearestKSearchT().
nearestKSearch() [3/3]
| inlinevirtual |
Поиск k ближайших соседей для заданной точки запроса (без копирования).
- Внимание
- Этот метод не проверяет пределы входного индекса (т.е., index >= cloud.size () || index < 0) и предполагает валидные (т.е., конечные) данные.
- Параметры
-
[in] index валидный индекс, представляющий валидную точку запроса в наборе данных, заданном с помощью setInputCloud. Если индексы были заданы в setInputCloud, index будет позицией в векторе индексов. [in] k количество соседей для поиска [out] k_indices результирующие индексы точек-соседей (должны быть предварительно изменены на k!) [out] k_sqr_distances результирующие квадраты расстояний до соседних точек (должны быть предварительно изменены на k!)
- Возвращает
- количество найденных соседей
- Исключения
-
asserts в режиме отладки, если индекс не находится в диапазоне от 0 до максимального количества точек
Определение в строке 198 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::indices_, pcl::KdTree< PointT >::input_, и pcl::KdTree< PointT >::nearestKSearch().
nearestKSearchT()
| inline |
Поиск k ближайших соседей для заданной точки запроса.
Этот метод принимает другой шаблонный параметр для типа точки.
- Параметры
-
[in] point заданная точка запроса [in] k количество соседей для поиска [out] k_indices результирующие индексы точек-соседей (должны быть предварительно изменены на k!) [out] k_sqr_distances результирующие квадраты расстояний до соседних точек (должны быть предварительно изменены на k!)
- Возвращает
- количество найденных соседей
Определение в строке 172 файла kdtree.h.
Ссылки на pcl::copyPoint(), и pcl::KdTree< PointT >::nearestKSearch().
Ссылка на pcl::getApproximateIndices().
radiusSearch() [1/3]
| inlinevirtual |
Поиск всех ближайших соседей точки запроса в заданном радиусе.
- Внимание
- Этот метод не выполняет проверки границ для входного индекса (т. е., индекс >= облако.размер() || индекс < 0) и предполагает допустимые (т. е., конечные) данные.
- Параметры
-
[in] облако данные облака точек [in] индекс допустимый индекс в облаке, представляющий допустимую (т. е., конечную) точку запроса [in] радиус радиус сферы, ограничивающей всех соседей p_q [out] k_индексы результирующие индексы соседних точек [out] k_квадраты_расстояний результирующие квадратные расстояния до соседних точек [in] макс_соседей если задано, ограничивает максимальное количество возвращаемых соседей этим значением. Если макс_соседей установлено в 0 или в число, большее, чем количество точек во входном облаке, будут возвращены все соседи в радиусе.
- Возвращает
- количество соседей, найденных в радиусе
- Исключения
-
утверждения в режиме отладки, если индекс не находится между 0 и максимальным количеством точек
Определение в строке 243 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::radiusSearch() и pcl::PointCloud< PointT >::size().
radiusSearch() [2/3]
| pure virtual |
Поиск всех ближайших соседей точки запроса в заданном радиусе.
- Параметры
-
[in] p_q заданная точка запроса [in] радиус радиус сферы, ограничивающей всех соседей p_q [out] k_индексы результирующие индексы соседних точек [out] k_квадраты_расстояний результирующие квадратные расстояния до соседних точек [in] макс_соседей если задано, ограничивает максимальное количество возвращаемых соседей этим значением. Если макс_соседей установлено в 0 или в число, большее, чем количество точек во входном облаке, будут возвращены все соседи в радиусе.
- Возвращает
- количество соседей, найденных в радиусе
Реализовано в pcl::KdTreeFLANN< PointTarget >, pcl::KdTreeFLANN< PointT, Dist >, pcl::KdTreeFLANN< pcl::VFHSignature308 >, pcl::KdTreeFLANN< pcl::PointXYZRGB >, pcl::KdTreeFLANN< pcl::PointXYZLAB >, pcl::KdTreeFLANN< pcl::InterestPoint >, и pcl::KdTreeFLANN< FeatureT >.
Ссылки на pcl::extractEuclideanClusters(), pcl::KdTree< PointT >::radiusSearch() и pcl::KdTree< PointT >::radiusSearchT().
radiusSearch() [3/3]
| inlinevirtual |
Поиск всех ближайших соседей точки запроса в заданном радиусе (без копирования).
- Внимание
- Этот метод не выполняет проверки границ для входного индекса (т.е., index >= cloud.size () || index < 0) и предполагает валидные (т.е., конечные) данные.
- Параметры
-
[вход] index валидный индекс, представляющий валидную точку запроса в наборе данных, заданном setInputCloud. Если индексы были заданы в setInputCloud, index будет позицией в векторе индексов. [вход] radius радиус сферы, охватывающей всех соседей p_q [выход] k_indices результирующие индексы соседних точек [выход] k_sqr_distances результирующие квадраты расстояний до соседних точек [вход] max_nn если задано, ограничивает максимальное количество возвращаемых соседей этим значением. Если max_nn установлено в 0 или в числе, большем, чем количество точек в облаке ввода, будут возвращены все соседи в radius.
- Возвращает
- количество найденных соседей в радиусе
- Исключения
-
asserts в режиме отладки, если индекс не находится между 0 и максимальным числом точек
Определение в строке 290 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::indices_, pcl::KdTree< PointT >::input_, и pcl::KdTree< PointT >::radiusSearch().
radiusSearchT()
| inline |
Поиск всех ближайших соседей точки запроса в заданном радиусе.
- Параметры
-
[вход] point заданная точка запроса [вход] radius радиус сферы, охватывающей всех соседей p_q [выход] k_indices результирующие индексы соседних точек [выход] k_sqr_distances результирующие квадраты расстояний до соседних точек [вход] max_nn если задано, ограничивает максимальное количество возвращаемых соседей этим значением. Если max_nn установлено в 0 или в числе, большем, чем количество точек в облаке ввода, будут возвращены все соседи в radius.
- Возвращает
- количество найденных соседей в радиусе
Определение в строке 262 файла kdtree.h.
Ссылки на pcl::copyPoint(), и pcl::KdTree< PointT >::radiusSearch().
setEpsilon()
| inlinevirtual |
Установить точность поиска ближайших соседей (предел ошибки).
- Параметры
-
[вход] eps точность (предел ошибки) для поиска ближайших соседей
Переопределено в pcl::KdTreeFLANN< PointT, Dist >, pcl::KdTreeFLANN< pcl::PointXYZRGB >, pcl::KdTreeFLANN< pcl::VFHSignature308 >, pcl::KdTreeFLANN< PointTarget >, pcl::KdTreeFLANN< pcl::PointXYZLAB >, pcl::KdTreeFLANN< pcl::InterestPoint >, и pcl::KdTreeFLANN< FeatureT >.
Определение в строке 306 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::epsilon_.
setInputCloud()
| inlinevirtual |
Укажите указатель на входной набор данных.
- Параметры
-
[in] облако постоянный указатель boost shared на сообщение PointCloud [in] индексы подмножество индексов точек, которое следует использовать из облако — если NULL, используется всё облако.
Переопределено в pcl::KdTreeFLANN< PointT, Dist >, pcl::KdTreeFLANN< pcl::PointXYZRGB >, pcl::KdTreeFLANN< pcl::VFHSignature308 >, pcl::KdTreeFLANN< PointTarget >, pcl::KdTreeFLANN< pcl::PointXYZLAB >, pcl::KdTreeFLANN< pcl::InterestPoint >, и pcl::KdTreeFLANN< FeatureT >.
Определение в строке 85 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::indices_ и pcl::KdTree< PointT >::input_.
Используется в pcl::KdTree< PointT >::setPointRepresentation().
setMinPts()
| inline |
Минимальное допустимое количество точек k ближайших соседей, которые должны содержаться в приемлемом результате.
- Параметры
-
[in] min_pts минимальное количество соседей в приемлемом окружении
Определение в строке 322 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::min_pts_.
setPointRepresentation()
| inline |
Укажите указатель на представление точки для преобразования точек в векторы k-мерного пространства.
- Параметры
-
[in] представление_точки постоянный указатель boost shared на PointRepresentation
Определение в строке 109 файла kdtree.h.
Ссылки на pcl::KdTree< PointT >::indices_, pcl::KdTree< PointT >::input_, pcl::KdTree< PointT >::point_representation_ и pcl::KdTree< PointT >::setInputCloud().
Документация данных-членов
epsilon_
| protected |
Точность ε (граница ошибки) для поиска ближайших соседей.
Определение в строке 342 файла kdtree.h.
Используется в pcl::KdTree< PointT >::getEpsilon() и pcl::KdTree< PointT >::setEpsilon().
indices_
| protected |
Указатель на вектор индексов точек для использования.
Определение в строке 339 файла kdtree.h.
Используется в pcl::KdTree< PointT >::getIndices(), pcl::KdTree< PointT >::nearestKSearch(), pcl::KdTree< PointT >::radiusSearch(), pcl::KdTree< PointT >::setInputCloud() и pcl::KdTree< PointT >::setPointRepresentation().
input_
| protected |
Входное облако точек, содержащее точки, которые нужно использовать.
Определение в строке 336 файла kdtree.h.
Используется в pcl::KdTree< PointT >::getInputCloud(), pcl::KdTree< PointT >::nearestKSearch(), pcl::KdTree< PointT >::radiusSearch(), pcl::KdTree< PointT >::setInputCloud() и pcl::KdTree< PointT >::setPointRepresentation().
min_pts_
| protected |
Минимальное допустимое количество точек k ближайших соседей, которые должны содержаться в результатах.
Определение в строке 345 файла kdtree.h.
Используется в pcl::KdTree< PointT >::getMinPts() и pcl::KdTree< PointT >::setMinPts().
point_representation_
| protected |
Для преобразования различных структур точек в векторы с k измерениями для поиска ближайших соседей.
Определение в строке 351 файла kdtree.h.
Используется в pcl::KdTree< PointT >::getPointRepresentation() и pcl::KdTree< PointT >::setPointRepresentation().
sorted_
| protected |
The documentation for this class was generated from the following file:
- pcl/kdtree/kdtree.h
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_kd_tree.html