Registration представляет базовый класс регистрации для методов общего назначения, похожих на ICP. Подробнее...
#include <pcl/registration/registration.h>
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Публичные функции-члены | |
| 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 () |
| Получить эпсилон вращения преобразования (максимальное допустимое различие между двумя последовательными преобразованиями), заданный пользователем (эпсилон - это cos(угол) в представлении ось-угол). Подробнее... |
|
| 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 |
| Возвращает состояние сходимости после последнего запуска align. Подробнее... |
|
| 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[] для сокращения кода. Подробнее... |
|
Защищенные члены-функции | |
| 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 () |
| Этот метод должен вызываться после завершения фактического вычисления. Подробнее... |
|
Защищённые атрибуты | |
| 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 Scalar = float>
класс pcl::Registration< PointSource, PointTarget, Scalar >
Registration представляет базовый класс регистрации для методов общего назначения, похожих на ICP.
Определение в строке 57 файла registration.h.
Документация по typedef членам
ConstPtr
| использование pcl::Registration< PointSource, PointTarget, Scalar >::ConstPtr = shared_ptr<const Registration<PointSource, PointTarget, Scalar> > |
Определение в строке 67 файла registration.h.
CorrespondenceEstimation
| using pcl::Registration< PointSource, PointTarget, Scalar >::CorrespondenceEstimation = pcl::registration::CorrespondenceEstimationBase<PointSource, PointTarget, Scalar> |
Definition at line 91 of file registration.h.
CorrespondenceEstimationConstPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::CorrespondenceEstimationConstPtr = typename CorrespondenceEstimation::ConstPtr |
Definition at line 94 of file registration.h.
CorrespondenceEstimationPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::CorrespondenceEstimationPtr = typename CorrespondenceEstimation::Ptr |
Definition at line 93 of file registration.h.
CorrespondenceRejectorPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::CorrespondenceRejectorPtr = pcl::registration::CorrespondenceRejector::Ptr |
Определение в строке 69 файла registration.h.
KdTree
| using pcl::Registration< PointSource, PointTarget, Scalar >::KdTree = pcl::search::KdTree<PointTarget> |
Определение в строке 70 файла registration.h.
KdTreePtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::KdTreePtr = typename KdTree::Ptr |
Определение в строке 71 файла registration.h.
KdTreeReciprocal
| using pcl::Registration< PointSource, PointTarget, Scalar >::KdTreeReciprocal = pcl::search::KdTree<PointSource> |
Определение в строке 73 файла registration.h.
KdTreeReciprocalPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::KdTreeReciprocalPtr = typename KdTreeReciprocal::Ptr |
Определение в строке 74 файла registration.h.
Matrix4
| using pcl::Registration< PointSource, PointTarget, Scalar >::Matrix4 = Eigen::Matrix<Scalar, 4, 4> |
Определение в строке 59 файла registration.h.
PointCloudSource
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointCloudSource = pcl::PointCloud<PointSource> |
Определение в строке 76 файла registration.h.
PointCloudSourceConstPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr |
Определение в строке 78 файла registration.h.
PointCloudSourcePtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointCloudSourcePtr = typename PointCloudSource::Ptr |
Определение в строке 77 файла registration.h.
PointCloudTarget
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointCloudTarget = pcl::PointCloud<PointTarget> |
Определение в строке 80 файла registration.h.
PointCloudTargetConstPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr |
Определение в строке 82 файла registration.h.
PointCloudTargetPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointCloudTargetPtr = typename PointCloudTarget::Ptr |
Определение в строке 81 файла registration.h.
PointRepresentationConstPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::PointRepresentationConstPtr = typename KdTree::PointRepresentationConstPtr |
Определение в строке 84 файла registration.h.
Ptr
| using pcl::Registration< PointSource, PointTarget, Scalar >::Ptr = shared_ptr<Registration<PointSource, PointTarget, Scalar> > |
Определение в строке 66 файла registration.h.
TransformationEstimation
| using pcl::Registration< PointSource, PointTarget, Scalar >::TransformationEstimation = typename pcl::registration:: TransformationEstimation<PointSource, PointTarget, Scalar> |
Определение в строке 86 файла registration.h.
TransformationEstimationConstPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::TransformationEstimationConstPtr = typename TransformationEstimation::ConstPtr |
Определение в строке 89 файла registration.h.
TransformationEstimationPtr
| using pcl::Registration< PointSource, PointTarget, Scalar >::TransformationEstimationPtr = typename TransformationEstimation::Ptr |
Определение в строке 88 файла registration.h.
UpdateVisualizerCallbackSignature
| using pcl::Registration< PointSource, PointTarget, Scalar >::UpdateVisualizerCallbackSignature = void(const pcl::PointCloud<PointSource>&, const pcl::Indices&, const pcl::PointCloud<PointTarget>&, const pcl::Indices&) |
Подпись обратного вызова для функции, обновляющей промежуточное положение облака точек источника во время его регистрации с облаком точек назначения.
- Параметры
-
[in] cloud_src - облако точек, которое будет обновлено для соответствия целевому [in] indices_src - селектор точек в cloud_src [in] cloud_tgt - облако точек, по которому будет производиться регистрация [in] indices_tgt - селектор точек в cloud_tgt
Определение в строке 103 файла registration.h.
Документация конструкторов и деструкторов
Registration()
| inline |
Пустой конструктор.
Определение в строке 109 файла registration.h.
~Registration()
| overridedefault |
Деструктор.
Документация по функциям-членам
addCorrespondenceRejector()
| inline |
Добавить новый отбрасыватель соответствий в список.
- Параметры
-
[in] rejector новый отбрасыватель соответствий для добавления
Пример кода:
CorrespondenceRejectorDistance rej; rej.setInputCloud<PointXYZ> (keypoints_src); rej.setInputTarget<PointXYZ> (keypoints_tgt); rej.setMaximumDistance (1); rej.setInputCorrespondences (all_correspondences); // or...
Определение в строке 527 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::correspondence_rejectors_.
align() [1/2]
| inline |
Вызов алгоритма регистрации, который оценивает преобразование и возвращает преобразованный исходный (входной) как output.
- Параметры
-
[out] output полученный преобразованный входной набор точек
Определение в строке 166 файла registration.hpp.
align() [2/2]
| inline |
Вызов алгоритма регистрации, который оценивает преобразование и возвращает преобразованный исходный (входной) как output.
- Параметры
-
[out] output полученный преобразованный входной набор точек [in] guess первоначальная грубая оценка преобразования
Определение в строке 173 файла registration.hpp.
Ссылки на pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), и pcl::PointCloud< PointT >::width.
clearCorrespondenceRejectors()
| inline |
Очистить список отбрасывателей соответствий.
Определение в строке 553 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::correspondence_rejectors_.
computeTransformation()
| protectedpure virtual |
Абстрактный метод вычисления преобразования с начальной оценкой.
Реализован в pcl::IterativeClosestPoint< PointXYZRGBA, PointXYZRGBA, float >, и pcl::GeneralizedIterativeClosestPoint< PointXYZRGBA, PointXYZRGBA >.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::setInputSource().
getClassName()
| inline |
Метод получения имени абстрактного класса.
Определено в строке 497 файла registration.h.
Ссылается на pcl::Registration< PointSource, PointTarget, Scalar >::reg_name_.
Используется в pcl::RegistrationVisualizer< PointSource, PointTarget, Scalar >::setRegistration().
getCorrespondenceRejectors()
| inline |
Получение списка корреспондентских отбрасывателей.
Определено в строке 534 файла registration.h.
Ссылается на pcl::Registration< PointSource, PointTarget, Scalar >::correspondence_rejectors_.
getEuclideanFitnessEpsilon()
| inline |
Получение максимальной допустимой ошибки расстояния, прежде чем алгоритм будет считаться сошедшимся, установленной пользователем.
См. setEuclideanFitnessEpsilon
Определено в строке 424 файла registration.h.
Ссылается на pcl::Registration< PointSource, PointTarget, Scalar >::euclidean_fitness_epsilon_.
getFinalTransformation()
| inline |
Получение итоговой матрицы преобразования, оценённой методом регистрации.
Определено в строке 271 файла registration.h.
Ссылается на pcl::Registration< PointSource, PointTarget, Scalar >::final_transformation_.
getFitnessScore() [1/2]
| inline |
Получение Евклидовой оценки соответствия (например, среднее квадратичных расстояний от источника до целевого объекта) из двух наборов расстояний соответствия (расстояния между точками источника и целевого объекта).
- Parameters
-
[in] distances_a первый набор расстояний между соответствиями [in] distances_b второй набор расстояний между соответствиями
Определено в строке 122 файла registration.hpp.
getFitnessScore() [2/2]
| inline |
Получение Евклидовой оценки соответствия (например, среднее квадратичных расстояний от источника до целевого объекта).
- Parameters
-
[in] max_range максимальное допустимое расстояние между точкой и её соответствием в целевом объекте (по умолчанию: double::max)
Определено в строке 134 файла registration.hpp.
Ссылается на pcl::transformPointCloud().
getInputSource()
| inline |
Получение указателя на целевой набор данных входного облака точек.
Определено в строке 201 файла registration.h.
Ссылается на pcl::PCLBase< PointSource >::input_.
getInputTarget()
| inline |
Получить указатель на входной облако точек целевого набора данных.
Определение в строке 214 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::target_.
getLastIncrementalTransformation()
| inline |
Получить последнюю матрицу инкрементного преобразования, оцененную методом регистрации.
Определение в строке 279 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::transformation_.
getMaxCorrespondenceDistance()
| inline |
Получить максимальный порог расстояния между двумя соответствующими точками в исходном и целевом облаках.
Если расстояние больше этого порога, точки будут игнорироваться в процессе выравнивания.
Определение в строке 358 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::corr_dist_threshold_.
getMaximumIterations()
| inline |
Получить максимальное количество итераций, которое должна выполнить внутренняя оптимизация, установленное пользователем.
Определение в строке 297 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::max_iterations_.
getRANSACIterations()
| inline |
Получить количество итераций, которое RANSAC должен выполнить, установленное пользователем.
Определение в строке 313 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::ransac_iterations_.
getRANSACOutlierRejectionThreshold()
| inline |
Получить порог расстояния для внутренних точек для цикла удаления выбросов RANSAC, установленный пользователем.
Определение в строке 336 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::inlier_threshold_.
getSearchMethodSource()
| inline |
Получить указатель на метод поиска, используемый для поиска соответствий в облаке исходных точек.
Определение в строке 263 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::tree_reciprocal_.
getSearchMethodTarget()
| inline |
Получить указатель на метод поиска, используемый для поиска соответствий в облаке целевых точек.
Определение в строке 238 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::tree_.
getTransformationEpsilon()
| inline |
Получить значение эпсилон преобразования (максимальное разрешённое квадратичное различие в смещении между двумя последовательными преобразованиями), заданное пользователем.
Определение в строке 379 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::transformation_epsilon_.
getTransformationRotationEpsilon()
| inline |
Получить значение эпсилон вращения преобразования (максимальное разрешённое различие между двумя последовательными преобразованиями), заданное пользователем (эпсилон — это cos(угла) в представлении оси-угла).
Определение в строке 402 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::transformation_rotation_epsilon_.
hasConverged()
| inline |
Возвращает состояние сходимости после последнего выполнения выравнивания.
Определение в строке 475 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::converged_.
initCompute()
| bool pcl::Registration< PointSource, PointTarget, Scalar >::initCompute |
Инициализация внутренней вычислительной операции.
Определение в строке 75 файла registration.hpp.
initComputeReciprocal()
| bool pcl::Registration< PointSource, PointTarget, Scalar >::initComputeReciprocal |
Внутренняя вычислительная операция, когда требуется обратный поиск.
Определение в строке 105 файла registration.hpp.
registerVisualizationCallback()
| inline |
Регистрация пользовательской функции обратного вызова, которая будет вызываться из потока регистрации для обновления облака точек, полученного после каждой итерации.
- Параметры
-
[in] visualizerCallback ссылка на пользовательскую функцию обратного вызова
Определение в строке 444 файла registration.h.
Ссылки на pcl::PCLBase< PointSource >::input_, pcl::Registration< PointSource, PointTarget, Scalar >::target_ и pcl::Registration< PointSource, PointTarget, Scalar >::update_visualizer_.
Используется в pcl::RegistrationVisualizer< PointSource, PointTarget, Scalar >::setRegistration().
removeCorrespondenceRejector()
| inline |
Удаление i-го отбрасывателя соответствий из списка.
- Параметры
-
[in] i позиция отбрасывателя соответствий в списке для удаления
Определение в строке 543 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::correspondence_rejectors_.
searchForNeighbors()
| inlineprotected |
Поиск ближайшего соседа заданной точки.
- Параметры
-
cloud облако точек для поиска ближайшего соседа index индекс точки запроса indices результирующий вектор индексов, представляющий k ближайших соседей distances результирующие расстояния от точки запроса до k ближайших соседей
Определение в строке 675 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::tree_.
setCorrespondenceEstimation()
| inline |
Укажите указатель на объект оценки соответствия.
(например, регулярный, взаимный, по нормалям и т.д.)
- Параметры
-
[in] ce указатель на объект оценки соответствия
Пример кода:
CorrespondenceEstimation<PointXYZ, PointXYZ>::Ptr ce (new CorrespondenceEstimation<PointXYZ, PointXYZ>); ce->setInputSource (source); ce->setInputTarget (target); icp.setCorrespondenceEstimation (ce); // or... CorrespondenceEstimationNormalShooting<PointNormal, PointNormal, PointNormal>::Ptr cens (new CorrespondenceEstimationNormalShooting<PointNormal, PointNormal>); ce->setInputSource (source); ce->setInputTarget (target); ce->setSourceNormals (source); ce->setTargetNormals (target); icp.setCorrespondenceEstimation (cens); pcl::registration::CorrespondenceEstimationBase::Ptrshared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > > PtrDefinition: correspondence_estimation.h:63 pcl::registration::CorrespondenceEstimationBase::Ptr shared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > > Ptr Definition: correspondence_estimation.h:63
Определение в строке 186 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::correspondence_estimation_.
setEuclideanFitnessEpsilon()
| inline |
Установите максимальную допустимую эвклидову ошибку между двумя последовательными шагами в цикле ICP, прежде чем алгоритм будет считаться сошедшимся.
Ошибка оценивается как сумма разностей между соответствиями в эвклидовом смысле, деленная на количество соответствий.
- Параметры
-
[in] epsilon максимально допустимая ошибка расстояния, прежде чем алгоритм будет считаться сошедшимся
Определение в строке 414 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::euclidean_fitness_epsilon_.
setInputSource()
| inlinevirtual |
Укажите указатель на входной источник (например, облако точек, которое мы хотим выровнять с целевым).
- Параметры
-
[in] cloud входное облако точек источника
setInputTarget()
| inlinevirtual |
Укажите указатель на входную цель (например, облако точек, к которому мы хотим выровнять входной источник).
- Параметры
-
[in] cloud входное облако точек целевого
setMaxCorrespondenceDistance()
| inline |
Установите максимальное пороговое значение расстояния между двумя соответствующими точками в источнике <-> целевом.
Если расстояние больше этого порога, точки будут игнорироваться в процессе выравнивания.
- Parameters
-
[in] distance_threshold максимальное пороговое значение расстояния между точкой и ее ближайшим соответствующим соседом для того, чтобы она учитывалась в процессе выравнивания
Определение в строке 348 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::corr_dist_threshold_.
setMaximumIterations()
| inline |
Установите максимальное количество итераций, которое должна выполнять внутренняя оптимизация.
- Parameters
-
[in] nr_iterations максимальное количество итераций, которое должна выполнять внутренняя оптимизация
Определение в строке 289 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::max_iterations_.
setPointRepresentation()
| inline |
Укажите boost shared pointer на PointRepresentation для использования при сравнении точек.
- Parameters
-
[in] point_representation PointRepresentation для использования деревом k-D
Определение в строке 434 файла registration.h.
setRANSACIterations()
| inline |
Установите количество итераций, которое должно выполнить RANSAC.
- Parameters
-
[in] ransac_iterations количество итераций, которое должно выполнить RANSAC
Определение в строке 306 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::ransac_iterations_.
setRANSACOutlierRejectionThreshold()
| inline |
Установите пороговое значение расстояния для инлайнеров для внутреннего цикла RANSAC по отклонению выбросов.
Метод рассматривает точку как инлайнер, если расстояние между индексом целевых данных и индексом преобразованного источника меньше заданного порогового значения расстояния для инлайнеров. По умолчанию значение равно 0,05 м.
- Parameters
-
[in] inlier_threshold пороговое значение расстояния для инлайнеров для внутреннего цикла RANSAC по отклонению выбросов
Определение в строке 328 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::inlier_threshold_.
setSearchMethodSource()
| inline |
Укажите указатель на объект поиска, используемый для нахождения соответствий в облаке исходных точек (обычно используется для поиска взаимных соответствий).
- Parameters
-
[in] tree указатель на объект пространственного поиска. [in] force_no_recompute Если установлено в true, этот дерево НИКОГДА не будет пересчитан, независимо от вызовов setInputSource. Используйте только в том случае, если вы уверены, что дерево будет установлено правильно.
Определение в строке 251 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::force_no_recompute_reciprocal_, pcl::Registration< PointSource, PointTarget, Scalar >::source_cloud_updated_ и pcl::Registration< PointSource, PointTarget, Scalar >::tree_reciprocal_.
setSearchMethodTarget()
| inline |
Укажите указатель на объект поиска, используемый для нахождения соответствий в целевом облаке точек.
- Parameters
-
[in] tree указатель на объект пространственного поиска. [in] force_no_recompute Если установлено в true, это дерево НИКОГДА не будет пересчитано, независимо от вызовов setInputTarget. Используйте только в том случае, если вы уверены, что дерево будет установлено правильно.
Определение в строке 227 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::force_no_recompute_, pcl::Registration< PointSource, PointTarget, Scalar >::target_cloud_updated_ и pcl::Registration< PointSource, PointTarget, Scalar >::tree_.
setTransformationEpsilon()
| inline |
Установите значение эпсилон преобразования (максимальное допустимое значение квадрата разницы смещений между двумя последовательными преобразованиями), для того чтобы оптимизация считалась сошедшей к окончательному решению.
- Parameters
-
[in] epsilon значение эпсилон преобразования для того, чтобы оптимизация считалась сошедшей к окончательному решению.
Определение в строке 370 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::transformation_epsilon_.
setTransformationEstimation()
| inline |
Укажите указатель на объект оценки преобразования.
(например, SVD, точка до плоскости и т. д.)
- Parameters
-
[in] te указатель на соответствующий объект оценки преобразования
Пример кода:
TransformationEstimationPointToPlaneLLS<PointXYZ, PointXYZ>::Ptr trans_lls (new TransformationEstimationPointToPlaneLLS<PointXYZ, PointXYZ>); icp.setTransformationEstimation (trans_lls); // or... TransformationEstimationSVD<PointXYZ, PointXYZ>::Ptr trans_svd (new TransformationEstimationSVD<PointXYZ, PointXYZ>); icp.setTransformationEstimation (trans_svd);
Определение в строке 157 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::transformation_estimation_.
setTransformationRotationEpsilon()
| inline |
Установите значение эпсилон вращения преобразования (максимальное допустимое различие вращения между двумя последовательными преобразованиями) для того, чтобы оптимизация считалась сошедшей к окончательному решению.
- Parameters
-
[in] epsilon значение эпсилон вращения преобразования для того, чтобы оптимизация считалась сошедшей к окончательному решению (эпсилон — это cos(угол) в представлении оси-угла).
Определение в строке 392 файла registration.h.
Ссылки на pcl::Registration< PointSource, PointTarget, Scalar >::transformation_rotation_epsilon_.
Документация по данным члена
converged_
| protected |
Содержит внутреннее состояние сходимости, заданное пользовательскими параметрами.
Определение в строке 625 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::hasConverged().
corr_dist_threshold_
| protected |
Максимальное пороговое значение расстояния между двумя соответствующими точками в источнике <-> целевом.
Если расстояние больше этого порога, точки игнорируются в процессе выравнивания.
Определение в строке 615 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getMaxCorrespondenceDistance(), pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >::SampleConsensusInitialAlignment() и pcl::Registration< PointSource, PointTarget, Scalar >::setMaxCorrespondenceDistance().
correspondence_estimation_
| protected |
Объект CorrespondenceEstimation, используемый для оценки соответствий между облаком источника и облаком цели.
Определение в строке 641 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::setCorrespondenceEstimation().
correspondence_rejectors_
| protected |
Список корреспондентских отбрасывателей для использования.
Определение в строке 644 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::addCorrespondenceRejector(), pcl::Registration< PointSource, PointTarget, Scalar >::clearCorrespondenceRejectors(), pcl::Registration< PointSource, PointTarget, Scalar >::getCorrespondenceRejectors() и pcl::Registration< PointSource, PointTarget, Scalar >::removeCorrespondenceRejector().
correspondences_
| protected |
Набор соответствий, определенных на данном шаге ICP.
Определение в строке 633 файла registration.h.
euclidean_fitness_epsilon_
| protected |
Максимальная разрешенная ошибка Евклида между двумя последовательными шагами в цикле ICP, прежде чем алгоритм считается сошедшимся.
Ошибка оценивается как сумма разностей между соответствиями в евклидовом смысле, деленная на количество соответствий.
Определение в строке 609 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getEuclideanFitnessEpsilon() и pcl::Registration< PointSource, PointTarget, Scalar >::setEuclideanFitnessEpsilon().
final_transformation_
| protected |
Конечная матрица преобразования, оцененная методом регистрации после N итераций.
Определение в строке 585 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getFinalTransformation().
force_no_recompute_
| protected |
Флаг, который, если установлен, означает, что дерево, работающее с облаком целевых точек, никогда не будет пересчитано.
Определение в строке 656 файла registration.h.
Ссылка на pcl::Registration< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
force_no_recompute_reciprocal_
| protected |
Флаг, который, если установлен, означает, что дерево, работающее с исходным облаком, никогда не будет пересчитано.
Определение в строке 660 файла registration.h.
Ссылка на pcl::Registration< PointSource, PointTarget, Scalar >::setSearchMethodSource().
inlier_threshold_
| protected |
Пороговое значение расстояния до констант для внутреннего цикла удаления выбросов RANSAC.
Метод рассматривает точку как константу, если расстояние между индексом данных целевой точки и индексом преобразованной исходной точки меньше заданного порогового значения расстояния до констант. Значение по умолчанию равно 0,05.
Определение в строке 622 файла registration.h.
Ссылка на pcl::Registration< PointSource, PointTarget, Scalar >::getRANSACOutlierRejectionThreshold() и pcl::Registration< PointSource, PointTarget, Scalar >::setRANSACOutlierRejectionThreshold().
max_iterations_
| protected |
Максимальное количество итераций, которое должно выполняться внутренней оптимизацией.
Значение по умолчанию равно 10.
Определение в строке 575 файла registration.h.
Ссылка на pcl::Registration< PointSource, PointTarget, Scalar >::getMaximumIterations(), pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >::SampleConsensusInitialAlignment(), pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::SampleConsensusPrerejective() и pcl::Registration< PointSource, PointTarget, Scalar >::setMaximumIterations().
min_number_correspondences_
| protected |
Минимальное количество соответствий, необходимое алгоритму перед попыткой оценки преобразования.
Значение по умолчанию равно 3.
Определение в строке 630 файла registration.h.
nr_iterations_
| protected |
Количество итераций, выполненных внутренней оптимизацией (используется внутри).
Определение в строке 570 файла registration.h.
previous_transformation_
| protected |
Предыдущая матрица преобразования, оцененная методом регистрации (используется внутри).
Определение в строке 592 файла registration.h.
ransac_iterations_
| protected |
Количество итераций, которое должно выполняться RANSAC.
Определение в строке 578 файла registration.h.
Ссылка на pcl::Registration< PointSource, PointTarget, Scalar >::getRANSACIterations() и pcl::Registration< PointSource, PointTarget, Scalar >::setRANSACIterations().
reg_name_
| protected |
Имя метода регистрации.
Определение в строке 560 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getClassName(), pcl::NormalDistributionsTransform2D< PointSource, PointTarget >::NormalDistributionsTransform2D(), pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >::SampleConsensusInitialAlignment() и pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::SampleConsensusPrerejective().
source_cloud_updated_
| protected |
Переменная, хранящая информацию о наличии нового облака исходных точек, что означает необходимость его повторной обработки.
Таким образом, мы избегаем повторного построения взаимного kd-дерева для облака исходных точек каждый раз, когда вызывается метод determineCorrespondences ().
Определение в строке 653 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::setSearchMethodSource().
target_
| protected |
Целевое облако точек входных данных.
Определение в строке 581 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getInputTarget() и pcl::Registration< PointSource, PointTarget, Scalar >::registerVisualizationCallback().
target_cloud_updated_
| protected |
Переменная, хранящая информацию о наличии нового целевого облака, что означает необходимость его повторной обработки.
Таким образом, мы избегаем повторного построения kd-дерева для целевого облака каждый раз, когда вызывается метод determineCorrespondences ().
Определение в строке 649 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
transformation_
| protected |
Матрица преобразования, вычисленная методом регистрации.
Определение в строке 588 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getLastIncrementalTransformation().
transformation_epsilon_
| protected |
Максимальное различие между двумя последовательными преобразованиями для определения сходимости (определяется пользователем).
Определение в строке 597 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getTransformationEpsilon() и pcl::Registration< PointSource, PointTarget, Scalar >::setTransformationEpsilon().
transformation_estimation_
| protected |
Объект TransformationEstimation, используемый для расчета 4x4 матрицы жесткого преобразования.
Определение в строке 637 файла registration.h.
Используется в pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >::SampleConsensusInitialAlignment(), pcl::SampleConsensusPrerejective< PointSource, PointTarget, FeatureT >::SampleConsensusPrerejective() и pcl::Registration< PointSource, PointTarget, Scalar >::setTransformationEstimation().
transformation_rotation_epsilon_
| protected |
Максимальное различие в повороте между двумя последовательными преобразованиями для определения сходимости (определяется пользователем).
Определение в строке 602 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getTransformationRotationEpsilon() и pcl::Registration< PointSource, PointTarget, Scalar >::setTransformationRotationEpsilon().
tree_
| protected |
Указатель на объект пространственного поиска.
Определение в строке 563 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getSearchMethodTarget(), pcl::Registration< PointSource, PointTarget, Scalar >::searchForNeighbors() и pcl::Registration< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
tree_reciprocal_
| protected |
Указатель на объект пространственного поиска источника.
Определение в строке 566 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::getSearchMethodSource() и pcl::Registration< PointSource, PointTarget, Scalar >::setSearchMethodSource().
update_visualizer_
| protected |
Функция обратного вызова для обновления положения промежуточной облака точек источника во время его регистрации с облаком точек целевого.
Определение в строке 665 файла registration.h.
Используется в pcl::Registration< PointSource, PointTarget, Scalar >::registerVisualizationCallback().
Документация для данного класса была сгенерирована из следующих файлов:
- pcl/registration/registration.h
- pcl/registration/impl/registration.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_registration.html
