19 #ifndef __ICUB_UTILS_H__
20 #define __ICUB_UTILS_H__
25 #include <yarp/sig/Image.h>
26 #include <yarp/os/BufferedPort.h>
27 #include <yarp/os/RFModule.h>
28 #include <yarp/os/Network.h>
29 #include <yarp/os/Time.h>
30 #include <yarp/os/Stamp.h>
35 #if !defined(SIFTGPU_STATIC) && !defined(SIFTGPU_DLL_RUNTIME)
37 #define SIFTGPU_DLL_RUNTIME
42 #ifdef SIFTGPU_DLL_RUNTIME
44 #define FREE_MYLIB dlclose
45 #define GET_MYPROC dlsym
54 SiftMatchGPU *matcher;
55 SiftMatchGPU *matcherCheck;
57 std::vector<float > descriptors1, descriptors2;
58 std::vector<SiftGPU::SiftKeypoint> keys1, keys2;
59 std::vector<cv::Point2f> pointsL, pointsR;
74 void extractMatch_GPU(cv::Mat &leftMat, cv::Mat &rightMat,
double displacement=20.0);
75 void extractMatch_GPU(cv::Mat &leftMat, cv::Mat &rightMat, cv::Mat &matMatches,
double displacement=20.0);
76 void getMatches(std::vector<cv::Point2f> & points1, std::vector<cv::Point2f> &points2);
77 void writeSIFTs(std::string filePath, std::vector<float> &des, std::vector<SiftGPU::SiftKeypoint>&points);
78 void writeMatch(std::string filePath,std::vector<cv::Point2f> &pointsL, std::vector<cv::Point2f> &pointsR);