Spec-Zone.ru › PointCloudLibrary

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

Обзор

Библиотека pcl_features содержит структуры данных и механизмы для оценки 3D-признаков из данных облака точек. 3D-признаки — это представления в определенной 3D-точке или позиции в пространстве, которые описывают геометрические узоры на основе доступной информации вокруг точки. Выбранное пространство данных вокруг точки запроса обычно называется k-окрестностью.

На рисунке ниже показан простой пример выбранной точки запроса и её выбранной k-окрестности.

Пример двух наиболее широко используемых геометрических признаков точки — это оценочная кривизна и нормаль поверхности в точке запроса p. Оба они считаются локальными признаками, так как характеризуют точку, используя информацию от k ближайших соседей. Для эффективного определения этих соседей входные данные обычно разбиваются на меньшие части с использованием методов пространственного разбиения, таких как ок-деревья или kD-деревья (см. рисунок ниже — слева: kD-дерево, справа: ок-дерево), а затем выполняется поиск ближайших точек в этом пространстве. В зависимости от применения можно выбрать либо определение фиксированного числа k точек в окрестности точки p, либо всех точек, которые находятся внутри сферы радиуса r с центром в точке p. Несомненно, одним из самых простых методов оценки изменений нормалей поверхности и кривизны в точке p является вычисление собственного разложения (т.е. вычисление собственных векторов и собственных значений) k-окрестности участка поверхности точки. Таким образом, собственный вектор, соответствующий наименьшему собственному значению, будет приближённо описывать нормаль поверхности n в точке p, в то время как изменение кривизны поверхности будет оцениваться по собственным значениям следующим образом:

$\frac{\lambda_0}{\lambda_0 + \lambda_1 + \lambda_2}$, где $\lambda_0 < \lambda_1 < \lambda_2$.

Дополнительную информацию можно найти на сайте http://www.pointclouds.org.

Требования

  • common
  • search
  • kdtree
  • octree
  • range_image

Классы

