Spec-Zone.ru › PointCloudLibrary

SampleConsensusModelRegistration2D определяет модель для подавления выбросов при регистрации «Точка-к-точке» с использованием расстояний между 2D пикселями. Подробнее...

#include <pcl/sample_consensus/sac_model_registration_2d.h>

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

Общедоступные типы

using PointCloud = typename pcl::SampleConsensusModel< PointT >::PointCloud
using PointCloudPtr = typename pcl::SampleConsensusModel< PointT >::PointCloudPtr
using PointCloudConstPtr = typename pcl::SampleConsensusModel< PointT >::PointCloudConstPtr
using Ptr = shared_ptr< SampleConsensusModelRegistration2D< PointT > >
using ConstPtr = shared_ptr< const SampleConsensusModelRegistration2D< PointT > >
- Общедоступные типы, унаследованные от pcl::SampleConsensusModelRegistration< PointT >
using PointCloud = typename SampleConsensusModel< PointT >::PointCloud
using PointCloudPtr = typename SampleConsensusModel< PointT >::PointCloudPtr
using PointCloudConstPtr = typename SampleConsensusModel< PointT >::PointCloudConstPtr
using Ptr = shared_ptr< SampleConsensusModelRegistration< PointT > >
using ConstPtr = shared_ptr< const SampleConsensusModelRegistration< PointT > >
- Общедоступные типы, унаследованные от pcl::SampleConsensusModel< PointT >
using PointCloud = pcl::PointCloud< PointT >
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointCloudPtr = typename PointCloud::Ptr
using SearchPtr = typename pcl::search::Search< PointT >::Ptr
using Ptr = shared_ptr< SampleConsensusModel< PointT > >
using ConstPtr = shared_ptr< const SampleConsensusModel< PointT > >

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

SampleConsensusModelRegistration2D (const PointCloudConstPtr &cloud, bool random=false)
Конструктор базового класса SampleConsensusModelRegistration2D. Подробнее...
SampleConsensusModelRegistration2D (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false)
Конструктор базового класса SampleConsensusModelRegistration2D. Подробнее...
virtual ~SampleConsensusModelRegistration2D ()=default
Пустой деструктор. Подробнее...
void getDistancesToModel (const Eigen::VectorXf &model_coefficients, std::vector< double > &distances) const
Вычислить все расстояния от преобразованных точек до их соответствий. Подробнее...
void selectWithinDistance (const Eigen::VectorXf &model_coefficients, const double threshold, Indices &inliers)
Выбрать все точки, которые соответствуют заданным коэффициентам модели, как инлиеры. Подробнее...
virtual std::size_t countWithinDistance (const Eigen::VectorXf &model_coefficients, const double threshold) const
Подсчитать все точки, которые соответствуют заданным коэффициентам модели как инлиеры. Подробнее...
void setProjectionMatrix (const Eigen::Matrix3f &projection_matrix)
Установить матрицу проекции камеры. Подробнее...
Eigen::Matrix3f getProjectionMatrix () const
Получить матрицу проекции камеры. Подробнее...
- Публичные члены-функции унаследованные от pcl::SampleConsensusModelRegistration< PointT >
SampleConsensusModelRegistration (const PointCloudConstPtr &cloud, bool random=false)
Конструктор базового класса SampleConsensusModelRegistration. Подробнее...
SampleConsensusModelRegistration (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false)
Конструктор базового класса SampleConsensusModelRegistration. Подробнее...
~SampleConsensusModelRegistration () override=default
Пустой деструктор. Подробнее...
void setInputCloud (const PointCloudConstPtr &cloud) override
Предоставить указатель на входной набор данных. Подробнее...
void setInputTarget (const PointCloudConstPtr &target)
Установить целевое облако точек ввода. Подробнее...
void setInputTarget (const PointCloudConstPtr &target, const Indices &indices_tgt)
Установить целевое облако точек ввода. Подробнее...
bool computeModelCoefficients (const Indices &samples, Eigen::VectorXf &model_coefficients) const override
Вычислить матрицу жесткого преобразования 4x4 из заданных выборок. Подробнее...
void optimizeModelCoefficients (const Indices &inliers, const Eigen::VectorXf &model_coefficients, Eigen::VectorXf &optimized_coefficients) const override
Пересчитать преобразование 4x4 с использованием набора внутренних элементов. Подробнее...
void projectPoints (const Indices &, const Eigen::VectorXf &, PointCloud &, bool=true) const override
Создать новое облако точек с проекцией внутренних точек на модель. Подробнее...
bool doSamplesVerifyModel (const std::set< index_t > &, const Eigen::VectorXf &, const double) const override
Проверить, подтверждает ли подмножество индексов заданный набор коэффициентов модели. Подробнее...
pcl::SacModel getModelType () const override
Возвращает уникальный идентификатор для этой модели (SACMODEL_REGISTRATION). Подробнее...
- Public Member Functions inherited from pcl::SampleConsensusModel< PointT >
SampleConsensusModel (const PointCloudConstPtr &cloud, bool random=false)
Конструктор базового класса SampleConsensusModel. Подробнее...
SampleConsensusModel (const PointCloudConstPtr &cloud, const Indices &indices, bool random=false)
Конструктор базового класса SampleConsensusModel. Подробнее...
virtual ~SampleConsensusModel ()=default
Деструктор базового класса SampleConsensusModel. Подробнее...
virtual void getSamples (int &iterations, Indices &samples)
Получить набор случайных выборок данных и вернуть их как индексы точек. Подробнее...
PointCloudConstPtr getInputCloud () const
Получить указатель на набор входных точек. Подробнее...
void setIndices (const IndicesPtr &indices)
Указать указатель на вектор индексов, представляющий входные данные. Подробнее...
void setIndices (const Indices &indices)
Указать вектор индексов, представляющий входные данные. Подробнее...
IndicesPtr getIndices () const
Получить указатель на вектор индексов. Подробнее...
const std::string & getClassName () const
Получить строковое представление имени класса. Подробнее...
unsigned int getSampleSize () const
Возвращает размер выборки, из которой вычисляется модель. Подробнее...
unsigned int getModelSize () const
Возвращает количество коэффициентов в модели. Подробнее...
void setRadiusLimits (const double &min_radius, const double &max_radius)
Устанавливает минимальные и максимальные допустимые пределы радиуса для модели (применимо к моделям, которые оценивают радиус) Подробнее...
void getRadiusLimits (double &min_radius, double &max_radius) const
Получить минимальные и максимальные допустимые пределы радиуса для модели, установленные пользователем. Подробнее...
void setModelConstraints (std::function< bool(const Eigen::VectorXf &)> function)
Это можно использовать для наложения любых ограничений на модель, например, Подробнее...
void setSamplesMaxDist (const double &radius, SearchPtr search)
Установить максимальное расстояние, разрешенное при случайном выборе образцов. Подробнее...
void getSamplesMaxDist (double &radius) const
Получить максимальное расстояние, разрешенное при случайном выборе образцов. Подробнее...
double computeVariance (const std::vector< double > &error_sqr_dists) const
Вычислить дисперсию ошибок модели. Подробнее...
double computeVariance () const
Вычислить дисперсию ошибок модели по внутренне оценённому вектору расстояний. Подробнее...

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

bool isSampleGood (const Indices &samples) const
Проверка, является ли выборка индексов хорошей выборкой индексов точек. Подробнее...
void computeSampleDistanceThreshold (const PointCloudConstPtr &)
Вычисление оптимального порога расстояния выборки на основе основных направлений входного облака. Подробнее...
void computeSampleDistanceThreshold (const PointCloudConstPtr &, const Indices &)
Вычисление оптимального порога расстояния выборки на основе основных направлений входного облака. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::SampleConsensusModelRegistration< PointT >
void computeSampleDistanceThreshold (const PointCloudConstPtr &cloud)
Вычисление оптимального порога расстояния выборки на основе основных направлений входного облака. Подробнее...
void computeSampleDistanceThreshold (const PointCloudConstPtr &cloud, const Indices &indices)
Вычисление оптимального порога расстояния выборки на основе основных направлений входного облака. Подробнее...
void estimateRigidTransformationSVD (const pcl::PointCloud< PointT > &cloud_src, const Indices &indices_src, const pcl::PointCloud< PointT > &cloud_tgt, const Indices &indices_tgt, Eigen::VectorXf &transform) const
Определение ригидного преобразования между облаками точек источника и цели с использованием SVD, закрытого решения абсолютной ориентации с использованием единичных кватернионов. Подробнее...
void computeOriginalIndexMapping ()
Вычисление сопоставлений между исходными индексами входных/целевых облаков. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::SampleConsensusModel< PointT >
SampleConsensusModel (bool random=false)
Пустой конструктор для базового класса SampleConsensusModel. Подробнее...
void drawIndexSample (Indices &sample)
Заполняет массив выборки случайными выборками из вектора indices_. Подробнее...
void drawIndexSampleRadius (Indices &sample)
Заполняет массив выборки одной случайной выборкой из вектора indices_ и другими случайными выборками, которые находятся ближе, чем samples_radius_. Подробнее...
virtual bool isModelValid (const Eigen::VectorXf &model_coefficients) const
Проверка, является ли модель действительной с учётом пользовательских ограничений. Подробнее...
int rnd ()
Генератор псевдослучайных чисел на основе Boost. Подробнее...

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

