在windows环境下安装支持CUDA的opencv-python

这篇具有很好参考价值的文章主要介绍了在windows环境下安装支持CUDA的opencv-python。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

附件:GPU和CUDA的关系 —— 开发人员通过CUDA可以使用GPU的计算能力来加速各种计算任务,并提高计算性能和效率。

GPU(图形处理器,Graphics Processing Unit)
是一种专门设计用于图形渲染和并行计算的硬件设备。传统上,GPU 主要用于图形渲染,即将 3D 数据转换为 2D 图像,以显示在计算机屏幕上。然而,由于 GPU 在并行计算方面的强大能力,逐渐引起了开发者的关注,并开始将 GPU 应用于通用目的的并行计算。现代 GPU 具有大量的处理单元(称为 CUDA Core 或 Shader Core),可以同时执行多个并行计算任务,从而在适合并行计算的任务上提供巨大的计算能力。

CUDA(计算统一设备架构,Compute Unified Device Architecture)
是由 NVIDIA 开发的一种用于通用计算的并行计算平台,它提供了一组编程接口和工具,通过 CUDA,开发者可以使用编程语言(如 CUDA C/C++、CUDA Python)编写 GPU 内核函数(称为 CUDA Kernel),并使用 NVIDIA 的 GPU(图形处理器)执行这些内核函数,以加速各种计算任务,包括图形渲染、科学计算、机器学习等。

两者关系:CUDA是一种用于编写并行计算任务的平台和编程模型,而GPU是实际用于执行计算任务的硬件设备。开发人员通过CUDA可以使用GPU的计算能力来加速各种计算任务,并提高计算性能和效率。

一、环境配置

(0)我的电脑配置环境

windows 10
RTX 3090
cuda 11.8.0
python 3.9.16
opencv 4.6.0
# 注意,安装GPU版的openvc之前需要删除原本的opencv 
# 备注:OpenCV官网下载的源码只支持python3.9

(1)CUDA + cuDNN下载与安装

请看博主的这篇文章:https://blog.csdn.net/shinuone/article/details/129054444

(2)OpenCV源码下载与环境配置

OpenCV下载链接Build OpenCV (including Python) with CUDA on Windows,打开后选择找到OpenCV C++ CUDA builds跳转到下载页面,或者直接跳转下载页面OpenCV C++ CUDA builds。

图解教程请看这篇文章
【步骤一】 选择与自己的电脑环境相支持的版本,OpenCV官网下载的源码只支持python3.9。
opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理
【步骤二】 点击opencv_contrib_cuda_4.6.0.20221106_win_amd64.7z,下载并解压缩,得到两个文件夹:install + lib
【步骤三】 添加系统环境变量:电脑 + 属性 + 高级系统设置 + 环境变量 + 系统变量 + Path + 新建 + D:\AI\opencv_contrib_cuda_4.6.0.20221106_win_amd64\install\x64\vc17\bin
【步骤四】 提取源码中的python3\cv2.cp39-win_amd64.pyd并保存到自己的环境中。注意:cp39表示只支持python3.9版本。
(1)复制文件‪D:\AI\opencv_contrib_cuda_4.6.0.20221106_win_amd64\lib\python3\cv2.cp39-win_amd64.pyd
(2)将其保存到Python环境或Anaconda虚拟环境的site-packages中D:\Anaconda\envs\py39\Lib\site-packages\cv2.cp39-win_amd64.pyd
【步骤四】

(3)ImportError: DLL load failed while importing cv2: 找不到指定的模块。

  • 方式一:在cmd中测试是否安装成功

python -c "import cv2; print(f'OpenCV: {cv2.__version__} for python installed and working')"
opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理

  • 方式二:在Pycharm中测试是否安装成功

import cv2
print(f'OpenCV: {cv2.__version__} for python installed and working')
【BUG】将上述代码复制到Pycharm中,系统显示No module named 'cv2'
opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理
且运行结果如下:
opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理

(4)解决方法:添加DLL路径

添加三行代码(需要根据自己的安装环境修改地址)

