Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
region_growing< T, T1 > Class Template Reference

region growing based algorithm. More...

#include <region_growing.h>

Public Member Functions

void filter ()
 simply runs the algorithm More...
 
vector< int > get_region_indices (void)
 Provide acces to the result indices. More...
 
PointIndices get_region_point_indices (void)
 Provide acces to the result indices. More...
 
 region_growing ()
 
void set_input_cloud (typename PointCloud< T >::Ptr cloud_in)
 Sets the input point cloud data. More...
 
void set_input_seeds (typename PointCloud< T1 >::Ptr seeds_in)
 Sets the input point cloud seeds. More...
 
 ~region_growing ()
 

Public Attributes

int min_neighbors
 Number of neighbors to consider the point. More...
 
float radius
 The radius for search. More...
 

Private Member Functions

void extract_region_indices ()
 extract region_indices from cloud More...
 
void process_flags ()
 Process flags to check if it is ok to run. More...
 

Private Attributes

PointCloud< T >::Ptr cloud
 Input cloud data for searching. More...
 
TYPE_flags flags
 Flags set. More...
 
PointCloud< T > region
 Output region cloud data. More...
 
std::vector< int > region_indices
 indices from a region More...
 
PointIndices region_point_indices
 Point indices from a region. More...
 
std::vector< int > search_list
 search indices list More...
 
PointCloud< T1 >::Ptr seeds
 Input seeds for starting points. More...
 

Detailed Description

template<class T, class T1>
class region_growing< T, T1 >

region growing based algorithm.

Definition at line 75 of file region_growing.h.

Constructor & Destructor Documentation

template<class T, class T1>
region_growing< T, T1 >::region_growing ( )
inline

Definition at line 78 of file region_growing.h.

template<class T, class T1>
region_growing< T, T1 >::~region_growing ( )
inline

Definition at line 90 of file region_growing.h.

Member Function Documentation

template<class T, class T1>
void region_growing< T, T1 >::extract_region_indices ( )
private

extract region_indices from cloud

template<class T , class T1 >
void region_growing< T, T1 >::filter ( )

simply runs the algorithm

Step 0 check if we are ok to run the algorithm

STEP 1 Create an empty queue indice list

STEP 2 Create a kdtree representation of cloud input

STEP i Create a bool vector with the indice points processed

STEP 3 Let's make a fisrt search on all seed points

STEP 4 The queue list will be all the points on region_indices in the begining

STEP 4.1 Make a search on each point and check what points are already processed and if not add it to queue list

4.1.2 For each neighbor found do the following

4.1.3 Check if the point is already processed and if not added to queue list

Setup flags and reset pointers

Definition at line 107 of file region_growing.hpp.

template<class T , class T1 >
vector< int > region_growing< T, T1 >::get_region_indices ( void  )

Provide acces to the result indices.

Definition at line 76 of file region_growing.hpp.

template<class T , class T1 >
PointIndices region_growing< T, T1 >::get_region_point_indices ( void  )

Provide acces to the result indices.

Definition at line 89 of file region_growing.hpp.

template<class T , class T1 >
void region_growing< T, T1 >::process_flags ( )
private

Process flags to check if it is ok to run.

Definition at line 59 of file region_growing.hpp.

template<class T , class T1 >
void region_growing< T, T1 >::set_input_cloud ( typename PointCloud< T >::Ptr  cloud_in)

Sets the input point cloud data.

Definition at line 43 of file region_growing.hpp.

template<class T , class T1 >
void region_growing< T, T1 >::set_input_seeds ( typename PointCloud< T1 >::Ptr  seeds_in)

Sets the input point cloud seeds.

Definition at line 51 of file region_growing.hpp.

Member Data Documentation

template<class T, class T1>
PointCloud<T>::Ptr region_growing< T, T1 >::cloud
private

Input cloud data for searching.

Definition at line 139 of file region_growing.h.

template<class T, class T1>
TYPE_flags region_growing< T, T1 >::flags
private

Flags set.

Definition at line 127 of file region_growing.h.

template<class T, class T1>
int region_growing< T, T1 >::min_neighbors

Number of neighbors to consider the point.

Definition at line 102 of file region_growing.h.

template<class T, class T1>
float region_growing< T, T1 >::radius

The radius for search.

Definition at line 99 of file region_growing.h.

template<class T, class T1>
PointCloud<T> region_growing< T, T1 >::region
private

Output region cloud data.

Definition at line 145 of file region_growing.h.

template<class T, class T1>
std::vector<int> region_growing< T, T1 >::region_indices
private

indices from a region

Definition at line 130 of file region_growing.h.

template<class T, class T1>
PointIndices region_growing< T, T1 >::region_point_indices
private

Point indices from a region.

Definition at line 133 of file region_growing.h.

template<class T, class T1>
std::vector<int> region_growing< T, T1 >::search_list
private

search indices list

Definition at line 136 of file region_growing.h.

template<class T, class T1>
PointCloud<T1>::Ptr region_growing< T, T1 >::seeds
private

Input seeds for starting points.

Definition at line 142 of file region_growing.h.


The documentation for this class was generated from the following files:


pointcloud_segmentation
Author(s): Tiago Talhada
autogenerated on Mon Mar 2 2015 01:32:39