win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)

win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV

  • 准备
  • 安装 OpenCV 和 扩展
  • 开始编译
  • 使用
  • Debug 模式下的错误解决

链接:https://pan.baidu.com/s/1g9LEdIpSIr6INjAF1aG1pA
提取码:crav

所包含的内容:

  • opencv.rar 编译好的OpenCV (含 opencv_contrib 扩展模块)
  • cmake-3.20.1-windows-x86_64.msi
  • opencv_contrib-4.5.2.zip
  • opencv-4.5.2-vc14_vc15.exe
  • MSBuild.rar

准备

  • Visual Studio 2019
  • cmake
  • opencv-4.5.2-vc14_vc15.exe
  • opencv_contrib-4.5.2.zip

安装 OpenCV 和 扩展

双击 opencv-4.5.2-vc14_vc15.exe 选择安装路径,后等待安装完成
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第1张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第2张图片
完成后,在你指定的安装路径下会有一个 opencv 文件夹,将 opencv_contrib-4.5.2.zip 解压到 opencv 文件夹下,并创建 newbuild 文件夹用来存放编译输出文件
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第3张图片

开始编译

打开 CMake 选择 OpenCV 源码所在位置和编译文件输出地址(根据自己实际安装位置选择),如图
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第4张图片
然后点击【Configure】,选择将源码编译成与 Visual Studio 版本相对应的项目工程文件,因为我用的是 Visual Studio 2019,且要使用 64 位的 OpenCV,所以我这里为默认,同时选择使用本地编辑器,接着等待 Configure 完成即出现 Configuring done
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第5张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第6张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第7张图片
构建完成后,会出现很多变量,首先找到 Build_opencv_worldOPENCV_ENABLE_NONFREEOPENCV_EXTRA_MODULES_PATH,前两个打 ✓ \checkmark ,后一个填入扩展模块的源码位置路径,如图所示:
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第8张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第9张图片
然后再次点击【Configure】直到所有红色消失后点击【Generate】开始编译,编译成功会在 newbuild 下生成许多文件

注意:因为会下载东西,又因为有墙,所以你懂的,反正我全程 “VPN”

win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第10张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第11张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第12张图片
newbuild 下找到 OpenCV.sln 文件,用 Visual studio 2019 打开并重新生成解决方案(此处若是 Release 模式下没有问题,若在 Debug 模式下会出现一些错误),若要解决 Debug 模式下的错误请参考文末 Debug 模式下的错误解决
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第13张图片
win10 下编译用于 Visual Studio 2019 的 OpenCV4.5.2(含 opencv_contrib 扩展模块)附编译好的OpenCV(图文)_第14张图片
在这里插入图片描述
然后,找到 CMakeTargets 中的 INSTALL 文件右键选择 “仅用于项目” 中的 “仅生成INSTALL”,会在 newbuild 中生成一个名为 install 的文件,用来配置环境变量的所有文件都存放在这个文件夹中

使用

win10 中 OpenCV4.5.2 的安装与环境配置(含手动编译版本)(图文)

Debug 模式下的错误解决

LNK1104 无法打开文件 “python38_d.lib”
请看文章:win10下用 Visual Studio 2019 重新生成 OpenCV 解决方案报 LNK1104 无法打开文件 “python38_d.lib”

LNK2019 无法解析的外部符号 __imp__Py_NegativeRefcount,函数 _Py_DECREF 中引用了该符号
LNK2019 无法解析的外部符号 __imp_Py_RefTotal,函数 _Py_DECREF 中引用了该符号
LNK1120 两个无法解析的外部命令

请看文章:Visual Studio 2019 重新生成 OpenCV 解决方案报 LNK2019 无法解析的外部符号 __imp__Py_NegativeRefcount、__imp_Py_RefTotal

你可能感兴趣的:(OpenCV学习)