SACSegmentation represents the Nodelet segmentation class for Sample Consensus methods and models, in the sense that it just creates a Nodelet wrapper for generic-purpose SAC-based segmentation. More...
#include <sac_segmentation.h>
Public Member Functions | |
std::string | getInputTFframe () |
Get the TF frame the input PointCloud should be transformed into before processing. | |
std::string | getOutputTFframe () |
Get the TF frame the PointCloud should be transformed into after processing. | |
SACSegmentation () | |
Constructor. | |
void | setInputTFframe (std::string tf_frame) |
Set the input TF frame the data should be transformed into before processing, if input.header.frame_id is different. | |
void | setOutputTFframe (std::string tf_frame) |
Set the output TF frame the data should be transformed into after processing. | |
Protected Member Functions | |
void | config_callback (SACSegmentationConfig &config, uint32_t level) |
Dynamic reconfigure callback. | |
void | indices_callback (const PointIndicesConstPtr &indices) |
Indices callback. Used when latched_indices_ is set. | |
void | input_callback (const PointCloudConstPtr &input) |
Input callback. Used when latched_indices_ is set. | |
void | input_indices_callback (const PointCloudConstPtr &cloud, const PointIndicesConstPtr &indices) |
Input point cloud callback. Used when use_indices is set. | |
virtual void | onInit () |
Nodelet initialization routine. | |
Protected Attributes | |
PointIndices | indices_ |
Pointer to a set of indices stored internally. (used when latched_indices_ is set). | |
int | min_inliers_ |
message_filters::PassThrough < PointIndices > | nf_pi_ |
Null passthrough filter, used for pushing empty elements in the synchronizer. | |
ros::Publisher | pub_indices_ |
The output PointIndices publisher. | |
ros::Publisher | pub_model_ |
The output ModelCoefficients publisher. | |
boost::shared_ptr < dynamic_reconfigure::Server < SACSegmentationConfig > > | srv_ |
Pointer to a dynamic reconfigure service. | |
ros::Subscriber | sub_input_ |
The input PointCloud subscriber. | |
std::string | tf_input_frame_ |
The input TF frame the data should be transformed into, if input.header.frame_id is different. | |
std::string | tf_input_orig_frame_ |
The original data input TF frame. | |
std::string | tf_output_frame_ |
The output TF frame the data should be transformed into, if input.header.frame_id is different. | |
Private Types | |
typedef pcl::PointCloud < pcl::PointXYZ > | PointCloud |
typedef PointCloud::ConstPtr | PointCloudConstPtr |
typedef PointCloud::Ptr | PointCloudPtr |
Private Attributes | |
pcl::SACSegmentation < pcl::PointXYZ > | impl_ |
The PCL implementation used. | |
boost::mutex | mutex_ |
Internal mutex. | |
boost::shared_ptr < message_filters::Synchronizer < sync_policies::ApproximateTime < PointCloud, PointIndices > > > | sync_input_indices_a_ |
boost::shared_ptr < message_filters::Synchronizer < sync_policies::ExactTime < PointCloud, PointIndices > > > | sync_input_indices_e_ |
Synchronized input, and indices. |
SACSegmentation represents the Nodelet segmentation class for Sample Consensus methods and models, in the sense that it just creates a Nodelet wrapper for generic-purpose SAC-based segmentation.
Definition at line 61 of file sac_segmentation.h.
typedef pcl::PointCloud<pcl::PointXYZ> pcl_ros::SACSegmentation::PointCloud [private] |
Reimplemented from pcl_ros::PCLNodelet.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 63 of file sac_segmentation.h.
typedef PointCloud::ConstPtr pcl_ros::SACSegmentation::PointCloudConstPtr [private] |
Reimplemented from pcl_ros::PCLNodelet.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 65 of file sac_segmentation.h.
typedef PointCloud::Ptr pcl_ros::SACSegmentation::PointCloudPtr [private] |
Reimplemented from pcl_ros::PCLNodelet.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 64 of file sac_segmentation.h.
pcl_ros::SACSegmentation::SACSegmentation | ( | ) | [inline] |
Constructor.
Definition at line 69 of file sac_segmentation.h.
void pcl_ros::SACSegmentation::config_callback | ( | SACSegmentationConfig & | config, |
uint32_t | level | ||
) | [protected] |
Dynamic reconfigure callback.
config | the config object |
level | the dynamic reconfigure level |
Definition at line 170 of file sac_segmentation.cpp.
std::string pcl_ros::SACSegmentation::getInputTFframe | ( | ) | [inline] |
Get the TF frame the input PointCloud should be transformed into before processing.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 77 of file sac_segmentation.h.
std::string pcl_ros::SACSegmentation::getOutputTFframe | ( | ) | [inline] |
Get the TF frame the PointCloud should be transformed into after processing.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 85 of file sac_segmentation.h.
void pcl_ros::SACSegmentation::indices_callback | ( | const PointIndicesConstPtr & | indices | ) | [inline, protected] |
Indices callback. Used when latched_indices_ is set.
indices | the pointer to the input point cloud indices |
Definition at line 141 of file sac_segmentation.h.
void pcl_ros::SACSegmentation::input_callback | ( | const PointCloudConstPtr & | input | ) | [inline, protected] |
Input callback. Used when latched_indices_ is set.
input | the pointer to the input point cloud |
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 150 of file sac_segmentation.h.
void pcl_ros::SACSegmentation::input_indices_callback | ( | const PointCloudConstPtr & | cloud, |
const PointIndicesConstPtr & | indices | ||
) | [protected] |
Input point cloud callback. Used when use_indices is set.
cloud | the pointer to the input point cloud |
indices | the pointer to the input point cloud indices |
DEBUG
Definition at line 243 of file sac_segmentation.cpp.
void pcl_ros::SACSegmentation::onInit | ( | ) | [protected, virtual] |
Nodelet initialization routine.
Reimplemented from pcl_ros::PCLNodelet.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 44 of file sac_segmentation.cpp.
void pcl_ros::SACSegmentation::setInputTFframe | ( | std::string | tf_frame | ) | [inline] |
Set the input TF frame the data should be transformed into before processing, if input.header.frame_id is different.
tf_frame | the TF frame the input PointCloud should be transformed into before processing |
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 74 of file sac_segmentation.h.
void pcl_ros::SACSegmentation::setOutputTFframe | ( | std::string | tf_frame | ) | [inline] |
Set the output TF frame the data should be transformed into after processing.
tf_frame | the TF frame the PointCloud should be transformed into after processing |
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 82 of file sac_segmentation.h.
pcl::SACSegmentation<pcl::PointXYZ> pcl_ros::SACSegmentation::impl_ [private] |
The PCL implementation used.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 163 of file sac_segmentation.h.
PointIndices pcl_ros::SACSegmentation::indices_ [protected] |
Pointer to a set of indices stored internally. (used when latched_indices_ is set).
Definition at line 135 of file sac_segmentation.h.
int pcl_ros::SACSegmentation::min_inliers_ [protected] |
Definition at line 89 of file sac_segmentation.h.
boost::mutex pcl_ros::SACSegmentation::mutex_ [private] |
Internal mutex.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 160 of file sac_segmentation.h.
Null passthrough filter, used for pushing empty elements in the synchronizer.
Definition at line 115 of file sac_segmentation.h.
ros::Publisher pcl_ros::SACSegmentation::pub_indices_ [protected] |
The output PointIndices publisher.
Definition at line 93 of file sac_segmentation.h.
ros::Publisher pcl_ros::SACSegmentation::pub_model_ [protected] |
The output ModelCoefficients publisher.
Definition at line 96 of file sac_segmentation.h.
boost::shared_ptr<dynamic_reconfigure::Server<SACSegmentationConfig> > pcl_ros::SACSegmentation::srv_ [protected] |
Pointer to a dynamic reconfigure service.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 102 of file sac_segmentation.h.
ros::Subscriber pcl_ros::SACSegmentation::sub_input_ [protected] |
The input PointCloud subscriber.
Definition at line 99 of file sac_segmentation.h.
boost::shared_ptr<message_filters::Synchronizer<sync_policies::ApproximateTime<PointCloud, PointIndices> > > pcl_ros::SACSegmentation::sync_input_indices_a_ [private] |
Definition at line 167 of file sac_segmentation.h.
boost::shared_ptr<message_filters::Synchronizer<sync_policies::ExactTime<PointCloud, PointIndices> > > pcl_ros::SACSegmentation::sync_input_indices_e_ [private] |
Synchronized input, and indices.
Definition at line 166 of file sac_segmentation.h.
std::string pcl_ros::SACSegmentation::tf_input_frame_ [protected] |
The input TF frame the data should be transformed into, if input.header.frame_id is different.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 105 of file sac_segmentation.h.
std::string pcl_ros::SACSegmentation::tf_input_orig_frame_ [protected] |
The original data input TF frame.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 108 of file sac_segmentation.h.
std::string pcl_ros::SACSegmentation::tf_output_frame_ [protected] |
The output TF frame the data should be transformed into, if input.header.frame_id is different.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 111 of file sac_segmentation.h.