Spec-Zone.ru › PointCloudLibrary

ОбобщённыйИтеративныйБлижайшийТочка — это вариант ICP, реализующий алгоритм обобщённой итеративной ближайшей точки, как описано Алексом Сегалом и др. Подробнее...

#include <pcl/registration/gicp.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Вложенные классы

struct OptimizationFunctorWithIndices
Структура оптимизирующего функционала с индексами Подробнее...

Публичные типы

using PointCloudSource = pcl::PointCloud< PointSource >
using PointCloudSourcePtr = typename PointCloudSource::Ptr
using PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr
using PointCloudTarget = pcl::PointCloud< PointTarget >
using PointCloudTargetPtr = typename PointCloudTarget::Ptr
using PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr
using MatricesVector = std::vector< Eigen::Matrix3d, Eigen::aligned_allocator< Eigen::Matrix3d > >
using MatricesVectorPtr = shared_ptr< MatricesVector >
using MatricesVectorConstPtr = shared_ptr< const MatricesVector >
using InputKdTree = typename Registration< PointSource, PointTarget, Scalar >::KdTree
using InputKdTreePtr = typename Registration< PointSource, PointTarget, Scalar >::KdTreePtr
using Ptr = shared_ptr< GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar > >
using ConstPtr = shared_ptr< const GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar > >
using Vector3 = typename Eigen::Matrix< Scalar, 3, 1 >
using Vector4 = typename Eigen::Matrix< Scalar, 4, 1 >
using Vector6d = Eigen::Matrix< double, 6, 1 >
using Matrix3 = typename Eigen::Matrix< Scalar, 3, 3 >
using Matrix4 = typename IterativeClosestPoint< PointSource, PointTarget, Scalar >::Matrix4
using AngleAxis = typename Eigen::AngleAxis< Scalar >
- Public Types inherited from pcl::IterativeClosestPoint< PointSource, PointTarget, float >
using PointCloudSource = typename Registration< PointSource, PointTarget, float >::PointCloudSource
using PointCloudSourcePtr = typename PointCloudSource::Ptr
using PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr
using PointCloudTarget = typename Registration< PointSource, PointTarget, float >::PointCloudTarget
using PointCloudTargetPtr = typename PointCloudTarget::Ptr
using PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr
using Ptr = shared_ptr< IterativeClosestPoint< PointSource, PointTarget, float > >
using ConstPtr = shared_ptr< const IterativeClosestPoint< PointSource, PointTarget, float > >
using Matrix4 = typename Registration< PointSource, PointTarget, float >::Matrix4
- Public Types inherited from pcl::Registration< PointSource, PointTarget, float >
using Matrix4 = Eigen::Matrix< float, 4, 4 >
using Ptr = shared_ptr< Registration< PointSource, PointTarget, float > >
using ConstPtr = shared_ptr< const Registration< PointSource, PointTarget, float > >
using CorrespondenceRejectorPtr = pcl::registration::CorrespondenceRejector::Ptr
using KdTree = pcl::search::KdTree< PointTarget >
using KdTreePtr = typename KdTree::Ptr
using KdTreeReciprocal = pcl::search::KdTree< PointSource >
using KdTreeReciprocalPtr = typename KdTreeReciprocal::Ptr
using PointCloudSource = pcl::PointCloud< PointSource >
using PointCloudSourcePtr = typename PointCloudSource::Ptr
using PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr
using PointCloudTarget = pcl::PointCloud< PointTarget >
using PointCloudTargetPtr = typename PointCloudTarget::Ptr
using PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr
using PointRepresentationConstPtr = typename KdTree::PointRepresentationConstPtr
using TransformationEstimation = typename pcl::registration::TransformationEstimation< PointSource, PointTarget, float >
using TransformationEstimationPtr = typename TransformationEstimation::Ptr
using TransformationEstimationConstPtr = typename TransformationEstimation::ConstPtr
using CorrespondenceEstimation = pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
using CorrespondenceEstimationPtr = typename CorrespondenceEstimation::Ptr
using CorrespondenceEstimationConstPtr = typename CorrespondenceEstimation::ConstPtr
using UpdateVisualizerCallbackSignature = void(const pcl::PointCloud< PointSource > &, const pcl::Indices &, const pcl::PointCloud< PointTarget > &, const pcl::Indices &)
Подпись обратного вызова для функции, обновляющей положение промежуточной облака точек источника во время его регистрации с облаком точек целевого. Подробнее...
- Публичные типы, унаследованные от pcl::PCLBase< PointSource >
using PointCloud = pcl::PointCloud< PointSource >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr

Публичные члены-функции

GeneralizedIterativeClosestPoint ()
Конструктор по умолчанию. Подробнее...
void setInputSource (const PointCloudSourceConstPtr &cloud) override
Укажите указатель на входной набор данных. Подробнее...
void setSourceCovariances (const MatricesVectorPtr &covariances)
Укажите указатель на ковариации входного источника (если они были вычислены внешним образом!). Подробнее...
void setInputTarget (const PointCloudTargetConstPtr &target) override
Укажите указатель на входную цель (например, облако точек, к которому мы хотим выровнять входной источник) Подробнее...
void setTargetCovariances (const MatricesVectorPtr &covariances)
Укажите указатель на ковариации входной цели (если они были вычислены внешним образом!). Подробнее...
void estimateRigidTransformationBFGS (const PointCloudSource &cloud_src, const pcl::Indices &indices_src, const PointCloudTarget &cloud_tgt, const pcl::Indices &indices_tgt, Matrix4 &transformation_matrix)
Оцените жесткое преобразование вращения между исходным и целевым облаками точек, используя итерационный нелинейный подход BFGS. Подробнее...
const Eigen::Matrix3d & mahalanobis (std::size_t index) const
void computeRDerivative (const Vector6d &x, const Eigen::Matrix3d &dCost_dR_T, Vector6d &g) const
Вычисляет производную целевой функции по углам поворота. Подробнее...
void setRotationEpsilon (double epsilon)
Установить значение epsilon для поворота (максимальное допустимое различие между двумя последовательными поворотами) для того, чтобы оптимизация считалась сходящейся к окончательному решению. Подробнее...
double getRotationEpsilon () const
Получить значение epsilon для поворота (максимальное допустимое различие между двумя последовательными поворотами), установленное пользователем. Подробнее...
void setCorrespondenceRandomness (int k)
Установить количество соседей, используемых при выборе окрестности точки для вычисления ковариаций. Подробнее...
int getCorrespondenceRandomness () const
Получить количество соседей, используемых при вычислении ковариаций, установленное пользователем. Подробнее...
void setMaximumOptimizerIterations (int max)
Установить максимальное количество итераций на шаге оптимизации. Подробнее...
int getMaximumOptimizerIterations () const
Возвращает максимальное количество итераций на шаге оптимизации. Подробнее...
void setTranslationGradientTolerance (double tolerance)
Установите минимальный порог градиента перевода для ранней остановки оптимизации. Подробнее...
double getTranslationGradientTolerance () const
Возвращает минимальный порог градиента смещения для ранней остановки оптимизации. Подробнее...
void setRotationGradientTolerance (double tolerance)
Установите минимальный порог градиента поворота для ранней остановки оптимизации. Подробнее...
double getRotationGradientTolerance () const
Возвращает минимальный порог градиента поворота для ранней остановки оптимизации. Подробнее...
- Общедоступные методы, унаследованные от pcl::IterativeClosestPoint< PointSource, PointTarget, float >
IterativeClosestPoint ()
Пустой конструктор. Подробнее...
IterativeClosestPoint (const IterativeClosestPoint &)=delete
Из-за convergence_criteria_ ссылок на члены класса, сложно правильно реализовать операции копирования и перемещения. Подробнее...
IterativeClosestPoint (IterativeClosestPoint &&)=delete
IterativeClosestPoint & operator= (const IterativeClosestPoint &)=delete
IterativeClosestPoint & operator= (IterativeClosestPoint &&)=delete
~IterativeClosestPoint () override=default
Пустой деструктор. Подробнее...
pcl::registration::DefaultConvergenceCriteria< float >::Ptr getConvergeCriteria ()
Возвращает указатель на DefaultConvergenceCriteria, используемый классом IterativeClosestPoint. Подробнее...
void setInputSource (const PointCloudSourceConstPtr &cloud) override
Предоставляет указатель на входной источник (например, облако точек, которое мы хотим выровнять с целевым облаком) Подробнее...
void setInputTarget (const PointCloudTargetConstPtr &cloud) override
Предоставляет указатель на входной целевой объект (например, облако точек, к которому мы хотим выровнять входной источник) Подробнее...
void setUseReciprocalCorrespondences (bool use_reciprocal_correspondence)
Устанавливает, использовать ли взаимную корреспонденцию. Подробнее...
bool getUseReciprocalCorrespondences () const
Получить, используются ли взаимные соответствия или нет. Подробнее...
- Публичные члены-функции, унаследованные от pcl::Registration< PointSource, PointTarget, float >
Registration ()
Пустой конструктор. Подробнее...
~Registration () override=default
деструктор. Подробнее...
void setTransformationEstimation (const TransformationEstimationPtr &te)
Предоставьте указатель на объект оценки преобразования. Подробнее...
void setCorrespondenceEstimation (const CorrespondenceEstimationPtr &ce)
Предоставьте указатель на объект оценки соответствия. Подробнее...
PointCloudSourceConstPtr const getInputSource ()
Получить указатель на входной набор точек целевого набора данных. Подробнее...
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 pointer к 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 ()
Очистить список отбрасывателей соответствий. Подробнее...
- Public Member Functions inherited from pcl::PCLBase< PointSource >
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 оператор[] для сокращения кода. Подробнее...

