Spec-Zone.ru › PointCloudLibrary

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

#include <pcl/surface/marching_cubes_rbf.h>

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

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

using Ptr = shared_ptr< MarchingCubesRBF< PointNT > >
using ConstPtr = shared_ptr< const MarchingCubesRBF< PointNT > >
using PointCloudPtr = typename pcl::PointCloud< PointNT >::Ptr
using KdTree = pcl::KdTree< PointNT >
using KdTreePtr = typename KdTree::Ptr
- Общедоступные типы, унаследованные от pcl::MarchingCubes< PointNT >
using Ptr = shared_ptr< MarchingCubes< PointNT > >
using ConstPtr = shared_ptr< const MarchingCubes< PointNT > >
using PointCloudPtr = typename pcl::PointCloud< PointNT >::Ptr
using KdTree = pcl::KdTree< PointNT >
using KdTreePtr = typename KdTree::Ptr
- Общедоступные типы, унаследованные от pcl::SurfaceReconstruction< PointNT >
using Ptr = shared_ptr< SurfaceReconstruction< PointNT > >
using ConstPtr = shared_ptr< const SurfaceReconstruction< PointNT > >
- Общедоступные типы, унаследованные от pcl::PCLSurfaceBase< PointInT >
using Ptr = shared_ptr< PCLSurfaceBase< PointInT > >
using ConstPtr = shared_ptr< const PCLSurfaceBase< PointInT > >
using KdTree = pcl::search::Search< PointInT >
using KdTreePtr = typename KdTree::Ptr
- Общедоступные типы, унаследованные от pcl::PCLBase< PointInT >
using PointCloud = pcl::PointCloud< PointInT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr

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

MarchingCubesRBF (const float off_surface_epsilon=0.1f, const float percentage_extend_grid=0.0f, const float iso_level=0.0f)
Конструктор. Подробнее...
~MarchingCubesRBF () override
Деструктор. Подробнее...
void voxelizeData () override
Преобразовать облако точек в данные voxels. Подробнее...
void setOffSurfaceDisplacement (float epsilon)
Установить значение смещения точек вне поверхности. Подробнее...
float getOffSurfaceDisplacement ()
Получить значение смещения точек вне поверхности. Подробнее...
- Общедоступные члены-функции унаследованные от pcl::MarchingCubes< PointNT >
MarchingCubes (const float percentage_extend_grid=0.0f, const float iso_level=0.0f)
Конструктор. Подробнее...
~MarchingCubes () override
Деструктор. Подробнее...
void setIsoLevel (float iso_level)
Метод, устанавливающий уровень изолинии для поверхности, подлежащей извлечению. Подробнее...
float getIsoLevel ()
Метод, возвращающий уровень изолинии для поверхности, подлежащей извлечению. Подробнее...
void setGridResolution (int res_x, int res_y, int res_z)
Метод, устанавливающий разрешение сетки marching cubes. Подробнее...
void getGridResolution (int &res_x, int &res_y, int &res_z)
Метод для получения разрешения сетки marching cubes. Подробнее...
void setPercentageExtendGrid (float percentage)
Метод, устанавливающий параметр, определяющий, сколько свободного пространства должно оставаться внутри сетки между ограничивающим прямоугольником облака точек и границами сетки. Подробнее...
float getPercentageExtendGrid ()
Метод, получающий параметр, определяющий, сколько свободного пространства должно оставаться внутри сетки между ограничивающим прямоугольником облака точек и границами сетки, в процентах от ограничивающего прямоугольника. Подробнее...
- Общедоступные члены-функции унаследованные от pcl::SurfaceReconstruction< PointNT >
SurfaceReconstruction ()
Конструктор. Подробнее...
~SurfaceReconstruction () override=default
Деструктор. Подробнее...
void reconstruct (pcl::PolygonMesh &output) override
Базовый метод для реконструкции поверхности для всех точек, заданных в <setInputCloud (), setIndices ()> Подробнее...
virtual void reconstruct (pcl::PointCloud< PointNT > &points, std::vector< pcl::Vertices > &polygons)
Базовый метод для реконструкции поверхности для всех точек, заданных в <setInputCloud (), setIndices ()> Подробнее...
- Public Member Functions inherited from pcl::PCLSurfaceBase< PointInT >
PCLSurfaceBase ()
Пустой конструктор. Подробнее...
~PCLSurfaceBase () override=default
Пустой деструктор. Подробнее...
void setSearchMethod (const KdTreePtr &tree)
Предоставьте необязательный указатель на объект поиска. Подробнее...
KdTreePtr getSearchMethod ()
Получить указатель на метод поиска, используемый. Подробнее...
- Public Member Functions inherited from pcl::PCLBase< PointInT >
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 PointInT & operator[] (std::size_t pos) const
Переопределить оператор PointCloud[] для сокращения кода. Подробнее...

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

