|
void | Initialize (ros::NodeHandle *nh) |
|
void | ReadParams () |
|
bool | EnableCallback (ff_msgs::SetBool::Request &req, ff_msgs::SetBool::Response &res) |
|
void | PointCloud2Callback (const sensor_msgs::PointCloud2ConstPtr &depth_msg) |
|
void | Clear () |
|
void | HandrailCallback () |
|
bool | FindHandrail () |
|
bool | DownsamplePoints (std::vector< int > *downsample_points) |
|
bool | FindPlane (const std::vector< int > &downsample_points, const sensor_msgs::PointCloud &filtered_cloud, std::vector< int > *plane_inliers, std::vector< int > *plane_outliers, Eigen::Vector4f *plane_parameter, Eigen::Vector3f *plane_vector, float *plane_vector_length) |
|
bool | ClusterLinePoints (const std::array< std::vector< int >, 2 > &line_inliers, const Eigen::Vector4f &plane_parameter, const sensor_msgs::PointCloud &filtered_cloud, const int &line_size_thres, std::array< std::vector< int >, 2 > *clustered_line_inliers) |
|
void | ClusterPotentialLinePoints (const std::vector< int > &potential_line_inliers, const sensor_msgs::PointCloud &filtered_cloud, bool x_check, float gap_dist, std::vector< int > *clustered_line_inliers) |
|
bool | FilterCloud (const std::vector< int > &sample_points, sensor_msgs::PointCloud *filtered_cloud) |
|
void | PublishTF (const Eigen::Affine3f &publish_tf, std::string parent_frame, std::string child_frame) |
|
bool | FindPotentialLinePoints (const std::vector< int > &new_plane_outliers, const Eigen::Vector4f &plane_parameter, const Eigen::Vector3f &plane_vector, const int &line_size_thres, const float &plane_vector_length, std::vector< int > *potential_line_inliers) |
|
bool | FindBestLinePoints (const std::vector< int > &potential_line_inliers, const int &line_size_thres, const Eigen::Vector3f &plane_vector, sensor_msgs::PointCloud *new_filtered_cloud, std::array< std::vector< int >, 2 > *best_line_inliers) |
|
float | GetLineDist (const std::vector< int > &point_inliers, const sensor_msgs::PointCloud &filtered_cloud, Eigen::Vector3f *center_pos) |
|
void | UpdateEndPoint (const int &fst_end, const int &scd_end, const Eigen::Vector3f &line_vector, const Eigen::Vector3f &line_center, std::vector< geometry_msgs::Point > *end_point) |
|
geometry_msgs::Point | FindCloseLinePoint (const int &point_ID, const Eigen::Vector3f &line_vector, const Eigen::Vector3f &line_center) |
|
bool | FindLine (const std::vector< int > &plane_outliers, const Eigen::Vector4f &plane_parameter, const Eigen::Vector3f &plane_vector, const float &plane_vector_length, Eigen::Vector3f *line_vector, Eigen::Vector3f *line_center, std::vector< int > *line_inliers) |
|
void | FindCorner (const std::vector< int > &line_inliers, const Eigen::Vector4f &plane_parameter, const Eigen::Vector3f &line_center, const float &plane_vector_length) |
|
void | GetBodyTargetPose (const Eigen::Vector3f &line_vector, const Eigen::Vector3f &line_center, const std::vector< geometry_msgs::Point > &end_point, const Eigen::Vector3f &plane_vector, Eigen::Vector3f *target_pos_err, Eigen::Affine3f *i2h) |
|
void | GetFeaturePoints (const std::vector< int > &plane_inliers, const std::vector< int > &line_inliers) |
|
bool | GetXYScale (const std::vector< int > &plane_inliers) |
|
void | PublishCloud (const std::vector< int > &idxs, const sensor_msgs::PointCloud &cloud_data, ros::Publisher *cloud_publisher) |
|
void | PublishDepthImage () |
|
void | PublishNoMarker () |
|
void | PublishMarker (const Eigen::Vector3f &target_pos_err, const Eigen::Affine3f &i2h, const std::vector< geometry_msgs::Point > &end_point) |
|
void | PrintHandrailStatus (const handrailStatus &prev_status, const handrailStatus &curr_status) |
|
void | ConvertRotMatToEuler (const Eigen::Matrix3f &r_mat, Eigen::Vector3f *euler) |
|
virtual void | Reset () |
|
virtual void | Sleep () |
|
virtual void | Wakeup () |
|
void | StopHeartbeat () |
|
void | SendDiagnostics (const std::vector< diagnostic_msgs::KeyValue > &keyval) |
|
void | Setup (ros::NodeHandle &nh, ros::NodeHandle &nh_mt, std::string plugin_name) |
|