Защищенные члены-функции

шаблон<typename PointT >
void computeCovariances (typename pcl::PointCloud< PointT >::ConstPtr cloud, const typename pcl::search::KdTree< PointT >::Ptr tree, MatricesVector &cloud_covariances)
Вычисление матриц ковариаций точек в соответствии с K ближайшими соседями. Подробнее...
double matricesInnerProd (const Eigen::MatrixXd &mat1, const Eigen::MatrixXd &mat2) const
void computeTransformation (PointCloudSource &output, const Matrix4 &guess) override
Метод вычисления ригидного преобразования с начальным приближением. Подробнее...
bool searchForNeighbors (const PointSource &query, pcl::Indices &index, std::vector< float > &distance)
Поиск ближайшего соседа заданной точки. Подробнее...
void applyState (Matrix4 &t, const Vector6d &x) const
вычисление матрицы преобразования из матрицы преобразования Подробнее...
- Защищенные члены-функции, унаследованные от pcl::IterativeClosestPoint< PointSource, PointTarget, float >
virtual void transformCloud (const PointCloudSource &input, PointCloudSource &output, const Matrix4 &transform)
Применить жесткое преобразование к заданному набору данных. Подробнее...
void computeTransformation (PointCloudSource &output, const Matrix4 &guess) override
Метод вычисления жесткого преобразования с начальным приближением. Подробнее...
virtual void determineRequiredBlobData ()
Определяет, нужно ли вызывать методы установки blob у оценщиков и отбрасывателей. Подробнее...
- Защищенные методы-члены, унаследованные от pcl::Registration< PointSource, PointTarget, float >
bool searchForNeighbors (const PointCloudSource &cloud, int index, pcl::Indices &indices, std::vector< float > &distances)
Поиск ближайшего соседа заданной точки. Подробнее...
virtual void computeTransformation (PointCloudSource &output, const Matrix4 &guess)=0
Абстрактный метод вычисления преобразования с начальным приближением. Подробнее...
- Защищенные методы-члены, унаследованные от pcl::PCLBase< PointSource >
bool initCompute ()
Этот метод должен вызываться перед началом фактического вычисления. Подробнее...
bool deinitCompute ()
Этот метод должен вызываться после завершения фактического вычисления. Подробнее...

Защищённые атрибуты

