Spec-Zone.ru › PointCloudLibrary

Этот класс реализует алгоритм сегментации на основе минимального разреза графа. Подробнее...

#include <pcl/segmentation/min_cut_segmentation.h>

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

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

using KdTree = pcl::search::Search< PointT >
using KdTreePtr = typename KdTree::Ptr
using PointCloud = pcl::PointCloud< PointT >
using PointCloudConstPtr = typename PointCloud::ConstPtr
using Traits = boost::adjacency_list_traits< boost::vecS, boost::vecS, boost::directedS >
using mGraph = boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS, boost::property< boost::vertex_name_t, std::string, boost::property< boost::vertex_index_t, long, boost::property< boost::vertex_color_t, boost::default_color_type, boost::property< boost::vertex_distance_t, long, boost::property< boost::vertex_predecessor_t, Traits::edge_descriptor > > > > >, boost::property< boost::edge_capacity_t, double, boost::property< boost::edge_residual_capacity_t, double, boost::property< boost::edge_reverse_t, Traits::edge_descriptor > > > >
using CapacityMap = boost::property_map< mGraph, boost::edge_capacity_t >::type
using ReverseEdgeMap = boost::property_map< mGraph, boost::edge_reverse_t >::type
using VertexDescriptor = Traits::vertex_descriptor
using EdgeDescriptor = boost::graph_traits< mGraph >::edge_descriptor
using OutEdgeIterator = boost::graph_traits< mGraph >::out_edge_iterator
using VertexIterator = boost::graph_traits< mGraph >::vertex_iterator
using ResidualCapacityMap = boost::property_map< mGraph, boost::edge_residual_capacity_t >::type
using IndexMap = boost::property_map< mGraph, boost::vertex_index_t >::type
using InEdgeIterator = boost::graph_traits< mGraph >::in_edge_iterator
using mGraphPtr = shared_ptr< mGraph >
- Открытые типы, унаследованные от 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

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

MinCutSegmentation ()
Конструктор, задающий значения по умолчанию для переменных-членов. Подробнее...
~MinCutSegmentation () override
Деструктор, освобождающий память. Подробнее...
void setInputCloud (const PointCloudConstPtr &cloud) override
Этот метод просто задаёт входное облако точек. Подробнее...
double getSigma () const
Возвращает значение нормализации для бинарных потенциалов. Подробнее...
void setSigma (double sigma)
Позволяет задать значение нормализации для бинарных потенциалов, как описано в статье. Подробнее...
double getRadius () const
Возвращает радиус до фона. Подробнее...
void setRadius (double radius)
Позволяет задать радиус до фона. Подробнее...
double getSourceWeight () const
Возвращает вес, назначенный каждому ребру, исходящему из исходной вершины. Подробнее...
void setSourceWeight (double weight)
Позволяет задать вес исходящих рёбер. Подробнее...
KdTreePtr getSearchMethod () const
Возвращает метод поиска, используемый для поиска K ближайших соседей. Подробнее...
void setSearchMethod (const KdTreePtr &tree)
Позволяет задать метод поиска K ближайших соседей. Подробнее...
unsigned int getNumberOfNeighbours () const
Возвращает количество соседей, которых нужно найти. Подробнее...
void setNumberOfNeighbours (unsigned int neighbour_number)
Позволяет задать количество соседей, которых нужно найти. Подробнее...
std::vector< PointT, Eigen::aligned_allocator< PointT > > getForegroundPoints () const
Возвращает точки, которые должны принадлежать переднему плану. Подробнее...
void setForegroundPoints (typename pcl::PointCloud< PointT >::Ptr foreground_points)
Позволяет указать точки, заведомо принадлежащие объекту. Подробнее...
std::vector< PointT, Eigen::aligned_allocator< PointT > > getBackgroundPoints () const
Возвращает точки, которые должны принадлежать фону. Подробнее...
void setBackgroundPoints (typename pcl::PointCloud< PointT >::Ptr background_points)
Позволяет указать точки, заведомо принадлежащие фону. Подробнее...
void extract (std::vector< pcl::PointIndices > &clusters)
Этот метод запускает алгоритм сегментации и возвращает кластеры, полученные в ходе сегментации. Подробнее...
double getMaxFlow () const
Возвращает значение потока, вычисленное в ходе сегментации. Подробнее...
mGraphPtr getGraph () const
Возвращает граф, построенный для поиска минимального разреза. Подробнее...
pcl::PointCloud< pcl::PointXYZRGB >::Ptr getColoredCloud ()
Возвращает цветное облако. Подробнее...
- Открытые функции-члены, унаследованные от pcl::PCLBase< PointT >
PCLBase ()
Пустой конструктор. Подробнее...
PCLBase (const PCLBase &base)
Конструктор копирования. Подробнее...
virtual ~PCLBase ()=default
Деструктор. Подробнее...
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, чтобы сократить код. Подробнее...

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

