Spec-Zone.ru › PointCloudLibrary

Поисковая воксельная структура, содержащая среднее значение и ковариацию данных. Подробнее...

#include <pcl/filters/voxel_grid_covariance.h>

Inheritance graph
[обозначения]
Collaboration graph
[обозначения]

Классы

struct Leaf
Простая структура для хранения центроида, ковариации и количества точек в листе. Подробнее...

Открытые типы

using Ptr = shared_ptr< VoxelGrid< PointT > >
using ConstPtr = shared_ptr< const VoxelGrid< PointT > >
using LeafPtr = Leaf *
Указатель на структуру листа VoxelGridCovariance. Подробнее...
using LeafConstPtr = const Leaf *
Константный указатель на структуру листа VoxelGridCovariance. Подробнее...
- Открытые типы, унаследованные от pcl::VoxelGrid< PointT >
using Ptr = shared_ptr< VoxelGrid< PointT > >
using ConstPtr = shared_ptr< const VoxelGrid< PointT > >
- Открытые типы, унаследованные от pcl::Filter< PointT >
using Ptr = shared_ptr< Filter< PointT > >
using ConstPtr = shared_ptr< const Filter< PointT > >
using PointCloud = pcl::PointCloud< PointT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
- Открытые типы, унаследованные от pcl::PCLBase< PointT >
using PointCloud = pcl::PointCloud< PointT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr
tr>

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

