SampleConsensusModel представляет базовый класс модели. Подробнее...
#include </__w/1/s/cuda/sample_consensus/include/pcl/cuda/sample_consensus/sac_model.h>
Public Types | |
| using | PointCloud = PointCloudAOS< Storage > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | Ptr = shared_ptr< SampleConsensusModel > |
| using | ConstPtr = shared_ptr< const SampleConsensusModel > |
| using | Indices = typename Storage< int >::type |
| using | IndicesPtr = shared_ptr< typename Storage< int >::type > |
| using | IndicesConstPtr = shared_ptr< const typename Storage< int >::type > |
| using | Coefficients = typename Storage< float >::type |
| using | CoefficientsPtr = shared_ptr< Coefficients > |
| using | CoefficientsConstPtr = shared_ptr< const Coefficients > |
| using | Hypotheses = typename Storage< float4 >::type |
| using | Samples = typename Storage< int >::type |
Публичные функции-члены | |
| SampleConsensusModel (const PointCloudConstPtr &cloud) | |
| Конструктор для базового SampleConsensusModel. More... |
|
| virtual | ~SampleConsensusModel ()=default |
| Деструктор для базового SampleConsensusModel. More... |
|
| virtual void | getSamples (int &iterations, Indices &samples)=0 |
| Получить набор случайных выборок данных и вернуть их в виде индексов точек. More... |
|
| virtual bool | computeModelCoefficients (const Indices &samples, Coefficients &model_coefficients)=0 |
| Проверить, могут ли заданные индексные выборки образовать валидную модель, вычислить коэффициенты модели из этих выборок и сохранить их в model_coefficients. More... |
|
| virtual bool | generateModelHypotheses (Hypotheses &h, int max_iterations)=0 |
| virtual bool | generateModelHypotheses (Hypotheses &h, Samples &s, int max_iterations)=0 |
| virtual bool | isSampleInlier (IndicesPtr &inliers_stencil, Samples &samples, unsigned int &i) |
| virtual int | selectWithinDistance (const Coefficients &model_coefficients, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)=0 |
| Выбрать все точки, которые соответствуют заданным коэффициентам модели как выбросы. More... |
|
| virtual int | selectWithinDistance (const Hypotheses &h, int idx, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)=0 |
| virtual int | selectWithinDistance (Hypotheses &h, int idx, float threshold, IndicesPtr &inliers_stencil, float3 ¢roid)=0 |
| virtual int | countWithinDistance (const Coefficients &model_coefficients, float threshold)=0 |
| virtual int | countWithinDistance (const Hypotheses &h, int idx, float threshold)=0 |
| int | deleteIndices (const IndicesPtr &indices_stencil) |
| int | deleteIndices (const Hypotheses &h, int idx, IndicesPtr &inliers, const IndicesPtr &inliers_delete) |
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Предоставить указатель на входной набор данных. More... |
|
| PointCloudConstPtr | getInputCloud () const |
| Получить указатель на входной набор данных облака точек. More... |
|
| IndicesPtr | getIndices () const |
| Получить указатель на вектор индексов, используемых в модели. Подробнее... |
|
| void | setRadiusLimits (float min_radius, float max_radius) |
| Установить минимальные и максимальные допустимые радиусы для модели (применимо к моделям, которые оценивают радиус). Подробнее... |
|
| void | getRadiusLimits (float &min_radius, float &max_radius) |
| Получить минимальные и максимальные допустимые радиусы для модели, установленные пользователем. Подробнее... |
|
| shared_ptr< typename Storage< float4 >::type > | getNormals () |
| void | setNormals (shared_ptr< typename Storage< float4 >::type > normals) |
Защищённые атрибуты | |
| PointCloudConstPtr | input_ |
| Указатель boost shared на массив данных облака точек. Подробнее... |
|
| shared_ptr< typename Storage< float4 >::type > | normals_ |
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| IndicesPtr | indices_stencil_ |
| Указатель на вектор индексов точек (шаблон) для использования. Подробнее... |
|
| unsigned int | nr_indices_in_stencil_ |
| количество оставшихся индексов в indices_stencil_ Подробнее... |
|
| float | radius_min_ |
| Минимальный и максимальный радиусы для модели. Подробнее... |
|
| float | radius_max_ |
| thrust::minstd_rand | rngl_ |
| Движок генератора псевдослучайных чисел линейного конгруэнтного типа. Подробнее... |
|
Подробное описание
шаблон<шаблон< typename > класс Storage>
класс pcl::cuda::SampleConsensusModel< Storage >
SampleConsensusModel представляет базовый класс модели.
Все модели согласия выборки должны наследовать от этого класса.
Определение в строке 87 файла sac_model.h.
Документация по переопределению типа члена
Coefficients
| используя pcl::cuda::SampleConsensusModel< Storage >::Coefficients = typename Storage<float>::type |
Определение в строке 101 файла sac_model.h.
CoefficientsConstPtr
| используя pcl::cuda::SampleConsensusModel< Storage >::CoefficientsConstPtr = shared_ptr <const Coefficients> |
Определение в строке 103 файла sac_model.h.
CoefficientsPtr
| using pcl::cuda::SampleConsensusModel< Storage >::CoefficientsPtr = shared_ptr <Coefficients> |
Определение в строке 102 файла sac_model.h.
ConstPtr
| using pcl::cuda::SampleConsensusModel< Storage >::ConstPtr = shared_ptr<const SampleConsensusModel> |
Определение в строке 95 файла sac_model.h.
Hypotheses
| using pcl::cuda::SampleConsensusModel< Storage >::Hypotheses = typename Storage<float4>::type |
Определение в строке 105 файла sac_model.h.
Indices
| using pcl::cuda::SampleConsensusModel< Storage >::Indices = typename Storage<int>::type |
Определение в строке 97 файла sac_model.h.
IndicesConstPtr
| using pcl::cuda::SampleConsensusModel< Storage >::IndicesConstPtr = shared_ptr<const typename Storage<int>::type> |
Определение в строке 99 файла sac_model.h.
IndicesPtr
| using pcl::cuda::SampleConsensusModel< Storage >::IndicesPtr = shared_ptr<typename Storage<int>::type> |
Определение в строке 98 файла sac_model.h.
PointCloud
| using pcl::cuda::SampleConsensusModel< Storage >::PointCloud = PointCloudAOS<Storage> |
Определение в строке 90 файла sac_model.h.
PointCloudConstPtr
| using pcl::cuda::SampleConsensusModel< Storage >::PointCloudConstPtr = typename PointCloud::ConstPtr |
Определение в строке 92 файла sac_model.h.
PointCloudPtr
| using pcl::cuda::SampleConsensusModel< Storage >::PointCloudPtr = typename PointCloud::Ptr |
Определение в строке 91 файла sac_model.h.
Ptr
| using pcl::cuda::SampleConsensusModel< Storage >::Ptr = shared_ptr<SampleConsensusModel> |
Определение в строке 94 файла sac_model.h.
Samples
| using pcl::cuda::SampleConsensusModel< Storage >::Samples = typename Storage<int>::type |
Определение в строке 107 файла sac_model.h.
Конструктор и деструктор документации
SampleConsensusModel()
| inline |
Конструктор базового класса SampleConsensusModel.
- Parameters
-
cloud входное облако точек
Определение в строке 120 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::setInputCloud().
~SampleConsensusModel()
| virtualdefault |
Деструктор базового класса SampleConsensusModel.
Документация по членам-функциям
computeModelCoefficients()
| pure virtual |
Проверяет, могут ли заданные индексы образцов образовать допустимую модель, вычисляет коэффициенты модели по этим образцам и сохраняет их в model_coefficients.
Чисто виртуальная функция.
- Parameters
-
samples индексы точек, найденные как потенциально подходящие для создания допустимой модели, хранятся на устройстве model_coefficients вычисленные коэффициенты модели
Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.
countWithinDistance() [1/2]
| pure virtual |
countWithinDistance() [2/2]
| pure virtual |
deleteIndices() [1/2]
| int pcl::cuda::SampleConsensusModel< Storage >::deleteIndices | ( | const Hypotheses & | h, |
| int | idx, | ||
| IndicesPtr & | inliers, | ||
| const IndicesPtr & | inliers_delete | ||
| ) |
deleteIndices() [2/2]
| int pcl::cuda::SampleConsensusModel< Storage >::deleteIndices | ( | const IndicesPtr & | indices_stencil | ) |
generateModelHypotheses() [1/2]
| pure virtual |
generateModelHypotheses() [2/2]
| pure virtual |
getIndices()
| inline |
Получить указатель на вектор индексов, используемых в модели.
Определение в строке 291 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::indices_, pcl::cuda::SampleConsensusModel< Storage >::indices_stencil_ и pcl::cuda::SampleConsensusModel< Storage >::nr_indices_in_stencil_.
getInputCloud()
| inline |
Получить указатель на входной набор данных облака точек.
Определение в строке 272 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::input_.
getNormals()
| inline |
Определение в строке 339 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::normals_.
getRadiusLimits()
| inline |
Получить минимальные и максимальные допустимые пределы радиуса, установленные пользователем для модели.
- Параметры
-
min_radius результирующий минимальный радиус модели max_radius результирующий максимальный радиус модели
Определение в строке 330 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::radius_max_ и pcl::cuda::SampleConsensusModel< Storage >::radius_min_.
getSamples()
| pure virtual |
Получить набор случайных выборок данных и вернуть их как индексы точек.
Чисто виртуальный метод.
- Параметры
-
iterations внутреннее число итераций, используемых методами SAC samples результирующие выборки модели, хранятся на устройстве
Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.
isSampleInlier()
| inlinevirtual |
Определение в строке 174 файла sac_model.h.
selectWithinDistance() [1/3]
| pure virtual |
Выбирает все точки, которые удовлетворяют заданным коэффициентам модели в качестве инлайнеров.
Чисто виртуальный метод.
- Параметры
-
model_coefficients коэффициенты модели, к которой необходимо вычислить расстояния threshold максимальное допустимое значение порога расстояния для определения инлайнеров от аутлайнеров inliers результирующие инлайнеры модели inliers_stencil
Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.
selectWithinDistance() [2/3]
| pure virtual |
selectWithinDistance() [3/3]
| pure virtual |
setInputCloud()
| virtual |
Предоставляет указатель на входные данные.
- Параметры
-
cloud постоянный указатель boost shared на сообщение PointCloud
Ссылается на pcl::cuda::SampleConsensusModel< Storage >::SampleConsensusModel().
setNormals()
| inline |
Определение в строке 342 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::normals_.
setRadiusLimits()
| inline |
Установить минимальное и максимальное допустимые радиусы для модели (применимо к моделям, которые оценивают радиус)
- Parameters
-
min_radius минимальный радиус модели max_radius максимальный радиус модели
- Todo:
- изменить на установку пределов для всей модели
Определение в строке 317 файла sac_model.h.
Ссылки на pcl::cuda::SampleConsensusModel< Storage >::radius_max_, и pcl::cuda::SampleConsensusModel< Storage >::radius_min_.
Документация по данным члена
indices_
| protected |
Указатель на вектор индексов точек для использования.
Определение в строке 357 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getIndices().
indices_stencil_
| protected |
Указатель на вектор индексов точек (шаблон) для использования.
Определение в строке 359 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getIndices().
input_
| protected |
Указатель на данные массива облака точек.
Определение в строке 353 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getInputCloud().
normals_
| protected |
Определение в строке 354 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getNormals(), и pcl::cuda::SampleConsensusModel< Storage >::setNormals().
nr_indices_in_stencil_
| protected |
число оставшихся индексов в indices_stencil_
Определение в строке 361 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getIndices().
radius_max_
| protected |
Определение в строке 366 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getRadiusLimits(), и pcl::cuda::SampleConsensusModel< Storage >::setRadiusLimits().
radius_min_
| protected |
Минимальное и максимальное радиусы модели.
Применимо ко всем моделям, которые оценивают радиус.
Определение в строке 366 файла sac_model.h.
Используется в pcl::cuda::SampleConsensusModel< Storage >::getRadiusLimits() и pcl::cuda::SampleConsensusModel< Storage >::setRadiusLimits().
rngl_
| protected |
Генератор псевдослучайных чисел линейного конгруэнтного типа.
Определение в строке 369 файла sac_model.h.
The documentation for this class was generated from the following file:
- /__w/1/s/cuda/sample_consensus/include/pcl/cuda/sample_consensus/sac_model.h
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1cuda_1_1_sample_consensus_model.html