bool buildGraph ()
Этот метод строит граф, который будет использоваться при сегментации. Подробнее...
void calculateUnaryPotential (int point, double &source_weight, double &sink_weight) const
Возвращает унарный потенциал (стоимость данных) для заданного индекса точки. Подробнее...
bool addEdge (int source, int target, double weight)
Этот метод добавляет ребро от исходной вершины к целевой вершине с заданным весом. Подробнее...
double calculateBinaryPotential (int source, int target) const
Возвращает бинарный потенциал (стоимость сглаживания) для заданных индексов точек. Подробнее...
bool recalculateUnaryPotentials ()
Этот метод пересчитывает унарные потенциалы (стоимость данных) при внесении изменений, вместо создания нового графа. Подробнее...
bool recalculateBinaryPotentials ()
Этот метод пересчитывает бинарные потенциалы (стоимость сглаживания) при внесении изменений, вместо создания нового графа. Подробнее...
void assembleLabels (ResidualCapacityMap &residual_capacity)
Этот метод анализирует остаточную сеть и присваивает метку каждой точке облака. Подробнее...
- Защищённые функции-члены, унаследованные от pcl::PCLBase< PointT >
bool initCompute ()
Этот метод следует вызывать перед началом фактических вычислений. Подробнее...
bool deinitCompute ()
Этот метод следует вызывать после завершения фактических вычислений. Подробнее...

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

double inverse_sigma_ {16.0}
Хранит коэффициент сигмы. Подробнее...
bool binary_potentials_are_valid_ {false}
Указывает, являются ли бинарные потенциалы допустимыми. Подробнее...
double epsilon_ {0.0001}
Используется для сравнения чисел с плавающей точкой. Подробнее...
double radius_ {16.0}
Хранит расстояние до фона. Подробнее...
bool unary_potentials_are_valid_ {false}
Указывает, являются ли унарные потенциалы допустимыми. Подробнее...
double source_weight_ {0.8}
Хранит вес каждого ребра, выходящего из исходной точки. Подробнее...
KdTreePtr search_ {nullptr}
Хранит метод поиска, который будет использоваться для поиска K ближайших соседей. Подробнее...
unsigned int number_of_neighbours_ {14}
Хранит количество соседей, которых нужно найти. Подробнее...
bool graph_is_valid_ {false}
Указывает, является ли граф допустимым. Подробнее...
std::vector< PointT, Eigen::aligned_allocator< PointT > > foreground_points_ {}
Хранит точки, которые заведомо находятся на переднем плане. Подробнее...
std::vector< PointT, Eigen::aligned_allocator< PointT > > background_points_ {}
Хранит точки, которые заведомо находятся на заднем плане. Подробнее...
std::vector< pcl::PointIndices > clusters_ {}
После сегментации будет содержать сегменты. Подробнее...
mGraphPtr graph_ {nullptr}
Хранит граф для поиска максимального потока. Подробнее...
std::shared_ptr< CapacityMap > capacity_ {nullptr}
Хранит пропускную способность каждого ребра графа. Подробнее...
std::shared_ptr< ReverseEdgeMap > reverse_edges_ {nullptr}
Хранит обратные рёбра для каждого ребра графа. Подробнее...
std::vector< VertexDescriptor > vertices_ {}
Хранит вершины графа. Подробнее...
std::vector< std::set< int > > edge_marker_ {}
Хранит сведения о рёбрах, добавленных в граф. Подробнее...
VertexDescriptor source_ {}
Хранит вершину, служащую источником. Подробнее...
VertexDescriptor sink_ {}
Хранит вершину, служащую стоком. Подробнее...
double max_flow_ {0.0}
Хранит значение максимального потока, вычисленное во время сегментации. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::PCLBase< PointT >
PointCloudConstPtr input_
Входной набор данных облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор используемых индексов точек. Подробнее...
bool use_indices_
Установите значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, мы создаём набор фиктивных индексов, соответствующий входному объекту PointCloud. Подробнее...

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

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