int k_correspondences_
Количество соседей, используемых для вычисления ковариаций. Подробнее...
double gicp_epsilon_
Константа epsilon для статьи по GICP; это НЕ значение толерантности сходимости, по умолчанию: 0.001. Подробнее...
double rotation_epsilon_
Константа epsilon для ошибки вращения. Подробнее...
Matrix4 base_transformation_
Базовое преобразование Подробнее...
const PointCloudSource * tmp_src_
Временный указатель на набор данных источника. Подробнее...
const PointCloudTarget * tmp_tgt_
Временный указатель на набор данных целевого объекта. Подробнее...
const pcl::Indices * tmp_idx_src_
Временный указатель на индексы набора данных источника. Подробнее...
const pcl::Indices * tmp_idx_tgt_
Временный указатель на индексы набора данных целевого объекта. Подробнее...
MatricesVectorPtr input_covariances_
Ковариации входных облаков точек. Подробнее...
MatricesVectorPtr target_covariances_
Ковариации целевых облаков точек. Подробнее...
std::vector< Eigen::Matrix3d > mahalanobis_
Хранилище матриц Махаланобиса. Подробнее...
int max_inner_iterations_
максимальное количество оптимизаций Подробнее...
double translation_gradient_tolerance_
минимальный градиент смещения для ранней остановки оптимизации Подробнее...
double rotation_gradient_tolerance_
минимальный градиент вращения для ранней остановки оптимизации Подробнее...
std::function< void(const pcl::PointCloud< PointSource > &cloud_src, const pcl::Indices &src_indices, const pcl::PointCloud< PointTarget > &cloud_tgt, const pcl::Indices &tgt_indices, Matrix4 &transformation_matrix)> rigid_transformation_estimation_
- Защищенные атрибуты, унаследованные от pcl::IterativeClosestPoint< PointSource, PointTarget, float >
std::size_t x_idx_offset_
Смещение полей XYZ. Подробнее...
std::size_t y_idx_offset_
std::size_t z_idx_offset_
std::size_t nx_idx_offset_
Смещение полей нормали. Подробнее...
std::size_t ny_idx_offset_
std::size_t nz_idx_offset_
bool use_reciprocal_correspondence_
Тип соответствия, используемый для оценки соответствия. Подробнее...
bool source_has_normals_
Внутренняя проверка, есть ли нормали в исходном наборе данных. Подробнее...
bool target_has_normals_
Внутренняя проверка, есть ли нормали в целевом наборе данных. Подробнее...
bool need_source_blob_
Проверяет, требуют ли оценщики и отбрасыватели различные данные. Подробнее...
bool need_target_blob_
- Защищённые атрибуты, унаследованные от pcl::Registration< PointSource, PointTarget, float >
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_
Функция обратного вызова для обновления положения промежуточного облака исходных точек во время его регистрации с облаком целевых точек. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLBase< PointSource >
PointCloudConstPtr input_
Набор входных точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
bool use_indices_
Устанавливается в значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, мы создаём набор фиктивных индексов, имитирующих входной PointCloud. Подробнее...

Дополнительные унаследованные члены

- Публичные атрибуты, унаследованные от pcl::IterativeClosestPoint< PointSource, PointTarget, float >
pcl::registration::DefaultConvergenceCriteria< float >::Ptr convergence_criteria_

Подробное описание

шаблон<typename PointSource, typename PointTarget, typename Scalar = float>
класс pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >

GeneralizedIterativeClosestPoint — это вариант ICP, который реализует обобщённый итеративный алгоритм ближайших точек, как описано Алексом Сегалом и др.

в http://www.robots.ox.ac.uk/~avsegal/resources/papers/Generalized_ICP.pdf Подход основан на использовании анизотропных функций стоимости для оптимизации выравнивания после того, как были назначены ближайшие точки. Исходный код использует GSL и ANN, а наш использует eigen-картированный BFGS и FLANN.

Автор
Низар Саллем

Определение в строке 58 файла gicp.h.

Документация по типам-переменным

AngleAxis

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::AngleAxis = typename Eigen::AngleAxis<Scalar>

Определение в строке 114 файла gicp.h.

ConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::ConstPtr = shared_ptr< const GeneralizedIterativeClosestPoint<PointSource, PointTarget, Scalar> >

Определение в строке 105 файла gicp.h.

InputKdTree

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::InputKdTree = typename Registration<PointSource, PointTarget, Scalar>::KdTree

Определение в строке 99 файла gicp.h.

InputKdTreePtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::InputKdTreePtr = typename Registration<PointSource, PointTarget, Scalar>::KdTreePtr

Определение в строке 100 файла gicp.h.

MatricesVector

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::MatricesVector = std::vector<Eigen::Matrix3d, Eigen::aligned_allocator<Eigen::Matrix3d> >

Определение в строке 94 файла gicp.h.

MatricesVectorConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::MatricesVectorConstPtr = shared_ptr<const MatricesVector>

Определение в строке 97 файла gicp.h.

MatricesVectorPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::MatricesVectorPtr = shared_ptr<MatricesVector>

Определение в строке 96 файла gicp.h.

Matrix3

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::Matrix3 = typename Eigen::Matrix<Scalar, 3, 3>

Определение в строке 111 файла gicp.h.

Matrix4

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::Matrix4 = typename IterativeClosestPoint<PointSource, PointTarget, Scalar>::Matrix4

Определение в строке 112 файла gicp.h.

PointCloudSource

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudSource = pcl::PointCloud<PointSource>

Определение в строке 83 файла gicp.h.

PointCloudSourceConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr

Definition at line 85 of file gicp.h.

PointCloudSourcePtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudSourcePtr = typename PointCloudSource::Ptr

Definition at line 84 of file gicp.h.

PointCloudTarget

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudTarget = pcl::PointCloud<PointTarget>

Definition at line 87 of file gicp.h.

PointCloudTargetConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr

Definition at line 89 of file gicp.h.

PointCloudTargetPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudTargetPtr = typename PointCloudTarget::Ptr

Definition at line 88 of file gicp.h.

PointIndicesConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointIndicesConstPtr = PointIndices::ConstPtr

Definition at line 92 of file gicp.h.

PointIndicesPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::PointIndicesPtr = PointIndices::Ptr

Определение в строке 91 файла gicp.h.

Ptr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::Ptr = shared_ptr<GeneralizedIterativeClosestPoint<PointSource, PointTarget, Scalar> >

Определение в строке 103 файла gicp.h.

Vector3

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::Vector3 = typename Eigen::Matrix<Scalar, 3, 1>

Определение в строке 108 файла gicp.h.

Vector4

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::Vector4 = typename Eigen::Matrix<Scalar, 4, 1>

Определение в строке 109 файла gicp.h.

Vector6d

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::Vector6d = Eigen::Matrix<double, 6, 1>

Определение в строке 110 файла gicp.h.

Конструктор и Деструктор

GeneralizedIterativeClosestPoint()

template<typename PointSource , typename PointTarget , typename Scalar = float>
pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::GeneralizedIterativeClosestPoint ( )
inline

Пустой конструктор.

Определение в строке 117 файла gicp.h.

Ссылки на pcl::Registration< PointSource, PointTarget, float >::corr_dist_threshold_, pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::estimateRigidTransformationBFGS(), pcl::Registration< PointSource, PointTarget, float >::max_iterations_, pcl::Registration< PointSource, PointTarget, float >::min_number_correspondences_, pcl::Registration< PointSource, PointTarget, float >::reg_name_, pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rigid_transformation_estimation_ и pcl::Registration< PointSource, PointTarget, float >::transformation_epsilon_.

Документация по членам функции

applyState()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::applyState ( Matrix4 & t,
const Vector6d & x
) const
protected

вычисление матрицы преобразования из матрицы преобразования

Определение в строке 560 файла gicp.hpp.

computeCovariances()

template<typename PointSource , typename PointTarget , typename Scalar >
template<typename PointT >
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::computeCovariances ( typename pcl::PointCloud< PointT >::ConstPtr cloud,
const typename pcl::search::KdTree< PointT >::Ptr tree,
MatricesVector & cloud_covariances
)
protected

Вычисляет ковариационные матрицы точек в соответствии с K ближайшими соседями.

Значение K задаётся методом setCorrespondenceRandomness().

Параметры
cloud указатель на облако точек
tree дерево KD для поиска ближайших соседей
[out] cloud_covariances ковариационные матрицы для каждой точки в облаке

Определение в строке 51 файла gicp.hpp.