VoxelGridCovariance ()
Конструктор. Подробнее...
void setMinPointPerVoxel (int min_points_per_voxel)
Задать минимальное количество точек, необходимое для использования ячейки (для вычисления ковариации требуется не менее 3 точек). Подробнее...
int getMinPointPerVoxel ()
Получить минимальное количество точек, необходимое для использования ячейки. Подробнее...
void setCovEigValueInflationRatio (double min_covar_eigvalue_mult)
Задать минимально допустимое отношение собственных значений, чтобы избежать вырожденных матриц ковариации. Подробнее...
double getCovEigValueInflationRatio ()
Получить минимально допустимое отношение собственных значений, чтобы избежать вырожденных матриц ковариации. Подробнее...
void filter (PointCloud &output, bool searchable=false)
Фильтровать облако и инициализировать структуру вокселей. Подробнее...
void filter (bool searchable=false)
Инициализировать структуру вокселей. Подробнее...
LeafConstPtr getLeaf (int index)
Получить воксель, содержащий точку p. Подробнее...
LeafConstPtr getLeaf (PointT &p)
Получить воксель, содержащий точку p. Подробнее...
LeafConstPtr getLeaf (Eigen::Vector3f &p)
Получить воксель, содержащий точку p. Подробнее...
int getNeighborhoodAtPoint (const Eigen::Matrix< int, 3, Eigen::Dynamic > &relative_coordinates, const PointT &reference_point, std::vector< LeafConstPtr > &neighbors) const
Получить воксели вокруг точки p, заданные relative_coordinates. Подробнее...
int getNeighborhoodAtPoint (const PointT &reference_point, std::vector< LeafConstPtr > &neighbors) const
Получить воксели вокруг точки p, не включая воксель, содержащий точку p. Подробнее...
int getVoxelAtPoint (const PointT &reference_point, std::vector< LeafConstPtr > &neighbors) const
Получить воксель в точке p. Подробнее...
int getFaceNeighborsAtPoint (const PointT &reference_point, std::vector< LeafConstPtr > &neighbors) const
Получить воксель в точке p и соседние с ним воксели (до 7 вокселей). Подробнее...
int getAllNeighborsAtPoint (const PointT &reference_point, std::vector< LeafConstPtr > &neighbors) const
Получить все соседние воксели в области 3x3x3 вокруг p (до 27 вокселей). Подробнее...
const std::map< std::size_t, Leaf > & getLeaves ()
Получить карту структуры листьев. Подробнее...
PointCloudPtr getCentroids ()
Получить облако точек, содержащее центроиды вокселей. Подробнее...
void getDisplayCloud (pcl::PointCloud< PointXYZ > &cell_cloud, int pnt_per_cell=1000) const
Получить облако точек для визуализации нормального распределения каждого вокселя. Подробнее...
int nearestKSearch (const PointT &point, int k, std::vector< LeafConstPtr > &k_leaves, std::vector< float > &k_sqr_distances) const
Найти k ближайших занятых вокселей для заданной точки запроса. Подробнее...
int nearestKSearch (const PointCloud &cloud, int index, int k, std::vector< LeafConstPtr > &k_leaves, std::vector< float > &k_sqr_distances) const
Найти k ближайших занятых вокселей для заданной точки запроса. Подробнее...
int radiusSearch (const PointT &point, double radius, std::vector< LeafConstPtr > &k_leaves, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const
Найти все ближайшие занятые воксели к точке запроса в заданном радиусе. Подробнее...
int radiusSearch (const PointCloud &cloud, int index, double radius, std::vector< LeafConstPtr > &k_leaves, std::vector< float > &k_sqr_distances, unsigned int max_nn=0) const
Найти все ближайшие занятые воксели к точке запроса в заданном радиусе. Подробнее...
- Открытые функции-члены, унаследованные от pcl::VoxelGrid< PointT >
PCL_MAKE_ALIGNED_OPERATOR_NEW VoxelGrid ()
Конструктор без параметров. Подробнее...
~VoxelGrid () override=default
Деструктор. Подробнее...
void setLeafSize (const Eigen::Vector4f &leaf_size)
Задать размер ячейки воксельной сетки. Подробнее...
void setLeafSize (float lx, float ly, float lz)
Задать размер ячейки воксельной сетки. Подробнее...
Eigen::Vector3f getLeafSize () const
Получить размер ячейки воксельной сетки. Подробнее...
void setDownsampleAllData (bool downsample)
Задать значение true, если требуется уменьшить выборку для всех полей, или false, если только для XYZ. Подробнее...
bool getDownsampleAllData () const
Получить состояние внутреннего параметра уменьшения выборки (true, если требуется уменьшить выборку для всех полей, false, если только для XYZ). Подробнее...
void setMinimumPointsNumberPerVoxel (unsigned int min_points_per_voxel)
Задать минимальное количество точек, необходимое для использования вокселя. Подробнее...
unsigned int getMinimumPointsNumberPerVoxel () const
Вернуть минимальное количество точек, необходимое для использования вокселя. Подробнее...
void setSaveLeafLayout (bool save_leaf_layout)
Задать значение true, если требуется сохранить информацию о расположении ячеек для последующего доступа. Подробнее...
bool getSaveLeafLayout () const
Возвращает true, если информация о расположении ячеек будет сохранена для последующего доступа. Подробнее...
Eigen::Vector3i getMinBoxCoordinates () const
Получить минимальные координаты ограничивающего параллелепипеда (после выполнения фильтрации). Подробнее...
Eigen::Vector3i getMaxBoxCoordinates () const
Получить минимальные координаты ограничивающего параллелепипеда (после выполнения фильтрации). Подробнее...
Eigen::Vector3i getNrDivisions () const
Получить количество делений вдоль всех 3 осей (после выполнения фильтрации). Подробнее...
Eigen::Vector3i getDivisionMultiplier () const
Получить множители, применяемые к координатам сетки для определения индекса центроида (после выполнения фильтрации). Подробнее...
int getCentroidIndex (const PointT &p) const
Возвращает индекс заданной точки в результирующем облаке с уменьшенной выборкой. Подробнее...
std::vector< int > getNeighborCentroidIndices (const PointT &reference_point, const Eigen::MatrixXi &relative_coordinates) const
Возвращает индексы точек с заданными координатами сетки в результирующем облаке с уменьшенной выборкой относительно координат сетки указанной точки (или -1, если ячейка пуста или находится за пределами сетки). Подробнее...
std::vector< int > getLeafLayout () const
Возвращает расположение ячеек для быстрого доступа к ячейкам относительно текущей позиции. Подробнее...
Eigen::Vector3i getGridCoordinates (float x, float y, float z) const
Возвращает соответствующие координаты (i,j,k) точки (x,y,z) в сетке. Подробнее...
int getCentroidIndexAt (const Eigen::Vector3i &ijk) const
Возвращает индекс в прореженном облаке, соответствующий заданным координатам. Подробнее...
void setFilterFieldName (const std::string &field_name)
Задает имя поля, используемого для фильтрации данных. Подробнее...
std::string const getFilterFieldName () const
Возвращает имя поля, используемого для фильтрации. Подробнее...
void setFilterLimits (const double &limit_min, const double &limit_max)
Задает пределы фильтрации поля. Подробнее...
void getFilterLimits (double &limit_min, double &limit_max) const
Возвращает заданные пользователем пределы фильтрации поля (мин./макс.). Подробнее...
void setFilterLimitsNegative (const bool limit_negative)
Установите значение true, если нужно возвращать данные за пределами интервала, заданного setFilterLimits (min, max). Подробнее...
void getFilterLimitsNegative (bool &limit_negative) const
Возвращает, следует ли возвращать данные за пределами интервала (мин./макс.) (true) или внутри него (false). Подробнее...
bool getFilterLimitsNegative () const
Возвращает, следует ли возвращать данные за пределами интервала (мин./макс.) (true) или внутри него (false). Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::Filter< PointT >
Filter (bool extract_removed_indices=false)
Конструктор без параметров. Подробнее...
IndicesConstPtr const getRemovedIndices () const
Возвращает индексы удаляемых точек. Подробнее...
void getRemovedIndices (PointIndices &pi)
Возвращает индексы удаляемых точек. Подробнее...
void filter (PointCloud &output)
Вызывает метод фильтрации и возвращает отфильтрованный набор данных в output. Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::PCLBase< PointT >
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 PointT & operator[] (std::size_t pos) const
Переопределяет оператор [] класса PointCloud, чтобы сократить код. Подробнее...

Защищенные типы

using FieldList = typename pcl::traits::fieldList< PointT >::type
using PointCloud = typename Filter< PointT >::PointCloud
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
- Защищенные типы, унаследованные от pcl::VoxelGrid< PointT >
using PointCloud = typename Filter< PointT >::PointCloud
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using FieldList = typename pcl::traits::fieldList< PointT >::type

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

void applyFilter (PointCloud &output) override
Фильтрует облако и инициализирует структуру вокселей. Подробнее...
- Защищенные функции-члены, унаследованные от pcl::Filter< PointT >
const std::string & getClassName () const
Возвращает строковое представление имени этого класса. Подробнее...
- Защищенные функции-члены, унаследованные от pcl::PCLBase< PointT >
bool initCompute ()
Этот метод следует вызывать перед началом фактических вычислений. Подробнее...
bool deinitCompute ()
Этот метод следует вызывать после завершения фактических вычислений. Подробнее...

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

bool searchable_ {true}
Флаг, определяющий, доступен ли поиск в структуре вокселей. Подробнее...
int min_points_per_voxel_ {6}
Минимальное количество точек вокселя, необходимое для его использования. Подробнее...
double min_covar_eigvalue_mult_ {0.01}
Минимально допустимое отношение между собственными значениями, предотвращающее вырожденность ковариационных матриц. Подробнее...
std::map< std::size_t, Leaf > leaves_
Структура вокселей, содержащая все листовые узлы (включая воксели с недостаточным количеством точек). Подробнее...
PointCloudPtr voxel_centroids_
Облако точек, содержащее центроиды вокселей, в которых находится не менее минимального количества точек. Подробнее...
std::vector< int > voxel_centroids_leaf_indices_
Индексы листовых структур, соответствующих каждой точке в voxel_centroids_ (используются для поиска). Подробнее...
KdTreeFLANN< PointT > kdtree_
KdTree, построенное по voxel_centroids_ (используется для поиска). Подробнее...
- Защищённые атрибуты, унаследованные от pcl::VoxelGrid< PointT >
Eigen::Vector4f leaf_size_
Размер листового узла. Подробнее...
Eigen::Array4f inverse_leaf_size_
Внутренние размеры листовых узлов, хранящиеся как 1/leaf_size_ для повышения эффективности. Подробнее...
bool downsample_all_data_ {true}
Установите значение true, если нужно уменьшить разрешение всех полей, или false, если только XYZ. Подробнее...
bool save_leaf_layout_ {false}
Установите значение true, если нужно сохранить информацию о структуре листовых узлов в leaf_layout_. Подробнее...
std::vector< int > leaf_layout_
Информация о структуре листовых узлов для быстрого доступа к ячейкам относительно текущего положения. Подробнее...
Eigen::Vector4i min_b_
Минимальные и максимальные координаты ячеек, количество делений и множитель деления. Подробнее...
Eigen::Vector4i max_b_
Eigen::Vector4i div_b_
Eigen::Vector4i divb_mul_
std::string filter_field_name_
Имя поля, используемого пользователем для фильтрации. Подробнее...
double filter_limit_min_ {std::numeric_limits<float>::lowest()}
Минимальное допустимое значение фильтра, начиная с которого учитывается точка. Подробнее...
double filter_limit_max_ {std::numeric_limits<float>::max()}
Максимальное допустимое значение фильтра, до которого учитывается точка. Подробнее...
bool filter_limit_negative_ {false}
Установите значение true, если нужно вернуть данные вне диапазона (filter_limit_min_;filter_limit_max_). Подробнее...
unsigned int min_points_per_voxel_ {0}
Минимальное количество точек вокселя, необходимое для вычисления центроида. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::Filter< PointT >
IndicesPtr removed_indices_
Индексы удалённых точек. Подробнее...
std::string filter_name_
Имя фильтра. Подробнее...
bool extract_removed_indices_
Установите значение true, если нужно вернуть индексы удалённых точек. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::PCLBase< PointT >
PointCloudConstPtr input_
Входной набор данных облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор используемых индексов точек. Подробнее...
bool use_indices_
Установите значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, создаётся набор фиктивных индексов, соответствующий входному PointCloud. Подробнее...

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

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

Структура вокселей с поддержкой поиска, содержащая среднее значение и ковариацию данных.

Примечание
Дополнительную информацию см. в работе Магнуссон, М. (2009). Трёхмерное преобразование нормальных распределений — эффективное представление для регистрации, анализа поверхностей и обнаружения замыканий циклов. Кандидатская диссертация, Университет Эребру. Серия «Исследования в области технологий» Университета Эребру, 36
Автор
Брайан Окорн (Центр систем космической и военно-морской борьбы, Тихоокеанский регион)

Определение находится в строке 55 файла voxel_grid_covariance.h.

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

ConstPtr

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

Определение находится в строке 86 файла voxel_grid_covariance.h.

FieldList

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::FieldList = typename pcl::traits::fieldList<PointT>::type
защищённый

Определение находится в строке 78 файла voxel_grid_covariance.h.

LeafConstPtr

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::LeafConstPtr = const Leaf *

Указатель на константную листовую структуру VoxelGridCovariance.

Определение находится в строке 190 файла voxel_grid_covariance.h.

LeafPtr

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::LeafPtr = Leaf *

Указатель на листовую структуру VoxelGridCovariance.

Определение находится в строке 187 файла voxel_grid_covariance.h.

PointCloud

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::PointCloud = typename Filter<PointT>::PointCloud
защищённый

Определение находится в строке 79 файла voxel_grid_covariance.h.

PointCloudConstPtr

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::PointCloudConstPtr = typename PointCloud::ConstPtr
защищённый

Определение находится в строке 81 файла voxel_grid_covariance.h.

PointCloudPtr

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::PointCloudPtr = typename PointCloud::Ptr
защищённый

Определение находится в строке 80 файла voxel_grid_covariance.h.

Ptr

template<typename PointT >
using pcl::VoxelGridCovariance< PointT >::Ptr = shared_ptr<VoxelGrid<PointT> >

Определение находится в строке 85 файла voxel_grid_covariance.h.

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

VoxelGridCovariance()

template<typename PointT >
pcl::VoxelGridCovariance< PointT >::VoxelGridCovariance ( )
inline

Конструктор.

Устанавливает leaf_size_ в 0, а searchable_ — в false.

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

Ссылки: pcl::VoxelGrid< PointT >::downsample_all_data_, pcl::Filter< PointT >::filter_name_, pcl::VoxelGrid< PointT >::leaf_size_, pcl::VoxelGrid< PointT >::max_b_, pcl::VoxelGrid< PointT >::min_b_ и pcl::VoxelGrid< PointT >::save_leaf_layout_.

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

applyFilter()

template<typename PointT >
void pcl::VoxelGridCovariance< PointT >::applyFilter ( PointCloud & output )
overrideprotectedvirtual

Фильтрует облако точек и инициализирует структуру вокселей.

Параметры
[out] output облако, содержащее центроиды вокселей, в которых имеется достаточное количество точек

Переопределено из pcl::VoxelGrid< PointT >.

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

Ссылки: pcl::PointCloud< PointT >::back(), pcl::VoxelGridCovariance< PointT >::Leaf::centroid, pcl::PointCloud< PointT >::clear(), pcl::VoxelGridCovariance< PointT >::Leaf::cov_, pcl::VoxelGridCovariance< PointT >::Leaf::evals_, pcl::VoxelGridCovariance< PointT >::Leaf::evecs_, pcl::PointCloud< PointT >::height, pcl::VoxelGridCovariance< PointT >::Leaf::icov_, pcl::PointCloud< PointT >::is_dense, pcl::isXYZFinite(), pcl::VoxelGridCovariance< PointT >::Leaf::mean_, pcl::VoxelGridCovariance< PointT >::Leaf::nr_points, pcl::PointCloud< PointT >::push_back(), pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.

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

filter() [1/2]

template<typename PointT >
void pcl::VoxelGridCovariance< PointT >::filter ( bool searchable = false )
inline

Инициализирует структуру вокселей.

Параметры
[in] searchable флаг, указывающий, доступен ли поиск по структуре вокселей; если значение true, строится kdtree

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

Ссылки: pcl::VoxelGridCovariance< PointT >::applyFilter(), pcl::Filter< PointT >::getClassName(), pcl::VoxelGridCovariance< PointT >::kdtree_, pcl::VoxelGridCovariance< PointT >::searchable_ и pcl::VoxelGridCovariance< PointT >::voxel_centroids_.

filter() [2/2]

template<typename PointT >
void pcl::VoxelGridCovariance< PointT >::filter ( PointCloud & output,
bool searchable = false
)
inline

Фильтрует облако точек и инициализирует структуру вокселей.

Параметры
[out] output облако, содержащее центроиды вокселей, в которых имеется достаточное количество точек
[in] searchable флаг, указывающий, доступен ли поиск по структуре вокселей; если значение true, строится kdtree

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

Ссылки: pcl::VoxelGridCovariance< PointT >::applyFilter(), pcl::Filter< PointT >::getClassName(), pcl::VoxelGridCovariance< PointT >::kdtree_, pcl::VoxelGridCovariance< PointT >::searchable_ и pcl::VoxelGridCovariance< PointT >::voxel_centroids_.

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

getAllNeighborsAtPoint()

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::getAllNeighborsAtPoint ( const PointT & reference_point,
std::vector< LeafConstPtr > & neighbors
) const

Получает все соседние воксели вокруг p в области 3x3x3 (до 27 вокселей).

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] reference_point точка, для которой требуется получить структуру листа
[out] neighbors
Возвращает
количество найденных соседей (до 27)

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

