U版yolov3 pytorch-->onnx-->caffe
其中pytorch转onnx参考博客 链接
其中onnx转caffe使用github链接:https://github.com/MTlab/onnx2caffe
python convertCaffe.py *.onnx *.prototxt *.caffemodel
出现报错信息
Traceback (most recent call last):
File "convertCaffe.py", line 116, in <module>
convertToCaffe(graph, prototxt_path, caffemodel_path)
File "convertCaffe.py", line 59, in convertToCaffe
err.unsupported_op(node)
File "/onnx2caffe/onnx2caffe/_error_utils.py", line 36, in unsupported_op
"ONNX node of type {} is not supported.\n".format(node.op_type,)
TypeError: ONNX node of type Resize is not supported.
此时可以修改pytorch转onnx的版本信息,将原来的opset_version=12转为opset_version=9
yolov3/models/export.py
# ONNX export
try:
import onnx
print('\nStarting ONNX export with onnx %s...' % onnx.__version__)
f = opt.weights.replace('.pt', '.onnx') # filename
# torch.onnx.export(model, img, f, verbose=False, opset_version=12, input_names=['images'],
# output_names=['classes', 'boxes'] if y is None else ['output'])
torch.onnx.export(model, img, f, verbose=False, opset_version=9, input_names=['images'],
output_names=['classes', 'boxes'] if y is None else ['output'])
# Checks
onnx_model = onnx.load(f) # load onnx model
onnx.checker.check_model(onnx_model) # check onnx model
# print(onnx.helper.printable_graph(onnx_model.graph)) # print a human readable model
print('ONNX export success, saved as %s' % f)
except Exception as e:
print('ONNX export failure: %s' % e)