YOLOV5 代码复现以及搭载服务器运行_yolov5代码用pycharm在服务器上运行

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注大数据)
img

正文


前言

在前面文章中提到,目标检测有两种方式,一种是one_stage(单阶段)如YOLO 一种是two_stage(双阶段)如Faster_Rcnn,Mask_Rcnn。之前介绍了Faster_Rcnn,这篇文章主要介绍YOLOV5 代码复现过程,以及配置文件的修改。


一、YOLO简介

YOLO是目标检测的一种网络框架,检测速度非常快,适合做一些实时检测,YOLO现在经过几代版本的更迭,现在已经到了V5版本,V5提供了5l,5m,5s,5x几种版本,这篇文章使用5s的模型。

二、代码下载

大家可以自行到百度网盘进行下载,附链接:

链接:百度网盘
提取码:qnn5
在这里插入图片描述

三、数据集准备

在上篇文章中,介绍了xml转txt文件的代码过程,可以自行查看,附链接:
代码
转换之后,还可以分成训练集跟测试集
在这里插入图片描述
images 放置文件
labels 放置txt文件
这里要注意的是,文件夹名称一定为images跟labels,原代码规定如下:

def img2label\_paths(img_paths):
    # Define label paths as a function of image paths
    sa, sb = os.sep + 'images' + os.sep, os.sep + 'labels' + os.sep  # /images/, /labels/ substrings
    return [sb.join(x.rsplit(sa, 1)).rsplit('.', 1)[0] + '.txt' for x in img_paths]

四、配置文件的修改

1.data下的yaml

在这里插入图片描述
修改data目录下面的VOCyaml文件,

修改前:
path: ../datasets/VOC
train: # train images (relative to 'path') 16551 images
  - images/train2012
  - images/train2007
  - images/val2012
  - images/val2007
val: # val images (relative to 'path') 4952 images
  - images/test2007
test: # test images (optional)
  - images/test2007
修改后
train: # train images (relative to 'path') 16551 images
  - /mnt/wu/images/train
val: # val images (relative to 'path') 4952 images
  - /mnt/wu/images/val

这里修改数据路径
在这里插入图片描述

修改前:
nc: 20  # number of classes
names: ['aeroplane', 'bicycle', 'bird', 'boat', 'bottle', 'bus', 'car', 'cat', 'chair', 'cow', 'diningtable', 'dog',
        'horse', 'motorbike', 'person', 'pottedplant', 'sheep', 'sofa', 'train', 'tvmonitor']  # class names
修改后:
nc: 4  # number of classes
names: ["Traffic\_Light\_go","Traffic\_Light\_stop","Traffic\_Light\_warning",'Traffic\_Light\_ambiguous'] # class names

这里更改nc跟标签
nc:表示你训练的数据是几分类。
在这里插入图片描述

2.models下的yaml

在这里插入图片描述
这里使用的是5s的模型,更改yolov5s.yaml文件
在这里插入图片描述
这里只需要更改nc可以,代表你训练的数据是几分类。

3.训练train

在这里插入图片描述

  1. 更改YOLOV5s模型的路径
parser.add_argument('--weights', type=str, default=ROOT / 'yolov5s.pt', help='initial weights path')

2.更改上面修改过models的yaml文件路径

parser.add_argument('--cfg', type=str, default='models/traffic.yaml', help='model.yaml path')

3.更改上面修改过data的yaml文件路径

parser.add_argument('--data', type=str, default=ROOT / 'data/traffic.yaml', help='dataset.yaml path')

4.训练批次

parser.add_argument('--epochs', type=int, default=50)

5.批次大小,batch_size 如果在训练过程中出现显存不足可以降低batch_size的大小

parser.add_argument('--batch-size', type=int, default=64, help='total batch size for all GPUs, -1 for autobatch')

五、搭载服务器训练

像YOLO这种深度框架,最好搭载服务器进行训练,博主使用的是矩池云,附链接矩池云
附邀请码:BQlYmrQhDiex1lZ

1.上传数据

租服务器之前,先上传数据,数据很大的话,租服务器之后上传会浪费时间,还费钱。
进入我的网盘,上传数据。
在这里插入图片描述

2.租服务器

这里选择显卡型号,进行租用。
在这里插入图片描述
环境选择yolov5环境,省去配环境的环节。
在这里插入图片描述

3.pycharm连接服务器

租用好之后,进入租用界面,显示租用服务器的详细信息。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
[外链图片转存中…(img-In6KK4kR-1713333313488)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值