当前位置: 代码网 > it编程>前端脚本>Python > windows:Opencv使用Cmake & VS 编译, C++、python、Cuda、Qt 环境详细教学及踩坑 一 :编译篇

windows:Opencv使用Cmake & VS 编译, C++、python、Cuda、Qt 环境详细教学及踩坑 一 :编译篇

2024年08月05日 Python 我要评论
windows环境下对opencv对cuda、python、Qt、C++进行编译

测试篇:windows:opencv使用cmake & vs 编译, c++、python、cuda、qt 环境详细教学及踩坑 二 :测试篇-csdn博客

一、准备:

本文使用的软件版本均是撰写时的最新或次新版,对过旧版本不一定通用

0、环境配置:

windows windows 11 专业版 23h2
opencv4.10
qt  6.7.2
cmake3.3.0
python3.12.4
cuda12.5
cudnn9.2.1
vs studio2022

1、 opencv,opencv_contrib 源码下载     本文版本:4.10

github - opencv/opencv: open source computer vision library

github - opencv/opencv_contrib: repository for opencv's extra modules

下载完成后解压opencv 和 opencv_contrib,将opencv_contrib文件夹移入opencv文件夹下,并在opencv文件夹下新建build文件夹。

  软件安装教程引用其他大神的教程,很详细

2、qt 安装                   本文版本:qt 6.7.2

qt下载安装及配置教程(非常详细),从零基础入门到精通,看完这一篇就够了-csdn博客

3、cmake 安装:        本文版本:cmake 3.3.0

windows下的cmake详细安装教程(2024/1/24)_windows 安装cmake-csdn博客

4、python 安装:        本文版本:python 3.12.4

 download python | python.org

1、选择自定义安装

2、选择添加python路径到环境变量

3、选择为所有用户安装

其他选项如图所示,如果cmake需要debug版本的一定要勾选debug有关的选项,否则生成过程中会缺少python3xx_d.lib 文件。

  

 5、cuda 、cudnn 安装:本文版本:cuda  12.5    cudnn 9.2

 先按该教程安装cuda、cudnn:cuda和cudnn安装教程(超级详细)-csdn博客

 cudnn再按官方文档安装一遍:英伟达官方cudnn安装教程

 注意:cudnn一定要按教程,将cudnn文件复制到cuda文件夹下。

否则:如果只是按照官方文档中的教程,编译成功后,python import cv2 时无法调用cudnn中的dll文件。报错:

!!注意:windows下使用cmake编译cuda只能使用vs,否则会无法找到cuda位置

6、vs studio 安装:       

thank you for downloading visual studio community edition

7、上述软件安装完成后重启计算机!!!

二、设置 cmake 选项

    参考:amd customer community

  1. 从“开始”菜单打开 cmake (cmake-gui)
  2. 将“where is the source code”设置为提取的 opencv 文件夹。
  3. 将“where to build the binaries”设置为提取的 opencv 文件夹,并在末尾附加 /build。这将是编译文件的构建位置,您可以将其设置为所需的任何文件夹
  4. 点击“configure”
  5. 弹出窗口选择vs2019作为编译器
  6. generate平台选择x64

对应关系为:

此处的目录结构为:

1、通用编译选项:

参考链接:amd customer community

        使用“搜索”框更改以下属性:

  1. build_protobuf:– 取消选中
  2. with_protobuf:– 取消选中
  3. build_tests:– 取消选中
  4. with_openexr:– 取消选中
  5. build_openexr:– 取消选中
  6. opencv_enable_allocator_stats:– 取消选中
  7. cmake_build_type:– release
  8. cmake_install_prefix:– 这默认为 build/install 目录,但您可以将其更改为您希望将 opencv 库安装到的任何目录。
  9. build_opencv_world:建议勾选,build_opencv_world可以将所有opencv的库都打包编译在一起。
  10. opencv_enable_nonfree:勾选,否则无法使用sift。
  11. with_opengl :勾选
  12. opencv_extra_modules_path – 设置为提取的 opencv_contrib/modules 文件夹的路径。如图所示:

        10、配置完成点击“configure”

报错信息1:

报错信息2: 

解决方案: 

这两类警告,不影响正常编译过程。对此未作处理。

2、cuda 编译选项

参考链接:windows11编译opencv4.5.0 with cuda(附注意事项)-csdn博客

第一次搜cuda时将带cuda的都勾选,点击“configure”

搜索:with_nvcuvenc——取消选中

          with_nvcuvid——取消选中

 配置cuda_arch_bin中将显卡的算力内容改成自己显卡的算力,显卡算力查看链接查看自己显卡的算力,我的显卡是4060laptop,官网算力为8.9。cuda_arch_bin中将低于8.9数值的删除。

cuda编译选项按图进行勾选。

报错信息1:with_nvcuvenc、with_nvcuvid

解决方法:       

        搜索:with_nvcuvenc——取消选中

                   with_nvcuvid——取消选中

