Spec-Zone.ru › PointCloudLibrary

CorrespondenceEstimation — простой класс для определения соответствий между целевыми и запрашиваемыми наборами точек/признаков с использованием поиска ближайших соседей. Подробнее...

#include <pcl/registration/correspondence_estimation.h>

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

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

using Ptr = shared_ptr< CorrespondenceEstimation< PointSource, PointTarget, Scalar > >
using ConstPtr = shared_ptr< const CorrespondenceEstimation< PointSource, PointTarget, Scalar > >
using KdTree = typename CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTree
using KdTreePtr = typename CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreePtr
using KdTreeConstPtr = typename CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeConstPtr
using KdTreeReciprocal = typename CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocal
using KdTreeReciprocalPtr = typename CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocalPtr
using KdTreeReciprocalConstPtr = typename CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocalConstPtr
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 PointRepresentationReciprocalConstPtr = typename KdTreeReciprocal::PointRepresentationConstPtr
- Публичные типы, унаследованные от pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
using Ptr = shared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, float > >
using ConstPtr = shared_ptr< const CorrespondenceEstimationBase< PointSource, PointTarget, float > >
using KdTree = pcl::search::KdTree< PointTarget >
using KdTreePtr = typename KdTree::Ptr
using KdTreeConstPtr = typename KdTree::ConstPtr
using KdTreeReciprocal = pcl::search::KdTree< PointSource >
using KdTreeReciprocalPtr = typename KdTreeReciprocal::Ptr
using KdTreeReciprocalConstPtr = typename KdTreeReciprocal::ConstPtr
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 PointRepresentationReciprocalConstPtr = typename KdTreeReciprocal::PointRepresentationConstPtr
- Публичные типы, унаследованные от 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

Открытые функции-члены

CorrespondenceEstimation ()
Пустой конструктор. Подробнее...
~CorrespondenceEstimation () override=default
Пустой деструктор. Подробнее...
void determineCorrespondences (pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max()) override
Определяет соответствия между входным и целевым облаками. Подробнее...
void determineReciprocalCorrespondences (pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max()) override
Определяет взаимные соответствия между входным и целевым облаками. Подробнее...
CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr clone () const override
Создает копию и приводит ее к типу CorrespondenceEstimationBase. Подробнее...
- Открытые функции-члены, унаследованные от pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
CorrespondenceEstimationBase ()
Пустой конструктор. Подробнее...
~CorrespondenceEstimationBase () override=default
Пустой деструктор. Подробнее...
void setInputSource (const PointCloudSourceConstPtr &cloud)
Передает указатель на исходные входные данные (например, облако точек, которое требуется совместить с целевым облаком). Подробнее...
PointCloudSourceConstPtr const getInputSource ()
Возвращает указатель на набор данных входного облака точек — целевое облако. Подробнее...
void setInputTarget (const PointCloudTargetConstPtr &cloud)
Передает указатель на целевые входные данные (например, облако точек, с которым требуется совместить исходное входное облако). Подробнее...
PointCloudTargetConstPtr const getInputTarget ()
Возвращает указатель на набор данных входного целевого облака точек. Подробнее...
void setNumberOfThreads (unsigned int nr_threads)
Задает количество используемых потоков. Подробнее...
virtual bool requiresSourceNormals () const
Проверяет, требуются ли этому отбраковщику нормали исходного облака. Подробнее...
virtual void setSourceNormals (pcl::PCLPointCloud2::ConstPtr)
Абстрактный метод для задания нормалей исходного облака. Подробнее...
virtual bool requiresTargetNormals () const
Проверяет, требуются ли этому отбраковщику нормали целевого облака. Подробнее...
virtual void setTargetNormals (pcl::PCLPointCloud2::ConstPtr)
Абстрактный метод для задания нормалей целевого облака. Подробнее...
void setIndicesSource (const IndicesPtr &indices)
Передает указатель на вектор индексов, представляющих исходное входное облако точек. Подробнее...
IndicesPtr const getIndicesSource ()
Возвращает указатель на вектор индексов, используемых для исходного набора данных. Подробнее...
void setIndicesTarget (const IndicesPtr &indices)
Передает указатель на вектор индексов, представляющих целевое входное облако точек. Подробнее...
IndicesPtr const getIndicesTarget ()
Возвращает указатель на вектор индексов, используемых для целевого набора данных. Подробнее...
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
Возвращает указатель на метод поиска, используемый для нахождения соответствий в исходном облаке. Подробнее...
void setPointRepresentation (const PointRepresentationConstPtr &point_representation)
Передает shared-указатель boost на PointRepresentation для целевого облака, который будет использоваться при поиске ближайших соседей. Подробнее...
void setPointRepresentationReciprocal (const PointRepresentationReciprocalConstPtr &point_representation_reciprocal)
Передает shared-указатель boost на PointRepresentation для исходного облака, который будет использоваться при поиске ближайших соседей. Подробнее...
- Открытые функции-члены, унаследованные от 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
Переопределить operator[] класса PointCloud для сокращения кода. Подробнее...

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

