博客
关于我
TensorRT7笔记(二)
阅读量:541 次
发布时间:2019-03-09

本文共 1382 字,大约阅读时间需要 4 分钟。

TensorRT DBNet项目搭建指南

TensorRT是NVIDIA提供的一个高效的机器学习优化库,能够显著加速深度学习模型的推理速度。要在TensorRT中开发DBNet项目,可以按照以下步骤进行操作:

一、准备TensorRT开发环境

确保你的计算环境已经配置好了TensorRT和相关依赖:

1. 安装必要软件

  • CUDA 10.0 或更高版本(确保兼容性)
  • CUDNN 7.6 或更高版本
  • TensorRT 7.0.0 或更高版本
  • OpenCV 4.6 或更高版本(建议使用预编译版本)

2. 下载并配置TensorRT

下载最新版本的TensorRT,解压后放在合适的路径上,例如:

D:\TensorRT-7.0.0.11.Windows10.x86_64.cuda-10.2.cudnn7.6

二、获取DBNet项目源码

从GitHub下载DBNet项目源码:

git clone https://github.com/BaofengZan/DBNet-TensorRT.git

进入项目目录,新建build文件夹并打开PowerShell终端:

mkdir buildcd buildcmake-gui ..

三、配置项目

打开提供的CMakeLists.txt文件,根据你的计算环境节点路径来调整OpenCV和TensorRT的位置。常见的调整项包括:

set(OpenCV_DIR "D:/opencv/opencv346/build")find_package(OpenCV REQUIRED)include_directories(${OpenCV_INCLUDE_DIRS})link_directories(${OpenCV_LIBS})include_directories(${TensorRT_INSTALL_PATH}/include)link_directories(${TensorRT_INSTALL_PATH}/lib)

四、编译项目

在PowerShell中输入以下命令进行编译:

cmake --build .

生成完成后,编译出的可执行文件会在项目根目录下出现。例如:

./dbnet.exe

五、处理依赖库

确保生成的可执行文件能够访问TensorRT和OpenCV的动态链接库(DLL),常见的做法是将它们拷贝到生成的可执行文件所在目录:

# 例如,将所有相关DLL拷贝过来copy D:\TensorRT-7.0.0.11.Windows10.x86_64.cuda-10.2.cudnn7.6\TensorRT-7.0.0.11\lib\* ./

六、运行程序

1. 只需单次推理

./dbnet.exe -s

生成DBNet.engine文件后,文件会被保存在当前目录下。

2. 多次推理或部署

./dbnet.exe -d ./test/

项目实例效果

通过上述操作,你应该可以看到类似以下效果:

  • 蓝色框架表示输入形态
  • 绿色框框表示输出结果
  • 灰色区域为需要改进的区域

总结

TensorRT为DBNet项目提供了强大的性能加速能力,适合需要部署高效推理的场景。通过以上步骤,你可以轻松将OpenCV模型优化为TensorRT格式,充分发挥计算资源的性能潜力。更多深入内容和应用案例,欢迎关注后续更新!

转载地址:http://boqiz.baihongyu.com/

你可能感兴趣的文章
PHP扩展安装
查看>>
PHP扩展数据库连接参数说明详解
查看>>
php把get参数放入数组_php怎么将数组转为url参数?
查看>>
php接口返回数据 用echo 还是return?
查看>>
php接口返回状态,大家一般怎么规范接口返回内容
查看>>
php接收formdata上传的多个文件,使用formData()上传多个文件
查看>>
PHP操作csv文件导入+导出
查看>>
php操作mysql用select_php如何操作mysql获取select 结果
查看>>
PHP操作符与控制结构
查看>>
PHP支付宝SDK使用,电脑网页支付
查看>>
php支付宝手机网页支付类实例
查看>>
PHP改变数组key值的方法
查看>>
php教程之php空白页的原因及解决方法
查看>>
PHP数据库操作
查看>>
PHP数据文件过大,导致PHP加速器eaccelerator在PHP5.2版本下崩溃
查看>>
RabbitMQ - 死信、TTL原理、延迟队列安装和配置
查看>>
PHP数据访问的多重查询(租房子查询)
查看>>
RabbitMQ - 如保证消息的可靠性?(消息确认、消息持久化、失败重试机制)
查看>>
RabbitMQ - 基于 SpringAMQP 带你实现五种消息队列模型
查看>>
php数组函数分析--array_column
查看>>