opencv_contrib安装笔记

本文详细介绍了如何在Windows上安装和编译opencv及opencv_contrib,包括下载、CMake配置、Visual Studio编译、环境变量配置以及测试过程。特别提示了在编译过程中可能出现的文件下载失败问题及其解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


近来由于需要用到 opencv 的SIFT特征,但是SIFT等功能已经移入了opencv_contrib 中,所以需要重新编译opencv和opencv_contrib。

一、下载与安装

  1. 下载特定版本的 opencvopencv_contrib,两者版本要一致。但是由于国内下载GitHub 有时候会非常慢,所以可以下载码云上面的库(opencv码云库opencv_contrib码云库)。


    下载 CMake(https://cmake.org/download/)
  2. 下载并安装 visual studio ,安装时添加使用C++的桌面开发
  3. 安装 CMake ,用CMake编译opencv和opencv_contrib

    opencv 的 Windows安装包实质上是一个自解压文件,双击解压即可。

二、编译 opencv


注意 source code 里面指向的不是opencv的解压目录而是里面的source目录。
如图所示, source 文件夹下面有一个CMakeList.txt文件,如果路径错误,就会报CMake Error: The source directory "/opencv" does not appear to contain CMakeLists.txt.错误。

build 目录为自己建立的空目录
点击“ config ”

如下,看到自己安装的 visual studio 版本,点击finish。

开始编译,等待。

运气不好的话下方出现红色字体,就是有错误出现。如下图所示,是一些文件下载失败

IPPICV: Download failed: 28;"Timeout was reached"
FFMPEG: Download failed: 6;"Couldn't resolve host name"
FFMPEG: Download failed: 6;"Couldn't resolve host name"
FFMPEG: Download failed: 6;"Couldn't resolve host name"

打开日志文件,使用里面的地址从浏览器里面下载文件。

文件下载之后,放置在文件相应位置,并修改文件名。

可以看到原本路径下文件下载失败,所以是 0KB ,所以需要手动下载下来进行替换。
替换之后:

由于这几个文件可能下载起来比较慢,这里提供网盘链接:

ippicv_2019 链接: https://pan.baidu.com/s/1E5hY2gh-rZgHX2QM-VR8Rw 提取码: qs2w
ippicv_2017 链接: https://pan.baidu.com/s/1enrzXCm_BCgSOw-vnMJMpg 提取码:dsit
opencv_ffmpeg.dll 链接: https://pan.baidu.com/s/1qa4maq1mBKlCLJCTSRZ4PA 提取码:cdes
opencv_ffmpeg_64.dll 链接: https://pan.baidu.com/s/1WaL0h8NhmA2yW941-00_OQ 提取码:ryhy

当 CMake 界面上下两块都没有红色部分,且下方出现了Configuring done,点击generate按钮

直到下方出现
Configuring done Generating done
此时说明 opencv 基本库编译完成。
如果按照默认编译过程,编译出的opencv文件夹会过大,可能接近26G,我们可以选择一些部分不需要config,包含:BUILD_DOCS
BUILD_EXAMPLESBUILD_PACKAGEBUILD_TESTSBUILD_PERF_TESTSBUILD_opencv_python。(相关的一些说明
方法是在 search 对话框中输入以上名称,然后取消这些的选中。

三、编译 opencv_contrib

在 search 对话框中输入OPENCV_EXTRA_MODULES_PATH,找到OPENCV_EXTRA_MODULES_PATH后在value中填入编译opencv_contrib解压目录中的modules路径(注意此处路径的反斜杠\要改成正斜杠/,反斜杠\有转义字符的意思)。目录错误则会出现Error in configuration process, project files may be invalid弹窗错误提醒。


以下为路径错误时的弹窗:

在搜索栏中输入 OPENCV_ENABLE_NONFREE ,在value值中点击选中。如果没有选中,那么类似SIFT这种已经被申请专利的方法就无法使用。
然后点击 configure

在下方出现 Configuring done 之后,点击Generate

和 opencv 基本库编译一样,CMake下方出现Configuring done Generating d

opencv_contrib是一个包含了一些额外功能和模块的开源计算机视觉库。它包含了一些不在主要OpenCV库中的功能,比如SIFT特征等。为了使用这些额外功能,你需要重新编译OpenCVopencv_contrib。首先,你需要下载opencv_contrib的源码,并将其解压到你的OpenCV文件夹下。然后,根据你的配置和需求,使用CMake重新编译OpenCVopencv_contrib。具体的安装和配置步骤可以参考相关的教程和文档。\[2\]\[3\] #### 引用[.reference_title] - *1* [Opencv(C++)系列学习---opencv_contrib安装](https://blog.csdn.net/qiaodahua/article/details/127987767)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [opencv_contrib安装笔记](https://blog.csdn.net/weijifen000/article/details/93377143)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [opencv_contrib安装教程](https://blog.csdn.net/weixin_51229250/article/details/120110646)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 74
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值