frame.h
Go to the documentation of this file.
00001 
00007 #ifndef UCL_DRONE_FRAME_H
00008 #define UCL_DRONE_FRAME_H
00009 #define PCL_NO_PRECOMPILE
00010 
00011 #include <ucl_drone/ucl_drone.h>
00012 
00013 // vision
00014 #include <opencv2/calib3d/calib3d.hpp>
00015 #include <opencv2/core/core.hpp>
00016 #include <opencv2/imgproc/imgproc.hpp>
00017 #include <opencv2/nonfree/features2d.hpp>
00018 #include <opencv2/nonfree/nonfree.hpp>
00019 
00020 /* Point Cloud library */
00021 #include <pcl/visualization/point_cloud_geometry_handlers.h>  // used here ?
00022 
00023 #include <pcl/common/common_headers.h>
00024 #include <pcl/point_types.h>                   // pcl::PointXYZRGB
00025 #include <pcl/visualization/cloud_viewer.h>    // used here ?
00026 #include <pcl/visualization/pcl_visualizer.h>  // used here ?
00027 #include <pcl_conversions/pcl_conversions.h>   // pcl::fromROSMsg
00028 #include <pcl_ros/point_cloud.h>               // pcl::PointCloud
00029 
00030 /* Messages */
00031 #include <sensor_msgs/image_encodings.h>
00032 
00033 /* ucl_drone */
00034 #include <ucl_drone/PointXYZRGBSIFT.h>
00035 #include <ucl_drone/Pose3D.h>
00036 #include <ucl_drone/ProcessedImageMsg.h>
00037 // #include <ucl_drone/map/simple_map.h>
00038 
00039 // class Map is defined in ucl_drone/map/simple_map.h
00040 // not declared here because ucl_drone/map/frame.h (current file)
00041 // is also included in ucl_drone/map/simple_map.h or in map_keyframe_based.h
00042 
00048 class Frame
00049 {
00050 private:
00051 public:
00053   Frame();
00054 
00056   Frame(ucl_drone::ProcessedImageMsg::ConstPtr msg);
00057 
00059   ~Frame();
00060 
00066   void convertToPcl(std::vector< int >& idx_points, std::vector< cv::Point3f > points_out,
00067                     int keyframe_id, pcl::PointCloud< pcl::PointXYZRGBSIFT >::Ptr& pointcloud);
00068 
00073   void convertToPcl(std::vector< cv::Point3f > points_out, int keyframe_id,
00074                     pcl::PointCloud< pcl::PointXYZRGBSIFT >::Ptr& pointcloud);
00075 
00076   // Attributes
00077   ucl_drone::ProcessedImageMsg msg;      
00078   std::vector< cv::Point2f > imgPoints;  
00079   ucl_drone::Pose3D pose_visual_msg;     
00080   cv::Mat descriptors;                   
00081 };
00082 
00083 #endif /* UCL_DRONE_FRAME_H */


ucl_drone
Author(s): dronesinma
autogenerated on Sat Jun 8 2019 20:51:53