import os
# 备注:CUDA的安装路径
# 备注:opencv_contrib_cuda的安装路径
# os.add_dll_directory('C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.0\\bin')

os.add_dll_directory(r'D:\CUDA\CUDA02\bin')				
os.add_dll_directory(r'D:\AI\opencv_contrib_cuda_4.6.0.20221106_win_amd64\install\x64\vc17\bin')

import cv2
print(f'OpenCV: {cv2.__version__} for python installed and working')

在源码中系统仍会显示No module named 'cv2' ,但是可以运行成功且不影响后续使用。
opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理
运行结果如下:
opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理

二、测试样本:上传图像到GPU + 从GPU下载图像

opencv支持cuda,深度学习,Python项目实战,windows,opencv,python,图像处理

import os
os.add_dll_directory(r'D:\CUDA\CUDA02\bin')
os.add_dll_directory(r'D:\AI\opencv_contrib_cuda_4.6.0.20221106_win_amd64\install\x64\vc17\bin')

import cv2
print(f'OpenCV: {cv2.__version__} for python installed and working')

# (1)读取图像
image = cv2.imread('your_template.png')
if image is None:
    print("无法加载图像1")

# (2)GPU设置
# print(cv2.cuda.getCudaEnabledDeviceCount())     # 检查是否有可用的 GPU
cv2.cuda.setDevice(0)                           # 设置使用的 GPU 设备索引,0 表示第一个 GPU
# cv2.cuda.printCudaDeviceInfo(0)                 # 打印 GPU 设备信息

# (3)上传与下载
image_gpu = cv2.cuda_GpuMat()                                       # 3.0创建一个空的GPU矩阵
image_gpu.upload(image)                                             # 3.1将图像上传到GPU
screenshot = cv2.cuda.cvtColor(image_gpu, cv2.COLOR_RGB2BGR)        # 3.2图像处理
screenshot = cv2.cuda.resize(screenshot, (400, 400))
result_cpu = screenshot.download()                                  # 3.3从GPU下载处理后的图像到CPU

# (4)打印上传与下载前后的图像属性不改变
print("图像宽度: ", image.shape)
print("数据类型:", image.dtype)
print("在CPU下,原始图像格式:", type(image))

print()
print("在GPU下,处理后的图像格式:", type(screenshot))
print()

print("在CPU下,处理后的图像格式:", type(result_cpu))
print("图像宽度: ", result_cpu.shape)
print("数据类型:", result_cpu.dtype)

# (5)显示图像
if result_cpu is None:
    print("无法加载图像2")
else:
    cv2.imshow("Window", result_cpu)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

三、python使用GPU读取视频

(1)opencv - python使用CUDA处理图像

(2)opencv - python使用CUDA读取视频

(3)opencv - C++使用CUDA的入门教程文章来源地址https://www.toymoban.com/news/detail-716441.html

