OpenCV入门一:在Windows下编译扩展OpenCV 3.2.0

做项目过程中用到OpenCV中opencv_contrib下的一些模块,需要重新对OpenCV进行编译。

准备工作

下载OpenCV安装包:到sourceforge或github上下载3.2.0版本版本。
在这里插入图片描述
下载opencv_contrib源码
在这里插入图片描述
下载cmake-gui工具:http://www.cmake.org/cmake/resources/software.html
在这里插入图片描述
打开cmake相应的文件夹,可以直接使用bin文件夹下面的工具cmake-gui.exe使用。(免安装)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这里我将OpenCV源码放在了C:\OpenCV\下了,在使用Cmake时,我们需要定位到源码文件夹C:\OpenCV\opencv\sources。在C:\OpenCV\下新建了文件夹CV13用于存放编译后的文件并将opencv_contrib源码文件夹重命名为contrib,放置在CV13文件夹下。

在这里插入图片描述
点击Generate按钮开始编译(这里特别要注意的是,自己机器上是否装有相应的VS版本,如果没有装,还是要编译就会出错,可能是找不到对应的工具原因)。

这里需要注意的是编译器的选择,图片中选择的是VS 2013 x86也就是32bit的编译器。这会跟你所引入OpenCV的工程配置相关。如果是64bit,这里必须使用Visual Studio 12 2013 x64版本的编译器。

在这里插入图片描述

第一次编译完成后,需要将额外的opencv_contrib加入工程中进行二次编译,在配置表中找到“OPENCV_EXTRA_MODULES_PATH”,设置其参数值为open_contrib源码包中的modles目录。

在这里插入图片描述
设置完成之后点击Configure进行配置,不报错的话就进行点击Genrate第二次编译:
在这里插入图片描述

编译完成后,我们在资源管理器下查看上面设置的文件输出目录,发现目录下多出了很多文件,其实就是OpenCV.sln工程文件
在这里插入图片描述用VS打开OpenCV.sln工程,在解决方案中可以查看工程目录。编译生成debug版本的库,记得在此之前要选择编译的平台信息,这就是编译生成debug版本和release版本的区别,也可以选择release,因为自己的工程可能要用到相应的动态链接库。这里我生成的是Win32的Debug动态库。
在这里插入图片描述
在解决方案中选中工程,右键选择重新生成解决方案。找到CMakeTargets中的INSTALL,然后右键选择“仅限于项目”–>“仅生成INSTALL”。
在这里插入图片描述
然后,在工程目录下的install目录中,可以看到生成了一堆文件:
在这里插入图片描述

把新的库文件配置到到项目中

1.VC++目录–>包含目录,添加:

C:\OpenCV\CV13\opencv\install\include

C:\OpenCV\CV13\opencv\install\include\opencv

C:\OpenCV\CV13\opencv\install\include\opencv2

2.VC++目录–>库目录,添加:

C:\OpenCV\CV13\opencv\install\x86\vc12\lib

3.链接器–>输入–>附加依赖项,添加: (下面添加的debug的版本,注意添加的库与编译选项要一致,需要注意debug比release的文件名多了个d)
在这里插入图片描述
4.注意添加一下环境变量:
在这里插入图片描述

参考链接:
https://www.cnblogs.com/jliangqiu2016/p/5597501.html
https://blog.csdn.net/poem_qianmo/article/details/19809337

猜你喜欢

转载自blog.csdn.net/asmartkiller/article/details/89314622