1、下载OpenCV源码

官网:Releases - OpenCV

2、下载OpenCV-Contrib源码

GitHub地址:opencv_contrib

为什么要下载OpenCV contrib呢?

​ 因为自从OpenCV 3.0之后,很多经典的算法,比如sift和surf特征点检测算法,由于专利原因,已经不包含在OpenCV的源码当中了,需要下载OpenCV contrib包才能继续使用。

选择一个,点进去,此处选择的版本需要和上面下载的OpenCV版本一致:

点击下载zip源码

3、下载安装CMake

官方下载地址:Download | CMake

4、下载安装Visual Studio

官方下载地址:Visual Studio 2022 IDE (microsoft.com)

最新版本是VS2022,社区版足够用,若需要安装专业版和企业版可网上寻找激活密钥

下载的只是VS的安装程序,下载安装后启动,只选择使用C++进行桌面开发即可

5、整理文件

源码下载后解压,为简单明了,将其放在一个文件夹中,并创建一个build文件夹,用来存放编译后的文件

6、配置编译选项

​ 需要保证有良好的网络环境,最好可以科学上网,要保证可以下载以https://raw.githubusercontent.com开头的文件,因为接下来会下载一些缺失的文件,均是从该链接下下载的,若没有良好的网络环境,需要看之后的修复过程。

等待一会,会出现以下界面,若为红色,可再点击一下Configure

此处要在搜索框中搜索要勾选/取消勾选的内容如下:

  • BUILD_opencv_world 主要是把所有的lib文件都弄到一个opencv_world450d.lib中方便配置。

  • OPENCV_ENABLE_NONFREE 是为了在编译成功后可以使用具有专利保护的算法,如果该变量不被选中,就不能使用具有专利保护的算法,使用opencv-contrib时务必勾选;

  • OPENCV_EXTRA_MODULES_PATH ,选择opencv_contrib源码里的modules文件夹。如果这个变量为空,只是安装了OpenCV的基础版,不包括opencv-contrib

  • 输入test 找到OPENCV_PERF_TESTSBUILD_TESTSBUILD_opencv_python_tests 不勾选

  • 输入java 查找BUILD_JAVABUILD_opencv_java_bingdings_generator不勾选,若需要java环境应勾选;

  • 输入python 查找BUILD_opencv_python3BUILD_opencv_python_bingdings_generator不勾选,若使用Python可以勾选,但若Python使用OpenCV,建议安装opencv-pythonopencv-contrib-python,使用pip即可安装。

完成上述步骤后,点击Generate

7、使用VS进行编译生成

点击Generate无错误完成后,再点击Open Project使用VS打开项目,右键点击解决方案,选择批生成:

然后勾选这两项后,点击生成

等待一段时间,会生成完成,时间由你电脑性能决定,快的话十来分钟就好:

然后找到刚才创建的build文件夹下,找到install文件夹,里面的内容即是编译好的文件。

8、问题解决

​ 在配置编译选项时,可能会出现很多报错情况,如下图所示,有的电脑虽然最后也显示配置完成了,但是也还是有很多文件没有安装完成,这在编译或后续的使用过程中可能会出现很多问题。

​ 错误的原因是因为国内网络无法正常从github中下载文件,所以需要我们手动下载文件,然后再复制到对应的文件夹中。

​ 错误解决时,只需要注意这些下载错误即可,对于一下关于Python的缺失,可以不用管,因为并不编译和Python相关的OpenCV

(1)CMakeDownloadLog.txt文件

​ 该文件记录了一些文件的下载链接和下载后要存放的地址,如下图所示,cmake_download标志了哪一行是关于下载的,之后就是文件下载后要保存的位置,最后是下载地址。此处需要注意的是,保存的文件名和下载的文件名称不一样,保存的文件名称=下载文件的md5值+下载文件名。

注意:CMake中点击ConfigureGenerate均可能有文件下载,所以点击最好点击完后再去找CMakeDownloadLog.txt文件进行解析和下载文件。

(2)下载文件并移动

​ 复制上面的下载地址,然后去下载,下载完成后重命名,然后移动到对应的文件夹,指定的路径可能存在文件,最好删除,因为那里面的文件大多是未下载完成的文件。

​ 对于文件下载,若是之前运行CMake时报错,那么手动下载文件大概率也会无法下载或下载速度缓慢,此处需要用到github加速站来加速文件下载了。

有很多加速站可用,这里提供两个暂时可用的:

  • GitHub Proxy 代理加速 (ghproxy.com)

  • GitHub 文件加速 (91chi.fun)

如下图所示,将文件下载链接输入到输入框中,点击下载即可加速下载。或直接在原链接前加上加速站的链接,如:

原下载链接:https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat加速后的下载链接:https://ghproxy.com/https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat

VS编译OpenCV和OpenCV-contrib相关推荐

  1. 如何在ARM开发板上从源码编译安装OpenCV和OpenCV contrib

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文主要介绍如何在ARM开发板上从源码编译安装OpenCV和OpenCV contrib. OpenC ...

  2. QT学习:Qt 5.11.1+OpenCV (含Contrib)-3.4.3环境搭建

    一.安装CMake CMake是用于编译的基本工具,其下载地址为:https://cmake.org/download/,下载获得的安装包 文件名为cmake-3.12.3-win64-x64.msi ...

  3. DM8168 OpenCV尝试与评估(编译ARM版OpenCV)

     交叉编译opencv2.3.1,并在DM8168 cortex A8中执行图像处理. 开发环境: PC:ubuntu12.04LTS.Intel Core 2 Duo CPU  E7200@2. ...

  4. ubuntu16.04编译安装c++ opencv与vscode配置debug

    一.编译安装c++ opencv 1.下载zip包 本文安装的是opencv3.4.3,下载链接,以Sources方式下载zip包. 2.安装依赖 sudo apt-get install build ...

  5. opencv扩展包contrib算法简介

    opencv扩展包contrib算法简介 An overview of the opencv_contrib modules - **aruco**: ArUco and ChArUco Marker ...

  6. g++编译使用到opencv: undefined reference to `cv::String::deallocate(),

    g++编译一个包含opencv的文件,报错如下: tinyyolopostprocessor.cpp:(.text._ZN2cv6StringD2Ev[_ZN2cv6StringD5Ev]+0x14) ...

  7. 【OpenCV学习】 《OpenCV3编程入门》--毛星云 01 邂逅OpenCV(OpenCV基本概念与基本架构) ROS系统上的运用(python实现)

    对 <OpenCV3编程入门>第一章的学习笔记:理解什么是计算机视觉,什么是OpenCV,以及其中的联系等等. PS:此书为2014年出版,opencv的版本和接口也与现在有些不一致了,作 ...

  8. Cmake编译配置opencv3.3+contrib+cuda7.5

    这次配置cuda加速真是遇到各种错误,前后折腾了三四天才总算成功了.下面是我的编译配置opencv的步骤以及遇到的一些坑. 1.准备工作 opencv3.3 源文件下载链接:https://githu ...

  9. CV之OpenCV:OpenCV库涉及概念、常见函数、常用案例、HALCON软件简介之详细攻略

    CV之OpenCV:OpenCV库涉及概念.常见函数.常用案例.HALCON软件简介之详细攻略 目录 CV入门 OpenCV使用过程 1.基本教程 OpenCV的相关概念 1.基本概念

  10. vs2017python配置opencv_[opencv +VS2017] opencv、vs2017安装配置,环境搭建

    文章目录 [opencv] 3.4.1下载安装 一.前言 二.说明 三.下载opencv 3.1 获取链接 3.2 下载结果 四.安装opencv 五.配置opencv环境 六.vs2017 6.1下 ...

最新文章

  1. mysql 避免使用NULL字段
  2. mcp2515 芯片驱动总线错误BUG的解决方法(主要无法进入中断bug)
  3. 给指定服务器加路由,无线路由器如何给终端分配指定的IP地址?
  4. 用python爬取淘宝用户数据的单位是_国内有没有数据爬取方面的公司?
  5. geotools读取shp文件及shp文件操作工具类代码
  6. 下面关于html的描述正确的一项是,1 x 证书 Web 前端开发初级理论考试试卷五(2)...
  7. wps如何交叉引用多个文献_WPS中引用参考文献的设置
  8. 将速度加快到自己的个人代码生成器中
  9. 快速排序 动图_Java十大排序算法最强总结
  10. [渝粤教育] 西南科技大学 财务管理与分析 在线考试复习资料
  11. oracle存储过程深入,深入了解oracle存储过程的优缺点
  12. MyEclipse的快捷使用(含关联源码和Doc的方式)
  13. 2021高考分数文科成绩查询,2021高考分数线预测 文科理科分数线是多少
  14. 新手如何从零开始入门前端开发,分享我的学习方法!
  15. 推荐算法工程师必备!!!协同过滤推荐算法总结
  16. c语言上机作业五套含答案,计算机二级C语言上机题库100套(含答案)
  17. yuzu模拟器linux,yuzu模拟器使用教程 yuzu模拟器手机版下载
  18. 如何使用两台无线路由器进行无线桥接(互联)(转)
  19. CloudCompare源码分析之ccViewer模块:应用类(阅读经典)
  20. 大数据处理与分析方向主要干什么_大数据分析_方向_方法与工具

热门文章

  1. un ange frappe a ma porte
  2. 【笔记】《单片机原理与应用》(底部原文下载链接)
  3. java开发装机指南
  4. 如何用区块链防止学历造假?
  5. EggDrop Problem(扔鸡蛋问题)
  6. word简历里如何添加新的一页
  7. RobotFramework功能自动化测试框架基础篇
  8. 西瓜书第一、二章节笔记
  9. 最新~涵盖全微服务操作的Spring Cloud 文档竟出自Alibaba
  10. java 编配和弦_11月18日珠三角城市人口迁徙可视化(和弦图)