我的模型是从paddle-detection导出并使用paddle-onnx
转换的
先用https://netron.app/找出带split的节点
点击查看,找到split属性
如果没有就按output的个数构造,比如下面这个有4个输出就是[1,1,1,1]
然后下载https://github.com/Unity-Technologies/barracuda-release/issues/138里面维护者的代码:
https://github.com/Unity-Technologies/barracuda-release/files/5946041/modifyonnxmodel.txt
并根据在上面的neutron里看到的节点数据修改相应部分的逻辑
for node in model.graph.node:
noSplit = False
if(node.name == "Split_0"or node.name == "Split_4"or node.name == "Split_8"):
split = np.array([1,1,1,1,1,1])
elif(node.name == "Split_1" or node.name == "Split_3" or node.name == "Split_5" or node.name == "Split_7" or node.name == "Split_9" or node.name == "Split_11"):
split = np.array([1,1])
elif(node.name == "Split_2" or node.name == "Split_6" or node.name == "Split_10"):
split = np.array([1,1,1,1])
导入即成功