OpenCV_CUDA_VS编译安装

一、OpenCV

我这里是下载的OpenCV4.5.4,但是不知道到在vs里面build时一直报错,后面换了4.7.0的版本测试,安装成功。

Release OpenCV 4.5.4 · opencv/opencv · GitHub

这个里面有官方预编译好的OpenCV库,可以直接食用。

扩展包:

https://github.com/opencv/opencv_contrib/releases/tag/4.5.4

二、cmake

这里cmake版本要求应该不是很高,20以上的版本的都行。

Index of /files/v3.22

三、Cuda

cuda版本比这里的版本低应该就行了。具体的的操作可以参考下面的一篇博文。 

https://developer.nvidia.com/cuda-toolkit-archive

四、cudnn

cudann的版本一定要与cuda的版本相对于,我这里就是应该这个原因,导致cmake生产的时候的要报错,他这里写的CUDA 12x,貌似不是对于12的任意版本。一定要明确和自己的版本对上。

CUDA Deep Neural Network (cuDNN) | NVIDIA Developer

这里才是下的正确的版本的8.8.0. 

默认安装目录:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0。这个后面要用。

英伟达驱动教程:windows10+nvidia驱动+cuda10.1+cudnn安装教程_Bubble_water的博客-CSDN博客 

五、cmake编译

建议如果可以的话,记得把梯子打开,不然很多东西下载不了,需要自己去下载。

然后点击configure。 

添加扩展包的路径。

cuda的全部选上。 

这里的test我们不需要。 

然后再次点击configure。 

勾选上CUDA_FAST_MATH,通过CUDA_ARCH_BIN设置我们显卡的最高算力,可以在官网查看。

nonfree也要勾选上。

 然后Generate

六、VS编译

然后用vs打开下面的工程 

点击ALL_BUILD,进行编译,第一次可能需要一两个小时的时间。

 编译成功后,就可以点的install进行安装了,几分钟的时间就解决了。

安装成功后是在cmake刚刚配置的路径下的install目录下的。 

然后需要将bin目录加到系统的环境变量PATH里,方便程序在运行时能够找到对应的动态库。

七、VS配置OpenCV

这里需要添加项目属性表,记得它的位置,下次直接添加就行了,不然每次都要配置opencv的路径和库文件。

 包含目录里面配置opencv的头文件路径。

库目录这里配置opencv的库文件路径。 

然后还要添加依赖项也就是每个库的名称,这里用python写了一个脚本用来读取文件名。 

生产目录下文件名的脚步:

import os
# readInfo函数,根据文件夹路径读取文件夹下所有文件名
def readInfo():filePath = r'F:\cv\opencv-4.7.0\cuda\install\x64\vc17\lib'name = os.listdir(filePath)         # os.listdir方法返回一个列表对象return name# 程序入口
if __name__ == "__main__":fileList = readInfo()       # 读取文件夹下所有的文件名,返回一个列表print(fileList)file = open('train.txt', 'w')   # 创建文件,权限为写入for i in fileList:rowInfo = i + '\n'print(rowInfo)file.write(rowInfo)

八、运行测试

yolov5_dnn_cuda

这里是运行cuda 的yolov5保的错误。

报错:Could not locate zlibwapi.dll. Please make sure it is in your library path

解决办法:深度学习-解决Could not locate zlibwapi.dll. Please make sure it is in your library path_Elan韩的博客-CSDN博客

 资源下载:Could not locate zlibwapi.dll. Please make sure it is in your library path_一休哥※的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/129687.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React 展开运算符

0x00 前言 CTF 加解密合集CTF Web合集网络安全知识库溯源相关 文中工具皆可关注 皓月当空w 公众号 发送关键字 工具 获取 0x01 展开运算符 1. 展开数组 <script type"text/javascript">let arr1 [1,3,5,7,9]let arr2 [2,4,6,8,10]console.log(...arr1)&l…

