树莓派4B在使用onnxruntime1.6.0对model.onnx模型进行加载的时候出现以下的报错:
原因:
由于导出的ONNX模型文件不兼容ONNX Runtime当前版本所导致的,一开始我导出模型的方式如下:
import tensorflow as tffrom keras import modelskeras_model = models.load_model("mnist_model.h5")# Save the Keras model as SavedModel formattf.saved_model.save(keras_model, 'saved_model_dir')
然后会得到一个文件夹:
接着我在上面生成的文件夹的那个路径中打开树莓派的黑窗口,然后输入了下面的命令:
python3 -m tf2onnx.convert --saved-model saved_model_dir --output mnist_model.onnx
然后生成了onnx模型:
但是在运行的时候就出现了上面的报错,正确的方法是在导出ONNX模型时指定ONNX模型文件的格式版本,应该使用下面的命令行:
python3 -m tf2onnx.convert --saved-model saved_model_dir --output mnist_model.onnx --opset=10
其中,saved_model_dir应为已保存的TensorFlow模型文件夹的路径,–opset=10表示指定ONNX模型的格式版本为10,这个版本要具体看你的onnxruntime来决定,我的是onnxruntime1.6.0,所以对应的是10版本。
来源地址:https://blog.csdn.net/weixin_46235937/article/details/130339284