#include <line_segment_collector.h>
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 () | |
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 () |
virtual void | updateDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &stat) |
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::Ptr > | segment_clusters_ |
double | segment_connect_normal_threshold_ |
TimeStampedVector < LineSegment::Ptr > | segments_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_ |
Definition at line 106 of file line_segment_collector.h.
typedef jsk_pcl_ros::LineSegmentCollectorConfig jsk_pcl_ros::LineSegmentCollector::Config |
Definition at line 117 of file line_segment_collector.h.
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 113 of file line_segment_collector.h.
Definition at line 114 of file line_segment_collector.h.
Definition at line 109 of file line_segment_collector.h.
void jsk_pcl_ros::LineSegmentCollector::cleanupBuffers | ( | const ros::Time & | stamp | ) | [protected, virtual] |
Definition at line 204 of file line_segment_collector_nodelet.cpp.
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 | ||
) | [protected, virtual] |
Definition at line 352 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::collectFromBuffers | ( | const std_msgs::Header & | header, |
std::vector< LineSegment::Ptr > | new_segments | ||
) | [protected, virtual] |
Definition at line 279 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::configCallback | ( | Config & | config, |
uint32_t | level | ||
) | [protected, virtual] |
Definition at line 169 of file line_segment_collector_nodelet.cpp.
LineSegmentCluster::Ptr jsk_pcl_ros::LineSegmentCollector::lookupNearestSegment | ( | LineSegment::Ptr | segment | ) | [protected, virtual] |
Definition at line 247 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::onInit | ( | void | ) | [protected, virtual] |
Reimplemented from jsk_topic_tools::DiagnosticNodelet.
Definition at line 126 of file line_segment_collector_nodelet.cpp.
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 | ||
) | [protected, virtual] |
Definition at line 231 of file line_segment_collector_nodelet.cpp.
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 | ||
) | [protected, virtual] |
Definition at line 319 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::subscribe | ( | ) | [protected, virtual] |
Implements jsk_topic_tools::ConnectionBasedNodelet.
Definition at line 177 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::triggerCallback | ( | const jsk_recognition_msgs::TimeRange::ConstPtr & | trigger | ) | [protected, virtual] |
Definition at line 223 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::unsubscribe | ( | ) | [protected, virtual] |
Implements jsk_topic_tools::ConnectionBasedNodelet.
Definition at line 190 of file line_segment_collector_nodelet.cpp.
void jsk_pcl_ros::LineSegmentCollector::updateDiagnostic | ( | diagnostic_updater::DiagnosticStatusWrapper & | stat | ) | [protected, virtual] |
Reimplemented from jsk_topic_tools::DiagnosticNodelet.
Definition at line 198 of file line_segment_collector_nodelet.cpp.
TimeStampedVector<jsk_recognition_msgs::ModelCoefficientsArray::ConstPtr> jsk_pcl_ros::LineSegmentCollector::coefficients_buffer_ [protected] |
Definition at line 173 of file line_segment_collector.h.
Definition at line 163 of file line_segment_collector.h.
Definition at line 161 of file line_segment_collector.h.
double jsk_pcl_ros::LineSegmentCollector::ewma_tau_ [protected] |
Definition at line 177 of file line_segment_collector.h.
std::string jsk_pcl_ros::LineSegmentCollector::fixed_frame_id_ [protected] |
Definition at line 169 of file line_segment_collector.h.
TimeStampedVector<jsk_recognition_msgs::ClusterPointIndices::ConstPtr> jsk_pcl_ros::LineSegmentCollector::indices_buffer_ [protected] |
Definition at line 172 of file line_segment_collector.h.
Definition at line 152 of file line_segment_collector.h.
double jsk_pcl_ros::LineSegmentCollector::outlier_threshold_ [protected] |
Definition at line 182 of file line_segment_collector.h.
TimeStampedVector<sensor_msgs::PointCloud2::ConstPtr> jsk_pcl_ros::LineSegmentCollector::pointclouds_buffer_ [protected] |
Definition at line 171 of file line_segment_collector.h.
Definition at line 159 of file line_segment_collector.h.
Definition at line 158 of file line_segment_collector.h.
Definition at line 157 of file line_segment_collector.h.
Definition at line 160 of file line_segment_collector.h.
Definition at line 170 of file line_segment_collector.h.
std::vector<LineSegmentCluster::Ptr> jsk_pcl_ros::LineSegmentCollector::segment_clusters_ [protected] |
Definition at line 175 of file line_segment_collector.h.
double jsk_pcl_ros::LineSegmentCollector::segment_connect_normal_threshold_ [protected] |
Definition at line 176 of file line_segment_collector.h.
Definition at line 174 of file line_segment_collector.h.
boost::shared_ptr<dynamic_reconfigure::Server<Config> > jsk_pcl_ros::LineSegmentCollector::srv_ [protected] |
Definition at line 162 of file line_segment_collector.h.
message_filters::Subscriber<jsk_recognition_msgs::ModelCoefficientsArray> jsk_pcl_ros::LineSegmentCollector::sub_coefficients_ [protected] |
Definition at line 156 of file line_segment_collector.h.
message_filters::Subscriber<jsk_recognition_msgs::ClusterPointIndices> jsk_pcl_ros::LineSegmentCollector::sub_indices_ [protected] |
Definition at line 155 of file line_segment_collector.h.
message_filters::Subscriber<sensor_msgs::PointCloud2> jsk_pcl_ros::LineSegmentCollector::sub_input_ [protected] |
Definition at line 154 of file line_segment_collector.h.
Definition at line 164 of file line_segment_collector.h.
boost::shared_ptr<message_filters::Synchronizer<SyncPolicy> > jsk_pcl_ros::LineSegmentCollector::sync_ [protected] |
Definition at line 153 of file line_segment_collector.h.
jsk_recognition_msgs::TimeRange::ConstPtr jsk_pcl_ros::LineSegmentCollector::time_range_ [protected] |
Definition at line 178 of file line_segment_collector.h.