Spec-Zone.ru › PointCloudLibrary

SampleConsensusModelCylinder определяет модель для сегментации цилиндров в 3D. Подробнее...

#include <pcl/sample_consensus/sac_model_cylinder.h>

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

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

using PointCloud = typename SampleConsensusModel< PointT >::PointCloud
using PointCloudPtr = typename SampleConsensusModel< PointT >::PointCloudPtr
using PointCloudConstPtr = typename SampleConsensusModel< PointT >::PointCloudConstPtr
using Ptr = shared_ptr< SampleConsensusModelCylinder< PointT, PointNT > >
using ConstPtr = shared_ptr< const SampleConsensusModelCylinder< PointT, PointNT > >
- Общедоступные типы, унаследованные от pcl::SampleConsensusModel< PointT >
using PointCloud = pcl::PointCloud< PointT >
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointCloudPtr = typename PointCloud::Ptr
using SearchPtr = typename pcl::search::Search< PointT >::Ptr
using Ptr = shared_ptr< SampleConsensusModel< PointT > >
using ConstPtr = shared_ptr< const SampleConsensusModel< PointT > >
- Общедоступные типы, унаследованные от pcl::SampleConsensusModelFromNormals< PointT, PointNT >
using PointCloudNConstPtr = typename pcl::PointCloud< PointNT >::ConstPtr
using PointCloudNPtr = typename pcl::PointCloud< PointNT >::Ptr
using Ptr = shared_ptr< SampleConsensusModelFromNormals< PointT, PointNT > >
using ConstPtr = shared_ptr< const SampleConsensusModelFromNormals< PointT, PointNT > >

Общедоступные члены-функции

