Spec-Zone.ru › PointCloudLibrary

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

#include </__w/1/s/cuda/sample_consensus/include/pcl/cuda/sample_consensus/sac_model.h>

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

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

using PointCloud = PointCloudAOS< Storage >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using Ptr = shared_ptr< SampleConsensusModel >
using ConstPtr = shared_ptr< const SampleConsensusModel >
using Indices = typename Storage< int >::type
using IndicesPtr = shared_ptr< typename Storage< int >::type >
using IndicesConstPtr = shared_ptr< const typename Storage< int >::type >
using Coefficients = typename Storage< float >::type
using CoefficientsPtr = shared_ptr< Coefficients >
using CoefficientsConstPtr = shared_ptr< const Coefficients >
using Hypotheses = typename Storage< float4 >::type
using Samples = typename Storage< int >::type
tr> tr>

Общедоступные функции-члены

SampleConsensusModel (const PointCloudConstPtr &cloud)
Конструктор базового класса SampleConsensusModel. Подробнее...
virtual ~SampleConsensusModel ()=default
Деструктор базового класса SampleConsensusModel. Подробнее...
virtual void getSamples (int &iterations, Indices &samples)=0
Получить набор случайных выборок данных и вернуть их в виде индексов точек. Подробнее...
virtual bool computeModelCoefficients (const Indices &samples, Coefficients &model_coefficients)=0
Проверить, могут ли заданные выборки индексов образовать допустимую модель, вычислить коэффициенты модели по этим выборкам и сохранить их в model_coefficients. Подробнее...
virtual bool generateModelHypotheses (Hypotheses &h, int max_iterations)=0
virtual bool generateModelHypotheses (Hypotheses &h, Samples &s, int max_iterations)=0
virtual bool isSampleInlier (IndicesPtr &inliers_stencil, Samples &samples, unsigned int &i)
virtual int selectWithinDistance (const Coefficients &model_coefficients, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)=0
Выбрать все точки, соответствующие заданным коэффициентам модели, в качестве внутренних точек. Подробнее...
virtual int selectWithinDistance (const Hypotheses &h, int idx, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)=0
virtual int selectWithinDistance (Hypotheses &h, int idx, float threshold, IndicesPtr &inliers_stencil, float3 &centroid)=0
virtual int countWithinDistance (const Coefficients &model_coefficients, float threshold)=0
virtual int countWithinDistance (const Hypotheses &h, int idx, float threshold)=0
int deleteIndices (const IndicesPtr &indices_stencil)
int deleteIndices (const Hypotheses &h, int idx, IndicesPtr &inliers, const IndicesPtr &inliers_delete)
virtual void setInputCloud (const PointCloudConstPtr &cloud)
Задать указатель на входной набор данных. Подробнее...
PointCloudConstPtr getInputCloud () const
Получить указатель на входной набор данных облака точек. Подробнее...
IndicesPtr getIndices () const
Получить указатель на используемый вектор индексов. Подробнее...
void setRadiusLimits (float min_radius, float max_radius)
Задать минимальное и максимальное допустимые значения радиуса модели (применимо к моделям, оценивающим радиус). Подробнее...
void getRadiusLimits (float &min_radius, float &max_radius)
Получить заданные пользователем минимальное и максимальное допустимые значения радиуса модели. Подробнее...
shared_ptr< typename Storage< float4 >::type > getNormals ()
void setNormals (shared_ptr< typename Storage< float4 >::type > normals)

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

PointCloudConstPtr input_
Умный указатель boost на массив данных облака точек. Подробнее...
shared_ptr< typename Storage< float4 >::type > normals_
IndicesPtr indices_
Указатель на вектор используемых индексов точек. Подробнее...
IndicesPtr indices_stencil_
Указатель на вектор используемых индексов точек (трафарет). Подробнее...
unsigned int nr_indices_in_stencil_
Количество оставшихся индексов в indices_stencil_ Подробнее...
float radius_min_
Минимальное и максимальное ограничения радиуса модели. Подробнее...
float radius_max_
thrust::minstd_rand rngl_
Генератор случайных чисел с линейным конгруэнтным методом. Подробнее...

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

