ps.只需要文件的直接跳到最后!
1.vs2015对应VC14,opencv2.4.9最多只有到VC12的,所以需要自己编译
2. 官网下载opencv2.4.9的源码:
https://github.com/opencv/opencv/releases/tag/2.4.9
解压后的目录,其中build_win32和build是我自己新建的,用来保存编译生成的文件
下载CMAKE: 我下载的是3.9.0
https://cmake.org/download/
1. 打开CMake,设置源文件路径,和生成路径,第一步我新建的build和buildwin32 我之前用过了,所以这里我另外建了一个文件夹 test来演示。
2.然后点击Configure,会出现编译器的选项,Visual studio 14 2015生成win32的解决方案,Visual studio 14 2015 win64生成x64的解决方案。这里只演示前一种。
提示 Configuring done,红色的可选项我没有修改过:
3.接下里点击Generate,提示Generate done。这时生成目录test下,已经生了opencv的解决方案。点击open Projection或者直接用vs2015打开opencv.sln
4.vs中,配置管理器里只有win32,没有x64,因为前面cmake选择的是vs 14 2015,如果选择vs 14 2015 win64,这里就只有x64,没有win32. debug和release两种模式都有。找到ALL_BUILD,右键生成,会有一个生成失败的,不用管,然后找到 INSTALL,右键生成。 这时test中会出现一个install,该文件下有三个目录:bin(存放动态链接文件dll),lib(静态库文件),include(源文件).注意,目前bin和lib中都是debug模式的,release的只需要将vs改成release模式,再把ALLBUILD和INSTALL生成一遍即可。
新建一个项目。找到属性管理器,debug-win32。后4个是原本就有的。Micross.Cpp.Win32.user是vs的默认属性表,如果在这个表中配置了,以后的项目都不用再配置了。因为我之前装了opencv3.2的,所以这里新建了一个属性表用来配置opencv2.4.9. 自己取得名:opencv249_debug_win32。 以后需要用到opencv249,只需要添加这个表就可以了。
1.包含目录,打开opencv249_debug_win32. 通用属性->VC++目录->包含目录。 添加前面test中 install下的include,include下的opencv,和opencv2.
2.库目录。通用属性->VC++目录->库目录。添加前面test中 install下的lib
3.附加依赖项。 链接器->输入->附加依赖项。 将下面的粘贴进去即可。
opencv_calib3d249d.lib
opencv_contrib249d.lib
opencv_core249d.lib
opencv_features2d249d.lib
opencv_flann249d.lib
opencv_gpu249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_legacy249d.lib
opencv_ml249d.lib
opencv_nonfree249d.lib
opencv_objdetect249d.lib
opencv_ocl249d.lib
opencv_photo249d.lib
opencv_stitching249d.lib
opencv_superres249d.lib
opencv_ts249d.lib
opencv_video249d.lib
opencv_videostab249d.lib
4.动态链接文件dll。这时如果运行项目出现错误,提示找不到opencv**d.dll. (debug生成的dll文件名字中比release多一个d)那么执行下面的步骤。
将bin下的dll文件复制到 C:\Windows\SysWOW64。 注意,当前生成的dll是win32下的。如果是x64下的,则放到
C:\Windows\System32 。反过来的!!!
这篇文章有解释这个问题:https://www.cnblogs.com/hbccdf/p/dllchecktoolandsyswow64.html
5.环境变量。 很多文章有提到设置环境变量,这里我没有设置,但目前已经能正常运行了。
上述过程是在debug_win32下完成的。运行程序也只能配置成debug_win32.
需要release,x64的,重复上述过程就可以了。哪些地方不一样都指出来了。
如果嫌编译过程麻烦,可以直接下载我编译好的,两个都一样,积分多的麻烦下第一个,谢谢咯!
opencv249_vs2015(CSDN) (需要1个积分/币)
opencv249_vs2015(百度盘)(免费)