MEstimatorSampleConsensus представляет собой реализацию алгоритма MSAC (M-estimator SAmple Consensus), описанного в работе: «MLESAC: A new robust estimator with application to estimating image geometry», P.H.S. Подробнее...
#include <pcl/sample_consensus/msac.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< MEstimatorSampleConsensus< PointT > > |
| using | ConstPtr = shared_ptr< const MEstimatorSampleConsensus< PointT > > |
|
| |
| using | Ptr = shared_ptr< SampleConsensus< PointT > > |
| using | ConstPtr = shared_ptr< const SampleConsensus< PointT > > |
Общедоступные функции-члены | |
| MEstimatorSampleConsensus (const SampleConsensusModelPtr &model) | |
| Основной конструктор MSAC (M-estimator SAmple Consensus). Подробнее... |
|
| MEstimatorSampleConsensus (const SampleConsensusModelPtr &model, double threshold) | |
| Основной конструктор MSAC (M-estimator SAmple Consensus). Подробнее... |
|
| bool | computeModel (int debug_verbosity_level=0) override |
| Вычислить фактическую модель и найти внутренние точки. Подробнее... |
|
|
| |
| 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. Подробнее... |
|
Подробное описание
template<typename PointT>
class pcl::MEstimatorSampleConsensus< PointT >
MEstimatorSampleConsensus представляет собой реализацию алгоритма MSAC (M-estimator SAmple Consensus), описанного в статье «MLESAC: A new robust estimator with application to estimating image geometry» (MLESAC: новый робастный оцениватель для применения при оценке геометрии изображений), P.H.S.
Torr и A. Zisserman, Computer Vision and Image Understanding, том 78, 2000. Отличие от RANSAC заключается в способе вычисления качества модели: RANSAC подсчитывает число согласованных точек с учётом заданного порога. Чем больше согласованных точек, тем лучше модель — при этом неважно, насколько близко они расположены к модели, если находятся в пределах порога. MSAC изменяет этот подход, используя в качестве меры качества сумму расстояний от всех точек до модели; однако выбросы добавляют только пороговое значение, а не своё фактическое расстояние. Этот метод может давать лучшие результаты по сравнению с RANSAC.
Документация псевдонимов типов класса
ConstPtr
| using pcl::MEstimatorSampleConsensus< PointT >::ConstPtr = shared_ptr<const MEstimatorSampleConsensus<PointT> > |
Ptr
| using pcl::MEstimatorSampleConsensus< PointT >::Ptr = shared_ptr<MEstimatorSampleConsensus<PointT> > |
Документация конструкторов и деструкторов
MEstimatorSampleConsensus() [1/2]
| inline |
MEstimatorSampleConsensus() [2/2]
| inline |
Документация функций-членов
computeModel()
| overridevirtual |
Вычисляет модель и находит согласованные точки.
- Параметры
-
[in] debug_verbosity_level включает или отключает отладочную информацию на экране и задаёт уровень подробности
Реализует pcl::SampleConsensus< PointT >.
Определение в строке 48 файла msac.hpp.
Ссылки: pcl::geometry::distance().
Документация для этого класса сгенерирована на основе следующих файлов:
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_m_estimator_sample_consensus.html