double kernel (Eigen::Vector3d c, Eigen::Vector3d x)
Ядро радиальной базисной функции. Подробнее...
- Защищенные члены функций, унаследованные от pcl::MarchingCubes< PointNT >
void interpolateEdge (Eigen::Vector3f &p1, Eigen::Vector3f &p2, float val_p1, float val_p2, Eigen::Vector3f &output)
Интерполяция по ребру вокселя. Подробнее...
void createSurface (const std::vector< float > &leaf_node, const Eigen::Vector3i &index_3d, pcl::PointCloud< PointNT > &cloud)
Вычисление соответствующих полигонов в узле листа. Подробнее...
void getBoundingBox ()
Получение ограничивающего прямоугольника для входных точек данных. Подробнее...
virtual float getGridValue (Eigen::Vector3i pos)
Метод, возвращающий скалярное значение в заданной позиции сетки. Подробнее...
void getNeighborList1D (std::vector< float > &leaf, Eigen::Vector3i &index3d)
Метод, возвращающий скалярные значения соседей заданной 3D позиции в сетке. Подробнее...
std::string getClassName () const override
Метод получения имени класса. Подробнее...
void performReconstruction (pcl::PolygonMesh &output) override
Выделение поверхности. Подробнее...
void performReconstruction (pcl::PointCloud< PointNT > &points, std::vector< pcl::Vertices > &polygons) override
Выделение поверхности. Подробнее...
- Защищенные члены функций, унаследованные от pcl::PCLBase< PointInT >
bool initCompute ()
Этот метод должен быть вызван перед началом фактического вычисления. Подробнее...
bool deinitCompute ()
Этот метод должен быть вызван после завершения фактического вычисления. Подробнее...

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

float off_surface_epsilon_
Значение смещения вне поверхности. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::MarchingCubes< PointNT >
std::vector< float > grid_
Структура данных, хранящая 3D сетку. Подробнее...
int res_x_ = 32
Разрешение сетки. Подробнее...
int res_y_ = 32
int res_z_ = 32
Eigen::Array3f upper_boundary_
границы ограничивающего прямоугольника Подробнее...
Eigen::Array3f lower_boundary_
Eigen::Array3f size_voxel_
размер вокселей Подробнее...
float percentage_extend_grid_
Параметр, определяющий, сколько свободного места должно быть внутри сетки между ограничивающим прямоугольником облака точек и границами сетки, как процент от ограничивающего прямоугольника. Подробнее...
float iso_level_
Уровень изоляции для извлечения. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::SurfaceReconstruction< PointNT >
bool check_tree_
Флаг, указывающий, нужна ли объекту реконструкции алгоритм поиска tree. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLSurfaceBase< PointInT >
KdTreePtr tree_
Указатель на объект пространственного поиска. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLBase< PointInT >
PointCloudConstPtr input_
Входное облако точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
bool use_indices_
Установлено в true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, мы создаём набор фальшивых индексов, имитирующих входной PointCloud. Подробнее...

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

template<typename PointNT>
class pcl::MarchingCubesRBF< PointNT >

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

Частично основан на: Carr J.C., Beatson R.K., Cherrie J.B., Mitchell T.J., Fright W.R., McCallum B.C. and Evans T.R., "Reconstruction and representation of 3D objects with radial basis functions" SIGGRAPH '01

Примечание
Этот алгоритм в его текущей реализации может быть непригоден для очень больших облаков точек из-за высоких требований к памяти.
Автор
Alexandru E. Ichim

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

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

ConstPtr

template<typename PointNT >
using pcl::MarchingCubesRBF< PointNT >::ConstPtr = shared_ptr<const MarchingCubesRBF<PointNT> >

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

KdTree

template<typename PointNT >
using pcl::MarchingCubesRBF< PointNT >::KdTree = pcl::KdTree<PointNT>

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

KdTreePtr

template<typename PointNT >
using pcl::MarchingCubesRBF< PointNT >::KdTreePtr = typename KdTree::Ptr

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

PointCloudPtr

template<typename PointNT >
using pcl::MarchingCubesRBF< PointNT >::PointCloudPtr = typename pcl::PointCloud<PointNT>::Ptr

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

Ptr

template<typename PointNT >
using pcl::MarchingCubesRBF< PointNT >::Ptr = shared_ptr<MarchingCubesRBF<PointNT> >

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

Конструкторы и деструкторы

MarchingCubesRBF()

template<typename PointNT >
pcl::MarchingCubesRBF< PointNT >::MarchingCubesRBF ( const float off_surface_epsilon = 0.1f,
const float percentage_extend_grid = 0.0f,
const float iso_level = 0.0f
)
inline

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

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

~MarchingCubesRBF()

template<typename PointNT >
pcl::MarchingCubesRBF< PointNT >::~MarchingCubesRBF ( )
overridedefault

Деструктор.

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

getOffSurfaceDisplacement()

template<typename PointNT >
float pcl::MarchingCubesRBF< PointNT >::getOffSurfaceDisplacement ( )
inline

Получить значение смещения точек вне поверхности.

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

Ссылки на pcl::MarchingCubesRBF< PointNT >::off_surface_epsilon_.

kernel()

template<typename PointNT >
double pcl::MarchingCubesRBF< PointNT >::kernel ( Eigen::Vector3d c,
Eigen::Vector3d x
)
protected

ядро радиальной базисной функции.

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

setOffSurfaceDisplacement()

template<typename PointNT >
void pcl::MarchingCubesRBF< PointNT >::setOffSurfaceDisplacement ( float epsilon )
inline

Установите значение смещения точек вне поверхности.

Параметры
[in] epsilon значение

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

Ссылки на pcl::MarchingCubesRBF< PointNT >::off_surface_epsilon_.

voxelizeData()

template<typename PointNT >
void pcl::MarchingCubesRBF< PointNT >::voxelizeData
overridevirtual

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

Реализует pcl::MarchingCubes< PointNT >.

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

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

off_surface_epsilon_

template<typename PointNT >
float pcl::MarchingCubesRBF< PointNT >::off_surface_epsilon_
protected

Значение смещения точек вне поверхности.

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

Используется в pcl::MarchingCubesRBF< PointNT >::getOffSurfaceDisplacement() и pcl::MarchingCubesRBF< PointNT >::setOffSurfaceDisplacement().


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

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

Spec-Zone.ru

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