window下编译Opencv3.1.0和opencv_contrib

本文介绍了如何在Windows下编译OpenCV3.1.0及其opencv_contrib模块。首先从指定地址下载opencv3.1.0和opencv_contrib,接着安装CMake并配置相关参数,包括设置OPENCV_EXTRA_MODULES_PATH。然后在Visual Studio中打开生成的解决方案,编译Debug和Release库。最后,将生成的库文件配置到项目中,包括添加包含目录、库目录和附加依赖项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用opencv库时,有可能需要使用opencv_contrib中的代码(许多研究者将自己的算法提到这个github项目),但opencv_contrib的使用会依赖于opencv库。本文介绍如何在window下编译opencv3.1.0和opencv_contrib。

1. 下载所需代码和软件

1.1 opencv3.1.0
地址:https://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.1.0/opencv-3.1.0.exe/download
解压后目录结构如下图:
这里写图片描述
1.2 opencv_contrib
地址:https://github.com/opencv/opencv_contrib
解压后目录结构如下图:
这里写图片描述
1.3 CMake
地址:https://cmake.org/download/
这里写图片描述
可以下载二进制文件,解压后可以直接使用
进入bin文件夹后如下图:
这里写图片描述

2. 使用cmake生成OpenCV.sln

2.1 双击cmake解压文件夹中bin目录下cmake-gui.exe,填写相应参数
这里写图片描述

2.2 左下角有一个Configure按钮,需要点击进行配置
这里写图片描述
此处选择时需要注意生成器的选择,首先vs的版本,其次应用平台(空代表win32,AI代表AMD,win64代表64位)

2.3 第一次点击Configure后,可能会出现下面情况,再点击一次Configure即可
这里写图片描述

2.4 将opencv_contrib加入到工程中,在配置表在配置表中找到“OPENCV_EXTRA_MODULES_PATH”,设置其参数值为open_contrib源码包中的modles目录
这里写图片描述

2.5 点击左下角generate按钮,生成OpenCV项目,然后可以发现生成文件目录中出现了一个完整工程。
这里写图片描述

3. vs打开Opencv.sln工程,编译生成Debug库和Release库,打开后,选择工程,右击,选择“重新生成解决方案”,这里要耐心等待几分钟,如果重新生成解决方案没有错误,继续下一步。

4. 在工程中找到CMakeTargets中的INSTALL,然后右键选择“仅限于项目”–>“仅生成INSTALL”,可以发现”文件存放目录”多了个install文件夹,这就是编译后生成的库文件。
这里写图片描述

5. 最后,将生成的库文件配置到项目中
5.1 VC++目录–>包含目录,添加:
D:\opencv3.1\tools\opencv_contrib\install\include
5.2 VC++目录–>库目录,添加:
D:\opencv3.1\tools\opencv_contrib\install\x86\vc10\lib
D:\opencv3.1\tools\opencv_contrib\install\x86\vc10\staticlib
5.3 链接器–>输入–>附加依赖项,添加: (下面添加的release的版本,注意添加的库与编译选项要一致,需要注意debug比release的文件名多了个d)

 opencv_aruco310.lib
opencv_bgsegm310.lib
opencv_bioinspired310.lib
opencv_calib3d310.lib
opencv_ccalib310.lib
opencv_core310.lib
opencv_datasets310.lib
opencv_dnn310.lib
opencv_dpm310.lib
opencv_face310.lib
opencv_features2d310.lib
opencv_flann310.lib
opencv_fuzzy310.lib
opencv_highgui310.lib
opencv_imgcodecs310.lib
opencv_imgproc310.lib
opencv_line_descriptor310.lib
opencv_ml310.lib
opencv_objdetect310.lib
opencv_optflow310.lib
opencv_photo310.lib
opencv_plot310.lib
opencv_reg310.lib
opencv_rgbd310.lib
opencv_saliency310.lib
opencv_shape310.lib
opencv_stereo310.lib
opencv_stitching310.lib
opencv_structured_light310.lib
opencv_superres310.lib
opencv_surface_matching310.lib
opencv_text310.lib
opencv_tracking310.lib
opencv_ts310.lib
opencv_video310.lib
opencv_videoio310.lib
opencv_videostab310.lib
opencv_xfeatures2d310.lib
opencv_ximgproc310.lib
opencv_xobjdetect310.lib
opencv_xphoto310.lib
ippicvmt.lib

**ps:**opencv_contrib中有些代码是不稳定的,在”重新生成解决方案时”会报错,导致错误代码所在项目无法生成库文件。所以建议需要那部分代码,就只将这部分代码所在项目加入编译。

参考:http://www.cnblogs.com/jliangqiu2016/p/5597501.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值