windows OpenCV(包含cuda)最简安装教程

windows OpenCV(包含cuda)最简安装教程

1. 在Windows下安装vcpkg

vcpkg是一个开源的C++包管理器,它能帮助我们轻松地安装和管理C++库和工具。要在Windows上安装vcpkg,可以按照以下步骤进行:

  1. 克隆vcpkg仓库
    首先,打开命令提示符或者PowerShell,然后执行以下命令来克隆vcpkg的GitHub仓库到本地目录(例如:C:\tools\vcpkg):

    git clone https://github.com/microsoft/vcpkg
    
  2. 构建vcpkg
    接下来,导航到vcpkg的目录,并执行bootstrap-vcpkg.bat脚本来构建vcpkg。例如,如果您将vcpkg仓库克隆到C:\tools\vcpkg,则可以执行以下命令:

    cd C:\tools\vcpkg
    .\bootstrap-vcpkg.bat
    

如果在运行 bootstrap-vcpkg.bat 时出现权限错误,请以管理员身份运行命令提示符

通过上述步骤,您应该已经在Windows上成功安装了vcpkg。现在,您可以使用vcpkg来安装和管理您项目所需的C++库和工具。例如,要安装SFML库,可以运行vcpkg install opencv4命令。

2. 安装CUDA工具包和配置环境变量(可选,如果不需要GPU部分可以跳过)

2.1. 预备条件

为了获得最新的操作系统、CUDA、CUDA驱动和NVIDIA硬件的兼容软件版本,请参考NVIDIA cuDNN支持矩阵。

2.1.1. 安装NVIDIA图形驱动

在您的Windows系统上安装最新的NVIDIA图形驱动。

  • 访问:NVIDIA下载驱动程序
  • 从下拉菜单中选择GPU和操作系统版本。
  • 按照网页上的指示下载并安装NVIDIA驱动程序。如需更多信息,请选择ADDITIONAL INFORMATION标签,查看安装驱动程序的逐步指南。
  • 重新启动您的系统以确保图形驱动程序生效。
2.1.2. 安装Windows的CUDA工具包

请参考以下说明来安装Windows上的CUDA,包括CUDA驱动和工具包:NVIDIA CUDA安装指南。

2.2. 为Windows下载cuDNN

为了下载cuDNN,请确保您已注册NVIDIA Developer Program。

  • 访问:NVIDIA cuDNN主页。
  • 点击“Download”。
  • 完成简短的调查并点击“Submit”。
  • 接受条款和条件。将显示cuDNN的可用下载版本列表。
  • 选择您想要安装的cuDNN版本。将显示可用资源的列表。
  • 下载Windows的cuDNN包(zip格式)。
2.3. 在Windows上安装

以下步骤描述了如何构建依赖于cuDNN的程序。

请将8.x和8.x.y.z替换为您的特定cuDNN版本。

在以下步骤中,包目录路径被称为。

  • 导航到包含cuDNN包的目录。

  • 解压cuDNN包。

    cudnn-windows-x86_64-*-archive.zip
    
  • 将解压包中的以下文件复制到NVIDIA cuDNN目录。

    • 复制bin\cudnn*.dllC:\Program Files\NVIDIA\CUDNN\v8.x\bin
    • 复制include\cudnn*.hC:\Program Files\NVIDIA\CUDNN\v8.x\include
    • 复制lib\cudnn*.libC:\Program Files\NVIDIA\CUDNN\v8.x\lib
  • 设置以下环境变量以指向cuDNN的位置。要访问$(PATH)环境变量的值,请执行以下步骤:

    • 从开始菜单打开命令提示符。
    • 输入Run并按Enter键。
    • 输入control sysdm.cpl命令。
    • 在窗口顶部选择“Advanced”标签。
    • 在窗口底部点击“Environment Variables”。
    • 将NVIDIA cuDNN bin目录路径添加到PATH变量:
      • 变量名:PATH
      • 要添加的值:C:\Program Files\NVIDIA\CUDNN\v8.x\bin

通过以上步骤,您应该能够在Windows系统上成功地安装和配置cuDNN。在完成这些步骤后,您将能够开始构建和运行依赖于cuDNN的程序和项目。