Ссылается на pcl::PointCloud< PointT >::begin(), pcl::PointCloud< PointT >::end(), pcl::search::KdTree< PointT, Tree >::nearestKSearch() и pcl::PointCloud< PointT >::size().

computeRDerivative()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::computeRDerivative ( const Vector6d & x,
const Eigen::Matrix3d & dCost_dR_T,
Vector6d & g
) const

Вычисляет производную функции стоимости по углам поворота.

Матрица поворота получается из углов поворота x[3], x[4] и x[5].

Возвращает
d/d_Phi, d/d_Theta, d/d_Psi соответственно в g[3], g[4] и g[5]
Параметры
[in] x массив, представляющий 3D преобразование
[in] dCost_dR_T транспонированная производная функции стоимости по матрице поворота
[out] g вектор градиента

Определение в строке 131 файла gicp.hpp.

computeTransformation()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::computeTransformation ( PointCloudSource & output,
const Matrix4 & guess
)
inlineoverrideprotected

Метод вычисления ригидной трансформации с начальным предположением.

Параметры
output преобразованное входное облако точек, используя найденную ригидную трансформацию
guess начальное предположение о трансформации для вычисления

Определение в строке 404 файла gicp.hpp.

Ссылается на pcl::Registration< PointSource, PointTarget, float >::initComputeReciprocal().

estimateRigidTransformationBFGS()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::estimateRigidTransformationBFGS ( const PointCloudSource & cloud_src,
const pcl::Indices & indices_src,
const PointCloudTarget & cloud_tgt,
const pcl::Indices & indices_tgt,
Matrix4 & transformation_matrix
)

Оценивает ригидную трансформацию между облаками точек источника и цели, используя итерационный нелинейный подход BFGS.

Параметры
[in] cloud_src облако точек источника
[in] indices_src вектор индексов, описывающий точки интереса в cloud_src
[in] cloud_tgt облако точек цели
[in] indices_tgt вектор индексов, описывающий соответствия точек интереса из indices_src
[in,out] transformation_matrix результирующая матрица трансформации

Определение в строке 187 файла gicp.hpp.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::GeneralizedIterativeClosestPoint().

getCorrespondenceRandomness()

template<typename PointSource , typename PointTarget , typename Scalar = float>
int pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getCorrespondenceRandomness ( ) const
inline

Получить количество соседей, используемых при вычислении ковариаций, заданное пользователем.

Определение в строке 272 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::k_correspondences_.

getMaximumOptimizerIterations()

template<typename PointSource , typename PointTarget , typename Scalar = float>
int pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getMaximumOptimizerIterations ( ) const
inline

Возвращает максимальное количество итераций на шаге оптимизации.

Определение в строке 289 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::max_inner_iterations_.

getRotationEpsilon()

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getRotationEpsilon ( ) const
inline

Получить эпсилон вращения (максимальное допустимое различие между двумя последовательными вращениями), заданное пользователем.

Определение в строке 251 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rotation_epsilon_.

getRotationGradientTolerance()

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getRotationGradientTolerance ( ) const
inline

Возвращает минимальный порог градиента вращения для ранней остановки оптимизации.

Определение в строке 324 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rotation_gradient_tolerance_.

getTranslationGradientTolerance()

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getTranslationGradientTolerance ( ) const
inline

Возвращает минимальный порог градиента смещения для ранней оптимизации остановки.

Определение в строке 307 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::translation_gradient_tolerance_.

mahalanobis()

template<typename PointSource , typename PointTarget , typename Scalar = float>
const Eigen::Matrix3d& pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::mahalanobis ( std::size_t index ) const
inline
Возвращает
Матрицу расстояния Махаланобиса для данного индекса точки

Определение в строке 217 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::mahalanobis_.

matricesInnerProd()

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::matricesInnerProd ( const Eigen::MatrixXd & mat1,
const Eigen::MatrixXd & mat2
) const
inlineprotected
Возвращает
след mat1 . mat2
Параметры
mat1 матрица размерности nxm
mat2 матрица размерности mxp

Определение в строке 397 файла gicp.h.

searchForNeighbors()

template<typename PointSource , typename PointTarget , typename Scalar = float>
bool pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::searchForNeighbors ( const PointSource & query,
pcl::Indices & index,
std::vector< float > & distance
)
inlineprotected

