TensorRT加速ENet

本文介绍了如何使用TensorRT加速ENet模型,包括训练ENet模型、生成部署模型、创建engine文件、进行推理以及效率分析。经过加速,TensorRT的Latency从ncnn的1018ms降至18ms。
摘要由CSDN通过智能技术生成

TensorRT加速ENet

1. 训练ENet

  1. ENet模型caffe版本的git地址:https://github.com/TimoSaemann/ENet
  2. 修改训练ENet的prototxt,把原版的上采样中type为Upsample改为Deconvolution,否则转ncnn会出问题,估计转TRT也会有问题吧,反正影响不大就换了。
  3. 修改prototxt把PReLU改为ReLU,因为我用的TensorRT v5.1.5.0不支持PReLU
  4. train和deploy的height,width,classNum
  5. 训练数据的路径,指定一个txt文件,每行用空格分开,一个图(数据)对应一个图(标,单通道,每个类别对应一个数)

2. 生成部署ENet的模型

  1. 计算bn的参数为静态的(参考git上的Tutorial)
  2. 把bn和卷积合并使前向运算加速

3. 生成用于TensorRT调用的engine文件

  1. 先编译出来用于模型转换的可执行文件,我命名为buildEngine,在编译的过程中会打印出输入和输出的节点名
  2. 执行命令 ./buildEngine --deploy=enet.prototxt --model=enet.caffemodel --saveEngine=enet.engine --output=“deconv6_0_0”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值