tensorRT工程实践

一、参考资料

二、TensorRT流程

1. model.pth --> 转换成 model.wts

  1. 用pytorch容易完成,pytorch推荐使用 model.state_dict() 保存模型;
  2. model.pth是用户提供的pytorch模型;
  3. model.wts文件:
model.wts文件是纯文本文件

第一行是数量,说明该文件总共有多少行

# 每行的内容格式
[weight name] [value count = N] [value1] [value2], ..., [valueN]

model.wts

10
conv1.weight 150 be40ee1b bd20bab8 bdc4bc53 .......
conv1.bias 6 bd327058 .......
conv2.weight 2400 3c6f2220 3c693090 ......
conv2.bias 16 bd183967 bcb1ac8a .......
fc1.weight 48000 3c162c20 bd25196a ......
fc1.bias 120 3d3c3d49 bc64b948 ......
fc2.weight 10080 bce095a4 3d33b9dc ......
fc2.bias 84 bc71eaa0 3d9b276c ....... 
fc3.weight 840 3c252870 3d855351 .......
fc3.bias 10 bdbe4bb8 3b119ee0 ......

2. model.wts --> 转换成 model.engine,难度较大。

  1. 前提:需要知道网络结构;

  2. 用TensorRT 序列化转成 engine 文件;

3. model.engine --> inference推理,容易完成。

  1. TensorRT.Runtime() 运行时对model.engine进行反序列化;

  2. 前提:需要知道输入(32*32尺寸)和输出(10类别);

4. ONNX-TensorRT工作流

  1. model.pb --> model.onnx
  2. model.onnx --> model.engine
  3. model.engine --> inference推理
上一篇:移动端开发基础【16】使用代码块直接创建组件模板


下一篇:OpenVINO实时人脸表面3D点云提取