Этот класс реализует алгоритм сегментации на основе минимального разреза графа.

Описание алгоритма приведено в статье: «Сегментация облаков точек на основе минимального разреза»

Автор
: Aleksey Golovinskiy и Thomas Funkhouser.

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

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

CapacityMap

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::CapacityMap = boost::property_map< mGraph, boost::edge_capacity_t >::type

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

EdgeDescriptor

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::EdgeDescriptor = boost::graph_traits<mGraph>::edge_descriptor

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

IndexMap

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::IndexMap = boost::property_map< mGraph, boost::vertex_index_t >::type

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

InEdgeIterator

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::InEdgeIterator = boost::graph_traits<mGraph>::in_edge_iterator

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

KdTree

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::KdTree = pcl::search::Search<PointT>

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

KdTreePtr

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::KdTreePtr = typename KdTree::Ptr

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

mGraph

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::mGraph = boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS, boost::property< boost::vertex_name_t, std::string, boost::property< boost::vertex_index_t, long, boost::property< boost::vertex_color_t, boost::default_color_type, boost::property< boost::vertex_distance_t, long, boost::property< boost::vertex_predecessor_t, Traits::edge_descriptor > > > > >, boost::property< boost::edge_capacity_t, double, boost::property< boost::edge_residual_capacity_t, double, boost::property< boost::edge_reverse_t, Traits::edge_descriptor > > > >

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

mGraphPtr

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::mGraphPtr = shared_ptr<mGraph>

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

OutEdgeIterator

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::OutEdgeIterator = boost::graph_traits<mGraph>::out_edge_iterator

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

PointCloud

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::PointCloud = pcl::PointCloud<PointT>

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

PointCloudConstPtr

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::PointCloudConstPtr = typename PointCloud::ConstPtr

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

ResidualCapacityMap

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::ResidualCapacityMap = boost::property_map< mGraph, boost::edge_residual_capacity_t >::type

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

ReverseEdgeMap

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::ReverseEdgeMap = boost::property_map< mGraph, boost::edge_reverse_t>::type

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

Traits

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::Traits = boost::adjacency_list_traits< boost::vecS, boost::vecS, boost::directedS >

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

VertexDescriptor

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::VertexDescriptor = Traits::vertex_descriptor

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

VertexIterator

template<typename PointT >
using pcl::MinCutSegmentation< PointT >::VertexIterator = boost::graph_traits<mGraph>::vertex_iterator

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

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

MinCutSegmentation()

template<typename PointT >
pcl::MinCutSegmentation< PointT >::MinCutSegmentation ( )
default

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

~MinCutSegmentation()

template<typename PointT >
pcl::MinCutSegmentation< PointT >::~MinCutSegmentation
override

Деструктор, освобождающий память.

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

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

addEdge()

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::addEdge ( int source,
int target,
double weight
)
protected

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

Параметры
[in] source индекс исходной точки ребра
[in] target индекс целевой точки ребра
[in] weight вес, который будет присвоен ребру (source, target)

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

assembleLabels()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::assembleLabels ( ResidualCapacityMap & residual_capacity )
protected

Этот метод анализирует остаточную сеть и присваивает метку каждой точке облака.

Параметры
[in] residual_capacity остаточная сеть, полученная в ходе сегментации

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

Ссылки: pcl::PointIndices::indices.

buildGraph()

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::buildGraph
protected

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

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

calculateBinaryPotential()

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::calculateBinaryPotential ( int source,
int target
) const
protected

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

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

Параметры
[in] source индекс исходной точки ребра
[in] target индекс целевой точки ребра

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

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

calculateUnaryPotential()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::calculateUnaryPotential ( int point,
double & source_weight,
double & sink_weight
) const
protected

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

Иными словами, вычисляет веса рёбер (source, point) и (point, sink).

Параметры
[in] point индекс точки, для которой будут вычислены веса
[out] source_weight вычисленный вес ребра (source, point)
[out] sink_weight вычисленный вес ребра (point, sink)

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

