47 #include <std_msgs/Empty.h> 48 #include <std_msgs/String.h> 49 #include <std_srvs/Empty.h> 50 #include <sensor_msgs/Image.h> 51 #include <geometry_msgs/Twist.h> 52 #include <nav_msgs/Odometry.h> 54 #include <turtlebot3_applications_msgs/TakePanorama.h> 58 #include <opencv2/core.hpp> 59 #include <opencv2/highgui.hpp> 60 #include <opencv2/stitching.hpp> 81 void log(std::string msg);
86 std::map<std::string, std::string>
params;
140 bool takePanoServiceCb(turtlebot3_applications_msgs::TakePanorama::Request& request,
141 turtlebot3_applications_msgs::TakePanorama::Response& response);
149 void odomCb(
const nav_msgs::OdometryConstPtr& msg);
geometry_msgs::Twist zero_cmd_vel
ros::ServiceServer srv_start_pano
double default_snap_interval
double default_rotation_velocity
void cameraImageCb(const sensor_msgs::ImageConstPtr &msg)
image_transport::Publisher pub_stitched
bool takePanoServiceCb(turtlebot3_applications_msgs::TakePanorama::Request &request, turtlebot3_applications_msgs::TakePanorama::Response &response)
ros::Publisher pub_cmd_vel
std::vector< cv::Mat > images_
image_transport::Subscriber sub_camera
void odomCb(const nav_msgs::OdometryConstPtr &msg)
double default_pano_angle
geometry_msgs::Twist cmd_vel
void log(std::string msg)
std::map< std::string, std::string > params