看YOLOv5代码的一些感悟

一.YOLOv5结构

RGB三通道图片\rightarrowBackbone\rightarrowHead\rightarrow检测框

二.detect.py

在YOLOv5的detect.py以及毕设代码BeiFen_BeiFen_BeiFen.py的detect部分最重要的就是自己训练的权重文件,而自己的权重文件是在train.py中基于yolov5s.pt训练的

yolov5s.pt:预训练权重;基于其可以理解成能够加快训练速度

注:理解detect.py时,建议搞清楚里面一些参数变量到底是True还是False,这就涉及最基本的语法and和or的逻辑关系,可参考如下博客:

python——and和or逻辑运算符用法详解_xiaochuhe.的博客-CSDN博客_python中and和or的用法

三.模型优化

 YOLOv5的网络结构是由yolo.py文件中的model函数创建的,而yolov5s(n,m,l,x).yaml文件就是指导model函数一层一层的搭建YOLOv5的网络结构,这个网络结构搭建不是你以前想的在某个地方单独搭建的,而是在train.py中引用了models文件下yolo.py中的Model函数,需要注意的是:在train.py中创建的网络模型其实算是你自己独有的,因为你需要传入你自己修改后的.yaml文件来指导Model函数

修改网络模型

目前理解:1. 修改.yaml文件;2.修改yolo.py里的Model函数

注:通常不会考虑修改网络模型,因为你不确定你设置的参数训练效果怎么样,试错代价太大

四.关于环境方面的经验

1.安装好Anaconda后,用终端操作比较方便

2.安装与自己电脑适配的cuda版本,再安装与其版本对应的torch与torchvision

验证torch与cuda是否关联在一起:输入python\rightarrow输入import torch\rightarrow输入print(torch.cuda.is_available())\rightarrow返回True则代表安装成功,即可在终端进入自己的环境pip install 所需要的包名

3.在pycharm设置代码运行环境

右下角点击添加Python解释器\rightarrowConda环境\rightarrow现有环境\rightarrow点击解释器后的三个点找到Anaconda文件夹\rightarrowenvs\rightarrow环境名\rightarrowbin\rightarrowpython

五.一些终端的命令

vim ~/.bashrc:可以配置环境变量的地方

source ./bashrc:刷新

在arm盒中 nvcc -V可以查看cuda版本 nvidia-smi行不通

ctrl+c:终端强制杀死进程

猜你喜欢

转载自blog.csdn.net/qq_42784882/article/details/127363118