Поиск ближайшего соседа заданной точки.

Параметры
query точка, для которой ищется ближайший сосед
index вектор размера 1 для хранения индекса найденного ближайшего соседа
distance вектор размера 1 для хранения расстояния до ближайшего найденного соседа

Определение в строке 423 файла gicp.h.

Ссылки на pcl::geometry::distance(), и pcl::Registration< PointSource, PointTarget, float >::tree_.

setCorrespondenceRandomness()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setCorrespondenceRandomness ( int k )
inline

Устанавливает количество соседей, используемых при выборе окрестности точки для вычисления ковариаций.

Более высокое значение обеспечит более точную матрицу ковариаций, но замедлит вычисление ковариаций.

Параметры
k количество соседей, используемых при вычислении ковариаций

Определение в строке 263 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::k_correspondences_.

setInputSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputSource ( const PointCloudSourceConstPtr & cloud )
inlineoverride

Предоставьте указатель на входные данные.

Параметры
cloud постоянный указатель boost shared на сообщение PointCloud

Определение в строке 145 файла gicp.h.

Ссылки на pcl::Registration< PointSource, PointTarget, float >::getClassName(), pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::input_covariances_, pcl::IterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputSource() и pcl::PointCloud< PointT >::size().

setInputTarget()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputTarget ( const PointCloudTargetConstPtr & target )
inlineoverride

Предоставьте указатель на входной целевой объект (например, облако точек, к которому мы хотим выровнять входной источник).

Параметры
[in] target целевое входное облако точек

Определение в строке 179 файла gicp.h.

Ссылки на pcl::IterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputTarget() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::target_covariances_.

setMaximumOptimizerIterations()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setMaximumOptimizerIterations ( int max )
inline

Установите максимальное количество итераций на этапе оптимизации.

Параметры
[in] max максимальное количество итераций для оптимизатора

Определение в строке 281 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::max_inner_iterations_.

setRotationEpsilon()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setRotationEpsilon ( double epsilon )
inline

Установите значение epsilon вращения (максимально допустимое различие между двумя последовательными вращениями), чтобы оптимизация считалась сходившейся к конечному решению.

Parameters
epsilon значение epsilon вращения

Определение в строке 242 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rotation_epsilon_.

setRotationGradientTolerance()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setRotationGradientTolerance ( double tolerance )
inline

Установите минимальный порог градиента вращения для ранней остановки оптимизации.

Parameters
[in] tolerance Порог градиента вращения в радианах

Определение в строке 316 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rotation_gradient_tolerance_.

setSourceCovariances()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setSourceCovariances ( const MatricesVectorPtr & covariances )
inline

Предоставьте указатель на ковариации входного источника (если они рассчитаны внешне!).

Если не установлено, GeneralizedIterativeClosestPoint вычислит ковариации самостоятельно. Убедитесь, что ковариации установлены ПОСЛЕ установки входного облака точек источника (установка входного облака точек источника сбросит ковариации).

Parameters
[in] covariances входные ковариации источника

Определение в строке 170 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::input_covariances_.

setTargetCovariances()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setTargetCovariances ( const MatricesVectorPtr & covariances )
inline

Предоставьте указатель на ковариации входного целевого объекта (если они вычисляются внешним образом!).

Если не заданы, GeneralizedIterativeClosestPoint вычислит ковариации самостоятельно. Убедитесь, что ковариации заданы ПОСЛЕ задания входного облака точек источника (задание входного облака точек источника сбросит ковариации).

Параметры
[in] covariances входные ковариации целевого объекта

Определение в строке 193 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::target_covariances_.

setTranslationGradientTolerance()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setTranslationGradientTolerance ( double tolerance )
inline

Установите минимальный порог градиента перевода для ранней остановки оптимизации.

Параметры
[in] tolerance порог градиента перевода в метрах

Определение в строке 298 файла gicp.h.

Ссылки на pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::translation_gradient_tolerance_.

Документация по данным членам

base_transformation_

template<typename PointSource , typename PointTarget , typename Scalar = float>
Matrix4 pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::base_transformation_
protected

базовое преобразование

Определение в строке 348 файла gicp.h.

gicp_epsilon_

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::gicp_epsilon_
protected

Постоянная epsilon для статьи по gicp; это НЕ значение толерантности сходимости по умолчанию: 0.001.

Определение в строке 339 файла gicp.h.

input_covariances_

template<typename PointSource , typename PointTarget , typename Scalar = float>
MatricesVectorPtr pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::input_covariances_
protected

Ковариации входных облаков точек.

Определение в строке 363 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputSource() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setSourceCovariances().

k_correspondences_

template<typename PointSource , typename PointTarget , typename Scalar = float>
int pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::k_correspondences_
protected

Количество соседей, используемых для вычисления ковариаций.

Значение по умолчанию: 20

Определение в строке 333 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getCorrespondenceRandomness() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setCorrespondenceRandomness().

mahalanobis_

template<typename PointSource , typename PointTarget , typename Scalar = float>
std::vector<Eigen::Matrix3d> pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::mahalanobis_
protected

Хранилище матриц Махаланобиса.

Определение в строке 369 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::mahalanobis().

max_inner_iterations_

template<typename PointSource , typename PointTarget , typename Scalar = float>
int pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::max_inner_iterations_
protected

Максимальное количество оптимизаций.

Определение в строке 372 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getMaximumOptimizerIterations() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setMaximumOptimizerIterations().

rigid_transformation_estimation_

template<typename PointSource , typename PointTarget , typename Scalar = float>
std::function<void(const pcl::PointCloud<PointSource>& cloud_src, const pcl::Indices& src_indices, const pcl::PointCloud<PointTarget>& cloud_tgt, const pcl::Indices& tgt_indices, Matrix4& transformation_matrix)> pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rigid_transformation_estimation_
protected

Определение в строке 459 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::GeneralizedIterativeClosestPoint().

rotation_epsilon_

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rotation_epsilon_
protected

Постоянная epsilon для ошибки вращения.

(В GICP ошибка преобразования разделена на части вращения и сдвига). По умолчанию: 2e-3

Определение в строке 345 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getRotationEpsilon() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setRotationEpsilon().

rotation_gradient_tolerance_

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::rotation_gradient_tolerance_
protected

Минимальный градиент вращения для ранней остановки оптимизации

Определение в строке 378 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getRotationGradientTolerance() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setRotationGradientTolerance().

target_covariances_

template<typename PointSource , typename PointTarget , typename Scalar = float>
MatricesVectorPtr pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::target_covariances_
protected

Ковариации точек целевого облака.

Определение в строке 366 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputTarget() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setTargetCovariances().

tmp_idx_src_

template<typename PointSource , typename PointTarget , typename Scalar = float>
const pcl::Indices* pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::tmp_idx_src_
protected

Временный указатель на индексы набора данных источника.

Определение в строке 357 файла gicp.h.

tmp_idx_tgt_

template<typename PointSource , typename PointTarget , typename Scalar = float>
const pcl::Indices* pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::tmp_idx_tgt_
protected

Временный указатель на индексы целевого набора данных.

Определение в строке 360 файла gicp.h.

tmp_src_

template<typename PointSource , typename PointTarget , typename Scalar = float>
const PointCloudSource* pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::tmp_src_
protected

Временный указатель на набор данных источника.

Определение в строке 351 файла gicp.h.

tmp_tgt_

template<typename PointSource , typename PointTarget , typename Scalar = float>
const PointCloudTarget* pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::tmp_tgt_
protected

Временный указатель на целевой набор данных.

Определение в строке 354 файла gicp.h.

translation_gradient_tolerance_

template<typename PointSource , typename PointTarget , typename Scalar = float>
double pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::translation_gradient_tolerance_
protected

минимальный градиент смещения для ранней остановки оптимизации

Определение в строке 375 файла gicp.h.

Используется в pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::getTranslationGradientTolerance() и pcl::GeneralizedIterativeClosestPoint< PointSource, PointTarget, Scalar >::setTranslationGradientTolerance().


The documentation for this class was generated from the following files:
  • pcl/registration/gicp.h
  • pcl/registration/impl/gicp.hpp

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_generalized_iterative_closest_point.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API