#include "ros/ros.h"#include "std_msgs/String.h"#include <string>#include <vector>#include <map>#include <ostream>#include "ros/serialization.h"#include "ros/builtin_message_traits.h"#include "ros/message_operations.h"#include "ros/time.h"#include "ros/macros.h"#include "ros/assert.h"#include "geometry_msgs/Pose.h"#include "tf/transform_listener.h"#include "mtt/TargetList.h"#include <visualization_msgs/Marker.h>#include <visualization_msgs/MarkerArray.h>#include <assert.h>#include <stdlib.h>#include <string.h>#include <float.h>#include <stdint.h>#include <math.h>#include "opencv2/core/types_c.h"#include <limits.h>#include "opencv2/core/core_c.h"#include "opencv2/imgproc/types_c.h"#include "opencv2/core/core.hpp"#include "opencv2/imgproc/imgproc_c.h"#include "opencv2/features2d/features2d.hpp"#include <iostream>

Go to the source code of this file.
Functions | |
| void | drawPose (const geometry_msgs::Pose &input, uint target, double classification) |
| int | main (int argc, char **argv) |
| void | targetsCallback (const mtt::TargetList &list) |
| ros::Time | time_last_msg (0) |
Variables | |
| CvBoost | adaboost |
| Code for feature extraction. | |
| double | angle_to_robot |
| uint | badLeader = 0 |
| uint | counter = 0 |
| ros::Duration | duration_btw_msg |
| geometry_msgs::Twist | features |
| double | heading_diff |
| double | label |
| double | lateral_disp |
| visualization_msgs::MarkerArray | ma |
| ros::Publisher | marker_pub |
| std::list < geometry_msgs::PoseWithCovariance > | matlab_list |
| geometry_msgs::PoseWithCovariance | nfeatures |
| ros::Publisher | nfeatures_pub |
| tf::TransformListener * | p_listener |
| double | position_diff |
| double | robot_theta |
| double | robot_vel |
| double | robot_x |
| double | robot_y |
| CvMat * | sample_to_classify = 0 |
| uint | single_target = 0 |
| uint | target_id = 0 |
| double | target_theta |
| double | target_vel |
| double | target_x |
| double | target_y |
| ros::Duration | time_elapsed |
| tf::StampedTransform | transform |
| geometry_msgs::Twist | twist |
| double | velocity_diff |
| CvMat * | weak_responses = 0 |
| void drawPose | ( | const geometry_msgs::Pose & | input, | |
| uint | target, | |||
| double | classification | |||
| ) |
Definition at line 89 of file classify_features.cpp.
| int main | ( | int | argc, | |
| char ** | argv | |||
| ) |
Definition at line 202 of file classify_features.cpp.
| void targetsCallback | ( | const mtt::TargetList & | list | ) |
| ros::Time time_last_msg | ( | 0 | ) |
| CvBoost adaboost |
Code for feature extraction.
extract features from targets received from MTT wrt the robot the features are printed in the command line and should be stored in a file (txt) for further processing with matlab the features will be used for training a classifier
it is also responsible of publishing these features to a matlab classifier that will then output a message with the classification of the target based on its features
Definition at line 54 of file classify_features.cpp.
| double angle_to_robot |
Definition at line 80 of file classify_features.cpp.
| uint badLeader = 0 |
Definition at line 84 of file classify_features.cpp.
| uint counter = 0 |
Definition at line 87 of file classify_features.cpp.
| ros::Duration duration_btw_msg |
Definition at line 61 of file classify_features.cpp.
| geometry_msgs::Twist features |
Definition at line 69 of file classify_features.cpp.
| double heading_diff |
Definition at line 79 of file classify_features.cpp.
| double label |
Definition at line 83 of file classify_features.cpp.
| double lateral_disp |
Definition at line 82 of file classify_features.cpp.
| visualization_msgs::MarkerArray ma |
Definition at line 71 of file classify_features.cpp.
| ros::Publisher marker_pub |
Definition at line 63 of file classify_features.cpp.
| std::list<geometry_msgs::PoseWithCovariance> matlab_list |
Definition at line 73 of file classify_features.cpp.
| geometry_msgs::PoseWithCovariance nfeatures |
Definition at line 70 of file classify_features.cpp.
| ros::Publisher nfeatures_pub |
Definition at line 62 of file classify_features.cpp.
| tf::TransformListener* p_listener |
Definition at line 65 of file classify_features.cpp.
| double position_diff |
Definition at line 79 of file classify_features.cpp.
| double robot_theta |
Definition at line 78 of file classify_features.cpp.
| double robot_vel |
Definition at line 78 of file classify_features.cpp.
| double robot_x |
Definition at line 77 of file classify_features.cpp.
| double robot_y |
Definition at line 77 of file classify_features.cpp.
| CvMat* sample_to_classify = 0 |
Definition at line 55 of file classify_features.cpp.
| uint single_target = 0 |
Definition at line 86 of file classify_features.cpp.
| uint target_id = 0 |
Definition at line 85 of file classify_features.cpp.
| double target_theta |
Definition at line 76 of file classify_features.cpp.
| double target_vel |
Definition at line 76 of file classify_features.cpp.
| double target_x |
Definition at line 75 of file classify_features.cpp.
| double target_y |
Definition at line 75 of file classify_features.cpp.
| ros::Duration time_elapsed |
Definition at line 60 of file classify_features.cpp.
| tf::StampedTransform transform |
Definition at line 66 of file classify_features.cpp.
| geometry_msgs::Twist twist |
Definition at line 68 of file classify_features.cpp.
| double velocity_diff |
Definition at line 81 of file classify_features.cpp.
| CvMat* weak_responses = 0 |
Definition at line 56 of file classify_features.cpp.