Spec-Zone.ru › PointCloudLibrary

Реализует метод извлечения признаков на основе момента инерции. Подробнее...

#include <pcl/features/moment_of_inertia_estimation.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Общедоступные типы

using PointCloudConstPtr = typename pcl::PCLBase< PointT >::PointCloudConstPtr
using PointIndicesConstPtr = typename pcl::PCLBase< PointT >::PointIndicesConstPtr
- Общедоступные типы, унаследованные от pcl::PCLBase< PointT >
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
Этот метод предоставляет доступ к вычисленному центру масс. Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::PCLBase< PointT >
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, чтобы сократить код. Подробнее...

Дополнительные унаследованные члены

- Защищённые функции-члены, унаследованные от pcl::PCLBase< PointT >
bool initCompute ()
Этот метод следует вызывать перед началом собственно вычислений. Подробнее...
bool deinitCompute ()
Этот метод следует вызывать после завершения собственно вычислений. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::PCLBase< PointT >
PointCloudConstPtr input_
Входной набор данных облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор используемых индексов точек. Подробнее...
bool use_indices_
Установите значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, мы создаём фиктивный набор индексов, соответствующий входному облаку точек. Подробнее...

Подробное описание

template<typename PointT>
class pcl::MomentOfInertiaEstimation< PointT >

Реализует метод извлечения признаков на основе момента инерции.

Также вычисляет AABB, OBB и эксцентриситет спроецированного облака.

Определение находится в строке 54 файла moment_of_inertia_estimation.h.

Документация по псевдонимам типов-членов

PointCloudConstPtr

template<typename PointT >
using pcl::MomentOfInertiaEstimation< PointT >::PointCloudConstPtr = typename pcl::PCLBase<PointT>::PointCloudConstPtr

Определение находится в строке 65 файла moment_of_inertia_estimation.h.

PointIndicesConstPtr

template<typename PointT >
using pcl::MomentOfInertiaEstimation< PointT >::PointIndicesConstPtr = typename pcl::PCLBase<PointT>::PointIndicesConstPtr

Определение находится в строке 66 файла moment_of_inertia_estimation.h.

Документация по конструкторам и деструкторам

MomentOfInertiaEstimation()

template<typename PointT >
pcl::MomentOfInertiaEstimation< PointT >::MomentOfInertiaEstimation

Конструктор, задающий значения по умолчанию для переменных-членов.

Определение находится в строке 50 файла moment_of_inertia_estimation.hpp.

~MomentOfInertiaEstimation()

template<typename PointT >
pcl::MomentOfInertiaEstimation< PointT >::~MomentOfInertiaEstimation
override

Виртуальный деструктор, освобождающий память.

Определение находится в строке 67 файла moment_of_inertia_estimation.hpp.

Документация по функциям-членам

compute()

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::compute

Этот метод запускает вычисление всех признаков.

После выполнения он устанавливает флаг is_valid_ в значение true, и к каждому признаку можно получить доступ с помощью соответствующего метода get.

Определение находится в строке 129 файла moment_of_inertia_estimation.hpp.

Ссылки: pcl::computeCovarianceMatrix().

getAABB()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getAABB ( PointT & min_point,
PointT & max_point
) const

Этот метод предоставляет доступ к вычисленному ограничивающему параллелепипеду, выровненному по осям.

Он возвращает true, если текущие значения (эксцентриситет, момент инерции и т. д.) действительны, и false в противном случае.

Параметры
[out] min_point минимальная точка AABB
[out] max_point максимальная точка AABB

Определение находится в строке 196 файла moment_of_inertia_estimation.hpp.

getAngleStep()

template<typename PointT >
float pcl::MomentOfInertiaEstimation< PointT >::getAngleStep

Возвращает шаг угла.

Определение находится в строке 87 файла moment_of_inertia_estimation.hpp.

getEccentricity()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getEccentricity ( std::vector< float > & eccentricity ) const

Этот метод предоставляет доступ к вычисленным значениям эксцентриситета.

Он возвращает true, если текущие значения (эксцентриситет, момент инерции и т. д.) действительны, и false в противном случае.

Параметры
[out] eccentricity вычисленные значения эксцентриситета

Определение находится в строке 306 файла moment_of_inertia_estimation.hpp.

getEigenValues()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getEigenValues ( float & major,
float & middle,
float & minor
) const

Этот метод предоставляет доступ к вычисленным собственным значениям.

Он возвращает true, если текущие значения (эксцентриситет, момент инерции и т. д.) действительны, и false в противном случае.

Параметры
[out] major наибольшее собственное значение
[out] middle среднее собственное значение
[out] minor наименьшее собственное значение

Определение находится в строке 274 файла moment_of_inertia_estimation.hpp.

getEigenVectors()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getEigenVectors ( Eigen::Vector3f & major,
Eigen::Vector3f & middle,
Eigen::Vector3f & minor
) const

Этот метод предоставляет доступ к вычисленным собственным векторам.

Он возвращает true, если текущие значения (эксцентриситет, момент инерции и т. д.) действительны, и false в противном случае.

Параметры
[out] major ось, соответствующая собственному вектору с наибольшим собственным значением
[out] middle ось, соответствующая собственному вектору со средним собственным значением
[out] minor ось, соответствующая собственному вектору с наименьшим собственным значением

Определение находится в строке 285 файла moment_of_inertia_estimation.hpp.

getMassCenter()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getMassCenter ( Eigen::Vector3f & mass_center ) const

Этот метод предоставляет доступ к вычисленному центру масс.

