SACSegmentationFromNormals представляет класс сегментации PCL nodelet для методов и моделей Sample Consensus, для оценки которых требуется использование нормалей поверхности. Подробнее...
#include <pcl/segmentation/sac_segmentation.h>
Общедоступные функции-члены | |
| SACSegmentationFromNormals (bool random=false) | |
| Пустой конструктор. Подробнее... |
|
| void | setInputNormals (const PointCloudNConstPtr &normals) |
| Задать указатель на входной набор данных, содержащий нормали точек набора данных XYZ. Подробнее... |
|
| PointCloudNConstPtr | getInputNormals () const |
| Получить указатель на нормали входного облака точек XYZ. Подробнее... |
|
| void | setNormalDistanceWeight (double distance_weight) |
| Задать относительный вес (от 0 до 1) для углового расстояния (от 0 до pi/2) между нормалями точек и нормалью плоскости. Подробнее... |
|
| double | getNormalDistanceWeight () const |
| Получить относительный вес (от 0 до 1) для углового расстояния (от 0 до pi/2) между нормалями точек и нормалью плоскости. Подробнее... |
|
| void | setMinMaxOpeningAngle (const double &min_angle, const double &max_angle) |
| Задать минимальный угол раскрытия для модели конуса. Подробнее... |
|
| void | getMinMaxOpeningAngle (double &min_angle, double &max_angle) |
| Получить минимальное значение угла раскрытия, необходимое для подтверждения модели конуса. Подробнее... |
|
| void | setDistanceFromOrigin (const double d) |
| Задать предполагаемое расстояние модели плоскости от начала координат. Подробнее... |
|
| double | getDistanceFromOrigin () const |
| Получить расстояние модели плоскости от начала координат. Подробнее... |
|
|
| |
| SACSegmentation (bool random=false) | |
| Пустой конструктор. Подробнее... |
|
| ~SACSegmentation () override=default | |
| Пустой деструктор. Подробнее... |
|
| void | setModelType (int model) |
| Тип используемой модели (параметр, задаваемый пользователем). Подробнее... |
|
| int | getModelType () const |
| Получить тип используемой модели SAC. Подробнее... |
|
| SampleConsensusPtr | getMethod () const |
| Получить указатель на используемый метод SAC. Подробнее... |
|
| SampleConsensusModelPtr | getModel () const |
| Получить указатель на используемую модель SAC. Подробнее... |
|
| void | setMethodType (int method) |
| Тип используемого метода согласования по выборке (параметр, задаваемый пользователем). Подробнее... |
|
| int | getMethodType () const |
| Получить тип используемого метода согласования по выборке. Подробнее... |
|
| void | setDistanceThreshold (double threshold) |
| Пороговое расстояние до модели (параметр, задаваемый пользователем). Подробнее... |
|
| double | getDistanceThreshold () const |
| Получить пороговое расстояние до модели. Подробнее... |
|
| void | setMaxIterations (int max_iterations) |
| Задать максимальное число итераций, после которого выполнение прекращается. Подробнее... |
|
| int | getMaxIterations () const |
| Получить максимальное число итераций, после которого выполнение прекращается. Подробнее... |
|
| void | setProbability (double probability) |
| Задать вероятность выбора хотя бы одной выборки, не содержащей выбросов. Подробнее... |
|
| double | getProbability () const |
| Получить вероятность выбора хотя бы одной выборки, не содержащей выбросов. Подробнее... |
|
| void | setNumberOfThreads (const int nr_threads=-1) |
| Задать число потоков или отключить параллельную обработку. Подробнее... |
|
| void | setOptimizeCoefficients (bool optimize) |
| Установить значение true, если требуется уточнение коэффициентов. Подробнее... |
|
| bool | getOptimizeCoefficients () const |
| Получить внутренний флаг уточнения коэффициентов. Подробнее... |
|
| void | setRadiusLimits (const double &min_radius, const double &max_radius) |
| Задать минимальное и максимальное допустимые значения радиуса модели (применимо к моделям, для которых вычисляется радиус). Подробнее... |
|
| void | getRadiusLimits (double &min_radius, double &max_radius) |
| Получить заданные пользователем минимальное и максимальное допустимые значения радиуса модели. Подробнее... |
|
| void | setSamplesMaxDist (const double &radius, SearchPtr search) |
| Задать максимально допустимое расстояние при случайном выборе выборок. Подробнее... |
|
| void | getSamplesMaxDist (double &radius) |
| Получить максимально допустимое расстояние при случайном выборе выборок. Подробнее... |
|
| void | setAxis (const Eigen::Vector3f &ax) |
| Задать ось, относительно которой выполняется поиск перпендикулярной модели. Подробнее... |
|
| Eigen::Vector3f | getAxis () const |
| Получить ось, относительно которой выполняется поиск перпендикулярной модели. Подробнее... |
|
| void | setEpsAngle (double ea) |
| Задать пороговое значение углового эпсилон (дельта). Подробнее... |
|
| double | getEpsAngle () const |
| Получить пороговое значение угла модели эпсилон (дельта) в радианах. Подробнее... |
|
| virtual void | segment (PointIndices &inliers, ModelCoefficients &model_coefficients) |
| Базовый метод сегментации модели в PointCloud, заданном с помощью <setInputCloud (), setIndices ()> Подробнее... |
|
|
| |
| PCLBase () | |
| Пустой конструктор. Подробнее... |
|
| PCLBase (const PCLBase &base) | |
| Конструктор копирования. Подробнее... |
|
| virtual | ~PCLBase ()=default |
| Деструктор. Подробнее... |
|
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Задать указатель на входной набор данных. Подробнее... |
|
| PointCloudConstPtr const | getInputCloud () const |
| Получить указатель на входной набор облака точек. Подробнее... |
|
| virtual void | setIndices (const IndicesPtr &indices) |
| Предоставить указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (const IndicesConstPtr &indices) |
| Предоставить указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (const PointIndicesConstPtr &indices) |
| Предоставить указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols) |
| Задать индексы точек, расположенных в интересующей области облака точек. Подробнее... |
|
| IndicesPtr | getIndices () |
| Получить указатель на используемый вектор индексов. Подробнее... |
|
| IndicesConstPtr const | getIndices () const |
| Получить указатель на используемый вектор индексов. Подробнее... |
|
| const PointT & | operator[] (std::size_t pos) const |
| Переопределить operator[] класса PointCloud для сокращения кода. Подробнее... |
|
Защищённые функции-члены | |
| bool | initSACModel (const int model_type) override |
| Инициализировать модель согласования с выборкой и задать её параметры. Подробнее... |
|
| std::string | getClassName () const override |
| Метод получения имени класса. Подробнее... |
|
|
| |
| virtual void | initSAC (const int method_type) |
| Инициализировать метод согласования с выборкой и задать его параметры. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод следует вызывать перед началом фактических вычислений. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод следует вызывать после завершения фактических вычислений. Подробнее... |
|
Защищённые атрибуты | |
| PointCloudNConstPtr | normals_ {nullptr} |
| Указатель на входной набор данных, содержащий нормали точек набора XYZ. Подробнее... |
|
| double | distance_weight_ {0.1} |
| Относительный вес (от 0 до 1), присваиваемый угловому расстоянию (от 0 до pi/2) между нормалями точек и нормалью плоскости. Подробнее... |
|
| double | distance_from_origin_ {0.0} |
| Расстояние от плоскости-шаблона до начала координат. Подробнее... |
|
| double | min_angle_ {0.0} |
| Минимальный и максимальный допустимые углы раскрытия корректной модели конуса. Подробнее... |
|
| double | max_angle_ {M_PI_2} |
|
| |
| SampleConsensusModelPtr | model_ {nullptr} |
| Модель, которую необходимо сегментировать. Подробнее... |
|
| SampleConsensusPtr | sac_ {nullptr} |
| Метод сегментации на основе согласования с выборкой. Подробнее... |
|
| int | model_type_ {-1} |
| Тип используемой модели (параметр, задаваемый пользователем). Подробнее... |
|
| int | method_type_ {0} |
| Тип используемого метода согласования с выборкой (параметр, задаваемый пользователем). Подробнее... |
|
| double | threshold_ {0.0} |
| Порог расстояния до модели (параметр, задаваемый пользователем). Подробнее... |
|
| bool | optimize_coefficients_ {true} |
| Установить в true, если требуется уточнение коэффициентов. Подробнее... |
|
| double | radius_min_ {-std::numeric_limits<double>::max()} |
| Минимальное и максимальное ограничения радиуса модели. Подробнее... |
|
| double | radius_max_ {std::numeric_limits<double>::max()} |
| double | samples_radius_ {0.0} |
| Максимальное расстояние последующих выборок от первой (поиск по радиусу). Подробнее... |
|
| SearchPtr | samples_radius_search_ {nullptr} |
| Объект поиска для выбора последующих выборок с использованием поиска по радиусу. Подробнее... |
|
| double | eps_angle_ {0.0} |
| Максимально допустимое различие между нормалью модели и заданной осью. Подробнее... |
|
| Eigen::Vector3f | axis_ {Eigen::Vector3f::Zero()} |
| Ось, перпендикулярно которой выполняется поиск модели. Подробнее... |
|
| int | max_iterations_ {50} |
| Максимальное число итераций до прекращения поиска (параметр, задаваемый пользователем). Подробнее... |
|
| int | threads_ {-1} |
| Количество потоков, используемых планировщиком, или отрицательное число, если параллельное выполнение не требуется. Подробнее... |
|
| double | probability_ {0.99} |
| Желаемая вероятность выбрать хотя бы одну выборку без выбросов (параметр, задаваемый пользователем). Подробнее... |
|
| bool | random_ |
| Установить в true, если требуется случайное начальное значение. Подробнее... |
|
|
| |
| PointCloudConstPtr | input_ |
| Входной набор облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор используемых индексов точек. Подробнее... |
|
| bool | use_indices_ |
| Установить в true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, создаётся набор фиктивных индексов, имитирующий входной PointCloud. Подробнее... |
|
Подробное описание
template<typename PointT, typename PointNT>
class pcl::SACSegmentationFromNormals< PointT, PointNT >
SACSegmentationFromNormals представляет класс сегментации nodelet в PCL для методов и моделей согласования с выборкой, для оценки которых требуется использовать нормали поверхности.
Определение находится в строке 305 файла sac_segmentation.h.
Документация псевдонимов типов-членов
PointCloud
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloud = typename SACSegmentation<PointT>::PointCloud |
Определение в строке 319 файла sac_segmentation.h.
PointCloudConstPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudConstPtr = typename PointCloud::ConstPtr |
Определение в строке 321 файла sac_segmentation.h.
PointCloudN
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudN = pcl::PointCloud<PointNT> |
Определение в строке 323 файла sac_segmentation.h.
PointCloudNConstPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudNConstPtr = typename PointCloudN::ConstPtr |
Определение в строке 325 файла sac_segmentation.h.
PointCloudNPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudNPtr = typename PointCloudN::Ptr |
Определение в строке 324 файла sac_segmentation.h.
PointCloudPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudPtr = typename PointCloud::Ptr |
Определение в строке 320 файла sac_segmentation.h.
SampleConsensusModelFromNormalsPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::SampleConsensusModelFromNormalsPtr = typename SampleConsensusModelFromNormals<PointT, PointNT>::Ptr |
Определение в строке 329 файла sac_segmentation.h.
SampleConsensusModelPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::SampleConsensusModelPtr = typename SampleConsensusModel<PointT>::Ptr |
Определение в строке 328 файла sac_segmentation.h.
SampleConsensusPtr
| using pcl::SACSegmentationFromNormals< PointT, PointNT >::SampleConsensusPtr = typename SampleConsensus<PointT>::Ptr |
Определение в строке 327 файла sac_segmentation.h.
Документация конструктора и деструктора
SACSegmentationFromNormals()
| inline |
Конструктор без параметров.
- Параметры
-
[in] random если значение true, начальное значение генератора случайных чисел устанавливается равным текущему времени, иначе — 12345 (по умолчанию: false)
Определение в строке 334 файла sac_segmentation.h.
Документация функций-членов
getClassName()
| inlineoverrideprotectedvirtual |
Метод получения имени класса.
Переопределяет метод из pcl::SACSegmentation< PointT >.
Определение в строке 414 файла sac_segmentation.h.
getDistanceFromOrigin()
| inline |
Получить расстояние от начала координат до модели плоскости.
Определение в строке 388 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::distance_from_origin_.
getInputNormals()
| inline |
Получить указатель на нормали входного набора данных облака точек XYZ.
Определение в строке 347 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::normals_.
getMinMaxOpeningAngle()
| inline |
Получить минимальный угол раствора, необходимый для проверки модели конуса.
Определение в строке 374 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::max_angle_ и pcl::SACSegmentationFromNormals< PointT, PointNT >::min_angle_.
getNormalDistanceWeight()
| inline |
Получить относительный вес (от 0 до 1), присваиваемый угловому расстоянию (от 0 до pi/2) между нормалями точек и нормалью плоскости.
Определение в строке 359 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::distance_weight_.
initSACModel()
| overrideprotectedvirtual |
Инициализировать модель Sample Consensus и задать её параметры.
- Параметры
-
[in] model_type тип используемой модели SAC
Переопределяет метод из pcl::SACSegmentation< PointT >.
Определение в строке 375 файла sac_segmentation.hpp.
Ссылки: pcl::SampleConsensusModelCone< PointT, PointNT >::getAxis(), pcl::SampleConsensusModelCylinder< PointT, PointNT >::getAxis(), pcl::SampleConsensusModelNormalParallelPlane< PointT, PointNT >::getAxis(), pcl::SampleConsensusModelNormalParallelPlane< PointT, PointNT >::getDistanceFromOrigin(), pcl::SampleConsensusModelCone< PointT, PointNT >::getEpsAngle(), pcl::SampleConsensusModelCylinder< PointT, PointNT >::getEpsAngle(), pcl::SampleConsensusModelNormalParallelPlane< PointT, PointNT >::getEpsAngle(), pcl::SampleConsensusModelCone< PointT, PointNT >::getMinMaxOpeningAngle(), pcl::SampleConsensusModelFromNormals< PointT, PointNT >::getNormalDistanceWeight(), pcl::SampleConsensusModel< PointT >::getRadiusLimits(), M_PI, pcl::SACMODEL_CONE, pcl::SACMODEL_CYLINDER, pcl::SACMODEL_NORMAL_PARALLEL_PLANE, pcl::SACMODEL_NORMAL_PLANE, pcl::SACMODEL_NORMAL_SPHERE, pcl::SampleConsensusModelCone< PointT, PointNT >::setAxis(), pcl::SampleConsensusModelCylinder< PointT, PointNT >::setAxis(), pcl::SampleConsensusModelNormalParallelPlane< PointT, PointNT >::setAxis(), pcl::SampleConsensusModelNormalParallelPlane< PointT, PointNT >::setDistanceFromOrigin(), pcl::SampleConsensusModelCylinder< PointT, PointNT >::setEpsAngle(), pcl::SampleConsensusModelNormalParallelPlane< PointT, PointNT >::setEpsAngle(), pcl::SampleConsensusModelCone< PointT, PointNT >::setEpsAngle(), pcl::SampleConsensusModelFromNormals< PointT, PointNT >::setInputNormals(), pcl::SampleConsensusModelCone< PointT, PointNT >::setMinMaxOpeningAngle(), pcl::SampleConsensusModelFromNormals< PointT, PointNT >::setNormalDistanceWeight() и pcl::SampleConsensusModel< PointT >::setRadiusLimits().
setDistanceFromOrigin()
| inline |
Задать ожидаемое расстояние от начала координат до модели плоскости.
- Параметры
-
[in] d расстояние от шаблонной модели плоскости до начала координат
Определение в строке 384 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::distance_from_origin_.
setInputNormals()
| inline |
Передать указатель на входной набор данных, содержащий нормали точек набора XYZ.
- Параметры
-
[in] normals константный разделяемый указатель на сообщение PointCloud
Определение в строке 343 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::normals_.
setMinMaxOpeningAngle()
| inline |
Задать минимальный угол раствора модели конуса.
- Параметры
-
min_angle минимальный угол раствора, необходимый для проверки модели конуса. max_angle максимальный угол раствора, необходимый для проверки модели конуса.
Определение в строке 366 файла sac_segmentation.h.
Ссылки: pcl::SACSegmentationFromNormals< PointT, PointNT >::max_angle_ и pcl::SACSegmentationFromNormals< PointT, PointNT >::min_angle_.
setNormalDistanceWeight()
| inline |
Задает относительный вес (от 0 до 1) углового расстояния (от 0 до pi/2) между нормалями точек и нормалью плоскости.
- Параметры
-
[in] distance_weight вес расстояния/угла
Определение в строке 354 файла sac_segmentation.h.
См. также pcl::SACSegmentationFromNormals< PointT, PointNT >::distance_weight_.
Описание данных-членов
distance_from_origin_
| protected |
Расстояние от шаблонной плоскости до начала координат.
Определение в строке 400 файла sac_segmentation.h.
Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::getDistanceFromOrigin() и pcl::SACSegmentationFromNormals< PointT, PointNT >::setDistanceFromOrigin().
distance_weight_
| protected |
Относительный вес (от 0 до 1) углового расстояния (от 0 до pi/2) между нормалями точек и нормалью плоскости.
Определение в строке 397 файла sac_segmentation.h.
Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::getNormalDistanceWeight() и pcl::SACSegmentationFromNormals< PointT, PointNT >::setNormalDistanceWeight().
max_angle_
| protected |
Определение в строке 404 файла sac_segmentation.h.
Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::getMinMaxOpeningAngle() и pcl::SACSegmentationFromNormals< PointT, PointNT >::setMinMaxOpeningAngle().
min_angle_
| protected |
Минимальный и максимальный допустимые углы раскрытия корректной модели конуса.
Определение в строке 403 файла sac_segmentation.h.
Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::getMinMaxOpeningAngle() и pcl::SACSegmentationFromNormals< PointT, PointNT >::setMinMaxOpeningAngle().
normals_
| protected |
Указатель на входной набор данных, содержащий нормали точек набора данных XYZ.
Определение в строке 392 файла sac_segmentation.h.
Используется в pcl::SACSegmentationFromNormals< PointT, PointNT >::getInputNormals() и pcl::SACSegmentationFromNormals< PointT, PointNT >::setInputNormals().
Документация этого класса сгенерирована на основе следующих файлов:
- pcl/segmentation/sac_segmentation.h
- pcl/segmentation/impl/sac_segmentation.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_s_a_c_segmentation_from_normals.html