win7 x64 +vs2015 + cmake3.10.3编译opencv-3.4.1+opencv_contrib-3.4.1源码,并进行配置


简介:

一直以来都是在ubuntu下使用opencv,最近因为有《图像处理与模式识别》这门课,需要使用vs2015+opencv提交课程作业,因为opencv官方编译好的exe没有contrib部分,就索性自己来cmake,还是鼓足了很大的勇气的,不过还是要勇敢踩坑。

一、编译前准备

1.cmake3.10.3     

官网下载,或者【百度云下载】,提取码【hk1p】,自行百度自己安装

2.opencv源码

opencv-3.4.1:   https://github.com/opencv/opencv/releases

opencv_contrib-3.4.1: https://github.com/opencv/opencv_contrib/releases

二、cmake编译opencv

1.打开cmake,首先编译opencv-3.4.1, 选定 源码路径 和 编译输出路径 ,如下图:

这里我自己定义的源码路径是:D:/opencv3.4.1/sources/opencv-3.4.1 , 编译输出路径是: D:/opencv3.4.1/build

然后单击 configure ,  并选择如下图所示的配置,(我的电脑装的是vs2015 x64)

 

   

然后点击Finish,就可以开始进行编译了。                                       

2. 编译opencv-3.4.1过程中遇到的问题,及解决办法

出现问题的原因的是,cmake过程中,需要从国外网站下载一下文件,导致下载不下来。

具体做法是,自己去取下载这三个文件,这里我给出容易下载失败的文件百度云链接,也可以去源码对应的github仓库中的3rdparty中下载自己没有下载成功的文件

opencv_ffmpeg_64.dll   【百度云下载】,提取码:【p4tu】

oepncv_ffmpeg.dll         【百度云下载】,提取码:【qvm6】

ffmpeg_version.cmake  百度云下载】,提取码:【bm61】

上面文件分别在下面两个压缩文件中,可以去仓库下载,这里我也给出自己下载的链接

       ffmpeg相关:【百度云链接】,提取码:【fvy4】   ippicv相关:【百度云链接】,提取码:【2q72】

解决方法:可以参考这个博客【参考链接

但是我需要说的是,我在配置过程中在编译ippicv_2017u3_win_intel64_general_20170822.zip时,无论我怎么弄始终没有成功,后来我就索性把 WITH_IPP 给勾选掉了,这才编译通过,当然这是权宜之计,尽量还是都配置。

3. 编译opencv_contrib-3.4.1

OPENCV_EXTRA_MODULES_PATH 下将opencv_contrib-3.4.1路径加入进去,如下图

编译这个的过程中,竟然没有出错,通常可能也会因为网速的原因而失败的。具体可能失败的文件及解决办法也可以参考上述那个博客!

4.  Cmake最后一步

    最后点击  “Generate”  ,然后出现 Configuring done, 这时候我们就编译好了opencv-3.4.1 + opencv_contrib-3.4.1的源码了

5. opencv在vs2015下的配置

这里就不展开说了,网上有很多教程,一步一步照着来就好了

6. 测试程序

1 #include<opencv2\opencv.hpp>
2 using namespace cv; 3 int main() 4 { 5     Mat srcImage = imread("1.jpg");//图片必须添加到工程目录下 6                                   //也就是和main.cpp文件放在一个文件夹下!!!
7     imshow("srcImage", srcImage); 8     waitKey(0); 9 }

能正确打开一张图片,说明opencv编译和配置成功


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM