Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
jsk_pcl_ros::LineSegmentCollector Class Reference

#include <line_segment_collector.h>

Inheritance diagram for jsk_pcl_ros::LineSegmentCollector:
Inheritance graph
[legend]

Public Types

typedef jsk_pcl_ros::LineSegmentCollectorConfig Config
 
enum  RotateType { ROTATION_SPINDLE, ROTATION_TILT, ROTATION_TILT_TWO_WAY }
 
typedef message_filters::sync_policies::ExactTime< sensor_msgs::PointCloud2, jsk_recognition_msgs::ClusterPointIndices, jsk_recognition_msgs::ModelCoefficientsArray > SyncPolicy
 

Public Member Functions

 LineSegmentCollector ()
 
virtual ~LineSegmentCollector ()
 

Protected Member Functions

virtual void cleanupBuffers (const ros::Time &stamp)
 
virtual void collect (const sensor_msgs::PointCloud2::ConstPtr &cloud_msg, const jsk_recognition_msgs::ClusterPointIndices::ConstPtr &indices_msg, const jsk_recognition_msgs::ModelCoefficientsArray::ConstPtr &coefficients_msg)
 
virtual void collectFromBuffers (const std_msgs::Header &header, std::vector< LineSegment::Ptr > new_segments)
 
virtual void configCallback (Config &config, uint32_t level)
 
virtual LineSegmentCluster::Ptr lookupNearestSegment (LineSegment::Ptr segment)
 
virtual void onInit ()
 
virtual void publishBeforePlaneSegmentation (const std_msgs::Header &header, const pcl::PointCloud< pcl::PointXYZ >::Ptr cloud, const std::vector< pcl::PointIndices::Ptr > &connected_indices)
 
virtual void publishResult (const std_msgs::Header &header, pcl::PointCloud< pcl::PointXYZ >::Ptr cloud, std::vector< pcl::ModelCoefficients::Ptr > all_coefficients, std::vector< pcl::PointIndices::Ptr > all_indices)
 
virtual void subscribe ()
 
virtual void triggerCallback (const jsk_recognition_msgs::TimeRange::ConstPtr &trigger)
 
virtual void unsubscribe ()
 

Protected Attributes

TimeStampedVector< jsk_recognition_msgs::ModelCoefficientsArray::ConstPtr > coefficients_buffer_
 
jsk_topic_tools::TimeAccumulator connect_ac_
 
ros::Publisher debug_pub_inliers_before_plane_
 
double ewma_tau_
 
std::string fixed_frame_id_
 
TimeStampedVector< jsk_recognition_msgs::ClusterPointIndices::ConstPtr > indices_buffer_
 
boost::mutex mutex_
 
double outlier_threshold_
 
TimeStampedVector< sensor_msgs::PointCloud2::ConstPtr > pointclouds_buffer_
 
ros::Publisher pub_coefficients_
 
ros::Publisher pub_inliers_
 
ros::Publisher pub_point_cloud_
 
ros::Publisher pub_polygons_
 
RotateType rotate_type_
 
std::vector< LineSegmentCluster::Ptrsegment_clusters_
 
double segment_connect_normal_threshold_
 
TimeStampedVector< LineSegment::Ptrsegments_buffer_
 
boost::shared_ptr< dynamic_reconfigure::Server< Config > > srv_
 
message_filters::Subscriber< jsk_recognition_msgs::ModelCoefficientsArray > sub_coefficients_
 
message_filters::Subscriber< jsk_recognition_msgs::ClusterPointIndices > sub_indices_
 
message_filters::Subscriber< sensor_msgs::PointCloud2 > sub_input_
 
ros::Subscriber sub_trigger_
 
boost::shared_ptr< message_filters::Synchronizer< SyncPolicy > > sync_
 
jsk_recognition_msgs::TimeRange::ConstPtr time_range_
 

Detailed Description

Definition at line 138 of file line_segment_collector.h.

Member Typedef Documentation

◆ Config

typedef jsk_pcl_ros::LineSegmentCollectorConfig jsk_pcl_ros::LineSegmentCollector::Config

Definition at line 150 of file line_segment_collector.h.

◆ SyncPolicy

typedef message_filters::sync_policies::ExactTime< sensor_msgs::PointCloud2, jsk_recognition_msgs::ClusterPointIndices, jsk_recognition_msgs::ModelCoefficientsArray> jsk_pcl_ros::LineSegmentCollector::SyncPolicy

Definition at line 146 of file line_segment_collector.h.

