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 59 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 52 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 54 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 53 of file sac_segmentation.h.
pcl_ros::SACSegmentation::SACSegmentation | ( | ) | [inline] |
Constructor.
Definition at line 58 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 169 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 66 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 74 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 130 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 139 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 242 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 43 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 63 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 71 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 152 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 124 of file sac_segmentation.h.
int pcl_ros::SACSegmentation::min_inliers_ [protected] |
Definition at line 78 of file sac_segmentation.h.
boost::mutex pcl_ros::SACSegmentation::mutex_ [private] |
Internal mutex.
Reimplemented in pcl_ros::SACSegmentationFromNormals.
Definition at line 149 of file sac_segmentation.h.
Null passthrough filter, used for pushing empty elements in the synchronizer.
Definition at line 104 of file sac_segmentation.h.
ros::Publisher pcl_ros::SACSegmentation::pub_indices_ [protected] |
The output PointIndices publisher.
Definition at line 82 of file sac_segmentation.h.
ros::Publisher pcl_ros::SACSegmentation::pub_model_ [protected] |
The output ModelCoefficients publisher.
Definition at line 85 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 91 of file sac_segmentation.h.
ros::Subscriber pcl_ros::SACSegmentation::sub_input_ [protected] |
The input PointCloud subscriber.
Definition at line 88 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 156 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 155 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 94 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 97 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 100 of file sac_segmentation.h.