ONNX2NCNN工具

最近部署很多onnx转ncnn的操作,发现还是需要有页面操作会比较好,而且需要查询onnx的图,所以写了一个工具来搭配使用

建议搭配Netron 来使用

打开模型

选择打开-》选择onnx模型

显示基础信息

查询onnx模型图

展示信息

点击“展示信息”,那么会自动获取模型的输入输出、节点和权重还有节点属性展示在下面框里面

展示节点信息

在名称输入节点信息,点击展示节点详情,节点展示框能够显示当前的节点信息

展示节点权重信息:

点击展示节点权重,可以权重栏看到对应的权重信息。

展示子节点信息

点击展示子节点信息,会默认查询输出节点,如果输出有多个默认选择第一个,如果需要查询其他,可以输入节点名称 

使用此功能,输入框的名称不会变动

展示父节点信息

点击展示父节点信息,会默认查询输入节点,如果输入有多个默认选择第一个,如果需要查询其他,可以输入节点名称 

使用此功能,输入框的名称不会变动

展示当前节点的权重信息

展示当前节点的权重信息,注意不是名称栏的节点的权重信息,是展示子父节点显示的节点权重。

推理

*注意,推理过后展示节点信息,都会带上形状信息,方便分析

推理能够输出所有输入输出节点的形状信息,这样方便转ncnn的时候遇到有些op不知道形状无法更改,通过形状可以判断自己的模型是否有问题。

如果有些事动态入参,那么显示未-1,那么需要手动更改,这个安装你自己的模型输入来看,比如你们模型传参是1x3x640x640

修改参数,点击修改

可以展示每一步骤的节点形状和类型,注意,内容不会展示太大了

展示节点信息,后续就带上了形状和类型

推理部分节点

有时候推理耗时间,可以选择展示部分节点,或者模型有问题展示不出来也可以选择部分节点进行推理,如下具体需要哪些节点,保留需要的节点,把其他的节点去掉就行

转换ncnn

点击“转换ncnn” 直接转换了

如果有些推理有问题,那么就看看这里

根据上面信息,可以手动修改或者

如包含问题,请使用工具先优化,再尝试生成
pip install onnx-simplifier
python -m onnxsim det_500m_sim.onnx det_500m_sim_sim.onnx

量化优化

这个是官方提供的工具好像对于形状有些问题,可能是我没用对,具体查询另外一遍文章:

ncnn 优化量化_ncnn 量化-优快云博客

具体工具:https://download.youkuaiyun.com/download/p731heminyang/89427714

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值