LeastMedianSquares представляет реализацию алгоритма LMedS (наименьшего медианного квадрата). Подробнее...
#include <pcl/sample_consensus/lmeds.h>
Типы публичного доступа | |
| using | Ptr = shared_ptr< LeastMedianSquares< PointT > > |
| using | ConstPtr = shared_ptr< const LeastMedianSquares< PointT > > |
|
| |
| using | Ptr = shared_ptr< SampleConsensus< PointT > > |
| using | ConstPtr = shared_ptr< const SampleConsensus< PointT > > |
Общедоступные члены-функции | |
| LeastMedianSquares (const SampleConsensusModelPtr &model) | |
| Основной конструктор LMedS (Least Median of Squares). Подробнее... |
|
| LeastMedianSquares (const SampleConsensusModelPtr &model, double threshold) | |
| Основной конструктор LMedS (Least Median of Squares). Подробнее... |
|
| 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::LeastMedianSquares< PointT >
LeastMedianSquares представляет собой реализацию алгоритма LMedS (наименьшая медиана квадратов).
LMedS — это алгоритм подгонки модели, похожий на RANSAC, который может выдерживать до 50% выбросов без необходимости устанавливать пороги. См. "Elements of Geometric Computer Vision" Андреа Фузиелло (http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/FUSIELLO4/tutorial.html#x1-520007) для получения более подробной информации. В отличие от RANSAC, LMedS не делит точки на инлиеры и выбросы при поиске модели. Вместо этого он использует медиану всех расстояний точка-модель в качестве меры качества модели. Порог требуется только в конце, когда определяется, какие точки относятся к найденной модели.
Документация по переопределяемому типу
ConstPtr
| using pcl::LeastMedianSquares< PointT >::ConstPtr = shared_ptr<const LeastMedianSquares<PointT> > |
Ptr
| using pcl::LeastMedianSquares< PointT >::Ptr = shared_ptr<LeastMedianSquares<PointT> > |
Документация конструктора и деструктора
LeastMedianSquares() [1/2]
| inline |
LeastMedianSquares() [2/2]
| inline |
Документация функций-членов
computeModel()
| overridevirtual |
Вычисление фактической модели и нахождение инлайнеров.
- Параметры
-
[in] debug_verbosity_level включение/выключение отладочной информации на экране и установка уровня подробности
Реализация pcl::SampleConsensus< PointT >.
Определение в строке 49 файла lmeds.hpp.
Ссылки на pcl::computeMedian(), и pcl::geometry::distance().
Документация для этого класса была сгенерирована из следующих файлов:
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_least_median_squares.html