关于写PULISHER的问题 急救!
之前写过一个SUBSTRIBER ,会订阅一个相机所捕捉到的点的位置。 现在我想写一个PUBLISHER, 会把我所得到的点的位置乘以1。 这是我现在的代码。希望大家帮忙,这是我申请博士很重要的一步,谢谢大家!!!!!!!
#include "ros/ros.h"
#include <math.h>
#include <opencv/cv.h>
#include <opencv/cvaux.h>
#include <opencv/highgui.h>
#include "geometry_msgs/PoseStamped.h"
#include "geometry_msgs/Pose.h"
#include "geometry_msgs/PoseWithCovariance.h"
#include <visp/vpDisplayGDI.h>
#include <visp/vpDisplayX.h>
#include <visp/vpDot2.h>
#include <visp/vpImageIo.h>
#include <visp/vpPixelMeterConversion.h>
#include <visp/vpPose.h>
using namespace std;
using namespace cv;
void imageCallback(const geometry_msgs::PoseStamped::ConstPtr& ps4){
cout<<"pose is"<<ps4->pose.position<<endl;
//ps_cov->publish(ps);
}
int main(int argc, char **argv){
geometry_msgs::PoseStamped my_vidoe2;
ros::init(argc, argv, "coordinator");
ros::NodeHandle n;
ros::Subscriber sub = n.subscribe<geometry_msgs::posestamped>("/visp_auto_tracker/object_position", 1000, imageCallback);
ros::Publisher positions_pub = n.advertise<geometry_msgs::posestamped>("positions", 1000);
ros::Rate loop_rate(30);
int count=0;
while (ros::ok())
{
double x;
geometry_msgs::PoseStamped msg;
ros::spinOnce();
loop_rate.sleep();
++count;
}
#include "ros/ros.h"
#include <math.h>
#include <opencv/cv.h>
#include <opencv/cvaux.h>
#include <opencv/highgui.h>
#include "geometry_msgs/PoseStamped.h"
#include "geometry_msgs/Pose.h"
#include "geometry_msgs/PoseWithCovariance.h"
#include <visp/vpDisplayGDI.h>
#include <visp/vpDisplayX.h>
#include <visp/vpDot2.h>
#include <visp/vpImageIo.h>
#include <visp/vpPixelMeterConversion.h>
#include <visp/vpPose.h>
using namespace std;
using namespace cv;
void imageCallback(const geometry_msgs::PoseStamped::ConstPtr& ps4){
cout<<"pose is"<<ps4->pose.position<<endl;
//ps_cov->publish(ps);
}
int main(int argc, char **argv){
geometry_msgs::PoseStamped my_vidoe2;
ros::init(argc, argv, "coordinator");
ros::NodeHandle n;
ros::Subscriber sub = n.subscribe<geometry_msgs::posestamped>("/visp_auto_tracker/object_position", 1000, imageCallback);
ros::Publisher positions_pub = n.advertise<geometry_msgs::posestamped>("positions", 1000);
ros::Rate loop_rate(30);
int count=0;
while (ros::ok())
{
double x;
geometry_msgs::PoseStamped msg;
ros::spinOnce();
loop_rate.sleep();
++count;
}
话题:
ROS