• opencv嫁接vlfeat densesift


    #include <opencv2/opencv.hpp>
    #include <iostream>
    
    extern "C" {
      #include <vl/generic.h>
      #include <time.h>
      #include <stdlib.h>
    #include "vl/dsift.h"
    #include "vl/pgm.h"
    #include "vl/mathop.h"
    #include "vl/imopv.h"
    }
    
    using namespace cv;
    using namespace std;
    
    int main (int argc, const char * argv[]) {
    srand(time(NULL));
    
    Mat img;
    img = imread("/home/yuhao/codes/vlfeat-0.9.20/data/roofs1.jpg", CV_LOAD_IMAGE_COLOR);   // Read the file
    
    namedWindow( "Display window", WINDOW_AUTOSIZE );// Create a window for display.
    imshow( "Display window", img );                   // Show our image inside it.
    waitKey(0);
    
    VlDsiftFilter * vlf = vl_dsift_new_basic(320, 240, 1, 3);
    
    // transform image in cv::Mat to float vector
    std::vector<float> imgvec;
    
    for (int i = 0; i < img.rows; ++i){
      for (int j = 0; j < img.cols; ++j){
        imgvec.push_back(img.at<unsigned char>(i,j) / 255.0f);                                                                                                                                                                                                        
      }
    }
    // call processing function of vl
    vl_dsift_process(vlf, &imgvec[0]);
    
    // echo number of keypoints found
    std::cout << vl_dsift_get_keypoint_num(vlf) << std::endl;
    
      return 0;
    }
    

     编译方法

    g++ sift.cpp  `pkg-config --cflags --libs opencv` -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_objdetect -lopencv_imgcodecs -I /home/yuhao/codes/vlfeat-0.9.20 -L /home/yuhao/codes/vlfeat-0.9.20/bin/glnxa64 -lvl

    lalala
  • 相关阅读:
    sharepoint 2010 资料
    调试 SharePoint 解决方案
    定义不同模板的网站集
    作图工具
    struts2的优点
    get load
    什么是java的事物
    session的实现方式
    final 和static的关系
    各种大神的表单验证 感谢大神的辛苦
  • 原文地址:https://www.cnblogs.com/Pallashadow/p/5196504.html
Copyright © 2020-2023  润新知