在利用https://github.com/Tianxiaomo/pytorch-YOLOv4进行darknet->onnx->tensorRT的模型转变的时候出现了如下错误:
[07/13/2020-21:58:49] [E] [TRT] Layer: Where_493's output can not be used as shape tensor.
[07/13/2020-21:58:49] [E] [TRT] Network validation failed.
[07/13/2020-21:58:49] [E] Engine creation failed
[07/13/2020-21:58:49] [E] Engine set up failed
这里先引用了issue里面的错误 ,我在x86的服务器上出现了这样的错误,但是在jetson nano以及xavier的开发板上并没有出现这样的错误。
根据官方人员的解答,是pytorch与tensorrt的版本的问题
根据Readme的要求。
- Pytorch 1.4.0 for TensorRT 7.0 and higher
- Pytorch 1.5.0 and 1.6.0 for TensorRT 7.1.2 and higher
在jetson开发板上tensorRT的版本是7.1.2,所以当时用pytorch 1.6.0将darknet权重转化的onnx在转成trt模型就没有问题。
但是x86服务器上的tensorRT的版本是7.0.0。所以必须要用pytorch 1.4来转换成onnx模型。
本文详细解析了在使用pytorch-YOLOv4将模型从darknet转换到ONNX再至TensorRT过程中遇到的特定错误。在x86服务器上,由于TensorRT版本为7.0.0,必须使用Pytorch1.4.0进行转换才能避免错误。文章对比了不同平台上的版本兼容性问题,并提供了正确的解决方案。
5441

被折叠的 条评论
为什么被折叠?