template<template< typename > class Storage>
class pcl::cuda::SampleConsensusModel< Storage >

SampleConsensusModel представляет базовый класс модели.

Все модели консенсуса по выборке должны наследоваться от этого класса.

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

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

Coefficients

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::Coefficients = typename Storage<float>::type

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

CoefficientsConstPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::CoefficientsConstPtr = shared_ptr <const Coefficients>

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

CoefficientsPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::CoefficientsPtr = shared_ptr <Coefficients>

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

ConstPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::ConstPtr = shared_ptr<const SampleConsensusModel>

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

Hypotheses

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::Hypotheses = typename Storage<float4>::type

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

Indices

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::Indices = typename Storage<int>::type

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

IndicesConstPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::IndicesConstPtr = shared_ptr<const typename Storage<int>::type>

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

IndicesPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::IndicesPtr = shared_ptr<typename Storage<int>::type>

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

PointCloud

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::PointCloud = PointCloudAOS<Storage>

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

PointCloudConstPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::PointCloudConstPtr = typename PointCloud::ConstPtr

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

PointCloudPtr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::PointCloudPtr = typename PointCloud::Ptr

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

Ptr

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::Ptr = shared_ptr<SampleConsensusModel>

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

Samples

template<template< typename > class Storage>
using pcl::cuda::SampleConsensusModel< Storage >::Samples = typename Storage<int>::type

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

Описание конструктора и деструктора

SampleConsensusModel()

template<template< typename > class Storage>
pcl::cuda::SampleConsensusModel< Storage >::SampleConsensusModel ( const PointCloudConstPtr & cloud )
inline

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

Параметры
cloud входной набор данных облака точек

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

Ссылки: pcl::cuda::SampleConsensusModel< Storage >::setInputCloud().

~SampleConsensusModel()

template<template< typename > class Storage>
virtual pcl::cuda::SampleConsensusModel< Storage >::~SampleConsensusModel ( )
virtualdefault

Деструктор базового класса SampleConsensusModel.

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

computeModelCoefficients()

template<template< typename > class Storage>
virtual bool pcl::cuda::SampleConsensusModel< Storage >::computeModelCoefficients ( const Indices & samples,
Coefficients & model_coefficients
)
pure virtual

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

Чисто виртуальный метод.

Параметры
samples индексы точек, найденных в качестве возможных подходящих кандидатов для построения допустимой модели; хранятся на устройстве
model_coefficients вычисленные коэффициенты модели

Реализован в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

countWithinDistance() [1/2]

template<template< typename > class Storage>
virtual int pcl::cuda::SampleConsensusModel< Storage >::countWithinDistance ( const Coefficients & model_coefficients,
float threshold
)
pure virtual

Реализован в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

countWithinDistance() [2/2]

template<template< typename > class Storage>
virtual int pcl::cuda::SampleConsensusModel< Storage >::countWithinDistance ( const Hypotheses & h,
int idx,
float threshold
)
pure virtual

Реализован в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

deleteIndices() [1/2]

template<template< typename > class Storage>
int pcl::cuda::SampleConsensusModel< Storage >::deleteIndices ( const Hypotheses & h, int idx, IndicesPtr & inliers, const IndicesPtr & inliers_delete )

deleteIndices() [2/2]

template<template< typename > class Storage>
int pcl::cuda::SampleConsensusModel< Storage >::deleteIndices ( const IndicesPtr & indices_stencil )

generateModelHypotheses() [1/2]

template<template< typename > class Storage>
virtual bool pcl::cuda::SampleConsensusModel< Storage >::generateModelHypotheses ( Hypotheses & h, int max_iterations )
pure virtual

Реализован в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

generateModelHypotheses() [2/2]

