NVIDIA Xavier pytorch深度学习环境配置 & yolov5目标检测 & TensorRT加速

注:如需要文章中提到的相关文件,请联系qq1625903738

一.环境配置

1.根据网上大佬的推荐,这里使用Archiconda,与Anaconda功能类似。下载链接https://github.com/Archiconda/build-tools/releases/download/0.2.3/Archiconda3-0.2.3-Linux-aarch64.sh

2.安装Archiconda,过程中都yes即可。

sh Archiconda3-0.2.3-Linux-aarch64.sh

3.创建一个名为“demo”的虚拟环境,并进入。

conda create -n demo python=3.6.9conda activate demo

4.安装一些需要的包

pip install Cython numpy==1.18.5 Pillow PyYAML==5.4.1 scipy==1.5.4 tensorboard==1.15.0pip install matplotlib     

5.导入opencv包,参考大佬的教程。找到 /usr/lib/python3.6/dist-packages/cv2/python-3.6路径下的cv2.cpython-36m-aarch64-linux-gnu.so文件,复制到路径/home/cug/archiconda3/envs/demo/lib/python3.6文件夹下即可。

6.下面下载、安装pytorch。下载链接,然后安装即可:

pip install torch-1.7.0-cp36-cp36m-linux_aarch64.whl

7.下载安装torchvision。如果报错的话,看看是不是和这个一样,我遇到了。还有一问题。参照这个网址进行安装。下面的命令行有点问题。

git clone -b v0.8.1 https://github.com/pytorch/vision.git vision-0.8.1cd vision-0.8.1sudo /home/cug/archiconda3/envs/demo/bin/python3.6 setup.py install

8.安装剩下的包

pip install tqdm==4.58.0 seaborn==0.11.1 pandas thop pycocotools==2.0.2

9.下面导入tensorrt。参考了同一个大佬的做法。与opencv的导入相同。将路径 /usr/lib/python3.6/dist-packages/  下关于TensorRT的文件夹,复制到自己所创建环境的site-packages文件夹下。

10.安装一下pycuda,如果很卡的话,可以等一会,先去吃个饭。

至此,环境搭建基本上就ok了,如果有报错建议复制错误提示,百度一下即可。pip list一下,可以检查一下。

二、下载yolov5、tensorrtx,并验证

1.下载,建议使用v5.0。

git clone -b v5.0 https://github.com/ultralytics/yolov5.git git clone -b yolov5-v5.0 https://github.com/wang-xinyu/tensorrtx.git

2.生成wts文件,生成engine文件

(1)将yolov5s.pt权重文件复制到yolov5工程下。

(2)复制tensorrtx/yolov5文件夹下的gen_wts.py文件到yolov5工程下。

(3)进入yolov5工程文件夹下,输入:

python gen_wts.py -w yolov5s.pt -o yolov5s.wts

 然后会看到有个.wts文件。

(4)首先在tensorrtx下的yolov5下建一个叫build的文件夹,然后将上面生成的.wts文件复制到build文件夹中,在build中打开终端输入:

cmake ..makesudo ./yolov5 -s yolov5s.wts yolov5s.engine s

然后会看到生成了一个.engine的文件,即引擎文件。

3.验证能不能用

这里首先上图片检测。在yolov5_trt.py所在的文件夹中打开终端,首先激活虚拟环境,然后运行。

conda activate yolov5envpython yolov5_trt.py 

三.总结

到这基本上就ok了,参考了大佬的博客折腾了两天,这里就是简单总结一下,方便以后自己回顾。后面,我还做了无人机视频的推拉流和检测,涉及到了docker镜像的使用。如果大家有任何问题,可以留言。,最后,感谢大佬!如有侵权,请联系删除。

参考:

大佬博客

大佬博客

你可能感兴趣的:(pytorch,深度学习,目标检测,视觉检测,linux)