SampleConsensusModelCylinder (const PointCloudConstPtr &cloud, bool random=false)
Конструктор базового класса SampleConsensusModelCylinder. Подробнее...
SampleConsensusModelCylinder (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false)
Конструктор базового класса SampleConsensusModelCylinder. Подробнее...
SampleConsensusModelCylinder (const SampleConsensusModelCylinder &source)
Копирующий конструктор. Подробнее...
~SampleConsensusModelCylinder () override=default
Пустой деструктор. Подробнее...
SampleConsensusModelCylinder & operator= (const SampleConsensusModelCylinder &source)
Копирующий конструктор. Подробнее...
void setEpsAngle (const double ea)
Установить порог эпсилон угла (дельта). Подробнее...
double getEpsAngle () const
Получить порог эпсилон угла (дельта). Подробнее...
void setAxis (const Eigen::Vector3f &ax)
Установить ось, по которой необходимо искать направление цилиндра. Подробнее...
Eigen::Vector3f getAxis () const
Получить ось, по которой необходимо искать направление цилиндра. Подробнее...
bool computeModelCoefficients (const Indices &samples, Eigen::VectorXf &model_coefficients) const override
Проверить, могут ли заданные индексные образцы сформировать корректную модель цилиндра, вычислить коэффициенты модели из этих образцов и сохранить их в model_coefficients. Подробнее...
void getDistancesToModel (const Eigen::VectorXf &model_coefficients, std::vector< double > &distances) const override
Вычислить все расстояния от данных облака до заданной модели цилиндра. Подробнее...
void selectWithinDistance (const Eigen::VectorXf &model_coefficients, const double threshold, Indices &inliers) override
Выбрать все точки, которые соответствуют данным коэффициентам модели как внутренние точки. Подробнее...
std::size_t countWithinDistance (const Eigen::VectorXf &model_coefficients, const double threshold) const override
Подсчитать все точки, которые соответствуют заданным коэффициентам модели как внутренние точки. Подробнее...
void optimizeModelCoefficients (const Indices &inliers, const Eigen::VectorXf &model_coefficients, Eigen::VectorXf &optimized_coefficients) const override
Пересчитать коэффициенты цилиндра с использованием набора внутренних точек и вернуть их пользователю. Подробнее...
void projectPoints (const Indices &inliers, const Eigen::VectorXf &model_coefficients, PointCloud &projected_points, bool copy_data_fields=true) const override
Создать новую облако точек с инлайнерами, спроецированными на модель цилиндра. Подробнее...
bool doSamplesVerifyModel (const std::set< index_t > &indices, const Eigen::VectorXf &model_coefficients, const double threshold) const override
Проверить, соответствует ли подмножество индексов заданным коэффициентам модели цилиндра. Подробнее...
pcl::SacModel getModelType () const override
Возвращает уникальный идентификатор этой модели (SACMODEL_CYLINDER). Подробнее...
- Открытые методы, унаследованные от pcl::SampleConsensusModel< PointT >
SampleConsensusModel (const PointCloudConstPtr &cloud, bool random=false)
Конструктор базового класса SampleConsensusModel. Подробнее...
SampleConsensusModel (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false)
Конструктор базового класса SampleConsensusModel. Подробнее...
virtual ~SampleConsensusModel ()=default
Деструктор базового класса SampleConsensusModel. Подробнее...
virtual void getSamples (int &iterations, Indices &samples)
Получить набор случайных выборок данных и вернуть их в виде индексов точек. Подробнее...
virtual void setInputCloud (const PointCloudConstPtr &cloud)
Указать указатель на входной набор данных. Подробнее...
PointCloudConstPtr getInputCloud () const
Получить указатель на входное облако точек. Подробнее...
void setIndices (const IndicesPtr &indices)
Указать указатель на вектор индексов, представляющий входные данные. Подробнее...
void setIndices (const Indices &indices)
Указать вектор индексов, представляющий входные данные. Подробнее...
IndicesPtr getIndices () const
Получить указатель на вектор индексов, используемый. Подробнее...
const std::string & getClassName () const
Получить строковое представление имени этого класса. Подробнее...
unsigned int getSampleSize () const
Возвращает размер выборки, из которой вычисляется модель. Подробнее...
unsigned int getModelSize () const
Возвращает количество коэффициентов в модели. Подробнее...
void setRadiusLimits (const double &min_radius, const double &max_radius)
Устанавливает минимальные и максимальные допустимые радиусы для модели (применимо к моделям, которые оценивают радиус) Подробнее...
void getRadiusLimits (double &min_radius, double &max_radius) const
Получить минимальные и максимальные допустимые радиусы для модели, установленные пользователем. Подробнее...
void setModelConstraints (std::function< bool(const Eigen::VectorXf &)> function)
Это можно использовать для наложения любых ограничений на модель, например, Подробнее...
void setSamplesMaxDist (const double &radius, SearchPtr search)
Установить максимальное расстояние, разрешённое при выборе случайных выборок. Подробнее...
void getSamplesMaxDist (double &radius) const
Получить максимальное расстояние, разрешённое при выборе случайных выборок. Подробнее...
double computeVariance (const std::vector< double > &error_sqr_dists) const
Вычислить дисперсию ошибок по отношению к модели. Подробнее...
double computeVariance () const
Вычислить дисперсию ошибок по отношению к модели из внутренней оценки вектора расстояний. Подробнее...
- Public Member Functions inherited from pcl::SampleConsensusModelFromNormals< PointT, PointNT >
SampleConsensusModelFromNormals ()
Пустой конструктор для базового класса SampleConsensusModelFromNormals. Подробнее...
virtual ~SampleConsensusModelFromNormals ()=default
Деструктор. Подробнее...
void setNormalDistanceWeight (const double w)
Установить вес углового расстояния нормали. Подробнее...
double getNormalDistanceWeight () const
Получить вес углового расстояния нормали. Подробнее...
void setInputNormals (const PointCloudNConstPtr &normals)
Предоставьте указатель на входные данные, содержащие нормали точек XYZ набора данных. Подробнее...
PointCloudNConstPtr getInputNormals () const
Получить указатель на нормали входного набора данных точек XYZ. Подробнее...

Защищенные члены-функции