extract()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::extract ( std::vector< pcl::PointIndices > & clusters )

Этот метод запускает алгоритм сегментации и возвращает кластеры, полученные в ходе сегментации.

Индексы точек, принадлежащих объекту, будут сохранены в кластере с индексом 1, остальные индексы — в кластере с индексом 0.

Параметры
[out] clusters полученные кластеры. Каждый кластер представляет собой массив индексов точек.

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

getBackgroundPoints()

template<typename PointT >
std::vector< PointT, Eigen::aligned_allocator< PointT > > pcl::MinCutSegmentation< PointT >::getBackgroundPoints

Возвращает точки, которые должны принадлежать фону.

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

getColoredCloud()

template<typename PointT >
pcl::PointCloud< pcl::PointXYZRGB >::Ptr pcl::MinCutSegmentation< PointT >::getColoredCloud

Возвращает раскрашенное облако.

Точки, принадлежащие объекту, имеют одинаковый цвет.

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

Ссылки: pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points и pcl::PointCloud< PointT >::width.

getForegroundPoints()

template<typename PointT >
std::vector< PointT, Eigen::aligned_allocator< PointT > > pcl::MinCutSegmentation< PointT >::getForegroundPoints

Возвращает точки, которые должны принадлежать переднему плану.

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

getGraph()

template<typename PointT >
pcl::MinCutSegmentation< PointT >::mGraphPtr pcl::MinCutSegmentation< PointT >::getGraph

Возвращает граф, построенный для поиска минимального разреза.

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

getMaxFlow()

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::getMaxFlow

Возвращает значение потока, вычисленное во время сегментации.

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

getNumberOfNeighbours()

template<typename PointT >
unsigned int pcl::MinCutSegmentation< PointT >::getNumberOfNeighbours

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

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

getRadius()

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::getRadius

Возвращает радиус до фона.

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

getSearchMethod()

template<typename PointT >
pcl::MinCutSegmentation< PointT >::KdTreePtr pcl::MinCutSegmentation< PointT >::getSearchMethod

Возвращает метод поиска, используемый для поиска KNN.

Граф строится таким образом, что содержит рёбра, соединяющие точки с их KNN.

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

getSigma()

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::getSigma

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

Дополнительную информацию см. в статье.

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

getSourceWeight()

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::getSourceWeight

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

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

recalculateBinaryPotentials()

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::recalculateBinaryPotentials
protected

Этот метод повторно вычисляет бинарные потенциалы (стоимость сглаживания) при внесении изменений, вместо создания нового графа.

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

recalculateUnaryPotentials()

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::recalculateUnaryPotentials

Этот метод повторно вычисляет унарные потенциалы (стоимость данных) при внесении изменений, вместо создания нового графа.

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

setBackgroundPoints()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setBackgroundPoints ( typename pcl::PointCloud< PointT >::Ptr background_points )

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

Параметры
[in] background_points облако точек, содержащее точки фона.

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

Ссылки: pcl::PointCloud< PointT >::cbegin() и pcl::PointCloud< PointT >::cend().

setForegroundPoints()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setForegroundPoints ( typename pcl::PointCloud< PointT >::Ptr foreground_points )

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

Параметры
[in] foreground_points облако точек, содержащее точки переднего плана. Необходимо указать как минимум одну точку.

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

Ссылки: pcl::PointCloud< PointT >::cbegin() и pcl::PointCloud< PointT >::cend().

setInputCloud()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setInputCloud ( const PointCloudConstPtr & cloud )
overridevirtual

Этот метод просто задаёт входное облако точек.

Параметры
[in] cloud константный shared-указатель boost на PointCloud

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

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

setNumberOfNeighbours()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setNumberOfNeighbours ( unsigned int neighbour_number )

Позволяет задать количество соседей для поиска.

Параметры
[in] neighbour_number новое количество соседей

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

setRadius()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setRadius ( double radius )

Позволяет задать радиус до фона.

Параметры
[in] radius новый радиус до фона

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

setSearchMethod()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setSearchMethod ( const KdTreePtr & tree )

Позволяет задать метод поиска K ближайших соседей.

Граф строится так, чтобы содержать рёбра, соединяющие точку с её K ближайшими соседями.