Ссылка: pcl::getAllNeighborCellIndices().

getCentroids()

template<typename PointT >
PointCloudPtr pcl::VoxelGridCovariance< PointT >::getCentroids ( )
inline

Возвращает облако точек, содержащее центроиды вокселей.

Примечание
Используются только воксели, содержащие достаточное количество точек.
Возвращает
карту, содержащую все листья

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

Ссылка: pcl::VoxelGridCovariance< PointT >::voxel_centroids_.

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

getCovEigValueInflationRatio()

template<typename PointT >
double pcl::VoxelGridCovariance< PointT >::getCovEigValueInflationRatio ( )
inline

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

Возвращает
минимально допустимое отношение собственных значений

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

Ссылка: pcl::VoxelGridCovariance< PointT >::min_covar_eigvalue_mult_.

getDisplayCloud()

template<typename PointT >
void pcl::VoxelGridCovariance< PointT >::getDisplayCloud ( pcl::PointCloud< PointXYZ > & cell_cloud,
int pnt_per_cell = 1000
) const

Возвращает облако точек для визуализации нормального распределения каждого вокселя.

Параметры
[out] cell_cloud облако, созданное путём выборки из нормальных распределений каждого вокселя
[in] pnt_per_cell количество точек, создаваемых для каждой ячейки

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