double pointToLineDistance (const Eigen::Vector4f &pt, const Eigen::VectorXf &model_coefficients) const
Получить расстояние от точки до прямой (представленной точкой и направлением) Подробнее...
void projectPointToLine (const Eigen::Vector4f &pt, const Eigen::Vector4f &line_pt, const Eigen::Vector4f &line_dir, Eigen::Vector4f &pt_proj) const
Проецировать точку на прямую, заданную точкой и вектором направления. Подробнее...
void projectPointToCylinder (const Eigen::Vector4f &pt, const Eigen::VectorXf &model_coefficients, Eigen::Vector4f &pt_proj) const
Проецировать точку на цилиндр, заданный его коэффициентами модели (точка_на_оси, направление_оси, радиус_цилиндра_R) Подробнее...
bool isModelValid (const Eigen::VectorXf &model_coefficients) const override
Проверка, является ли модель допустимой, учитывая ограничения пользователя. Подробнее...
bool isSampleGood (const Indices &samples) const override
Проверка, является ли выборка индексов хорошей выборкой индексов точек. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::SampleConsensusModel< PointT >
SampleConsensusModel (bool random=false)
Пустой конструктор для базового класса SampleConsensusModel. Подробнее...
void drawIndexSample (Indices &sample)
Заполняет массив sample случайными выборками из вектора indices_. Подробнее...
void drawIndexSampleRadius (Indices &sample)
Заполняет массив sample одной случайной выборкой из вектора indices_ и другими случайными выборками, которые находятся ближе, чем samples_radius_. Подробнее...
int rnd ()
Генератор случайных чисел на основе Boost. Подробнее...

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

- Защищенные атрибуты, унаследованные от pcl::SampleConsensusModel< PointT >
std::string model_name_
Имя модели. Подробнее...
PointCloudConstPtr input_
Указатель на boost shared, хранящий данные облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
double radius_min_
Минимальные и максимальные значения радиуса для модели. Подробнее...
double radius_max_
double samples_radius_
Максимальное расстояние последующих выборок от первой (поиск по радиусу) Подробнее...
SearchPtr samples_radius_search_
Объект поиска для выбора последующих выборок с использованием поиска по радиусу. Подробнее...
Indices shuffled_indices_
Данные, содержащие перемешанную версию индексов. Подробнее...
boost::mt19937 rng_alg_
Алгоритм генератора псевдослучайных чисел на основе Boost. Подробнее...
std::shared_ptr< boost::uniform_int<> > rng_dist_
Распределение генератора псевдослучайных чисел на основе Boost. Подробнее...
std::shared_ptr< boost::variate_generator< boost::mt19937 &, boost::uniform_int<> > > rng_gen_
Генератор псевдослучайных чисел на основе Boost. Подробнее...
std::vector< double > error_sqr_dists_
Вектор, содержащий расстояния до вычисленной модели. Подробнее...
unsigned int sample_size_
Размер выборки, из которой вычисляется модель. Подробнее...
unsigned int model_size_
Количество коэффициентов в модели. Подробнее...
std::function< bool(const Eigen::VectorXf &)> custom_model_constraints_
Пользовательская функция, принимающая коэффициенты модели и возвращающая значение, указывающее, является ли модель приемлемой. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::SampleConsensusModelFromNormals< PointT, PointNT >
double normal_distance_weight_
Относительный вес (от 0 до 1), который присваивается угловому расстоянию (от 0 до π/2) между нормалями к точкам и нормалью к плоскости. Подробнее...
PointCloudNConstPtr normals_
Указатель на входной набор данных, содержащий нормали к точкам набора данных XYZ. Подробнее...
- Статические защищенные атрибуты, унаследованные от pcl::SampleConsensusModel< PointT >
static const unsigned int max_sample_checks_ = 1000
Максимальное количество проб, которые нужно выполнить, прежде чем получить подходящую. Подробнее...

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

шаблон<typename PointT, typename PointNT>
класс pcl::SampleConsensusModelCylinder< PointT, PointNT >

SampleConsensusModelCylinder определяет модель для сегментации цилиндров в 3D пространстве.

