windows编译opencv+opencv_contrib 以及解决cmake下载文件失败问题

一、需要下载的软件

  • opencv下载:下载连接,选择你想要的版本下载Source code,我下载的是410版本,如果你需要训练xml分类器的可执行文件,就用3.4.1(别问为什么,我就试过这一个,是有的!)
  • opencv_contrib下载:下载链接,选择你要下载的版本,注意openv和opencv_contrib一定是要对应的版本
  • Visual Studio 2019,我下载的是2019,当然其他的版本也可以啦!不多介绍,网上教程很多。
  • Cmake下载:下载地址,一般选择最新的版本下载就行了。

二、使用Cmake生成工程文件

首先是新建build文件夹,其实这个可以放在任何位置,不过为了方便我把它跟opencv还有opencv_contrib放在同一个文件夹底下了,文件结构如图:

上图中的download文件夹稍后用到的时候再说,前面的操作可以不管。

然后打开Cmake

Where is the source code 选择opencv-4.1.0文件夹,因为我直接下载的源代码,所以直接选opencv-4.1.0文件夹,如果你是在官网下的exe文件解压的就选里面的src文件夹。

Where to build the binaries 选择你之前新建的build文件夹的位置,如图:

然后点击Configure,会弹出来如下对话框:
我选的Visual Studio 2019,因为我安装的是这个版本的,你就选你安装的哪个版本就行了
选择Finish,稍等一会儿,期间会下载一些文件,一般都是下载失败的,不过不要慌,出现Configure done 如图:

在Search里面输入MOD,添加OPENCV_EXTRA_MODULES_PATH值,即在Value处填入opencv_contrib路径下modules文件夹的路径,如下图


改好之后再次点击Configure,出现configure done之后点击Generate,最后应该是下图这样的:

中间有报错下载失败的,我们先不管,进入下一步骤

三、使用VS编译

打开build文件夹,双击OpenCV.sln文件,用VS打开,点击左侧解决方案资源管理器展开,将Debug改为Release(按自己需求选择Debug还是Release)

选中解决方案"Opencv" 右击选择 重新生成解决方案这个稍微需要点时间,耐心等一下

可以看见,成功139个,失败4个,有失败的肯定不行啊,失败的原因就是因为之前cmake的时候下载文件失败了,所以编译的时候找不到文件,我们打开build文件夹下的 CMakeDownloadLog.txt 文件,以其中一个未下载成功的文件为例:

可以看见第一行后头是有一个网址的,这个就是下载失败的文件的下载地址:https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm.i ,你把该地址复制到浏览器就可以下载文件了(得搭梯子),其他的也是同样的操作。

我把所有的可能会下载失败的文件都下载下来传到百度云了,下载地址:链接:https://pan.baidu.com/s/1K0xH0GTh6LnaecNiT–hGQ
提取码:7m3w
就是我开始说的opencv文件夹下的download文件夹,我把所有文件都放在download文件夹里了

然后转到VS,
再次右键解决方案资源管理器,选择生成解决方案注意不是重新生成解决方案了!)你就可以看见错误信息了

  1. D:\opencv\opencv_contrib-4.1.0\modules\xfeatures2d\src\boostdesc.cpp(653,20): fatal error C1083: 无法打开包括文件: “boostdesc_bgm.i”: No such file or directory

  2. D:\opencv\opencv_contrib-4.1.0\modules\xfeatures2d\src\vgg.cpp(490,20): fatal error C1083: 无法打开包括文件: “vgg_generated_120.i”: No such file or directory

那么找到opencv_contrib-4.1.0\modules\xfeatures2d\src\boostdesc.cpp文件,打开,可以看见在653行左右有一个 #include “boostdesc_bgm.i”

