赞
踩
本文是按照官方的安装手册执行的安装 链接如下
https://developer.nvidia.com/tensorrt-getting-started
具体怎么安装的的请一定要参考官方英文原文, 虽然是英文的, 但是咱们有翻译工具, 基本上看懂不难.
遇到的问题1安装TensorRT的时候报错, 命令如下.
python3 -m pip install --upgrade nvidia-tensorrt
报错, 查看了一下后面
If you receive an error message in the form of a Python exception similar to the error message below, then either the nvidia-pyindex package was not set up properly, or you might be using a Python version other than 3.6 to 3.9.
##################################################################
The package you are trying to install is only a placeholder project on PyPI.org repository.
This package is hosted on NVIDIA Python Package Index.
This package can be installed as:
$ pip install nvidia-pyindex
$ pip install nvidia-tensorrt
##################################################################
后来改了命令. 这条命令的意思, 也到https://pypi.ngc.nvidia.com库去找nvidia-tensorrt类库
python3 -m pip install --upgrade nvidia-tensorrt --extra-index-url https://pypi.ngc.nvidia.com
结果仍然报错. 后来我猜了,应该是项目名字变了. (别问我怎么知道的,我安装的镜像系统, 其实已经装好了.)
我把nvidia-tensorrt 改成了tensorrt就成功了
python3 -m pip install --upgrade tensorrt --extra-index-url https://pypi.ngc.nvidia.com
.(此方案仅供参考, 我也没有深入探究是否是同一个包, 只要能正常使用就算是OK的. 出现其它问题本人不负责哈.)
下面就是验证一下TensorRT是否安装成功
test.py
import tensorrt
print(tensorrt.__version__)
assert tensorrt.Builder(tensorrt.Logger())
执行命令
python3 test.py
结果输出 7.1.3.0
其实我没装, 都是镜像自带的. 真心觉得镜像是个好东西. 省了太多太多事情了.
onnx 转trt 模型 报错 what():Attribute not found:axes
在转换命令上加了个参数 --verbose=true 能够输出是在那个节点出问题的.
结果如图. (抱歉没有办法截图. 不够清晰. )
结果跟下文说的是同一个问题,
https://blog.csdn.net/ChuiGeDaQiQiu/article/details/119821974
我的应该是unsqueeze缺少参数了.
可是怎么修正呢?
网上一顿搜索, 发现https://blog.csdn.net/u014183936/article/details/119940962
这个方法比较靠谱.
解决方法:
https://github.com/daquexian/onnx-simplifier
安装就行
pip3 install onnx-simplifier
转换:
python -m onnxsim yolov5s.onnx yolov5s.simp.onnx
这个解决方法是把onnx中的一些多余操作给合并了. 去掉了无用的操作. 先不管了,
先试了再说. 结果是OK的.
成功转成simp.onnx , 然后把简化版的onnx复制到jetson nano中, 用命令转成 trt模型
我们可以按如下方式运行此转换:
/usr/src/tensorrt/bin/trtexec --onnx=yolov5.simp.onnx --saveEngine=yolov5.simp.trt --explicitBatch --verbose
将yolov5.simp.onnx 转换到一个名为的 yolov5.simp.trt 的 TensorRT模型
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。