Класс оценки и выравнивания позы, использующий процедуру RANSAC для предопределения. Подробнее...
#include <pcl/registration/sample_consensus_prerejective.h>
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Публичные функции-члены | |
| SampleConsensusPrerejective () | |
| Конструктор. Подробнее... |
|
| ~SampleConsensusPrerejective () override=default | |
| Деструктор. Подробнее... |
|
| void | setSourceFeatures (const FeatureCloudConstPtr &features) |
| Указать указатель boost shared на дескрипторы признаков исходного облака точек. Подробнее... |
|
| const FeatureCloudConstPtr | getSourceFeatures () const |
| Получить указатель на признаки исходного облака точек. Подробнее... |
|
| void | setTargetFeatures (const FeatureCloudConstPtr &features) |
| Указать указатель boost shared на дескрипторы признаков целевого облака точек. Подробнее... |
|
| const FeatureCloudConstPtr | getTargetFeatures () const |
| Получить указатель на признаки целевого облака точек. Подробнее... |
|
| void | setNumberOfSamples (int nr_samples) |
| Установить количество выборок, используемых на каждой итерации. Подробнее... |
|
| int | getNumberOfSamples () const |
| Получить количество выборок, используемых на каждой итерации, как установлено пользователем. Подробнее... |
|
| void | setCorrespondenceRandomness (int k) |
| Установить количество соседей, используемых при выборе случайного соответствия признаков. Подробнее... |
|
| int | getCorrespondenceRandomness () const |
| Получить количество соседей, используемых при выборе случайного соответствия признаков, как установлено пользователем. Подробнее... |
|
| void | setSimilarityThreshold (float similarity_threshold) |
| Установить порог сходства в [0,1[ между длинами ребер базового объекта-отклонителя полигонального соответствия, где 1 - идеальное совпадение. Подробнее... |
|
| float | getSimilarityThreshold () const |
| Получить порог сходства между длинами ребер базового объекта-отклонителя полигонального соответствия. Подробнее... |
|
| void | setInlierFraction (float inlier_fraction) |
| Установить требуемую долю входящих точек (от входных данных). Подробнее... |
|
| float | getInlierFraction () const |
| Получить требуемую долю входящих точек. Подробнее... |
|
| const pcl::Indices & | getInliers () const |
| Получить индексы входящих точек исходного облака точек при окончательном преобразовании. Подробнее... |
|
|
| |
| Registration () | |
| Пустой конструктор. Подробнее... |
|
| ~Registration () override=default | |
| деструктор. Подробнее... |
|
| void | setTransformationEstimation (const TransformationEstimationPtr &te) |
| Укажите указатель на объект оценки преобразования. Подробнее... |
|
| void | setCorrespondenceEstimation (const CorrespondenceEstimationPtr &ce) |
| Укажите указатель на объект оценки соответствия. Подробнее... |
|
| virtual void | setInputSource (const PointCloudSourceConstPtr &cloud) |
| Укажите указатель на входной источник (например, облако точек, которое мы хотим выровнять с целевым облаком) Подробнее... |
|
| PointCloudSourceConstPtr const | getInputSource () |
| Получить указатель на входные данные целевого набора точек. Подробнее... |
|
| virtual void | setInputTarget (const PointCloudTargetConstPtr &cloud) |
| Укажите указатель на входной целевой объект (например, облако точек, на которое мы хотим выровнять входной источник) Подробнее... |
|
| PointCloudTargetConstPtr const | getInputTarget () |
| Получить указатель на входные данные целевого набора точек. Подробнее... |
|
| void | setSearchMethodTarget (const KdTreePtr &tree, bool force_no_recompute=false) |
| Укажите указатель на объект поиска, используемый для нахождения соответствий в целевом облаке. Подробнее... |
|
| KdTreePtr | getSearchMethodTarget () const |
| Получить указатель на метод поиска, используемый для нахождения соответствий в целевом облаке. Подробнее... |
|
| void | setSearchMethodSource (const KdTreeReciprocalPtr &tree, bool force_no_recompute=false) |
| Укажите указатель на объект поиска, используемый для нахождения соответствий в исходном облаке (обычно используется для поиска взаимного соответствия). Подробнее... |
|
| KdTreeReciprocalPtr | getSearchMethodSource () const |
| Получить указатель на метод поиска, используемый для нахождения соответствий в исходном облаке. Подробнее... |
|
| Matrix4 | getFinalTransformation () |
| Получить итоговую матрицу преобразования, оцененную методом регистрации. Подробнее... |
|
| Matrix4 | getLastIncrementalTransformation () |
| Получить последнюю матрицу инкрементального преобразования, оцененную методом регистрации. Подробнее... |
|
| void | setMaximumIterations (int nr_iterations) |
| Установите максимальное количество итераций, которое должно выполняться внутренней оптимизацией. Подробнее... |
|
| int | getMaximumIterations () |
| Получить максимальное количество итераций, которое должна выполнить внутренняя оптимизация, заданное пользователем. Подробнее... |
|
| void | setRANSACIterations (int ransac_iterations) |
| Установить количество итераций, которое должно выполнить RANSAC. Подробнее... |
|
| double | getRANSACIterations () |
| Получить количество итераций, которое должен выполнить RANSAC, заданное пользователем. Подробнее... |
|
| void | setRANSACOutlierRejectionThreshold (double inlier_threshold) |
| Установите порог расстояния до внутренних точек для внутреннего цикла исключения выбросов RANSAC. Подробнее... |
|
| double | getRANSACOutlierRejectionThreshold () |
| Получить порог расстояния до внутренних точек для внутреннего цикла исключения выбросов, заданный пользователем. Подробнее... |
|
| void | setMaxCorrespondenceDistance (double distance_threshold) |
| Установить максимальный порог расстояния между двумя соответствующими точками в источнике <-> целевом. Подробнее... |
|
| double | getMaxCorrespondenceDistance () |
| Получить максимальный порог расстояния между двумя соответствующими точками в источнике <-> целевом. Подробнее... |
|
| void | setTransformationEpsilon (double epsilon) |
| Установить эпсилон преобразования (максимальное допустимое различие в квадрате смещения между двумя последовательными преобразованиями) для того, чтобы оптимизация считалась сошедшейся к окончательному решению. Подробнее... |
|
| double | getTransformationEpsilon () |
| Получить эпсилон преобразования (максимальное допустимое различие в квадрате смещения между двумя последовательными преобразованиями), заданный пользователем. Подробнее... |
|
| void | setTransformationRotationEpsilon (double epsilon) |
| Установить эпсилон вращения преобразования (максимальное допустимое различие в вращении между двумя последовательными преобразованиями) для того, чтобы оптимизация считалась сошедшейся к окончательному решению. Подробнее... |
|
| double | getTransformationRotationEpsilon () |
| Получить эпсилон вращения преобразования (максимальное допустимое различие между двумя последовательными преобразованиями), заданный пользователем (эпсилон - косинус угла в представлении оси-угла). Подробнее... |
|
| void | setEuclideanFitnessEpsilon (double epsilon) |
| Установить максимальную допустимую евклидову ошибку между двумя последовательными шагами в цикле ICP, прежде чем алгоритм будет считаться сошедшимся. Подробнее... |
|
| double | getEuclideanFitnessEpsilon () |
| Получить максимальную допустимую ошибку расстояния, прежде чем алгоритм будет считаться сошедшимся, заданную пользователем. Подробнее... |
|
| void | setPointRepresentation (const PointRepresentationConstPtr &point_representation) |
| Предоставьте boost shared указатель на PointRepresentation для использования при сравнении точек. Подробнее... |
|
| bool | registerVisualizationCallback (std::function< UpdateVisualizerCallbackSignature > &visualizerCallback) |
| Зарегистрируйте пользовательскую функцию обратного вызова, которая будет вызываться из потока регистрации для обновления облака точек, полученного после каждой итерации. Подробнее... |
|
| double | getFitnessScore (double max_range=std::numeric_limits< double >::max()) |
| Получение оценки пригодности Евклида (например, среднее квадратичных расстояний от источника до целевого) Подробнее... |
|
| double | getFitnessScore (const std::vector< float > &distances_a, const std::vector< float > &distances_b) |
| Получение оценки пригодности Евклида (например, среднее квадратичных расстояний от источника до целевого) из двух наборов расстояний соответствия (расстояния между точками источника и цели) Подробнее... |
|
| bool | hasConverged () const |
| Возвращает состояние сходимости после последнего запуска выравнивания. Подробнее... |
|
| void | align (PointCloudSource &output) |
| Вызов алгоритма регистрации, который оценивает преобразование и возвращает преобразованный источник (вход) как output. Подробнее... |
|
| void | align (PointCloudSource &output, const Matrix4 &guess) |
| Вызов алгоритма регистрации, который оценивает преобразование и возвращает преобразованный источник (вход) как output. Подробнее... |
|
| const std::string & | getClassName () const |
| Метод получения имени абстрактного класса. Подробнее... |
|
| bool | initCompute () |
| Инициализация внутренней вычисления. Подробнее... |
|
| bool | initComputeReciprocal () |
| Внутренние вычисления, когда требуется взаимный поиск. Подробнее... |
|
| void | addCorrespondenceRejector (const CorrespondenceRejectorPtr &rejector) |
| Добавить новый отбрасыватель соответствия в список. Подробнее... |
|
| std::vector< CorrespondenceRejectorPtr > | getCorrespondenceRejectors () |
| Получить список отбрасывателей соответствия. Подробнее... |
|
| bool | removeCorrespondenceRejector (unsigned int i) |
| Удалить i-й отбрасыватель соответствия в списке. Подробнее... |
|
| void | clearCorrespondenceRejectors () |
| Очистить список отбрасывателей соответствия. Подробнее... |
|
|
| |
| PCLBase () | |
| Пустой конструктор. Подробнее... |
|
| PCLBase (const PCLBase &base) | |
| Конструктор копирования. Подробнее... |
|
| virtual | ~PCLBase ()=default |
| Деструктор. Подробнее... |
|
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Укажите указатель на входные данные. Подробнее... |
|
| PointCloudConstPtr const | getInputCloud () const |
| Получить указатель на входное облако точек. Подробнее... |
|
| virtual void | setIndices (const IndicesPtr &indices) |
| Укажите указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (const IndicesConstPtr &indices) |
| Укажите указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (const PointIndicesConstPtr &indices) |
| Укажите указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols) |
| Установить индексы для точек, находящихся в области интереса облака точек. Подробнее... |
|
| IndicesPtr | getIndices () |
| Получить указатель на вектор индексов. Подробнее... |
|
| IndicesConstPtr const | getIndices () const |
| Получить указатель на вектор индексов. Подробнее... |
|
| const PointSource & | operator[] (std::size_t pos) const |
| Переопределить PointCloud оператор[] для сокращения кода. Подробнее... |
|
Защищенные члены-функции | |
| int | getRandomIndex (int n) const |
| Выбрать случайный индекс от 0 до n-1. Подробнее... |
|
| void | selectSamples (const PointCloudSource &cloud, int nr_samples, pcl::Indices &sample_indices) |
| Выбрать nr_samples точек-образцов из облака, убедившись, что их парные расстояния больше, чем заданное минимальное расстояние min_sample_distance. Подробнее... |
|
| void | findSimilarFeatures (const pcl::Indices &sample_indices, std::vector< pcl::Indices > &similar_features, pcl::Indices &corresponding_indices) |
| Для каждой из точек-образцов найти список точек в целевом облаке, чьи характеристики похожи на характеристики точек-образцов. Подробнее... |
|
| void | computeTransformation (PointCloudSource &output, const Eigen::Matrix4f &guess) override |
| Метод вычисления ригидной трансформации. Подробнее... |
|
| void | getFitness (pcl::Indices &inliers, float &fitness_score) |
| Получить значение метрики качества трансформации. Вычисляются следующие метрики, основанные на final_transformation_ и corr_dist_threshold_: Подробнее... |
|
|
| |
| bool | searchForNeighbors (const PointCloudSource &cloud, int index, pcl::Indices &indices, std::vector< float > &distances) |
| Поиск ближайших соседей заданной точки. Подробнее... |
|
| virtual void | computeTransformation (PointCloudSource &output, const Matrix4 &guess)=0 |
| Абстрактный метод вычисления преобразования с начальным приближением. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен вызываться перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен вызываться после завершения фактического вычисления. Подробнее... |
|
Защищённые атрибуты | |
| FeatureCloudConstPtr | input_features_ |
| Описания признаков исходного облака точек. Подробнее... |
|
| FeatureCloudConstPtr | target_features_ |
| Описания признаков целевого облака точек. Подробнее... |
|
| int | nr_samples_ |
| Количество выборок для использования в каждой итерации. Подробнее... |
|
| int | k_correspondences_ |
| Количество соседей для использования при случайном выборе соответствия признаков. Подробнее... |
|
| FeatureKdTreePtr | feature_tree_ |
| KdTree, используемый для сравнения описаний признаков. Подробнее... |
|
| CorrespondenceRejectorPolyPtr | correspondence_rejector_poly_ |
| Полигональный корректировщик соответствий, используемый для предварительного отбрасывания. Подробнее... |
|
| float | inlier_fraction_ |
| Доля [0,1] внутренних точек, необходимых для принятия преобразования. Подробнее... |
|
| pcl::Indices | inliers_ |
| Внутренние точки итогового преобразования в виде индексов в исходном облаке. Подробнее... |
|
|
| |
| std::string | reg_name_ |
| Название метода регистрации. Подробнее... |
|
| KdTreePtr | tree_ |
| Указатель на объект пространственного поиска. Подробнее... |
|
| KdTreeReciprocalPtr | tree_reciprocal_ |
| Указатель на объект пространственного поиска источника. Подробнее... |
|
| int | nr_iterations_ |
| Количество итераций внутренней оптимизации (используется внутри). Подробнее... |
|
| int | max_iterations_ |
| Максимальное количество итераций внутренней оптимизации. Подробнее... |
|
| int | ransac_iterations_ |
| Количество итераций RANSAC. Подробнее... |
|
| PointCloudTargetConstPtr | target_ |
| Целевой набор данных входных точек облака. Подробнее... |
|
| Matrix4 | final_transformation_ |
| Матрица конечного преобразования, оценённая методом регистрации после N итераций. Подробнее... |
|
| Matrix4 | transformation_ |
| Матрица преобразования, оценённая методом регистрации. Подробнее... |
|
| Matrix4 | previous_transformation_ |
| Предыдущая матрица преобразования, оценённая методом регистрации (используется внутренне). Подробнее... |
|
| double | transformation_epsilon_ |
| Максимальное различие между двумя последовательными преобразованиями для определения сходимости (определяется пользователем). Подробнее... |
|
| double | transformation_rotation_epsilon_ |
| Максимальное различие вращения между двумя последовательными преобразованиями для определения сходимости (определяется пользователем). Подробнее... |
|
| double | euclidean_fitness_epsilon_ |
| Максимальная разрешённая евклидова ошибка между двумя последовательными шагами в цикле ICP, прежде чем алгоритм считается сошедшимся. Подробнее... |
|
| double | corr_dist_threshold_ |
| Максимальный порог расстояния между двумя соответствующими точками в источнике <-> цели. Подробнее... |
|
| double | inlier_threshold_ |
| Порог расстояния для инлиней в внутреннем цикле удаления выбросов RANSAC. Подробнее... |
|
| bool | converged_ |
| Содержит внутреннее состояние сходимости, заданное параметрами пользователя. Подробнее... |
|
| unsigned int | min_number_correspondences_ |
| Минимальное количество соответствий, необходимое алгоритму перед попыткой оценить преобразование. Подробнее... |
|
| CorrespondencesPtr | correspondences_ |
| Набор соответствий, определённых на данном шаге ICP. Подробнее... |
|
| TransformationEstimationPtr | transformation_estimation_ |
| Объект TransformationEstimation, используемый для вычисления 4x4 ригидного преобразования. Подробнее... |
|
| CorrespondenceEstimationPtr | correspondence_estimation_ |
| Объект CorrespondenceEstimation, используемый для оценки соответствий между облаком источника и облаком цели. Подробнее... |
|
| std::vector< CorrespondenceRejectorPtr > | correspondence_rejectors_ |
| Список корректоров соответствий для использования. Подробнее... |
|
| bool | target_cloud_updated_ |
| Переменная, хранящая информацию о том, есть ли новый целевой облако, что означает необходимость его повторной предварительной обработки. Подробнее... |
|
| bool | source_cloud_updated_ |
| Переменная, хранящая информацию о том, есть ли новое исходное облако, что означает необходимость его повторной предварительной обработки. Подробнее... |
|
| bool | force_no_recompute_ |
| Флаг, который, если установлен, означает, что дерево, работающее с целевым облаком, никогда не будет пересчитано. Подробнее... |
|
| bool | force_no_recompute_reciprocal_ |
| Флаг, который, если установлен, означает, что дерево, работающее с исходным облаком, никогда не будет пересчитано. Подробнее... |
|
| std::function< UpdateVisualizerCallbackSignature > | update_visualizer_ |
| Функция обратного вызова для обновления промежуточного положения исходного облака точек во время его регистрации с целевым облаком точек. Подробнее... |
|
|
| |
| PointCloudConstPtr | input_ |
| Набор входных данных облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| bool | use_indices_ |
| Устанавливается в true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, создается набор фиктивных индексов, имитирующих входной PointCloud. Подробнее... |
|
Подробное описание
шаблон<typename PointSource, typename PointTarget, typename FeatureT>
класс pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >
Класс оценки и выравнивания позы с использованием предварительной процедуры RANSAC.
Этот класс вставляет простой, но эффективный этап «предварительной фильтрации» в стандартный цикл оценки позы RANSAC, чтобы избежать проверки гипотез позы, которые, вероятно, будут неправильными. Это достигается с помощью локальных геометрических ограничений, инвариантных к позе, как это также реализовано в классе CorrespondenceRejectorPoly.
Для надежного выравнивания частичных/затемнённых моделей эта процедура оценивает ошибку соответствия, используя только внутренние точки, то есть точки, расположенные ближе, чем пороговое значение в евклидовой метрике, которое можно указать с помощью setInlierFraction().
Степень предварительной фильтрации или «жадности» алгоритма можно указать с помощью setSimilarityThreshold() в [0,1[, где значение 0 означает выключение, а 1 — максимальная фильтрация.
Если вы используете это в академической работе, пожалуйста, укажите:
A. G. Buch, D. Kraft, J.-K. Kämäräinen, H. G. Petersen and N. Krüger. Оценка позы с использованием локальной структуры, специфичной для формы и внешнего вида. Международная конференция по робототехнике и автоматизации (ICRA), 2013.
Определение в строке 75 файла sample_consensus_prerejective.h.
Документация по члену-типу
ConstPtr
| используя pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::ConstPtr = shared_ptr<const SampleConsensusPrerejective<PointSource, PointTarget, FeatureT> > |
Определение в строке 109 файла sample_consensus_prerejective.h.
CorrespondenceRejectorPoly
| используя pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::CorrespondenceRejectorPoly = pcl::registration::CorrespondenceRejectorPoly<PointSource, PointTarget> |
Определение в строке 114 файла sample_consensus_prerejective.h.
CorrespondenceRejectorPolyConstPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::CorrespondenceRejectorPolyConstPtr = typename CorrespondenceRejectorPoly::ConstPtr |
Определение в строке 117 файла sample_consensus_prerejective.h.
CorrespondenceRejectorPolyPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::CorrespondenceRejectorPolyPtr = typename CorrespondenceRejectorPoly::Ptr |
Определение в строке 116 файла sample_consensus_prerejective.h.
FeatureCloud
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::FeatureCloud = pcl::PointCloud<FeatureT> |
Определение в строке 103 файла sample_consensus_prerejective.h.
FeatureCloudConstPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::FeatureCloudConstPtr = typename FeatureCloud::ConstPtr |
Определение в строке 105 файла sample_consensus_prerejective.h.
FeatureCloudPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::FeatureCloudPtr = typename FeatureCloud::Ptr |
Определение в строке 104 файла sample_consensus_prerejective.h.
FeatureKdTreePtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::FeatureKdTreePtr = typename KdTreeFLANN<FeatureT>::Ptr |
Определение в строке 112 файла sample_consensus_prerejective.h.
Matrix4
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::Matrix4 = typename Registration<PointSource, PointTarget>::Matrix4 |
Определение в строке 77 файла sample_consensus_prerejective.h.
PointCloudSource
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::PointCloudSource = typename Registration<PointSource, PointTarget>::PointCloudSource |
Определение в строке 92 файла sample_consensus_prerejective.h.
PointCloudSourceConstPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr |
Определение в строке 95 файла sample_consensus_prerejective.h.
PointCloudSourcePtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::PointCloudSourcePtr = typename PointCloudSource::Ptr |
Определение в строке 94 файла sample_consensus_prerejective.h.
PointCloudTarget
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::PointCloudTarget = typename Registration<PointSource, PointTarget>::PointCloudTarget |
Определение в строке 97 файла sample_consensus_prerejective.h.
PointIndicesConstPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::PointIndicesConstPtr = PointIndices::ConstPtr |
Определение в строке 101 файла sample_consensus_prerejective.h.
PointIndicesPtr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::PointIndicesPtr = PointIndices::Ptr |
Определение в строке 100 файла sample_consensus_prerejective.h.
Ptr
| using pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::Ptr = shared_ptr<SampleConsensusPrerejective<PointSource, PointTarget, FeatureT> > |
Определение в строке 107 файла sample_consensus_prerejective.h.
Конструктор и Деструктор
SampleConsensusPrerejective()
| inline |
Конструктор.
Определение в строке 121 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::correspondence_rejector_poly_, pcl::Registration< PointSource, PointTarget, Scalar >::max_iterations_, pcl::Registration< PointSource, PointTarget, Scalar >::reg_name_ и pcl::Registration< PointSource, PointTarget, Scalar >::transformation_estimation_.
~SampleConsensusPrerejective()
| overridedefault |
Деструктор.
Документация по функциям-членам
computeTransformation()
| overrideprotected |
Метод вычисления жесткого преобразования.
- Параметры
-
output преобразованный входной набор точек облака с использованием найденного жесткого преобразования guess Вычисленное преобразование
Определение в строке 154 файла sample_consensus_prerejective.hpp.
Ссылки на pcl::transformPointCloud().
findSimilarFeatures()
| protected |
Для каждой из точек выборки находится список точек в целевом облаке, характеристики которых похожи на характеристики точек выборки.
Из них случайным образом выбирается одна, которая будет считаться соответствием для точки выборки.
- Параметры
-
sample_indices индексы каждой точки выборки similar_features кеш соответствий, который используется для чтения/записи уже вычисленных соответствий corresponding_indices результирующие индексы соответствующей точки каждой точки выборки в целевом облаке
Определение в строке 120 файла sample_consensus_prerejective.hpp.
getCorrespondenceRandomness()
| inline |
Получить количество соседей, используемых при выборе случайного соответствия признаков, заданного пользователем.
Определение в строке 197 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::k_correspondences_.
getFitness()
| protected |
Получение оценки качества преобразования. Вычисляются следующие метрики на основе final_transformation_ и corr_dist_threshold_:
- Точки-внутри: количество преобразованных точек, находящихся ближе, чем порог, к ближайшему соседу.
- Оценка ошибки: среднеквадратичная ошибка (MSE) для точек-внутри.
- Параметры
-
inliers индексы точек облака исходных точек-внутри fitness_score результирующая оценка качества преобразования (RMSE)
Определение в строке 307 файла sample_consensus_prerejective.hpp.
Ссылки на pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size() и pcl::transformPointCloud().
getInlierFraction()
| inline |
Получение требуемой доли точек-внутри.
- Возвращает
- требуемая доля точек-внутри в диапазоне [0,1]
Определение в строке 234 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::inlier_fraction_.
getInliers()
| inline |
Получить индексы точек-внутри исходного облака точек после конечного преобразования.
- Возвращает
- индексы точек-внутри
Определение в строке 244 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::inliers_.
getNumberOfSamples()
| inline |
Получить количество выборок, используемых на каждой итерации, заданное пользователем.
Определение в строке 178 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::nr_samples_.
getRandomIndex()
| inlineprotected |
Выбрать случайный индекс между 0 и n-1.
- Параметры
-
n число возможных индексов для выбора
Определение в строке 254 файла sample_consensus_prerejective.h.
getSimilarityThreshold()
| inline |
Получение порога схожести длин ребер объекта-отбрасывателя соответствий, основанного на полигонах.
- Возвращает
- порог схожести длин ребер
Определение в строке 216 файла sample_consensus_prerejective.h.
getSourceFeatures()
| inline |
Получить указатель на признаки облака исходных точек.
Определение в строке 148 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::input_features_.
getTargetFeatures()
| inline |
Получить указатель на признаки облака целевых точек.
Определение в строке 161 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::target_features_.
selectSamples()
| protected |
Выбрать nr_samples точек-образцов из облака, убедившись, что их парные расстояния больше пользовательского минимального расстояния, min_sample_distance.
- Параметры
-
cloud входное облако точек nr_samples количество выбираемых образцов sample_indices индексы полученных образцов
Определение в строке 77 файла sample_consensus_prerejective.hpp.
Ссылки на pcl::PointCloud< PointT >::size().
setCorrespondenceRandomness()
| inline |
Установить количество соседей для выбора случайной корреспонденции признаков.
Более высокое значение добавит случайности в сопоставление признаков.
- Параметры
-
k количество соседей для выбора случайной корреспонденции признаков.
Определение в строке 189 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::k_correspondences_.
setInlierFraction()
| inline |
Установить требуемую долю инлиеров (входного множества)
- Параметры
-
inlier_fraction необходимая доля инлиеров, должна быть в диапазоне [0,1]
Определение в строке 225 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::inlier_fraction_.
setNumberOfSamples()
| inline |
Установить количество образцов для использования в каждом итерационном цикле.
- Параметры
-
nr_samples количество образцов для использования в каждом итерационном цикле
Определение в строке 170 файла sample_consensus_prerejective.h.
Ссылки на pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::nr_samples_.
setSimilarityThreshold()
| inline |
Установите порог сходства в [0,1[ между длинами рёбер объекта отбрасывания соответствий по полигонам, где 1 соответствует точному совпадению.
- Parameters
-
similarity_threshold Порог сходства длин рёбер
Определение в строке 207 файла sample_consensus_prerejective.h.
setSourceFeatures()
| void pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::setSourceFeatures | ( | const FeatureCloudConstPtr & | features | ) |
Предоставьте указатель boost shared на описатели функций облака точек источника.
- Parameters
-
features характеристики облака точек источника
Определение в строке 48 файла sample_consensus_prerejective.hpp.
setTargetFeatures()
| void pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::setTargetFeatures | ( | const FeatureCloudConstPtr & | features | ) |
Предоставьте указатель boost shared на описатели функций облака точек цели.
- Parameters
-
features характеристики облака точек цели
Определение в строке 62 файла sample_consensus_prerejective.hpp.
Данные члена
correspondence_rejector_poly_
| protected |
Полигональный корреспондент отбрасывания, используемый для предварительной фильтрации.
Определение в строке 318 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getSimilarityThreshold(), pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::SampleConsensusPrerejective() и pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::setSimilarityThreshold().
feature_tree_
| protected |
Дерево KdTree, используемое для сравнения описателей функций.
Определение в строке 315 файла sample_consensus_prerejective.h.
inlier_fraction_
| protected |
Доля [0,1] точек-внутрителей, необходимая для принятия преобразования.
Определение в строке 322 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getInlierFraction() и pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::setInlierFraction().
inliers_
| protected |
Точки внутрителей конечного преобразования как индексы в исходный набор.
Определение в строке 325 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getInliers().
input_features_
| protected |
Описатели признаков облака исходных точек.
Определение в строке 302 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getSourceFeatures().
k_correspondences_
| protected |
Число соседей, используемых при случайном выборе соответствия признаков.
Определение в строке 312 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getCorrespondenceRandomness() и pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::setCorrespondenceRandomness().
nr_samples_
| protected |
Количество выборок, используемых на каждой итерации.
Определение в строке 308 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getNumberOfSamples() и pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::setNumberOfSamples().
target_features_
| protected |
Описатели признаков облака целевых точек.
Определение в строке 305 файла sample_consensus_prerejective.h.
Используется в pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::getTargetFeatures().
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/registration/sample_consensus_prerejective.h
- pcl/registration/impl/sample_consensus_prerejective.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_sample_consensus_prerejective.html