Go to the documentation of this file.00001 #ifndef VISP_TRACKER_CONVERSION_HH
00002 # define VISP_TRACKER_CONVERSION_HH
00003 # include <boost/optional.hpp>
00004
00005 # include <ros/ros.h>
00006
00007 # include <geometry_msgs/Transform.h>
00008 # include <sensor_msgs/Image.h>
00009 # include <sensor_msgs/CameraInfo.h>
00010 # include <tf/transform_datatypes.h>
00011
00012 # include <visp/vpHomogeneousMatrix.h>
00013 # include <visp/vpCameraParameters.h>
00014 # include <visp/vpMbTracker.h>
00015 # include <visp/vpMe.h>
00016 # include <visp/vpKltOpencv.h>
00017
00018 # include <visp_tracker/Init.h>
00019 # include <visp_tracker/ModelBasedSettingsConfig.h>
00020
00031 void rosImageToVisp(vpImage<unsigned char>& dst,
00032 const sensor_msgs::Image::ConstPtr& src);
00033
00044 void vispImageToRos(sensor_msgs::Image& dst,
00045 const vpImage<unsigned char>& src);
00046
00047
00048 void vpHomogeneousMatrixToTransform(geometry_msgs::Transform& dst,
00049 const vpHomogeneousMatrix& src);
00050
00051 void transformToVpHomogeneousMatrix(vpHomogeneousMatrix& dst,
00052 const geometry_msgs::Transform& src);
00053
00054 void transformToVpHomogeneousMatrix(vpHomogeneousMatrix& dst,
00055 const tf::Transform& src);
00056
00057 void transformToVpHomogeneousMatrix(vpHomogeneousMatrix& dst,
00058 const geometry_msgs::Pose& src);
00059
00060 void convertModelBasedSettingsConfigToVpMe(const visp_tracker::ModelBasedSettingsConfig& config,
00061 vpMe& moving_edge,
00062 vpMbTracker* tracker);
00063
00064 void convertVpMeToModelBasedSettingsConfig(const vpMe& moving_edge,
00065 const vpMbTracker* tracker,
00066 visp_tracker::ModelBasedSettingsConfig& config);
00067
00068 void convertModelBasedSettingsConfigToVpKltOpencv(const visp_tracker::ModelBasedSettingsConfig& config,
00069 vpKltOpencv& klt,
00070 vpMbTracker* tracker);
00071
00072 void convertVpKltOpencvToModelBasedSettingsConfig(const vpKltOpencv& klt,
00073 const vpMbTracker* tracker,
00074 visp_tracker::ModelBasedSettingsConfig& config);
00075
00076 void convertVpMeToInitRequest(const vpMe& moving_edge,
00077 const vpMbTracker* tracker,
00078 visp_tracker::Init& srv);
00079
00080 void convertInitRequestToVpMe(const visp_tracker::Init::Request& req,
00081 vpMbTracker* tracker,
00082 vpMe& moving_edge);
00083
00084 void convertVpKltOpencvToInitRequest(const vpKltOpencv& klt,
00085 const vpMbTracker* tracker,
00086 visp_tracker::Init& srv);
00087
00088 void convertInitRequestToVpKltOpencv(const visp_tracker::Init::Request& req,
00089 vpMbTracker* tracker,
00090 vpKltOpencv& klt);
00091
00092 void initializeVpCameraFromCameraInfo(vpCameraParameters& cam,
00093 sensor_msgs::CameraInfoConstPtr info);
00094
00095 #endif //! VISP_TRACKER_CONVERSION_HH