一个五一假期的成果:整合一篇OpenCV4.1.0+opencv_contrib4.10编译步骤文档。

OpenCV官方提供了windows可安装的版本,已经有编译好的dll,不过不包括opencv_contrib。如果想应用这部分算法,则需要自己编译opencv,将opencv_contrib编译到opencv中

所需材料:

1.下载opencv源码

源码地址:https://github.com/opencv/opencv/

windows 10编译opencv4.x+opencv_contrib 趟平的坑

2.下载opencv_contrib源码

源码地址:https://github.com/opencv/opencv_contrib

下载方法参考opencv的来就行。

重点来了:防止出现不可预估的错误,我们选择下载与opencv一样的版本(opencv4.1.0+opencv_contrib4.1.0)

好,下载解压之后我的长这样(这一点没有必要完全一致,随意就行,MyBuild文件夹是自己新建的)

windows 10编译opencv4.x+opencv_contrib 趟平的坑

3.安装CMake

下载地址:https://cmake.org/download/ (自选版本地址:https://cmake.org/files/

windows 10编译opencv4.x+opencv_contrib 趟平的坑

根据平台不同选择和自己电脑匹配的包,装上能用就行(建议安装非C盘)

4.用CMake生成vs工程

windows 10编译opencv4.x+opencv_contrib 趟平的坑

第一次点击Configure,弹出对话框,选择编译工程的平台。

windows 10编译opencv4.x+opencv_contrib 趟平的坑

Finish,开始配置

敲黑板地方来了,这里位done并不代表你已经完成一步了(往上翻翻你会发现惊喜的,很多红色错误)

应该是因为下载不全,可通过查看文件CMakeDownloadLog.txt手动下载(这里你得找个可以下载的网络~只可意会不可言传)

操作方法:https://www.cnblogs.com/huluwa508/p/10142718.html(这位大佬就说的很清楚,跟着步骤一顿操作)

windows 10编译opencv4.x+opencv_contrib 趟平的坑

操作完后,这里需要配置几个选项

  • 勾选BUILD_opencv_world,这样在调用dll时,只调用这一个就行了,不用根据功能选择了,省了些麻烦
  • 在OPENCV_EXTRA_MODULES_PATH选项中,填写opencv_contrib解压目录下,modules文件夹的路径,这样就把opencv_contrib编译进去了
  • 如果需要使用SIFT::create,将OPENCV_ENABLE_NONFREE勾上

windows 10编译opencv4.x+opencv_contrib 趟平的坑

windows 10编译opencv4.x+opencv_contrib 趟平的坑

第二次点击Configure,你会发现还会出现一堆红色错误,再根据大佬的教导一顿操作。

第三次点击Configure,(如果你没有配置错误的话就不会出现红色错误了)

if 有 :

    继续手动下载操作

else

    点击 Generate

windows 10编译opencv4.x+opencv_contrib 趟平的坑

长这样之后点击 Open Project 打开vs工程

5.使用vs编译源码

windows 10编译opencv4.x+opencv_contrib 趟平的坑

  1. 选择Debug x64
  2. 点击生译成->生成解决方案开始编,过程比较漫长
  3. 没有错误,然后右击INSTALL,点击“仅用于项目->仅生成INSTALL”
  4. 将编译选项调整为Release x64,重复2,3。此时在“目的路径”的install目录下,生成了调用dll的全部内容

6.配置vs环境

项目-》属性-》vc++目录-》包含目录

windows 10编译opencv4.x+opencv_contrib 趟平的坑

项目-》属性-》vc++目录-》库目录

windows 10编译opencv4.x+opencv_contrib 趟平的坑

链接器(编译工程如果找不到这俩货的话,将这俩文件复制到C:\Windows\System32)

windows 10编译opencv4.x+opencv_contrib 趟平的坑

 

======

阔以了,大功告成了,开始你的表演吧。。。

 

参考链接:

https://www.cnblogs.com/huluwa508/p/10142718.html

https://blog.csdn.net/ezhchai/article/details/80557936?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3

相关文章:

  • 2021-07-18
  • 2021-12-12
  • 2021-10-25
  • 2021-12-22
  • 2021-08-22
  • 2021-04-01
  • 2021-05-01
猜你喜欢
  • 2021-06-22
  • 2021-12-14
  • 2021-09-12
  • 2021-11-06
  • 2021-08-24
  • 2021-07-23
相关资源
相似解决方案