onnx转pb这个问题把我卡了几天了,用网上的办法转换过,生成的pb文件都是一个文件夹的形式,最终发现是onnx-tf的版本问题,需要把onnx-tf的1.7.0版本换成1.6.0即可解决问题。
这一步之前请先安装:Tensorflow、tensorflow-addons、onnx
我的版本如下:
onnx 1.8.1
onnx-tf 1.6.0
tensorflow 2.4.1
tensorflow-addons 0.12.1
如果有旧版本的先请卸载旧的onn-tf:
pip uninstall onnx-tf
onnx-tf的1.6.0版本在这里下载:
https://github.com/onnx/onnx/releases/tag/v1.6.0
github上不去的话我这也有百度云可以下:
链接:https://pan.baidu.com/s/1ETbi-fI1ke1lfWQ0oT8LbA
提取码:1234
下载以后cmd进入终端,运行setup.py进行安装
python setup.py install
安装完成以后可以看一下自己的版本号:
全部安装好了以后直接在终端转换就可以啦:
onnx-tf convert -i runs/train/exp5/weights/best.onnx -o runs/train/exp5/weights/yolov5_orange.pb
(注:runs/train/exp5/weights/best.onnx 换成自己保存的onnx文件 和runs/train/exp5/weights/yolov5_orange.pb 换成自己想保存的位置和pb文件的名字 )
生成成功啦: