Pytorch训练模型转换为MNN及用于APU推理的DLA

概要

pytorch训练好的模型在android端部署,需要先将模型转换为onnx。然后安装mnn库(注意版本,同时下载对应的官方提供的android平台的lib库),在对应环境中的终端使用指令把onnx转为mnn。

MNN库安装

终端pip安装或conda安装(考虑速度及版本问题,应指定服务器网址下载,并指定版本号)
pip安装: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn mnn==2.8.1
查看版本号:MNNConvert -v

转换ONNX

转换onnx:使用torch.onnx.export()转换,需要输入一个随机生成的tensor,指定设备(GPU、CPU),输入输出向量命名,方便加载模型时设定输入输出向量。
示例:
pmyid = PMYID()
states = torch.load(path, map_location='cpu')
pmyid.load_state_dict(states)
pmyid.to(device)
dummy_input = torch.randn(1, 1, 512, 512).to(device)
torch.onnx.export(pmyid, dummy_input, "pmyid_200.onnx", input_names=['net_in'], output_names=['net_out'])

转换mnn

命令行

MNNConvert -f ONNX --modelFile pmyid_122.onnx --MNNModel denoiseY122.mnn --bizCode biz
半精度:MNNConver
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值