Spec-Zone.ru › PointCloudLibrary

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

Обзор

Библиотека pcl_common содержит общие структуры данных и методы, используемые большинством библиотек PCL. Основные структуры данных включают класс PointCloud и множество типов точек, которые используются для представления точек, нормалей к поверхностям, значений RGB-цвета, описателей признаков и т. д. Она также содержит множество функций для вычисления расстояний/норм, средних и ковариаций, преобразований углов, геометрических преобразований и многого другого.

Требования

  • нет

Классы

class pcl::BivariatePolynomialT< real >
Это представляет бивариантный многочлен и предоставляет некоторые функции для него. Подробнее...
class pcl::CentroidPoint< PointT >
Общий класс, который вычисляет центр масс точек, подаваемых ему. Подробнее...
struct pcl::NdConcatenateFunctor< PointInT, PointOutT >
Вспомогательная структура-функтор для конкатенации. Подробнее...
class pcl::FeatureHistogram
Тип гистограмм для вычисления среднего и дисперсии некоторых чисел с плавающей точкой. Подробнее...
class pcl::GaussianKernel
Класс GaussianKernel собирает все методы для вычисления, свёртки, сглаживания, вычисления градиентов изображения с использованием гауссова ядра. Подробнее...
class pcl::PCA< PointT >
Класс анализа главных компонент (PCA). Подробнее...
class pcl::PiecewiseLinearFunction
Это предоставляет функции для эффективного возврата значений для кусково-линейной функции. Подробнее...
class pcl::PolynomialCalculationsT< real >
Это предоставляет некоторые функции для многочленов, такие как нахождение корней или приближение бивариантных многочленов. Подробнее...
class pcl::PosesFromMatches
вычисление 3D преобразования на основе соответствий точек Подробнее...
class pcl::StopWatch
Простая стоп-часов. Подробнее...
class pcl::ScopeTime
Класс для измерения времени, затраченного на область видимости. Подробнее...
class pcl::EventFrequency
Вспомогательный класс для измерения частоты определенного события. Подробнее...
class pcl::TimeTrigger
Класс таймера, вызывающий зарегистрированные методы обратного вызова периодически. Подробнее...
class pcl::TransformationFromCorrespondences
Вычисляет преобразование на основе соответствующих 3D точек. Подробнее...
class pcl::VectorAverage< real, dimension >
Вычисляет взвешенное среднее и ковариационную матрицу. Подробнее...
struct pcl::Correspondence
Correspondence представляет соответствие между двумя сущностями (например, точками, дескрипторами и т. д.). Подробнее...
struct pcl::PointCorrespondence3D
Представление (возможного) соответствия между двумя 3D точками в двух разных системах координат (например, Подробнее...
struct pcl::PointCorrespondence6D
Представление (возможного) соответствия между двумя точками (например, Подробнее...
struct pcl::PointXYZ
Структура точки, представляющая евклидовы координаты xyz. Подробнее...
struct pcl::Intensity
Структура точки, представляющая градации серого в одноканальных изображениях. Подробнее...
struct pcl::Intensity8u
Структура точки, представляющая градации серого в одноканальных изображениях. Подробнее...
struct pcl::Intensity32u
Структура точки, представляющая градации серого в одноканальных изображениях. Подробнее...
struct pcl::_PointXYZI
Структура точки, представляющая евклидовы координаты xyz и значение интенсивности. Подробнее...
struct pcl::PointXYZRGBA
Структура точки, представляющая евклидовы координаты xyz и цвет RGBA. Подробнее...
struct pcl::PointXYZRGB
A point structure representing Euclidean xyz coordinates, and the RGB color. Подробнее...
struct pcl::PointXYZLAB
A point structure representing Euclidean xyz coordinates, and the CIELAB color. Подробнее...
struct pcl::PointXY
A 2D point structure representing Euclidean xy coordinates. Подробнее...
struct pcl::PointUV
A 2D point structure representing pixel image coordinates. Подробнее...
struct pcl::InterestPoint
A point structure representing an interest point with Euclidean xyz coordinates, and an interest value. Подробнее...
struct pcl::Normal
A point structure representing normal coordinates and the surface curvature estimate. Подробнее...
struct pcl::Axis
A point structure representing an Axis using its normal coordinates. Подробнее...
struct pcl::PointNormal
A point structure representing Euclidean xyz coordinates, together with normal coordinates and the surface curvature estimate. Подробнее...
struct pcl::PointXYZRGBNormal
A point structure representing Euclidean xyz coordinates, and the RGB color, together with normal coordinates and the surface curvature estimate. Подробнее...
struct pcl::PointXYZINormal
A point structure representing Euclidean xyz coordinates, intensity, together with normal coordinates and the surface curvature estimate. Подробнее...
struct pcl::PointXYZLNormal
A point structure representing Euclidean xyz coordinates, a label, together with normal coordinates and the surface curvature estimate. Подробнее...
struct pcl::PointWithRange
A point structure representing Euclidean xyz coordinates, padded with an extra range float. Подробнее...
struct pcl::PointWithViewpoint
A point structure representing Euclidean xyz coordinates together with the viewpoint from which it was seen. Подробнее...
struct pcl::MomentInvariants
A point structure representing the three moment invariants. Подробнее...
struct pcl::PrincipalRadiiRSD
A point structure representing the minimum and maximum surface radii (in meters) computed using RSD. Подробнее...
struct pcl::Boundary
A point structure representing a description of whether a point is lying on a surface boundary or not. Подробнее...
struct pcl::PrincipalCurvatures
A point structure representing the principal curvatures and their magnitudes. Подробнее...
struct pcl::PFHSignature125
A point structure representing the Point Feature Histogram (PFH). Подробнее...
struct pcl::PFHRGBSignature250
A point structure representing the Point Feature Histogram with colors (PFHRGB). Подробнее...
struct pcl::PPFSignature
A point structure for storing the Point Pair Feature (PPF) values. Подробнее...
struct pcl::CPPFSignature
A point structure for storing the Point Pair Feature (CPPF) values. Подробнее...
struct pcl::PPFRGBSignature
A point structure for storing the Point Pair Color Feature (PPFRGB) values. Подробнее...
struct pcl::NormalBasedSignature12
Структура точки, представляющая подпись на основе нормали для матрицы признаков 4x3. Подробнее...
struct pcl::ShapeContext1980
Структура точки, представляющая контекст формы. Подробнее...
struct pcl::UniqueShapeContext1960
Структура точки, представляющая уникальный контекст формы. Подробнее...
struct pcl::SHOT352
Структура точки, представляющая общий тип подписи гистограмм ориентаций (SHOT) — только форма. Подробнее...
struct pcl::SHOT1344
Структура точки, представляющая общий тип подписи гистограмм ориентаций (SHOT) — форма + цвет. Подробнее...
struct pcl::_ReferenceFrame
Структура, представляющая локальную систему координат точки. Подробнее...
struct pcl::FPFHSignature33
Структура точки, представляющая быструю гистограмму признаков точки (FPFH). Подробнее...
struct pcl::VFHSignature308
Структура точки, представляющая гистограмму признаков с точки зрения наблюдателя (VFH). Подробнее...
struct pcl::GRSDSignature21
Структура точки, представляющая глобальный радиус-базированный дескриптор поверхности (GRSD). Подробнее...
struct pcl::BRISKSignature512
Структура точки, представляющая бинарные устойчивые инвариантные масштабируемые ключевые точки (BRISK). Подробнее...
struct pcl::ESFSignature640
Структура точки, представляющая ансамбль функций формы (ESF). Подробнее...
struct pcl::GASDSignature512
Структура точки, представляющая глобально выровненное пространственное распределение (GASD) — дескриптор формы. Подробнее...
struct pcl::GASDSignature984
Структура точки, представляющая глобально выровненное пространственное распределение (GASD) — дескриптор формы и цвета. Подробнее...
struct pcl::GASDSignature7992
Структура точки, представляющая глобально выровненное пространственное распределение (GASD) — дескриптор формы и цвета. Подробнее...
struct pcl::GFPFHSignature16
Структура точки, представляющая дескриптор GFPFH с 16 бинами. Подробнее...
struct pcl::Narf36
Структура точки, представляющая дескриптор Narf. Подробнее...
struct pcl::BorderDescription
Структура для хранения информации о том, лежит ли точка в диапазоне изображения на границе между препятствием и фоном. Подробнее...
struct pcl::IntensityGradient
Структура точки, представляющая градиент интенсивности облака точек XYZI. Подробнее...
struct pcl::Histogram< N >
Структура точки, представляющая N-мерную гистограмму. Подробнее...
struct pcl::PointWithScale
Структура точки, представляющая 3D положение и масштаб. Подробнее...
struct pcl::PointSurfel
Сурфель, то есть структура точки, представляющая евклидовы координаты xyz, вместе с нормальными координатами, цветом RGBA, радиусом, значением доверия и оценкой кривизны поверхности. Подробнее...
struct pcl::PointDEM
Структура точки, представляющая цифровую модель рельефа. Подробнее...
class pcl::PCLBase< PointT >
Базовый класс PCL. Подробнее...
class pcl::cuda::ScopeTimeCPU
Класс для измерения времени, затрачиваемого в области видимости. Подробнее...
struct pcl::GradientXY
Структура точки, представляющая евклидовы координаты xyz и значение интенсивности. Подробнее...

Файлы

файл angles.h
Определение стандартных C методов для вычисления углов.
файл centroid.h
Определение методов для оценки центра масс и вычисления матрицы ковариации.
файл common.h
Определение стандартных C методов и C++ классов, общих для всех методов.
файл distances.h
Определение стандартных C методов для вычисления расстояний.
файл file_io.h
Определение некоторых вспомогательных функций для чтения и записи файлов.
файл random.h
Класс CloudGenerator генерирует облако точек, используя генератор случайных чисел.
файл geometry.h
Определяет некоторые геометрические функции и служебные функции.
файл intersections.h
Определяет функции пересечения прямых.
файл norms.h
Определение стандартных C методов для вычисления различных норм.
файл geometry.h
Определяет некоторые геометрические функции и служебные функции.
файл time.h
Определение методов для измерения времени, затраченного на блоки кода.
файл memory.h
Определяет функции, макросы и атрибуты для выделения и использования памяти.
файл pcl_macros.h
Определяет все используемые макросы PCL и не-PCL.
файл point_types.h
Определяет все реализованные типы точек PCL.
файл types.h
Определяет базовые типы, не являющиеся точками, используемые PCL.

Макросы

#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Макрос, сигнализирующий о том, что класс требует пользовательского аллокатора. Подробнее...
#define PCL_FALLTHROUGH
Макрос для добавления атрибута no-op или fallthrough, основанного на функции компилятора. Подробнее...

Определения типов

using pcl::BorderTraits = std::bitset< 32 >
Тип данных для хранения расширенной информации о переходе от переднего плана к фонуСпецификация полей для BorderDescription::traits. Подробнее...

Перечисления

перечисление pcl::NormType {
pcl::L1 , pcl::L2_SQR , pcl::L2 , pcl::LINF ,
pcl::JM , pcl::B , pcl::SUBLINEAR , pcl::CS ,
pcl::DIV , pcl::PF , pcl::K , pcl::KL ,
pcl::HIK
}
Перечисление, определяющее все типы норм. Подробнее...
перечисление pcl::BorderTrait {
pcl::BORDER_TRAIT__OBSTACLE_BORDER , pcl::BORDER_TRAIT__SHADOW_BORDER , pcl::BORDER_TRAIT__VEIL_POINT , pcl::BORDER_TRAIT__SHADOW_BORDER_TOP ,
pcl::BORDER_TRAIT__SHADOW_BORDER_RIGHT , pcl::BORDER_TRAIT__SHADOW_BORDER_BOTTOM , pcl::BORDER_TRAIT__SHADOW_BORDER_LEFT , pcl::BORDER_TRAIT__OBSTACLE_BORDER_TOP ,
pcl::BORDER_TRAIT__OBSTACLE_BORDER_RIGHT , pcl::BORDER_TRAIT__OBSTACLE_BORDER_BOTTOM , pcl::BORDER_TRAIT__OBSTACLE_BORDER_LEFT , pcl::BORDER_TRAIT__VEIL_POINT_TOP ,
pcl::BORDER_TRAIT__VEIL_POINT_RIGHT , pcl::BORDER_TRAIT__VEIL_POINT_BOTTOM , pcl::BORDER_TRAIT__VEIL_POINT_LEFT
}
Определение полей для BorderDescription::traits. Подробнее...

Функции

float pcl::rad2deg (float alpha)
Преобразовать угол из радианов в градусы. Подробнее...
float pcl::deg2rad (float alpha)
Преобразовать угол из градусов в радианы. Подробнее...
double pcl::rad2deg (double alpha)
Преобразовать угол из радианов в градусы. Подробнее...
double pcl::deg2rad (double alpha)
Преобразовать угол из градусов в радианы. Подробнее...
float pcl::normAngle (float alpha)
Нормализовать угол до (-PI, PI]. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid (ConstCloudIterator< PointT > &cloud_iterator, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить 3D (X-Y-Z) центроид набора точек и вернуть его в виде 3D вектора. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid (const pcl::PointCloud< PointT > &cloud, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить 3D (X-Y-Z) центроид набора точек и вернуть его в виде 3D вектора. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid (const pcl::PointCloud< PointT > &cloud, const Indices &indices, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить 3D (X-Y-Z) центроид набора точек, используя их индексы, и вернуть его в виде 3D вектора. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить 3D (X-Y-Z) центроид набора точек, используя их индексы, и вернуть его в виде 3D вектора. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить 3x3 ковариационную матрицу данного набора точек. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrixNormalized (const pcl::PointCloud< PointT > &cloud, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить нормированную 3x3 ковариационную матрицу данного набора точек. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const Indices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить 3x3 ковариационную матрицу данного набора точек, используя их индексы. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить 3x3 ковариационную матрицу данного набора точек, используя их индексы. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrixNormalized (const pcl::PointCloud< PointT > &cloud, const Indices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить нормированную 3x3 ковариационную матрицу данного набора точек, используя их индексы. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrixNormalized (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить нормированную 3x3 ковариационную матрицу данного набора точек, используя их индексы. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeMeanAndCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить нормированную 3x3 ковариационную матрицу и центроид данного набора точек в одном цикле. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeMeanAndCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const Indices &indices, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить нормированную 3x3 ковариационную матрицу и центроид данного набора точек в одном цикле. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeMeanAndCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix, Eigen::Matrix< Scalar, 4, 1 > &centroid)
Вычислить нормированную 3x3 ковариационную матрицу и центроид данного набора точек в одном цикле. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить нормированную 3x3 ковариационную матрицу для уже центрированного облака точек. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const Indices &indices, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить нормированную 3x3 ковариационную матрицу для уже центрированного облака точек. Подробнее...
template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, Eigen::Matrix< Scalar, 3, 3 > &covariance_matrix)
Вычислить нормированную 3x3 ковариационную матрицу для уже центрированного облака точек. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (ConstCloudIterator< PointT > &cloud_iterator, const Eigen::Matrix< Scalar, 4, 1 > &centroid, pcl::PointCloud< PointT > &cloud_out, int npts=0)
Вычесть центроид из облака точек и вернуть центрированное представление. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (const pcl::PointCloud< PointT > &cloud_in, const Eigen::Matrix< Scalar, 4, 1 > &centroid, pcl::PointCloud< PointT > &cloud_out)
Вычесть центроид из облака точек и вернуть центрированное представление. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (const pcl::PointCloud< PointT > &cloud_in, const Indices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, pcl::PointCloud< PointT > &cloud_out)
Вычесть центроид из облака точек и вернуть представление без среднего значения. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (const pcl::PointCloud< PointT > &cloud_in, const pcl::PointIndices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, pcl::PointCloud< PointT > &cloud_out)
Вычесть центроид из облака точек и вернуть представление без среднего значения. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (ConstCloudIterator< PointT > &cloud_iterator, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_out, int npts=0)
Вычесть центроид из облака точек и вернуть представление без среднего значения в виде матрицы Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (const pcl::PointCloud< PointT > &cloud_in, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_out)
Вычесть центроид из облака точек и вернуть представление без среднего значения в виде матрицы Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (const pcl::PointCloud< PointT > &cloud_in, const Indices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_out)
Вычесть центроид из облака точек и вернуть представление без среднего значения в виде матрицы Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::demeanPointCloud (const pcl::PointCloud< PointT > &cloud_in, const pcl::PointIndices &indices, const Eigen::Matrix< Scalar, 4, 1 > &centroid, Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_out)
Вычесть центроид из облака точек и вернуть представление без среднего значения в виде матрицы Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::computeNDCentroid (const pcl::PointCloud< PointT > &cloud, Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > &centroid)
Общее, универсальное nD-оценивание центроида для набора точек с использованием их индексов. Подробнее...
template<typename PointT , typename Scalar >
void pcl::computeNDCentroid (const pcl::PointCloud< PointT > &cloud, const Indices &indices, Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > &centroid)
Общее, универсальное nD-оценивание центроида для набора точек с использованием их индексов. Подробнее...
template<typename PointT , typename Scalar >
void pcl::computeNDCentroid (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > &centroid)
Общее, универсальное nD-оценивание центроида для набора точек с использованием их индексов. Подробнее...
template<typename PointInT , typename PointOutT >
std::size_t pcl::computeCentroid (const pcl::PointCloud< PointInT > &cloud, PointOutT &centroid)
Вычислить центроид набора точек и вернуть его как точку. Подробнее...
template<typename PointInT , typename PointOutT >
std::size_t pcl::computeCentroid (const pcl::PointCloud< PointInT > &cloud, const Indices &indices, PointOutT &centroid)
Вычислить центроид набора точек и вернуть его как точку. Подробнее...
double pcl::getAngle3D (const Eigen::Vector4f &v1, const Eigen::Vector4f &v2, const bool in_degree=false)
Вычислить наименьший угол между двумя 3D векторами в радианах (по умолчанию) или градусах. Подробнее...
double pcl::getAngle3D (const Eigen::Vector3f &v1, const Eigen::Vector3f &v2, const bool in_degree=false)
Вычислить наименьший угол между двумя 3D векторами в радианах (по умолчанию) или градусах. Подробнее...
void pcl::getMeanStd (const std::vector< float > &values, double &mean, double &stddev)
Вычислить среднее значение и стандартное отклонение массива значений. Подробнее...
template<typename PointT >
void pcl::getPointsInBox (const pcl::PointCloud< PointT > &cloud, Eigen::Vector4f &min_pt, Eigen::Vector4f &max_pt, Indices &indices)
Получить набор точек, находящихся в коробке, учитывая её границы. Подробнее...
template<typename PointT >
void pcl::getMaxDistance (const pcl::PointCloud< PointT > &cloud, const Eigen::Vector4f &pivot_pt, Eigen::Vector4f &max_pt)
Получить точку на максимальном расстоянии от заданной точки и заданного облака точек. Подробнее...
template<typename PointT >
void pcl::getMaxDistance (const pcl::PointCloud< PointT > &cloud, const Indices &indices, const Eigen::Vector4f &pivot_pt, Eigen::Vector4f &max_pt)
Получить точку на максимальном расстоянии от заданной точки и заданного облака точек. Подробнее...
template<typename PointT >
void pcl::getMinMax3D (const pcl::PointCloud< PointT > &cloud, PointT &min_pt, PointT &max_pt)
Получить минимальные и максимальные значения по каждому из 3 (x-y-z) измерений в данном облаке точек. Подробнее...
template<typename PointT >
void pcl::getMinMax3D (const pcl::PointCloud< PointT > &cloud, Eigen::Vector4f &min_pt, Eigen::Vector4f &max_pt)
Получить минимальные и максимальные значения по каждому из 3 (x-y-z) измерений в данном облаке точек. Подробнее...
template<typename PointT >
void pcl::getMinMax3D (const pcl::PointCloud< PointT > &cloud, const Indices &indices, Eigen::Vector4f &min_pt, Eigen::Vector4f &max_pt)
Получить минимальные и максимальные значения по каждому из 3 (x-y-z) измерений в данном облаке точек. Подробнее...
template<typename PointT >
void pcl::getMinMax3D (const pcl::PointCloud< PointT > &cloud, const pcl::PointIndices &indices, Eigen::Vector4f &min_pt, Eigen::Vector4f &max_pt)
Получить минимальные и максимальные значения по каждому из 3 (x-y-z) измерений в данном облаке точек. Подробнее...
template<typename PointT >
double pcl::getCircumcircleRadius (const PointT &pa, const PointT &pb, const PointT &pc)
Вычислить радиус описанной окружности для треугольника, образованного тремя точками pa, pb и pc. Подробнее...
template<typename PointT >
void pcl::getMinMax (const PointT &histogram, int len, float &min_p, float &max_p)
Получить минимальное и максимальное значения в гистограмме точек. Подробнее...
template<typename PointT >
float pcl::calculatePolygonArea (const pcl::PointCloud< PointT > &polygon)
Вычислить площадь многоугольника по заданному облаку точек, определяющему многоугольник. Подробнее...
PCL_EXPORTS void pcl::getMinMax (const pcl::PCLPointCloud2 &cloud, int idx, const std::string &field_name, float &min_p, float &max_p)
Получить минимальное и максимальное значения в гистограмме точек. Подробнее...
PCL_EXPORTS void pcl::getMeanStdDev (const std::vector< float > &values, double &mean, double &stddev)
Вычислить среднее значение и стандартное отклонение массива значений. Подробнее...
template<typename IteratorT , typename Functor >
auto pcl::computeMedian (IteratorT begin, IteratorT end, Functor f) noexcept -> std::result_of_t< Functor(decltype(*begin))>
Вычислить медиану списка значений (быстро). Подробнее...
template<typename PointInT , typename PointOutT >
void pcl::copyPoint (const PointInT &point_in, PointOutT &point_out)
Скопировать поля источника в целевую точку. Подробнее...
PCL_EXPORTS void pcl::lineToLineSegment (const Eigen::VectorXf &line_a, const Eigen::VectorXf &line_b, Eigen::Vector4f &pt1_seg, Eigen::Vector4f &pt2_seg)
Получить кратчайший 3D отрезок между двумя 3D линиями. Подробнее...
double pcl::sqrPointToLineDistance (const Eigen::Vector4f &pt, const Eigen::Vector4f &line_pt, const Eigen::Vector4f &line_dir)
Получить квадрат расстояния от точки до прямой (представленной точкой и направлением) Подробнее...
double pcl::sqrPointToLineDistance (const Eigen::Vector4f &pt, const Eigen::Vector4f &line_pt, const Eigen::Vector4f &line_dir, const double sqr_length)
Получить квадрат расстояния от точки до прямой (представленной точкой и направлением) Подробнее...
template<typename PointT >
double pcl::getMaxSegment (const pcl::PointCloud< PointT > &cloud, PointT &pmin, PointT &pmax)
Получить максимальный сегмент в заданном наборе точек и вернуть минимальные и максимальные точки. Подробнее...
template<typename PointT >
double pcl::getMaxSegment (const pcl::PointCloud< PointT > &cloud, const Indices &indices, PointT &pmin, PointT &pmax)
Получить максимальный сегмент в заданном наборе точек и вернуть минимальные и максимальные точки. Подробнее...
template<typename Matrix , typename Vector >
void pcl::eigen22 (const Matrix &mat, typename Matrix::Scalar &eigenvalue, Vector &eigenvector)
определить наименьшее собственное значение и соответствующий ему собственный вектор Подробнее...
template<typename Matrix , typename Vector >
void pcl::eigen22 (const Matrix &mat, Matrix &eigenvectors, Vector &eigenvalues)
определить наименьшее собственное значение и соответствующий ему собственный вектор Подробнее...
template<typename Matrix , typename Vector >
void pcl::computeCorrespondingEigenVector (const Matrix &mat, const typename Matrix::Scalar &eigenvalue, Vector &eigenvector)
определяет соответствующий собственный вектор заданному собственному значению симметричной положительно полуопределённой входной матрицы Подробнее...
шаблон<typename Matrix , typename Vector >
void pcl::eigen33 (const Matrix &mat, typename Matrix::Scalar &eigenvalue, Vector &eigenvector)
определяет собственный вектор и собственное значение наименьшего собственного значения симметричной положительно полуопределённой входной матрицы Подробнее...
шаблон<typename Matrix , typename Vector >
void pcl::eigen33 (const Matrix &mat, Vector &evals)
определяет собственные значения симметричной положительно полуопределённой входной матрицы Подробнее...
шаблон<typename Matrix , typename Vector >
void pcl::eigen33 (const Matrix &mat, Matrix &evecs, Vector &evals)
определяет собственные значения и соответствующие собственные векторы симметричной положительно полуопределённой входной матрицы Подробнее...
шаблон<typename Matrix >
Matrix::Scalar pcl::invert2x2 (const Matrix &matrix, Matrix &inverse)
Вычисление обратной матрицы 2x2. Подробнее...
шаблон<typename Matrix >
Matrix::Scalar pcl::invert3x3SymMatrix (const Matrix &matrix, Matrix &inverse)
Вычисление обратной матрицы 3x3 симметричной матрицы. Подробнее...
шаблон<typename Matrix >
Matrix::Scalar pcl::invert3x3Matrix (const Matrix &matrix, Matrix &inverse)
Вычисление обратной матрицы 3x3 произвольной матрицы. Подробнее...
шаблон<typename Matrix >
Matrix::Scalar pcl::determinant3x3Matrix (const Matrix &matrix)
Вычисление определителя 3x3 матрицы. Подробнее...
void pcl::getTransFromUnitVectorsZY (const Eigen::Vector3f &z_axis, const Eigen::Vector3f &y_direction, Eigen::Affine3f &transformation)
Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1) и y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
Eigen::Affine3f pcl::getTransFromUnitVectorsZY (const Eigen::Vector3f &z_axis, const Eigen::Vector3f &y_direction)
Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1) и y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
void pcl::getTransFromUnitVectorsXY (const Eigen::Vector3f &x_axis, const Eigen::Vector3f &y_direction, Eigen::Affine3f &transformation)
Получить уникальное 3D вращение, которое повернёт x_axis в (1,0,0) и y_direction в вектор с z=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
Eigen::Affine3f pcl::getTransFromUnitVectorsXY (const Eigen::Vector3f &x_axis, const Eigen::Vector3f &y_direction)
Получить уникальное 3D вращение, которое повернёт x_axis в (1,0,0) и y_direction в вектор с z=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
void pcl::getTransformationFromTwoUnitVectors (const Eigen::Vector3f &y_direction, const Eigen::Vector3f &z_axis, Eigen::Affine3f &transformation)
Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1) и y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
Eigen::Affine3f pcl::getTransformationFromTwoUnitVectors (const Eigen::Vector3f &y_direction, const Eigen::Vector3f &z_axis)
Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1) и y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
void pcl::getTransformationFromTwoUnitVectorsAndOrigin (const Eigen::Vector3f &y_direction, const Eigen::Vector3f &z_axis, const Eigen::Vector3f &origin, Eigen::Affine3f &transformation)
Получить преобразование, которое переместит origin в (0,0,0) и повернёт z_axis в (0,0,1), а y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis) Подробнее...
шаблон<typename Scalar >
void pcl::getEulerAngles (const Eigen::Transform< Scalar, 3, Eigen::Affine > &t, Scalar &roll, Scalar &pitch, Scalar &yaw)
Извлечь углы Эйлера (внутренние вращения, соглашение ZYX) из заданного преобразования. Подробнее...
template<typename Scalar >
void pcl::getTranslationAndEulerAngles (const Eigen::Transform< Scalar, 3, Eigen::Affine > &t, Scalar &x, Scalar &y, Scalar &z, Scalar &roll, Scalar &pitch, Scalar &yaw)
Извлечь x,y,z и углы Эйлера (внутренние вращения, соглашение ZYX) из заданного преобразования. Подробнее...
template<typename Scalar >
void pcl::getTransformation (Scalar x, Scalar y, Scalar z, Scalar roll, Scalar pitch, Scalar yaw, Eigen::Transform< Scalar, 3, Eigen::Affine > &t)
Создать преобразование из заданного смещения и углов Эйлера (внутренние вращения, соглашение ZYX) Подробнее...
Eigen::Affine3f pcl::getTransformation (float x, float y, float z, float roll, float pitch, float yaw)
Создать преобразование из заданного смещения и углов Эйлера (внутренние вращения, соглашение ZYX) Подробнее...
template<typename Derived >
void pcl::saveBinary (const Eigen::MatrixBase< Derived > &matrix, std::ostream &file)
Записать матрицу в поток вывода. Подробнее...
template<typename Derived >
void pcl::loadBinary (Eigen::MatrixBase< Derived > const &matrix, std::istream &file)
Прочитать матрицу из потока ввода. Подробнее...
bool pcl::lineWithLineIntersection (const Eigen::VectorXf &line_a, const Eigen::VectorXf &line_b, Eigen::Vector4f &point, double sqr_eps=1e-4)
Получить точку пересечения двух 3D линий в пространстве. Подробнее...
bool pcl::lineWithLineIntersection (const pcl::ModelCoefficients &line_a, const pcl::ModelCoefficients &line_b, Eigen::Vector4f &point, double sqr_eps=1e-4)
Получить точку пересечения двух 3D линий в пространстве. Подробнее...
int pcl::getFieldIndex (const pcl::PCLPointCloud2 &cloud, const std::string &field_name)
Получить индекс указанного поля (т.е. размер/канала) Подробнее...
template<typename PointT >
int pcl::getFieldIndex (const std::string &field_name, std::vector< pcl::PCLPointField > &fields)
Получить индекс указанного поля (т.е. размер/канала) Подробнее...
template<typename PointT >
int pcl::getFieldIndex (const std::string &field_name, const std::vector< pcl::PCLPointField > &fields)
Получить индекс указанного поля (т.е. размер/канала) Подробнее...
template<typename PointT >
std::vector< pcl::PCLPointField > pcl::getFields ()
Получить список доступных полей (т.е. размер/каналов) Подробнее...
template<typename PointT >
std::string pcl::getFieldsList (const pcl::PointCloud< PointT > &cloud)
Получить список всех доступных полей в заданном облаке. Подробнее...
std::string pcl::getFieldsList (const pcl::PCLPointCloud2 &cloud)
Получить доступные поля облака точек в виде строки, разделённой пробелами. Подробнее...
int pcl::getFieldSize (const int datatype)
Получить размер определенного типа данных поля в байтах. Подробнее...
int pcl::getFieldType (const int size, char type)
Получает тип PCLPointField по заданному размеру и типу. Подробнее...
char pcl::getFieldType (const int type)
Получает тип PCLPointField по заданному типу как char. Подробнее...
template<typename PointT >
PCL_EXPORTS bool pcl::concatenate (const pcl::PointCloud< PointT > &cloud1, const pcl::PointCloud< PointT > &cloud2, pcl::PointCloud< PointT > &cloud_out)
Конкатенация двух pcl::PointCloud<PointT> Подробнее...
PCL_EXPORTS bool pcl::concatenate (const pcl::PCLPointCloud2 &cloud1, const pcl::PCLPointCloud2 &cloud2, pcl::PCLPointCloud2 &cloud_out)
Конкатенация двух pcl::PCLPointCloud2. Подробнее...
PCL_EXPORTS bool pcl::concatenate (const pcl::PolygonMesh &mesh1, const pcl::PolygonMesh &mesh2, pcl::PolygonMesh &mesh_out)
Конкатенация двух pcl::PolygonMesh. Подробнее...
PCL_EXPORTS void pcl::copyPointCloud (const pcl::PCLPointCloud2 &cloud_in, const Indices &indices, pcl::PCLPointCloud2 &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
PCL_EXPORTS void pcl::copyPointCloud (const pcl::PCLPointCloud2 &cloud_in, const IndicesAllocator< Eigen::aligned_allocator< index_t > > &indices, pcl::PCLPointCloud2 &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
PCL_EXPORTS void pcl::copyPointCloud (const pcl::PCLPointCloud2 &cloud_in, pcl::PCLPointCloud2 &cloud_out)
Копирование полей и данных облака точек из cloud_in в cloud_out. Подробнее...
template<typename PointT , typename IndicesVectorAllocator >
void pcl::copyPointCloud (const pcl::PointCloud< PointT > &cloud_in, const IndicesAllocator< IndicesVectorAllocator > &indices, pcl::PointCloud< PointT > &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
template<typename PointT >
void pcl::copyPointCloud (const pcl::PointCloud< PointT > &cloud_in, const PointIndices &indices, pcl::PointCloud< PointT > &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
template<typename PointT >
void pcl::copyPointCloud (const pcl::PointCloud< PointT > &cloud_in, const std::vector< pcl::PointIndices > &indices, pcl::PointCloud< PointT > &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
template<typename PointInT , typename PointOutT >
void pcl::copyPointCloud (const pcl::PointCloud< PointInT > &cloud_in, pcl::PointCloud< PointOutT > &cloud_out)
Копирование всех полей из заданного облака точек в новое облако точек. Подробнее...
template<typename PointInT , typename PointOutT , typename IndicesVectorAllocator >
void pcl::copyPointCloud (const pcl::PointCloud< PointInT > &cloud_in, const IndicesAllocator< IndicesVectorAllocator > &indices, pcl::PointCloud< PointOutT > &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
template<typename PointInT , typename PointOutT >
void pcl::copyPointCloud (const pcl::PointCloud< PointInT > &cloud_in, const PointIndices &indices, pcl::PointCloud< PointOutT > &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
template<typename PointInT , typename PointOutT >
void pcl::copyPointCloud (const pcl::PointCloud< PointInT > &cloud_in, const std::vector< pcl::PointIndices > &indices, pcl::PointCloud< PointOutT > &cloud_out)
Извлечение индексов заданного облака точек как нового облака точек. Подробнее...
template<typename PointT >
void pcl::copyPointCloud (const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, int top, int bottom, int left, int right, pcl::InterpolationType border_type, const PointT &value)
Копирование облака точек внутри большего облака, интерполируя границы. Подробнее...
template<typename PointIn1T , typename PointIn2T , typename PointOutT >
void pcl::concatenateFields (const pcl::PointCloud< PointIn1T > &cloud1_in, const pcl::PointCloud< PointIn2T > &cloud2_in, pcl::PointCloud< PointOutT > &cloud_out)
Конкатенация двух наборов данных, представляющих разные поля. Подробнее...
PCL_EXPORTS bool pcl::concatenateFields (const pcl::PCLPointCloud2 &cloud1_in, const pcl::PCLPointCloud2 &cloud2_in, pcl::PCLPointCloud2 &cloud_out)
Конкатенация двух наборов данных, представляющих разные поля. Подробнее...
PCL_EXPORTS bool pcl::getPointCloudAsEigen (const pcl::PCLPointCloud2 &in, Eigen::MatrixXf &out)
Копирование XYZ-размерностей pcl::PCLPointCloud2 в формат Eigen. Подробнее...
PCL_EXPORTS bool pcl::getEigenAsPointCloud (Eigen::MatrixXf &in, pcl::PCLPointCloud2 &out)
Копирование XYZ-размерностей из Eigen MatrixXf в сообщение pcl::PCLPointCloud2. Подробнее...
template<std::size_t N>
void pcl::io::swapByte (char *bytes)
перестановка байтов порядка массива char длиной N Подробнее...
template<typename FloatVectorT >
float pcl::selectNorm (FloatVectorT A, FloatVectorT B, int dim, NormType norm_type)
Метод, вычисляющий любой тип нормы, на основе переменной norm_type. Подробнее...
template<typename FloatVectorT >
float pcl::L1_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить L1 норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::L2_Norm_SQR (FloatVectorT A, FloatVectorT B, int dim)
Вычислить квадрат L2 нормы вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::L2_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить L2 норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::Linf_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить L-бесконечность норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::JM_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить JM норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::B_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить B норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::Sublinear_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить сублинейную норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::CS_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить CS норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::Div_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить div норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::PF_Norm (FloatVectorT A, FloatVectorT B, int dim, float P1, float P2)
Вычислить PF норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::K_Norm (FloatVectorT A, FloatVectorT B, int dim, float P1, float P2)
Вычислить K норму вектора между двумя точками. Подробнее...
template<typename FloatVectorT >
float pcl::KL_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить расстояние Кульбака-Лейблера между двумя дискретными функциями плотности вероятности. Подробнее...
template<typename FloatVectorT >
float pcl::HIK_Norm (FloatVectorT A, FloatVectorT B, int dim)
Вычислить HIK норму вектора между двумя точками. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, const Eigen::Transform< Scalar, 3, Eigen::Affine > &transform, bool copy_all_fields=true)
Применить аффинное преобразование, определенное преобразованием Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, const Indices &indices, pcl::PointCloud< PointT > &cloud_out, const Eigen::Transform< Scalar, 3, Eigen::Affine > &transform, bool copy_all_fields=true)
Применить аффинное преобразование, определенное преобразованием Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, const pcl::PointIndices &indices, pcl::PointCloud< PointT > &cloud_out, const Eigen::Transform< Scalar, 3, Eigen::Affine > &transform, bool copy_all_fields=true)
Применить аффинное преобразование, определенное преобразованием Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 4, 4 > &transform, bool copy_all_fields=true)
Применить жесткое преобразование, определенное матрицей 4x4. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, const Indices &indices, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 4, 4 > &transform, bool copy_all_fields=true)
Применить жесткое преобразование, определенное матрицей 4x4. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, const pcl::PointIndices &indices, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 4, 4 > &transform, bool copy_all_fields=true)
Применить жесткое преобразование, определенное матрицей 4x4. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals (const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 4, 4 > &transform, bool copy_all_fields=true)
Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals (const pcl::PointCloud< PointT > &cloud_in, const Indices &indices, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 4, 4 > &transform, bool copy_all_fields=true)
Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals (const pcl::PointCloud< PointT > &cloud_in, const pcl::PointIndices &indices, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 4, 4 > &transform, bool copy_all_fields=true)
Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloud (const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 3, 1 > &offset, const Eigen::Quaternion< Scalar > &rotation, bool copy_all_fields=true)
Применить жесткое преобразование, определенное 3D-смещением и кватернионом. Подробнее...
template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals (const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, const Eigen::Matrix< Scalar, 3, 1 > &offset, const Eigen::Quaternion< Scalar > &rotation, bool copy_all_fields=true)
Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen. Подробнее...
void pcl::transformPointCloud (const pcl::PointCloud< pcl::PointXY > &cloud_in, pcl::PointCloud< pcl::PointXY > &cloud_out, const Eigen::Affine2f &transform, bool copy_all_fields=true)
Применить аффинное преобразование к облаку точек, имеющему точки типа PointXY. Подробнее...
template<typename PointT , typename Scalar >
PointT pcl::transformPoint (const PointT &point, const Eigen::Transform< Scalar, 3, Eigen::Affine > &transform)
Преобразовать точку с членами x,y,z. Подробнее...
template<typename PointT , typename Scalar >
PointT pcl::transformPointWithNormal (const PointT &point, const Eigen::Transform< Scalar, 3, Eigen::Affine > &transform)
Преобразовать точку с членами x,y,z,normal_x,normal_y,normal_z. Подробнее...
bool pcl::isBetterCorrespondence (const Correspondence &pc1, const Correspondence &pc2)
Компаратор для возможности сортировки вектора PointCorrespondences по их оценкам с помощью std::sort (begin(), end(), isBetterCorrespondence);. Подробнее...

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

PCL_FALLTHROUGH

#define PCL_FALLTHROUGH

#include <pcl/pcl_macros.h>

Макрос для добавления атрибута no-op или fallthrough в зависимости от возможности компилятора.

Определение в строке 433 файла pcl_macros.h.

PCL_MAKE_ALIGNED_OPERATOR_NEW

#define PCL_MAKE_ALIGNED_OPERATOR_NEW

#include <pcl/memory.h>

Значение:
 EIGEN_MAKE_ALIGNED_OPERATOR_NEW \
 using _custom_allocator_type_trait = void;

Макрос для обозначения класса, требующего пользовательского аллокатора.

Это деталь реализации, необходимая для работы pcl::has_custom_allocator, тонкий обертка над собственным макросом Eigen.

См. также
pcl::has_custom_allocator, pcl::make_shared

Определение в строке 63 файла memory.h.

Определение типа

BorderTraits

using pcl::BorderTraits = typedef std::bitset<32>

#include <pcl/point_types.h>

Тип данных для хранения расширенной информации о переходе от фонового к фоновому состоянию. Спецификация полей для BorderDescription::traits.

Определение в строке 307 файла point_types.h.

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

BorderTrait

enum pcl::BorderTrait

#include <pcl/point_types.h>

Указание полей для BorderDescription::traits.

Перечисление
BORDER_TRAIT__OBSTACLE_BORDER
BORDER_TRAIT__SHADOW_BORDER
BORDER_TRAIT__VEIL_POINT
BORDER_TRAIT__SHADOW_BORDER_TOP
BORDER_TRAIT__SHADOW_BORDER_RIGHT
BORDER_TRAIT__SHADOW_BORDER_BOTTOM
BORDER_TRAIT__SHADOW_BORDER_LEFT
BORDER_TRAIT__OBSTACLE_BORDER_TOP
BORDER_TRAIT__OBSTACLE_BORDER_RIGHT
BORDER_TRAIT__OBSTACLE_BORDER_BOTTOM
BORDER_TRAIT__OBSTACLE_BORDER_LEFT
BORDER_TRAIT__VEIL_POINT_TOP
BORDER_TRAIT__VEIL_POINT_RIGHT
BORDER_TRAIT__VEIL_POINT_BOTTOM
BORDER_TRAIT__VEIL_POINT_LEFT

Определение в строке 312 файла point_types.h.

NormType

enum pcl::NormType

#include <pcl/common/norms.h>

Перечисление, определяющее все типы норм.

Примечание
Любой новый тип нормы должен иметь собственное значение перечисления и свой случай в методе selectNorm ()
Перечисление
L1
L2_SQR
L2
LINF
JM
B
SUBLINEAR
CS
DIV
PF
K
KL
HIK

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

Документация функций

B_Norm()

template<typename FloatVectorT >
float pcl::B_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление нормы B вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim число измерений в A и B (размеры должны совпадать)
Примечание
FloatVectorT — любой тип вектора с доступными значениями по индексу [ ]

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

Ссылка на pcl::selectNorm().

calculatePolygonArea()

template<typename PointT >
float pcl::calculatePolygonArea ( const pcl::PointCloud< PointT > & polygon )
inline

#include <pcl/common/common.h>

Вычисление площади многоугольника по заданному облаку точек, определяющему многоугольник.

Параметры
polygon облако точек, содержащее вершины, составляющие многоугольник. Вершины хранятся против часовой стрелки.
Возвращает
площадь многоугольника

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

Ссылается на pcl::PointCloud< PointT >::size().

compute3DCentroid() [1/4]

template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычислить центр масс 3D (X-Y-Z) набора точек, используя их индексы, и вернуть его в виде 3D-вектора.

Параметры
[in] cloud входное облако точек
[in] indices индексы облака точек, которые нужно использовать
[out] centroid результирующий центр масс
Возвращает
количество допустимых точек, используемых для определения центра масс. В случае плотных облаков точек, это совпадает с размером входных индексов.
Примечание
если возвращаемое значение равно 0, центр масс не изменяется, а значит, не является валидным. Последний компонент вектора устанавливается в 1, что позволяет преобразовывать вектор центра масс с помощью 4x4 матриц.

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

Ссылки на pcl::PointCloud< PointT >::is_dense и pcl::isFinite().

compute3DCentroid() [2/4]

template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid ( const pcl::PointCloud< PointT > & cloud,
const pcl::PointIndices & indices,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычислить центр масс 3D (X-Y-Z) набора точек, используя их индексы, и вернуть его в виде 3D-вектора.

Параметры
[in] cloud входное облако точек
[in] indices индексы облака точек, которые нужно использовать
[out] centroid результирующий центр масс
Возвращает
количество допустимых точек, используемых для определения центра масс. В случае плотных облаков точек, это совпадает с размером входных индексов.
Примечание
если возвращаемое значение равно 0, центр масс не изменяется, а значит, не является валидным. Последний компонент вектора устанавливается в 1, что позволяет преобразовывать вектор центра масс с помощью 4x4 матриц.

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

Ссылки на pcl::compute3DCentroid() и pcl::PointIndices::indices.

compute3DCentroid() [3/4]

template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid ( const pcl::PointCloud< PointT > & cloud,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычислить центр масс 3D (X-Y-Z) набора точек и вернуть его в виде 3D-вектора.

Параметры
[in] cloud входное облако точек
[out] centroid результирующий центр масс
Возвращает
количество допустимых точек, используемых для определения центра масс. В случае плотных облаков точек, это совпадает с размером входного облака.
Примечание
если возвращаемое значение равно 0, центр масс не изменяется, а значит, не является валидным. Последний компонент вектора устанавливается в 1, что позволяет преобразовывать вектор центра масс с помощью 4x4 матриц.

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

Ссылки на pcl::PointCloud< PointT >::empty(), pcl::PointCloud< PointT >::is_dense и pcl::isFinite().

compute3DCentroid() [4/4]

template<typename PointT , typename Scalar >
unsigned int pcl::compute3DCentroid ( ConstCloudIterator< PointT > & cloud_iterator,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычислить центр масс 3D (X-Y-Z) набора точек и вернуть его в виде 3D вектора.

Parameters
[in] cloud_iterator итератор входного облака точек
[out] centroid результирующий центр масс
Returns
количество корректных точек, используемых для определения центра масс. В случае плотного облака точек, это совпадает с размером входного облака.
Note
если возвращаемое значение равно 0, центр масс не изменяется и, следовательно, не является допустимым. Последний компонент вектора устанавливается в 1, что позволяет преобразовать вектор центра масс с помощью матриц 4x4.

Definition at line 56 of file centroid.hpp.

References pcl::isFinite(), and pcl::ConstCloudIterator< PointT >::isValid().

Referenced by pcl::gpu::people::buildTree(), pcl::ConvexHull< PointInT >::calculateInputDimension(), pcl::compute3DCentroid(), pcl::MLSResult::computeMLSSurface(), pcl::MomentInvariantsEstimation< PointInT, PointOutT >::computePointMomentInvariants(), pcl::registration::TransformationEstimation2D< PointSource, PointTarget, Scalar >::estimateRigidTransformation(), pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation(), pcl::registration::FPCSInitialAlignment< PointSource, PointTarget, NormalT, Scalar >::linkMatchWithBase(), pcl::SampleConsensusModelLine< PointT >::optimizeModelCoefficients(), pcl::ConcaveHull< PointInT >::performReconstruction(), pcl::ConvexHull< PointInT >::performReconstruction2D(), pcl::ESFEstimation< PointInT, PointOutT >::scale_points_unit_sphere(), and pcl::gpu::people::label_skeleton::sortIndicesToBlob2().

computeCentroid() [1/2]

template<typename PointInT , typename PointOutT >
std::size_t pcl::computeCentroid ( const pcl::PointCloud< PointInT > & cloud,
const Indices & indices,
PointOutT & centroid
)

#include <pcl/common/centroid.h>

Вычислить центр масс набора точек и вернуть его в виде точки.

Parameters
[in] cloud
[in] indices индексы облака точек, которые необходимо использовать
[out] centroid Это перегруженная функция, предоставленная для удобства. См. документацию для computeCentroid().

Definition at line 936 of file centroid.hpp.

References pcl::PointCloud< PointT >::is_dense, and pcl::isFinite().

computeCentroid() [2/2]

template<typename PointInT , typename PointOutT >
std::size_t pcl::computeCentroid ( const pcl::PointCloud< PointInT > & cloud,
PointOutT & centroid
)

#include <pcl/common/centroid.h>

Вычислить центр масс набора точек и вернуть его в виде точки.

Реализация использует класс CentroidPoint и поэтому ведет себя иначе, чем compute3DCentroid() и computeNDCentroid(). Подробнее см. документацию по CentroidPoint.

Parameters
[in] cloud входное облако точек
[out] centroid результирующий центр масс
Returns
количество корректных точек, используемых для определения центра масс (будет таким же, как размер облака, если оно плотное)
Note
Если возвращаемое значение 0, то центр масс не изменяется и, следовательно, не является допустимым.

Definition at line 917 of file centroid.hpp.

References pcl::PointCloud< PointT >::is_dense, and pcl::isFinite().

computeCorrespondingEigenVector()

template<typename Matrix , typename Vector >
void pcl::computeCorrespondingEigenVector ( const Matrix & mat,
const typename Matrix::Scalar & eigenvalue,
Vector & eigenvector
)
inline

#include <pcl/common/eigen.h>

определяет соответствующий собственный вектор заданного собственного значения симметричной положительно полуопределённой входной матрицы

Параметры
[in] mat симметричная положительно полуопределённая входная матрица
[in] eigenvalue собственное значение, для которого необходимо вычислить соответствующий собственный вектор
[out] eigenvector соответствующий собственный вектор для входного собственного значения

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

Используется в pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::computePointPrincipalCurvatures(), pcl::SampleConsensusModelLine< PointT >::optimizeModelCoefficients() и pcl::SampleConsensusModelStick< PointT >::optimizeModelCoefficients().

computeCovarianceMatrix() [1/6]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление матрицы ковариаций 3x3 заданного набора точек.

Результат возвращается как Eigen::Matrix3f. Примечание: матрица ковариаций не нормализуется на количество точек. Для нормализованной ковариации используйте computeCovarianceMatrixNormalized.

Параметры
[in] cloud входное облако точек
[in] centroid центр набора точек в облаке
[out] covariance_matrix полученная матрица ковариаций 3x3
Возвращает
количество допустимых точек, используемых для определения матрицы ковариаций. В случае плотных облаков точек это совпадает с размером входного облака.
Примечание
если возвращаемое значение равно 0, матрица ковариаций не изменяется и, следовательно, недействительна.

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

Ссылки на pcl::PointCloud< PointT >::empty(), pcl::PointCloud< PointT >::is_dense, pcl::isFinite() и pcl::PointCloud< PointT >::size().

Используется в pcl::CovarianceSampling< PointT, PointNT >::applyFilter(), pcl::MomentOfInertiaEstimation< PointT >::compute(), pcl::CovarianceSampling< PointT, PointNT >::computeConditionNumber(), pcl::computeCovarianceMatrix(), pcl::computeCovarianceMatrixNormalized(), pcl::MLSResult::computeMLSSurface() и pcl::SampleConsensusModelLine< PointT >::optimizeModelCoefficients().

computeCovarianceMatrix() [2/6]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление матрицы ковариаций 3x3 заданного набора точек с использованием их индексов.

Результат возвращается как Eigen::Matrix3f. Примечание: матрица ковариаций не нормализуется на количество точек. Для нормализованной ковариации используйте computeCovarianceMatrixNormalized.

Параметры
[in] cloud входное облако точек
[in] indices индексы точек облака, которые необходимо использовать
[in] centroid центр набора точек в облаке
[out] covariance_matrix полученная матрица ковариаций 3x3
Возвращает
количество допустимых точек, используемых для определения матрицы ковариаций. В случае плотных облаков точек это совпадает с размером входных индексов.

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

Ссылки на pcl::PointCloud< PointT >::is_dense и pcl::isFinite().

computeCovarianceMatrix() [3/6]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 матрицы ковариации для уже центрированного облака точек.

Нормированное означает, что каждая запись была разделена на количество записей в индексах. Для небольшого числа точек или если вы явно хотите выборочную дисперсию, масштабируйте матрицу ковариации с помощью n / (n-1), где n — количество точек, используемых для расчёта матрицы ковариации, и возвращается этой функцией.

Примечание
Этот метод теоретически точный. Однако использование float для внутренних вычислений снижает точность, но увеличивает эффективность.
Параметры
[in] cloud входное облако точек
[in] indices подмножество точек, заданных их индексами
[out] covariance_matrix результирующая 3x3 матрица ковариации
Возвращает
количество валидных точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это совпадает с размером входных индексов.

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

Ссылки pcl::PointCloud< PointT >::is_dense и pcl::isFinite().

computeCovarianceMatrix() [4/6]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const pcl::PointIndices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление 3x3 матрицы ковариации заданного набора точек, используя их индексы.

Результат возвращается как Eigen::Matrix3f. Примечание: матрица ковариации не нормируется с количеством точек. Для нормированной ковариации используйте computeCovarianceMatrixNormalized.

Параметры
[in] cloud входное облако точек
[in] indices индексы облака точек, которые необходимо использовать
[in] centroid центр набора точек в облаке
[out] covariance_matrix результирующая 3x3 матрица ковариации
Возвращает
количество валидных точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это совпадает с размером входных индексов.

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

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

computeCovarianceMatrix() [5/6]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const pcl::PointIndices & indices,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 матрицы ковариации для уже центрированного облака точек.

Нормированное означает, что каждая запись была разделена на количество записей в индексах. Для небольшого числа точек или если вы явно хотите выборочную дисперсию, масштабируйте матрицу ковариации с помощью n / (n-1), где n — количество точек, используемых для расчёта матрицы ковариации, и возвращается этой функцией.

Примечание
Этот метод теоретически точный. Однако использование float для внутренних вычислений снижает точность, но увеличивает эффективность.
Параметры
[in] cloud входное облако точек
[in] indices подмножество точек, заданных их индексами
[out] covariance_matrix результирующая 3x3 матрица ковариации
Возвращает
количество валидных точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это совпадает с размером входных индексов.

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

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

computeCovarianceMatrix() [6/6]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 матрицы ковариации для уже центрированного облака точек.

Нормированно означает, что каждая запись была разделена на количество записей в входном облаке точек. Для небольшого количества точек или если вы хотите явно выборочную дисперсию, масштабируйте матрицу ковариации на n / (n-1), где n — количество точек, используемых для расчёта матрицы ковариации, и возвращается этой функцией.

Примечание
Этот метод теоретически точен. Однако использование float для внутренних расчётов снижает точность, но повышает эффективность.
Параметры
[in] cloud входное облако точек
[out] covariance_matrix результирующая матрица ковариации 3x3
Возвращает
количество допустимых точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это то же самое, что и размер входного облака.

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

Ссылки на pcl::PointCloud< PointT >::is_dense, pcl::isFinite() и pcl::PointCloud< PointT >::size().

computeCovarianceMatrixNormalized() [1/3]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrixNormalized ( const pcl::PointCloud< PointT > & cloud,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 матрицы ковариации заданного набора точек.

Результат возвращается как Eigen::Matrix3f. Нормированно означает, что каждая запись была разделена на количество точек в облаке точек. Для небольшого количества точек или если вы хотите явно выборочную дисперсию, используйте computeCovarianceMatrix и масштабируйте матрицу ковариации на 1 / (n-1), где n — количество точек, используемых для расчёта матрицы ковариации, и возвращается функцией computeCovarianceMatrix.

Параметры
[in] cloud входное облако точек
[in] centroid центр набора точек в облаке
[out] covariance_matrix результирующая матрица ковариации 3x3
Возвращает
количество допустимых точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это то же самое, что и размер входного облака.

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

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

Используется в pcl::gpu::people::buildTree(), pcl::ConvexHull< PointInT >::calculateInputDimension(), pcl::computeCovarianceMatrixNormalized(), pcl::ConcaveHull< PointInT >::performReconstruction(), pcl::ConvexHull< PointInT >::performReconstruction2D() и pcl::gpu::people::label_skeleton::sortIndicesToBlob2().

computeCovarianceMatrixNormalized() [2/3]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrixNormalized ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 матрицы ковариации заданного набора точек, используя их индексы.

Результат возвращается как Eigen::Matrix3f. Нормированно означает, что каждая запись была разделена на количество записей в indices. Для небольшого количества точек или если вы хотите явно выборочную дисперсию, используйте computeCovarianceMatrix и масштабируйте матрицу ковариации на 1 / (n-1), где n — количество точек, используемых для расчёта матрицы ковариации, и возвращается функцией computeCovarianceMatrix.

Параметры
[in] cloud входное облако точек
[in] indices индексы точек облака точек, которые нужно использовать
[in] centroid центр набора точек в облаке
[out] covariance_matrix результирующая матрица ковариации 3x3
Возвращает
количество допустимых точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это то же самое, что и размер входных indices.

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

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

computeCovarianceMatrixNormalized() [3/3]

template<typename PointT , typename Scalar >
unsigned int pcl::computeCovarianceMatrixNormalized ( const pcl::PointCloud< PointT > & cloud,
const pcl::PointIndices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 ковариационной матрицы заданного набора точек с использованием их индексов.

Результат возвращается как Eigen::Matrix3f. Нормированно означает, что каждая запись была разделена на количество записей в индексах. Для небольшого числа точек или если вам явно нужна дисперсия выборки, используйте computeCovarianceMatrix и масштабируйте ковариационную матрицу на 1 / (n-1), где n — количество точек, используемых для вычисления ковариационной матрицы, и возвращается функцией computeCovarianceMatrix.

Параметры
[in] cloud входное облако точек
[in] indices индексы облака точек, которые нужно использовать
[in] centroid центр тяжести набора точек в облаке
[out] covariance_matrix результирующая 3x3 ковариационная матрица
Возвращает
количество допустимых точек, используемых для определения ковариационной матрицы. В случае плотных облаков точек это совпадает с размером входных индексов.

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

Ссылается на pcl::computeCovarianceMatrixNormalized() и pcl::PointIndices::indices.

computeMeanAndCovarianceMatrix() [1/3]

template<typename PointT , typename Scalar >
unsigned int pcl::computeMeanAndCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 ковариационной матрицы и центра тяжести заданного набора точек в одном цикле.

Нормированно означает, что каждая запись была разделена на количество записей в индексах. Для небольшого числа точек или если вам явно нужна дисперсия выборки, масштабируйте ковариационную матрицу на n / (n-1), где n — количество точек, используемых для вычисления ковариационной матрицы, и возвращается этой функцией.

Примечание
Этот метод теоретически точен. Однако использование float для внутренних вычислений уменьшает точность, но увеличивает эффективность.
Параметры
[in] cloud входное облако точек
[in] indices подмножество точек, заданное их индексами
[out] covariance_matrix результирующая 3x3 ковариационная матрица
[out] centroid центр тяжести набора точек в облаке
Возвращает
количество допустимых точек, используемых для определения ковариационной матрицы. В случае плотных облаков точек это совпадает с размером входных индексов.

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

Ссылки на pcl::PointCloud< PointT >::is_dense, pcl::isFinite(), pcl::K и pcl::PointCloud< PointT >::size().

computeMeanAndCovarianceMatrix() [2/3]

template<typename PointT , typename Scalar >
unsigned int pcl::computeMeanAndCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
const pcl::PointIndices & indices,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 ковариационной матрицы и центра тяжести заданного набора точек в одном цикле.

Нормированно означает, что каждая запись была разделена на количество записей в индексах. Для небольшого числа точек или если вам явно нужна дисперсия выборки, масштабируйте ковариационную матрицу на n / (n-1), где n — количество точек, используемых для вычисления ковариационной матрицы, и возвращается этой функцией.

Примечание
Этот метод теоретически точен. Однако использование float для внутренних вычислений уменьшает точность, но увеличивает эффективность.
Параметры
[in] cloud входное облако точек
[in] indices подмножество точек, заданное их индексами
[out] centroid центр тяжести набора точек в облаке
[out] covariance_matrix результирующая 3x3 ковариационная матрица
Возвращает
количество допустимых точек, используемых для определения ковариационной матрицы. В случае плотных облаков точек это совпадает с размером входных индексов.

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

Ссылки на pcl::computeMeanAndCovarianceMatrix() и pcl::PointIndices::indices.

computeMeanAndCovarianceMatrix() [3/3]

template<typename PointT , typename Scalar >
unsigned int pcl::computeMeanAndCovarianceMatrix ( const pcl::PointCloud< PointT > & cloud,
Eigen::Matrix< Scalar, 3, 3 > & covariance_matrix,
Eigen::Matrix< Scalar, 4, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

Вычисление нормированной 3x3 матрицы ковариации и центра масс заданного набора точек в одном цикле.

Нормированная означает, что каждая запись была разделена на количество допустимых записей в облаке точек. Для небольшого числа точек или если вам явно нужна выборочная дисперсия, масштабируйте матрицу ковариации на n / (n-1), где n - количество точек, используемых для расчета матрицы ковариации, и возвращается этой функцией.

Примечание
Этот метод теоретически точен. Однако использование float для внутренних вычислений снижает точность, но увеличивает эффективность.
Параметры
[in] cloud входное облако точек
[out] covariance_matrix результирующая 3x3 матрица ковариации
[out] centroid центр масс набора точек в облаке
Возвращает
количество допустимых точек, используемых для определения матрицы ковариации. В случае плотных облаков точек это совпадает с размером входного облака.

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

Ссылки на pcl::PointCloud< PointT >::is_dense, pcl::isFinite(), pcl::K и pcl::PointCloud< PointT >::size().

Используется в pcl::computeMeanAndCovarianceMatrix(), pcl::NormalEstimation< PointInT, PointOutT >::computePointNormal(), pcl::computePointNormal(), pcl::SampleConsensusModelRegistration< PointT >::computeSampleDistanceThreshold(), pcl::getPrincipalTransformation(), pcl::GridProjection< PointNT >::getProjectionWithPlaneFit(), pcl::isPointIn2DPolygon(), pcl::SampleConsensusModelPlane< PointT >::optimizeModelCoefficients(), pcl::SampleConsensusModelStick< PointT >::optimizeModelCoefficients(), pcl::ExtractPolygonalPrismData< PointT >::segment() и pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segment().

computeMedian()

template<typename IteratorT , typename Functor >
auto pcl::computeMedian ( IteratorT begin,
IteratorT end,
Functor f
) -> std::result_of_t<Functor(decltype(*begin))>
inlinenoexcept

#include <pcl/common/common.h>

Вычисление медианы списка значений (быстро).

Если количество значений четное, берется среднее из двух средних значений. Эту функцию можно использовать следующим образом:

std::vector<double> vector{1.0, 25.0, 9.0, 4.0, 16.0};
const double median = pcl::computeMedian (vector.begin (), vector.end (), static_cast<double(*)(double)>(std::sqrt)); // = 3
pcl::computeMedianauto computeMedian(IteratorT begin, IteratorT end, Functor f) noexcept -> std::result_of_t< Functor(decltype(*begin))>Compute the median of a list of values (fast).Definition: common.h:285
pcl::computeMedian
auto computeMedian(IteratorT begin, IteratorT end, Functor f) noexcept -> std::result_of_t< Functor(decltype(*begin))>
Compute the median of a list of values (fast).
Definition: common.h:285
Параметры
[in,out] begin,end Итераторы, которые отмечают начало и конец диапазона значений. Эти значения будут переупорядочены!
[in] f Lambda, указатель на функцию или аналогичное, неявно применяемое ко всем значениям перед вычислением медианы. На самом деле он будет применяться лениво (т.е. не более двух раз), и поэтому, возможно, не изменит порядок сортировки (например, разрешены монотонные функции, такие как sqrt)
Возвращает
медиана

Определение в строке 285 файла common.h.

Ссылки на pcl::geometry::distance().

Используется в pcl::MaximumLikelihoodSampleConsensus< PointT >::computeMedian(), pcl::computeMedian(), pcl::MaximumLikelihoodSampleConsensus< PointT >::computeMedianAbsoluteDeviation() и pcl::LeastMedianSquares< PointT >::computeModel().

computeNDCentroid() [1/3]

template<typename PointT , typename Scalar >
void pcl::computeNDCentroid ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > & centroid
)
inline

#include <pcl/common/centroid.h>

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

Параметры
cloud входное облако точек
indices индексы облака точек, которые необходимо использовать
centroid результирующий центр масс

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

computeNDCentroid() [2/3]

template<typename PointT , typename Scalar >
void pcl::computeNDCentroid ( const pcl::PointCloud< PointT > & облако,
const pcl::PointIndices & индексы,
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > & центр
)
inline

#include <pcl/common/centroid.h>

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

Параметры
облако входное облако точек
индексы индексы точек облака, которые нужно использовать
центр выходной центр масс

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

Ссылается на pcl::computeNDCentroid() и pcl::PointIndices::indices.

computeNDCentroid() [3/3]

template<typename PointT , typename Scalar >
void pcl::computeNDCentroid ( const pcl::PointCloud< PointT > & облако,
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > & центр
)
inline

#include <pcl/common/centroid.h>

Общее, универсальное вычисление центра масс nD для набора точек.

Параметры
облако входное облако точек
центр выходной центр масс

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

Ссылается на pcl::PointCloud< PointT >::empty() и pcl::PointCloud< PointT >::size().

Ссылка на pcl::computeNDCentroid().

concatenate() [1/3]

PCL_EXPORTS bool pcl::concatenate ( const pcl::PCLPointCloud2 & облако1,
const pcl::PCLPointCloud2 & облако2,
pcl::PCLPointCloud2 & облако_выход
)
inline

#include <pcl/common/io.h>

Конкатенация двух pcl::PCLPointCloud2.

Предупреждение
Эта функция выполнит конкатенацию ТОЛЬКО если поля без пропуска в правильном порядке и одинаковое количество.
Параметры
[вход] облако1 первое входное облако точек
[вход] облако2 второе входное облако точек
[выход] облако_выход результирующее выходное облако точек
Возвращает
true при успехе, false в противном случае

Определение в строке 291 файла io.h.

Ссылается на pcl::PCLPointCloud2::concatenate().

concatenate() [2/3]

template<typename PointT >
PCL_EXPORTS bool pcl::concatenate ( const pcl::PointCloud< PointT > & облако1,
const pcl::PointCloud< PointT > & облако2,
pcl::PointCloud< PointT > & облако_выход
)

#include <pcl/common/io.h>

Конкатенация двух pcl::PointCloud<PointT>

Параметры
[вход] облако1 первое входное облако точек
[вход] облако2 второе входное облако точек
[выход] облако_выход результирующее выходное облако точек
Возвращает
true при успехе, false в противном случае

Определение в строке 273 файла io.h.

Ссылается на pcl::PointCloud< PointT >::concatenate().

Ссылка на pcl::PointCloud< PointT >::concatenate(), pcl::PCLPointCloud2::concatenate(), pcl::PolygonMesh::concatenate(), pcl::outofcore::OutofcoreOctreeDiskContainer< PointT >::insertRange(), pcl::PointCloud< PointT >::operator+=(), pcl::PolygonMesh::operator+=(), pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::queryBBIncludes(), pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::queryBBIncludes_subsample(), и pcl::outofcore::OutofcoreOctreeDiskContainer< PointT >::read().

concatenate() [3/3]

PCL_EXPORTS bool pcl::concatenate ( const pcl::PolygonMesh & mesh1,
const pcl::PolygonMesh & mesh2,
pcl::PolygonMesh & mesh_out
)
inline

#include <pcl/common/io.h>

Объединить две pcl::PolygonMesh.

Параметры
[in] mesh1 первая входная сетка
[in] mesh2 вторая входная сетка
[out] mesh_out результирующая выходная сетка
Возвращает
true при успехе, false в противном случае

Определение в строке 306 файла io.h.

Ссылки на pcl::PolygonMesh::concatenate().

concatenateFields() [1/2]

PCL_EXPORTS bool pcl::concatenateFields ( const pcl::PCLPointCloud2 & cloud1_in,
const pcl::PCLPointCloud2 & cloud2_in,
pcl::PCLPointCloud2 & cloud_out
)

#include <pcl/common/io.h>

Объединение двух наборов данных, представляющих различные поля.

Примечание
Если входные наборы данных имеют перекрывающиеся поля (т. е. оба содержат одинаковые поля), то данные во втором облаке (cloud2_in) перезапишут данные в первом (cloud1_in).
Параметры
[in] cloud1_in первый входной набор данных
[in] cloud2_in второй входной набор данных (перезаписывает поля первого набора данных для совпадающих полей)
[out] cloud_out выходной набор данных, созданный путем объединения всех полей входных наборов данных

concatenateFields() [2/2]

template<typename PointIn1T , typename PointIn2T , typename PointOutT >
void pcl::concatenateFields ( const pcl::PointCloud< PointIn1T > & cloud1_in,
const pcl::PointCloud< PointIn2T > & cloud2_in,
pcl::PointCloud< PointOutT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Объединение двух наборов данных, представляющих различные поля.

Примечание
Если входные наборы данных имеют перекрывающиеся поля (т. е. оба содержат одинаковые поля), то данные во втором облаке (cloud2_in) перезапишут данные в первом (cloud1_in).
Параметры
[in] cloud1_in первый входной набор данных
[in] cloud2_in второй входной набор данных (перезаписывает поля первого набора данных для совпадающих полей)
[out] cloud_out результирующий выходной набор данных, созданный путём конкатенации всех полей входных наборов данных

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

Ссылки на pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

copyPoint()

template<typename PointInT , typename PointOutT >
void pcl::copyPoint ( const PointInT & point_in,
PointOutT & point_out
)

#include <pcl/common/copy_point.h>

Копирует поля точки-источника в точку-приемник.

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

Parameters
[in] point_in точка-источник
[out] point_out точка-приемник

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

Используется в pcl::ConditionalRemoval< PointT >::applyFilter(), pcl::FilterIndices< PointT >::applyFilter(), pcl::MovingLeastSquares< PointInT, PointOutT >::copyMissingFields(), pcl::copyPointCloud(), pcl::detail::copyPointCloudMemcpy(), pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::determineCorrespondences(), pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >::determineCorrespondences(), pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::determineReciprocalCorrespondences(), pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::determineReciprocalCorrespondences(), pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >::determineReciprocalCorrespondences(), pcl::gpu::extractEuclideanClusters(), pcl::search::Search< PointT >::nearestKSearchT(), pcl::KdTree< PointT >::nearestKSearchT(), pcl::KdTree< PointT >::radiusSearchT(), и pcl::search::Search< PointT >::radiusSearchT().

copyPointCloud() [1/11]

PCL_EXPORTS void pcl::copyPointCloud ( const pcl::PCLPointCloud2 & cloud_in,
const Indices & indices,
pcl::PCLPointCloud2 & cloud_out
)

#include <pcl/common/io.h>

Выделяет индексы заданного облака точек как новое облако точек.

Parameters
[in] cloud_in входное облако точек
[in] indices вектор индексов, представляющих точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Примечание
Предполагает уникальные индексы.

copyPointCloud() [2/11]

PCL_EXPORTS void pcl::copyPointCloud ( const pcl::PCLPointCloud2 & cloud_in,
const IndicesAllocator< Eigen::aligned_allocator< index_t > > & indices,
pcl::PCLPointCloud2 & cloud_out
)

#include <pcl/common/io.h>

Выделяет индексы заданного облака точек как новое облако точек.

Parameters
[in] cloud_in входное облако точек
[in] indices вектор индексов, представляющих точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Примечание
Предполагает уникальные индексы.

copyPointCloud() [3/11]

PCL_EXPORTS void pcl::copyPointCloud ( const pcl::PCLPointCloud2 & cloud_in,
pcl::PCLPointCloud2 & cloud_out
)

#include <pcl/common/io.h>

Копирует поля и данные облака точек из cloud_in в cloud_out.

Parameters
[in] cloud_in входное облако точек
[out] cloud_out результирующее выходное облако точек

copyPointCloud() [4/11]

template<typename PointInT , typename PointOutT , typename IndicesVectorAllocator >
void pcl::copyPointCloud ( const pcl::PointCloud< PointInT > & cloud_in,
const IndicesAllocator< IndicesVectorAllocator > & indices,
pcl::PointCloud< PointOutT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Извлечь индексы заданного облака точек в виде нового облака точек.

Parameters
[in] cloud_in входное облако точек
[in] indices вектор индексов, представляющих точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Note
Предполагаются уникальные индексы.

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

Ссылки на pcl::copyPoint(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, и pcl::PointCloud< PointT >::width.

copyPointCloud() [5/11]

template<typename PointInT , typename PointOutT >
void pcl::copyPointCloud ( const pcl::PointCloud< PointInT > & cloud_in,
const PointIndices & indices,
pcl::PointCloud< PointOutT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Извлечь индексы заданного облака точек в виде нового облака точек.

Parameters
[in] cloud_in входное облако точек
[in] indices структура PointIndices, представляющая точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Note
Предполагаются уникальные индексы.

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

Ссылки на pcl::copyPointCloud() и pcl::PointIndices::indices.

copyPointCloud() [6/11]

template<typename PointInT , typename PointOutT >
void pcl::copyPointCloud ( const pcl::PointCloud< PointInT > & cloud_in,
const std::vector< pcl::PointIndices > & indices,
pcl::PointCloud< PointOutT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Извлечь индексы заданного облака точек в виде нового облака точек.

Parameters
[in] cloud_in входное облако точек
[in] indices вектор индексов, представляющих точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Note
Предполагаются уникальные индексы.

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

Ссылки на pcl::copyPoint(), pcl::copyPointCloud(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

copyPointCloud() [7/11]

template<typename PointInT , typename PointOutT >
void pcl::copyPointCloud ( const pcl::PointCloud< PointInT > & cloud_in,
pcl::PointCloud< PointOutT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Копировать все поля из данного облака точек в новое облако точек.

Параметры
[in] cloud_in входной набор данных облака точек
[out] cloud_out результирующий выходной набор данных облака точек

Определение на строке 142 файла io.hpp.

Ссылки pcl::detail::copyPointCloudMemcpy(), pcl::PointCloud< PointT >::empty(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

Используется в pcl::HypothesisVerification< ModelT, SceneT >::addModels(), pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::addPointCloud(), pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::addPointCloud_and_genLOD(), pcl::LineRGBD< PointXYZT, PointRGBT >::addTemplate(), pcl::keypoints::internal::AgastApplyNonMaxSuppresion< Out >::AgastApplyNonMaxSuppresion(), pcl::keypoints::internal::AgastDetector< Out >::AgastDetector(), pcl::ExtractIndices< PointT >::applyFilter(), pcl::FastBilateralFilter< PointT >::applyFilter(), pcl::FastBilateralFilterOMP< PointT >::applyFilter(), pcl::FilterIndices< PointT >::applyFilter(), pcl::MedianFilter< PointT >::applyFilter(), ObjectRecognition::applyFiltersAndSegment(), pcl::applyMorphologicalOperator(), pcl::GeometricConsistencyGrouping< PointModelT, PointSceneT >::clusterCorrespondences(), pcl::Hough3DGrouping< PointModelT, PointSceneT, PointModelRfT, PointSceneRfT >::clusterCorrespondences(), pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::computePyramids(), pcl::copyPointCloud(), pcl::LineRGBD< PointXYZT, PointRGBT >::createAndAddTemplate(), pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::detectKeypoints(), pcl::BriskKeypoint2D< PointInT, PointOutT, IntensityT >::detectKeypoints(), pcl::Filter< PointT >::filter(), pcl::occlusion_reasoning::ZBuffering< ModelT, SceneT >::filter(), pcl::occlusion_reasoning::filter(), pcl::SupervoxelClustering< PointT >::getLabeledCloud(), pcl::SupervoxelClustering< PointT >::getLabeledVoxelCloud(), pcl::occlusion_reasoning::getOccludedCloud(), pcl::getPointCloudDifference(), pcl::SupervoxelClustering< PointT >::getVoxelCentroidCloud(), pcl::ConcaveHull< PointInT >::performReconstruction(), pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::queryBBIncludes(), и pcl::io::savePLYFile().

copyPointCloud() [8/11]

template<typename PointT , typename IndicesVectorAllocator >
void pcl::copyPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const IndicesAllocator< IndicesVectorAllocator > & indices,
pcl::PointCloud< PointT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Извлечь индексы заданного облака точек как новое облако точек.

Параметры
[in] cloud_in входное облако точек
[in] indices вектор индексов, представляющих точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Примечание
Предполагает уникальные индексы.

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

Ссылки на pcl::PointCloud< PointT >::clear(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), pcl::PointCloud< PointT >::transient_push_back(), и pcl::PointCloud< PointT >::width.

copyPointCloud() [9/11]

template<typename PointT >
void pcl::copyPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const PointIndices & indices,
pcl::PointCloud< PointT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Извлечь индексы заданного облака точек как новое облако точек.

Параметры
[in] cloud_in входное облако точек
[in] indices структура PointIndices, представляющая точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Примечание
Предполагает уникальные индексы.

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

Ссылки на pcl::copyPointCloud() и pcl::PointIndices::indices.

copyPointCloud() [10/11]

template<typename PointT >
void pcl::copyPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const std::vector< pcl::PointIndices > & indices,
pcl::PointCloud< PointT > & cloud_out
)

#include <pcl/common/impl/io.hpp>

Извлечь индексы заданного облака точек как новое облако точек.

Параметры
[in] cloud_in входное облако точек
[in] indices вектор индексов, представляющих точки, которые нужно скопировать из cloud_in
[out] cloud_out результирующее выходное облако точек
Примечание
Предполагает уникальные индексы.

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

Ссылки на pcl::PointCloud< PointT >::clear(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), pcl::PointCloud< PointT >::transient_push_back(), и pcl::PointCloud< PointT >::width.

copyPointCloud() [11/11]

template<typename PointT >
void pcl::copyPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
pcl::PointCloud< PointT > & cloud_out,
int top,
int bottom,
int left,
int right,
pcl::InterpolationType border_type,
const PointT & value
)

#include <pcl/common/impl/io.hpp>

Копирует облако точек внутри большего, интерполируя границы.

Parameters
[in] cloud_in входное облако точек
[out] cloud_out результирующее облако точек
top
bottom
left
right Положение cloud_in внутри cloud_out задаётся параметрами top, left, bottom и right.
[in] border_type метод интерполяции (pcl::BORDER_XXX) BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh BORDER_REFLECT: fedcba|abcdefgh|hgfedcb BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba BORDER_WRAP: cdefgh|abcdefgh|abcdefg BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii с некоторым заданным 'i' BORDER_TRANSPARENT: mnopqr|abcdefgh|tuvwxyz где m-r и t-z - исходные значения cloud_out
value
Exceptions
pcl::BadArgumentException если любое из значений top, bottom, left или right отрицательно.

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

Ссылки на pcl::BORDER_CONSTANT, pcl::BORDER_TRANSPARENT, pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::interpolatePointIndex(), pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

CS_Norm()

template<typename FloatVectorT >
float pcl::CS_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисляет норму CS вектора между двумя точками.

Parameters
A первая точка
B вторая точка
dim число измерений в A и B (измерения должны совпадать)
Note
FloatVectorT - любой тип вектора, значения которого доступны через [ ]

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

Используется в pcl::selectNorm().

deg2rad() [1/2]

double pcl::deg2rad ( double alpha )
inline

#include <pcl/common/angles.h>

Преобразование угла из градусов в радианы.

Parameters
alpha входной угол (в градусах)

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

deg2rad() [2/2]

float pcl::deg2rad ( float alpha )
inline

#include <pcl/common/angles.h>

Преобразование угла из градусов в радианы.

Parameters
alpha входной угол (в градусах)

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

Используется в pcl::RangeImage::createFromPointCloud(), pcl::RangeImage::createFromPointCloudWithKnownSize(), pcl::RangeImage::getImpactAngleBasedOnLocalNormal(), pcl::ShapeContext3DEstimation< PointInT, PointNT, PointOutT >::initCompute() и pcl::UniqueShapeContext< PointInT, PointOutT, PointRFT >::initCompute().

demeanPointCloud() [1/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > & cloud_out
)

#include <pcl/common/centroid.h>

Вычитает центр масс из облака точек и возвращает результат как матрицу Eigen.

Parameters
[in] cloud_in входное облако точек
[in] centroid центр масс облака точек
[out] cloud_out результирующее выходное облако XYZ0 размерности cloud_in в виде матрицы Eigen (4 строки, N столбцов точек)

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

Ссылается на pcl::PointCloud< PointT >::size().

demeanPointCloud() [2/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
pcl::PointCloud< PointT > & cloud_out
)

#include <pcl/common/centroid.h>

Вычитает центр масс из облака точек и возвращает результат.

Parameters
[in] cloud_in входное облако точек
[in] centroid центр масс облака точек
[out] cloud_out результирующее выходное облако точек

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

demeanPointCloud() [3/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const Indices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > & cloud_out
)

#include <pcl/common/centroid.h>

Вычитает центр масс из облака точек и возвращает результат как матрицу Eigen.

Parameters
[in] cloud_in входное облако точек
[in] indices множество индексов точек для использования из входного облака точек
[in] centroid центр масс облака точек
[out] cloud_out результирующее выходное облако XYZ0 размерности cloud_in в виде матрицы Eigen (4 строки, N столбцов точек)

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

demeanPointCloud() [4/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const Indices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
pcl::PointCloud< PointT > & cloud_out
)

#include <pcl/common/centroid.h>

Вычитает центр масс из облака точек и возвращает результат.

Parameters
[in] cloud_in входное облако точек
[in] indices множество индексов точек для использования из входного облака точек
[out] centroid центр масс облака точек
cloud_out результирующее выходное облако точек

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

Ссылается на pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

demeanPointCloud() [5/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const pcl::PointIndices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > & cloud_out
)

#include <pcl/common/centroid.h>

Вычитание центра масс из облака точек и возврат обезличенной репрезентации в виде матрицы Eigen.

Параметры
[in] cloud_in входное облако точек
[in] indices набор индексов точек для использования из входного облака точек
[in] centroid центр масс облака точек
[out] cloud_out результирующее выходное облако XYZ0 размерности cloud_in в виде матрицы Eigen (4 строки, N точек столбцов)

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

Ссылки на pcl::demeanPointCloud() и pcl::PointIndices::indices.

demeanPointCloud() [6/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const pcl::PointIndices & indices,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
pcl::PointCloud< PointT > & cloud_out
)

#include <pcl/common/centroid.h>

Вычитание центра масс из облака точек и возврат обезличенной репрезентации.

Параметры
[in] cloud_in входное облако точек
[in] indices набор индексов точек для использования из входного облака точек
[out] centroid центр масс облака точек
cloud_out результирующее выходное облако точек

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

Ссылки на pcl::demeanPointCloud() и pcl::PointIndices::indices.

demeanPointCloud() [7/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( ConstCloudIterator< PointT > & cloud_iterator,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > & cloud_out,
int npts = 0
)

#include <pcl/common/centroid.h>

Вычитание центра масс из облака точек и возврат обезличенной репрезентации в виде матрицы Eigen.

Параметры
[in] cloud_iterator итератор по входному облаку точек
[in] centroid центр масс облака точек
[out] cloud_out результирующее выходное облако XYZ0 размерности cloud_in в виде матрицы Eigen (4 строки, N точек столбцов)
[in] npts количество образцов, гарантированно оставшихся во входном облаке, доступное по итератору. Если не указано, будет вычислено.

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

Ссылки на pcl::ConstCloudIterator< PointT >::isValid() и pcl::ConstCloudIterator< PointT >::reset().

demeanPointCloud() [8/8]

template<typename PointT , typename Scalar >
void pcl::demeanPointCloud ( ConstCloudIterator< PointT > & cloud_iterator,
const Eigen::Matrix< Scalar, 4, 1 > & centroid,
pcl::PointCloud< PointT > & cloud_out,
int npts = 0
)

#include <pcl/common/centroid.h>

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

Параметры
[in] cloud_iterator итератор по входному облаку точек
[in] centroid центр масс облака точек
[out] cloud_out результирующее выходное облако точек
[in] npts количество образцов, гарантированно оставшихся в облаке ввода, доступное по итератору. Если не указано, будет вычислено.

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

Ссылки на pcl::PointCloud< PointT >::height, pcl::ConstCloudIterator< PointT >::isValid(), pcl::ConstCloudIterator< PointT >::reset(), pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

Используется в pcl::demeanPointCloud(), pcl::registration::TransformationEstimation2D< PointSource, PointTarget, Scalar >::estimateRigidTransformation(), pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation(), pcl::ConcaveHull< PointInT >::performReconstruction(), pcl::ESFEstimation< PointInT, PointOutT >::scale_points_unit_sphere(), и pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >::sgurf().

determinant3x3Matrix()

template<typename Matrix >
Matrix::Scalar pcl::determinant3x3Matrix ( const Matrix & matrix )
inline

#include <pcl/common/eigen.h>

Вычисление определителя 3x3 матрицы.

Параметры
[in] matrix матрица
Возвращает
определитель матрицы

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

Div_Norm()

template<typename FloatVectorT >
float pcl::Div_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление нормы div вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim число измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT - любой тип вектора с доступом к значениям через [ ]

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

Используется в pcl::selectNorm().

eigen22() [1/2]

template<typename Matrix , typename Vector >
void pcl::eigen22 ( const Matrix & mat,
Matrix & eigenvectors,
Vector & eigenvalues
)
inline

#include <pcl/common/eigen.h>

определение наименьшего собственного значения и соответствующего собственного вектора

Параметры
[in] mat входная матрица, которая должна быть симметричной и положительно полуопределенной
[out] eigenvectors соответствующий собственный вектор наименьшего собственного значения входной матрицы
[out] eigenvalues наименьшее собственное значение входной матрицы

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

eigen22() [2/2]

template<typename Matrix , typename Vector >
void pcl::eigen22 ( const Matrix & mat,
typename Matrix::Scalar & eigenvalue,
Vector & eigenvector
)
inline

#include <pcl/common/eigen.h>

определение наименьшего собственного значения и соответствующего собственного вектора

Параметры
[in] mat входная матрица, которая должна быть симметричной и положительно полуопределенной
[out] eigenvalue наименьшее собственное значение входной матрицы
[out] eigenvector соответствующий собственный вектор наименьшего собственного значения входной матрицы

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

Используется в pcl::approximatePolygon2D().

eigen33() [1/3]

template<typename Matrix , typename Vector >
void pcl::eigen33 ( const Matrix & mat,
Matrix & evecs,
Vector & evals
)
inline

#include <pcl/common/eigen.h>

определяет собственные значения и соответствующие собственные векторы симметричной положительно определенной входной матрицы

Parameters
[in] mat симметричная положительно определенная входная матрица
[out] evecs соответствующие собственные векторы в правильном порядке по отношению к собственным значениям
[out] evals полученные собственные значения в порядке возрастания

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

Ссылки на pcl::computeRoots() и pcl::geometry::distance().

eigen33() [2/3]

template<typename Matrix , typename Vector >
void pcl::eigen33 ( const Matrix & mat,
typename Matrix::Scalar & eigenvalue,
Vector & eigenvector
)
inline

#include <pcl/common/eigen.h>

определяет собственный вектор и собственное значение наименьшего собственного значения симметричной положительно определенной входной матрицы

Parameters
[in] mat симметричная положительно определенная входная матрица
[out] eigenvalue наименьшее собственное значение входной матрицы
[out] eigenvector соответствующий собственный вектор для входного собственного значения
Note
если наименьшее собственное значение не единственное, эта функция может вернуть любой собственный вектор, соответствующий этому значению.

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

Ссылки на pcl::computeRoots().

Используется в pcl::gpu::people::buildTree(), pcl::ConvexHull< PointInT >::calculateInputDimension(), pcl::MLSResult::computeMLSSurface(), pcl::IntensityGradientEstimation< PointInT, PointNT, PointOutT, IntensitySelectorT >::computePointIntensityGradient(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormal(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormalMirror(), pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::computePointPrincipalCurvatures(), pcl::SampleConsensusModelRegistration< PointT >::computeSampleDistanceThreshold(), pcl::VectorAverage< real, dimension >::doPCA(), pcl::VectorAverage< real, dimension >::getEigenVector1(), pcl::getPrincipalTransformation(), pcl::GridProjection< PointNT >::getProjectionWithPlaneFit(), pcl::isPointIn2DPolygon(), pcl::SampleConsensusModelLine< PointT >::optimizeModelCoefficients(), pcl::SampleConsensusModelPlane< PointT >::optimizeModelCoefficients(), pcl::SampleConsensusModelStick< PointT >::optimizeModelCoefficients(), pcl::ConcaveHull< PointInT >::performReconstruction(), pcl::ConvexHull< PointInT >::performReconstruction2D(), pcl::HarrisKeypoint3D< PointInT, PointOutT, NormalT >::responseTomasi(), pcl::ExtractPolygonalPrismData< PointT >::segment(), pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segment(), pcl::solvePlaneParameters() и pcl::gpu::people::label_skeleton::sortIndicesToBlob2().

eigen33() [3/3]

template<typename Matrix , typename Vector >
void pcl::eigen33 ( const Matrix & mat,
Vector & evals
)
inline

#include <pcl/common/eigen.h>

определяет собственные значения симметричной положительно определенной входной матрицы

Parameters
[in] mat симметричная положительно определенная входная матрица
[out] evals полученные собственные значения в порядке возрастания

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

Ссылки на pcl::computeRoots().

getAngle3D() [1/2]

double pcl::getAngle3D ( const Eigen::Vector3f & v1,
const Eigen::Vector3f & v2,
const bool in_degree = false
)
inline

#include <pcl/common/common.h>

Вычислить наименьший угол между двумя 3D векторами в радианах (по умолчанию) или градусах.

Parameters
v1 первый 3D вектор (представленный как Eigen::Vector3f)
v2 второй 3D вектор (представленный как Eigen::Vector3f)
in_degree определяет, должен ли угол быть в радианах или градусах
Returns
угол между v1 и v2 в радианах или градусах

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

Ссылки на M_PI.

getAngle3D() [2/2]

double pcl::getAngle3D ( const Eigen::Vector4f & v1,
const Eigen::Vector4f & v2,
const bool in_degree = false
)
inline

#include <pcl/common/common.h>

Вычислить наименьший угол между двумя 3D векторами в радианах (по умолчанию) или градусах.

Parameters
v1 первый 3D вектор (представленный как Eigen::Vector4f)
v2 второй 3D вектор (представленный как Eigen::Vector4f)
in_degree определяет, должен ли угол быть в радианах или градусах
Returns
угол между v1 и v2 в радианах или градусах
Note
Обрабатывает ошибки округления для параллельных и антипараллельных векторов

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

Ссылки на M_PI.

Используется в pcl::tracking::NormalCoherence< PointInT >::computeCoherence(), pcl::tracking::ParticleFilterTracker< PointInT, StateT >::computeTransformedPointCloudWithNormal(), pcl::LCCPSegmentation< PointT >::connIsConvex(), pcl::SampleConsensusModelNormalSphere< PointT, PointNT >::countWithinDistance(), pcl::SampleConsensusModelNormalPlane< PointT, PointNT >::countWithinDistanceStandard(), pcl::SampleConsensusModelCone< PointT, PointNT >::getDistancesToModel(), pcl::SampleConsensusModelNormalPlane< PointT, PointNT >::getDistancesToModel(), pcl::SampleConsensusModelNormalSphere< PointT, PointNT >::getDistancesToModel(), pcl::SampleConsensusModelCone< PointT, PointNT >::isModelValid(), pcl::SampleConsensusModelCylinder< PointT, PointNT >::isModelValid(), pcl::SampleConsensusModelParallelLine< PointT >::isModelValid(), pcl::SampleConsensusModelPerpendicularPlane< PointT >::isModelValid(), pcl::SampleConsensusModelCone< pcl::PointXYZRGB, PointNT >::isSampleGood(), pcl::SampleConsensusModelNormalPlane< PointT, PointNT >::selectWithinDistance(), и pcl::SampleConsensusModelNormalSphere< PointT, PointNT >::selectWithinDistance().

getCircumcircleRadius()

template<typename PointT >
double pcl::getCircumcircleRadius ( const PointT & pa,
const PointT & pb,
const PointT & pc
)
inline

#include <pcl/common/common.h>

Вычислить радиус описанной окружности для треугольника, образованного тремя точками pa, pb и pc.

Parameters
pa первая точка
pb вторая точка
pc третья точка
Returns
радиус описанной окружности

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

Используется в pcl::ConcaveHull< PointInT >::performReconstruction().

getEigenAsPointCloud()

PCL_EXPORTS bool pcl::getEigenAsPointCloud ( Eigen::MatrixXf & in,
pcl::PCLPointCloud2 & out
)

#include <pcl/common/io.h>

Скопировать XYZ-размеры из Eigen MatrixXf в сообщение pcl::PCLPointCloud2.

Parameters
[in] in Eigen MatrixXf, содержащий XYZ0 / точку
[out] out результирующее сообщение облака точек
Note
Метод предполагает, что сообщение PCLPointCloud2 уже содержит правильно настроенные поля!

getEulerAngles()

template<typename Scalar >
void pcl::getEulerAngles ( const Eigen::Transform< Scalar, 3, Eigen::Affine > & t,
Scalar & roll,
Scalar & pitch,
Scalar & yaw
)

#include <pcl/common/eigen.h>

Извлечь углы Эйлера (собственные вращения, соглашение ZYX) из заданного преобразования.

Параметры
[вход] t матрица входного преобразования
[выход] roll результирующий угол крен
[выход] pitch результирующий угол тангаж
[выход] yaw результирующий угол рыскание

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

Используется в pcl::tracking::ParticleXYZRPY::sample().

getFieldIndex() [1/3]

int pcl::getFieldIndex ( const pcl::PCLPointCloud2 & cloud,
const std::string & field_name
)
inline

#include <pcl/common/io.h>

Получить индекс указанного поля (т.е., размерности/канала)

Параметры
[вход] cloud сообщение облака точек
[вход] field_name строка, определяющая имя поля

Определение в строке 60 файла io.h.

Ссылки на pcl::geometry::distance() и pcl::PCLPointCloud2::fields.

getFieldIndex() [2/3]

template<typename PointT >
int pcl::getFieldIndex ( const std::string & field_name,
const std::vector< pcl::PCLPointField > & fields
)

#include <pcl/common/impl/io.hpp>

Получить индекс указанного поля (т.е., размерности/канала)

Шаблоны параметров
PointT тип данных, для которого запрашиваются поля
Параметры
[вход] field_name строка, определяющая имя поля
[вход] fields вектор к исходному вектору PCLPointField, содержащемуся в сообщении исходного облака точек

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

Ссылки на pcl::geometry::distance().

getFieldIndex() [3/3]

template<typename PointT >
int pcl::getFieldIndex ( const std::string & field_name,
std::vector< pcl::PCLPointField > & fields
)

#include <pcl/common/impl/io.hpp>

Получить индекс указанного поля (т.е., размерности/канала)

Шаблоны параметров
PointT тип данных, для которого запрашиваются поля
Параметры
[вход] field_name строка, определяющая имя поля
[выход] fields вектор к исходному вектору PCLPointField, содержащемуся в сообщении исходного облака точек

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

getFields()

template<typename PointT >
std::vector< pcl::PCLPointField > pcl::getFields ( )
inline

#include <pcl/common/impl/io.hpp>

Получить список доступных полей (т.е., размерности/канала)

Шаблоны параметров
PointT тип данных, сведения о котором запрашиваются

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

getFieldSize()

int pcl::getFieldSize ( const int datatype )
inline

#include <pcl/common/io.h>

Получение размера определённого типа поля данных в байтах.

Parameters
[in] datatype тип данных поля (см. PCLPointField.h)

Определение в строке 119 файла io.h.

Ссылки на pcl::PCLPointField::BOOL, pcl::PCLPointField::FLOAT32, pcl::PCLPointField::FLOAT64, pcl::PCLPointField::INT16, pcl::PCLPointField::INT32, pcl::PCLPointField::INT64, pcl::PCLPointField::INT8, PCL_FALLTHROUGH, pcl::PCLPointField::UINT16, pcl::PCLPointField::UINT32, pcl::PCLPointField::UINT64, и pcl::PCLPointField::UINT8.

Используется в pcl::PCDWriter::generateHeader(), pcl::visualization::PointCloudColorHandlerGenericField< PointT >::getColor(), pcl::PCDWriter::writeBinary() и pcl::PCDWriter::writeBinaryCompressed().

getFieldsList() [1/2]

std::string pcl::getFieldsList ( const pcl::PCLPointCloud2 & cloud )
inline

#include <pcl/common/io.h>

Получение доступных полей облака точек в виде строки, разделённой пробелами.

Parameters
[in] cloud указатель на сообщение PointCloud

Определение в строке 108 файла io.h.

Ссылки на pcl::PCLPointCloud2::fields.

getFieldsList() [2/2]

template<typename PointT >
std::string pcl::getFieldsList ( const pcl::PointCloud< PointT > & cloud )
inline

#include <pcl/common/impl/io.hpp>

Получение списка всех доступных полей в заданном облаке.

Parameters
[in] cloud сообщение облака точек

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

getFieldType() [1/2]

int pcl::getFieldType ( const int size,
char type
)
inline

#include <pcl/common/io.h>

Получение типа PCLPointField по заданному размеру и типу.

Parameters
[in] size размер поля данных в байтах
[in] type символ, описывающий тип поля ('B' = bool, 'F' = float, 'I' = signed, 'U' = unsigned)

Определение в строке 163 файла io.h.

Ссылки на pcl::PCLPointField::BOOL, pcl::PCLPointField::FLOAT32, pcl::PCLPointField::FLOAT64, pcl::PCLPointField::INT16, pcl::PCLPointField::INT32, pcl::PCLPointField::INT64, pcl::PCLPointField::INT8, pcl::PCLPointField::UINT16, pcl::PCLPointField::UINT32, pcl::PCLPointField::UINT64, и pcl::PCLPointField::UINT8.

Используется в pcl::PCDWriter::generateHeader().

getFieldType() [2/2]

char pcl::getFieldType ( const int type )
inline

#include <pcl/common/io.h>

Получает тип PCLPointField из указанного поля PCLPointField как char.

Parameters
[in] type тип поля PCLPointField

Определение в строке 218 файла io.h.

Ссылки на pcl::PCLPointField::BOOL, pcl::PCLPointField::FLOAT32, pcl::PCLPointField::FLOAT64, pcl::PCLPointField::INT16, pcl::PCLPointField::INT32, pcl::PCLPointField::INT64, pcl::PCLPointField::INT8, PCL_FALLTHROUGH, pcl::PCLPointField::UINT16, pcl::PCLPointField::UINT32, pcl::PCLPointField::UINT64, и pcl::PCLPointField::UINT8.

getMaxDistance() [1/2]

template<typename PointT >
void pcl::getMaxDistance ( const pcl::PointCloud< PointT > & cloud,
const Eigen::Vector4f & pivot_pt,
Eigen::Vector4f & max_pt
)
inline

#include <pcl/common/common.h>

Получить точку с максимальным расстоянием от заданной точки и облака точек.

Parameters
cloud данные облака точек
pivot_pt точка, от которой вычисляется расстояние
max_pt точка в облаке, находящаяся дальше всего от pivot_pt

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

Ссылки на pcl::PointCloud< PointT >::is_dense и pcl::PointCloud< PointT >::size().

Используется в pcl::GASDEstimation< PointInT, PointOutT >::computeFeature(), pcl::VFHEstimation< PointInT, PointNT, PointOutT >::computePointSPFHSignature(), pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >::computeRFAndShapeDistribution() и pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >::sgurf().

getMaxDistance() [2/2]

template<typename PointT >
void pcl::getMaxDistance ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
const Eigen::Vector4f & pivot_pt,
Eigen::Vector4f & max_pt
)
inline

#include <pcl/common/common.h>

Получить точку с максимальным расстоянием от заданной точки и облака точек.

Parameters
cloud облако точек
indices вектор индексов точек из cloud
pivot_pt точка, от которой вычисляется расстояние
max_pt точка в облаке, находящаяся дальше всего от pivot_pt

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

Ссылки на pcl::PointCloud< PointT >::is_dense.

getMaxSegment() [1/2]

template<typename PointT >
double pcl::getMaxSegment ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
PointT & pmin,
PointT & pmax
)
inline

#include <pcl/common/distances.h>

Получить максимальный отрезок в заданном наборе точек и вернуть минимальную и максимальную точки.

Parameters
[in] cloud набор точек
[in] indices набор индексов точек из cloud
[out] pmin координаты точки "минимум" в cloud (один конец отрезка)
[out] pmax координаты точки "максимум" в cloud (другой конец отрезка)
Returns
длина отрезка

Определение в строке 146 файла distances.h.

getMaxSegment() [2/2]

template<typename PointT >
double pcl::getMaxSegment ( const pcl::PointCloud< PointT > & облако_точек,
PointT & pmin,
PointT & pmax
)
inline

#include <pcl/common/distances.h>

Получить максимальный сегмент в заданном наборе точек и вернуть минимальные и максимальные точки.

Parameters
[in] облако_точек набор точек
[out] pmin координаты точки "минимум" в облако_точек (один конец сегмента)
[out] pmax координаты точки "максимум" в облако_точек (другой конец сегмента)
Returns
длина сегмента

Определение в строке 106 файла distances.h.

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

getMeanStd()

void pcl::getMeanStd ( const std::vector< float > & значения,
double & среднее,
double & стандартное_отклонение
)
inline

#include <pcl/common/common.h>

Вычислить среднее значение и стандартное отклонение массива значений.

Parameters
значения массив значений
среднее результирующее среднее значение распределения
стандартное_отклонение результирующее стандартное отклонение распределения

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

getMeanStdDev()

PCL_EXPORTS void pcl::getMeanStdDev ( const std::vector< float > & значения,
double & среднее,
double & стандартное_отклонение
)
inline

#include <pcl/common/common.h>

Вычислить среднее значение и стандартное отклонение массива значений.

Parameters
значения массив значений
среднее результирующее среднее значение распределения
стандартное_отклонение результирующее стандартное отклонение распределения

getMinMax() [1/2]

PCL_EXPORTS void pcl::getMinMax ( const pcl::PCLPointCloud2 & облако_точек,
int индекс,
const std::string & имя_поля,
float & мин,
float & макс
)

#include <pcl/common/common.h>

Получить минимальное и максимальное значения на гистограмме точек.

Parameters
облако_точек облако, содержащее многомерные гистограммы
индекс индекс точки, представляющей гистограмму, для которой нужно вычислить мин/макс
имя_поля имя поля, содержащего многомерную гистограмму
мин результирующий минимум
макс результирующий максимум

getMinMax() [2/2]

template<typename PointT >
void pcl::getMinMax ( const PointT & гистограмма,
int длина,
float & мин,
float & макс
)
inline

#include <pcl/common/common.h>

Получить минимальное и максимальное значения на гистограмме точек.

Parameters
гистограмма точка, представляющая многомерную гистограмму
длина длина гистограммы
мин результирующий минимум
макс результирующий максимум

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

Используется в pcl::MaximumLikelihoodSampleConsensus< PointT >::computeModel().

getMinMax3D() [1/4]

template<typename PointT >
void pcl::getMinMax3D ( const pcl::PointCloud< PointT > & cloud,
const Indices & indices,
Eigen::Vector4f & min_pt,
Eigen::Vector4f & max_pt
)
inline

#include <pcl/common/common.h>

Получить минимальные и максимальные значения по трём осям (x-y-z) в заданном облаке точек.

Параметры
[in] cloud сообщение с данными облака точек
[in] indices вектор индексов точек для использования из cloud
[out] min_pt результирующие минимальные пределы
[out] max_pt результирующие максимальные пределы

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

Ссылки на pcl::PointCloud< PointT >::is_dense.

getMinMax3D() [2/4]

template<typename PointT >
void pcl::getMinMax3D ( const pcl::PointCloud< PointT > & cloud,
const pcl::PointIndices & indices,
Eigen::Vector4f & min_pt,
Eigen::Vector4f & max_pt
)
inline

#include <pcl/common/common.h>

Получить минимальные и максимальные значения по трём осям (x-y-z) в заданном облаке точек.

Параметры
[in] cloud сообщение с данными облака точек
[in] indices вектор индексов точек для использования из cloud
[out] min_pt результирующие минимальные пределы
[out] max_pt результирующие максимальные пределы

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

Ссылки на pcl::getMinMax3D(), и pcl::PointIndices::indices.

getMinMax3D() [3/4]

template<typename PointT >
void pcl::getMinMax3D ( const pcl::PointCloud< PointT > & cloud,
Eigen::Vector4f & min_pt,
Eigen::Vector4f & max_pt
)
inline

#include <pcl/common/common.h>

Получить минимальные и максимальные значения по трём осям (x-y-z) в заданном облаке точек.

Параметры
[in] cloud сообщение с данными облака точек
[out] min_pt результирующие минимальные пределы
[out] max_pt результирующие максимальные пределы

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

Ссылки на pcl::PointCloud< PointT >::is_dense, и pcl::PointCloud< PointT >::points.

getMinMax3D() [4/4]

template<typename PointT >
void pcl::getMinMax3D ( const pcl::PointCloud< PointT > & cloud,
PointT & min_pt,
PointT & max_pt
)
inline

#include <pcl/common/common.h>

Получить минимальные и максимальные значения по трём осям (x-y-z) в заданном облаке точек.

Параметры
[in] cloud сообщение с данными облака точек
[out] min_pt результирующие минимальные пределы
[out] max_pt результирующие максимальные пределы

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

Используется в pcl::gpu::people::buildTree(), pcl::tracking::ParticleFilterTracker< PointInT, StateT >::calcBoundingBox(), pcl::GASDEstimation< PointInT, PointOutT >::computeFeature(), pcl::gpu::DataSource::DataSource(), pcl::GridProjection< PointNT >::getBoundingBox(), pcl::MarchingCubes< PointNT >::getBoundingBox(), pcl::getMinMax3D(), pcl::registration::FPCSInitialAlignment< PointSource, PointTarget, NormalT, Scalar >::initCompute(), pcl::MovingLeastSquares< PointInT, PointOutT >::MLSVoxelGrid::MLSVoxelGrid(), и pcl::gpu::people::label_skeleton::sortIndicesToBlob2().

getPointCloudAsEigen()

PCL_EXPORTS bool pcl::getPointCloudAsEigen ( const pcl::PCLPointCloud2 & in,
Eigen::MatrixXf & out
)

#include <pcl/common/io.h>

Скопировать XYZ-размеры pcl::PCLPointCloud2 в формат Eigen.

Parameters
[in] in сообщение о облаке точек
[out] out результирующая матрица Eigen MatrixXf, содержащая XYZ0 / точку

getPointsInBox()

template<typename PointT >
void pcl::getPointsInBox ( const pcl::PointCloud< PointT > & cloud,
Eigen::Vector4f & min_pt,
Eigen::Vector4f & max_pt,
Indices & indices
)
inline

#include <pcl/common/common.h>

Получить набор точек, находящихся в прямоугольном параллелепипеде, заданном границами.

Parameters
cloud данные облака точек
min_pt минимальные границы
max_pt максимальные границы
indices результирующий набор индексов точек, находящихся в прямоугольном параллелепипеде

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

Ссылки на pcl::PointCloud< PointT >::is_dense и pcl::PointCloud< PointT >::size().

Используется в pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::queryBBIncludes().

getTransformation() [1/2]

Eigen::Affine3f pcl::getTransformation ( float x,
float y,
float z,
float roll,
float pitch,
float yaw
)
inline

#include <pcl/common/eigen.h>

Создать преобразование из заданного смещения и углов Эйлера (внутренние вращения, соглашение ZYX)

Parameters
[in] x входное смещение x
[in] y входное смещение y
[in] z входное смещение z
[in] roll входной угол roll
[in] pitch входной угол pitch
[in] yaw входной угол yaw
Returns
результирующая матрица преобразования

Определение в строке 316 файла eigen.h.

getTransformation() [2/2]

template<typename Scalar >
void pcl::getTransformation ( Scalar x,
Scalar y,
Scalar z,
Scalar roll,
Scalar pitch,
Scalar yaw,
Eigen::Transform< Scalar, 3, Eigen::Affine > & t
)

#include <pcl/common/eigen.h>

Создать преобразование из заданного смещения и углов Эйлера (внутренние вращения, соглашение ZYX)

Parameters
[in] x входное смещение x
[in] y входное смещение y
[in] z входное смещение z
[in] roll входной угол roll
[in] pitch входной угол pitch
[in] yaw входной угол yaw
[out] t результирующая матрица преобразования

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

Ссылки на pcl::B.

Используется в pcl::CropBox< PointT >::applyFilter(), pcl::registration::LUM< PointT >::computeEdge(), pcl::registration::LUM< PointT >::getConcatenatedCloud(), pcl::registration::LUM< PointT >::getTransformation(), pcl::registration::LUM< PointT >::getTransformedCloud(), pcl::tracking::ParticleXYZRPY::sample(), pcl::tracking::ParticleXYZRPY::toEigenMatrix(), pcl::tracking::ParticleXYZR::toEigenMatrix(), pcl::tracking::ParticleXYRPY::toEigenMatrix(), pcl::tracking::ParticleXYRP::toEigenMatrix(), и pcl::tracking::ParticleXYR::toEigenMatrix().

getTransformationFromTwoUnitVectors() [1/2]

Eigen::Affine3f pcl::getTransformationFromTwoUnitVectors ( const Eigen::Vector3f & y_direction,
const Eigen::Vector3f & z_axis
)
inline

#include <pcl/common/eigen.h>

Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1), а y_direction — в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] y_direction направление Y
[in] z_axis ось Z
Returns
transformation результирующее 3D вращение

Definition at line 563 of file eigen.hpp.

References pcl::getTransformationFromTwoUnitVectors().

getTransformationFromTwoUnitVectors() [2/2]

void pcl::getTransformationFromTwoUnitVectors ( const Eigen::Vector3f & y_direction,
const Eigen::Vector3f & z_axis,
Eigen::Affine3f & transformation
)
inline

#include <pcl/common/eigen.h>

Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1), а y_direction — в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] y_direction направление Y
[in] z_axis ось Z
[out] transformation результирующее 3D вращение

Definition at line 554 of file eigen.hpp.

References pcl::getTransFromUnitVectorsZY().

Referenced by pcl::RangeImage::getRotationToViewerCoordinateFrame(), pcl::getTransformationFromTwoUnitVectors(), and pcl::getTransformationFromTwoUnitVectorsAndOrigin().

getTransformationFromTwoUnitVectorsAndOrigin()

void pcl::getTransformationFromTwoUnitVectorsAndOrigin ( const Eigen::Vector3f & y_direction,
const Eigen::Vector3f & z_axis,
const Eigen::Vector3f & origin,
Eigen::Affine3f & transformation
)
inline

#include <pcl/common/eigen.h>

Получить преобразование, которое переведёт origin в (0,0,0) и повернёт z_axis в (0,0,1), а y_direction — в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] y_direction направление Y
[in] z_axis ось Z
[in] origin начальная точка
[in] transformation результирующая матрица преобразования

Definition at line 573 of file eigen.hpp.

References pcl::getTransformationFromTwoUnitVectors().

Referenced by pcl::RangeImage::getTransformationToViewerCoordinateFrame().

getTransFromUnitVectorsXY() [1/2]

Eigen::Affine3f pcl::getTransFromUnitVectorsXY ( const Eigen::Vector3f & x_axis,
const Eigen::Vector3f & y_direction
)
inline

#include <pcl/common/eigen.h>

Получить уникальное 3D вращение, которое повернёт x_axis в (1,0,0), а y_direction — в вектор с z=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] x_axis ось X
[in] y_direction направление Y
Returns
результирующее 3D вращение

Definition at line 544 of file eigen.hpp.

References pcl::getTransFromUnitVectorsXY().

getTransFromUnitVectorsXY() [2/2]

void pcl::getTransFromUnitVectorsXY ( const Eigen::Vector3f & x_axis,
const Eigen::Vector3f & y_direction,
Eigen::Affine3f & transformation
)
inline

#include <pcl/common/eigen.h>

Получить уникальное 3D вращение, которое повернёт x_axis в (1,0,0), а y_direction — в вектор с z=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] x_axis ось X
[in] y_direction направление Y
[out] transformation результирующее 3D вращение

Definition at line 528 of file eigen.hpp.

Referenced by pcl::getTransFromUnitVectorsXY().

getTransFromUnitVectorsZY() [1/2]

Eigen::Affine3f pcl::getTransFromUnitVectorsZY ( const Eigen::Vector3f & z_axis,
const Eigen::Vector3f & y_direction
)
inline

#include <pcl/common/eigen.h>

Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1) и y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] z_axis ось z
[in] y_direction направление y
Returns
результирующее 3D вращение

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

Ссылки на pcl::getTransFromUnitVectorsZY().

getTransFromUnitVectorsZY() [2/2]

void pcl::getTransFromUnitVectorsZY ( const Eigen::Vector3f & z_axis,
const Eigen::Vector3f & y_direction,
Eigen::Affine3f & transformation
)
inline

#include <pcl/common/eigen.h>

Получить уникальное 3D вращение, которое повернёт z_axis в (0,0,1) и y_direction в вектор с x=0 (или в (0,1,0), если y_direction ортогонален z_axis)

Parameters
[in] z_axis ось z
[in] y_direction направление y
[out] transformation результирующее 3D вращение

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

Используется в pcl::getTransformationFromTwoUnitVectors() и pcl::getTransFromUnitVectorsZY().

getTranslationAndEulerAngles()

template<typename Scalar >
void pcl::getTranslationAndEulerAngles ( const Eigen::Transform< Scalar, 3, Eigen::Affine > & t,
Scalar & x,
Scalar & y,
Scalar & z,
Scalar & roll,
Scalar & pitch,
Scalar & yaw
)

#include <pcl/common/eigen.h>

Извлечь x, y, z и углы Эйлера (внутренние вращения, соглашение ZYX) из заданной трансформации.

Parameters
[in] t входная матрица преобразования
[out] x результирующее смещение по оси x
[out] y результирующее смещение по оси y
[out] z результирующее смещение по оси z
[out] roll результирующий угол поворота вокруг оси x
[out] pitch результирующий угол поворота вокруг оси y
[out] yaw результирующий угол поворота вокруг оси z

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

Используется в pcl::Narf::copyToNarf36(), pcl::tracking::ParticleXYZRPY::toState(), pcl::tracking::ParticleXYZR::toState(), pcl::tracking::ParticleXYRPY::toState(), pcl::tracking::ParticleXYRP::toState() и pcl::tracking::ParticleXYR::toState().

HIK_Norm()

template<typename FloatVectorT >
float pcl::HIK_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычислить норму HIK вектора между двумя точками.

Parameters
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Note
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Используется в pcl::selectNorm().

invert2x2()

template<typename Matrix >
Matrix::Scalar pcl::invert2x2 ( const Matrix & matrix,
Matrix & inverse
)
inline

#include <pcl/common/eigen.h>

Вычислить обратную матрицу 2x2.

Parameters
[in] matrix матрица, подлежащая инверсии
[out] inverse результирующая инвертированная матрица
Note
в расчёт берётся только верхняя треугольная часть => для несимметричных матриц будут неверные результаты
Returns
определитель исходной матрицы => если 0, обратная матрица не существует => результат недействителен

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

invert3x3Matrix()

template<typename Matrix >
Matrix::Scalar pcl::invert3x3Matrix ( const Matrix & matrix,
Matrix & inverse
)
inline

#include <pcl/common/eigen.h>

Вычисление обратной матрицы для общей матрицы 3x3.

Параметры
[in] matrix матрица, для которой требуется обратная
[out] inverse результирующая обратная матрица
Возвращает
определитель исходной матрицы => если 0, обратной матрицы не существует => результат недействителен

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

invert3x3SymMatrix()

template<typename Matrix >
Matrix::Scalar pcl::invert3x3SymMatrix ( const Matrix & matrix,
Matrix & inverse
)
inline

#include <pcl/common/eigen.h>

Вычисление обратной матрицы для симметричной матрицы 3x3.

Параметры
[in] matrix матрица, для которой требуется обратная
[out] inverse результирующая обратная матрица
Примечание
учитывается только верхняя треугольная часть => несимметричные матрицы дадут неправильные результаты
Возвращает
определитель исходной матрицы => если 0, обратной матрицы не существует => результат недействителен

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

isBetterCorrespondence()

bool pcl::isBetterCorrespondence ( const Correspondence & pc1,
const Correspondence & pc2
)
inline

#include <pcl/correspondence.h>

Компаратор для сортировки вектора PointCorrespondences по их оценкам с использованием std::sort (begin(), end(), isBetterCorrespondence);.

Определение в строке 146 файла correspondence.h.

Ссылки на pcl::Correspondence::distance.

JM_Norm()

template<typename FloatVectorT >
float pcl::JM_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление нормы JM вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Ссылка на pcl::selectNorm().

K_Norm()

template<typename FloatVectorT >
float pcl::K_Norm ( FloatVectorT A,
FloatVectorT B,
int dim,
float P1,
float P2
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление нормы K вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
P1 первый параметр
P2 второй параметр
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

KL_Norm()

template<typename FloatVectorT >
float pcl::KL_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление KL между двумя дискретными функциями плотности вероятности.

Параметры
A первая дискретная функция распределения вероятностей
B вторая дискретная функция распределения вероятностей
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Ссылка на pcl::selectNorm().

L1_Norm()

template<typename FloatVectorT >
float pcl::L1_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычислить L1-норму вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Используется в pcl::Narf::getDescriptorDistance() и pcl::selectNorm().

L2_Norm()

template<typename FloatVectorT >
float pcl::L2_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычислить L2-норму вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Ссылки на pcl::L2_Norm_SQR().

Используется в pcl::selectNorm().

L2_Norm_SQR()

template<typename FloatVectorT >
float pcl::L2_Norm_SQR ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычислить квадрат L2-нормы вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Используется в pcl::L2_Norm() и pcl::selectNorm().

lineToLineSegment()

PCL_EXPORTS void pcl::lineToLineSegment ( const Eigen::VectorXf & line_a,
const Eigen::VectorXf & line_b,
Eigen::Vector4f & pt1_seg,
Eigen::Vector4f & pt2_seg
)

#include <pcl/common/distances.h>

Получить кратчайший 3D отрезок между двумя 3D линиями.

Параметры
line_a коэффициенты первой линии (точка, направление)
line_b коэффициенты второй линии (точка, направление)
pt1_seg первая точка на отрезке
pt2_seg вторая точка на отрезке

Используется в pcl::lineWithLineIntersection().

lineWithLineIntersection() [1/2]

PCL_EXPORTS bool pcl::lineWithLineIntersection ( const Eigen::VectorXf & line_a,
const Eigen::VectorXf & line_b,
Eigen::Vector4f & point,
double sqr_eps = 1e-4
)
inline

#include <pcl/common/impl/intersections.hpp>

Получить пересечение двух 3D линий в пространстве в качестве 3D точки.

Параметры
[in] line_a коэффициенты первой линии (точка, направление)
[in] line_b коэффициенты второй линии (точка, направление)
[out] point буфер для вычисленной 3D точки
[in] sqr_eps максимально допустимое возведённое в квадрат расстояние до истинного решения

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

Ссылки на pcl::lineToLineSegment().

Используется в pcl::lineWithLineIntersection().

lineWithLineIntersection() [2/2]

PCL_EXPORTS bool pcl::lineWithLineIntersection ( const pcl::ModelCoefficients & line_a,
const pcl::ModelCoefficients & line_b,
Eigen::Vector4f & point,
double sqr_eps = 1e-4
)
inline

#include <pcl/common/impl/intersections.hpp>

Получить точку пересечения двух 3D линий в пространстве.

Параметры
[in] line_a коэффициенты первой линии (точка, направление)
[in] line_b коэффициенты второй линии (точка, направление)
[out] point переменная для вычисленной 3D точки
[in] sqr_eps максимально допустимое значение квадрата расстояния до истинного решения

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

Ссылки на pcl::lineWithLineIntersection() и pcl::ModelCoefficients::values.

Linf_Norm()

template<typename FloatVectorT >
float pcl::Linf_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление нормы L-бесконечности вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

Используется в pcl::selectNorm().

loadBinary()

template<typename Derived >
void pcl::loadBinary ( Eigen::MatrixBase< Derived > const & matrix,
std::istream & file
)
inline

#include <pcl/common/eigen.h>

Чтение матрицы из потока ввода.

Параметры
[out] matrix результирующая матрица, считанная из потока ввода
[in,out] file поток ввода

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

normAngle()

float pcl::normAngle ( float alpha )
inline

#include <pcl/common/angles.h>

Нормализация угла в диапазоне (-PI, PI].

Параметры
alpha входной угол (в радианах)

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

Ссылки на M_PI.

PF_Norm()

template<typename FloatVectorT >
float pcl::PF_Norm ( FloatVectorT A,
FloatVectorT B,
int dim,
float P1,
float P2
)
inline

#include <pcl/common/impl/norms.hpp>

Вычисление нормы PF вектора между двумя точками.

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
P1 первый параметр
P2 второй параметр
Примечание
FloatVectorT — любой тип вектора, значения которого доступны через [ ]

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

rad2deg() [1/2]

double pcl::rad2deg ( double alpha )
inline

#include <pcl/common/angles.h>

Преобразование угла из радиан в градусы.

Параметры
alpha входной угол (в радианах)

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

rad2deg() [2/2]

float pcl::rad2deg ( float alpha )
inline

#include <pcl/common/angles.h>

Преобразование угла из радиан в градусы.

Параметры
alpha входной угол (в радианах)

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

Используется в pcl::ShapeContext3DEstimation< PointInT, PointNT, PointOutT >::computePoint(), pcl::UniqueShapeContext< PointInT, PointOutT, PointRFT >::computePointDescriptor() и pcl::Edge< ImageType, ImageType >::detectEdgeRoberts().

saveBinary()

template<typename Derived >
void pcl::saveBinary ( const Eigen::MatrixBase< Derived > & matrix,
std::ostream & file
)

#include <pcl/common/eigen.h>

Записать матрицу в поток вывода.

Параметры
[вход] matrix матрица для вывода
[вывод] file поток вывода

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

selectNorm()

template<typename FloatVectorT >
float pcl::selectNorm ( FloatVectorT A,
FloatVectorT B,
int dim,
NormType norm_type
)
inline

#include <pcl/common/impl/norms.hpp>

Метод, вычисляющий любой тип нормы, доступный на основе переменной norm_type.

Примечание
FloatVectorT — любой тип вектора с доступом к значениям через [ ]

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

Ссылки на pcl::B, pcl::B_Norm(), pcl::CS, pcl::CS_Norm(), pcl::DIV, pcl::Div_Norm(), pcl::HIK, pcl::HIK_Norm(), pcl::JM, pcl::JM_Norm(), pcl::K, pcl::KL, pcl::KL_Norm(), pcl::L1, pcl::L1_Norm(), pcl::L2, pcl::L2_Norm(), pcl::L2_Norm_SQR(), pcl::L2_SQR, pcl::LINF, pcl::Linf_Norm(), pcl::PF, pcl::SUBLINEAR, и pcl::Sublinear_Norm().

sqrPointToLineDistance() [1/2]

double pcl::sqrPointToLineDistance ( const Eigen::Vector4f & pt,
const Eigen::Vector4f & line_pt,
const Eigen::Vector4f & line_dir
)
inline

#include <pcl/common/distances.h>

Получить квадрат расстояния от точки до прямой (представленной точкой и направлением)

Параметры
pt точка
line_pt точка на прямой (убедитесь, что line_pt[3] = 0, так как внутренних проверок нет!)
line_dir направление прямой

Определение в строке 75 файла distances.h.

Используется в pcl::SampleConsensusModelCylinder< PointT, PointNT >::computeModelCoefficients(), pcl::SampleConsensusModelCone< PointT, PointNT >::pointToAxisDistance() и pcl::SampleConsensusModelCylinder< PointT, PointNT >::pointToLineDistance().

sqrPointToLineDistance() [2/2]

double pcl::sqrPointToLineDistance ( const Eigen::Vector4f & pt,
const Eigen::Vector4f & line_pt,
const Eigen::Vector4f & line_dir,
const double sqr_length
)
inline

#include <pcl/common/distances.h>

Получить квадрат расстояния от точки до прямой (представленной точкой и направлением)

Примечание
Этот вариант полезен, если нужно вычислить много расстояний до фиксированной прямой, поэтому длина вектора может быть предварительно вычислена
Параметры
pt точка
line_pt точка на прямой (убедитесь, что line_pt[3] = 0, так как внутренних проверок нет!)
line_dir направление прямой
sqr_length квадрат нормы направления прямой

Определение в строке 91 файла distances.h.

Sublinear_Norm()

template<typename FloatVectorT >
float pcl::Sublinear_Norm ( FloatVectorT A,
FloatVectorT B,
int dim
)
inline

#include <pcl/common/impl/norms.hpp>

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

Параметры
A первая точка
B вторая точка
dim количество измерений в A и B (измерения должны совпадать)
Примечание
FloatVectorT — любой тип вектора с доступом к значениям через [ ]

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

Используется в pcl::selectNorm().

swapByte()

template<std::size_t N>
void pcl::io::swapByte ( char * bytes )

#include <pcl/common/io.h>

обмен порядка байтов массива char длиной N

Parameters
bytes массив char для обмена

transformPoint()

template<typename PointT , typename Scalar >
PointT pcl::transformPoint ( const PointT & point,
const Eigen::Transform< Scalar, 3, Eigen::Affine > & transform
)
inline

#include <pcl/common/impl/transforms.hpp>

Преобразование точки с членами x, y, z.

Parameters
[in] point точка для преобразования
[out] transform преобразование для применения
Returns
преобразованная точка

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

Ссылки на pcl::detail::Transformer< Scalar >::se3().

transformPointCloud() [1/8]

void pcl::transformPointCloud ( const pcl::PointCloud< pcl::PointXY > & cloud_in,
pcl::PointCloud< pcl::PointXY > & cloud_out,
const Eigen::Affine2f & transform,
bool copy_all_fields = true
)
inline

#include <pcl/common/impl/transforms.hpp>

Применение аффинного преобразования к облаку точек, имеющему точки типа PointXY.

Parameters
[in] cloud_in входное облако точек
[out] cloud_out результирующее выходное облако точек
[in] transform аффинное преобразование
[in] copy_all_fields флаг, определяющий, нужно ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако

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

Ссылки на pcl::PointCloud< PointT >::assign(), pcl::PointCloud< PointT >::begin(), pcl::PointCloud< PointT >::end(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

transformPointCloud() [2/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const Indices & indices,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Matrix< Scalar, 4, 4 > & transform,
bool copy_all_fields = true
)

#include <pcl/common/impl/transforms.hpp>

Применение жёсткого преобразования, определяемого матрицей 4x4.

Parameters
[in] cloud_in входное облако точек
[in] indices набор индексов точек для использования из входного облака точек
[out] cloud_out результирующее выходное облако точек
[in] transform жёсткое преобразование
[in] copy_all_fields флаг, определяющий, нужно ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако

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

Ссылки на pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::detail::Transformer< Scalar >::se3(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, и pcl::PointCloud< PointT >::width.

transformPointCloud() [3/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const Indices & indices,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Transform< Scalar, 3, Eigen::Affine > & transform,
bool copy_all_fields = true
)

#include <pcl/common/transforms.h>

Применить аффинное преобразование, определённое с помощью преобразования Eigen.

Параметры
[вход] cloud_in облако точек на входе
[вход] indices множество индексов точек для использования из входного облака точек
[выход] cloud_out результирующее выходное облако точек
[вход] transform аффинное преобразование (обычно ригидное преобразование)
[вход] copy_all_fields флаг, определяющий, нужно ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако точек

Определение в строке 86 файла transforms.h.

transformPointCloud() [4/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const pcl::PointIndices & indices,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Matrix< Scalar, 4, 4 > & transform,
bool copy_all_fields = true
)

#include <pcl/common/transforms.h>

Применить ригидное преобразование, определённое 4x4 матрицей.

Параметры
[вход] cloud_in облако точек на входе
[вход] indices множество индексов точек для использования из входного облака точек
[выход] cloud_out результирующее выходное облако точек
[вход] transform ригидное преобразование
[вход] copy_all_fields флаг, определяющий, нужно ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако точек

Определение в строке 280 файла transforms.h.

Ссылки на pcl::PointIndices::indices.

transformPointCloud() [5/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
const pcl::PointIndices & indices,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Transform< Scalar, 3, Eigen::Affine > & transform,
bool copy_all_fields = true
)

#include <pcl/common/transforms.h>

Применить аффинное преобразование, определённое с помощью преобразования Eigen.

Параметры
[вход] cloud_in облако точек на входе
[вход] indices множество индексов точек для использования из входного облака точек
[выход] cloud_out результирующее выходное облако точек
[вход] transform аффинное преобразование (обычно ригидное преобразование)
[вход] copy_all_fields флаг, определяющий, нужно ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако точек

Определение в строке 115 файла transforms.h.

Ссылки на pcl::PointIndices::indices.

transformPointCloud() [6/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Matrix< Scalar, 3, 1 > & offset,
const Eigen::Quaternion< Scalar > & rotation,
bool copy_all_fields = true
)
inline

#include <pcl/common/impl/transforms.hpp>

Применить ригидное преобразование, определённое смещением в 3D и кватернионом.

Параметры
[вход] cloud_in облако точек на входе
[выход] cloud_out результирующее выходное облако точек
[вход] offset компонент перевода ригидного преобразования
[вход] rotation компонент вращения ригидного преобразования
[вход] copy_all_fields флаг, определяющий, нужно ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако точек

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

Ссылки на pcl::transformPointCloud().

transformPointCloud() [7/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Matrix< Scalar, 4, 4 > & transform,
bool copy_all_fields = true
)

#include <pcl/common/impl/transforms.hpp>

Применить жёсткое преобразование, определённое матрицей 4x4.

Параметры
[in] cloud_in входное облако точек
[out] cloud_out результирующее выходное облако точек
[in] transform жёсткое преобразование
[in] copy_all_fields флаг, который управляет тем, следует ли копировать содержимое полей (кроме x, y, z) в новое преобразованное облако
Примечание
Может использоваться с cloud_in, равным cloud_out

Определение на строке 221 файла transforms.hpp.

Ссылки на pcl::PointCloud< PointT >::assign(), pcl::PointCloud< PointT >::begin(), pcl::PointCloud< PointT >::data(), pcl::PointCloud< PointT >::end(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::resize(), pcl::detail::Transformer< Scalar >::se3(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

Используется в ObjectRecognition::alignModelPoints(), pcl::people::GroundBasedPeopleDetectionApp< PointT >::applyTransformationPointCloud(), pcl::registration::ELCH< PointT >::compute(), pcl::GASDEstimation< PointInT, PointOutT >::computeFeature(), pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >::computeRFAndShapeDistribution(), pcl::NormalDistributionsTransform< PointSource, PointTarget, Scalar >::computeStepLengthMT(), pcl::registration::FPCSInitialAlignment< PointSource, PointTarget, NormalT, Scalar >::computeTransformation(), pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >::computeTransformation(), pcl::NormalDistributionsTransform2D< PointSource, PointTarget >::computeTransformation(), pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::computeTransformation(), pcl::NormalDistributionsTransform< PointSource, PointTarget, Scalar >::computeTransformation(), pcl::registration::LUM< PointT >::getConcatenatedCloud(), pcl::kinfuLS::WorldModel< pcl::PointXYZI >::getExistingData(), pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getFitness(), pcl::Registration< PointSource, PointTarget, Scalar >::getFitnessScore(), pcl::gpu::kinfuLS::StandaloneMarchingCubes< PointT >::getMeshesFromTSDFVector(), pcl::registration::LUM< PointT >::getTransformedCloud(), pcl::TextureMapping< PointInT >::mapMultipleTexturesToMeshUV(), pcl::ConcaveHull< PointInT >::performReconstruction(), pcl::registration::MetaRegistration< PointT, Scalar >::registerCloud(), pcl::ESFEstimation< PointInT, PointOutT >::scale_points_unit_sphere(), pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >::sgurf(), pcl::TextureMapping< PointInT >::sortFacesByCamera(), pcl::TextureMapping< PointInT >::textureMeshwithMultipleCameras(), pcl::transformPointCloud(), pcl::registration::FPCSInitialAlignment< PointSource, PointTarget, NormalT, Scalar >::validateMatch(), pcl::registration::FPCSInitialAlignment< PointSource, PointTarget, NormalT, Scalar >::validateTransformation(), и pcl::registration::KFPCSInitialAlignment< PointSource, PointTarget, NormalT, Scalar >::validateTransformation().

transformPointCloud() [8/8]

template<typename PointT , typename Scalar >
void pcl::transformPointCloud ( const pcl::PointCloud< PointT > & cloud_in,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Transform< Scalar, 3, Eigen::Affine > & transform,
bool copy_all_fields = true
)

#include <pcl/common/transforms.h>

Применить аффинное преобразование, определённое с помощью преобразования Eigen.

Параметры
[вход] cloud_in облако точек входных данных
[выход] cloud_out результирующее облако точек
[вход] transform аффинное преобразование (обычно, ригидное преобразование)
[вход] copy_all_fields флаг, контролирующий, будут ли скопированы в новое преобразованное облако значения полей (кроме x, y, z)
Примечание
Можно использовать с cloud_in равным cloud_out

Определение в строке 59 файла transforms.h.

transformPointCloudWithNormals() [1/4]

template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals ( const pcl::PointCloud< PointT > & cloud_in,
const Indices & indices,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Matrix< Scalar, 4, 4 > & transform,
bool copy_all_fields = true
)

#include <pcl/common/impl/transforms.hpp>

Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen.

Параметры
[вход] cloud_in облако точек входных данных
[вход] indices множество индексов точек для использования из входного облака точек
[выход] cloud_out результирующее облако точек
[вход] transform аффинное преобразование (обычно, ригидное преобразование)
[вход] copy_all_fields флаг, контролирующий, будут ли скопированы в новое преобразованное облако значения полей (кроме x, y, z, normal_x, normal_y, normal_z)
Примечание
Можно использовать с cloud_in равным cloud_out

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

Ссылки на pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::detail::Transformer< Scalar >::se3(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), pcl::detail::Transformer< Scalar >::so3(), и pcl::PointCloud< PointT >::width.

transformPointCloudWithNormals() [2/4]

template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals ( const pcl::PointCloud< PointT > & cloud_in,
const pcl::PointIndices & indices,
pcl::PointCloud< PointT > & cloud_out,
const Eigen::Matrix< Scalar, 4, 4 > & transform,
bool copy_all_fields = true
)

#include <pcl/common/transforms.h>

Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen.

Параметры
[вход] cloud_in облако точек входных данных
[вход] indices множество индексов точек для использования из входного облака точек
[выход] cloud_out результирующее облако точек
[вход] transform аффинное преобразование (обычно, ригидное преобразование)
[вход] copy_all_fields флаг, контролирующий, будут ли скопированы в новое преобразованное облако значения полей (кроме x, y, z, normal_x, normal_y, normal_z)
Примечание
Можно использовать с cloud_in равным cloud_out

Определение в строке 366 файла transforms.h.

Ссылки на pcl::PointIndices::indices.

transformPointCloudWithNormals() [3/4]

template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals ( const pcl::PointCloud< PointT > & облако_вход,
pcl::PointCloud< PointT > & облако_выход,
const Eigen::Matrix< Scalar, 3, 1 > & смещение,
const Eigen::Quaternion< Scalar > & вращение,
bool скопировать_все_поля = true
)
inline

#include <pcl/common/impl/transforms.hpp>

Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen.

Parameters
[in] облако_вход облако входных точек
[out] облако_выход результирующее облако выходных точек
[in] смещение компонент перевода жесткого преобразования
[in] вращение компонент вращения жесткого преобразования
[in] скопировать_все_поля флаг, определяющий, следует ли копировать содержимое полей (кроме x, y, z, normal_x, normal_y, normal_z) в новое преобразованное облако

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

Ссылается на pcl::transformPointCloudWithNormals().

transformPointCloudWithNormals() [4/4]

template<typename PointT , typename Scalar >
void pcl::transformPointCloudWithNormals ( const pcl::PointCloud< PointT > & облако_вход,
pcl::PointCloud< PointT > & облако_выход,
const Eigen::Matrix< Scalar, 4, 4 > & преобразование,
bool скопировать_все_поля = true
)

#include <pcl/common/impl/transforms.hpp>

Преобразовать облако точек и повернуть его нормали с помощью преобразования Eigen.

Parameters
[in] облако_вход облако входных точек
[out] облако_выход результирующее облако выходных точек
[in] преобразование аффинное преобразование (обычно жесткое преобразование)
[in] скопировать_все_поля флаг, определяющий, следует ли копировать содержимое полей (кроме x, y, z, normal_x, normal_y, normal_z) в новое преобразованное облако
Примечание
Можно использовать с облако_вход равным облако_выход

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

Ссылается на pcl::PointCloud< PointT >::assign(), pcl::PointCloud< PointT >::begin(), pcl::PointCloud< PointT >::end(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::resize(), pcl::detail::Transformer< Scalar >::se3(), pcl::PointCloud< PointT >::sensor_orientation_, pcl::PointCloud< PointT >::sensor_origin_, pcl::PointCloud< PointT >::size(), pcl::detail::Transformer< Scalar >::so3(), и pcl::PointCloud< PointT >::width.

Используется в pcl::IterativeClosestPointWithNormals< PointSource, PointTarget, Scalar >::transformCloud() и pcl::transformPointCloudWithNormals().

transformPointWithNormal()

template<typename PointT , typename Scalar >
PointT pcl::transformPointWithNormal ( const PointT & точка,
const Eigen::Transform< Scalar, 3, Eigen::Affine > & преобразование
)
inline

#include <pcl/common/impl/transforms.hpp>

Преобразовать точку с членами x, y, z, normal_x, normal_y, normal_z.

Parameters
[in] точка точка для преобразования
[out] преобразование применяемое преобразование
Возвращает
преобразованная точка

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

Ссылается на pcl::detail::Transformer< Scalar >::se3() и pcl::detail::Transformer< Scalar >::so3().

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/group__common.html

Spec-Zone.ru

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