Коэффициенты модели определяются следующим образом:

  • point_on_axis.x : координата X точки, расположенной на оси цилиндра
  • point_on_axis.y : координата Y точки, расположенной на оси цилиндра
  • point_on_axis.z : координата Z точки, расположенной на оси цилиндра
  • axis_direction.x : координата X направления оси цилиндра
  • axis_direction.y : координата Y направления оси цилиндра
  • axis_direction.z : координата Z направления оси цилиндра
  • radius : радиус цилиндра
Автор
Radu Bogdan Rusu

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

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

ConstPtr

шаблон<typename PointT , typename PointNT >
используя pcl::SampleConsensusModelCylinder< PointT, PointNT >::ConstPtr = shared_ptr<const SampleConsensusModelCylinder<PointT, PointNT> >

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

PointCloud

шаблон<typename PointT , typename PointNT >
используя pcl::SampleConsensusModelCylinder< PointT, PointNT >::PointCloud = typename SampleConsensusModel<PointT>::PointCloud

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

PointCloudConstPtr

шаблон<typename PointT , typename PointNT >
используя pcl::SampleConsensusModelCylinder< PointT, PointNT >::PointCloudConstPtr = typename SampleConsensusModel<PointT>::PointCloudConstPtr

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

PointCloudPtr

шаблон<typename PointT , typename PointNT >
используя pcl::SampleConsensusModelCylinder< PointT, PointNT >::PointCloudPtr = typename SampleConsensusModel<PointT>::PointCloudPtr

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

Ptr

шаблон<typename PointT , typename PointNT >
используя pcl::SampleConsensusModelCylinder< PointT, PointNT >::Ptr = shared_ptr<SampleConsensusModelCylinder<PointT, PointNT> >

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

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

SampleConsensusModelCylinder() [1/3]

template<typename PointT , typename PointNT >
pcl::SampleConsensusModelCylinder< PointT, PointNT >::SampleConsensusModelCylinder ( const PointCloudConstPtr & cloud,
bool random = false
)
inline

Конструктор базового класса SampleConsensusModelCylinder.

Параметры
[in] cloud набор входных точек облака
[in] random если true, устанавливает генератор случайных чисел на текущее время, иначе на 12345 (по умолчанию: false)

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

Ссылки на pcl::SampleConsensusModel< PointT >::model_name_, pcl::SampleConsensusModel< PointT >::model_size_ и pcl::SampleConsensusModel< PointT >::sample_size_.

SampleConsensusModelCylinder() [2/3]

template<typename PointT , typename PointNT >
pcl::SampleConsensusModelCylinder< PointT, PointNT >::SampleConsensusModelCylinder ( const PointCloudConstPtr & cloud,
const Indices & indices,
bool random = false
)
inline

Конструктор базового класса SampleConsensusModelCylinder.

Параметры
[in] cloud набор входных точек облака
[in] indices вектор индексов точек, используемых из cloud
[in] random если true, устанавливает генератор случайных чисел на текущее время, иначе на 12345 (по умолчанию: false)

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

Ссылки на pcl::SampleConsensusModel< PointT >::model_name_, pcl::SampleConsensusModel< PointT >::model_size_ и pcl::SampleConsensusModel< PointT >::sample_size_.

SampleConsensusModelCylinder() [3/3]

template<typename PointT , typename PointNT >
pcl::SampleConsensusModelCylinder< PointT, PointNT >::SampleConsensusModelCylinder ( const SampleConsensusModelCylinder< PointT, PointNT > & source )
inline

Копирующий конструктор.

Параметры
[in] source модель для копирования

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

Ссылки на pcl::SampleConsensusModel< PointT >::model_name_.

~SampleConsensusModelCylinder()

template<typename PointT , typename PointNT >
pcl::SampleConsensusModelCylinder< PointT, PointNT >::~SampleConsensusModelCylinder ( )
overridedefault

Пустой деструктор.

Member Function Documentation

computeModelCoefficients()

template<typename PointT , typename PointNT >
bool pcl::SampleConsensusModelCylinder< PointT, PointNT >::computeModelCoefficients ( const Indices & samples,
Eigen::VectorXf & model_coefficients
) const
overridevirtual