- Защищённые функции-члены, унаследованные от pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
const std::string & getClassName () const
Метод получения имени абстрактного класса. Подробнее...
bool initCompute ()
Инициализация внутренних вычислений. Подробнее...
bool initComputeReciprocal ()
Инициализация внутренних вычислений для взаимных соответствий. Подробнее...
- Защищённые функции-члены, унаследованные от pcl::PCLBase< PointSource >
bool initCompute ()
Этот метод следует вызвать перед началом фактических вычислений. Подробнее...
bool bool deinitCompute ()
Этот метод следует вызвать после завершения фактических вычислений. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
std::string corr_name_
Имя метода оценки соответствий. Подробнее...
KdTreePtr tree_
Указатель на объект пространственного поиска, используемый для целевого набора данных. Подробнее...
KdTreeReciprocalPtr tree_reciprocal_
Указатель на объект пространственного поиска, используемый для исходного набора данных. Подробнее...
PointCloudTargetConstPtr target_
Входной набор данных целевого облака точек. Подробнее...
IndicesPtr target_indices_
Индексы целевого набора данных облака точек. Подробнее...
PointRepresentationConstPtr point_representation_
Используемое представление целевых точек (внутреннее). Подробнее...
PointRepresentationReciprocalConstPtr point_representation_reciprocal_
Используемое представление исходных точек (внутреннее). Подробнее...
PointCloudTargetPtr input_transformed_
Преобразованный входной исходный набор данных облака точек. Подробнее...
std::vector< pcl::PCLPointField > input_fields_
Доступные типы полей входных точек. Подробнее...
bool target_cloud_updated_
Переменная, указывающая, появилось ли новое целевое облако, то есть требуется ли его повторная предварительная обработка. Подробнее...
bool source_cloud_updated_
Переменная, указывающая, появилось ли новое исходное облако, то есть требуется ли его повторная предварительная обработка. Подробнее...
bool force_no_recompute_
Флаг, который при установке запрещает повторное вычисление дерева для целевого облака. Подробнее...
bool force_no_recompute_reciprocal_
Флаг, который при установке запрещает повторное вычисление дерева для исходного облака. Подробнее...
unsigned int num_threads_
- Защищённые атрибуты, унаследованные от pcl::PCLBase< PointSource >
PointCloudConstPtr input_
Входной набор данных облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор используемых индексов точек. Подробнее...
bool use_indices_
Установите значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, создаётся набор фиктивных индексов, имитирующий входное облако точек. Подробнее...

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

template<typename PointSource, typename PointTarget, typename Scalar = float>
class pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >

CorrespondenceEstimation — простой класс для определения соответствий между целевыми и запрашиваемыми наборами точек/признаков с помощью поиска ближайших соседей.

Пример кода:

pcl::PointCloud<pcl::PointXYZRGBA>::Ptr source, target;
// ... read or fill in source and target
pcl::CorrespondenceEstimation<pcl::PointXYZ, pcl::PointXYZ> est;
est.setInputSource (source);
est.setInputTarget (target);
 
