#include <segmenter.hh>

Public Member Functions | |
| void | convex_hulls (const vector< PointCloud::Ptr > &planes, vector< PointCloud::Ptr > &hulls) |
| void | fit_planes (PointCloud::ConstPtr in, pcl16::PointCloud< pcl16::Normal >::ConstPtr normals, const tf::Transform &trans, vector< PointCloud::Ptr > &good_planes, vector< pcl16::ModelCoefficients > &good_models, vector< pcl16::ModelCoefficients > &bad_models) |
| void | get_aboves (const vector< PointCloud::Ptr > &hulls, const vector< pcl16::ModelCoefficients > &coeffs, const PointCloud::Ptr &densecloud, PointCloud::Ptr &out) |
| void | lose_bads (const PointCloud::ConstPtr &aboves, PointCloud::Ptr good_aboves, const vector< pcl16::ModelCoefficients > &bad_coeffs) |
| void | passthrough (PointCloud::Ptr &in, PointCloud::Ptr &out) |
| void | publish_planes (const vector< PointCloud::Ptr > &planes, const vector< PointCloud::Ptr > &hulls, const vector< pcl16::ModelCoefficients > &coeffs, vector< semanticmodel::Plane > &outputs) |
| void | publishLatestPlanes (const ros::WallTimerEvent &e) |
| Segmenter (const std::string &name_space, const std::string &cloud_input_topic, const std::string &camera_input_topic, const std::string &depth_input_topic, const std::string &planecloud_output_topic, const std::string &plane_output_topic, const std::string &object_output_topic, const std::string &plane_service_topic) | |
| void | synchronized_pipeline_callback (const sensor_msgs::ImageConstPtr &rgb_img, const sensor_msgs::CameraInfoConstPtr &rgb_info, const sensor_msgs::ImageConstPtr &depth_image, const sensor_msgs::CameraInfoConstPtr &depth_info, const PointCloud::ConstPtr &cloud) |
Private Types | |
| typedef pcl16::PointXYZRGB | Point |
| typedef pcl16::PointCloud< Point > | PointCloud |
| typedef message_filters::sync_policies::ApproximateTime < sensor_msgs::Image, sensor_msgs::CameraInfo, sensor_msgs::Image, sensor_msgs::CameraInfo, PointCloud > | Sync |
Private Member Functions | |
| void | camera_cb (const sensor_msgs::ImageConstPtr &img, const sensor_msgs::CameraInfoConstPtr &info) |
| void | cloud_cb (const PointCloud::ConstPtr &cloud) |
| void | depth_cb (const sensor_msgs::ImageConstPtr &img, const sensor_msgs::CameraInfoConstPtr &info) |
| void | dynamic_reconfigure_callback (const FilterConfig &config, uint32_t level) |
| bool | isGroundPlane (const pcl16::ModelCoefficients &coeffs) const |
| bool | isHorizontal (const pcl16::ModelCoefficients &coeffs) const |
| pcl16::ModelCoefficients | transformCoeffs (const btTransform &trans, const pcl16::ModelCoefficients &in) |
Private Attributes | |
| boost::scoped_ptr < tf::TransformBroadcaster > | broadcaster |
| image_transport::CameraSubscriber | cam_sub |
| ros::Subscriber | cloud_sub |
| boost::shared_ptr < pcl16::EdgeAwarePlaneComparator < Point, pcl16::Normal > > | comp_ |
| FilterConfig | config |
| boost::mutex | config_mutex |
| image_transport::CameraSubscriber | depth_sub |
| image_transport::ImageTransport | depth_transport |
| dynamic_reconfigure::Server < FilterConfig >::CallbackType | dynparam_func |
| dynamic_reconfigure::Server < FilterConfig > | dynparam_srv |
| ros::NodeHandle | handle |
| ros::Publisher | latest_plane_pub_ |
| ros::WallTimer | latest_plane_timer_ |
| boost::circular_buffer < PointCloud::Ptr > | latest_planes_ |
| boost::scoped_ptr < tf::TransformListener > | listener |
| ros::Publisher | map_points_pub |
| pcl16::IntegralImageNormalEstimation < Point, pcl16::Normal > | normal_estimator_ |
| ros::Publisher | object_pub |
| ros::Publisher | plane_pub |
| pcl16::OrganizedMultiPlaneSegmentation < Point, pcl16::Normal, pcl16::Label > | plane_segmenter_ |
| ros::Publisher | planecloud_pub |
| ros::ServiceClient | planetracker_srv |
| int | processed |
| image_transport::ImageTransport | rgb_transport |
| bool | short_circuit |
| int | skipped |
| boost::scoped_ptr < message_filters::Synchronizer < Sync > > | sync |
Static Private Attributes | |
| static const int | QUEUE_SIZE = 100 |
Definition at line 53 of file segmenter.hh.
typedef pcl16::PointXYZRGB semanticmodel::Segmenter::Point [private] |
Definition at line 58 of file segmenter.hh.
typedef pcl16::PointCloud<Point> semanticmodel::Segmenter::PointCloud [private] |
Definition at line 59 of file segmenter.hh.
typedef message_filters::sync_policies:: ApproximateTime<sensor_msgs::Image, sensor_msgs::CameraInfo, sensor_msgs::Image, sensor_msgs::CameraInfo, PointCloud> semanticmodel::Segmenter::Sync [private] |
Definition at line 73 of file segmenter.hh.
| semanticmodel::Segmenter::Segmenter | ( | const std::string & | name_space, |
| const std::string & | cloud_input_topic, | ||
| const std::string & | camera_input_topic, | ||
| const std::string & | depth_input_topic, | ||
| const std::string & | planecloud_output_topic, | ||
| const std::string & | plane_output_topic, | ||
| const std::string & | object_output_topic, | ||
| const std::string & | plane_service_topic | ||
| ) |
Definition at line 79 of file segmenter.cc.
| void semanticmodel::Segmenter::camera_cb | ( | const sensor_msgs::ImageConstPtr & | img, |
| const sensor_msgs::CameraInfoConstPtr & | info | ||
| ) | [private] |
Definition at line 677 of file segmenter.cc.
| void semanticmodel::Segmenter::cloud_cb | ( | const PointCloud::ConstPtr & | cloud | ) | [private] |
Definition at line 672 of file segmenter.cc.
| void semanticmodel::Segmenter::convex_hulls | ( | const vector< PointCloud::Ptr > & | planes, |
| vector< PointCloud::Ptr > & | hulls | ||
| ) |
Definition at line 329 of file segmenter.cc.
| void semanticmodel::Segmenter::depth_cb | ( | const sensor_msgs::ImageConstPtr & | img, |
| const sensor_msgs::CameraInfoConstPtr & | info | ||
| ) | [private] |
Definition at line 684 of file segmenter.cc.
| void semanticmodel::Segmenter::dynamic_reconfigure_callback | ( | const FilterConfig & | config, |
| uint32_t | level | ||
| ) | [private] |
Definition at line 662 of file segmenter.cc.
| void semanticmodel::Segmenter::fit_planes | ( | PointCloud::ConstPtr | in, |
| pcl16::PointCloud< pcl16::Normal >::ConstPtr | normals, | ||
| const tf::Transform & | trans, | ||
| vector< PointCloud::Ptr > & | good_planes, | ||
| vector< pcl16::ModelCoefficients > & | good_models, | ||
| vector< pcl16::ModelCoefficients > & | bad_models | ||
| ) |
Definition at line 233 of file segmenter.cc.
| void semanticmodel::Segmenter::get_aboves | ( | const vector< PointCloud::Ptr > & | hulls, |
| const vector< pcl16::ModelCoefficients > & | coeffs, | ||
| const PointCloud::Ptr & | densecloud, | ||
| PointCloud::Ptr & | out | ||
| ) |
Definition at line 420 of file segmenter.cc.
| bool semanticmodel::Segmenter::isGroundPlane | ( | const pcl16::ModelCoefficients & | coeffs | ) | const [private] |
Definition at line 196 of file segmenter.cc.
| bool semanticmodel::Segmenter::isHorizontal | ( | const pcl16::ModelCoefficients & | coeffs | ) | const [private] |
Definition at line 191 of file segmenter.cc.
| void semanticmodel::Segmenter::lose_bads | ( | const PointCloud::ConstPtr & | aboves, |
| PointCloud::Ptr | good_aboves, | ||
| const vector< pcl16::ModelCoefficients > & | bad_coeffs | ||
| ) |
Definition at line 459 of file segmenter.cc.
| void semanticmodel::Segmenter::passthrough | ( | PointCloud::Ptr & | in, |
| PointCloud::Ptr & | out | ||
| ) |
Definition at line 182 of file segmenter.cc.
| void semanticmodel::Segmenter::publish_planes | ( | const vector< PointCloud::Ptr > & | planes, |
| const vector< PointCloud::Ptr > & | hulls, | ||
| const vector< pcl16::ModelCoefficients > & | coeffs, | ||
| vector< semanticmodel::Plane > & | outputs | ||
| ) |
Definition at line 343 of file segmenter.cc.
| void semanticmodel::Segmenter::publishLatestPlanes | ( | const ros::WallTimerEvent & | e | ) |
Definition at line 484 of file segmenter.cc.
| void semanticmodel::Segmenter::synchronized_pipeline_callback | ( | const sensor_msgs::ImageConstPtr & | rgb_img, |
| const sensor_msgs::CameraInfoConstPtr & | rgb_info, | ||
| const sensor_msgs::ImageConstPtr & | depth_image, | ||
| const sensor_msgs::CameraInfoConstPtr & | depth_info, | ||
| const PointCloud::ConstPtr & | cloud | ||
| ) |
Definition at line 496 of file segmenter.cc.
| pcl16::ModelCoefficients semanticmodel::Segmenter::transformCoeffs | ( | const btTransform & | trans, |
| const pcl16::ModelCoefficients & | in | ||
| ) | [private] |
Definition at line 203 of file segmenter.cc.
boost::scoped_ptr<tf::TransformBroadcaster> semanticmodel::Segmenter::broadcaster [private] |
Definition at line 205 of file segmenter.hh.
Definition at line 221 of file segmenter.hh.
Definition at line 219 of file segmenter.hh.
boost::shared_ptr<pcl16::EdgeAwarePlaneComparator<Point, pcl16::Normal> > semanticmodel::Segmenter::comp_ [private] |
Definition at line 252 of file segmenter.hh.
FilterConfig semanticmodel::Segmenter::config [private] |
Definition at line 183 of file segmenter.hh.
Definition at line 186 of file segmenter.hh.
Definition at line 223 of file segmenter.hh.
Definition at line 222 of file segmenter.hh.
dynamic_reconfigure::Server<FilterConfig>::CallbackType semanticmodel::Segmenter::dynparam_func [private] |
Definition at line 185 of file segmenter.hh.
dynamic_reconfigure::Server<FilterConfig> semanticmodel::Segmenter::dynparam_srv [private] |
Definition at line 184 of file segmenter.hh.
Definition at line 180 of file segmenter.hh.
Definition at line 238 of file segmenter.hh.
Definition at line 256 of file segmenter.hh.
boost::circular_buffer<PointCloud::Ptr> semanticmodel::Segmenter::latest_planes_ [private] |
Definition at line 255 of file segmenter.hh.
boost::scoped_ptr<tf::TransformListener> semanticmodel::Segmenter::listener [private] |
Definition at line 204 of file segmenter.hh.
Definition at line 234 of file segmenter.hh.
pcl16::IntegralImageNormalEstimation<Point, pcl16::Normal> semanticmodel::Segmenter::normal_estimator_ [private] |
Definition at line 248 of file segmenter.hh.
Definition at line 237 of file segmenter.hh.
Definition at line 236 of file segmenter.hh.
pcl16::OrganizedMultiPlaneSegmentation<Point, pcl16::Normal, pcl16::Label> semanticmodel::Segmenter::plane_segmenter_ [private] |
Definition at line 245 of file segmenter.hh.
Definition at line 235 of file segmenter.hh.
Definition at line 241 of file segmenter.hh.
int semanticmodel::Segmenter::processed [private] |
Definition at line 264 of file segmenter.hh.
const int semanticmodel::Segmenter::QUEUE_SIZE = 100 [static, private] |
Definition at line 177 of file segmenter.hh.
Definition at line 220 of file segmenter.hh.
bool semanticmodel::Segmenter::short_circuit [private] |
Definition at line 261 of file segmenter.hh.
int semanticmodel::Segmenter::skipped [private] |
Definition at line 265 of file segmenter.hh.
boost::scoped_ptr< message_filters::Synchronizer<Sync> > semanticmodel::Segmenter::sync [private] |
Definition at line 209 of file segmenter.hh.