TCP IP网络编程(四) 基于TCP的服务器端、客户端

文章目录 理解TCP、UDPTCP/IP协议栈链路层IP层TCP/UDP层应用层 实现基于TCP的服务器端、客户端TCP服务器端的默认函数调用顺序进入等待连接请求状态受理客户端连接请求TCP客户端的默认函数调用顺序基于TCP的服务器端、客户端函数调用关系 实现迭代服务器端、客户端实现迭代服务…

RK3399平台开发系列讲解(内核调试篇)spidev_test工具使用

🚀返回专栏总目录 文章目录 一、环境二、执行测试三、回环测试四、字节发送测试五、32位数据发送测试沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 在 Linux 系统上,“spidev_test” 是一个用于测试和配置 SPI(Serial Peripheral Interface)设备的命令行工具。…

Java拓展--空间复杂度和时间复杂度

空间复杂度和时间复杂度 文章目录 空间复杂度和时间复杂度空间复杂度时间复杂度**评价排序算法****时间频度****什么是时间频度****忽略常数项****忽略低次项****忽略系数** **时间复杂度****什么是时间复杂度****计算时间复杂度的方法****常见的时间复杂度** **常见的时间复杂…

Weblogic(CVE-2017-10271)与 Struts2(s2-045) 反序列化漏洞复现

文章目录 Java 反序列化漏洞复现weblogic环境搭建漏洞复现 Struts2(s2-045)环境搭建漏洞复现**漏洞利用** Java 反序列化漏洞复现 weblogic Weblogic < 10.3.6 ‘wls-wsat’ XMLDecoder 反序列化漏洞&#xff08;CVE-2017-10271&#xff09; ​ Weblogic的WLS Security组…

【ARM CoreLink 系列 2 -- CCI-400 控制器简介】

文章目录 CCI-400 介绍DVM 机制介绍DVM 消息传输过程TOKEN 机制介绍 下篇文章&#xff1a;ARM CoreLink 系列 3 – CCI-550 控制器介绍 CCI-400 介绍 CCI&#xff08;Cache Coherent Interconnect&#xff09;是ARM 中 的Cache一致性控制器。 CCI-400 将 Interconnect 和coh…

SUMPRODUCT函数

SUMPRODUCT函数返回相应范围或数组的个数之和。 默认操作是乘法&#xff0c;但也可以执行加减除运算。 本示例使用 SUMPRODUCT 返回给定项和大小的总销售额&#xff1a; SUMPRODUCT 匹配项 Y/大小 M 的所有实例并求和&#xff0c;因此对于此示例&#xff0c;21 加 41 等于 62。…

pytorch中的词性标注_seq2seq_比较naive的示例

一、各种用法_查漏补缺&#xff1a; 1.关于numpy中的argmax的用法&#xff1a; numpy之argmax()函数 - 知乎 (zhihu.com) 具体看这篇文章够了 二、代码注释&#xff1a; 参考&#xff1a; Sequence Models and Long Short-Term Memory Networks — PyTorch Tutorials 2.0.…

【1++的数据结构】之map与set(二)

&#x1f44d;作者主页&#xff1a;进击的1 &#x1f929; 专栏链接&#xff1a;【1的数据结构】 文章目录 一&#xff0c;前言二&#xff0c;红黑树的概念及其性质三&#xff0c;红黑树的插入四&#xff0c;红黑树的验证五&#xff0c;map与set的封装红黑树迭代器的实现map重载…

qt 正则表达式

以上是正则表达式的格式说明 以下是自己写的正则表达式 22-25行 是一种设置正则表达式的方式&#xff0c; 29-34行 : 29行 new一个正则表达式的过滤器对象 30行 正则表达式 的过滤格式 这个格式是0-321的任意数字都可以输入 31行 将过滤格式保存到过滤器对象里面 32行 将验…

快人一步进入智能新纪元,《新程序员006》来了!