pcl::Correspondences all_correspondences;
// Determine all reciprocal correspondences
est.determineReciprocalCorrespondences (all_correspondences);
pcl::PointCloud::Ptrshared_ptr< PointCloud< PointT > > PtrDefinition: point_cloud.h:413
pcl::PointCloud::Ptr
shared_ptr< PointCloud< PointT > > Ptr
Definition: point_cloud.h:413
pcl::Correspondencesstd::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > CorrespondencesDefinition: correspondence.h:89
pcl::Correspondences
std::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > Correspondences
Definition: correspondence.h:89
Автор
Radu B. Rusu, Michael Dixon, Dirk Holz

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

Описание псевдонимов типов-членов

ConstPtr

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

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

KdTree

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::KdTree = typename CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>::KdTree

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

KdTreeConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::KdTreeConstPtr = typename CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>::KdTreeConstPtr

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

KdTreePtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::KdTreePtr = typename CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>::KdTreePtr

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

KdTreeReciprocal

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::KdTreeReciprocal = typename CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>:: KdTreeReciprocal

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

KdTreeReciprocalConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::KdTreeReciprocalConstPtr = typename CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>:: KdTreeReciprocalConstPtr

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

KdTreeReciprocalPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::KdTreeReciprocalPtr = typename CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>:: KdTreeReciprocalPtr

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

PointCloudSource

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

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

PointCloudSourceConstPtr

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

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

PointCloudSourcePtr

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

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

PointCloudTarget

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

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

PointCloudTargetConstPtr

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

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

PointCloudTargetPtr

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

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

PointRepresentationConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::PointRepresentationConstPtr = typename KdTree::PointRepresentationConstPtr

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

PointRepresentationReciprocalConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::PointRepresentationReciprocalConstPtr = typename KdTreeReciprocal::PointRepresentationConstPtr

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

Ptr

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

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

Документация конструктора и деструктора

CorrespondenceEstimation()

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

Конструктор без параметров.

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

Ссылки: pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >::corr_name_.

~CorrespondenceEstimation()

template<typename PointSource , typename PointTarget , typename Scalar = float>
pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::~CorrespondenceEstimation ( )
overridedefault

Пустой деструктор.

Документация функций-членов

clone()

template<typename PointSource , typename PointTarget , typename Scalar = float>
CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>::Ptr pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::clone ( ) const
inlineoverridevirtual

Создаёт копию и приводит тип к CorrespondenceEstimationBase.

Реализует pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >.

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

determineCorrespondences()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::determineCorrespondences ( pcl::Correspondences & correspondences,
double max_distance = std::numeric_limits<double>::max()
)
overridevirtual

Определяет соответствия между входным и целевым облаками точек.

Параметры
[out] correspondences найденные соответствия (индекс запрашиваемой точки, индекс целевой точки, расстояние)
[in] max_distance максимально допустимое расстояние между соответствиями

Реализует pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >.

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

Ссылки: pcl::geometry::distance(), pcl::Correspondence::distance, pcl::Correspondence::index_match, pcl::Correspondence::index_query и pcl::isXYZFinite().

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

determineReciprocalCorrespondences()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::determineReciprocalCorrespondences ( pcl::Correspondences & correspondences,
double max_distance = std::numeric_limits<double>::max()
)
overridevirtual

Определяет взаимные соответствия между входным и целевым облаками точек.

Соответствие считается взаимным, если Src_i соответствует Tgt_i, а Tgt_i, в свою очередь, соответствует Src_i.

Параметры
[out] correspondences найденные соответствия (индексы запрашиваемой и целевой точек, расстояние)
[in] max_distance максимально допустимое расстояние между соответствиями

Реализует pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >.

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

Ссылки: pcl::geometry::distance(), pcl::Correspondence::distance, pcl::Correspondence::index_match, pcl::Correspondence::index_query и pcl::isXYZFinite().


Документация этого класса создана на основе следующих файлов:
  • pcl/registration/correspondence_estimation.h
  • pcl/registration/impl/correspondence_estimation.hpp

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

Spec-Zone.ru

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