00001 00024 #ifndef CCNY_RGBD_KEYFRAME_ASSOCIATION_H 00025 #define CCNY_RGBD_KEYFRAME_ASSOCIATION_H 00026 00027 #include <Eigen/StdVector> 00028 #include <opencv2/features2d/features2d.hpp> 00029 00030 namespace ccny_rgbd { 00031 00041 class KeyframeAssociation 00042 { 00043 public: 00044 00051 enum Type {VO, RANSAC, ODOMETRY}; 00052 00053 int kf_idx_a; 00054 int kf_idx_b; 00055 00056 Type type; 00057 00058 std::vector<cv::DMatch> matches; 00059 00067 tf::Transform a2b; 00068 }; 00069 00070 typedef Eigen::aligned_allocator<KeyframeAssociation> KeyframeAssociationAllocator; 00071 typedef std::vector<KeyframeAssociation, KeyframeAssociationAllocator> KeyframeAssociationVector; 00072 00073 } //namespace ccny_rgbd 00074 00075 #endif // CCNY_RGBD_KEYFRAME_ASSOCIATION_H