文 | 王启隆 曾浩辰 出品 | 《新程序员》编辑部 亲爱的 CSDN 以及《新程序员》的读者朋友们&#xff0c;金秋将至&#xff0c;《新程序员006&#xff1a;人工智能新十年》也正式与大家见面&#xff01;现在点击下方封面&#xff0c;即可订阅&#xff0c;立即阅读电子书。精美…

UNIX网络编程卷一 学习笔记 第三十章 客户/服务器程序设计范式

开发一个Unix服务器程序时&#xff0c;我们本书做过的进程控制&#xff1a; 1.迭代服务器&#xff08;iterative server&#xff09;&#xff0c;它的适用情形极为有限&#xff0c;因为这样的服务器在完成对当前客户的服务前无法处理已等待服务的新客户。 2.并发服务器&#x…

Java笔记040-反射/反射机制、Class类

目录 反射(reflection) 一个需求引出反射 反射机制 Java反射机制原理图 Java反射机制可以完成 反射相关的主要类 反射机制的优点和缺点 反射调用优化-关闭访问检查 Class类 基本介绍 代码解释部分 类加载方法 应用实例&#xff1a;Class02.java 获取Class类对象 …

【17 > 分布式接口幂等性】2. Update的幂等性原理解析

一、 根据 唯一业务号去更新 数据的情况 1.1 原理 1.2 操作 1.3 实战 Stage 1&#xff1a;表添加 version 字段 Stage 2&#xff1a;前端 > 版本号放入隐藏域 Stage 3&#xff1a;后台 > 使用版本号作为更新条件 二、更新操作没有唯一业务号&#xff0c;可使用Tok…

RP9学习-1

一.基础 1.10个面板位置示意图&#xff1a; 2.常用英文 1.鼠标点击&#xff1a;click or tap 3.工作区 1.恢复默认工作区&#xff1a; view-->reset view 2.自定义工作区&#xff1a; 可以用鼠标左键拖动面板到独立的位置或者吸附到其他面板上 3.自定义工具栏 view-->T…

Adobe Acrobat Reader界面改版 - 解决方案

问题 日期&#xff1a;2023年9月 Adobe Acrobat Reader下文简称Adobe PDF Reader&#xff0c;此软件会自动进行更新&#xff0c;当版本更新至2023.003.20284版本后。 软件UI界面会大改版&#xff1a;书签页变成了右边、工具栏变到了左边、缩放按钮变到了右下角&#xff0c;如…

打造高效的私密论坛网站:Cpolar内网穿透+HadSky轻量级搭建指南

文章目录 前言1. 网站搭建1.1 网页下载和安装1.2 网页测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;2.3 Cpolar稳定隧道&#xff08;本地设置&#xff09;2.4 公网访问测试 总结 前言 经过多年的基础…

怎么激活IDM

IDM是一个下载软件。 激活它需要用到git上面的一个项目&#xff0c;同时网络要能连到github GitHub - lstprjct/IDM-Activation-Script: IDM Activation & Trail Reset Script WINR 输入powershell 输入命令行 iex(irm is.gd/idm_reset) 或者 iwr -useb https://raw.…

vim常用操作

一、Esc键 & 命令模式 1.撤销&#xff1a;u 恢复撤销&#xff1a;Ctrl r 2.定位 行首&#xff1a;0 行尾&#xff1a;$ 第7行&#xff1a;7G 3.编辑 下行开始插入&#xff1a; o 删除行&#xff1a;dd 复制3行并粘贴&#xff1a;3yy ---> p 复制单词并粘贴&#…

【Leetcode-面试经典150题-day22】

目录 97. 交错字符串 97. 交错字符串 题意&#xff1a; 给定三个字符串 s1、s2、s3&#xff0c;请你帮忙验证 s3 是否是由 s1 和 s2 交错 组成的。 两个字符串 s 和 t 交错 的定义与过程如下&#xff0c;其中每个字符串都会被分割成若干 非空 子字符串&#xff1a; s s1 s2 …