Он возвращает true, если текущие значения (эксцентриситет, момент инерции и т. д.) действительны, и false в противном случае. Обратите внимание, что при вычислении центра масс облака масса каждой точки считается равной 1.

Параметры
[out] mass_center вычисленный центр масс

Определение находится в строке 551 файла moment_of_inertia_estimation.hpp.

getMomentOfInertia()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getMomentOfInertia ( std::vector< float > & moment_of_inertia ) const

Этот метод предоставляет доступ к вычисленным моментам инерции.

Он возвращает true, если текущие значения (эксцентриситет, момент инерции и т. д.) действительны, и false в противном случае.

Параметры
[out] moment_of_inertia вычисленные моменты инерции

Определение находится в строке 296 файла moment_of_inertia_estimation.hpp.

getNormalizePointMassFlag()

template<typename PointT >
bool pcl::MomentOfInertiaEstimation< PointT >::getNormalizePointMassFlag

Возвращает флаг normalize_.

Определение находится в строке 103 файла moment_of_inertia_estimation.hpp.

getOBB()

template<typename PointT >
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) необходимо повернуть с помощью заданной матрицы вращения (преобразования вращения), а затем сместить в заданное положение. Также следует учитывать, что это не минимально возможный ограничивающий параллелепипед. Этот параллелепипед ориентирован в соответствии с собственными векторами.

Параметры
[out] min_point минимальная точка OBB
[out] max_point максимальная точка OBB
[out] position положение OBB
[out] rotational_matrix эта матрица задаёт преобразование вращения

Определение находится в строке 206 файла moment_of_inertia_estimation.hpp.

getPointMass()

template<typename PointT >
float pcl::MomentOfInertiaEstimation< PointT >::getPointMass

Возвращает массу точки.

Определение находится в строке 122 файла moment_of_inertia_estimation.hpp.

setAngleStep()

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setAngleStep ( const float step )

Этот метод позволяет задать шаг угла.

Он используется для вращения оси, применяемой при вычислении момента инерции и эксцентриситета.

Параметры
[in] step шаг угла

Определение находится в строке 75 файла moment_of_inertia_estimation.hpp.

setIndices() [1/4]

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setIndices ( const IndicesConstPtr & indices )
overridevirtual

Передаёт указатель на вектор индексов, представляющий входные данные.

Параметры
[in] indices указатель на вектор индексов, представляющий входные данные.

Переопределяет метод из pcl::PCLBase< PointT >.

Определение находится в строке 576 файла moment_of_inertia_estimation.hpp.

Ссылки: pcl::PCLBase< PointT >::setIndices().

setIndices() [2/4]

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setIndices ( const IndicesPtr & indices )
overridevirtual

Предоставляет указатель на вектор индексов, представляющий входные данные.

Параметры
[in] indices указатель на вектор индексов, представляющий входные данные.

Переопределено из pcl::PCLBase< PointT >.

Определение в строке 568 файла moment_of_inertia_estimation.hpp.

Ссылки на pcl::PCLBase< PointT >::setIndices().

setIndices() [3/4]

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setIndices ( const PointIndicesConstPtr & indices )
overridevirtual

Предоставляет указатель на вектор индексов, представляющий входные данные.

Параметры
[in] indices указатель на вектор индексов, представляющий входные данные.

Переопределено из pcl::PCLBase< PointT >.

Определение в строке 584 файла moment_of_inertia_estimation.hpp.

Ссылки на pcl::PCLBase< PointT >::setIndices().

setIndices() [4/4]

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setIndices ( std::size_t row_start,
std::size_t col_start,
std::size_t nb_rows,
std::size_t nb_cols
)
overridevirtual

Задаёт индексы точек, расположенных в интересующей области облака точек.

Примечание
не следует вызывать этот метод для неорганизованных облаков точек!
Параметры
[in] row_start смещение по строкам
[in] col_start смещение по столбцам
[in] nb_rows количество учитываемых строк, включая row_start
[in] nb_cols количество учитываемых столбцов, включая col_start

Переопределено из pcl::PCLBase< PointT >.

Определение в строке 592 файла moment_of_inertia_estimation.hpp.

Ссылки на pcl::PCLBase< PointT >::setIndices().

setInputCloud()

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setInputCloud ( const PointCloudConstPtr & cloud )
overridevirtual

Предоставляет указатель на входной набор данных.

Параметры
[in] cloud константный общий указатель Boost на сообщение PointCloud

Переопределено из pcl::PCLBase< PointT >.

Определение в строке 560 файла moment_of_inertia_estimation.hpp.

Ссылки на pcl::PCLBase< PointT >::setInputCloud().

setNormalizePointMassFlag()

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setNormalizePointMassFlag ( bool need_to_normalize )

Этот метод позволяет задать флаг normalize_.

Если задано значение false, для масштабирования значений момента инерции будет использоваться point_mass_. В противном случае point_mass_ будет равен 1 / number_of_points. Значение по умолчанию — true.

Параметры
[in] need_to_normalize требуемое значение

Определение в строке 94 файла moment_of_inertia_estimation.hpp.

setPointMass()

template<typename PointT >
void pcl::MomentOfInertiaEstimation< PointT >::setPointMass ( const float point_mass )

Этот метод позволяет задать массу точки, используемую при вычислении момента инерции.

Она нужна для масштабирования значений момента инерции. Значение по умолчанию — 0.0001.

Параметры
[in] point_mass масса точки

Определение в строке 110 файла moment_of_inertia_estimation.hpp.


Документация этого класса создана на основе следующих файлов:
  • 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API