当前位置: 首页 > news >正文

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)。

相关文章:

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

windows OpenCV(包含cuda)最简安装教程 1. 在Windows下安装vcpkg vcpkg是一个开源的C包管理器,它能帮助我们轻松地安装和管理C库和工具。要在Windows上安装vcpkg,可以按照以下步骤进行: 克隆vcpkg仓库: 首…...

Vue3 + Nodejs 实战 ,文件上传项目--实现文件批量上传(显示实时上传进度)

目录 技术栈 1.后端接口实现 2.前端实现 2.1 实现静态结构 2.2 整合上传文件的数据 2.3 实现一键上传文件 2.4 取消上传 博客主页:専心_前端,javascript,mysql-CSDN博客 系列专栏:vue3nodejs 实战--文件上传 前端代码仓库:jiangjunjie…...

狂砸40亿美元,亚马逊向OpenAI竞争对手Anthropic投资

9 月 25 日下午,亚马逊在公司官网发布,向大模型公司 Anthropic 投资 40 亿美元, Anthropic以拥有对标 ChatGPT 的谈天机器人 Claude 而出名。 这项新的战略合作将结合双方在更安全的生成式AI领域的技术和专业知识,加速Anthropic未…...

目标检测YOLO实战应用案例100讲-基于YOLOv5_tiny算法的路面裂缝智能检测

目录 前言 国内外研究现状 公路路面裂缝检测方法现状 基于深度学习检测算法现状...

P5682 [CSP-J2019 江西] 次大值% 运算 set 去重的一道好题

#include <bits/stdc.h> using namespace std; int n, x, len, a[100010], ans; set<int> s; set<int>::iterator asd; int main() {/*a[n-1] 是最大的a[n-2] 可能是次大的a[n]%a[n-1]<a[n-1] 不可能是最大的&#xff0c;可能是次大的a[n-1]%a[n-2]<…...

vue3后台管理框架之API接口统一管理

在开发项目的时候,接口可能很多需要统一管理。在src目录下去创建api文件夹去统一管理项目的接口; 参数请参考mock中的模拟接口 //统一管理咱们项目用户相关的接口import request from @/utils/requestimport type { loginForm, loginResponseData, userInfoReponseData } fro…...

线性表的插入、删除和查询操作

线性表的插入、删除和查询操作 1、定义线性表 定义一个线性结构&#xff0c;有列表默认长度设置为50&#xff0c;列表数量 #include <stdio.h> #define MaxSize 50typedef int Element; typedef struct{Element data[MaxSize];int length; }SqList;2、顺序表插入 插入…...