Ссылки: pcl::PointCloud< PointT >::clear(), pcl::VoxelGridCovariance< PointT >::Leaf::cov_, pcl::VoxelGridCovariance< PointT >::Leaf::mean_, pcl::VoxelGridCovariance< PointT >::Leaf::nr_points, pcl::PointCloud< PointT >::push_back() и pcl::PointCloud< PointT >::reserve().

getFaceNeighborsAtPoint()

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::getFaceNeighborsAtPoint ( const PointT & reference_point,
std::vector< LeafConstPtr > & neighbors
) const

Возвращает воксель в точке p и соседние с ним по граням воксели (до 7 вокселей).

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] reference_point точка, для которой требуется получить структуру листа
[out] neighbors
Возвращает
количество найденных соседей (до 7)

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

getLeaf() [1/3]

template<typename PointT >
LeafConstPtr pcl::VoxelGridCovariance< PointT >::getLeaf ( Eigen::Vector3f & p )
inline

Возвращает воксель, содержащий точку p.

Параметры
[in] p точка, для которой требуется получить структуру листа
Возвращает
указатель на структуру листа, доступную только для чтения

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

Ссылки: pcl::VoxelGrid< PointT >::divb_mul_, pcl::VoxelGrid< PointT >::inverse_leaf_size_, pcl::VoxelGridCovariance< PointT >::leaves_ и pcl::VoxelGrid< PointT >::min_b_.

getLeaf() [2/3]

template<typename PointT >
LeafConstPtr pcl::VoxelGridCovariance< PointT >::getLeaf ( int index )
inline

Возвращает воксель, содержащий точку p.

Параметры
[in] index индекс узла структуры листьев
Возвращает
указатель на структуру листа, доступную только для чтения

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

Ссылка: pcl::VoxelGridCovariance< PointT >::leaves_.

getLeaf() [3/3]

template<typename PointT >
LeafConstPtr pcl::VoxelGridCovariance< PointT >::getLeaf ( PointT & p )
inline

Возвращает воксель, содержащий точку p.

Параметры
[in] p точка, для которой требуется получить структуру листа
Возвращает
указатель на структуру листа, доступную только для чтения

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

Ссылки: pcl::VoxelGrid< PointT >::divb_mul_, pcl::VoxelGrid< PointT >::inverse_leaf_size_, pcl::VoxelGridCovariance< PointT >::leaves_ и pcl::VoxelGrid< PointT >::min_b_.

getLeaves()

template<typename PointT >
const std::map<std::size_t, Leaf>& pcl::VoxelGridCovariance< PointT >::getLeaves ( )
inline

Возвращает карту структуры листьев.

Возвращает
карту, содержащую все листья

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

Ссылка: pcl::VoxelGridCovariance< PointT >::leaves_.

