VS2015+opencv3.2.0+opencv contrib3.2.0+window10开发环境配置(超详细+下载链接)

一、引言
个人建议,不论是刚入opencv的小白,还是有一定基础的初学者,建议在装opencv编程环境时,把opencv contrib扩展包一并配好,以免后期使用时产生不必要的麻烦。

二、配置资源准备

2.1 VS2015下载安装

2.2 opencv3.2.0,下载链接:(https://opencv.org/opencv-3-2.html)

2.3 opencv_contrib-3.2.0.zip压缩包,下载链接:(https://github.com/opencv/opencv_contrib/releases)

2.4 cmake3.7.0下载与安装
百度云链接:https://pan.baidu.com/s/1eJy2IUINuV2K6dETYe600g
提取码:alqn
配置资源
三、cmake编译

3.1 cmake3.7.0的解压安装之后启动,1.为opencv下面的sources文件夹,2.为cmake之后生成的文件夹,建议新建一个问价夹专门放置编译后的文件,便于后续的配置,3.然后点击configure,开始编译

3.2 选择对应的vs2015的版本,然后点击finish
在这里插入图片描述
3.3 出现下述错误不要怕,别自乱阵脚,
在这里插入图片描述
在这里插入图片描述
这是由于网络的原因,下载不了对应的文件导致的,看编译窗口输出的错误,该错误是由于无法下载opencv ffmpeg.dll文件所致,本文附上
百度云下载链接:https://pan.baidu.com/s/1wONP1cbnaH8EytEr10cI1A
提取码:vx3b
将文件下载解压后,替换之前下载失败后的空文件夹,本文的路径为F:\opencv\opencv\sources\3rdparty\ffmpeg,具体路径根据自己的实际安装路径为准,替换掉downloads文件夹即可,安装包可删可不删,看自己的喜好吧,替换完之后继续configure。
在这里插入图片描述
3.4 你会看到下述的错误,但是也请你不要慌,
在这里插入图片描述
在这里插入图片描述
这是由于网络的原因,下载不了对应的文件导致的,看编译窗口输出的错误,该错误是由于无法下载ippicv_windows_20151201.zip文件所致,本文附上
百度云下载链接:https://pan.baidu.com/s/1-guoohl3hX0KTn5dwMkcNg
提取码:bl75
将文件下载解压后,替换之前下载失败后的空文件夹,本文的路径为F:\opeF:\opencv\opencv\sources\3rdparty\ippicv\downloads\windows-04e81ce5d0e329c3fbc606ae32cad44d,具体路径根据自己的实际安装路径为准,替换掉空文件夹即可,**注意:**文件本身为压缩文件,故而不需要解压,替换完之后继续configure。
在这里插入图片描述
在这里插入图片描述
3.5 这个时候你会看到configure done,到这里就完成了opencv库源码的编译工作,
在这里插入图片描述
3.6 下一步就需要编译opencv_contrib库了,这时需要,在OPENCV_EXTRA_MODULES_PATH,路径上添加上opencv contrib文件modules文件的路径,本文为F:\opencv\opencv_contrib-3.2.0\modules,具体路径可根据自己的实际安装路径为准,然后去掉勾选WITH_CUDA,即不勾选,这时注意是点击generate,不能点击错误,点错之后后面出现的问题本文无法解决了在这里插入图片描述在这里插入图片描述
3.7 这个时候你会看到如下的报错,
在这里插入图片描述
在这里插入图片描述
这是由于网络的原因,下载不了对应的文件导致的,看编译窗口输出的错误,该错误是由于无法下载vgg_generated_48.i文件所致,本文附上
百度云下链接:https://pan.baidu.com/s/17EKsnTtcJsnTS7HpTUpLCQ
提取码:o57q
在这里插入图片描述
将解压后的相应文件,替换掉F:\opencv\opencv_contrib-3.2.0\modules\xfeatures2d\cmake.download\e8d0dcd54d1bcfdc29203d011a797179下面的空文件,
在这里插入图片描述
替换之后,继续点击generate,

3.8 你会看到以下错误
在这里插入图片描述
在这里插入图片描述
该错误是由于无法下载vgg_generated_64.i文件所致,在相应的文件夹下面替换掉该文件即可,替换完后,点击generate,此过程需耐心后续的错误还会出现vgg_generated_80.i,vgg_generated_120.i,等文件下载错误的提示,均按照上述方法解决。

3.9 上述步骤完成后,你会看到如下错误,在这里插入图片描述
这是由于下载boostdesc_bgm.i失败所致,后续还会出现boostdesc_bgm_bi.i,等文件下载失败的错误出现
在这里插入图片描述
本文附上boostdesc_bgm.i系列下载文件路径,
下载链接:https://download.csdn.net/download/weixin_44177645/12355190

下载完成后,解压文件夹,将文件夹里面的内容拷贝至F:\opencv\opencv_contrib-3.2.0\modules\xfeatures2d\src,路径下,具体路径以实际路径为准,然后点击generate,
在这里插入图片描述
当看到下图时,表示你已经完成了cmake编译源码的过程,当时为了看到下图,笔者走了太多弯路了,故此写下详细的配置教程,希望后来者少走弯路。也不枉花时间整理。
在这里插入图片描述
四、VS生成文件
4.1 下图为编译完之后的文件夹。也就是新建的用于存放cmake文件的文件夹,具体路径为,F:\opencv\buildopencv,打开OpenCV.sln文件,
在这里插入图片描述
在这里插入图片描述

INSTALL->右键->仅用于项目->仅生成INSTALL。注意选择的是debug还是release,这就是debug版与release版的区别。bebug版有检测数据是否溢出的功能,release相对反应速度快,为开发方便本文选用的是debug,X64,

4.2 在vs上,点击生成,重新生成解决方案,vs开始生成文件,此过程大约18分钟左右,可以做几组深蹲或俯卧撑了,
在这里插入图片描述
如果按照上述步骤来的话,生成全部成功有几个文件是跳过的,跳过的是phyton相关的,本文忽略,若出现大量编译不通过,请重新按照本文重头开始再次编译,不要心里觉得生成很多垃圾文件,系统环境变了什么的心里顾忌,啥也没有,删除新建的build文件夹,opencv及opencv_contrib,重新解压,在编一次,编译成功后,在build目录下,本文为F:\opencv\buildopencv,会出现install文件夹,后续的配置就是将该文件下的.dll文件和lib文件配置到vs上了,这个过程就很简单了。
在这里插入图片描述
五、opencv及opencv contrib环境配置
5.1 系统环境变量的添加,1.右击计算机->属性->高级设置->环境变量->path,然后添加上…\build\install\x64\vc14\bin,在这里插入图片描述
5.2 打开vs,新建一个空项目,
在这里插入图片描述
在这里插入图片描述
5.3 配置属性
在这里插入图片描述
5.4 在vc++目录上->包含目录,添加上…build\install\include,…build\install\include\opencv,
…build\install\include\opencv2,文件,细心的读者发现配置前后不一致,这是因为笔者配好之后然后又重新配了一次所致,具体就是build文件下面的install文件下的include文件,添加完以后点击确认
在这里插入图片描述
5.5 在vc++目录上->库目录,添加…\build\install\x64\vc14\lib,文件,添加完以后点击确认
在这里插入图片描述
5.6 在链接器->输入->附加依赖项添加下列lib文件,


opencv_aruco320d.lib
opencv_bgsegm320d.lib
opencv_bioinspired320d.lib
opencv_calib3d320d.lib
opencv_ccalib320d.lib
opencv_core320d.lib
opencv_datasets320d.lib
opencv_dnn320d.lib
opencv_dpm320d.lib
opencv_face320d.lib
opencv_features2d320d.lib
opencv_flann320d.lib
opencv_fuzzy320d.lib
opencv_highgui320d.lib
opencv_imgcodecs320d.lib
opencv_imgproc320d.lib
opencv_line_descriptor320d.lib
opencv_ml320d.lib
opencv_objdetect320d.lib
opencv_optflow320d.lib
opencv_phase_unwrapping320d.lib
opencv_photo320d.lib
opencv_plot320d.lib
opencv_reg320d.lib
opencv_rgbd320d.lib
opencv_saliency320d.lib
opencv_shape320d.lib
opencv_stereo320d.lib
opencv_stitching320d.lib
opencv_structured_light320d.lib
opencv_superres320d.lib
opencv_surface_matching320d.lib
opencv_text320d.lib
opencv_tracking320d.lib
opencv_video320d.lib
opencv_videoio320d.lib
opencv_videostab320d.lib
opencv_xfeatures2d320d.lib
opencv_ximgproc320d.lib
opencv_xobjdetect320d.lib
opencv_xphoto320d.lib
lib库共41个


添加完以后点击确认,
在这里插入图片描述
六、代码测试

6.1新建工程-添加源文件-测试代码(sift特征检测)

#include
#include
#include <opencv2/xfeatures2d.hpp>
#include <opencv2/xfeatures2d/nonfree.hpp>
#include <opencv2/highgui.hpp>

using namespace cv;
using namespace std;

int main()
{
Mat src = imread(“1.jpg”);
if (src.data == NULL)
{
cout << “No exist” << endl;
return -1;
}
namedWindow(“input image”, WINDOW_AUTOSIZE);
namedWindow(“output image”, WINDOW_AUTOSIZE);
imshow(“input image”, src);
Ptr sift = xfeatures2d::SIFT::create(400);
vector keypointsa;
Mat a;
sift->detectAndCompute(src, noArray(), keypointsa, a); //得到特征点和特征点描述
drawKeypoints(src, keypointsa, src);//画出特征点
imshow(“output image”, src);

waitKey();
return 0;

}

6.2 测试结果如下,即为成功。如果编译出现错误请参看下述链接:https://blog.csdn.net/u013015629/article/details/52424834
在这里插入图片描述
7.结束语

终于配置完了,希望后来者能看到,赠人玫瑰,手留余香。

发布了1 篇原创文章 · 获赞 1 · 访问量 50

猜你喜欢

转载自blog.csdn.net/weixin_44177645/article/details/105706580