class pcl::ShapeContext3DEstimation< PointInT, PointNT, PointOutT >
ShapeContext3DEstimation реализует 3D дескриптор контекста формы, как описано в: Подробнее...
class pcl::BOARDLocalReferenceFrameEstimation< PointInT, PointNT, PointOutT >
BOARDLocalReferenceFrameEstimation реализует алгоритм BOrder Aware Repeatable Directions для оценки локальной системы координат, как описано здесь: Подробнее...
class pcl::BoundaryEstimation< PointInT, PointNT, PointOutT >
BoundaryEstimation оценивает, лежат ли точки на границах поверхности, используя критерий угла. Подробнее...
class pcl::BRISK2DEstimation< PointInT, PointOutT, KeypointT, IntensityT >
Реализация дескриптора BRISK, основанная на оригинальном коде и ссылках на статью. Подробнее...
class pcl::CRHEstimation< PointInT, PointNT, PointOutT >
CRHEstimation оценивает дескриптор Гистограммы поворота камеры (CRH) для заданного набора точек, содержащего данные XYZ и нормали, как представлено в: Подробнее...
class pcl::CVFHEstimation< PointInT, PointNT, PointOutT >
CVFHEstimation оценивает дескриптор Гистограммы кластеризованных точек обзора (CVFH) для заданного набора точек, содержащего данные XYZ и нормали, как представлено в: Подробнее...
class pcl::DifferenceOfNormalsEstimation< PointInT, PointNT, PointOutT >
Реализация фильтра шкалы Разности нормалей (DoN) для данных облака точек. Подробнее...
class pcl::ESFEstimation< PointInT, PointOutT >
ESFEstimation оценивает набор дескрипторов функций формы для заданного набора точек, содержащего точки. Подробнее...
class pcl::Feature< PointInT, PointOutT >
Feature представляет базовый класс признака. Подробнее...
class pcl::FeatureWithLocalReferenceFrames< PointInT, PointRFT >
FeatureWithLocalReferenceFrames предоставляет публичный интерфейс для классов извлекателей дескрипторов, которые нуждаются в локальной системе координат в каждой точке входа. Подробнее...
class pcl::FLARELocalReferenceFrameEstimation< PointInT, PointNT, PointOutT, SignedDistanceT >
FLARELocalReferenceFrameEstimation реализует алгоритм Fast LocAl Reference framE для оценки локальной системы координат, как описано здесь: Подробнее...
class pcl::FPFHEstimation< PointInT, PointNT, PointOutT >
FPFHEstimation оценивает дескриптор Быстрой гистограммы признаков точки (FPFH) для заданного набора точек, содержащего точки и нормали. Подробнее...
class pcl::FPFHEstimationOMP< PointInT, PointNT, PointOutT >
FPFHEstimationOMP оценивает дескриптор Быстрой гистограммы признаков точки (FPFH) для заданного облака точек, содержащего точки и нормали, параллельно, используя стандарт OpenMP. Подробнее...
class pcl::GASDEstimation< PointInT, PointOutT >
GASDEstimation оценивает дескриптор Глобально выровненного пространственного распределения (GASD) для заданного облака точек на основе данных XYZ. Подробнее...
class pcl::GASDColorEstimation< PointInT, PointOutT >
GASDColorEstimation оценивает дескриптор Глобально выровненного пространственного распределения (GASD) для заданного облака точек с данными XYZ и RGB. Подробнее...
class pcl::GFPFHEstimation< PointInT, PointLT, PointOutT >
GFPFHEstimation оценивает глобальный быстрый гистограмму признаков точки (GFPFH) для заданного набора данных точек облака, содержащего точки и метки. Подробнее...
class pcl::GRSDEstimation< PointInT, PointNT, PointOutT >
GRSDEstimation оценивает глобальный радиус-основанный дескриптор поверхности (GRSD) для заданного набора данных точек облака, содержащего точки и нормали. Подробнее...
class pcl::IntensityGradientEstimation< PointInT, PointNT, PointOutT, IntensitySelectorT >
IntensityGradientEstimation оценивает градиент интенсивности для облака точек, содержащего значения координат и интенсивности. Подробнее...
class pcl::IntensitySpinEstimation< PointInT, PointOutT >
IntensitySpinEstimation оценивает дескрипторы спин-изображений в области интенсивности для заданного набора данных точек облака, содержащего точки и интенсивность. Подробнее...
class pcl::MomentInvariantsEstimation< PointInT, PointOutT >
MomentInvariantsEstimation оценивает 3 моментальных инварианта (j1, j2, j3) в каждой 3D точке. Подробнее...
class pcl::Narf
NARF (Нормаль Aligned Radial Features) — тип дескриптора признаков точки для 3D данных. Подробнее...
class pcl::NarfDescriptor
Вычисляет дескрипторы признаков NARF для точек в изображении дальности. См. B. Подробнее...
class pcl::NormalEstimation< PointInT, PointOutT >
NormalEstimation оценивает локальные свойства поверхности (нормали поверхности и кривизны) в каждой 3D точке. Подробнее...
class pcl::NormalEstimationOMP< PointInT, PointOutT >
NormalEstimationOMP оценивает локальные свойства поверхности в каждой 3D точке, такие как нормали поверхности и кривизны, в параллельном режиме, используя стандарт OpenMP. Подробнее...
class pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >
OURCVFHEstimation оценивает ориентированные, уникальные и повторяемые кластеризованные дескрипторы гистограмм вида признаков (CVFH) для заданного набора данных облака точек, используя данные XYZ и нормали, как представлено в: Подробнее...
class pcl::PFHEstimation< PointInT, PointNT, PointOutT >
PFHEstimation оценивает гистограмму признаков точки (PFH) для заданного набора данных облака точек, содержащего точки и нормали. Подробнее...
class pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >
PrincipalCurvaturesEstimation оценивает направления (собственные векторы) и величины (собственные значения) основных кривизн поверхности для заданного набора данных облака точек, содержащего точки и нормали. Подробнее...
class pcl::RangeImageBorderExtractor
Извлекает границы препятствий из изображений дальности, т.е. положения, где происходит переход от переднего плана к фону. Подробнее...
class pcl::RIFTEstimation< PointInT, GradientT, PointOutT >
RIFTEstimation оценивает дескрипторы преобразования инвариантных к вращению признаков для заданного набора данных облака точек, содержащего точки и интенсивность. Подробнее...
class pcl::RSDEstimation< PointInT, PointNT, PointOutT >
RSDEstimation оценивает дескриптор поверхности, основанный на радиусе (минимальный и максимальный радиусы локальных кривых поверхности), для заданного набора данных облака точек, содержащего точки и нормали. Подробнее...
class pcl::SHOTEstimationBase< PointInT, PointNT, PointOutT, PointRFT >
SHOTEstimation оценивает дескриптор Signature of Histograms of OrienTations (SHOT) для заданного облака точек, содержащего точки и нормали. Подробнее...
class pcl::SHOTEstimation< PointInT, PointNT, PointOutT, PointRFT >
SHOTEstimation оценивает дескриптор Signature of Histograms of OrienTations (SHOT) для заданного облака точек, содержащего точки и нормали. Подробнее...
class pcl::SHOTColorEstimation< PointInT, PointNT, PointOutT, PointRFT >
SHOTColorEstimation оценивает дескриптор Signature of Histograms of OrienTations (SHOT) для заданного облака точек, содержащего точки, нормали и цвета. Подробнее...
class pcl::SHOTLocalReferenceFrameEstimation< PointInT, PointOutT >
SHOTLocalReferenceFrameEstimation оценивает локальную систему координат, используемую в расчёте дескриптора (SHOT). Подробнее...
class pcl::SHOTLocalReferenceFrameEstimationOMP< PointInT, PointOutT >
SHOTLocalReferenceFrameEstimation оценивает локальную систему координат, используемую в расчёте дескриптора (SHOT). Подробнее...
class pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >
SHOTEstimationOMP оценивает дескриптор Signature of Histograms of OrienTations (SHOT) для заданного облака точек, содержащего точки и нормали, параллельно, используя стандарт OpenMP. Подробнее...
class pcl::SHOTColorEstimationOMP< PointInT, PointNT, PointOutT, PointRFT >
SHOTColorEstimationOMP оценивает дескриптор Signature of Histograms of OrienTations (SHOT) для заданного облака точек, содержащего точки, нормали и цвета, параллельно, используя стандарт OpenMP. Подробнее...
class pcl::SpinImageEstimation< PointInT, PointNT, PointOutT >
Оценивает дескрипторы spin-image для заданных входных точек. Подробнее...
class pcl::UniqueShapeContext< PointInT, PointOutT, PointRFT >
UniqueShapeContext реализует дескриптор Unique Shape Context, описанный здесь: Подробнее...
class pcl::VFHEstimation< PointInT, PointNT, PointOutT >
VFHEstimation оценивает дескриптор Гистограммы особенностей точки обзора (VFH) для заданного облака точек, содержащего точки и нормали. Подробнее...

