ubuntu18 Docker (CUDA+cudnn) tensorrtx方案 yolov5

作者首先在本地机win和ubuntu18上尝试直接配tensorrt,进而使用tensorRTX中的yolov5。遗憾的是,两者都异常。最终尝试在ubuntu上用Docker配置,成功跑通。

在win上碰到的问题是:卡在了编译yolov5上。
vs这个东西很难搞就是了。
在ubuntu上碰到的问题是:卡在了安装TensorRT上。
安装tensorrt有tar.gz安装,还有deb安装。我这时选的是deb,结果就是,还需要重要把CUDA卸了,重新装一遍。因为deb格式对cuda的安装方式有要求。

1.安装docker和TensorRT

1.1 docker

安装docker的部分,直接参考这里的教程:Docker TensorRT教程

1.2 TensorRT C++

上面那个版本,是Python的。如果要使用C++版本,需要额外执行:

apt-get install cmake
cd TensorRT-8.2.1.8   #改成你解压的TensorRT目录,这里是我的
sudo cp -r ./lib/* /usr/lib
sudo cp -r ./include/* /usr/include

2.编译opencv

这部分也没啥好说的,经典教程多的一批。
值得注意的是,不能用3.2.0以下的版本(具体哪个版本我也不知道)我编的是3.4.16。

3.编译yolov5

 cd tensorrtx-master/yolov5/
mkdir build
cmake ..
make

如果顺利,会生成一个yolov5的可执行文件。

4.转模型

首先,下载一个预训练模型,在yolov5的官方有很多。

python gen_wts.py -w yolov5s.pt -o yolov5s.wts
cd build
sudo ./yolov5 -s yolov5s.wts yolov5s.engine s
sudo ./yolov5 -d yolov5s.engine ../samples

此时,你的build目录下多了两张图片(samples下本来得两张测试图片)

你可能感兴趣的:(docker,容器,运维)