getMinPointPerVoxel()

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::getMinPointPerVoxel ( )
inline

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

Возвращает
минимальное количество точек, необходимое для использования вокселя

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

Ссылка: pcl::VoxelGridCovariance< PointT >::min_points_per_voxel_.

getNeighborhoodAtPoint() [1/2]

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::getNeighborhoodAtPoint ( const Eigen::Matrix< int, 3, Eigen::Dynamic > & relative_coordinates,
const PointT & reference_point,
std::vector< LeafConstPtr > & neighbors
) const

Получить воксели, окружающие точку p, обозначенные relative_coordinates.

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] relative_coordinates Матрица 3xN, задающая относительные координаты N соседних вокселей относительно центрального вокселя
[in] reference_point точка, для которой нужно получить структуру листа
[out] neighbors
Возвращает
количество найденных соседей

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

getNeighborhoodAtPoint() [2/2]

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::getNeighborhoodAtPoint ( const PointT & reference_point,
std::vector< LeafConstPtr > & neighbors
) const

Получить воксели, окружающие точку p, исключая воксель, содержащий точку p.

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] reference_point точка, для которой нужно получить структуру листа
[out] neighbors
Возвращает
количество найденных соседей (до 26)

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

getVoxelAtPoint()

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::getVoxelAtPoint ( const PointT & reference_point, std::vector< LeafConstPtr > & neighbors
) const