到了这里,关于在windows环境下安装支持CUDA的opencv-python的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • openCV的CUDA GPU 版本安装 (Ubuntu windows 通用)

    需要做template match, 比较注重时间,因此opencv 的普通版本不适用。需要用GPU 的。 4090的GPU 测试: 使用普通的python-opencv template match 耗时0.089秒。 GPU 版本:0.0065秒 快了13.69倍 Oh YEAH, case sealed 1: visual studio (不是vs code)

    2024年01月22日
    浏览(33)
  • Jetson Orin NX 开发指南(5): 安装 OpenCV 4.6.0 并配置 CUDA 以支持 GPU 加速

    Jetson 系列的开发板 CPU 性能不是很强,往往需要采用 GPU 加速的方式处理图像数据,因此本文主要介绍如何安装带有 GPU 加速的 OpenCV,其中 GPU 加速通过 CUDA 来实现。 参考博客 Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0-CSDN博客Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.

    2024年02月04日
    浏览(38)
  • windows11 安装cuda和cudnn深度学习开发环境

    首先先要确认自己的显卡最高能支持到cuda的版本,一般是不限制版本号的。 然后在官网地址下载: cuDNN的官网下载地址:cuDNN Archive | NVIDIA Developer CUDA 的下载地址:CUDA Toolkit Archive | NVIDIA Developer 有一点需要注意的是,需要查看cuda支持的cudnn版本:  找与自己的cuda 版本对于的

    2024年02月16日
    浏览(37)
  • FFmpeg在 Windows 环境编译(64位)支持h264,h265,和Intel QSV,Nvidia Cuda,AMD amf 硬件加速

    目录 目录 前言 一. 源码包下载 1. FFmpeg源码下载 2. MSYS2安装   2.1 执行下面命令配置环境   2.2 安装完成后将MSYS2安装路径下的mingw64/bin配置到windows环境变量中   2.3 安装其他工具( 默认全部安装 ): 3. 安装CMake工具   3.1 将CMake加入环境变量 4. 下载x264,x265   4.1 x264源码下载:

    2024年02月11日
    浏览(45)
  • Orin 安装CUDA CUDNN TensorRT Opencv和输入法的环境配置

    有两种方法可以安装CUDA环境 在刷机完成的Orin,执行如下命令: 注释–如果在执行第三行命令,报错的话,先查看nvidia-l4t-apt-source.list 将其修改为 修改完后,重新执行上面那三行命令 CUDA 检查是否安装成功 运行命令 输出结果 如果报错,需要把nvcc添加到环境变量,方法如下

    2024年02月10日
    浏览(31)
  • ubuntu20.0.4安装opencv4.2.0和opencv_contrib-4.2.0并支持CUDA,Geforce RTX 3060显卡,算力8.6

    参考:Ubuntu系统---配置OpenCV  1、首先更新 apt-get,在安装前最好先更新一下系统,不然有可能会安装失败。在终端输入: 2、接着安装官方给的opencv依赖包,在终端输入: OpenCV3.4.x版本+Opencv_contrib+Ubuntu16.04安装记录_YuYunTan的博客-CSDN博客 安装前的必备包   这些安装不算十分完

    2024年02月01日
    浏览(48)
  • Windows安装GPU环境CUDA、深度学习框架Tensorflow和Pytorch

    Windows安装GPU环境CUDA、深度学习框架Tensorflow和Pytorch 首先需要安装GPU环境,包括cuda和cudnn。 深度学习本质上就是训练深度卷积神经网络。 cuda:显卡能够完成并行计算任务,所有的操作是比较底层的、复杂的。 cudnn:在cuda之上有一个专门用于深度神经网络的SDK库来加速完成相

    2023年04月26日
    浏览(45)
  • 在Anaconda的虚拟环境上安装cuda、pytorch、opencv以及tensorflow 以及相关报错。

    首先查看自己电脑能支持的cuda版本,查看方法,命令行输入:nvidia-smi 这里我的cuda最高支持11.1的版本,下载的时候找11.1及以下的都可以 然后是在命令行进入提前创建好的虚拟环境(我的虚拟环境名字叫DLGPU,这里要换成自己的) 然后去pytorch的官网里可以找到下载cuda和对应

    2024年02月05日
    浏览(83)
  • Windows 系统从零配置 Python 环境,安装CUDA、CUDNN、PyTorch 详细教程

    进入anaconda官网:https://www.anaconda.com/ 点击 download 下载文件,我这里是 Anaconda3-2022.10-Windows-x86_64.exe (后续更新版本exe文件会有差别) 下载后打开 .exe 文件下载 anaconda: 选择安装路径(用默认的路径也可以): 这里两个都选: 然后安装就可以了。 打开 cmd,输入 conda(如果是

    2024年02月03日
    浏览(82)
  • opencv报错cv2.error: OpenCV(4.8.0) D:aopencv-pythonopencv-pythonopencvmodulescoresrcalloc.cpp:

    opencv报错: 这个错误通常表示你的计算机内存不足,导致OpenCV无法分配需要的内存。解决此问题的方法如下: 增加计算机内存:如果你的计算机内存过小,可以考虑增加内存来解决该问题。 释放不需要的内存:在运行大型程序时,你可以尝试释放一些不需要的内存,如关闭

    2024年02月21日
    浏览(29)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包