激活环境
重新打开cmd并激活你的环境:
conda activate <env-name>
切换到TensorRT文件夹的路径下:
cd xxxxx/xxxxx/TensorRT-x.x.x.x
查看文件:
dir
我们需要的是graphsurgeon, onnx-graphsurgeon, python, uff这几个文件夹下的python wheel文件
安装
安装时文件名使用tab键自动补全
a. 安装Python下whl文件
cd python
dir
#有多个支持python版本的轮子文件python -V
# 查看python版本pip install tensorrt-xxxxxxcp当前环境下python版本.whl
剩下的直接装就行了,每个文件夹就一个wheel轮子文件。b.安装uff下的whl文件tensorflow需要的,顺手安装上。
pip install uff/uff-0.6.9-py2.py3-none-any.whl
c.安装graphsurgeon下的whl文件
pip install graphsurgeon/graphsurgeon-x.x.x-py2.py3-none-any.whl
d.安装onnx-graphsurgeon下的whl文件
pip install onnx-graphsurgeon/onnx-graphsurgeon-x.x.x-py2.py3-none-any.whl
测试
利用python测试
>python >>>import tensorrt >>>print(tensorrt.__version__)
导出权重文件
yolov5可以通过
export.py
文件导出相关模型导出onxx模型
将
.pt
转为.onnx
- weights 权重文件路径
- data 数据集yaml文件路径
- include 要导出的模型,默认是['torchscript', 'onnx']
- device 使用设备,0代表使用gpu
python export.py --weights ./runs/train/exp6/weights/best.pt --data ./data/dnf.yaml --device 0
导出engine模型
将
.pt
转为.engine
,这里我导出.engine
文件失败,没有输出文件⛔⛔⛔python export.py --weights ./runs/train/exp6/weights/best.onnx --data ./data/dnf.yaml --include engine --device 0
方式二:还是使用Tensorrt官方工具转换engine模型,需要先生成onxx模型。
将best.onnx文件放在
D:\TensorRT-8.4.1.5\bin
文件夹下,CMD运行,输入以下命令:FP32预测删除
--fp16
参数即可trtexec --onnx=best.onnx --saveEngine=best.engine --fp16
使用TensorRT加速
- --source 预测的文件
- --data 模型文件
- --weights 权重文件
- --device 0代表GPU
python detect.py --source data/images/ban-00050.jpg --data data/dnf.yaml --weights ./runs/train/exp6/weights/best.engine --device 0