我们将他改成如下图:(所有#include 后面都得改啊,不只是下图显示的几个,后面还有!):

即改成你下载的该文件的位置(D:\opencv\download\是因为我文件存在该文件夹里的)

第二个错误也是相同的操作,打开D:\opencv\opencv_contrib-4.1.0\modules\xfeatures2d\src\vgg.cpp 在488行左右,修改好以后如下图:

下面还有两个错误

D:\opencv\opencv_contrib-4.1.0\modules\xfeatures2d\test\test_features2d.cpp(51,10): fatal error C1083: 无法打开包括文件: “features2d/test/test_detectors_regression.impl.hpp”: No such file or directory

D:\opencv\opencv_contrib-4.1.0\modules\xfeatures2d\test\test_rotation_and_scale_invariance.cpp(7,10): fatal error C1083: 无法打开包括文件: “features2d/test/test_detectors_invariance.impl.hpp”: No such file or directory

这两个错误简单,只需要将opencv-4.1.0/modules/ 文件夹下features2d文件夹复制到build文件夹下即可

然后再次右键解决方案资源管理器,选择生成解决方案,出现失败0个就可以了


然后找到INSTALL,右击,选择“仅用于项目->仅生成INSTALL” 就可以啦!dll以及lib文件还有头文件在build/install文件夹下。
至此opencv4.1.0+opencv_contrib4.1.0就编译完成了!

编译opencv3.4.1的时候还遇见了

D:\opencv\opencv
3.4.1\modules\stitching\include\opencv2/stitching/detail/matchers.hpp(52,12): fatal error C1083: 无法打开包括文件: “opencv2/xfeatures2d/cuda.hpp”: No such file or directory

解决方法:将opencv_contrib-3.4.1 \modules \xfeatures2d \include \opencv2文件夹中所有文件复制到 build \opencv2 文件夹底下(即 将两个opencv2文件夹合并)

然后再次选择生成解决方案就可以啦,后面步骤就跟上面一样了,最后生成的opencv_createsamples.exe和opencv_traincascade.exe文件在build \ install \ bin文件夹底下

如果有什么问题欢迎跟我交流
QQ:172561916

windows编译opencv+opencv_contrib 以及解决cmake下载boostdesc_bgm等文件失败问题相关推荐

  1. 解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 (转载)

    解决Ubuntu"下载额外数据文件失败 ttf-mscorefonts-installer"的问题 发表于 2017-09-15 | 更新于 2018-04-29 | 分类于 Li ...

  2. 解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题

    参考博客:传送门 下载[ttf-mscorefonts-installer.zip](https://pan.baidu.com/s/1i5rLfMH) 密码: h76g 然后解压到下载的目录,在当前 ...

  3. 解决 Chrome 下载不了东西 失败 - 已屏蔽 的问题

    解决 Chrome 下载不了东西 失败 - 已屏蔽 的问题 参考文章: (1)解决 Chrome 下载不了东西 失败 - 已屏蔽 的问题 (2)https://www.cnblogs.com/SHGF ...

  4. 两步快速解决浏览器上传本地文件失败问题

    两步快速解决浏览器上传本地文件失败问题 学校教学平台上传作业总是没法弹出本地目录,经过查资料和试验,我总结了解决方法,只需两步. 使用到的浏览器 ie浏览器 目录 两步快速解决浏览器上传本地文件失败问 ...

  5. Windows下编译OpenCV+opencv_contrib

    文章目录 前言 一.写在前面重要的事 二.正文 1.安装步骤 2.编译及配置 总结 前言 在学习OpenCV特征检测与匹配时,因为OpenCV3.x版本将SIFT.SURF.ORB算子等的源代码从官方 ...

  6. Winodws10 VS2019 Clion CMake 编译 OpenCV rc 系统找不到指定的文件。NMAKE : fatal error U1077

    在从源码编译开源库这条路上,怎么这么多坑给我踩? 这次是编译 OpenCV. 简单总结 在 Windows10 系统下,使用 VS2019 编译链,在 Clion 编译 OpenCV 时,出现报错,报 ...

  7. windows编译opencv opencv-contrib

    新的项目需要用到ARuco等一系列工具,但是这部分的库只在opencv-contrib中用,因此我需要在windows上重新配置&编译opencv和它对应版本的opencv-contrib.在 ...

  8. pip换源,解决pip下载超时,连接失败等问题

    前言 做python开发的时候,我们需要用到很多第三方提供的包作为支撑,由于这些包很多都是来自国外,导致经常可能下载失败,甚至连接超时等问题发生,这些都是非常可恼的,严重影响了我们codeing的正常 ...

  9. C++解决Curl下载https地址文件出错的问题(curl_easy_perform 返回60)

    问题描述 使用curl下载https地址文件时,调用 curl_easy_perform 函数返回错误码60,表示CURL_SSL_CACERT错误,大概的意思是没有设置证书.当前使用的 curl版本 ...

  10. Windows由于在创建转储期间出错,创建转储文件失败导致的蓝底白字蓝屏重启,最全细解决方案

    problem 1.蓝底白字蓝屏重启 2.系统日志发现转储文件失败 3.最近换过固态硬盘(图文无关) Analyse 1.什么是转储文件 可能是虚拟内存,也可能是崩溃时的Debug信息.. 2.怎么创 ...

最新文章

  1. [转] Leaving patterns practices
  2. android opengl es 纹理 不同设备 白色,android – OpenGL ES 2.0纹理没有在某些设备上显示...
  3. 【TensorFlow】Anaconda下快速安装TensorFlow教程
  4. QQ协议分析及其还原(一)
  5. ASP.NET Core loves JavaScript
  6. 关于算法模板和规范的说明
  7. 时间轴的实现(简单到爆炸)
  8. 伦巴时间步的动作要领_拉丁舞教学视频,拉丁伦巴舞基本动作
  9. 图像坐标球面投影_比较常用的坐标几种投影
  10. jquery快速入门(二)
  11. 图片相似度识别在线_图片相似度计算的几种方法
  12. QCC303x调试笔记-修改自定义提示音
  13. 小米商城html+css+js全代码
  14. 【每天学点Python】案例四:52周存钱挑战
  15. SOLIDWORKS 2018官方正版功能介绍
  16. 微信小程序setData不起作用
  17. c语言百文百鸡问题答案,算法的举例(。。。
  18. Vbs中sendKeys
  19. linux 配置trac界面显示为中文,Trac的安装和配置
  20. ACdream原创群赛(18)のAK's dream

热门文章

  1. Lena图像分解成小块与从小块合成
  2. java fckeditor下载,Fckeditor与Java web 整合代码
  3. SQL Server 2008 R2 学习总结
  4. 多周期MIPS CPU硬布线控制器设计
  5. 如何删除IOS--CISCO IFS简介
  6. 非平稳序列的随机分析
  7. 【技术白皮书】第四章:信息抽取技术产业应用现状及案例(下)
  8. 2022年Python最新面试题汇总及答案
  9. uniapp实现头像上传
  10. xcode ios 怎么导入p12证书