template<template< typename > class Storage>
virtual bool pcl::cuda::SampleConsensusModel< Storage >::generateModelHypotheses ( Hypotheses & h,
Samples & s,
int max_iterations
)
pure virtual

Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

getIndices()

template<template< typename > class Storage>
IndicesPtr pcl::cuda::SampleConsensusModel< Storage >::getIndices ( ) const
inline

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

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

Ссылки: pcl::cuda::SampleConsensusModel< Storage >::indices_, pcl::cuda::SampleConsensusModel< Storage >::indices_stencil_ и pcl::cuda::SampleConsensusModel< Storage >::nr_indices_in_stencil_.

getInputCloud()

template<template< typename > class Storage>
PointCloudConstPtr pcl::cuda::SampleConsensusModel< Storage >::getInputCloud ( ) const
inline

Получить указатель на входной набор данных облака точек.

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

Ссылка: pcl::cuda::SampleConsensusModel< Storage >::input_.

getNormals()

template<template< typename > class Storage>
shared_ptr<typename Storage<float4>::type> pcl::cuda::SampleConsensusModel< Storage >::getNormals ( )
inline

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

Ссылка: pcl::cuda::SampleConsensusModel< Storage >::normals_.

getRadiusLimits()

template<template< typename > class Storage>
void pcl::cuda::SampleConsensusModel< Storage >::getRadiusLimits ( float & min_radius,
float & max_radius
)
inline

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

Параметры
min_radius полученный минимальный радиус модели
max_radius полученный максимальный радиус модели

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

Ссылки: pcl::cuda::SampleConsensusModel< Storage >::radius_max_ и pcl::cuda::SampleConsensusModel< Storage >::radius_min_.

getSamples()

template<template< typename > class Storage>
virtual void pcl::cuda::SampleConsensusModel< Storage >::getSamples ( int & iterations,
Indices & samples
)
pure virtual

Получить набор случайных выборок данных и вернуть их в виде индексов точек.

Чисто виртуальный метод.

Параметры
iterations внутреннее число итераций, используемое методами SAC
samples полученные выборки модели, хранящиеся на устройстве

Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

isSampleInlier()

template<template< typename > class Storage>
virtual bool pcl::cuda::SampleConsensusModel< Storage >::isSampleInlier ( IndicesPtr & inliers_stencil,
Samples & samples,
unsigned int & i
)
inlinevirtual

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

selectWithinDistance() [1/3]

template<template< typename > class Storage>
virtual int pcl::cuda::SampleConsensusModel< Storage >::selectWithinDistance ( const Coefficients & model_coefficients,
float threshold,
IndicesPtr & inliers,
IndicesPtr & inliers_stencil
)
pure virtual

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

Чисто виртуальный метод.

Параметры
model_coefficients коэффициенты модели, для которой необходимо вычислить расстояния
threshold максимально допустимый порог расстояния для определения внутренних и выбросов
inliers полученные внутренние точки модели
inliers_stencil

Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

selectWithinDistance() [2/3]

template<template< typename > class Storage>
virtual int pcl::cuda::SampleConsensusModel< Storage >::selectWithinDistance ( const Hypotheses & h,
int idx,
float threshold,
IndicesPtr & inliers,
IndicesPtr & inliers_stencil
)
pure virtual

Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

selectWithinDistance() [3/3]

template<template< typename > class Storage>
virtual int pcl::cuda::SampleConsensusModel< Storage >::selectWithinDistance ( Hypotheses & h,
int idx,
float threshold,
IndicesPtr & inliers_stencil,
float3 & centroid
)
pure virtual

Реализовано в pcl::cuda::SampleConsensusModelPlane< Storage > и pcl::cuda::SampleConsensusModel1PointPlane< Storage >.

setInputCloud()

template<template< typename > class Storage>
virtual void pcl::cuda::SampleConsensusModel< Storage >::setInputCloud ( const PointCloudConstPtr & cloud )
virtual

Задаёт указатель на входной набор данных.

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

