在Windows平台编译OpenCV及开发环境配置

这篇具有很好参考价值的文章主要介绍了在Windows平台编译OpenCV及开发环境配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在Windows平台编译OpenCV及开发环境配置

第一步_软件下载

工欲善其事,“必先有其器”。

  • 以下是需要用到的软件和工具清单
表一
软件 用途 下载地址 版本
VS(Visual Studio) 开发和编译(打工人) https://visualstudio.microsoft.com/zh-hans/downloads/ 社区版就够用,版本选择详见表二
CMake 高效编译和组织代码(中介) https://cmake.org/download/ 版本选择较新的,详见图一
OpenCV 开发机器视觉相关应用(工具) https://opencv.org/releases/ 版本最好选择不要太旧也不要太新的,详见表二
Dependencies 查看dll的依赖 https://github.com/lucasg/Dependencies 最新

1.VS相关注意事项

  • 在官网上选择CMake支持的版本(15、17、19、22)
  • 选择"使用C++的桌面开发"一项就够用了
  • 此软件所需空间较大,注意留足相应空间

2.CMake相关注意事项

  • win64位的平台推荐msi安装包
    • 其他平台按需选择
  • 生成VS解决方案过程中,会下载一些依赖,下载可能会比较慢
opencv 编译 环境变量,后端
图一

3.OpenCV相关注意事项

  • 如果需要拓展库,opencv主库和拓展库的版本要一致
  • 如果用较新版本的VS编译较旧版本的OpenCV,可能会出现些让人摸不着头脑的错误,网络也很少有解决方法
    • 目前用过编译没问题的对应版本如表二
表二
VS版本 OpenCV版本
VS2019 OpenCV4.5.4
VS2022 OpenCV4.8.0
  • 最好用4.0以上版本,因为这之后与之前的版本有较大更新
  • 源码下载后,解压,放在一个目录深度为1或者2的地方最好(参考链接3)
    • 可能涉及到VS能够到达的目录深度(即绝对路径深度)
    • 如果目录放得太深,编译时可能会报无法打开某些文件的错误
  • 安装包的话,直接安装即可(只有win64位的)
opencv 编译 环境变量,后端
图二

第二步_编译OpenCV

不积硅步,无以至千里。

  • 如果想安装的是windows平台64位的OpenCV库,那就无需编译,官方已经贴心的准备好预编译好的库,在官网下载后安装好就可以用了

  • 有在windows平台安装32位OpenCV库的需求的话,可继续看完这一步。

  • 一般以下几种情况需要编译

    • 开发的是32位的软件,只能调用32位的库(在windows平台也就是dll文件)
    • 系统是32位的
    • 需要加入拓展包
  • 编译

    • OpenCV需要编译的原因是因为它是一个开源的计算机视觉库,它提供了大量的图像处理和计算机视觉算法函数。编译过程将源代码转换为可执行的机器代码,以便在特定平台上运行。
    • 在编译过程中,编译器会将源代码转换为目标代码(.o文件),然后链接器将目标代码和其他依赖项(如库文件)合并为可执行文件或动态链接库(.dll、.so文件),以供应用程序调用和使用。
    • 为什么不直接提供预编译的库文件呢?仅提供了使用者较多的win64的编译好的库文件。这是因为不同的操作系统、硬件平台和编译选项可能会导致库文件不兼容或性能下降。通过提供源代码并让用户自行编译,可以确保根据特定的环境和需求进行优化和配置。
    • 编译OpenCV是为了适应不同的平台和需求,以及提供更好的性能和灵活性。

1.CMake启动!

  • 有快捷方式就直接双击启动,找不到入口的可以去安装的目录下找到cmake-gui.exe启动
  • 启动后,选择完源码目录和生成编译文件所在目录后,点击Configure配置平台参数,详见图三
    • 生成编译文件所在目录:一般选择在源码目录下新建个win32build目录,使用该文件夹来存放编译后文件
opencv 编译 环境变量,后端
图三
  • 配置Configure
    • 配置前先装好VS,要不然会报错
    • 选择的VS版本与已安装的VS版本不对应也会报错
    • 如果配置出错,点击左上角File,清空缓存后重新再配置
    • 配置有效的话,会自动下载所需依赖并生成编译选项
opencv 编译 环境变量,后端
图四
  • 首次出现的配置项会显示为红色
  • 编译选项生成后,可根据需要选择
  • 打勾BUILD_opencv_world选项,可以将函数集成一个库文件里
  • 选择完成后,点击Generate,生成VS解决方案