Member Enumeration Documentation

◆ RotateType

Enumerator
ROTATION_SPINDLE 
ROTATION_TILT 
ROTATION_TILT_TWO_WAY 

Definition at line 147 of file line_segment_collector.h.

Constructor & Destructor Documentation

◆ LineSegmentCollector()

jsk_pcl_ros::LineSegmentCollector::LineSegmentCollector ( )
inline

Definition at line 141 of file line_segment_collector.h.

◆ ~LineSegmentCollector()

jsk_pcl_ros::LineSegmentCollector::~LineSegmentCollector ( )
virtual

Definition at line 164 of file line_segment_collector_nodelet.cpp.

Member Function Documentation

◆ cleanupBuffers()

void jsk_pcl_ros::LineSegmentCollector::cleanupBuffers ( const ros::Time stamp)
protectedvirtual

Definition at line 204 of file line_segment_collector_nodelet.cpp.

◆ collect()

void jsk_pcl_ros::LineSegmentCollector::collect ( const sensor_msgs::PointCloud2::ConstPtr &  cloud_msg,
const jsk_recognition_msgs::ClusterPointIndices::ConstPtr &  indices_msg,
const jsk_recognition_msgs::ModelCoefficientsArray::ConstPtr &  coefficients_msg 
)
protectedvirtual

Definition at line 352 of file line_segment_collector_nodelet.cpp.

◆ collectFromBuffers()

void jsk_pcl_ros::LineSegmentCollector::collectFromBuffers ( const std_msgs::Header header,
std::vector< LineSegment::Ptr new_segments 
)
protectedvirtual

Definition at line 279 of file line_segment_collector_nodelet.cpp.

◆ configCallback()

void jsk_pcl_ros::LineSegmentCollector::configCallback ( Config config,
uint32_t  level 
)
protectedvirtual

Definition at line 175 of file line_segment_collector_nodelet.cpp.

◆ lookupNearestSegment()

LineSegmentCluster::Ptr jsk_pcl_ros::LineSegmentCollector::lookupNearestSegment ( LineSegment::Ptr  segment)
protectedvirtual

Definition at line 247 of file line_segment_collector_nodelet.cpp.

◆ onInit()

void jsk_pcl_ros::LineSegmentCollector::onInit ( )
protectedvirtual

Definition at line 126 of file line_segment_collector_nodelet.cpp.

◆ publishBeforePlaneSegmentation()

void jsk_pcl_ros::LineSegmentCollector::publishBeforePlaneSegmentation ( const std_msgs::Header header,
const pcl::PointCloud< pcl::PointXYZ >::Ptr  cloud,
const std::vector< pcl::PointIndices::Ptr > &  connected_indices 
)
protectedvirtual

Definition at line 231 of file line_segment_collector_nodelet.cpp.

◆ publishResult()

void jsk_pcl_ros::LineSegmentCollector::publishResult ( const std_msgs::Header header,
pcl::PointCloud< pcl::PointXYZ >::Ptr  cloud,
std::vector< pcl::ModelCoefficients::Ptr >  all_coefficients,
std::vector< pcl::PointIndices::Ptr >  all_indices 
)
protectedvirtual

Definition at line 319 of file line_segment_collector_nodelet.cpp.

◆ subscribe()

void jsk_pcl_ros::LineSegmentCollector::subscribe ( )
protectedvirtual

Definition at line 183 of file line_segment_collector_nodelet.cpp.

◆ triggerCallback()

void jsk_pcl_ros::LineSegmentCollector::triggerCallback ( const jsk_recognition_msgs::TimeRange::ConstPtr &  trigger)
protectedvirtual

Definition at line 223 of file line_segment_collector_nodelet.cpp.

◆ unsubscribe()

void jsk_pcl_ros::LineSegmentCollector::unsubscribe ( )
protectedvirtual

Definition at line 196 of file line_segment_collector_nodelet.cpp.

Member Data Documentation

◆ coefficients_buffer_

TimeStampedVector<jsk_recognition_msgs::ModelCoefficientsArray::ConstPtr> jsk_pcl_ros::LineSegmentCollector::coefficients_buffer_
protected

Definition at line 204 of file line_segment_collector.h.

◆ connect_ac_

jsk_topic_tools::TimeAccumulator jsk_pcl_ros::LineSegmentCollector::connect_ac_
protected

Definition at line 194 of file line_segment_collector.h.

◆ debug_pub_inliers_before_plane_