Получить воксель в точке p.

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] reference_point точка, для которой нужно получить структуру листа
[out] neighbors
Возвращает
количество найденных соседей (до 1)

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

nearestKSearch() [1/2]

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::nearestKSearch ( const PointCloud & cloud, int index, int k, std::vector< LeafConstPtr > & k_leaves, std::vector< float > & k_sqr_distances
) const
inline

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

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] cloud заданная точка запроса
[in] index индекс
[in] k количество соседей для поиска
[out] k_leaves результирующие листья соседних точек
[out] k_sqr_distances результирующие квадраты расстояний до соседних точек
Возвращает
количество найденных соседей

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

Ссылки: pcl::VoxelGridCovariance< PointT >::nearestKSearch() и pcl::PointCloud< PointT >::size().

nearestKSearch() [2/2]

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::nearestKSearch ( const PointT & point, int k, std::vector< LeafConstPtr > & k_leaves, std::vector< float > & k_sqr_distances
) const
inline

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

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] point заданная точка запроса
[in] k количество соседей для поиска
[out] k_leaves результирующие листья соседних точек
[out] k_sqr_distances результирующие квадраты расстояний до соседних точек
Возвращает
количество найденных соседей

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

Ссылки: pcl::Filter< PointT >::getClassName(), pcl::VoxelGridCovariance< PointT >::kdtree_, pcl::VoxelGridCovariance< PointT >::leaves_, pcl::VoxelGridCovariance< PointT >::searchable_ и pcl::VoxelGridCovariance< PointT >::voxel_centroids_leaf_indices_.

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

radiusSearch() [1/2]

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::radiusSearch ( const PointCloud & cloud, int index, double radius, std::vector< LeafConstPtr > & k_leaves, std::vector< float > & k_sqr_distances, unsigned int max_nn = 0
) const
inline

Найти все ближайшие занятые воксели в заданном радиусе от точки запроса.

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] cloud заданная точка запроса
[in] index допустимый индекс в cloud, соответствующий допустимой (то есть конечной) точке запроса
[in] radius радиус сферы, ограничивающей всех соседей p_q
[out] k_leaves результирующие листья соседних точек
[out] k_sqr_distances результирующие квадраты расстояний до соседних точек
[in] max_nn
Возвращает
количество найденных соседей

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

Ссылки: pcl::VoxelGridCovariance< PointT >::radiusSearch() и pcl::PointCloud< PointT >::size().

radiusSearch() [2/2]

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::radiusSearch ( const PointT & point, double radius, std::vector< LeafConstPtr > & k_leaves, std::vector< float > & k_sqr_distances, unsigned int max_nn = 0
) const
inline

Найти все ближайшие занятые воксели в заданном радиусе от точки запроса.

Примечание
Используются только воксели, содержащие достаточное количество точек.
Параметры
[in] point заданная точка запроса
[in] radius радиус сферы, ограничивающей всех соседей p_q
[out] k_leaves результирующие листья соседних точек
[out] k_sqr_distances результирующие квадраты расстояний до соседних точек
[in] max_nn
Возвращает
количество найденных соседей

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