Функции

void pcl::solvePlaneParameters (const Eigen::Matrix3f &covariance_matrix, const Eigen::Vector4f &point, Eigen::Vector4f &plane_parameters, float &curvature)
Решить задачу нахождения собственных значений и собственных векторов заданной 3x3 матрицы ковариаций и оценить нормаль плоскости наименьших квадратов и кривизну поверхности. Подробнее...
void pcl::solvePlaneParameters (const Eigen::Matrix3f &covariance_matrix, float &nx, float &ny, float &nz, float &curvature)
Решить задачу нахождения собственных значений и собственных векторов заданной 3x3 матрицы ковариаций и оценить нормаль плоскости наименьших квадратов и кривизну поверхности. Подробнее...
template<typename PointT >
bool pcl::computePointNormal (const pcl::PointCloud< PointT > &cloud, Eigen::Vector4f &plane_parameters, float &curvature)
Вычислить наименьшую плоскость методом наименьших квадратов для заданного набора точек и вернуть оцененные параметры плоскости вместе с кривизной поверхности. Подробнее...
template<typename PointT >
bool pcl::computePointNormal (const pcl::PointCloud< PointT > &cloud, const pcl::Indices &indices, Eigen::Vector4f &plane_parameters, float &curvature)
Вычислить наименьшую плоскость методом наименьших квадратов для заданного набора точек, используя их индексы, и вернуть оцененные параметры плоскости вместе с кривизной поверхности. Подробнее...
template<typename PointT , typename Scalar >
void pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, Eigen::Matrix< Scalar, 4, 1 > &normal)
Перевернуть (на месте) оцененную нормаль точки к заданной точке обзора. Подробнее...
template<typename PointT , typename Scalar >
void pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, Eigen::Matrix< Scalar, 3, 1 > &normal)
Перевернуть (на месте) оцененную нормаль точки к заданной точке обзора. Подробнее...
template<typename PointT >
void pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, float &nx, float &ny, float &nz)
Перевернуть (на месте) оцененную нормаль точки к заданной точке обзора. Подробнее...
template<typename PointNT >
bool pcl::flipNormalTowardsNormalsMean (pcl::PointCloud< PointNT > const &normal_cloud, pcl::Indices const &normal_indices, Eigen::Vector3f &normal)
Перевернуть (на месте) нормаль, чтобы получить тот же знак среднего значения нормалей, указанных normal_indices. Подробнее...
PCL_EXPORTS bool pcl::computePairFeatures (const Eigen::Vector4f &p1, const Eigen::Vector4f &n1, const Eigen::Vector4f &p2, const Eigen::Vector4f &n2, float &f1, float &f2, float &f3, float &f4)
Вычислить 4-кратное представление, содержащее три угла и одно расстояние между двумя точками, представленными декартовыми координатами и нормалями. Подробнее...
template<int N>
void pcl::getFeaturePointCloud (const std::vector< Eigen::MatrixXf, Eigen::aligned_allocator< Eigen::MatrixXf > > &histograms2D, PointCloud< Histogram< N > > &histogramsPC)
Преобразовать список 2D-матриц в облако точек, содержащее значения в векторе (Histogram<N>). Подробнее...
template<typename PointInT , typename PointNT , typename PointOutT >
Eigen::MatrixXf pcl::computeRSD (const pcl::PointCloud< PointInT > &surface, const pcl::PointCloud< PointNT > &normals, const pcl::Indices &indices, double max_dist, int nr_subdiv, double plane_radius, PointOutT &radii, bool compute_histogram=false)
Оценить Радиус-базированный дескриптор поверхности (RSD) для заданной точки на основе ее пространственного окрестности 3D точек с нормалями. Подробнее...
template<typename PointNT , typename PointOutT >
Eigen::MatrixXf pcl::computeRSD (const pcl::PointCloud< PointNT > &normals, const pcl::Indices &indices, const std::vector< float > &sqr_dists, double max_dist, int nr_subdiv, double plane_radius, PointOutT &radii, bool compute_histogram=false)
Оцените описатель поверхности на основе радиуса (RSD) для заданной точки на основе её пространственного окружения из 3D-точек с нормалями. Подробнее...

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

