0%

TensorRT成功测试自己的数据集SSD模型一

经过好几个月的摸索,终于成功调用起TensorRT测试自己的数据集训练得到的SSD模型。期间遇到的坑也是一个接一个,不断的调整环境,一遍又一遍的训练,现在总算是有了结果,开心。并且介于自己在实践期间在网上并没有找到很新很全的资料,现在就想把这些日子总结的经(xue)验(lei)写出来,从一开始的环境配置再到训练模型,再到tensorrt测试模型,以及一些error的解决办法,都做一个全面的整理,希望能帮助到有同样需求的同学。

TensorRT成功测试自己的数据集SSD模型一

TensorRT成功测试自己的数据集SSD模型二

TensorRT成功测试自己的数据集SSD模型三

TensorRT成功测试自己的数据集SSD模型四

环境配置

首先,给出我自己的软件环境及各个版本号。

Ubuntu 20.04
CUDA 10.0.130
CUDNN 7.6.5
TensorFlow 1.14.0
Keras 2.2.5
TensorRT 7.0.0
Python 3.7.0

根据经验,推荐先确定tensorrt安装版本,再回溯到cuda、cudnn、以及python版本进行安装,如果你现在已经装好了cuda以及cudnn等,这里有两个办法解决,一个就是另外装一套cuda等覆盖掉之前的版本,另一个办法就是利用虚拟环境设置一个专门针对tensorrt的环境,我自己也是先前就已经有了一套环境,后来为了配合TensorRT,就将原先的cuda以及cudnn等删除,然后再装了一套环境。

另外,这里关于TensorFlow版本需要说明一点,选择1.14是因为根据Tensorrt的样例有说,在tf1.14上通过验证的,所以最后适配了这个版本。

对于cuda cudnn的安装就按照一般方法装就好了。然后装好anaconda。现在从tensorrt的安装说起。

下载安装包并解压

进入https://developer.nvidia.com/tensorrt选择合适的版本进行下载

preview

1
tar -xzvf /Downloads/TensorRT-7.0.0.11.Ubuntu-18.04.x86_64-gnu.cuda-10.2.cudnn7.6.tar.gz

安装python的tensorRT包

进入tensorRT目录下的Python目录

1
2
3
cd /TensorRT-7.0.0.11/python
# 对于python3
$ sudo pip3 install tensorrt-7.0.0.11-cp37-none-linux_x86_64.whl

这里注意可能会遇到两个问题:

sudo: pip3 :command not found

1
sudo apt-get install python3-pip

ERROR: tensorrt-7.0.0.11-cp37-none-linux_x86_64.whl is not a supported wheel on this platform

原因是cp37即python=3.7.0,如果你的anaconda下的python版本不是3.7.0就会报错。所以这里我使用创建虚拟环境解决

1
conda create --name python370 python=3.7.0

preview

preview

虚拟环境创建成功后进行激活再安装:

1
2
3
conda activate python370
cd /TensorRT-7.0.0.11/python
python -m pip install tensorrt-7.0.0.11-cp37-none-linux_x86_64.whl

preview

进入python输入tensorRT即可验证tensorRT是否安装成功

preview

不报错即成功

接着进入uff与graphsurgeon文件夹安装whl

preview

至此,TensorRT安装成功!