SampleConsensus представляет базовый класс. Подробнее...
#include <pcl/sample_consensus/sac.h>
Публичные типы | |
| using | Ptr = shared_ptr< SampleConsensus< T > > |
| using | ConstPtr = shared_ptr< const SampleConsensus< T > > |
Общедоступные члены-функции | |
| SampleConsensus (const SampleConsensusModelPtr &model, bool random=false) | |
| Конструктор базового SAC. Подробнее... |
|
| SampleConsensus (const SampleConsensusModelPtr &model, double threshold, bool random=false) | |
| Конструктор базового SAC. Подробнее... |
|
| void | setSampleConsensusModel (const SampleConsensusModelPtr &model) |
| Установить используемую модель Sample Consensus. Подробнее... |
|
| SampleConsensusModelPtr | getSampleConsensusModel () const |
| Получить используемую модель Sample Consensus. Подробнее... |
|
| virtual | ~SampleConsensus ()=default |
| Деструктор базового SAC. Подробнее... |
|
| void | setDistanceThreshold (double threshold) |
| Установить порог расстояния до модели. Подробнее... |
|
| double | getDistanceThreshold () const |
| Получить порог расстояния до модели, заданный пользователем. Подробнее... |
|
| void | getModelCoefficients (Eigen::VectorXf &model_coefficients) const |
| Возвращает коэффициенты модели наилучшей найденной модели до сих пор. Подробнее... |
|
Защищённые члены функций | |
| double | rnd () |
| Генератор случайных чисел на основе Boost. Подробнее... |
|
Защищённые атрибуты | |
| SampleConsensusModelPtr | sac_model_ |
| Базовая модель данных, используемая (т.е. Подробнее... |
|
| Indices | model_ |
| Найденная модель после последнего computeModel() в виде индексов облака точек. Подробнее... |
|
| Indices | inliers_ |
| Индексы точек, выбранных в качестве инлиеров после последнего вызова computeModel(). Подробнее... |
|
| Eigen::VectorXf | model_coefficients_ |
| Коэффициенты нашей модели, вычисленные непосредственно из найденной модели. Подробнее... |
|
| double | probability_ |
| Желаемая вероятность выбора, по крайней мере, одной выборки, свободной от выбросов. Подробнее... |
|
| int | iterations_ |
| Общее количество внутренних итераций цикла, которые были выполнены до сих пор. Подробнее... |
|
| double | threshold_ |
| Пороговое значение расстояния до модели. Подробнее... |
|
| int | max_iterations_ |
| Максимальное количество итераций перед отказом. Подробнее... |
|
| int | threads_ |
| Количество потоков, которые должна использовать планировщик, или отрицательное число, если параллелизация не требуется. Подробнее... |
|
| boost::mt19937 | rng_alg_ |
| Алгоритм генератора случайных чисел на основе Boost. Подробнее... |
|
| std::shared_ptr< boost::uniform_01< boost::mt19937 > > | rng_ |
| Распределение генератора случайных чисел на основе Boost. Подробнее... |
|
Подробное описание
шаблон<typename T>
класс pcl::SampleConsensus< T >
SampleConsensus представляет базовый класс.
Все методы согласия выборки должны наследоваться от этого класса.
Документация по переопределённым типам членов
ConstPtr
| используя pcl::SampleConsensus< T >::ConstPtr = shared_ptr<const SampleConsensus<T> > |
Ptr
| используя pcl::SampleConsensus< T >::Ptr = shared_ptr<SampleConsensus<T> > |
Документация по конструктору
SampleConsensus() [1/2]
| inline |
Конструктор базового SAC.
- Параметры
-
[in] model модель Sample Consensus [in] random если true, устанавливает начальное значение генератора случайных чисел по текущему времени, иначе устанавливает значение 12345 (по умолчанию: false)
Определение в строке 77 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::rng_.
SampleConsensus() [2/2]
| inline |
Конструктор базового SAC.
- Параметры
-
[in] model модель Sample Consensus [in] threshold пороговое значение расстояния до модели [in] random если true, устанавливает начальное значение генератора случайных чисел по текущему времени, иначе устанавливает значение 12345 (по умолчанию: false)
Определение в строке 98 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::rng_.
~SampleConsensus()
| virtualdefault |
Деструктор базового SAC.
Документация по членам-функциям
computeModel()
| pure virtual |
Вычисление фактической модели.
Чисто виртуальная функция.
Реализована в pcl::RandomizedRandomSampleConsensus< PointT >, pcl::RandomizedMEstimatorSampleConsensus< PointT >, pcl::RandomSampleConsensus< PointT >, pcl::ProgressiveSampleConsensus< PointT >, pcl::MEstimatorSampleConsensus< PointT >, pcl::MaximumLikelihoodSampleConsensus< PointT >, и pcl::LeastMedianSquares< PointT >.
getDistanceThreshold()
| inline |
Получить пороговое значение расстояния до модели, установленное пользователем.
Определение в строке 143 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::threshold_.
getInliers()
| inline |
Возвращает лучшую найденную до сих пор совокупность точек-инсайдеров для этой модели.
- Параметры
-
[out] inliers результирующий набор точек-инсайдеров
Определение в строке 310 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::inliers_.
Используется в pcl::registration::CorrespondenceRejectorSampleConsensus2D< PointT >::getRemainingCorrespondences() и pcl::registration::CorrespondenceRejectorSampleConsensus< PointT >::getRemainingCorrespondences().
getMaxIterations()
| inline |
Получить максимальное количество итераций, установленное пользователем.
Определение в строке 153 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::max_iterations_.
getModel()
| inline |
Возвращает лучшую найденную модель до сих пор.
- Параметры
-
[out] model результирующая модель
Определение в строке 304 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::model_.
getModelCoefficients()
| inline |
Возвращает коэффициенты модели лучшей найденной модели до сих пор.
- Параметры
-
[out] model_coefficients результирующие коэффициенты модели, как описано в Модуль sample_consensus
Определение в строке 316 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::model_coefficients_.
Используется в pcl::registration::CorrespondenceRejectorSampleConsensus2D< PointT >::getRemainingCorrespondences() и pcl::registration::CorrespondenceRejectorSampleConsensus< PointT >::getRemainingCorrespondences().
getNumberOfThreads()
| inline |
Получить количество потоков, заданное пользователем.
Определение в строке 175 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::threads_.
getProbability()
| inline |
Получить вероятность выбора хотя бы одной выборки, свободной от выбросов, заданную пользователем.
Определение в строке 164 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::probability_.
getRandomSamples()
| inline |
Получить набор случайных индексов.
- Параметры
-
[in] indices вектор входных индексов [in] nr_samples требуемое количество индексов точек для случайного выбора [out] indices_subset результирующий набор случайных выбранных индексов
Определение в строке 290 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::rnd().
getSampleConsensusModel()
| inline |
Получить используемую модель согласия выборок.
Определение в строке 127 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::sac_model_.
refineModel()
```
| inlinevirtual |
Уточнить найденную модель.
Этот цикл проходит по коэффициентам модели и оптимизирует их вместе с набором инлиеров, пока изменение набора инлиеров не станет минимальным.
- Параметры
-
[вход] sigma коэффициент стандартного отклонения для определения выборки как инлиера (расстояние Махаланобиса) [вход] max_iterations максимальное число итераций для попытки уточнения, если инлиеры продолжают изменяться
Определение в строке 189 файла sac.h.
Ссылается на pcl::SampleConsensus< T >::inliers_, pcl::SampleConsensus< T >::model_coefficients_, pcl::SampleConsensus< T >::sac_model_ и pcl::SampleConsensus< T >::threshold_.
Используется в pcl::registration::CorrespondenceRejectorSampleConsensus2D< PointT >::getRemainingCorrespondences() и pcl::registration::CorrespondenceRejectorSampleConsensus< PointT >::getRemainingCorrespondences().
rnd()
| inlineprotected |
Генератор случайных чисел на основе Boost.
Определение в строке 354 файла sac.h.
Ссылается на pcl::SampleConsensus< T >::rng_.
Используется в pcl::SampleConsensus< T >::getRandomSamples().
setDistanceThreshold()
| inline |
Установить порог расстояния до модели.
- Параметры
-
[вход] threshold порог расстояния до модели
Определение в строке 139 файла sac.h.
Ссылается на pcl::SampleConsensus< T >::threshold_.
setMaxIterations()
| inline |
Установить максимальное число итераций.
- Параметры
-
[вход] max_iterations максимальное число итераций
Определение в строке 149 файла sac.h.
Ссылается на pcl::SampleConsensus< T >::max_iterations_.
Используется в pcl::registration::CorrespondenceRejectorSampleConsensus2D< PointT >::getRemainingCorrespondences() и pcl::registration::CorrespondenceRejectorSampleConsensus< PointT >::getRemainingCorrespondences().
setNumberOfThreads()
| inline |
Установить количество потоков для использования или выключить распараллеливание.
- Параметры
-
[вход] nr_threads количество аппаратных потоков для использования (0 устанавливает значение автоматически, отрицательное число отключает распараллеливание)
- Примечание
- Не все методы SAC имеют реализацию с параллельной обработкой. Некоторые игнорируют это значение.
Определение в строке 171 файла sac.h.
Ссылается на pcl::SampleConsensus< T >::threads_.
setProbability()
| inline |
Установить желаемую вероятность выбора по крайней мере одной выборки, свободной от выбросов.
- Параметры
-
[вход] probability желаемая вероятность выбора по крайней мере одной выборки, свободной от выбросов
- Примечание
- Внутренне вероятность устанавливается по умолчанию в 99% (0,99).
Определение в строке 160 файла sac.h.
Ссылается на pcl::SampleConsensus< T >::probability_.
setSampleConsensusModel()
| inline |
Установить модель согласия выборки для использования.
- Параметры
-
[in] model модель согласия выборки
Определение в строке 120 файла sac.h.
Ссылки на pcl::SampleConsensus< T >::sac_model_.
Документация по данным членам
inliers_
| protected |
Индексы точек, выбранных в качестве инлайнеров после последнего вызова computeModel().
Определение в строке 326 файла sac.h.
Используется в pcl::SampleConsensus< T >::getInliers() и pcl::SampleConsensus< T >::refineModel().
iterations_
| protected |
max_iterations_
| protected |
Максимальное количество итераций перед отказом.
Определение в строке 341 файла sac.h.
Используется в pcl::SampleConsensus< T >::getMaxIterations() и pcl::SampleConsensus< T >::setMaxIterations().
model_
| protected |
Модель, найденная после последнего вызова computeModel(), в виде индексов точек облака.
Определение в строке 323 файла sac.h.
Используется в pcl::SampleConsensus< T >::getModel().
model_coefficients_
| protected |
Коэффициенты нашей модели, вычисленные непосредственно из найденной модели.
Определение в строке 329 файла sac.h.
Используется в pcl::SampleConsensus< T >::getModelCoefficients() и pcl::SampleConsensus< T >::refineModel().
probability_
| protected |
Желаемая вероятность выбора по крайней мере одной выборки, свободной от выбросов.
Определение в строке 332 файла sac.h.
Используется в pcl::SampleConsensus< T >::getProbability() и pcl::SampleConsensus< T >::setProbability().
rng_
| protected |
Распределение генератора случайных чисел на основе Boost.
Определение в строке 350 файла sac.h.
Используется в pcl::SampleConsensus< T >::rnd() и pcl::SampleConsensus< T >::SampleConsensus().
rng_alg_
| protected |
sac_model_
| protected |
Используемая модель данных (т.е. то, что мы пытаемся найти).
Определение в строке 320 файла sac.h.
Используется в pcl::SampleConsensus< T >::getSampleConsensusModel(), pcl::SampleConsensus< T >::refineModel() и pcl::SampleConsensus< T >::setSampleConsensusModel().
threads_
| protected |
Количество потоков, используемых планировщиком, или отрицательное значение, если распараллеливание не требуется.
Определение в строке 344 файла sac.h.
Используется в pcl::SampleConsensus< T >::getNumberOfThreads() и pcl::SampleConsensus< T >::setNumberOfThreads().
threshold_
| protected |
Пороговое значение расстояния до модели.
Определение в строке 338 файла sac.h.
Используется в pcl::SampleConsensus< T >::getDistanceThreshold(), pcl::SampleConsensus< T >::refineModel() и pcl::SampleConsensus< T >::setDistanceThreshold().
The documentation for this class was generated from the following file:
- pcl/sample_consensus/sac.h
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_sample_consensus.html