opencv 编译 环境变量,后端
图五
  • 生成完成,点击Open Project打开VS解决方案,打开后按以下步骤,如图六
    1. 右键点击解决方案
    2. 在弹出的菜单中选择批生成
    3. 勾选INSTALL项目中Debug和Release两项配置
    4. 点击生成
  • 之后就是略微漫长的编译过程
opencv 编译 环境变量,后端
图六
  • 图七为编译成功的输出截图,共计耗时42分钟
opencv 编译 环境变量,后端
图七

2.编译过程中报错

  • 目前遇到到过的错误
    1. 无法打开某个lib
    2. 找不到某个文件
    3. CMake下载依赖失败
解决方法
  • 遇到的问题,不一定完全一致,如果出现的问题如上述三点,或比较相似,以下是提供的建议
  1. 减少安装路径深度,把路径改短点(参考链接3)
  2. 按表二提供版本安装相应的VS和OpenCV版本
  3. 下载失败后,文件夹中会出现文件:download_with_curl.sh,用文本编辑器或者直接双击打开,在所有链接前面添加https://ghproxy.com/,复制命令到终端执行,文件里每个下载失败的文件都要执行一次,如图八
    1. 例如:curl --create-dirs --output "D:/Apps/opencv-4.8.0/.cache/ffmpeg/8862c87496e2e8c375965e1277dee1c7-ffmpeg_version.cmake" "https://ghproxy.com/https://raw.githubusercontent.com/opencv/opencv_3rdparty/7da61f0695eabf8972a2c302bf1632a3d99fb0d5/ffmpeg/ffmpeg_version.cmake"
    2. 添加后,复制命令到CMD中执行
    3. 再次点击Configure,就能成功了
opencv 编译 环境变量,后端
图八

配置开发环境

1.创建与配置项目

  • 创建项目
opencv 编译 环境变量,后端
图九
  • 打开属性管理器
opencv 编译 环境变量,后端
图十
  • 在属性管理器里双击相应的平台,打开配置
opencv 编译 环境变量,后端
图十一
  • 在VC++目录里分别添加以下路径

    1. 包含目录:添加OpenCV,include目录
    2. 库目录:添加OpenCV静态库所在的路径
  • 在链接器中输入配置中,添加相应OpenCV版本的附加依赖项,例如以下静态库

    • opencv_world480d.lib
opencv 编译 环境变量,后端
图十二
  • 把运行配置改成对应的平台,如图十三
opencv 编译 环境变量,后端
图十三

2.编写一个demo.cpp

  • 如果执行过程中,报错找不到某个dll,例如opencv_world480d.dll,就把该dll复制到源码所在目录下,demo.cpp代码如图十四
    • 或把该dll所在目录添加到系统环境变量里
    • 程序寻找依赖一般是优先在同级目录下寻找
  • 可在OpenCV源码目录下doc文件夹里面随意找一个图片来验证demo
opencv 编译 环境变量,后端
图十四
  • 若执行成功,出现图片,表示在VS开发OpenCV的环境已经搭建完成

参考链接

  1. Win10,vs2019配置Opencv基础包和扩展包,Cmake下载文件失败以及编译无报错但是代码运行时提示无法定位程序输入点的解决方法。 [1]
  2. GitHub Proxy [2]
  3. ["LINK110:无法打开文件opencv_world342d.lib" OpenCV](https://blog.csdn.net/qq_42661075/article/details/86547054 ""LINK110:无法打开文件opencv_world342d.lib" OpenCV")
  4. 在 Linux 系统中编译安装 OpenCV [3]
  5. 公众号:小白学视觉

参考资料

[1]

Win10,vs2019配置Opencv基础包和扩展包,Cmake下载文件失败以及编译无报错但是代码运行时提示无法定位程序输入点的解决方法。: https://zhuanlan.zhihu.com/p/647129439

[2]

GitHub Proxy: https://ghproxy.com/

[3]

在 Linux 系统中编译安装 OpenCV: https://zhuanlan.zhihu.com/p/392751819

本文由 mdnice 多平台发布文章来源地址https://www.toymoban.com/news/detail-812571.html

到了这里,关于在Windows平台编译OpenCV及开发环境配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Windows环境利用QT+CMake编译mingw版本的opencv

    Opencv官网没有提供mingw版本的opencv库,所以需要自己编译,下面是编译过程,32位64位方法类似。 可以直接下载编译好的mingw版本opencv4.4: 使用CMAKE3.22+QT5.13编译后的opencv4.4(32位的)资源-CSDN文库 如果网络不好,可能会需要自己手动下载下面的文件:  opencv_videoio_ffmpeg.dll+ope

    2024年02月13日
    浏览(34)
  • [保姆教程] Windows平台下OpenCV编译安装和它的Go语言实现gocv的使用(亲测通过)

    一、下载安装 MinGW CMake 预备步骤 首先打开cmd: 下载安装MinGW64 访问: https://sourceforge.net/projects/mingw-w64/files/ 下载: MinGW-W64 GCC-8.1.0 下面的 x86_64-posix-seh 版本 下载后,将它解压缩到 c:mingw64 里 下载安装 CMake 访问:https://cmake.org/download/ 下载:Windows x64 ZIP 解压到: c:cmake Window

    2024年02月16日
    浏览(50)
  • Windows下的CodeBlocks配置Opencv环境

    目录 1.Opencv下载 2.CodeBlocks下载 3.Cmake编译工具下载 4.编译Opencv源码 5.编译OpenCV库文件  (1)方式一  (2)方式二 6.动态链接库文件环境配置 7.CodeBlocks配置 8.编写使用OpenCV例子 9.程序异常终止解决 拓展 提示:建议读者安装或者配置环境变量的路径中最好不要包含任何的特殊

    2024年02月03日
    浏览(35)
  • Windows搭建OpenCV开发环境(C++)

    Windows 10 OpenCV MinGW-w64 CMake CLion 打包下载地址:https://download.csdn.net/download/u012899618/87902325 也可以直接下载编译好的文件(这样可跳过编译的步骤):https://download.csdn.net/download/u012899618/87907660 MinGW和CMake都需要配置(根据实际目录进行配置) 打开命令提示符,输入 如果提示如下

    2024年02月14日
    浏览(35)
  • OpenCV + CLion在windows环境下使用CMake编译, 出现Mutex相关的错误的解决办法

    最近在windows下面用cmake编译OpenCV的项目代码,但是一直碰到找不到mutex的问题,百思不得其解, 查看stackoverfow里面有提到,mingw64有个POSIX的东西,觉得可以一试,就到github上重新下载mingw64 Releases · niXman/mingw-builds-binaries · GitHub  选择x86_64-12.2.0-release-posix-seh-ucrt-rt_v10-rev2.7z版本,重

    2024年02月11日
    浏览(44)
  • Windows下环境配置Cmake、MinGW、OpenCV

    一、安装Cmake 1.选择自己需要下载的版本,下载地址 如cmake-3.26.5-windows-x86_64.msi 2.点击安装,过程中选择为所有用户添加CMAKE PATH 3.安装完成后,编辑账户环境变量 完成后打开cmd终端输入 cmake --version 会输出cmake版本信息,如下图,表示Cmake配置成功 二、安装MinGW 1.点此下载Min

    2024年01月16日
    浏览(35)
  • C/C++开发,linux下OpenCV+gcc+cmake编译环境搭建

    目录 一、源码下载 二、源码编译         2.1 OpenCV源码下载         2.2 cmake安装(非必要)         2.3 opencv安装依赖及支持模块查看         2.4 安装pkgconfig包         2.5 安装opencv依赖包         2.6 真正安装opencv包开始         2.7 opencv环境路径配置 三、案

    2024年02月06日
    浏览(39)
  • 【OpenCV】在VS2017中配置OpenCV开发环境

    开发环境:OpenCV4.5.4、VS2017、x64 打开属性管理器:视图--其他窗口--属性管理器 找到 Release|x64,配置OpenCV环境主要操作的对象就是 Micorosoft.Cpp.x64.user 需要注意的是Micorosoft.Cpp.x64.user 在VS2019里没有了,只能手动创建,手动创建方式:右击Release|x64,选择“添加新项目属性表” 在

    2024年02月08日
    浏览(37)
  • OpenCV 的安装与配置指南(Windows环境,Python语言)

    OpenCV 是一个功能强大的计算机视觉库,广泛应用于图像处理和计算机视觉领域。在本文中,我们将为你提供在 Windows 操作系统上安装和配置 OpenCV 库的详细指南。我们将重点介绍 Python 编程语言的安装和配置步骤,以帮助你顺利开始使用 OpenCV

    2024年02月15日
    浏览(31)
  • OpenCV之Window开发环境配置

    下载opencv开发包       win配置: 双击SDK包解压 解压中   解压成功  配置环境变量    验证环境  创建控制台应用并配置工程属性表添加opencv环境 创建属性表 配置属性 复制属性表并修改名Project1X64_Debug与Project1X64_Release  导入属性表 测试opencv功能 示例代码

    2024年02月11日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包