ExtractPolygonalPrismData использует набор индексов точек, представляющих плоскую модель, и вместе с заданной высотой генерирует 3D многоугольный призму. Подробнее...
#include <pcl/segmentation/extract_polygonal_prism_data.h>
Общедоступные типы | |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
|
| |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Общедоступные члены-функции | |
| ExtractPolygonalPrismData () | |
| Пустой конструктор. Подробнее... |
|
| void | setInputPlanarHull (const PointCloudConstPtr &hull) |
| Укажите указатель на входной набор данных с плоской оболочкой. Подробнее... |
|
| PointCloudConstPtr | getInputPlanarHull () const |
| Получить указатель на набор данных с входной плоской оболочкой. Подробнее... |
|
| void | setHeightLimits (double height_min, double height_max) |
| Установить пределы высоты. Подробнее... |
|
| void | getHeightLimits (double &height_min, double &height_max) const |
| Получить пределы высоты (мин/макс), установленные пользователем. Подробнее... |
|
| void | setViewPoint (float vpx, float vpy, float vpz) |
| Установить точку обзора. Подробнее... |
|
| void | getViewPoint (float &vpx, float &vpy, float &vpz) const |
| Получить точку обзора. Подробнее... |
|
| void | segment (PointIndices &output) |
| Выделение кластеров в PointCloud, заданный с помощью <setInputCloud (), setIndices ()> Подробнее... |
|
|
| |
| 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 для сокращения кода. Подробнее... |
|
Защищенные члены класса | |
| virtual std::string | getClassName () const |
| Метод получения имени класса. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен вызываться перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен вызываться после завершения фактического вычисления. Подробнее... |
|
Защищенные атрибуты | |
| PointCloudConstPtr | planar_hull_ |
| Указатель на входные данные плоского многоугольного основания. Подробнее... |
|
| int | min_pts_hull_ |
| Минимальное количество точек, необходимых для выпуклой оболочки. Подробнее... |
|
| double | height_limit_min_ |
| Минимальная разрешенная высота (расстояние до модели), с которой точка будет рассматриваться. Подробнее... |
|
| double | height_limit_max_ |
| Максимальная разрешенная высота (расстояние до модели), с которой точка будет рассматриваться. Подробнее... |
|
| float | vpx_ |
| Значения, описывающие точку зрения при получении данных. Подробнее... |
|
| float | vpy_ |
| float | vpz_ |
|
| |
| PointCloudConstPtr | input_ |
| Входные данные облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| bool | use_indices_ |
| Устанавливается в true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, мы создаем набор фиктивных индексов, имитирующих входное PointCloud. Подробнее... |
|
Подробное описание
шаблон<typename PointT>
class pcl::ExtractPolygonalPrismData< PointT >
ExtractPolygonalPrismData использует набор индексов точек, представляющих плоскую модель, и вместе с заданной высотой генерирует 3D многоугольную призму.
Затем многоугольная призма используется для сегментации всех точек, лежащих внутри нее.
Пример использования: извлечение данных, лежащих внутри набора 3D границ (например, объекты, поддерживаемые плоскостью).
Пример использования:
double z_min = 0., z_max = 0.05; // we want the points above the plane, no farther than 5 cm from the surface
pcl::PointCloud<pcl::PointXYZ>::Ptr hull_points (new pcl::PointCloud<pcl::PointXYZ> ());
pcl::ConvexHull<pcl::PointXYZ> hull;
// hull.setDimension (2); // not necessarily needed, but we need to check the dimensionality of the output
hull.setInputCloud (cloud);
hull.reconstruct (hull_points);
if (hull.getDimension () == 2)
{
pcl::ExtractPolygonalPrismData<pcl::PointXYZ> prism;
prism.setInputCloud (point_cloud);
prism.setInputPlanarHull (hull_points);
prism.setHeightLimits (z_min, z_max);
prism.segment (cloud_indices);
}
else
PCL_ERROR ("The input cloud does not represent a planar surface.\n");
pcl::ConvexHullConvexHull using libqhull library.Definition: convex_hull.h:73
pcl::ConvexHull
ConvexHull using libqhull library.
Definition: convex_hull.h:73
pcl::ConvexHull::getDimensionint getDimension() constReturns the dimensionality (2 or 3) of the calculated hull.Definition: convex_hull.h:164
pcl::ConvexHull::getDimension
int getDimension() const
Returns the dimensionality (2 or 3) of the calculated hull.
Definition: convex_hull.h:164
pcl::ConvexHull::reconstructvoid reconstruct(PointCloud &points, std::vector< pcl::Vertices > &polygons)Compute a convex hull for all points given.Definition: convex_hull.hpp:483
pcl::ConvexHull::reconstruct
void reconstruct(PointCloud &points, std::vector< pcl::Vertices > &polygons)
Compute a convex hull for all points given.
Definition: convex_hull.hpp:483
pcl::ExtractPolygonalPrismDataExtractPolygonalPrismData uses a set of point indices that represent a planar model,...Definition: extract_polygonal_prism_data.h:103
pcl::ExtractPolygonalPrismData
ExtractPolygonalPrismData uses a set of point indices that represent a planar model,...
Definition: extract_polygonal_prism_data.h:103
pcl::ExtractPolygonalPrismData::setHeightLimitsvoid setHeightLimits(double height_min, double height_max)Set the height limits.Definition: extract_polygonal_prism_data.h:142
pcl::ExtractPolygonalPrismData::setHeightLimits
void setHeightLimits(double height_min, double height_max)
Set the height limits.
Definition: extract_polygonal_prism_data.h:142
pcl::ExtractPolygonalPrismData::setInputPlanarHullvoid setInputPlanarHull(const PointCloudConstPtr &hull)Provide a pointer to the input planar hull dataset.Definition: extract_polygonal_prism_data.h:129
pcl::ExtractPolygonalPrismData::setInputPlanarHull
void setInputPlanarHull(const PointCloudConstPtr &hull)
Provide a pointer to the input planar hull dataset.
Definition: extract_polygonal_prism_data.h:129
pcl::ExtractPolygonalPrismData::segmentvoid segment(PointIndices &output)Cluster extraction in a PointCloud given by <setInputCloud (), setIndices ()>Definition: extract_polygonal_prism_data.hpp:149
pcl::ExtractPolygonalPrismData::segment
void segment(PointIndices &output)
Cluster extraction in a PointCloud given by <setInputCloud (), setIndices ()>
Definition: extract_polygonal_prism_data.hpp:149
pcl::PCLBase::setInputCloudvirtual void setInputCloud(const PointCloudConstPtr &cloud)Provide a pointer to the input dataset.Definition: pcl_base.hpp:65
pcl::PCLBase::setInputCloud
virtual void setInputCloud(const PointCloudConstPtr &cloud)
Provide a pointer to the input dataset.
Definition: pcl_base.hpp:65
pcl::PointCloud< pcl::PointXYZ >
pcl::PointCloud< pcl::PointXYZ >
pcl::PointCloud::Ptrshared_ptr< PointCloud< PointT > > PtrDefinition: point_cloud.h:413
pcl::PointCloud::Ptr
shared_ptr< PointCloud< PointT > > Ptr
Definition: point_cloud.h:413
Определение в строке 102 файла extract_polygonal_prism_data.h.
Документация по typedef-членам
PointCloud
| using pcl::ExtractPolygonalPrismData< PointT >::PointCloud = pcl::PointCloud<PointT> |
Определение в строке 110 файла extract_polygonal_prism_data.h.
PointCloudConstPtr
| using pcl::ExtractPolygonalPrismData< PointT >::PointCloudConstPtr = typename PointCloud::ConstPtr |
Определение в строке 112 файла extract_polygonal_prism_data.h.
PointCloudPtr
| using pcl::ExtractPolygonalPrismData< PointT >::PointCloudPtr = typename PointCloud::Ptr |
Определение в строке 111 файла extract_polygonal_prism_data.h.
PointIndicesConstPtr
| using pcl::ExtractPolygonalPrismData< PointT >::PointIndicesConstPtr = PointIndices::ConstPtr |
Определение в строке 115 файла extract_polygonal_prism_data.h.
PointIndicesPtr
| using pcl::ExtractPolygonalPrismData< PointT >::PointIndicesPtr = PointIndices::Ptr |
Определение в строке 114 файла extract_polygonal_prism_data.h.
Конструктор и деструктор
ExtractPolygonalPrismData()
| inline |
Пустой конструктор.
Определение в строке 118 файла extract_polygonal_prism_data.h.
Документация по функциям-членам
getClassName()
| inlineprotectedvirtual |
Метод получения имени класса.
Определение в строке 210 файла extract_polygonal_prism_data.h.
getHeightLimits()
| inline |
Получение пределов высоты (мин/макс), заданных пользователем.
Значения по умолчанию — 0, std::numeric_limits<float>::max().
- Параметры
-
[out] height_min результирующий минимальный предел высоты [out] height_max результирующий максимальный предел высоты
Определение в строке 154 файла extract_polygonal_prism_data.h.
Ссылки: pcl::ExtractPolygonalPrismData< PointT >::height_limit_max_, и pcl::ExtractPolygonalPrismData< PointT >::height_limit_min_.
getInputPlanarHull()
| inline |
Получение указателя на набор данных входного плоского каркаса.
Определение в строке 133 файла extract_polygonal_prism_data.h.
Ссылки: pcl::ExtractPolygonalPrismData< PointT >::planar_hull_.
getViewPoint()
| inline |
Получение точки обзора.
Определение в строке 175 файла extract_polygonal_prism_data.h.
Ссылки: pcl::ExtractPolygonalPrismData< PointT >::vpx_, pcl::ExtractPolygonalPrismData< PointT >::vpy_, и pcl::ExtractPolygonalPrismData< PointT >::vpz_.
segment()
| void pcl::ExtractPolygonalPrismData< PointT >::segment | ( | pcl::PointIndices & | output | ) |
Кластеризация в PointCloud, заданном с помощью <setInputCloud (), setIndices ()>
- Параметры
-
[out] output результирующие индексы точек, поддерживающие найденную модель (входящие)
Определение в строке 149 файла extract_polygonal_prism_data.hpp.
Ссылки на pcl::computeMeanAndCovarianceMatrix(), pcl::geometry::distance(), pcl::eigen33(), pcl::PointIndices::header, pcl::PointIndices::indices, pcl::isXYPointIn2DXYPolygon(), pcl::pointToPlaneDistanceSigned(), pcl::SampleConsensusModelPlane< PointT >::projectPoints(), pcl::PointCloud< PointT >::resize(), и pcl::PointCloud< PointT >::size().
setHeightLimits()
| inline |
Установить пределы высоты.
Все точки, удалённые от модели за пределы этого интервала, будут отброшены.
- Параметры
-
[in] height_min минимальное разрешённое расстояние до модели [in] height_max максимальное разрешённое расстояние до модели
Определение в строке 142 файла extract_polygonal_prism_data.h.
Ссылки на pcl::ExtractPolygonalPrismData< PointT >::height_limit_max_, и pcl::ExtractPolygonalPrismData< PointT >::height_limit_min_.
setInputPlanarHull()
| inline |
Указать указатель на набор входных данных плоского каркаса.
- Примечание
- Пожалуйста, ознакомьтесь с примером в описании класса, чтобы узнать, как его получить.
- Параметры
-
[in] hull набор входных данных плоского каркаса
Определение в строке 129 файла extract_polygonal_prism_data.h.
Ссылки на pcl::ExtractPolygonalPrismData< PointT >::planar_hull_.
setViewPoint()
| inline |
Установить точку обзора.
- Параметры
-
[in] vpx координата X точки обзора [in] vpy координата Y точки обзора [in] vpz координата Z точки обзора
Определение в строке 166 файла extract_polygonal_prism_data.h.
Ссылки на pcl::ExtractPolygonalPrismData< PointT >::vpx_, pcl::ExtractPolygonalPrismData< PointT >::vpy_, и pcl::ExtractPolygonalPrismData< PointT >::vpz_.
Документация по данным члена
height_limit_max_
| protected |
Максимальная разрешённая высота (расстояние до модели) точки.
Определение в строке 203 файла extract_polygonal_prism_data.h.
Используется в pcl::ExtractPolygonalPrismData< PointT >::getHeightLimits(), и pcl::ExtractPolygonalPrismData< PointT >::setHeightLimits().
height_limit_min_
| protected |
Минимальная разрешенная высота (расстояние до модели), с которой точка будет рассматриваться.
Определение в строке 198 файла extract_polygonal_prism_data.h.
Используется в pcl::ExtractPolygonalPrismData< PointT >::getHeightLimits() и pcl::ExtractPolygonalPrismData< PointT >::setHeightLimits().
min_pts_hull_
| protected |
Минимальное количество точек, необходимых для выпуклой оболочки.
Определение в строке 193 файла extract_polygonal_prism_data.h.
planar_hull_
| protected |
Указатель на входные данные плоской оболочки.
Определение в строке 190 файла extract_polygonal_prism_data.h.
Используется в pcl::ExtractPolygonalPrismData< PointT >::getInputPlanarHull() и pcl::ExtractPolygonalPrismData< PointT >::setInputPlanarHull().
vpx_
| protected |
Значения, описывающие точку зрения при сборе данных.
По умолчанию: 0,0,0.
Определение в строке 206 файла extract_polygonal_prism_data.h.
Используется в pcl::ExtractPolygonalPrismData< PointT >::getViewPoint() и pcl::ExtractPolygonalPrismData< PointT >::setViewPoint().
vpy_
| protected |
Определение в строке 206 файла extract_polygonal_prism_data.h.
Используется в pcl::ExtractPolygonalPrismData< PointT >::getViewPoint() и pcl::ExtractPolygonalPrismData< PointT >::setViewPoint().
vpz_
| protected |
Определение в строке 206 файла extract_polygonal_prism_data.h.
Используется в pcl::ExtractPolygonalPrismData< PointT >::getViewPoint() и pcl::ExtractPolygonalPrismData< PointT >::setViewPoint().
The documentation for this class was generated from the following files:
- pcl/segmentation/extract_polygonal_prism_data.h
- pcl/segmentation/impl/extract_polygonal_prism_data.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_extract_polygonal_prism_data.html