1.下载OpenCV Releases - OpenCV 选择需要的Win pack版本下载
2.下载完成后双击,根据导引解压到指定路径
3.下载并安装cmake
4.下载并安装VS2017
5.运行cmake-gui,在界面的where is the source code路径选择解压后的OpenCV的source路径比如...opencv4.0.0\sources
在界面的where to build the binaries路径选择解压后的OpenCV的build路径比如...opencv4.0.0\路径
PS:其中sources文件夹下是opencv3.0的源码和示例,build是使用vs编译成的项目,我们需要的是build文件夹下生成的文件
6.点击cmake-gui的configure,在弹出的界面选择相应的VS
7.上个步骤之后cmake会自行编译,第一次编译的时候一般不会通过,会出现一片红,可以继续点“configure”,直到所有内容变为白色,同时状态栏会提示“Configuring done”。
8.手动勾选BUILD_opencv_world和BUILD_EXAMPLES后,再次点击configure,
PS:勾选BUILD_opencv_world,主要是把所有的lib文件都弄到一个opencv_world341d.lib中方便配置,若不勾选在最后会产生大量.lib文件,导致最后配置Opencv到vs会太麻烦,有有过OpenCV动态链接库的人都知道。勾选 BUILD_EXAMPLES,就是编译Opencv自带的例程
9.待状态栏会提示“Configuring done”,点击Generate来生成工程配置
10.在OPENCV_EXTRA_MODULES_PATH 把路径选择为解压的opencv_contrib4.0.0文件中的“modules”文件夹..\opencv_contrib-4.0.0\opencv_contrib-4.0.0\modules.
PS:请从GitHub - opencv/opencv_contrib: Repository for OpenCV's extra modules下载
11.CMake 配置完成之后可以直接点击Open Project来打开工程
12.在VS中在解决方案资源管理器里面右键ALL_BUILD,点击生成;生成完成后再右键INSTALL,点击生成
PS:根据情况选择需要编译的版本,Debug x64或Release x64
13.以上所有步骤完成之后就能够生成可以使用的库文件了。
PS:可看到,以上所有的步骤的最终目的都是为了生成可以使用的库文件。其实,OpenCV是一个库,我们使用的时候就是使用这个库,就是我们的程序需要链接这些库。那为什么我们下载下来后可以下到编译好的库,怎么还要自己再编译?
1.OpenCV3使用内核+插件的架构形式,抛弃了整体构架。官网上提供的编译好的库只包含其核心模块,并不包OpenCV_contrib中的扩展模块。2.我们也可以对其源代码进行修改,重新编译后为自己所用。