Реализует метод для извлечения признаков на основе момента инерции. Подробнее...
#include <pcl/features/moment_of_inertia_estimation.h>
Типы публичного доступа | |
| using | PointCloudConstPtr = typename pcl::PCLBase< PointT >::PointCloudConstPtr |
| using | PointIndicesConstPtr = typename pcl::PCLBase< PointT >::PointIndicesConstPtr |
|
| |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Публичные члены-функции | |
| void | setInputCloud (const PointCloudConstPtr &cloud) override |
| Предоставьте указатель на входной набор данных. Подробнее... |
|
| void | setIndices (const IndicesPtr &indices) override |
| Предоставьте указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| void | setIndices (const IndicesConstPtr &indices) override |
| Предоставьте указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| void | setIndices (const PointIndicesConstPtr &indices) override |
| Предоставьте указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| void | setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols) override |
| Установите индексы для точек, расположенных в области интереса облака точек. Подробнее... |
|
| MomentOfInertiaEstimation () | |
| Конструктор, устанавливающий значения по умолчанию для переменных-членов. Подробнее... |
|
| ~MomentOfInertiaEstimation () override | |
| Виртуальный деструктор, освобождающий память. Подробнее... |
|
| void | setAngleStep (const float step) |
| Этот метод позволяет установить шаг угла. Подробнее... |
|
| float | getAngleStep () const |
| Возвращает шаг угла. Подробнее... |
|
| void | setNormalizePointMassFlag (bool need_to_normalize) |
| Этот метод позволяет установить флаг normalize_. Подробнее... |
|
| bool | getNormalizePointMassFlag () const |
| Возвращает флаг normalize_. Подробнее... |
|
| void | setPointMass (const float point_mass) |
| Этот метод позволяет установить массу точки, которая будет использоваться для расчёта момента инерции. Подробнее... |
|
| float | getPointMass () const |
| Возвращает массу точки. Подробнее... |
|
| void | compute () |
| Этот метод запускает вычисление всех признаков. Подробнее... |
|
| bool | getAABB (PointT &min_point, PointT &max_point) const |
| Этот метод предоставляет доступ к вычисленному параллелепипеду ограничивающей оболочки. Подробнее... |
|
| bool | getOBB (PointT &min_point, PointT &max_point, PointT &position, Eigen::Matrix3f &rotational_matrix) const |
| Этот метод предоставляет доступ к вычисленному ориентированному параллелепипеду ограничивающей оболочки. Подробнее... |
|
| bool | getEigenValues (float &major, float &middle, float &minor) const |
| Этот метод предоставляет доступ к вычисленным собственным значениям. Подробнее... |
|
| bool | getEigenVectors (Eigen::Vector3f &major, Eigen::Vector3f &middle, Eigen::Vector3f &minor) const |
| Этот метод предоставляет доступ к вычисленным собственным векторам. Подробнее... |
|
| bool | getMomentOfInertia (std::vector< float > &moment_of_inertia) const |
| Этот метод предоставляет доступ к вычисленным моментам инерции. Подробнее... |
|
| bool | getEccentricity (std::vector< float > &eccentricity) const |
| Этот метод предоставляет доступ к вычисленным эксцентриситетам. Подробнее... |
|
| bool | getMassCenter (Eigen::Vector3f &mass_center) const |
| Этот метод предоставляет доступ к вычисленному центру масс. Подробнее... |
|
|
| |
| PCLBase () | |
| Пустой конструктор. Подробнее... |
|
| PCLBase (const PCLBase &base) | |
| Конструктор копирования. Подробнее... |
|
| virtual | ~PCLBase ()=default |
| Деструктор. Подробнее... |
|
| PointCloudConstPtr const | getInputCloud () const |
| Получить указатель на набор данных входного облака точек. Подробнее... |
|
| IndicesPtr | getIndices () |
| Получить указатель на вектор индексов, используемых. Подробнее... |
|
| IndicesConstPtr const | getIndices () const |
| Получить указатель на вектор индексов, используемых. Подробнее... |
|
| const PointT & | operator[] (std::size_t pos) const |
| Переопределить PointCloud operator[] для сокращения кода. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| bool | initCompute () |
| Этот метод должен быть вызван перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен быть вызван после завершения фактического вычисления. Подробнее... |
|
|
| |
| PointCloudConstPtr | input_ |
| Входные данные облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| bool | use_indices_ |
| Устанавливается в true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, мы создаём набор фиктивных индексов, имитирующих входное PointCloud. Подробнее... |
|
Подробное описание
шаблон<typename PointT>
класс pcl::MomentOfInertiaEstimation< PointT >
Реализует метод для извлечения признаков, основанных на моменте инерции.
Он также вычисляет AABB, OBB и эксцентриситет спроецированного облака.
Определение в строке 54 файла moment_of_inertia_estimation.h.
Документация по переопределению типа члена
PointCloudConstPtr
| using pcl::MomentOfInertiaEstimation< PointT >::PointCloudConstPtr = typename pcl::PCLBase<PointT>::PointCloudConstPtr |
Определение в строке 65 файла moment_of_inertia_estimation.h.
PointIndicesConstPtr
| using pcl::MomentOfInertiaEstimation< PointT >::PointIndicesConstPtr = typename pcl::PCLBase<PointT>::PointIndicesConstPtr |
Определение в строке 66 файла moment_of_inertia_estimation.h.
Конструктор и деструктор
MomentOfInertiaEstimation()
| pcl::MomentOfInertiaEstimation< PointT >::MomentOfInertiaEstimation |
Конструктор, устанавливающий значения по умолчанию для переменных-членов.
Определение в строке 50 файла moment_of_inertia_estimation.hpp.
~MomentOfInertiaEstimation()
| override |
Виртуальный деструктор, освобождающий память.
Определение в строке 72 файла moment_of_inertia_estimation.hpp.
Документация по членам-функциям
compute()
| void pcl::MomentOfInertiaEstimation< PointT >::compute |
Этот метод запускает вычисление всех признаков.
После выполнения он устанавливает флаг is_valid_ в true, и каждый признак можно получить с помощью соответствующего метода get.
Определение в строке 134 файла moment_of_inertia_estimation.hpp.
Ссылки на pcl::computeCovarianceMatrix().
getAABB()
| bool pcl::MomentOfInertiaEstimation< PointT >::getAABB | ( | PointT & | min_point, |
| PointT & | max_point | ||
| ) | const |
Этот метод предоставляет доступ к вычисленному прямоугольному охватывающему ящику (AABB).
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) действительны, и false в противном случае.
- Параметры
-
[out] min_point минимальная точка AABB [out] max_point максимальная точка AABB
Определение в строке 201 файла moment_of_inertia_estimation.hpp.
getAngleStep()
| float pcl::MomentOfInertiaEstimation< PointT >::getAngleStep |
Возвращает шаг угла.
Определение в строке 92 файла moment_of_inertia_estimation.hpp.
getEccentricity()
| bool pcl::MomentOfInertiaEstimation< PointT >::getEccentricity | ( | std::vector< float > & | eccentricity | ) | const |
Этот метод предоставляет доступ к вычисленным эксцентриситетам.
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) действительны, и false в противном случае.
- Параметры
-
[out] eccentricity вычисленные эксцентриситеты
Определение в строке 311 файла moment_of_inertia_estimation.hpp.
getEigenValues()
| bool pcl::MomentOfInertiaEstimation< PointT >::getEigenValues | ( | float & | major, |
| float & | middle, | ||
| float & | minor | ||
| ) | const |
Этот метод предоставляет доступ к вычисленным собственным значениям.
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) действительны, и false в противном случае.
- Параметры
-
[out] major главное собственное значение [out] middle среднее собственное значение [out] minor второстепенное собственное значение
Определение в строке 279 файла moment_of_inertia_estimation.hpp.
getEigenVectors()
| bool pcl::MomentOfInertiaEstimation< PointT >::getEigenVectors | ( | Eigen::Vector3f & | major, |
| Eigen::Vector3f & | middle, | ||
| Eigen::Vector3f & | minor | ||
| ) | const |
Этот метод предоставляет доступ к вычисленным собственным векторам.
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) валидны, и false в противном случае.
- Параметры
-
[out] major ось, соответствующая собственному вектору с наибольшим собственным значением [out] middle ось, соответствующая собственному вектору со средним собственным значением [out] minor ось, соответствующая собственному вектору с наименьшим собственным значением
Определение в строке 290 файла moment_of_inertia_estimation.hpp.
getMassCenter()
| bool pcl::MomentOfInertiaEstimation< PointT >::getMassCenter | ( | Eigen::Vector3f & | mass_center | ) | const |
Этот метод предоставляет доступ к вычисленному центру масс.
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) валидны, и false в противном случае. Обратите внимание, что при вычислении центра масс облака, масса точки всегда считается равной 1.
- Параметры
-
[out] mass_center вычисленный центр масс
Определение в строке 559 файла moment_of_inertia_estimation.hpp.
getMomentOfInertia()
| bool pcl::MomentOfInertiaEstimation< PointT >::getMomentOfInertia | ( | std::vector< float > & | moment_of_inertia | ) | const |
Этот метод предоставляет доступ к вычисленным моментам инерции.
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) валидны, и false в противном случае.
- Параметры
-
[out] moment_of_inertia вычисленные моменты инерции
Определение в строке 301 файла moment_of_inertia_estimation.hpp.
getNormalizePointMassFlag()
| bool pcl::MomentOfInertiaEstimation< PointT >::getNormalizePointMassFlag |
Возвращает флаг normalize_.
Определение в строке 108 файла moment_of_inertia_estimation.hpp.
getOBB()
| bool pcl::MomentOfInertiaEstimation< PointT >::getOBB | ( | PointT & | min_point, |
| PointT & | max_point, | ||
| PointT & | position, | ||
| Eigen::Matrix3f & | rotational_matrix | ||
| ) | const |
Этот метод предоставляет доступ к вычисленному ориентированному ограничивающему прямоугольнику.
Возвращает true, если текущие значения (эксцентриситет, момент инерции и т.д.) действительны, и false в противном случае. Обратите внимание, что для получения OBB каждый вершин заданного AABB (указанного с помощью min_point и max_point) должен быть повернут с помощью заданной матрицы вращения (преобразования вращения), а затем позиционирован. Также обратите внимание, что это не минимально возможный ограничивающий прямоугольник. Это ограничивающий прямоугольник, ориентированный в соответствии с собственными векторами.
- Parameters
-
[out] min_point минимальная точка OBB [out] max_point максимальная точка OBB [out] position положение OBB [out] rotational_matrix эта матрица представляет преобразование вращения
Определение в строке 211 файла moment_of_inertia_estimation.hpp.
getPointMass()
| float pcl::MomentOfInertiaEstimation< PointT >::getPointMass |
Возвращает массу точки.
Определение в строке 127 файла moment_of_inertia_estimation.hpp.
setAngleStep()
| void pcl::MomentOfInertiaEstimation< PointT >::setAngleStep | ( | const float | step | ) |
Этот метод позволяет установить шаг угла.
Используется для поворота оси, используемой для вычисления момента инерции/эксцентриситета.
- Parameters
-
[in] step шаг угла
Определение в строке 80 файла moment_of_inertia_estimation.hpp.
setIndices() [1/4]
| overridevirtual |
Указывает указатель на вектор индексов, представляющий входные данные.
- Parameters
-
[in] indices указатель на вектор индексов, представляющий входные данные.
Реализация из pcl::PCLBase< PointT >.
Определение в строке 584 файла moment_of_inertia_estimation.hpp.
Ссылки на pcl::PCLBase< PointT >::setIndices().
setIndices() [2/4]
| overridevirtual |
Указывает указатель на вектор индексов, представляющий входные данные.
- Parameters
-
[in] indices указатель на вектор индексов, представляющий входные данные.
Реализация из pcl::PCLBase< PointT >.
Определение в строке 576 файла moment_of_inertia_estimation.hpp.
Ссылки на pcl::PCLBase< PointT >::setIndices().
setIndices() [3/4]
| overridevirtual |
Указывает указатель на вектор индексов, представляющий входные данные.
- Parameters
-
[in] indices указатель на вектор индексов, представляющий входные данные.
Реализация из pcl::PCLBase< PointT >.
Определение в строке 592 файла moment_of_inertia_estimation.hpp.
Ссылки на pcl::PCLBase< PointT >::setIndices().
setIndices() [4/4]
| overridevirtual |
Установите индексы для точек, лежащих в области интереса облака точек.
- Примечание
- не следует вызывать этот метод для неупорядоченных облаков точек!
- Параметры
-
[in] row_start смещение по строкам [in] col_start смещение по столбцам [in] nb_rows количество строк для рассмотрения, включая строку row_start [in] nb_cols количество столбцов для рассмотрения, включая столбец col_start
Переопределено из pcl::PCLBase< PointT >.
Определение в строке 600 файла moment_of_inertia_estimation.hpp.
Ссылается на pcl::PCLBase< PointT >::setIndices().
setInputCloud()
| overridevirtual |
Укажите указатель на входные данные.
- Параметры
-
[in] cloud постоянный boost shared указатель на сообщение PointCloud
Переопределено из pcl::PCLBase< PointT >.
Определение в строке 568 файла moment_of_inertia_estimation.hpp.
Ссылается на pcl::PCLBase< PointT >::setInputCloud().
setNormalizePointMassFlag()
|
Этот метод позволяет установить флаг normalize_.
Если значение false, то point_mass_ будет использоваться для масштабирования значений момента инерции. В противном случае point_mass_ будет установлен в 1 / number_of_points. Значение по умолчанию - true.
- Параметры
-
[in] need_to_normalize требуемое значение
Определение в строке 99 файла moment_of_inertia_estimation.hpp.
setPointMass()
|
Этот метод позволяет задать массу точки, которая будет использоваться для расчета момента инерции.
Это необходимо для масштабирования значений момента инерции. Значение по умолчанию - 0.0001.
- Параметры
-
[in] point_mass масса точки
Определение в строке 115 файла moment_of_inertia_estimation.hpp.
The documentation for this class was generated from the following files:
- pcl/features/moment_of_inertia_estimation.h
- pcl/features/impl/moment_of_inertia_estimation.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_moment_of_inertia_estimation.html