在使用onnx_tensorrt转换onnx为tensorrt格式的模型时报错Attribute not found: height_scale。
如果onnx模型是通过pytorch 用插值上采样转换来的,参考:
https://www.jianshu.com/p/dcd450aa2e41
由于我的onnx模型是yolov3-tiny转换的模型,不适用。
由于github项目下给出了两种方法,一种通过backend来转换。另一种不通过backend,直接使用onnx2trt转换。
我在使用darkend转换时报错,又试了一下后面的方法,结果竟然成功了,在这里记录一下。
第一种方法:
报错:
第二种方法:
先进入到你放onnx模型的文件夹,执行:
成功!
转换失败时也会生成trt模型,但是是个空的文件,所以要留意。
除此之外,还要注意一下:
onnx转换成tensorrt模型前,请先确保转换出来的onnx模型是能用的。比如拿一张图片识别一下,看看是否能成功识别。
有些模型能成功转换为onnx,但是转换完以后是不能用的,如果想要把不能用的onnx模型转换为tensorrt模型,就有可能会出现以下错误:
报错:Assertion failed: tensors.count(output.name())
这是的yolov3模型出错,转换成功了,但是测试中是不能用的,转trt也失败了。
更新于2020.11.16
报这个错可能需要先将yolov3的模型先转换为416或者其他大小的模型,转换方法这里有:https://blog.csdn.net/qq_36780295/article/details/108496746
如果还是报错,可以直接按照这篇博客来,因为毕竟这个是已经成功了的。