computePairFeatures()

PCL_EXPORTS bool pcl::computePairFeatures ( const Eigen::Vector4f & p1,
const Eigen::Vector4f & n1,
const Eigen::Vector4f & p2,
const Eigen::Vector4f & n2,
float & f1,
float & f2,
float & f3,
float & f4
)

#include <pcl/features/pfh_tools.h>

Вычислите 4-кортежное представление, содержащее три угла и одно расстояние между двумя точками, представленными декартовыми координатами и нормалями.

Примечание
Для пояснений по функциям см. вышеупомянутую литературу (порядок функций может быть другим).
Параметры
[in] p1 первая точка XYZ
[in] n1 первая нормаль поверхности
[in] p2 вторая точка XYZ
[in] n2 вторая нормаль поверхности
[out] f1 первая угловая характеристика (угол между проекцией nq_idx и u)
[out] f2 вторая угловая характеристика (угол между nq_idx и v)
[out] f3 третья угловая характеристика (угол между np_idx и |p_idx - q_idx|)
[out] f4 расстояние (p_idx - q_idx)
Примечание
Для повышения эффективности мы предполагаем, что данные точек, передаваемые в метод, конечны.

Ссылается на pcl::FPFHEstimation< PointInT, PointNT, PointOutT >::computePairFeatures(), pcl::PFHEstimation< PointInT, PointNT, PointOutT >::computePairFeatures(), pcl::PFHEstimation< PointInT, PointNT, PointOutT >::computePointPFHSignature(), pcl::VFHEstimation< PointInT, PointNT, PointOutT >::computePointSPFHSignature(), и pcl::FPFHEstimation< PointInT, PointNT, PointOutT >::computePointSPFHSignature().

computePointNormal() [1/2]

template<typename PointT >
bool pcl::computePointNormal ( const pcl::PointCloud< PointT > & cloud,
const pcl::Indices & indices,
Eigen::Vector4f & plane_parameters,
float & curvature
)
inline

#include <pcl/features/normal_3d.h>

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

Параметры
cloud входное облако точек
indices индексы облака точек, которые нужно использовать
plane_parameters параметры плоскости как: a, b, c, d (ax + by + cz + d = 0)
curvature оценённая кривизна поверхности как мера

\[ \lambda_0 / (\lambda_0 + \lambda_1 + \lambda_2) \]

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

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

computePointNormal() [2/2]

template<typename PointT >
bool pcl::computePointNormal ( const pcl::PointCloud< PointT > & cloud,
Eigen::Vector4f & plane_parameters,
float & curvature
)
inline

#include <pcl/features/normal_3d.h>

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

Параметры
cloud входное облако точек
plane_parameters параметры плоскости как: a, b, c, d (ax + by + cz + d = 0)
curvature оценённая кривизна поверхности как мера

\[ \lambda_0 / (\lambda_0 + \lambda_1 + \lambda_2) \]

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

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

Ссылки на pcl::NormalEstimation< PointInT, PointOutT >::computeFeature(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computeFeatureFull(), и pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computeFeaturePart().

computeRSD() [1/2]

шаблон<typename PointInT , typename PointNT , typename PointOutT >
Eigen::MatrixXf pcl::computeRSD ( const pcl::PointCloud< PointInT > & surface,
const pcl::PointCloud< PointNT > & normals,
const pcl::Indices & indices,
double max_dist,
int nr_subdiv,
double plane_radius,
PointOutT & radii,
bool compute_histogram = false
)

#include <pcl/features/rsd.h>

Оцените описатель поверхности на основе радиуса (RSD) для заданной точки на основе её пространственного окружения из 3D точек с нормалями.

Параметры
[вход] surface набор данных, содержащий точки XYZ
[вход] normals набор данных, содержащий нормали поверхности в каждой точке набора данных
[вход] indices индексы точек окрестности в наборе данных (первая точка используется в качестве ссылки)
[вход] max_dist верхняя граница интервала расстояний
[вход] nr_subdiv количество подразделений для интервала расстояний
[вход] plane_radius максимальный радиус, выше которого всё может считаться плоским
[вход] radii выходная точка типа, который должен иметь поля r_min и r_max
[вход] compute_histogram если не ложь, предоставляется полный гистограмма окрестности, пригодная в качестве подписи точки
Примечание
: ориентация игнорируется!
: мы игнорируем точки, которые находятся за пределами указанного интервала!

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

Ссылки на M_PI.

Используется pcl::RSDEstimation< PointInT, PointNT, PointOutT >::computeFeature().

computeRSD() [2/2]

шаблон<typename PointNT , typename PointOutT >
Eigen::MatrixXf pcl::computeRSD ( const pcl::PointCloud< PointNT > & normals,
const pcl::Indices & indices,
const std::vector< float > & sqr_dists,
double max_dist,
int nr_subdiv,
double plane_radius,
PointOutT & radii,
bool compute_histogram = false
)

#include <pcl/features/rsd.h>

Оцените описатель поверхности на основе радиуса (RSD) для заданной точки на основе её пространственного окружения из 3D точек с нормалями.

Параметры
[вход] normals набор данных, содержащий нормали поверхности в каждой точке набора данных
[вход] indices индексы точек окрестности в наборе данных (первая точка используется в качестве ссылки)
[вход] sqr_dists квадраты расстояний от первой точки до всех точек в окрестности
[вход] max_dist верхняя граница интервала расстояний
[вход] nr_subdiv количество подразделений для интервала расстояний
[вход] plane_radius максимальный радиус, выше которого всё может считаться плоским
[вход] radii выходная точка типа, который должен иметь поля r_min и r_max
[вход] compute_histogram если не ложь, предоставляется полный гистограмма окрестности, пригодная в качестве подписи точки
Примечание
: ориентация игнорируется!
: мы игнорируем точки, которые находятся за пределами указанного интервала!

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

Ссылки на M_PI.

flipNormalTowardsNormalsMean()

шаблон<typename PointNT >
bool pcl::flipNormalTowardsNormalsMean ( pcl::PointCloud< PointNT > const & normal_cloud,
pcl::Indices const & normal_indices,
Eigen::Vector3f & normal
)
inline

#include <pcl/features/normal_3d.h>

Перевернуть (на месте) нормаль, чтобы получить тот же знак среднего значения нормалей, указанных в нормальных_индексах.

Метод описан в: A. Petrelli, L. Di Stefano, "A repeatable and efficient canonical reference for surface matching", 3DimPVT, 2012 A. Petrelli, L. Di Stefano, "On the repeatability of the local reference frame for partial shape matching", 13th International Conference on Computer Vision (ICCV), 2011

Нормали должны быть единичными векторами. В противном случае полученное среднее значение будет взвешено нормами нормалей.

Параметры
[вход] normal_cloud Облако нормалей, используемых для вычисления среднего значения
[вход] normal_indices Индексы нормалей, используемых для вычисления среднего значения
[вход] normal входная нормаль Normal для переворота. Нормаль изменяется функцией.
Возвращает
false, если в normal_indices нет ни одной действительной нормали.

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

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

flipNormalTowardsViewpoint() [1/3]

template<typename PointT , typename Scalar >
void pcl::flipNormalTowardsViewpoint ( const PointT & point,
float vp_x,
float vp_y,
float vp_z,
Eigen::Matrix< Scalar, 3, 1 > & normal
)
inline

#include <pcl/features/normal_3d.h>

Перевернуть (на месте) оценённое нормальное направление точки в заданную точку обзора.

Параметры
point заданная точка
vp_x координата X точки обзора
vp_y координата Y точки обзора
vp_z координата Z точки обзора
normal нормаль плоскости, которую нужно перевернуть

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

flipNormalTowardsViewpoint() [2/3]

template<typename PointT , typename Scalar >
void pcl::flipNormalTowardsViewpoint ( const PointT & point,
float vp_x,
float vp_y,
float vp_z,
Eigen::Matrix< Scalar, 4, 1 > & normal
)
inline

#include <pcl/features/normal_3d.h>

Перевернуть (на месте) оценённое нормальное направление точки в заданную точку обзора.

Параметры
point заданная точка
vp_x координата X точки обзора
vp_y координата Y точки обзора
vp_z координата Z точки обзора
normal нормаль плоскости, которую нужно перевернуть

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

Используется в pcl::features::computeApproximateNormals(), pcl::NormalEstimation< PointInT, PointOutT >::computeFeature(), pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormal() и pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormalMirror().

flipNormalTowardsViewpoint() [3/3]

template<typename PointT >
void pcl::flipNormalTowardsViewpoint ( const PointT & point,
float vp_x,
float vp_y,
float vp_z,
float & nx,
float & ny,
float & nz
)
inline

#include <pcl/features/normal_3d.h>

Перевернуть (на месте) оценённое нормальное направление точки в заданную точку обзора.

Параметры
point заданная точка
vp_x координата X точки обзора
vp_y координата Y точки обзора
vp_z координата Z точки обзора
nx результирующая X-компонента нормали плоскости
ny результирующая Y-компонента нормали плоскости
nz результирующая Z-компонента нормали плоскости

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

getFeaturePointCloud()

template<int N>
void pcl::getFeaturePointCloud ( const std::vector< Eigen::MatrixXf, Eigen::aligned_allocator< Eigen::MatrixXf > > & histograms2D,
PointCloud< Histogram< N > > & histogramsPC
)

#include <pcl/features/rsd.h>

Преобразовать список 2D-матриц в облако точек, содержащее значения в векторе (Histogram<N>).

Можно использовать для преобразования 2D-гистограмм, полученных в RSDEstimation, в облако точек.

Примечание
Параметр шаблона N должен быть (больше или) равен произведению числа строк и столбцов.
Параметры
[in] histograms2D список 2D-гистограмм окрестностей
[out] histogramsPC набор данных, содержащий линейные матрицы

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

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

solvePlaneParameters() [1/2]

void pcl::solvePlaneParameters ( const Eigen::Matrix3f & covariance_matrix,
const Eigen::Vector4f & point,
Eigen::Vector4f & plane_parameters,
float & curvature
)
inline

#include <pcl/features/feature.h>

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

Параметры
covariance_matrix матрица ковариации 3x3
point точка, лежащая на плоскости наименьших квадратов (выровненная по SSE)
plane_parameters полученные параметры плоскости: a, b, c, d (ax + by + cz + d = 0)
curvature оценённая кривизна поверхности как мера

\[ \lambda_0 / (\lambda_0 + \lambda_1 + \lambda_2) \]

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

Используется в pcl::NormalEstimation< PointInT, PointOutT >::computePointNormal() и pcl::computePointNormal().

solvePlaneParameters() [2/2]

void pcl::solvePlaneParameters ( const Eigen::Matrix3f & covariance_matrix,
float & nx,
float & ny,
float & nz,
float & curvature
)
inline

#include <pcl/features/feature.h>

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

Параметры
covariance_matrix матрица ковариации 3x3
nx результирующая X-компонента нормали плоскости
ny результирующая Y-компонента нормали плоскости
nz результирующая Z-компонента нормали плоскости
curvature оценённая кривизна поверхности как мера

\[ \lambda_0 / (\lambda_0 + \lambda_1 + \lambda_2) \]

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

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

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

Spec-Zone.ru

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