IRI ROS Specific Driver Class. More...
#include <finddd_alg.h>
Public Types | |
typedef iri_finddd::FindddConfig | Config |
define config type | |
Public Member Functions | |
void | compute_ndescs_integral_spatial_interpolation (pcl::PointCloud< pcl::PointXYZ > &cloud, iri_perception_msgs::DescriptorSet &descriptor_set) |
compute all descriptors with spatial bin support of image using an integral image | |
void | compute_radius_inf () |
Determine vote influence cutoff. | |
int | compute_total_bins () |
Set total descriptor bins. | |
void | config_update (Config &new_cfg, uint32_t level=0) |
config update | |
FindddAlgorithm (void) | |
constructor | |
void | lock (void) |
Lock Algorithm. | |
void | set_centroids_file (std::string new_centroids_file) |
Set centroids file. | |
int | set_desc_patch_radius (int r) |
Set patch radius. | |
int | set_num_side_spatial_bins (int nb) |
Set number of spatial bins (side) | |
void | set_positions_file (std::string new_positions_file) |
Set positions file. | |
int | set_sample_each (int s) |
Set sample each. | |
bool | try_enter (void) |
Tries Access to Algorithm. | |
void | unlock (void) |
Unlock Algorithm. | |
void | update_centroids () |
~FindddAlgorithm (void) | |
Destructor. | |
Public Attributes | |
Config | config_ |
config variable | |
Protected Attributes | |
CMutex | alg_mutex_ |
define config type | |
std::string | centroids_file_ |
std::vector< int > | desc_compute_positionsX_ |
std::vector< int > | desc_compute_positionsY_ |
uint | desc_num_orient_bins_ |
uint | desc_num_side_spatial_bins_ |
uint | desc_num_total_bins_ |
uint | desc_patch_radius_ |
uint | margin_ |
uint | normalize_desc_ |
uint | nt_ |
std::vector< float > | orient_bin_centers_x_ |
std::vector< float > | orient_bin_centers_y_ |
std::vector< float > | orient_bin_centers_z_ |
std::string | positions_file_ |
float | radius_inf_ |
uint | sample_each_ |
uint | use_soft_voting_ |
IRI ROS Specific Driver Class.
Definition at line 62 of file finddd_alg.h.
typedef iri_finddd::FindddConfig FindddAlgorithm::Config |
define config type
Define a Config type with the FindddConfig. All driver implementations will then use the same variable type Config.
Definition at line 103 of file finddd_alg.h.
FindddAlgorithm::FindddAlgorithm | ( | void | ) |
constructor
In this constructor parameters related to the specific driver can be initalized. Those parameters can be also set in the openDriver() function. Attributes from the main node driver class IriBaseDriver such as loop_rate, may be also overload here.
Definition at line 202 of file finddd_alg.cpp.
FindddAlgorithm::~FindddAlgorithm | ( | void | ) |
Destructor.
This destructor is called when the object is about to be destroyed.
Definition at line 227 of file finddd_alg.cpp.
void FindddAlgorithm::compute_ndescs_integral_spatial_interpolation | ( | pcl::PointCloud< pcl::PointXYZ > & | cloud, |
iri_perception_msgs::DescriptorSet & | descriptor_set | ||
) |
compute all descriptors with spatial bin support of image using an integral image
Main interface to compute normal descriptors with spatial support from a point cloud
Definition at line 274 of file finddd_alg.cpp.
void FindddAlgorithm::compute_radius_inf | ( | ) | [inline] |
Determine vote influence cutoff.
Function to compute minimum distance between bin 0 and the rest of bins, for vote interpolation.
Definition at line 309 of file finddd_alg.h.
int FindddAlgorithm::compute_total_bins | ( | ) | [inline] |
Set total descriptor bins.
Given the current parameters, this function computes the total number of bins of the descriptor.
Definition at line 169 of file finddd_alg.h.
void FindddAlgorithm::config_update | ( | Config & | new_cfg, |
uint32_t | level = 0 |
||
) |
config update
In this function the driver parameters must be updated with the input config variable. Then the new configuration state will be stored in the Config attribute.
new_cfg | the new driver configuration state |
level | level in which the update is taken place |
Definition at line 231 of file finddd_alg.cpp.
void FindddAlgorithm::lock | ( | void | ) | [inline] |
void FindddAlgorithm::set_centroids_file | ( | std::string | new_centroids_file | ) | [inline] |
Set centroids file.
Function used to load the bin centers from a file
Definition at line 226 of file finddd_alg.h.
int FindddAlgorithm::set_desc_patch_radius | ( | int | r | ) | [inline] |
Set patch radius.
This function allows to change the patch radius of the descriptor, and triggers all actions dependant on them.
Definition at line 200 of file finddd_alg.h.
int FindddAlgorithm::set_num_side_spatial_bins | ( | int | nb | ) | [inline] |
Set number of spatial bins (side)
This function allows to change the number of spatial bins of the descriptor, and triggers all actions dependant on them.
Definition at line 185 of file finddd_alg.h.
void FindddAlgorithm::set_positions_file | ( | std::string | new_positions_file | ) | [inline] |
Set positions file.
Function used to load the positions of the image where descriptors will be computed from a list in a file.
Definition at line 272 of file finddd_alg.h.
int FindddAlgorithm::set_sample_each | ( | int | s | ) | [inline] |
Set sample each.
Function used to change the spacing between each sampled position of the grid for descriptor computation.
Definition at line 214 of file finddd_alg.h.
bool FindddAlgorithm::try_enter | ( | void | ) | [inline] |
Tries Access to Algorithm.
Tries access to Algorithm
Definition at line 144 of file finddd_alg.h.
void FindddAlgorithm::unlock | ( | void | ) | [inline] |
Unlock Algorithm.
Unlocks access to the Algorithm class
Definition at line 135 of file finddd_alg.h.
void FindddAlgorithm::update_centroids | ( | ) | [inline] |
Definition at line 232 of file finddd_alg.h.
CMutex FindddAlgorithm::alg_mutex_ [protected] |
define config type
Define a Config type with the FindddConfig. All driver implementations will then use the same variable type Config.
Definition at line 71 of file finddd_alg.h.
std::string FindddAlgorithm::centroids_file_ [protected] |
Definition at line 87 of file finddd_alg.h.
config variable
This variable has all the driver parameters defined in the cfg config file. Is updated everytime function config_update() is called.
Definition at line 111 of file finddd_alg.h.
std::vector<int> FindddAlgorithm::desc_compute_positionsX_ [protected] |
Definition at line 80 of file finddd_alg.h.
std::vector<int> FindddAlgorithm::desc_compute_positionsY_ [protected] |
Definition at line 81 of file finddd_alg.h.
uint FindddAlgorithm::desc_num_orient_bins_ [protected] |
Definition at line 83 of file finddd_alg.h.
uint FindddAlgorithm::desc_num_side_spatial_bins_ [protected] |
Definition at line 84 of file finddd_alg.h.
uint FindddAlgorithm::desc_num_total_bins_ [protected] |
Definition at line 85 of file finddd_alg.h.
uint FindddAlgorithm::desc_patch_radius_ [protected] |
Definition at line 86 of file finddd_alg.h.
uint FindddAlgorithm::margin_ [protected] |
Definition at line 94 of file finddd_alg.h.
uint FindddAlgorithm::normalize_desc_ [protected] |
Definition at line 89 of file finddd_alg.h.
uint FindddAlgorithm::nt_ [protected] |
Definition at line 74 of file finddd_alg.h.
std::vector<float> FindddAlgorithm::orient_bin_centers_x_ [protected] |
Definition at line 77 of file finddd_alg.h.
std::vector<float> FindddAlgorithm::orient_bin_centers_y_ [protected] |
Definition at line 78 of file finddd_alg.h.
std::vector<float> FindddAlgorithm::orient_bin_centers_z_ [protected] |
Definition at line 79 of file finddd_alg.h.
std::string FindddAlgorithm::positions_file_ [protected] |
Definition at line 88 of file finddd_alg.h.
float FindddAlgorithm::radius_inf_ [protected] |
Definition at line 82 of file finddd_alg.h.
uint FindddAlgorithm::sample_each_ [protected] |
Definition at line 93 of file finddd_alg.h.
uint FindddAlgorithm::use_soft_voting_ [protected] |
Definition at line 90 of file finddd_alg.h.