00001 00002 #include "fiducial_pose/Fiducial.h" 00003 #include "fiducial_pose/FiducialTransform.h" 00004 #include <sensor_msgs/CameraInfo.h> 00005 00006 class RosRpp { 00007 cv::Mat model; 00008 cv::Mat ipts; 00009 cv::Mat K; 00010 cv::Mat dist; 00011 00012 bool haveCamInfo; 00013 int currentFrame; 00014 ros::Time frameTime; 00015 std::map<int, tf::Transform> frameTransforms; 00016 ros::Publisher tfPub; 00017 ros::Subscriber verticesSub; 00018 ros::Subscriber camInfoSub; 00019 00020 bool doUndistort; 00021 double fiducialLen; 00022 00023 std::map<int, cv::Mat>prevRots; 00024 00025 public: 00026 RosRpp(double fiducialLen, bool doUndistort); 00027 00028 bool fiducialCallback(fiducial_pose::Fiducial* fiducial, 00029 fiducial_pose::FiducialTransform* transform); 00030 00031 void camInfoCallback(const sensor_msgs::CameraInfo::ConstPtr& msg); 00032 };