3. 使用vcpkg安装OpenCV

在安装了vcpkg之后,您可以很容易地安装OpenCV库。以下是基本步骤:

  • 打开命令提示符或PowerShell。
  • 运行命令vcpkg install opencv4[core,cuda]:x64-windows来安装OpenCV和CUDA模块。

4. 使用CMake配置文件和vcpkg

在安装了OpenCV和CUDA之后,您需要配置CMake以便能够在您的项目中使用它们。以下是基本步骤:

  • 创建一个新的CMake项目,或打开现有的CMake项目。
  • 在CMakeLists.txt文件中,使用find_package命令来找到OpenCV库。
  • 例如,添加以下行到您的CMakeLists.txt文件:
find_package(OpenCV REQUIRED)
target_link_libraries(your_target_name PRIVATE ${OpenCV_LIBS})
  • 配置CMake以使用vcpkg的工具链文件,方法是在命令行中添加以下参数:-DCMAKE_TOOLCHAIN_FILE=C:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake

通过以上步骤,您应该能够在Windows系统上简单地安装和配置OpenCV(包含CUDA)。

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

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

相关文章

CustomShapes/自定义形状, CustomCurves/自定义曲线, AnimateableData/数据变化动画 的使用

1. CustomShapes 自定义形状视图 1.1 资源图文件 therock.png 1.2 创建自定义形状视图 CustomShapesBootcamp.swift import SwiftUI/// 三角形 struct Triangle: Shape{func path(in rect: CGRect) -> Path {Path { path inpath.move(to: CGPoint(x: rect.midX, y: rect.mi…

云原生网关可观测性综合实践

作者:钰诚 可观测性 可观测性(Observability)是指系统、应用程序或服务的运行状态、性能和行为能够被有效地监测、理解和调试的能力。 随着系统架构从单体架构到集群架构再到微服务架构的演进,业务越来越庞大,也越来…

数字孪生在制造运行管理(MOM)的七大应用场景

数字经济时代,数字孪生作为实现各行各业智能化、数字化的重要手段之一,受到了各方的广泛重视。随着各项关键使能技术的不断发展,数字孪生的应用价值有望得到进一步释放。这些关键使能技术包括建模、渲染、仿真、物联网、虚拟调试、可视化等&a…

02_单片机及开发板介绍

单片机简介 单片机,又称为微控制器(Microcontroller),是一种集成了微处理器核心、存储器、输入/输出接口及各种功能模块的集成电路芯片。它通常由中央处理器(CPU)、存储器、输入/输出接口以及各种外设组成&…

文献阅读快速法-ChatPDF

如题,直接提供给大家一款能够快速阅读文档的好工具——iTextMaster。 iTextMaster是一款免费的pdf阅读浏览器,上传pdf文档后等待几秒钟,AI就会自动反馈给用户关于文档的摘要总结。十分的方便且实用。 ChatPDF为您提供简洁的文档摘要。对于那…

【算法|动态规划No.21】leetcode494. 目标和

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望…

8月19日PMP成绩,预计10月16日公布!附查询入口、流程

PMP的考试成绩一般在考后6-8周即可查询,8月PMP的成绩预计会在北京时间10月16日晚上公布,具体时间以官方公告为准。 如何查询8月考试成绩? 渠道一:收到PMI邮件提醒 当你注册PMI所使用的邮箱收到一封PMI发来的,标题为…

全波形反演的目标和技术

本篇文章主要讲述了全波形反演的目标和可能用到的方法,对其概念进行解释,以加深理解。若有不正确的地方,欢迎批评指正。 一. 全波形反演的目标: 1. 如何保障模型的拟合能力? 2. 如何保障模型的泛化能力? 3. 如何使结果 (速度模型) 满足物理…

Scrapy框架中的Middleware扩展与Scrapy-Redis分布式爬虫

在爬虫开发中,Scrapy框架是一个非常强大且灵活的选择。在本文中,我将与大家分享两个关键的主题:Scrapy框架中的Middleware扩展和Scrapy-Redis分布式爬虫。这些主题将帮助你更好地理解和应用Scrapy框架,并提升你的爬虫开发技能。 …