- Защищенные атрибуты, унаследованные от pcl::SampleConsensusModelRegistration< PointT >
PointCloudConstPtr target_
Указатель boost shared на массив данных целевого облака точек. Подробнее...
IndicesPtr indices_tgt_
Указатель на вектор индексов точек целевого облака точек для использования. Подробнее...
std::map< index_t, index_t > correspondences_
Для заданного индекса в исходном облаке точек возвращает соответствующий индекс в целевом облаке точек. Подробнее...
double sample_dist_thresh_
Внутренний порог расстояния, используемый на шаге выбора выборки. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::SampleConsensusModel< PointT >
std::string model_name_
Имя модели. Подробнее...
PointCloudConstPtr input_
Указатель boost shared на массив данных облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
double radius_min_
Минимальные и максимальные радиусы для модели. Подробнее...
double radius_max_
double samples_radius_
Максимальное расстояние последующих выборок от первой (поиск по радиусу) Подробнее...
SearchPtr samples_radius_search_
Объект поиска для выбора последующих выборок с использованием поиска по радиусу. Подробнее...
Indices shuffled_indices_
Данные, содержащие перемешанную версию индексов. Подробнее...
boost::mt19937 rng_alg_
Алгоритм генератора псевдослучайных чисел на основе Boost. Подробнее...
std::shared_ptr< boost::uniform_int<> > rng_dist_
Распределение генератора псевдослучайных чисел Boost. Подробнее...
std::shared_ptr< boost::variate_generator< boost::mt19937 &, boost::uniform_int<> > > rng_gen_
Генератор псевдослучайных чисел Boost. Подробнее...
std::vector< double > error_sqr_dists_
Вектор, содержащий расстояния до вычисленной модели. Подробнее...
unsigned int sample_size_
Размер выборки, из которой вычисляется модель. Подробнее...
unsigned int model_size_
Количество коэффициентов в модели. Подробнее...
std::function< bool(const Eigen::VectorXf &)> custom_model_constraints_
Пользовательская функция, которая принимает коэффициенты модели и возвращает значение, указывающее, является ли модель приемлемой. Подробнее...
- Статические защищенные атрибуты, унаследованные от pcl::SampleConsensusModel< PointT >
static const unsigned int max_sample_checks_ = 1000
Максимальное количество выборок для проверки, пока не будет найдена подходящая. Подробнее...

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

template<typename PointT>
class pcl::SampleConsensusModelRegistration2D< PointT >

SampleConsensusModelRegistration2D определяет модель для отклонения выбросов в процессе регистрации точек-точек с использованием расстояний между 2D пикселями.

Автор
Radu B. Rusu

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

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

ConstPtr

template<typename PointT >
using pcl::SampleConsensusModelRegistration2D< PointT >::ConstPtr = shared_ptr<const SampleConsensusModelRegistration2D<PointT> >

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

PointCloud

template<typename PointT >
using pcl::SampleConsensusModelRegistration2D< PointT >::PointCloud = typename pcl::SampleConsensusModel<PointT>::PointCloud

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

PointCloudConstPtr

template<typename PointT >
using pcl::SampleConsensusModelRegistration2D< PointT >::PointCloudConstPtr = typename pcl::SampleConsensusModel<PointT>::PointCloudConstPtr

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

PointCloudPtr

template<typename PointT >
using pcl::SampleConsensusModelRegistration2D< PointT >::PointCloudPtr = typename pcl::SampleConsensusModel<PointT>::PointCloudPtr

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

Ptr

template<typename PointT >
using pcl::SampleConsensusModelRegistration2D< PointT >::Ptr = shared_ptr<SampleConsensusModelRegistration2D<PointT> >

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

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

SampleConsensusModelRegistration2D() [1/2]

template<typename PointT >
pcl::SampleConsensusModelRegistration2D< PointT >::SampleConsensusModelRegistration2D ( const PointCloudConstPtr & cloud,
bool random = false
)
inline

Конструктор базового класса SampleConsensusModelRegistration2D.

Параметры
[in] cloud входное облако точек
[in] random если true, устанавливает генератор случайных чисел по текущему времени, иначе устанавливает на 12345 (по умолчанию: false)

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

Ссылки на pcl::SampleConsensusModel< PointT >::model_name_, pcl::SampleConsensusModel< PointT >::model_size_, pcl::SampleConsensusModel< PointT >::sample_size_ и pcl::SampleConsensusModelRegistration< PointT >::setInputCloud().

SampleConsensusModelRegistration2D() [2/2]

