TNN笔记

(TNN框架)

 

模型部署:

1. 模型转换:

将在tensorflow, pytorch, caffe等平台训练得到的模型,先转为统一的onnx格式,再转换为TNN格式的模型。

tnn模型转换需要依赖的环境比较复杂,建议直接用官方构建好的docker。

docker pull turandotkay/tnn-convert:latest

验证下docker镜像能否正常使用:

docker run  -it tnn-convert:latest  python3 ./converter.py -h

目前支持onnx2tnn, caffe2tnn, tf2tnn, tflite2tnn

usage: python3 ./converter.py onnx2tnn -tp ONNX_PATH -in input_name -on output_name [-o OUTPUT_DIR] [-v v1.0] [-optimize] [-half] [-align]

v:指定模型的版本号,以便后期对模型进行跟踪和区分。

output_dir: 一般不太使用此参数,默认将生成对TNN模型放在当前和待转换模型相同的路径下。

optimize: 对模型进行优化,强烈开启此选项,只有在开启此选项转换模型失败时,才建议去掉此选项进行重新尝试。

half: 模型数据通过FP16进行存储,减少模型的大小。默认通过FP32方式存储模型。

align: 将转换得到的TNN模型和原模型进行对齐,确定TNN模型是否转换成功。当前仅支持单输入单输出模型和单输入多输出模型。align只支持FP32模型的校验。

所以使用align的时候不能使用half。

input_file: 指定模型对齐所需要的输入文件名称。

ref_file: 指定待对齐的输出文件名称。

example: docker run --volume=${pwd}:/workspace -it tnn-convert:latest python3 ./converter.py onnx2tnn \

/workspace/mobilenetv3-small-c7eb32fe.onnx \

-optimize \

-v v3.0 \

-align 

2. 编译引擎:

针对目标平台的硬件支持情况,完成目标平台的TNN引擎编译。

 

移动端demo:

1. iOS demo

2. Android demo

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值