ros::Publisher jsk_pcl_ros::LineSegmentCollector::debug_pub_inliers_before_plane_
protected

Definition at line 192 of file line_segment_collector.h.

◆ ewma_tau_

double jsk_pcl_ros::LineSegmentCollector::ewma_tau_
protected

Definition at line 208 of file line_segment_collector.h.

◆ fixed_frame_id_

std::string jsk_pcl_ros::LineSegmentCollector::fixed_frame_id_
protected

Definition at line 200 of file line_segment_collector.h.

◆ indices_buffer_

TimeStampedVector<jsk_recognition_msgs::ClusterPointIndices::ConstPtr> jsk_pcl_ros::LineSegmentCollector::indices_buffer_
protected

Definition at line 203 of file line_segment_collector.h.

◆ mutex_

boost::mutex jsk_pcl_ros::LineSegmentCollector::mutex_
protected

Definition at line 183 of file line_segment_collector.h.

◆ outlier_threshold_

double jsk_pcl_ros::LineSegmentCollector::outlier_threshold_
protected

Definition at line 213 of file line_segment_collector.h.

◆ pointclouds_buffer_

TimeStampedVector<sensor_msgs::PointCloud2::ConstPtr> jsk_pcl_ros::LineSegmentCollector::pointclouds_buffer_
protected

Definition at line 202 of file line_segment_collector.h.

◆ pub_coefficients_

ros::Publisher jsk_pcl_ros::LineSegmentCollector::pub_coefficients_
protected

Definition at line 190 of file line_segment_collector.h.

◆ pub_inliers_

ros::Publisher jsk_pcl_ros::LineSegmentCollector::pub_inliers_
protected

Definition at line 189 of file line_segment_collector.h.

◆ pub_point_cloud_

ros::Publisher jsk_pcl_ros::LineSegmentCollector::pub_point_cloud_
protected

Definition at line 188 of file line_segment_collector.h.

◆ pub_polygons_

ros::Publisher jsk_pcl_ros::LineSegmentCollector::pub_polygons_
protected

Definition at line 191 of file line_segment_collector.h.

◆ rotate_type_

RotateType jsk_pcl_ros::LineSegmentCollector::rotate_type_
protected

Definition at line 201 of file line_segment_collector.h.

◆ segment_clusters_

std::vector<LineSegmentCluster::Ptr> jsk_pcl_ros::LineSegmentCollector::segment_clusters_
protected

Definition at line 206 of file line_segment_collector.h.

◆ segment_connect_normal_threshold_

double jsk_pcl_ros::LineSegmentCollector::segment_connect_normal_threshold_
protected

Definition at line 207 of file line_segment_collector.h.

◆ segments_buffer_

TimeStampedVector<LineSegment::Ptr> jsk_pcl_ros::LineSegmentCollector::segments_buffer_
protected

Definition at line 205 of file line_segment_collector.h.

◆ srv_

boost::shared_ptr<dynamic_reconfigure::Server<Config> > jsk_pcl_ros::LineSegmentCollector::srv_
protected

Definition at line 193 of file line_segment_collector.h.

◆ sub_coefficients_

message_filters::Subscriber<jsk_recognition_msgs::ModelCoefficientsArray> jsk_pcl_ros::LineSegmentCollector::sub_coefficients_
protected

Definition at line 187 of file line_segment_collector.h.

◆ sub_indices_

message_filters::Subscriber<jsk_recognition_msgs::ClusterPointIndices> jsk_pcl_ros::LineSegmentCollector::sub_indices_
protected

Definition at line 186 of file line_segment_collector.h.

◆ sub_input_

message_filters::Subscriber<sensor_msgs::PointCloud2> jsk_pcl_ros::LineSegmentCollector::sub_input_
protected

Definition at line 185 of file line_segment_collector.h.

◆ sub_trigger_

ros::Subscriber jsk_pcl_ros::LineSegmentCollector::sub_trigger_
protected

Definition at line 195 of file line_segment_collector.h.

◆ sync_

boost::shared_ptr<message_filters::Synchronizer<SyncPolicy> > jsk_pcl_ros::LineSegmentCollector::sync_
protected

Definition at line 184 of file line_segment_collector.h.

◆ time_range_

jsk_recognition_msgs::TimeRange::ConstPtr jsk_pcl_ros::LineSegmentCollector::time_range_
protected

Definition at line 209 of file line_segment_collector.h.


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


jsk_pcl_ros
Author(s): Yohei Kakiuchi
autogenerated on Tue Jan 7 2025 04:05:46