博客
关于我
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/

你可能感兴趣的文章
Pandas 数据透视表:列顺序和小计
查看>>
pandas 时序统计的高级用法!
查看>>
pandas 时间序列重新采样结束给定的一天
查看>>
pandas 根据不是常量的第三列的值将值从一列复制到另一列
查看>>
pandas 根据值从多列中的一列查找
查看>>
Pandas 根据布尔条件选择行和列
查看>>
pandas 滚动窗口 - datetime64[ns] 未实现
查看>>
pandas 版本兼容特定的蟒蛇和NumPy配置吗?
查看>>
pandas 生成excel多级表头
查看>>
Pandas 的 DataFrame 详解-ChatGPT4o作答
查看>>
pandas 读取excel数据,以字典形式输出
查看>>
Pandas 读取具有浮点值的 csv 文件会导致奇怪的舍入和小数位数
查看>>
pandas 适用,但仅适用于满足条件的行
查看>>
pandas 重新采样到每月的特定工作日
查看>>
pandas :如何删除以NaN为列名的多个列?
查看>>
pandas :我如何对堆叠的条形图进行分组?
查看>>
pandas :按移位分组和累加和(GroupBy Shift And Cumulative Sum)
查看>>
pandas :检测一个DF和另一个DF之间缺失的列
查看>>
Pandas-从具有嵌套列表列表的现有列创建动态列时出错
查看>>
Pandas-通过对列和索引的值求和来合并两个数据框
查看>>