PrincipalCurvaturesEstimation оценивает направления (собственные векторы) и величины (собственные значения) главных кривизн поверхности для заданного облака точек, содержащего точки и нормали. Подробнее...
#include <pcl/features/principal_curvatures.h>
Публичные типы | |
| using | Ptr = shared_ptr< PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT > > |
| using | ConstPtr = shared_ptr< const PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT > > |
| using | PointCloudOut = typename Feature< PointInT, PointOutT >::PointCloudOut |
| using | PointCloudIn = pcl::PointCloud< PointInT > |
|
| |
| using | PointCloudN = pcl::PointCloud< PointNT > |
| using | PointCloudNPtr = typename PointCloudN::Ptr |
| using | PointCloudNConstPtr = typename PointCloudN::ConstPtr |
| using | Ptr = shared_ptr< FeatureFromNormals< PointInT, PointNT, pcl::PrincipalCurvatures > > |
| using | ConstPtr = shared_ptr< const FeatureFromNormals< PointInT, PointNT, pcl::PrincipalCurvatures > > |
|
| |
| 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 |
Общедоступные члены-функции | |
| PrincipalCurvaturesEstimation () | |
| Пустой конструктор. Подробнее... |
|
| void | computePointPrincipalCurvatures (const pcl::PointCloud< PointNT > &normals, int p_idx, const pcl::Indices &indices, float &pcx, float &pcy, float &pcz, float &pc1, float &pc2) |
| Выполнить анализ главных компонент (PCA) по нормалям точки на поверхности в касательной плоскости данной нормали точки и вернуть главную кривизну (собственный вектор максимального собственного значения), а также максимальное (pc1) и минимальное (pc2) собственные значения. Подробнее... |
|
|
| |
| 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 |
| получить количество k ближайших соседей, используемых для оценки функции. Подробнее... |
|
| 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[] для сокращения кода. Подробнее... |
|
Защищенные члены класса | |
| void | computeFeature (PointCloudOut &output) override |
| Вычислить главную кривизну (собственный вектор максимального собственного значения), а также максимальное (pc1) и минимальное (pc2) собственные значения для всех точек, заданных в <setInputCloud (), setIndices ()> с использованием поверхности в setSearchSurface () и пространственного локализатора в setSearchMethod () Подробнее... |
|
|
| |
| virtual bool | initCompute () |
| Этот метод должен вызываться перед началом фактического вычисления. Подробнее... |
|
|
| |
| 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 () |
| Этот метод должен вызываться после завершения фактического вычисления. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| 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_ |
| Если набор индексов не задан, создаётся набор фиктивных индексов, имитирующих входное облако точек. Подробнее... |
|
Подробное описание
template<typename PointInT, typename PointNT, typename PointOutT = pcl::PrincipalCurvatures>
class pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >
PrincipalCurvaturesEstimation вычисляет направления (собственные векторы) и величины (собственные значения) главных кривизн поверхности для заданного облака точек, содержащего точки и нормали.
Рекомендуемый тип PointOutT — pcl::PrincipalCurvatures.
- Note
- Код имеет состояние, так как мы не ожидаем, что этот класс будет многопоточно паралелизован. Обратитесь к NormalEstimationOMP для примера расширения этого класса до параллельных реализаций.
Определение в строке 59 файла principal_curvatures.h.
Документация typedef членов
ConstPtr
| using pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::ConstPtr = shared_ptr<const PrincipalCurvaturesEstimation<PointInT, PointNT, PointOutT> > |
Определение в строке 63 файла principal_curvatures.h.
PointCloudIn
| using pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::PointCloudIn = pcl::PointCloud<PointInT> |
Определение в строке 74 файла principal_curvatures.h.
PointCloudOut
| using pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::PointCloudOut = typename Feature<PointInT, PointOutT>::PointCloudOut |
Определение в строке 73 файла principal_curvatures.h.
Ptr
| using pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::Ptr = shared_ptr<PrincipalCurvaturesEstimation<PointInT, PointNT, PointOutT> > |
Определение в строке 62 файла principal_curvatures.h.
Документация конструкторов и деструкторов
PrincipalCurvaturesEstimation()
| inline |
Пустой конструктор.
Определение в строке 77 файла principal_curvatures.h.
Ссылки на pcl::Feature< PointInT, PointOutT >::feature_name_.
Документация функций-членов
computeFeature()
| overrideprotectedvirtual |
Вычисляет главную кривизну (собственный вектор максимального собственного значения), а также максимальное (pc1) и минимальное (pc2) собственные значения для всех точек, заданных в <setInputCloud (), setIndices ()>, используя поверхность в setSearchSurface () и пространственный локатор в setSearchMethod ().
- Parameters
-
[out] output результирующее облако точек, содержащее оценки главных кривизн
Реализует pcl::Feature< PointInT, PointOutT >.
Определение в строке 115 файла principal_curvatures.hpp.
Ссылки на pcl::PointCloud< PointT >::is_dense и pcl::isFinite().
computePointPrincipalCurvatures()
| void pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::computePointPrincipalCurvatures | ( | const pcl::PointCloud< PointNT > & | normals, |
| int | p_idx, | ||
| const pcl::Indices & | indices, | ||
| float & | pcx, | ||
| float & | pcy, | ||
| float & | pcz, | ||
| float & | pc1, | ||
| float & | pc2 | ||
| ) |
Выполнить анализ главных компонент (PCA) для нормалей точки на поверхности в касательной плоскости заданной нормали точки и вернуть главную кривизну (собственный вектор максимального собственного значения), а также максимальное (pc1) и минимальное (pc2) собственные значения.
- Параметры
-
[in] normals облако точек нормалей [in] p_idx точка запроса, по которой оценивается плоскость наименьших квадратов [in] indices индексы облака точек, которые необходимо использовать [out] pcx направление главной кривизны по оси X [out] pcy направление главной кривизны по оси Y [out] pcz направление главной кривизны по оси Z [out] pc1 максимальное собственное значение кривизны [out] pc2 минимальное собственное значение кривизны
Определение в строке 50 файла principal_curvatures.hpp.
Ссылается на pcl::computeCorrespondingEigenVector() и pcl::eigen33().
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/features/principal_curvatures.h
- pcl/features/impl/principal_curvatures.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_principal_curvatures_estimation.html