Ссылки: pcl::Filter< PointT >::getClassName(), pcl::VoxelGridCovariance< PointT >::kdtree_, pcl::VoxelGridCovariance< PointT >::leaves_, pcl::VoxelGridCovariance< PointT >::searchable_ и pcl::VoxelGridCovariance< PointT >::voxel_centroids_leaf_indices_.

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

setCovEigValueInflationRatio()

template<typename PointT >
void pcl::VoxelGridCovariance< PointT >::setCovEigValueInflationRatio ( double min_covar_eigvalue_mult )
inline

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

Параметры
[in] min_covar_eigvalue_mult минимально допустимое отношение собственных значений

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

Ссылки: pcl::VoxelGridCovariance< PointT >::min_covar_eigvalue_mult_.

setMinPointPerVoxel()

template<typename PointT >
void pcl::VoxelGridCovariance< PointT >::setMinPointPerVoxel ( int min_points_per_voxel )
inline

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

Параметры
[in] min_points_per_voxel минимальное количество точек, необходимое для использования вокселя

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

Ссылки: pcl::Filter< PointT >::getClassName() и pcl::VoxelGridCovariance< PointT >::min_points_per_voxel_.

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

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

kdtree_

template<typename PointT >
KdTreeFLANN<PointT> pcl::VoxelGridCovariance< PointT >::kdtree_
protected

KdTree, построенное с использованием voxel_centroids_ (используется для поиска).

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

Используется в pcl::VoxelGridCovariance< PointT >::filter(), pcl::VoxelGridCovariance< PointT >::nearestKSearch() и pcl::VoxelGridCovariance< PointT >::radiusSearch().

leaves_

template<typename PointT >
std::map<std::size_t, Leaf> pcl::VoxelGridCovariance< PointT >::leaves_
protected

Структура вокселей, содержащая все листовые узлы (включая воксели с недостаточным количеством точек).

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

Используется в pcl::VoxelGridCovariance< PointT >::getLeaf(), pcl::VoxelGridCovariance< PointT >::getLeaves(), pcl::VoxelGridCovariance< PointT >::nearestKSearch() и pcl::VoxelGridCovariance< PointT >::radiusSearch().

min_covar_eigvalue_mult_

template<typename PointT >
double pcl::VoxelGridCovariance< PointT >::min_covar_eigvalue_mult_ {0.01}
protected

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

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

Используется в pcl::VoxelGridCovariance< PointT >::getCovEigValueInflationRatio() и pcl::VoxelGridCovariance< PointT >::setCovEigValueInflationRatio().

min_points_per_voxel_

template<typename PointT >
int pcl::VoxelGridCovariance< PointT >::min_points_per_voxel_ {6}
protected

Минимальное количество точек в вокселе, необходимое для его использования.

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

Используется в pcl::VoxelGridCovariance< PointT >::getMinPointPerVoxel() и pcl::VoxelGridCovariance< PointT >::setMinPointPerVoxel().

searchable_

template<typename PointT >
bool pcl::VoxelGridCovariance< PointT >::searchable_ {true}
protected

Флаг, определяющий, доступна ли структура вокселей для поиска.

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

Используется в pcl::VoxelGridCovariance< PointT >::filter(), pcl::VoxelGridCovariance< PointT >::nearestKSearch() и pcl::VoxelGridCovariance< PointT >::radiusSearch().

voxel_centroids_

template<typename PointT >
PointCloudPtr pcl::VoxelGridCovariance< PointT >::voxel_centroids_
protected

Облако точек, содержащее центроиды вокселей, в которых находится не менее минимального количества точек.

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

Используется в pcl::VoxelGridCovariance< PointT >::filter() и pcl::VoxelGridCovariance< PointT >::getCentroids().

voxel_centroids_leaf_indices_

template<typename PointT >
std::vector<int> pcl::VoxelGridCovariance< PointT >::voxel_centroids_leaf_indices_
protected

Индексы листовых структур, связанных с каждой точкой в voxel_centroids_ (используются для поиска).

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

Используется в pcl::VoxelGridCovariance< PointT >::nearestKSearch() и pcl::VoxelGridCovariance< PointT >::radiusSearch().


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

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

Spec-Zone.ru

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