Используется в pcl::cuda::SampleConsensusModel< Storage >::SampleConsensusModel().

setNormals()

template<template< typename > class Storage>
void pcl::cuda::SampleConsensusModel< Storage >::setNormals ( shared_ptr< typename Storage< float4 >::type > normals )
inline

Определение находится на строке 342 файла sac_model.h.

Ссылки на pcl::cuda::SampleConsensusModel< Storage >::normals_.

setRadiusLimits()

template<template< typename > class Storage>
void pcl::cuda::SampleConsensusModel< Storage >::setRadiusLimits ( float min_radius,
float max_radius
)
inline

Задаёт минимально и максимально допустимые пределы радиуса для модели (применимо к моделям, оценивающим радиус).

Параметры
min_radius минимальный радиус модели
max_radius максимальный радиус модели
Задача:
изменить это так, чтобы задавались пределы для всей модели

Определение находится на строке 317 файла sac_model.h.

Ссылки на pcl::cuda::SampleConsensusModel< Storage >::radius_max_ и pcl::cuda::SampleConsensusModel< Storage >::radius_min_.

Описание данных-членов

indices_

template<template< typename > class Storage>
IndicesPtr pcl::cuda::SampleConsensusModel< Storage >::indices_
protected

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

Определение находится на строке 357 файла sac_model.h.

Используется в pcl::cuda::SampleConsensusModel< Storage >::getIndices().

indices_stencil_

template<template< typename > class Storage>
IndicesPtr pcl::cuda::SampleConsensusModel< Storage >::indices_stencil_
protected

Указатель на вектор индексов используемых точек (трафарет).

Определение находится на строке 359 файла sac_model.h.

Используется в pcl::cuda::SampleConsensusModel< Storage >::getIndices().

input_

template<template< typename > class Storage>
PointCloudConstPtr pcl::cuda::SampleConsensusModel< Storage >::input_
protected

Разделяемый указатель boost на массив данных облака точек.

Определение находится на строке 353 файла sac_model.h.

Используется в pcl::cuda::SampleConsensusModel< Storage >::getInputCloud().

normals_

template<template< typename > class Storage>
shared_ptr<typename Storage<float4>::type> pcl::cuda::SampleConsensusModel< Storage >::normals_
protected

Определение находится на строке 354 файла sac_model.h.

Используется в pcl::cuda::SampleConsensusModel< Storage >::getNormals() и pcl::cuda::SampleConsensusModel< Storage >::setNormals().

nr_indices_in_stencil_

template<template< typename > class Storage>
unsigned int pcl::cuda::SampleConsensusModel< Storage >::nr_indices_in_stencil_
защищённый

количество индексов, оставшихся в indices_stencil_

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

Используется в pcl::cuda::SampleConsensusModel< Storage >::getIndices().

radius_max_

template<template< typename > class Storage>
float pcl::cuda::SampleConsensusModel< Storage >::radius_max_
защищённый

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

Используется в pcl::cuda::SampleConsensusModel< Storage >::getRadiusLimits() и pcl::cuda::SampleConsensusModel< Storage >::setRadiusLimits().

radius_min_

template<template< typename > class Storage>
float pcl::cuda::SampleConsensusModel< Storage >::radius_min_
защищённый

Минимальный и максимальный пределы радиуса модели.

Применимо ко всем моделям, оценивающим радиус.

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

Используется в pcl::cuda::SampleConsensusModel< Storage >::getRadiusLimits() и pcl::cuda::SampleConsensusModel< Storage >::setRadiusLimits().

rngl_

template<template< typename > class Storage>
thrust::minstd_rand pcl::cuda::SampleConsensusModel< Storage >::rngl_
защищённый

Генератор псевдослучайных чисел с линейно-конгруэнтным методом.

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


Документация этого класса создана на основе следующего файла:
  • /__w/1/s/cuda/sample_consensus/include/pcl/cuda/sample_consensus/sac_model.h

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

Spec-Zone.ru

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