基于深度学习网络的疲劳驾驶检测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1疲劳检测理论概述 4.2 本课题说明 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 In_layer_Size [227 227 3]; img_size [224,…...

【文件系统】Linux文件系统的基本存储机制

Linux文件系统是Linux操作系统的重要组成部分&#xff0c;它负责管理计算机存储设备上的文件和目录。Linux文件系统采用类Unix的设计&#xff0c;具有强大的性能和可扩展性&#xff0c;支持多种文件系统类型&#xff0c;如ext4、XFS、Btrfs等。在项目存储架构的设计中&#xff…...

Outlook导入导出功能灰色,怎么解决

下载安装 Outlook 软件后&#xff0c;登陆账号&#xff0c;然后选择“文件” - “导出”&#xff0c;结果发现“导出”按钮是灰色的&#xff0c;根本无法导出。根据官方说法&#xff1a;由于配置没有完成或者office产品没有正确激活。outlook导出键为灰色原因由于配置没有完成或…...

Chrome 同站策略(SameSite)问题

问题产生 问题复现&#xff1a; A项目页面使用 iframe 引用了B项目 B项目登录页面输入账号密码后点击登录 无法跳转 尝试解决&#xff1a; 在B项目修改了跳转方式 但无论是 this.$router.push 还是 window.herf 都无法实现跳转在iframe中使用 sandbox 沙箱属性 同样无法实现跳…...

docker搭建nginx+php-fpm

docker run --name nginx -p 8898:80 -d nginx:1.20.2-alpine# 将容器nginx.conf文件复制到宿主机 docker cp nginx:/etc/nginx/nginx.conf /usr/local/nginx/conf/nginx.conf# 将容器conf.d文件夹下内容复制到宿主机 docker cp nginx:/etc/nginx/conf.d /usr/local/nginx/conf…...

数据结构与算法---单调栈结构

数据结构与算法---单调栈结构 1 滑动窗口问题 1 滑动窗口问题 1 滑动窗口问题 由一个代表题目&#xff0c;引出一种结构 【题目】 有一个整型数组 arr 和一个大小为 w 的窗口从数组的最左边滑到最右边&#xff0c;窗口每次向右边滑一个位置。 例如&#xff0c;数组为[4,3,…...

Python爬虫:某书平台的Authorization参数js逆向

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据开发、数据分析等。 🐴欢迎小伙伴们点赞👍🏻、收藏⭐️、…...

Android MediaCodec 框架 基于codec2

系列文章的目的是什么&#xff1f; 粗略&#xff1a; 解码需要哪些基础的服务&#xff1f;标准解码的调用流程&#xff1f;各个流程的作用是什么&#xff1f;解码框架的层次&#xff1f;各个层次的作用&#xff1f; 细化&#xff1a; 解码参数的配置&#xff1f;解码输入数…...

【RocketMQ 系列三】RocketMQ集群搭建(2m-2s-sync)

您好&#xff0c;我是码农飞哥&#xff08;wei158556&#xff09;&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精…...

Go TLS服务端绑定证书的几种方式

随着互联网的发展&#xff0c;网站提供的服务类型和规模不断扩大&#xff0c;同时也对Web服务的安全性提出了更高的要求。TLS(Transport Layer Security)[1]已然成为Web服务最重要的安全基础设施之一。默认情况下&#xff0c;一个TLS服务器通常只绑定一个证书[2]&#xff0c;但…...

【算法与数据结构】--高级算法和数据结构--排序和搜索

一、常见排序算法 以下是一些常见的排序算法&#xff0c;包括冒泡排序、选择排序、插入排序、快速排序和归并排序。每种排序算法的讲解以及附带C#和Java示例&#xff1a; 1.1 冒泡排序 (Bubble Sort) 讲解&#xff1a; 冒泡排序是一种简单的比较排序算法。它多次遍历待排序的…...

【Java】jvm 元空间、常量池(了解)

JDK1.8 以前的 HotSpot JVM 有方法区&#xff0c;也叫永久代&#xff08;permanent generation&#xff09;方法区用于存放已被虚拟机加载的类信息&#xff0c;常量、静态遍历&#xff0c;即编译器编译后的代码JDK1.7 开始了方法区的部分移除&#xff1a;符号引用&#xff08;S…...

Spring Boot自动加载

问&#xff1a;自动装配如何实现的&#xff1f; 答&#xff1a;简单来说就是自动去把第三方组件的Bean装载到IOC容器中&#xff0c;不需要开发人员再去写Bean相关的配置&#xff0c;在springboot应用里面只需要在启动类上去加上SpringBootApplication注解&#xff0c;就可以去实…...

实战指南:基于快马生成tomcat生产级配置,涵盖https、集群与性能调优

今天想和大家分享一个实战经验&#xff1a;如何在生产环境中配置Tomcat服务器。作为一个长期和Tomcat打交道的开发者&#xff0c;我深知生产环境配置和本地开发环境的巨大差异。最近在InsCode(快马)平台上实践了一套完整的配置方案&#xff0c;效果很不错&#xff0c;这里把关键…...

AXI Quad SPI IP核在多主设备环境下的三态总线设计与实现

1. AXI Quad SPI IP核的多主设备挑战 第一次接触AXI Quad SPI IP核的多主设备配置时&#xff0c;我踩过一个典型的坑&#xff1a;两个FPGA内部主模块同时向SPI总线发送数据&#xff0c;导致MOSI信号出现毛刺。这种情况在共享总线架构中非常常见&#xff0c;而三态总线设计正是解…...

C语言结构体成员大小与偏移量计算原理

1. 结构体成员大小与偏移量获取机制解析1.1 问题背景在C语言编程中&#xff0c;我们经常需要获取结构体成员的大小和偏移量。一个常见的宏定义实现方式如下&#xff1a;// 获取结构体成员大小 #define GET_MEMBER_SIZE(type, member) sizeof(((type*)0)->member)// 获取结构…...

VINS-Fusion 实战指南:从环境搭建到多传感器融合部署

1. VINS-Fusion入门&#xff1a;为什么选择这个多传感器融合方案 第一次接触VINS-Fusion是在做一个无人机定位项目时&#xff0c;当时试过各种开源SLAM方案&#xff0c;最后发现这个来自香港科技大学团队的工具在传感器融合方面确实有两把刷子。简单来说&#xff0c;它就像个聪…...

24小时运行OpenClaw:nanobot镜像监控网站变更并邮件报警

24小时运行OpenClaw&#xff1a;nanobot镜像监控网站变更并邮件报警 1. 为什么需要自动化网站监控 上周我负责的一个项目突然出了状况——客户官网的产品价格页面被意外修改&#xff0c;导致大量用户投诉。团队花了整整两天才发现问题根源。这件事让我意识到&#xff0c;对于…...

LVGL显存、FreeRTOS堆栈、全局变量:在128KB RAM的STM32F407上如何做内存预算与平衡?

LVGL显存、FreeRTOS堆栈与全局变量的内存博弈&#xff1a;STM32F407的128KB RAM精算指南 当一块STM32F407芯片的128KB RAM需要同时供养LVGL的华丽界面、FreeRTOS的多任务调度以及应用层的全局变量时&#xff0c;开发者面临的挑战不亚于一位财务总监在有限预算下平衡多个部门的开…...

springboot-vue基于web的智慧游乐场游乐园门票售票系统网站的设计与实现

目录技术选型核心功能模块数据库设计安全与性能部署方案测试计划项目里程碑文档规范项目技术支持源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作技术选型 后端框架&#xff1a;Spring Boot 2.7.x&#xff08;集成Spring Security、JWT、My…...

技术民主化:OpCore Simplify让黑苹果EFI配置实现零门槛

技术民主化&#xff1a;OpCore Simplify让黑苹果EFI配置实现零门槛 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 为什么全世界仅有0.3%的PC用户尝试…...

OpenClaw异常处理机制:Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF任务失败自动恢复

OpenClaw异常处理机制&#xff1a;Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF任务失败自动恢复 1. 为什么需要异常处理机制 上周我让OpenClaw执行一个简单的数据整理任务——把散落在十几个Markdown文件里的技术笔记按主题分类归档。本以为是个轻量级操作&#xf…...

RTX3090也能跑!Qwen2.5-Omni本地部署避坑指南(含vLLM配置)

RTX3090也能跑&#xff01;Qwen2.5-Omni本地部署避坑指南&#xff08;含vLLM配置&#xff09; 当消费级显卡遇上多模态大模型&#xff0c;总会碰撞出令人惊喜的火花。Qwen2.5-Omni作为当前最热门的开源多模态模型之一&#xff0c;其7B版本在RTX3090这类24GB显存的显卡上完全具备…...