(win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功
1.下载opencv 官网http://opencv.org/下载windows版OpenCV,下载后解压,我的路径为D:\Program Files\soft\opencv\OpenCV-PC-sdk, 解压完成后,会在该路径下生成一个名为opencv的文件夹,它包含两个子文件夹,分别为build(支持opencv使用的相关文件目录)和sources(opencv源码目录) 2.配置环境变量 【计算机】->【(右键)属性】->【高级系统设置】->【环境变量】->(双击)系统变量中的PATH->`【新增】->(添加对应路径)D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\bin 3.Visual Studio中工程包含(include)目录的配置 (双击)打开Visual Studio-> 【起始页】->【新建项目】或依次点击菜单栏中的【文件】->【新建】->【项目】-> Visual C++下的【Win32控制台应用程序】,项目名比如HelloOpenCV,选好保存路径->单击【确定】-> 【Win32应用程序向导】->选中【控制台应用程序】并勾选【空项目】->单击【完成】-> 解决方案资源管理器的【源文件】处右键单击->添加->新建项->选中【C++文件(.cpp)】,进行命名,比如“main.cpp”->单击【添加】-> main.cpp中录入以下代码,Ctrl+S保存-> #include <opencv2/opencv.hpp> using namespace cv;
int main() { // 载入图像 Mat _img = imread("1.png"); // 显示图像 imshow("Hello OpenCV", _img); // 表示等待任意按键按下后关闭窗口 waitKey(0); // 表示6秒后自动关闭窗口 //waitKey(6000); return 0; }
我的电脑浏览到项目目录,将1.png图片放到项目下HelloOpenCV/HelloOpenCV目录下(即main.cpp同级目录)-> 回到解决方案资源管理器【源文件】处右键->单击【添加】->【现有项】->选择1.png->【添加】-> 5.导入opencv库相关配置,方案一 【视图】->【其他窗口】->【属性管理器】打开属性页窗口,该窗口进行配置相当于通用配置,以后新建的工程不用再次配置-> 在【Debug|x64】下的【Microsoft.Cpp.x64.user】处右击或双击->【通用属性】->【VC++目录】->【包含目录】-> 添加如下目录(注意,路径要与自己自解压路径相同。我的opencv解压目录是D:\Program Files\soft\opencv\OpenCV-PC-sdk\) D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv2 D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include ->单击【应用】,不要关闭该页,下面还需要-> 【VC++目录】->【库目录】->添加D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib这个路径->单击【确定】关闭该页,此时完成部分通用设置-> 【Debug|x64】处右击->【添加新项目属性表】->命名为"OpenCV_debug.props"->选择保存目录(我的是D:\workspace\visual studio 2015\opencv\myprops,该目录需要提前创建好)->点击【添加】->此时【Debug|x64】栏下生成了名为OpenCV_debug的属性表文件 【OpenCV_debug】处右击(或双击)->【链接器】->【输入】->【附加依赖项】-> 添加如下含d的lib(路径在D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib下) opencv_world330d.lib 添加后单击【确定】->关闭窗口-> 同理在【Release|x64】处右击->【添加新项目属性表】,创建名为OpenCV_release的属性表文件,保存到OpenCV_debug同一个目录即可 【OpenCV_release】处右击(或双击)->【链接器】->【输入】->【附加依赖项】-> 添加如下不含d的lib(路径在D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib下) opencv_world330.lib 单击【确定】关闭窗口->此时所有配置全部ok,重启Visual Studio2015即生效
至此,不管是Debug模式还是Release模式都能正常编译运行.运行时,默认是x86,不要忘记改成x64(运行按钮旁边的下拉框) 新建项目也不用重新设置即可生效,只要创建新项目后->【视图】->【其他窗口】->【属性管理器】-> 【Debug|x64】和【Release|x64】右击->【添加现有属性表】->分别将对应的属性表浏览到添加进来即可(只想在某一种模式中编译运行,只添加对应的就好)
步骤5.导入opencv库相关配置,方案二(【Debug|x64】下的【Microsoft.Cpp.x64.user】文件中不进行任何配置) 【视图】->【其他窗口】->【属性管理器】打开属性页窗口,该窗口进行配置相当于通用配置,以后新建的工程不用再次配置-> 【Debug|x64】处右击->【添加新项目属性表】->命名为"OpenCV_debug.props"->选择保存目录(我的是D:\workspace\visual studio 2015\opencv\myprops,该目录需要提前创建好)->点击【添加】->此时【Debug|x64】栏下生成了名为OpenCV_debug的属性表文件 【OpenCV_debug】处右击(或双击)->【通用属性】->【VC++目录】->【包含目录】-> 添加如下目录(注意,路径要与自己自解压路径相同。我的opencv解压目录是D:\Program Files\soft\opencv\OpenCV-PC-sdk\) D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv2 D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include ->单击【应用】,不要关闭该页,下面还需要-> 【VC++目录】->【库目录】->添加D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib这个路径->单击【应用】不要关闭该页,下面还需要-> 【链接器】->【输入】->【附加依赖项】-> 添加如下含d的lib(路径在D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib下) opencv_world330d.lib 添加后单击【确定】->关闭窗口,此时完成Debug模式的配置-> 同理【Debug|x64】处右击->【添加新项目属性表】->命名为"OpenCV_debug.props"->选择保存目录(我的是D:\workspace\visual studio 2015\opencv\myprops,该目录需要提前创建好)->点击【添加】->此时【Debug|x64】栏下生成了名为OpenCV_debug的属性表文件 【OpenCV_debug】处右击(或双击)->【通用属性】->【VC++目录】->【包含目录】-> 添加如下目录(注意,路径要与自己自解压路径相同。我的opencv解压目录是D:\Program Files\soft\opencv\OpenCV-PC-sdk\) D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv2 D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include ->单击【应用】,不要关闭该页,下面还需要-> 【VC++目录】->【库目录】->添加D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib这个路径->单击【应用】不要关闭该页,下面还需要-> 【链接器】->【输入】->【附加依赖项】-> 添加如下含d的lib(路径在D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib下) opencv_world330d.lib 同理【Release|x64】处右击->【添加新项目属性表】->命名为"OpenCV_release.props"->选择保存目录(我的是D:\workspace\visual studio 2015\opencv\myprops,该目录需要提前创建好)->点击【添加】->此时【Debug|x64】栏下生成了名为OpenCV_release的属性表文件 【OpenCV_release】处右击(或双击)->【通用属性】->【VC++目录】->【包含目录】-> 添加如下目录(注意,路径要与自己自解压路径相同。我的opencv解压目录是D:\Program Files\soft\opencv\OpenCV-PC-sdk\) D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv2 D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include\opencv D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\include ->单击【应用】,不要关闭该页,下面还需要-> 【VC++目录】->【库目录】->添加D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib这个路径->单击【应用】不要关闭该页,下面还需要-> 【链接器】->【输入】->【附加依赖项】-> 添加如下不含d的lib(路径在D:\Program Files\soft\opencv\OpenCV-PC-sdk\opencv\build\x64\vc14\lib下) opencv_world330.lib 单击【确定】关闭窗口->此时所有配置全部ok,重启Visual Studio2015即生效
方案一和方案二优缺点: 方案一:【包含目录】、【库目录】、【附加依赖项】只要在【Microsoft.Cpp.x64.user】配置一次即可。方案二需要重复配置 方案二:虽然配置稍微繁琐,但是新建项目导入两个属性表就具备opencv库,就可开发opencv项目,不导入两个属性表就是普通项目,相对方案一更灵活,方案一即使不导入两个属性表,项目也会包含部分opencv的配置(因为【Microsoft.Cpp.x64.user】中有一部分公共配置)
补充:
1.Visual Studio 2015不允许【Debug|Win32】和【Release|Win32】编译,所以【视图】->【其他窗口】->【属性管理器】中不用设置这2项 vc8 = Visual Studio 2005,vc9 = Visual Studio 2008,vc10 = Visual Studio 2010,vc11 = Visual Studio 2012,vc12 = Visual Studio 2013,vc14 = Visual Studio 2015