template<typename PointT >
pcl::SampleConsensusModelRegistration2D< PointT >::SampleConsensusModelRegistration2D ( const PointCloudConstPtr & cloud,
const Indices & indices,
bool random = false
)
inline

Конструктор базового класса SampleConsensusModelRegistration2D.

Параметры
[in] cloud входное облако точек
[in] indices вектор индексов точек, которые будут использоваться из cloud
[in] random если true, устанавливает генератор случайных чисел по текущему времени, иначе устанавливает на 12345 (по умолчанию: false)

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

Ссылки на pcl::SampleConsensusModelRegistration< PointT >::computeOriginalIndexMapping(), pcl::SampleConsensusModelRegistration2D< PointT >::computeSampleDistanceThreshold(), pcl::SampleConsensusModel< PointT >::model_name_, pcl::SampleConsensusModel< PointT >::model_size_ и pcl::SampleConsensusModel< PointT >::sample_size_.

~SampleConsensusModelRegistration2D()

template<typename PointT >
virtual pcl::SampleConsensusModelRegistration2D< PointT >::~SampleConsensusModelRegistration2D ( )
virtualdefault

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

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

computeSampleDistanceThreshold() [1/2]

template<typename PointT >
void pcl::SampleConsensusModelRegistration2D< PointT >::computeSampleDistanceThreshold ( const PointCloudConstPtr & )
inlineprotected

Вычисляет "оптимальный" порог расстояния выборки, основанный на основных направлениях входного облака точек.

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

Ссылка на pcl::SampleConsensusModelRegistration2D< PointT >::SampleConsensusModelRegistration2D().

computeSampleDistanceThreshold() [2/2]

template<typename PointT >
void pcl::SampleConsensusModelRegistration2D< PointT >::computeSampleDistanceThreshold ( const PointCloudConstPtr & ,
const Indices &
)
inlineprotected

Вычисляет «оптимальный» порог расстояния выборки на основе основных направлений входного облака.

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

countWithinDistance()

template<typename PointT >
std::size_t pcl::SampleConsensusModelRegistration2D< PointT >::countWithinDistance ( const Eigen::VectorXf & model_coefficients,
const double threshold
) const
virtual

Подсчитывает все точки, которые соответствуют заданным коэффициентам модели как инлайнеры.

Параметры
[in] model_coefficients коэффициенты модели, для которой необходимо вычислить расстояния
[in] threshold максимально допустимый порог расстояния для определения инлайнеров от аутлайнеров
Возвращает
результирующее количество инлайнеров

Реализация от pcl::SampleConsensusModelRegistration< PointT >.

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

getDistancesToModel()

template<typename PointT >
void pcl::SampleConsensusModelRegistration2D< PointT >::getDistancesToModel ( const Eigen::VectorXf & model_coefficients,
std::vector< double > & distances
) const
virtual

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

Параметры
[in] model_coefficients 4x4 матрица преобразования
[out] distances результирующие оценочные расстояния

Реализация от pcl::SampleConsensusModelRegistration< PointT >.

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

getProjectionMatrix()

template<typename PointT >
Eigen::Matrix3f pcl::SampleConsensusModelRegistration2D< PointT >::getProjectionMatrix ( ) const
inline

Получить матрицу проекции камеры.

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

isSampleGood()

template<typename PointT >
bool pcl::SampleConsensusModelRegistration2D< PointT >::isSampleGood ( const Indices & samples ) const
protectedvirtual

Проверяем, является ли выборка индексов хорошей выборкой индексов точек.

Параметры
[in] samples результирующая выборка индексов

Реализация от pcl::SampleConsensusModelRegistration< PointT >.

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

selectWithinDistance()

template<typename PointT >
void pcl::SampleConsensusModelRegistration2D< PointT >::selectWithinDistance ( const Eigen::VectorXf & model_coefficients,
const double threshold,
Indices & inliers
)
virtual

Выбрать все точки, которые соответствуют заданным коэффициентам модели как инлайнеры.

Параметры
[in] model_coefficients 4x4 матрица преобразования
[in] threshold максимально допустимый порог расстояния для определения инлайнеров от аутлайнеров
[out] inliers результирующие инлайнеры модели

Реализация от pcl::SampleConsensusModelRegistration< PointT >.

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

Ссылки на pcl::geometry::distance().

setProjectionMatrix()

template<typename PointT >
void pcl::SampleConsensusModelRegistration2D< PointT >::setProjectionMatrix ( const Eigen::Matrix3f & projection_matrix )
inline

Установить матрицу проекции камеры.

Параметры
[in] projection_matrix матрица проекции камеры

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

Используется в pcl::registration::CorrespondenceRejectorSampleConsensus2D< PointT >::getRemainingCorrespondences().


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

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

Spec-Zone.ru

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