报错信息2:opencv_dnn_cuda

解决方法:

搜索cudnn_library,找到并输入cudnn.lib的安装位置

cuda 参考配置:

 打开 advance,配置供参考(不一定要一致,只是提供参考)

3、python 编译选项

参考:【opencv】【gpu】windows10下opencv4.8.0-cuda python版本源码编译教程_cv2的版本4.8.0-csdn博客

python的选项设置如图所示,其中numpy需提前进行安装,安装完成python后,打开cmd,输入

pip install numpy

python 参考配置:

4、qt 编译选项

 参考:基于qt5.14.2的opencv4.8.0的cuda11.4开发环境搭建和源码编译_opencv4.8编译-csdn博客

 1、搜索qt,设置qt6_dir目录为:qt安装路径/6.7.2/msvc2019_64/lib/cmake/qt6,如图所示。点击“configure”。 

 2、查找qt安装路径\6.7.2\msvc2019_64\lib\cmake\qtest文件夹,将其压缩备份后删除。

 参考:https://github.com/opencv/opencv/issues/23826#issuecomment-2227167370

否则会报错。点击“configure” 此时搜索 qt6test_dir 为 qt6test_dir-notfound。

 报错信息:qtest

解决方案:

 查找qt安装路径\6.7.2\msvc2019_64\lib\cmake\qtest文件夹,将其压缩备份后删除。

 参考:https://github.com/opencv/opencv/issues/23826#issuecomment-2227167370

qt 参考配置:

三、检查配置报告 

!!!检查具有背景色的行,看是否与自己预期一致。

 四、使用vs studio 进行编译

1、点击open project 自动打开vs studio

注意:该opencv_python3 是不可或缺的。没有的话检查是否勾选build_opencv_python3

 2、点击选择release

 3、右键install,点击生成

时间大概1个小时-2个小时左右,按cpu性能而定。若没有失败,则编译成功。

至此编译完成!!!

五、添加环境变量,修改config.py文件

1、修改config.py文件

 编译完成后只有opencv/build/install 文件夹(本文命名为opencv_cp312_410\opencv_410_cp312_amd64_bulid\opencv_410_cp312_amd64 文件夹)是我们所需要的,将install 文件夹移动到你所需的位置后,需要进行如下更改:

1、打开python 安装路径,或者在 cmake配置信息中取得,打开安装路径中的cv2文件夹(本文 install path 为c:/program files/python312/lib/site-packages/cv2/python-3.12,则打开c:/program files/python312/lib/site-packages/cv2 

 2、打开cv2文件夹下的config.py下的

 3、编辑该路径为install的文件路径

2、修改环境变量

 1、打开系统变量中的path

 2、将*(install的文件路径)*/install/x64/vc17/bin 添加到系统变量中

 3、修改环境变量后重启计算机!!!!

编译完成文件下载链接:(仅参考)

百度云链接opencv_cp312_410_win64 提取码:toi4 

下一篇:测试篇

windows:opencv使用cmake & vs 编译, c++、python、cuda、qt 环境详细教学及踩坑 二 :测试篇-csdn博客

参考链接:

amd customer community

最新 | opencv4.8 + cuda + 扩展模块支持编译指南-腾讯云开发者社区-腾讯云

https://www.cnblogs.com/guojin-blogs/p/17939955#4-%e9%a1%b9%e7%9b%ae%e6%b5%8b%e8%af%95

基于qt5.14.2的opencv4.8.0的cuda11.4开发环境搭建和源码编译_opencv4.8编译-csdn博客

windows下配置cmake(入门级教程,适合新人收藏学习)-阿里云开发者社区

windows下cmake的安装与环境变量配置教程_win10配置 cmake环境变量-csdn博客

windows下 c++ opencv配置及x86编译(傻瓜式教程)_opencv x86-csdn博客

opencv源码编译及配置完整版教程(win10+vs2019+opencv-4.4.0+opencv_contrib-4.4.0)_、 .4 ,vcvedv-csdn博客

win10下使用mingw编译安装运行opencv_mingw编译opencv-csdn博客

https://www.cnblogs.com/liushuiruobing/p/17695059.html

【opencv】【gpu】windows10下opencv4.8.0-cuda python版本源码编译教程_cv2的版本4.8.0-csdn博客

opencv4.8 gpu版本cmake编译详细步骤 与cuda代码演示-csdn博客

【opencv】【gpu】windows10下opencv4.8.0-cuda python版本源码编译教程_opencv_牙牙要健康-开放原子开发者工作坊

在windows上编译并使用opencv的正确姿势 | aynakeya's blog

windows下visual studio 编译opencv详细教程(win10+vs2017+opencv4.5.2)(opencv最新版)(特别适合无法科学上网的童鞋们)_windows环境下vsstudio编译opencv-csdn博客

windows编译opencv及扩展模块-csdn博客

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com