【位运算】必知必会:二进制位的原码反码补码转换 以及 按位与、按位或|、异或^

二进制位的原码反码补码转换 以及 按位与&、按位或|、异或^ 一、二进制位的原码、反码、补码转换1.机器数2.原码3.反码4.补码 二、按位与&、按位或|、异或^ 最近在练习LeetCode上的算法题,遇到了位运算求解的问题,作以复习总结。 一、二进制位的…

『PyQt5-Qt Designer篇』| 13 Qt Designer中如何给工具添加菜单和工具栏?

13 Qt Designer中如何给工具添加菜单和工具栏? 1 创建默认窗口2 添加菜单栏3 查看和调用1 创建默认窗口 当新创建一个窗口的时候,默认会显示有:菜单栏和状态栏,如下: 可以在菜单栏上右键-移除菜单栏: 可以在菜单栏上右键-移除状态栏: 2 添加菜单栏 在窗口上,右键-创建…

软件测试定位bug方法+定位案例(详解)

1、问题bug定位技巧 首先,作为开发也好,测试也好,定位问题有一个总的思路,而这个思路是和数据的走向一致的。 大致是这样: 用户层面问题 -> Web页面/软件界面 -> 中间件 -> 后端服务 -> 代码 -> 数据…

【Kubeedge小白安装教程】Centos7.9+K8Sv1.22.17(kubeadm)+Kubeedgev1.13.1部署教程详解----亲测过

第一:部署kubernetes1.22版本 这里部署k8s版本为1.22或者1.23版本。这里参考kubeedge支持的程度,选择1.22版本,后续会支持更高的k8s版本。 相关部署环境及部署组件: 主机名ip地址节点类型系统版本k8s-master192.168.0.61master…

简易的慢SQL自定义告警实战经验(支持多数据源)

背景 对于慢SQL相信大家都不陌生了,一旦遇到后,相信大家会很快的提供出来对应的优化方法、索引优化建议工具使用等等,对于此我相信大家已经熟悉的不能再熟悉了,但是比较不尽人意的是:在此之前我们往往是花费了大量时间才发现造成系统出现问题的是慢SQL引起的,风险自然而…

如何正确维护实验室超声波清洗器?

实验室一直被视为一个严谨而严肃的场所,实验应遵循一定的步骤,使用的设备也经历了详细的选择,如实验室超声波清洗机,其特点远强于一般类型的清洗机。专门负责采购的实验室人员一般对优质服务的实验室超声波清洗机印象深刻&#xf…

故障维修无忧服务:OLED透明拼接屏的专业技术支持与保修服务

OLED透明拼接屏作为未来显示技术的领军者,以其卓越的画质和全方位的优势在市场上备受推崇。 本文将深入探讨OLED透明拼接屏的画质特点和独有的优势,并为您提供选购指南、价格表以及故障维修服务,助您了解并选择最适合的OLED透明拼接屏。 一、…

使用CFimagehost源码搭建无需数据库支持的PHP免费图片托管私人图床

文章目录 1.前言2. CFImagehost网站搭建2.1 CFImagehost下载和安装2.2 CFImagehost网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar临时数据隧道3.2 Cpolar稳定隧道(云端设置)3.3.Cpolar稳定隧道(本地设置) 4.公网访问测…

NPM 常用命令(十二)

目录 1、npm unpublish 1.1 使用语法 1.2 描述 2、npm unstar 2.1 使用语法 3、npm update 3.1 使用语法 3.2 描述 3.3 示例 插入符号依赖 波浪号依赖 低于 1.0.0 的插入符号依赖 子依赖 更新全局安装的包 4、npm version 4.1 使用语法 5、npm view 5.1 使用语…

Raven2靶机渗透

1. 信息收集 1.1 主机探测 sudo arp-scan -l1.2 端口扫描 nmap -p- -A 192.168.16.185开放了80端口,尝试登录网址查看信息,通过浏览器插件找出指纹 1.3 目录扫描 访问登录界面,发现remember Me怀疑是shiro界面 登录/vendor/界面&#xff0…

「深入探究Web页面生命周期:DOMContentLoaded、load、beforeunload和unload事件」

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 引言 1. DOMContentLoaded 1.1 属性 1.2 A…