Параметры
[in] tree метод поиска, который будет использоваться для поиска K ближайших соседей.

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

setSigma()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setSigma ( double sigma )

Позволяет задать значение нормализации для бинарных потенциалов, описанных в статье.

Параметры
[in] sigma новое значение нормализации

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

setSourceWeight()

template<typename PointT >
void pcl::MinCutSegmentation< PointT >::setSourceWeight ( double weight )

Позволяет задать вес рёбер, исходящих из источника.

Каждое ребро, исходящее из вершины-источника, будет иметь этот вес.

Параметры
[in] weight новый вес

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

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

background_points_

template<typename PointT >
std::vector<PointT, Eigen::aligned_allocator<PointT> > pcl::MinCutSegmentation< PointT >::background_points_ {}
protected

Хранит точки, которые заведомо принадлежат фону.

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

binary_potentials_are_valid_

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::binary_potentials_are_valid_ {false}
protected

Указывает, являются ли бинарные потенциалы действительными.

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

capacity_

template<typename PointT >
std::shared_ptr<CapacityMap> pcl::MinCutSegmentation< PointT >::capacity_ {nullptr}
protected

Хранит пропускную способность каждого ребра графа.

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

clusters_

template<typename PointT >
std::vector<pcl::PointIndices> pcl::MinCutSegmentation< PointT >::clusters_ {}
protected

После сегментации здесь будут храниться сегменты.

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

edge_marker_

template<typename PointT >
std::vector< std::set<int> > pcl::MinCutSegmentation< PointT >::edge_marker_ {}
protected

Хранит информацию о рёбрах, добавленных в граф.

Используется для предотвращения появления дублирующихся рёбер.

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

epsilon_

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::epsilon_ {0.0001}
protected

Используется для сравнения чисел с плавающей точкой.

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

foreground_points_

template<typename PointT >
std::vector<PointT, Eigen::aligned_allocator<PointT> > pcl::MinCutSegmentation< PointT >::foreground_points_ {}
protected

Хранит точки, которые заведомо принадлежат переднему плану.

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

graph_

template<typename PointT >
mGraphPtr pcl::MinCutSegmentation< PointT >::graph_ {nullptr}
protected

Хранит граф для поиска максимального потока.

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

graph_is_valid_

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::graph_is_valid_ {false}
protected

Указывает, является ли граф действительным.

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

inverse_sigma_

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::inverse_sigma_ {16.0}
protected

Хранит коэффициент сигма.

Используется для вычисления гладких стоимостей. Дополнительную информацию см. в статье.

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

max_flow_

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::max_flow_ {0.0}
protected

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

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

number_of_neighbours_

template<typename PointT >
unsigned int pcl::MinCutSegmentation< PointT >::number_of_neighbours_ {14}
protected

Хранит количество соседей для поиска.

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

radius_

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::radius_ {16.0}
protected

Хранит расстояние до фона.

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

reverse_edges_

template<typename PointT >
std::shared_ptr<ReverseEdgeMap> pcl::MinCutSegmentation< PointT >::reverse_edges_ {nullptr}
protected

Хранит обратные рёбра для каждого ребра графа.

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

search_

template<typename PointT >
KdTreePtr pcl::MinCutSegmentation< PointT >::search_ {nullptr}
protected

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

Соседи используются для построения графа.

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

sink_

template<typename PointT >
VertexDescriptor pcl::MinCutSegmentation< PointT >::sink_ {}
protected

Хранит вершину, выступающую в роли стока.

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

source_

template<typename PointT >
VertexDescriptor pcl::MinCutSegmentation< PointT >::source_ {}
protected

Хранит вершину, выступающую в роли источника.

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

source_weight_

template<typename PointT >
double pcl::MinCutSegmentation< PointT >::source_weight_ {0.8}
protected

Хранит вес каждого ребра, исходящего из вершины-источника.

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

unary_potentials_are_valid_

template<typename PointT >
bool pcl::MinCutSegmentation< PointT >::unary_potentials_are_valid_ {false}
protected

Указывает, являются ли унарные потенциалы действительными.

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

vertices_

template<typename PointT >
std::vector< VertexDescriptor > pcl::MinCutSegmentation< PointT >::vertices_ {}
protected

Хранит вершины графа.

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


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

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

Spec-Zone.ru

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