VS2019永久配置Opencv+TensorRT

1. VS219配置Opencv-4.9.0

1.1 Opencv的下载与安装

下载链接:https://opencv.org/releases/,选择windows版本,
opencv下载
完成后点击exe自动安装解压,在安装目录可看到以下文件:
解压目录
如果不想占用过多内存,除build文件夹外,其余都可删除。

1.2 Opencv环境配置

  win11添加环境变量的方法:在【开始】搜索:系统,在【系统信息】分页中找到【高级系统设置】,进入之后选择【高级】->【环境变量】->【系统变量】->【Path】,进入编辑。

按照上述方法,将opencv添加到本地环境变量,重启后生效。

opencv添加环境变量

1.3 配置Opencv

  1. 打开VS,新建空项目:
    新建空项目

  2. 配置新项目
    配置新项目

  3. 视图中找到属性管理器并打开,右侧菜单栏中选择【Debug | x64】,右键点击【添加新项目属性表】。
    在这里插入图片描述

  4. 同样在右侧菜单栏中选择新添加的属性表,右键选择【属性】
    属性列表属性
    5) VC++目录:通用属性,选择VC++目录->包含目录,右侧下拉选择编辑,添加以下路径:

D:\opencv_4.9.0\build\include
D:\opencv_4.9.0\build\include\opencv2

包含目录1
添加包含目录

6) 库目录:

D:\opencv_4.9.0\build\x64\vc16\lib

库目录

7) 附加依赖项:链接器,选择输入->附加依赖项,在D:\opencv_4.9.0\build\x64\vc16\lib路径下找到opencv_world490d.lib并写入。
附加依赖项

  • 如果配置为Debug,选择opencv_world455d.lib
  • 如果为Release,选择opencv_world455.lib

8) 调试测试:

#include <iostream>
#include <string>
#include <opencv2/opencv.hpp>


int main() {

    std::string imgPath = "./img/test.png";
    cv::Mat img = cv::imread(imgPath, 1);
    //如果读入图像失败
    if (img.empty()) {
        std::cout << "打开图片失败!\n" << std::endl;
      
    }
    else
    {
        cv::namedWindow("RGB", cv::WINDOW_AUTOSIZE);
        cv::imshow("RGB", img);

        cv::waitKey(0);
        cv::destroyAllWindows();
    }

调试测试

  • 编译运行时,保持编译模式一致:Debug | x64。
  • 保存的属性表可以重复利用,新建项目的通过视图->属性管理器,右键添加现有属性表,在本地找到opencv_rt_dl的保存路径,将opencv_rt_dl属性列表添加测试。

2. VS2019配置tensorRT-8.4.3.1

2.1 cuda/cudnn/tensorRT的下载与安装

Cuda: https://developer.nvidia.com/cuda-toolkit-archive
cuDNN:https://developer.nvidia.com/rdp/cudnn-archive Tensorrt:
tensorRT:https://developer.nvidia.com/tensorrt/download

  注意Cuda和cuDNN具体安装过程就不在此赘述,可自行查找相关教程。tensorRT版本号最好和cuDNN版本号一致,否则会出现警告:tensorRT was linked against cuDNN 8.x.x but loaded cuDNN 8.x.x (个人建议)。

  windows下查看cudnn版本的方法

  • 进入cuda安装目录x:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vx.x\include。
  • 找到cudnn_version.h或者cudnn.h文件,将CUDNN_MAJOR参数串联合并即可得到版本号。
  • cudnn版本-

2.2 tensorRT环境配置

下载后解压,将解压路径添加到环境变量,并将tensorRT中的include、lib、bin文件复制到指定文件夹下。

  • 将 TensorRT-8.4.3.1\include中头文件复制到D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\include
  • 将TensorRT-8.4.3.1\lib中的lib文件复制到D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\lib\x64
  • 将TensorRT-8.4.3.1\lib中的dll文件复制到D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\bin

2.3 配置tensoRT

首先找到前文保存的属性列表打开,继续编译添加tensorRT开发配置,具体操作参考前文opencv的配置过程。

1) VC++目录->包含目录(include文件夹) ,需同时包含cuda和tensortRT的include。

D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\include
D:\TensorRT-8.4.3.1\include

tensorRT包含目录

2) VC++目录->库目录:

D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\lib\x64
D:\TensorRT-8.4.3.1\lib

tensorRT库目录

3) C++ ->常规->附加包含目录:

D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\include
D:\TensorRT-8.4.3.1\include

tensorRT附加包含目录

4) 链接器->输入->附加依赖项:
tensorRT附加依赖项
tensortRT附加目录cuda

nvinfer.lib
nvinfer_plugin.lib
nvonnxparser.lib
nvparsers.lib
cublas.lib
cublasLt.lib
cuda.lib
cudadevrt.lib
cudart_static.lib
cudart.lib
cudnn_adv_infer.lib
cudnn_adv_infer64_8.lib
cudnn_adv_train.lib
cudnn_adv_train64_8.lib
cudnn_cnn_infer.lib
cudnn_cnn_infer64_8.lib
cudnn_cnn_train.lib
cudnn_cnn_train64_8.lib
cudnn_ops_infer.lib
cudnn_ops_infer64_8.lib
cudnn_ops_train.lib
cudnn_ops_train64_8.lib
cudnn.lib
cudnn64_8.lib
cufft.lib
cufftw.lib
curand.lib
cusolver.lib
cusolverMg.lib
cusparse.lib
nppc.lib
nppial.lib
nppicc.lib
nppidei.lib
nppif.lib
nppig.lib
nppim.lib
nppist.lib
nppisu.lib
nppitc.lib
npps.lib
nvblas.lib
nvjpeg.lib
nvml.lib
nvptxcompiler_static.lib
nvrtc.lib
OpenCL.lib

  上述lib文件存在于D:\TensorRT-8.4.3.1\lib和D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\lib\x64,不同版本的tensorrt和cuda包含的文件可能会有差异,根据实际情况进行增删。

  • 10
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值