openCV SURF错误

时间:2013-03-29 09:09:56

标签: c++ opencv

我正在使用opencv 2.44,viusal studio c ++ 2010 当我接受我得到这个错误

  

错误1错误LNK2019:未解析的外部符号“public:__thiscall cv :: SURF :: SURF(void)”(?? 0SURF @ cv @@ QAE @ XZ)在函数_main C:\ Users \ user \ Desktop中引用\ proiect \ prj \ prj \ sh1.obj prj

#include <opencv2\imgproc\imgproc_c.h>
#include <stdio.h>
#include <math.h>
#include <opencv\highgui.h>
#include <opencv\cv.h>
#include <opencv2/features2d/features2d.hpp>
#include <opencv2/calib3d/calib3d.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/nonfree/features2d.hpp>
using namespace cv;
void main(){
char i; 
Mat image,img,ref;
ref=imread("hh.jpg");
// create window to show image 
namedWindow("window", CV_WINDOW_AUTOSIZE);
namedWindow("costel", CV_WINDOW_AUTOSIZE);
namedWindow("fanel", CV_WINDOW_AUTOSIZE);
Mat ig,ib,ibb;
Mat bkg;
Mat prev;
Mat stor;
cvtColor(ref, ref, CV_BGR2GRAY);
FastFeatureDetector detector(15);
vector<KeyPoint> keypoints1;
detector.detect(ref, keypoints1);
SurfDescriptorExtractor extractor;
Mat descriptors1;
extractor.compute(ref, keypoints1, descriptors1);

....

2 个答案:

答案 0 :(得分:1)

在我看来,设置项目属性存在问题。 properties-&gt; linker-&gt; input-&gt; VS中的其他依赖项。如果您添加了opencv_features2d244.lib和opencv_nonfree244.lib,可以仔细检查

答案 1 :(得分:0)

  1. 将您需要使用的所有DLL复制到DEBUG文件夹或您的exe所在的位置。
  2. 检查所有源路径和标头路径
  3. 祝你好运。你很可能发现了一个丢失的DLL神话,找到opencv_nonfree244.dll,opencv_features2d244.dll以及你的cv安装文件夹中的所有其他dll并将它们复制到该文件夹​​中应该修复它。