我正在尝试使用 OpenCV 运行 Visual C++。我已将 OpenCV 链接到 Visual Studio 2012。当我尝试运行代码时,它给了我一个错误;
LINK : fatal error LNK1104: cannot open file 'opencv_calib2d246.dll'
这是我想做的:
#include "stdafx.h"
#include "opencv2\highgui\highgui.hpp"
#include "opencv2\core\core.hpp"
#include<iostream>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
if(argc !=2)
{
cout <<"usage: display_image ImageToLoadAndDisplay"<<endl;
return -1;
}
Mat image;
image=imread(argv[1],CV_LOAD_IMAGE_UNCHANGED);
if(! image.data)
{
cout<<"couldn't open or find the image"<<endl;
return -1;
}
namedWindow("Display Window",WINDOW_AUTOSIZE);
imshow("Display Window",image);
waitKey(0);
return 0;
}
我已经包含了所有的库。我在 Windows 7 32 位系统上使用 OpenCV 2.4.6。
我还需要添加什么,还是必须在程序中初始化它?
更新
OpenCV在我硬盘的路径:E:\opencv\opencv
。系统环境变量中的路径:%OPENCV_DIR%\x86\vc11\bin;
,我在其中创建了一个新变量作为 OPENCV_DIR 并将路径指定为 E:\opencv\opencv\构建
。在 linker\command line
/OUT:"E:\VS2012 Projects\cvtest\Debug\cvtest.exe"/MANIFEST/NXCOMPAT/PDB:"E:\VS2012 Projects\cvtest\Debug\cvtest.pdb"/DYNAMICBASE "opencv_calib3d248.lib"opencv_calib3d248d.lib opencv_contrib248.lib opencv_contrib248d.lib opencv_core248.lib opencv_core248d.lib opencv_gpu248d.lib opencv_highgui248.lib opencv_highgui248d.lib opencv_imgproc248.lib opencv_imgproc248d.lib “opencv_nonfree248d.lib” “opencv_objdetect248.lib” “opencv_objdetect248d.lib” “opencv_ocl248.lib” “opencv_ocl248d.lib” “opencv_photo248.lib” “opencv_photo248d.lib” “opencv_stitching248.lib” “opencv_stitching248d.libre” “sopen2c” “opencv_superres248d.lib” “opencv_ts248.lib” “opencv_ts248d.lib” “opencv_video248.lib” “opencv_video248d.lib” “opencv_videostab248.l ib""opencv_videostab248d.lib""kernel32.lib""user32.lib""gdi32.lib""winspool.lib""comdlg32.lib""advapi32.lib""shell32.lib""ole32.lib""oleaut32. lib""uuid.lib""odbc32.lib""odbccp32.lib"/DEBUG/MACHINE:X86/INCREMENTAL/PGD:"E:\VS2012 Projects\cvtest\Debug\cvtest.pgd"/MANIFESTUAC:"level=' asInvoker' uiAccess='false'"/ManifestFile:"Debug\cvtest.exe.intermediate.manifest"/ERRORREPORT:PROMPT/NOLOGO/TLBID:1
现在我无法加载图像。没有 fatal error ,什么也没有。它正在考虑 if 语句并且不加载任何内容。
有什么建议吗?
最佳答案
您需要设置的不仅仅是链接器依赖项,而且您很可能错过了一个步骤。
我建议关注 this教程,因为它将帮助您完成设置。
关于opencv - fatal error LNK1104 : cannot open file 'opencv_calib3d246.dll' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32391772/