【发布时间】:2017-04-04 07:49:56
【问题描述】:
我开始在我的项目中使用 opencv,但是在 vs 2012 中设置它时遇到了一些问题。
我下载 OpenCV 2.4.13。我经历了很多教程,但我收到一个错误提示
The program can't start because opencv_core2413d.dll is missing from your computer. Try reinstalling the program to fix this problem
这是我的所有设置步骤:
1) 设置Windows环境变量,路径为“C:\opencv\build\x64\vc11\bin”
2) 在vs 2012中打开一个空项目,将配置管理器改为64位平台。
3)然后在VC++目录中添加“C:\opencv\build\include”和“C:\opencv\build\include\opencv” -> 包含目录
4) 在 VC++ 目录 -> 库目录中添加“C:\opencv\build\x64\vc11”
5) 切换到C/C++ -> 常规 -> 附加包含目录,添加“C:\opencv\build\include”
6) 将“C:\opencv\build\x64\vc11\lib”添加到链接器 -> 常规 -> 附加库目录
7) 将以下内容添加到链接 -> 输入 -> 附加依赖项
opencv_core2413d.lib
opencv_calib3d2413d.lib
opencv_contrib2413d.lib
opencv_features2d2413d.lib
opencv_highgui2413d.lib
opencv_imgproc2413d.lib
这是我使用 openCV 的主要测试
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main( int argc, char** argv ){
Mat image;
if( argc != 2){
cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
image = imread("HappyMan's Girl.jpg", CV_LOAD_IMAGE_COLOR);
// Read the file
}
else{
image = imread(argv[1], CV_LOAD_IMAGE_COLOR);
}
if(! image.data ){// Check for invalid input
cout << "Could not open or find the image" << endl ;
system("pause");
return -1;
}
namedWindow( "HappyMan - Display window", CV_WINDOW_AUTOSIZE );
// Create a window for display.
imshow( "HappyMan - Display window", image );
// Show our image inside it.
waitKey(0);
// Wait for a keystroke in the window
return 0;
}
我能得到一些帮助吗?
谢谢
更新了我的系统变量设置图片:
【问题讨论】:
-
opencv_core2413d.dll是否存在于C:\opencv\build\x64\vc11\bin中?如果是这样,您是否在修改系统路径后重新启动? -
@drescherjm 我检查了路径,文件存在。我尝试重新启动,但错误仍然存在。我没有收到编译错误,但是当我在调试模式下运行时,它会弹出该错误
-
你的步骤看起来不错..你能发布你的路径变量吗?你能把应用程序二进制文件复制到opencv bin目录并在那里启动吗?
-
风格不好(尤其是调试库)。最好将它们正确地放入您的 PATH 变量中,或者将它们放入 buil/target 目录并选择它作为调试器的工作目录。
-
这说明你对windows系统路径变量的修改是错误的。
标签: c++ visual-studio opencv visual-studio-2012