Проверка, могут ли данные индексы образов образовывать действительную модель цилиндра, вычисление коэффициентов модели из этих образов и сохранение их в model_coefficients.

Коэффициенты цилиндра: point_on_axis, axis_direction, cylinder_radius_R

Параметры
[in] samples индексы точек, найденные как возможные хорошие кандидаты для создания валидной модели
[out] model_coefficients полученные коэффициенты модели

Реализация pcl::SampleConsensusModel< PointT >.

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

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

countWithinDistance()

template<typename PointT , typename PointNT >
std::size_t pcl::SampleConsensusModelCylinder< PointT, PointNT >::countWithinDistance ( const Eigen::VectorXf & model_coefficients,
const double threshold
) const
overridevirtual

Подсчитать все точки, которые соответствуют заданным коэффициентам модели как внутренние точки.

Parameters
[in] model_coefficients коэффициенты модели, к которым необходимо вычислить расстояния
[in] threshold максимально допустимый порог расстояния для определения внутренних точек от внешних
Returns
результирующее количество внутренних точек

Реализует pcl::SampleConsensusModel< PointT >.

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

doSamplesVerifyModel()

template<typename PointT , typename PointNT >
bool pcl::SampleConsensusModelCylinder< PointT, PointNT >::doSamplesVerifyModel ( const std::set< index_t > & indices,
const Eigen::VectorXf & model_coefficients,
const double threshold
) const
overridevirtual

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

Parameters
[in] indices индексы данных, которые необходимо проверить на соответствие цилиндрической модели
[in] model_coefficients коэффициенты цилиндрической модели
[in] threshold максимально допустимый порог расстояния для определения внутренних точек от внешних

Реализует pcl::SampleConsensusModel< PointT >.

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

getAxis()

template<typename PointT , typename PointNT >
Eigen::Vector3f pcl::SampleConsensusModelCylinder< PointT, PointNT >::getAxis ( ) const
inline

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

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

Ссылка на pcl::SACSegmentationFromNormals< PointT, PointNT >::initSACModel().

getDistancesToModel()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::getDistancesToModel ( const Eigen::VectorXf & model_coefficients,
std::vector< double > & distances
) const
overridevirtual

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

Parameters
[in] model_coefficients коэффициенты цилиндрической модели, к которым необходимо вычислить расстояния
[out] distances результирующие вычисленные расстояния

Реализует pcl::SampleConsensusModel< PointT >.

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

getEpsAngle()

template<typename PointT , typename PointNT >
double pcl::SampleConsensusModelCylinder< PointT, PointNT >::getEpsAngle ( ) const
inline

Получить порог угла epsilon (delta).

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

Ссылка на pcl::SACSegmentationFromNormals< PointT, PointNT >::initSACModel().

getModelType()

template<typename PointT , typename PointNT >
pcl::SacModel pcl::SampleConsensusModelCylinder< PointT, PointNT >::getModelType ( ) const
inlineoverridevirtual

Возвращает уникальный идентификатор для этой модели (SACMODEL_CYLINDER).

Реализует pcl::SampleConsensusModel< PointT >.

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

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

isModelValid()

template<typename PointT , typename PointNT >
bool pcl::SampleConsensusModelCylinder< PointT, PointNT >::isModelValid ( const Eigen::VectorXf & model_coefficients ) const
overrideprotectedvirtual

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

Parameters
[in] model_coefficients набор коэффициентов модели

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

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

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

isSampleGood()

template<typename PointT , typename PointNT >
bool pcl::SampleConsensusModelCylinder< PointT, PointNT >::isSampleGood ( const Indices & samples ) const
overrideprotectedvirtual

Проверка, является ли выборка индексов хорошей выборкой индексов точек.

Чисто виртуальная функция.

Parameters
[in] samples результирующая выборка индексов

Реализует pcl::SampleConsensusModel< PointT >.

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

operator=()

template<typename PointT , typename PointNT >
SampleConsensusModelCylinder& pcl::SampleConsensusModelCylinder< PointT, PointNT >::operator= ( const SampleConsensusModelCylinder< PointT, PointNT > & source )
inline

