RandomizedRandomSampleConsensus представляет реализацию RRANSAC (Randomized RANdom SAmple Consensus), как описано в "Randomized RANSAC with Td,d test", O. Подробнее...
#include <pcl/sample_consensus/rransac.h>
Публичные типы | |
| using | Ptr = shared_ptr< RandomizedRandomSampleConsensus< PointT > > |
| using | ConstPtr = shared_ptr< const RandomizedRandomSampleConsensus< PointT > > |
|
| |
| using | Ptr = shared_ptr< SampleConsensus< PointT > > |
| using | ConstPtr = shared_ptr< const SampleConsensus< PointT > > |
Общедоступные члены-функции | |
| RandomizedRandomSampleConsensus (const SampleConsensusModelPtr &model) | |
| Основной конструктор RRANSAC (Случайный RANдомный SAmple Consensus). Подробнее... |
|
| RandomizedRandomSampleConsensus (const SampleConsensusModelPtr &model, double threshold) | |
| Основной конструктор RRANSAC (Случайный RANдомный SAmple Consensus). Подробнее... |
|
| bool | computeModel (int debug_verbosity_level=0) override |
| Вычисление фактической модели и поиск инлайнеров. Подробнее... |
|
| void | setFractionNrPretest (double nr_pretest) |
| Установить процент точек для предварительного тестирования. Подробнее... |
|
| double | getFractionNrPretest () const |
| Получить процент точек для предварительного тестирования. Подробнее... |
|
|
| |
| 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 | setMaxIterations (int max_iterations) |
| Установить максимальное количество итераций. Подробнее... |
|
| int | getMaxIterations () const |
| Получить максимальное количество итераций, заданное пользователем. Подробнее... |
|
| void | setProbability (double probability) |
| Установить желаемую вероятность выбора хотя бы одной выборки, свободной от выбросов. Подробнее... |
|
| double | getProbability () const |
| Получить вероятность выбора по меньшей мере одного набора выборок, свободного от выбросов, заданного пользователем. Подробнее... |
|
| void | setNumberOfThreads (const int nr_threads=-1) |
| Установить количество потоков для использования или отключить распараллеливание. Подробнее... |
|
| int | getNumberOfThreads () const |
| Получить количество потоков, заданное пользователем. Подробнее... |
|
| virtual bool | refineModel (const double sigma=3.0, const unsigned int max_iterations=1000) |
| Уточнить найденную модель. Подробнее... |
|
| void | getRandomSamples (const IndicesPtr &indices, std::size_t nr_samples, std::set< index_t > &indices_subset) |
| Получить набор случайно выбранных индексов. Подробнее... |
|
| void | getModel (Indices &model) const |
| Возвращает лучшую найденную до сих пор модель. Подробнее... |
|
| void | getInliers (Indices &inliers) 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 PointT>
класс pcl::RandomizedRandomSampleConsensus< PointT >
RandomizedRandomSampleConsensus представляет собой реализацию RRANSAC (Рандомизированный случайный консенсус), как описано в "Randomized RANSAC with Td,d test", O.
Chum и J. Matas, Proc. British Machine Vision Conf. (BMVC '02), том 2, BMVA, стр. 448-457, 2002.
Алгоритм работает аналогично RANSAC, с добавлением: после вычисления коэффициентов модели случайным образом выбирается часть точек. Если какая-либо из этих точек не принадлежит модели (с учётом порога), продолжается следующая итерация вместо проверки всех точек. Это может ускорить поиск модели, если доля точек для предварительной проверки выбрана хорошо.
- Примечание
- RRANSAC полезен в ситуациях, когда большинство выборок данных принадлежат модели, и необходим быстрый алгоритм отбрасывания выбросов.
Документация по typedef члена
ConstPtr
| using pcl::RandomizedRandomSampleConsensus< PointT >::ConstPtr = shared_ptr<const RandomizedRandomSampleConsensus<PointT> > |
Ptr
| using pcl::RandomizedRandomSampleConsensus< PointT >::Ptr = shared_ptr<RandomizedRandomSampleConsensus<PointT> > |
Документация конструкторов и деструкторов
RandomizedRandomSampleConsensus() [1/2]
| inline |
RandomizedRandomSampleConsensus() [2/2]
| inline |
Документация функций-членов
computeModel()
| overridevirtual |
Вычисление фактической модели и поиск инлайнеров.
- Параметры
-
[in] debug_verbosity_level включить/выключить отладочную информацию на экране и установить уровень подробности
Реализация pcl::SampleConsensus< PointT >.
Определение в строке 48 файла rransac.hpp.
Ссылки на pcl_lrint.
getFractionNrPretest()
| inline |
setFractionNrPretest()
| inline |
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/sample_consensus/rransac.h
- pcl/sample_consensus/impl/rransac.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_randomized_random_sample_consensus.html