#include "ar_track_alvar/CvTestbed.h"
#include "ar_track_alvar/MarkerDetector.h"
#include "ar_track_alvar/MultiMarkerBundle.h"
#include "ar_track_alvar/MultiMarkerInitializer.h"
#include "ar_track_alvar/Shared.h"
#include <cv_bridge/cv_bridge.h>
#include <ar_track_alvar_msgs/AlvarMarker.h>
#include <ar_track_alvar_msgs/AlvarMarkers.h>
#include <tf/transform_listener.h>
#include <tf/transform_broadcaster.h>
#include <sensor_msgs/PointCloud2.h>
#include <pcl_conversions/pcl_conversions.h>
#include <pcl/point_types.h>
#include <pcl/registration/icp.h>
#include <pcl/registration/registration.h>
#include <geometry_msgs/PoseStamped.h>
#include <sensor_msgs/image_encodings.h>
#include <ros/ros.h>
#include <pcl/ModelCoefficients.h>
#include <pcl/sample_consensus/method_types.h>
#include <pcl/sample_consensus/model_types.h>
#include <pcl/segmentation/sac_segmentation.h>
#include <pcl_ros/point_cloud.h>
#include <pcl/filters/extract_indices.h>
#include <boost/lexical_cast.hpp>
#include <tf/tf.h>
#include <Eigen/Core>
#include <ar_track_alvar/filter/kinect_filtering.h>
#include <ar_track_alvar/filter/medianFilter.h>
Go to the source code of this file.
Defines | |
#define | GHOST_MARKER 3 |
#define | MAIN_MARKER 1 |
#define | VISIBLE_MARKER 2 |
Typedefs | |
typedef pcl::PointCloud< ARPoint > | ARCloud |
typedef pcl::PointXYZRGB | ARPoint |
Functions | |
int | calcAndSaveMasterCoords (MultiMarkerBundle &master) |
void | draw3dPoints (ARCloud::Ptr cloud, string frame, int color, int id, double rad) |
void | drawArrow (gm::Point start, tf::Matrix3x3 mat, string frame, int color, int id) |
void | GetMultiMarkerPoses (IplImage *image, ARCloud &cloud) |
void | getPointCloudCallback (const sensor_msgs::PointCloud2ConstPtr &msg) |
int | InferCorners (const ARCloud &cloud, MultiMarkerBundle &master, ARCloud &bund_corners) |
int | main (int argc, char *argv[]) |
void | makeMarkerMsgs (int type, int id, Pose &p, sensor_msgs::ImageConstPtr image_msg, tf::StampedTransform &CamToOutput, visualization_msgs::Marker *rvizMarker, ar_track_alvar_msgs::AlvarMarker *ar_pose_marker, int confidence) |
int | makeMasterTransform (const CvPoint3D64f &p0, const CvPoint3D64f &p1, const CvPoint3D64f &p2, const CvPoint3D64f &p3, tf::Transform &retT) |
int | PlaneFitPoseImprovement (int id, const ARCloud &corners_3D, ARCloud::Ptr selected_points, const ARCloud &cloud, Pose &p) |
Variables | |
ros::Publisher | arMarkerPub_ |
ar_track_alvar_msgs::AlvarMarkers | arPoseMarkers_ |
std::vector< int > * | bundle_indices |
Pose * | bundlePoses |
int * | bundles_seen |
Camera * | cam |
std::string | cam_image_topic |
std::string | cam_info_topic |
image_transport::Subscriber | cam_sub_ |
ros::Subscriber | cloud_sub_ |
cv_bridge::CvImagePtr | cv_ptr_ |
bool | init = true |
MarkerDetector< MarkerData > | marker_detector |
double | marker_size |
int * | master_id |
bool * | master_visible |
double | max_new_marker_error |
double | max_track_error |
int | med_filt_size |
ata::MedianFilter ** | med_filts |
MultiMarkerBundle ** | multi_marker_bundles = NULL |
int | n_bundles = 0 |
std::string | output_frame |
ros::Publisher | rvizMarkerPub2_ |
ros::Publisher | rvizMarkerPub_ |
tf::TransformBroadcaster * | tf_broadcaster |
tf::TransformListener * | tf_listener |
#define GHOST_MARKER 3 |
Definition at line 73 of file FindMarkerBundles.cpp.
#define MAIN_MARKER 1 |
Definition at line 71 of file FindMarkerBundles.cpp.
#define VISIBLE_MARKER 2 |
Definition at line 72 of file FindMarkerBundles.cpp.
typedef pcl::PointCloud<ARPoint> ARCloud |
Definition at line 79 of file FindMarkerBundles.cpp.
typedef pcl::PointXYZRGB ARPoint |
Definition at line 78 of file FindMarkerBundles.cpp.
int calcAndSaveMasterCoords | ( | MultiMarkerBundle & | master | ) |
Definition at line 729 of file FindMarkerBundles.cpp.
void draw3dPoints | ( | ARCloud::Ptr | cloud, |
string | frame, | ||
int | color, | ||
int | id, | ||
double | rad | ||
) |
Definition at line 116 of file FindMarkerBundles.cpp.
void drawArrow | ( | gm::Point | start, |
tf::Matrix3x3 | mat, | ||
string | frame, | ||
int | color, | ||
int | id | ||
) |
Definition at line 164 of file FindMarkerBundles.cpp.
void GetMultiMarkerPoses | ( | IplImage * | image, |
ARCloud & | cloud | ||
) |
Definition at line 375 of file FindMarkerBundles.cpp.
void getPointCloudCallback | ( | const sensor_msgs::PointCloud2ConstPtr & | msg | ) |
Definition at line 593 of file FindMarkerBundles.cpp.
int InferCorners | ( | const ARCloud & | cloud, |
MultiMarkerBundle & | master, | ||
ARCloud & | bund_corners | ||
) |
Definition at line 218 of file FindMarkerBundles.cpp.
int main | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 769 of file FindMarkerBundles.cpp.
void makeMarkerMsgs | ( | int | type, |
int | id, | ||
Pose & | p, | ||
sensor_msgs::ImageConstPtr | image_msg, | ||
tf::StampedTransform & | CamToOutput, | ||
visualization_msgs::Marker * | rvizMarker, | ||
ar_track_alvar_msgs::AlvarMarker * | ar_pose_marker, | ||
int | confidence | ||
) |
Definition at line 504 of file FindMarkerBundles.cpp.
int makeMasterTransform | ( | const CvPoint3D64f & | p0, |
const CvPoint3D64f & | p1, | ||
const CvPoint3D64f & | p2, | ||
const CvPoint3D64f & | p3, | ||
tf::Transform & | retT | ||
) |
Definition at line 678 of file FindMarkerBundles.cpp.
int PlaneFitPoseImprovement | ( | int | id, |
const ARCloud & | corners_3D, | ||
ARCloud::Ptr | selected_points, | ||
const ARCloud & | cloud, | ||
Pose & | p | ||
) |
Definition at line 293 of file FindMarkerBundles.cpp.
Definition at line 89 of file FindMarkerBundles.cpp.
ar_track_alvar_msgs::AlvarMarkers arPoseMarkers_ |
Definition at line 92 of file FindMarkerBundles.cpp.
std::vector<int>* bundle_indices |
Definition at line 102 of file FindMarkerBundles.cpp.
Definition at line 98 of file FindMarkerBundles.cpp.
int* bundles_seen |
Definition at line 100 of file FindMarkerBundles.cpp.
Definition at line 85 of file FindMarkerBundles.cpp.
std::string cam_image_topic |
Definition at line 110 of file FindMarkerBundles.cpp.
std::string cam_info_topic |
Definition at line 111 of file FindMarkerBundles.cpp.
Definition at line 87 of file FindMarkerBundles.cpp.
Definition at line 88 of file FindMarkerBundles.cpp.
Definition at line 86 of file FindMarkerBundles.cpp.
bool init = true |
Definition at line 103 of file FindMarkerBundles.cpp.
Definition at line 95 of file FindMarkerBundles.cpp.
double marker_size |
Definition at line 107 of file FindMarkerBundles.cpp.
int* master_id |
Definition at line 99 of file FindMarkerBundles.cpp.
bool* master_visible |
Definition at line 101 of file FindMarkerBundles.cpp.
double max_new_marker_error |
Definition at line 108 of file FindMarkerBundles.cpp.
double max_track_error |
Definition at line 109 of file FindMarkerBundles.cpp.
int med_filt_size |
Definition at line 105 of file FindMarkerBundles.cpp.
Definition at line 104 of file FindMarkerBundles.cpp.
MultiMarkerBundle** multi_marker_bundles = NULL |
Definition at line 96 of file FindMarkerBundles.cpp.
int n_bundles = 0 |
Definition at line 113 of file FindMarkerBundles.cpp.
std::string output_frame |
Definition at line 112 of file FindMarkerBundles.cpp.
Definition at line 91 of file FindMarkerBundles.cpp.
Definition at line 90 of file FindMarkerBundles.cpp.
Definition at line 94 of file FindMarkerBundles.cpp.
Definition at line 93 of file FindMarkerBundles.cpp.