SampleConsensusModelRegistration2D задаёт модель для отбраковки выбросов при регистрации «точка-точка» с использованием расстояний между 2D-пикселями. Подробнее...
#include <pcl/sample_consensus/sac_model_registration_2d.h>
Открытые функции-члены | |
| SampleConsensusModelRegistration2D (const PointCloudConstPtr &cloud, bool random=false) | |
| Конструктор базового класса SampleConsensusModelRegistration2D. Подробнее... |
|
| SampleConsensusModelRegistration2D (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false) | |
| Конструктор базового класса SampleConsensusModelRegistration2D. Подробнее... |
|
| virtual | ~SampleConsensusModelRegistration2D ()=default |
| Пустой деструктор. Подробнее... |
|
| void | getDistancesToModel (const Eigen::VectorXf &model_coefficients, std::vector< double > &distances) const |
| Вычислить все расстояния от преобразованных точек до соответствующих им точек. Подробнее... |
|
| void | selectWithinDistance (const Eigen::VectorXf &model_coefficients, const double threshold, Indices &inliers) |
| Выбрать все точки, соответствующие заданным коэффициентам модели, в качестве внутренних точек. Подробнее... |
|
| virtual std::size_t | countWithinDistance (const Eigen::VectorXf &model_coefficients, const double threshold) const |
| Подсчитать все точки, соответствующие заданным коэффициентам модели, в качестве внутренних точек. Подробнее... |
|
| void | setProjectionMatrix (const Eigen::Matrix3f &projection_matrix) |
| Задать матрицу проекции камеры. Подробнее... |
|
| Eigen::Matrix3f | getProjectionMatrix () const |
| Получить матрицу проекции камеры. Подробнее... |
|
|
| |
| SampleConsensusModelRegistration (const PointCloudConstPtr &cloud, bool random=false) | |
| Конструктор базового класса SampleConsensusModelRegistration. Подробнее... |
|
| SampleConsensusModelRegistration (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false) | |
| Конструктор базового класса SampleConsensusModelRegistration. Подробнее... |
|
| ~SampleConsensusModelRegistration () override=default | |
| Пустой деструктор. Подробнее... |
|
| void | setInputCloud (const PointCloudConstPtr &cloud) override |
| Передать указатель на входной набор данных. Подробнее... |
|
| void | setInputTarget (const PointCloudConstPtr &target) |
| Задать входное целевое облако точек. Подробнее... |
|
| void | setInputTarget (const PointCloudConstPtr &target, const Indices &indices_tgt) |
| Задать входное целевое облако точек. Подробнее... |
|
| bool | computeModelCoefficients (const Indices &samples, Eigen::VectorXf &model_coefficients) const override |
| Вычислить матрицу жесткого преобразования 4x4 по заданным выборочным точкам. Подробнее... |
|
| void | optimizeModelCoefficients (const Indices &inliers, const Eigen::VectorXf &model_coefficients, Eigen::VectorXf &optimized_coefficients) const override |
| Повторно вычислить преобразование 4x4, используя заданный набор внутренних точек. Подробнее... |
|
| void | projectPoints (const Indices &, const Eigen::VectorXf &, PointCloud &, bool=true) const override |
| Создать новое облако точек, спроецировав внутренние точки на модель. Подробнее... |
|
| bool | doSamplesVerifyModel (const std::set< index_t > &, const Eigen::VectorXf &, const double) const override |
| Проверить, соответствует ли подмножество индексов заданному набору коэффициентов модели. Подробнее... |
|
| pcl::SacModel | getModelType () const override |
| Вернуть уникальный идентификатор этой модели (SACMODEL_REGISTRATION). Подробнее... |
|
|
| |
| SampleConsensusModel (const PointCloudConstPtr &cloud, bool random=false) | |
| Конструктор базового класса SampleConsensusModel. Подробнее... |
|
| SampleConsensusModel (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false) | |
| Конструктор базового класса SampleConsensusModel. Подробнее... |
|
| virtual | ~SampleConsensusModel ()=default |
| Деструктор базового класса SampleConsensusModel. Подробнее... |
|
| virtual void | getSamples (int &iterations, Indices &samples) |
| Получить набор случайных выборок данных и вернуть их в виде индексов точек. Подробнее... |
|
| PointCloudConstPtr | getInputCloud () const |
| Получить указатель на входной набор данных облака точек. Подробнее... |
|
| void | setIndices (const IndicesPtr &indices) |
| Передать указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| void | setIndices (const Indices &indices) |
| Передать вектор индексов, представляющий входные данные. Подробнее... |
|
| IndicesPtr | getIndices () const |
| Получить указатель на используемый вектор индексов. Подробнее... |
|
| const std::string & | getClassName () const |
| Получить строковое представление имени этого класса. Подробнее... |
|
| unsigned int | getSampleSize () const |
| Вернуть размер выборки, по которой вычисляется модель. Подробнее... |
|
| unsigned int | getModelSize () const |
| Вернуть количество коэффициентов модели. Подробнее... |
|
| void | setRadiusLimits (const double &min_radius, const double &max_radius) |
| Задать минимальное и максимальное допустимые значения радиуса модели (применимо к моделям, в которых оценивается радиус) Подробнее... |
|
| void | getRadiusLimits (double &min_radius, double &max_radius) const |
| Получить заданные пользователем минимальное и максимальное допустимые значения радиуса модели. Подробнее... |
|
| void | setModelConstraints (std::function< bool(const Eigen::VectorXf &)> function) |
| Это можно использовать для наложения ограничений любого типа на модель, например Подробнее... |
|
| void | setSamplesMaxDist (const double &radius, SearchPtr search) |
| Задать максимальное расстояние, допустимое при выборе случайных выборок. Подробнее... |
|
| void | getSamplesMaxDist (double &radius) const |
| Получить максимальное расстояние, допустимое при выборе случайных выборок. Подробнее... |
|
| double | computeVariance (const std::vector< double > &error_sqr_dists) const |
| Вычислить дисперсию ошибок относительно модели. Подробнее... |
|
| double | computeVariance () const |
| Вычислить дисперсию ошибок относительно модели по внутренне оцененному вектору расстояний. Подробнее... |
|
Защищённые функции-члены | |
| bool | isSampleGood (const Indices &samples) const |
| Проверить, образуют ли выборочные индексы допустимую выборку индексов точек. Подробнее... |
|
| void | computeSampleDistanceThreshold (const PointCloudConstPtr &) |
| Вычисляет «оптимальный» порог расстояния между выборками на основе главных направлений входного облака. Подробнее... |
|
| void | computeSampleDistanceThreshold (const PointCloudConstPtr &, const Indices &) |
| Вычисляет «оптимальный» порог расстояния между выборками на основе главных направлений входного облака. Подробнее... |
|
|
| |
| void | computeSampleDistanceThreshold (const PointCloudConstPtr &cloud) |
| Вычисляет «оптимальный» порог расстояния между выборками на основе главных направлений входного облака. Подробнее... |
|
| void | computeSampleDistanceThreshold (const PointCloudConstPtr &cloud, const Indices &indices) |
| Вычисляет «оптимальный» порог расстояния между выборками на основе главных направлений входного облака. Подробнее... |
|
| void | estimateRigidTransformationSVD (const pcl::PointCloud< PointT > &cloud_src, const Indices &indices_src, const pcl::PointCloud< PointT > &cloud_tgt, const Indices &indices_tgt, Eigen::VectorXf &transform) const |
| Оценивает жёсткое преобразование между исходным и целевым облаками точек с помощью замкнутого решения методом SVD для задачи абсолютной ориентации с использованием единичных кватернионов. Подробнее... |
|
| void | computeOriginalIndexMapping () |
| Вычислить отображения между исходными индексами облаков input_/target_. Подробнее... |
|
|
| |
| SampleConsensusModel (bool random=false) | |
| Пустой конструктор базового класса SampleConsensusModel. Подробнее... |
|
| void | drawIndexSample (Indices &sample) |
| Заполняет массив выборки случайными элементами из вектора indices_. Подробнее... |
|
| void | drawIndexSampleRadius (Indices &sample) |
| Заполняет массив выборки одним случайным элементом из вектора indices_ и другими случайными элементами, находящимися ближе, чем samples_radius_. Подробнее... |
|
| virtual bool | isModelValid (const Eigen::VectorXf &model_coefficients) const |
| Проверить, удовлетворяет ли модель ограничениям, заданным пользователем. Подробнее... |
|
| int | rnd () |
| Генератор случайных чисел на основе Boost. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| PointCloudConstPtr | target_ |
| Указатель boost shared на массив данных целевого облака точек. Подробнее... |
|
| IndicesPtr | indices_tgt_ |
| Указатель на вектор индексов целевых точек, которые следует использовать. Подробнее... |
|
| std::map< index_t, index_t > | correspondences_ |
| Для заданного индекса в исходном облаке точек возвращает соответствующий исходный индекс в целевом облаке. Подробнее... |
|
| double | sample_dist_thresh_ |
| Внутренний порог расстояния, используемый на этапе выбора образцов. Подробнее... |
|
|
| |
| std::string | model_name_ |
| Имя модели. Подробнее... |
|
| PointCloudConstPtr | input_ |
| Указатель boost shared на массив данных облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек, которые следует использовать. Подробнее... |
|
| double | radius_min_ |
| Минимальное и максимальное ограничения радиуса модели. Подробнее... |
|
| double | radius_max_ |
| double | samples_radius_ |
| Максимальное расстояние от первого образца до последующих (поиск в радиусе). Подробнее... |
|
| SearchPtr | samples_radius_search_ |
| Объект поиска для выбора последующих образцов с помощью поиска в радиусе. Подробнее... |
|
| Indices | shuffled_indices_ |
| Данные, содержащие перемешанную версию индексов. Подробнее... |
|
| boost::mt19937 | rng_alg_ |
| Алгоритм генератора случайных чисел на основе Boost. Подробнее... |
|
| std::shared_ptr< boost::uniform_int<> > | rng_dist_ |
| Распределение генератора случайных чисел на основе Boost. Подробнее... |
|
| std::shared_ptr< boost::variate_generator< boost::mt19937 &, boost::uniform_int<> > > | rng_gen_ |
| Генератор случайных чисел на основе Boost. Подробнее... |
|
| std::vector< double > | error_sqr_dists_ |
| Вектор, содержащий расстояния до вычисленной модели. Подробнее... |
|
| unsigned int | sample_size_ |
| Размер образца, по которому вычисляется модель. Подробнее... |
|
| unsigned int | model_size_ |
| Количество коэффициентов модели. Подробнее... |
|
| std::function< bool(const Eigen::VectorXf &)> | custom_model_constraints_ |
| Пользовательская функция, принимающая коэффициенты модели и возвращающая признак того, является ли модель приемлемой. Подробнее... |
|
|
| |
| static const unsigned int | max_sample_checks_ = 1000 |
| Максимальное количество попыток выбрать подходящий образец. Подробнее... |
|
Подробное описание
template<typename PointT>
class pcl::SampleConsensusModelRegistration2D< PointT >
SampleConsensusModelRegistration2D задаёт модель для отбраковки выбросов при регистрации «точка-точка» с использованием расстояний между 2D-пикселями.
Определение в строке 52 файла sac_model_registration_2d.h.
Документация по псевдонимам типов-членов
ConstPtr
| using pcl::SampleConsensusModelRegistration2D< PointT >::ConstPtr = shared_ptr<const SampleConsensusModelRegistration2D<PointT> > |
Определение в строке 71 файла sac_model_registration_2d.h.
PointCloud
| using pcl::SampleConsensusModelRegistration2D< PointT >::PointCloud = typename pcl::SampleConsensusModel<PointT>::PointCloud |
Определение в строке 66 файла sac_model_registration_2d.h.
PointCloudConstPtr
| using pcl::SampleConsensusModelRegistration2D< PointT >::PointCloudConstPtr = typename pcl::SampleConsensusModel<PointT>::PointCloudConstPtr |
Определение в строке 68 файла sac_model_registration_2d.h.
PointCloudPtr
| using pcl::SampleConsensusModelRegistration2D< PointT >::PointCloudPtr = typename pcl::SampleConsensusModel<PointT>::PointCloudPtr |
Определение в строке 67 файла sac_model_registration_2d.h.
Ptr
| using pcl::SampleConsensusModelRegistration2D< PointT >::Ptr = shared_ptr<SampleConsensusModelRegistration2D<PointT> > |
Определение в строке 70 файла sac_model_registration_2d.h.
Документация по конструкторам и деструктору
SampleConsensusModelRegistration2D() [1/2]
| inline |
Конструктор базового класса SampleConsensusModelRegistration2D.
- Параметры
-
[in] cloud входной набор данных облака точек [in] random если значение true, начальное значение генератора случайных чисел устанавливается равным текущему времени, иначе — 12345 (по умолчанию: false)
Определение в строке 77 файла sac_model_registration_2d.h.
Ссылки на pcl::SampleConsensusModel< PointT >::model_name_, pcl::SampleConsensusModel< PointT >::model_size_, pcl::SampleConsensusModel< PointT >::sample_size_ и pcl::SampleConsensusModelRegistration< PointT >::setInputCloud().
SampleConsensusModelRegistration2D() [2/2]
| inline |
Конструктор базового класса SampleConsensusModelRegistration2D.
- Параметры
-
[in] cloud входной набор данных облака точек [in] indices вектор индексов точек, которые будут взяты из cloud [in] random если значение true, начальное значение генератора случайных чисел устанавливается равным текущему времени, иначе — 12345 (по умолчанию: false)
Определение в строке 94 файла sac_model_registration_2d.h.
Ссылки на pcl::SampleConsensusModelRegistration< PointT >::computeOriginalIndexMapping(), pcl::SampleConsensusModelRegistration2D< PointT >::computeSampleDistanceThreshold(), pcl::SampleConsensusModel< PointT >::model_name_, pcl::SampleConsensusModel< PointT >::model_size_ и pcl::SampleConsensusModel< PointT >::sample_size_.
~SampleConsensusModelRegistration2D()
| virtualdefault |
Пустой деструктор.
Документация функций-членов
computeSampleDistanceThreshold() [1/2]
| inlineprotected |
Вычисляет «оптимальный» порог расстояния между образцами на основе главных направлений входного облака.
Определение в строке 165 файла sac_model_registration_2d.h.
Используется в pcl::SampleConsensusModelRegistration2D< PointT >::SampleConsensusModelRegistration2D().
computeSampleDistanceThreshold() [2/2]
| inlineprotected |
Вычисляет «оптимальный» порог расстояния между образцами на основе главных направлений входного облака.
Определение в строке 192 файла sac_model_registration_2d.h.
countWithinDistance()
| virtual |
Подсчитывает все точки, соответствующие заданным коэффициентам модели и являющиеся внутренними точками.
- Параметры
-
[in] model_coefficients коэффициенты модели, расстояния до которой необходимо вычислить [in] threshold максимально допустимый порог расстояния для определения внутренних точек и выбросов
- Возвращает
- итоговое количество внутренних точек
Переопределено из pcl::SampleConsensusModelRegistration< PointT >.
Определение в строке 181 файла sac_model_registration_2d.hpp.
getDistancesToModel()
| virtual |
Вычисляет расстояния от всех преобразованных точек до соответствующих им точек.
- Параметры
-
[in] model_coefficients матрица преобразования 4x4 [out] distances вычисленные оценки расстояний
Переопределено из pcl::SampleConsensusModelRegistration< PointT >.
Определение в строке 67 файла sac_model_registration_2d.hpp.
getProjectionMatrix()
| inline |
Возвращает матрицу проекции камеры.
Определение в строке 147 файла sac_model_registration_2d.h.
isSampleGood()
| protectedvirtual |
Проверяет, образуют ли индексы выборки корректную выборку индексов точек.
- Параметры
-
[in] samples итоговые индексы выборки
Переопределено из pcl::SampleConsensusModelRegistration< PointT >.
Определение в строке 45 файла sac_model_registration_2d.hpp.
selectWithinDistance()
| virtual |
Выбирает все точки, соответствующие заданным коэффициентам модели и являющиеся внутренними точками.
- Параметры
-
[in] model_coefficients матрица преобразования 4x4 [in] threshold максимально допустимый порог расстояния для определения внутренних точек и выбросов [out] inliers итоговые внутренние точки модели
Переопределено из pcl::SampleConsensusModelRegistration< PointT >.
Определение в строке 121 файла sac_model_registration_2d.hpp.
См. также pcl::geometry::distance().
setProjectionMatrix()
| inline |
Задаёт матрицу проекции камеры.
- Параметры
-
[in] projection_matrix матрица проекции камеры
Определение в строке 142 файла sac_model_registration_2d.h.
Используется в pcl::registration::CorrespondenceRejectorSampleConsensus2D< PointT >::getRemainingCorrespondences().
Документация этого класса сгенерирована из следующих файлов:
- pcl/sample_consensus/sac_model_registration_2d.h
- pcl/sample_consensus/impl/sac_model_registration_2d.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_sample_consensus_model_registration2_d.html