Конструктор копирования.

Parameters
[in] source модель для копирования в текущую

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

optimizeModelCoefficients()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::optimizeModelCoefficients ( const Indices & inliers,
const Eigen::VectorXf & model_coefficients,
Eigen::VectorXf & optimized_coefficients
) const
overridevirtual

Пересчет коэффициентов цилиндра с использованием заданного набора инлайнеров и возврат их пользователю.

Note
Это коэффициенты модели цилиндра после уточнения (например, после SVD)
Parameters
[in] inliers данные инлайнеры, поддерживающие модель
[in] model_coefficients начальное предположение для оптимизации
[out] optimized_coefficients результирующие пересчитанные коэффициенты после нелинейной оптимизации

Реализует pcl::SampleConsensusModel< PointT >.

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

pointToLineDistance()

template<typename PointT , typename PointNT >
double pcl::SampleConsensusModelCylinder< PointT, PointNT >::pointToLineDistance ( const Eigen::Vector4f & pt,
const Eigen::VectorXf & model_coefficients
) const
protected

Расстояние от точки до линии (представленной точкой и направлением).

Parameters
[in] pt точка
[in] model_coefficients коэффициенты линии (точка на линии, направление линии)

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

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

projectPoints()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::projectPoints ( const Indices & inliers,
const Eigen::VectorXf & model_coefficients,
PointCloud & projected_points,
bool copy_data_fields = true
) const
overridevirtual

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

Параметры
[in] inliers элементы данных, которые нужно спроецировать на цилиндрическую модель
[in] model_coefficients коэффициенты цилиндрической модели
[out] projected_points результирующие спроецированные точки
[in] copy_data_fields установить в true, если необходимо скопировать другие поля данных

Реализует pcl::SampleConsensusModel< PointT >.

Определение в строке 321 файла sac_model_cylinder.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.

projectPointToCylinder()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::projectPointToCylinder ( const Eigen::Vector4f & pt,
const Eigen::VectorXf & model_coefficients,
Eigen::Vector4f & pt_proj
) const
protected

Проецировать точку на цилиндр, заданный коэффициентами модели (точка_на_оси, направление_оси, радиус_цилиндра_R).

Параметры
[in] pt входная точка для проекции
[in] model_coefficients коэффициенты цилиндра (точка_на_оси, направление_оси, радиус_цилиндра_R)
[out] pt_proj результирующая спроецированная точка

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

projectPointToLine()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::projectPointToLine ( const Eigen::Vector4f & pt,
const Eigen::Vector4f & line_pt,
const Eigen::Vector4f & line_dir,
Eigen::Vector4f & pt_proj
) const
inlineprotected

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

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

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

selectWithinDistance()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::selectWithinDistance ( const Eigen::VectorXf & model_coefficients,
const double threshold,
Indices & inliers
)
overridevirtual

Выбрать все точки, которые соответствуют заданным коэффициентам модели, как внутренние.

Параметры
[in] model_coefficients коэффициенты цилиндрической модели, для которой необходимо вычислить расстояния
[in] threshold максимальное допустимое пороговое значение расстояния для определения внутренних точек от внешних
[out] inliers результирующие внутренние точки модели

Реализует pcl::SampleConsensusModel< PointT >.

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

setAxis()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::setAxis ( const Eigen::Vector3f & ax )
inline

Установите ось, по которой необходимо искать направление цилиндра.

Parameters
[in] ax ось, по которой необходимо искать направление цилиндра

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

Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::initSACModel().

setEpsAngle()

template<typename PointT , typename PointNT >
void pcl::SampleConsensusModelCylinder< PointT, PointNT >::setEpsAngle ( const double ea )
inline

Установите порог epsilon (delta) угла.

Parameters
[in] ea максимальное допустимое отклонение оси цилиндра от заданной оси.

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

Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::initSACModel().


The documentation for this class was generated from the following files:
  • pcl/sample_consensus/sac_model_cylinder.h
  • pcl/sample_consensus/impl/sac_model_cylinder.hpp

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

Spec-Zone.ru

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