windows下yolov5训练数据集(是否佩戴口罩)[第一步---部署yolov5源码到自己电脑]

147 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第6天,点击查看活动详情

首先,在github中下载当前的yolov5版本,网址如下: github.com/ultralytics…

打开网址是这样子的

image.png

然后点击上面图片中箭头指向的地方

image.png

按照箭头首先点击tags,然后选择5.0,打开是下面这个样子的

image.png

点击箭头所示,然后是下面这个样子

image.png

然后选择Download ZIP,就可以下载yolov5的源码了。

下载源码之后,下一步就是让代码跑起来,对于conda安装gpu版本的pytorch后面我会专门写一次博客,也就在这两天时间,gpu版本的pytorch安装可以参考那一篇还未出世的博客。

首先,打开anaconda prompt,然后通过cd切换文件夹的方式切换到yolov5所在的目录下,大概命令如下所示 我的代码放d盘里面了,所以依次执行下面的命令

d:
cd PythonWorkSpace
cd yolov5-5.0
# 此处需要说明,事先需要使用conda自己建立一个虚拟环境,我用的是python3.8版本,虚拟环境名称为python38
# 下面的操作都必须在conda自带的Anaconda Prompt下执行。
# 不知道怎么使用python创建虚拟环境的看下面的命令(conda create --name 环境名 python=版本号,例如[conda create --name python38 python=3.8])
# 这样虚拟环境就建立好了,然后就是执行命令激活虚拟环境,activate python38。
activate python38
pip install -r requirements.txt

如下所示

image.png 我这里没有切换镜像源,稍微慢了一点,需要切换源的自己百度一下,非常简单。

安装完毕之后,就是检查一下代码是否能跑起来了!!! 话不多说,直接打开detect.py运行一下,看能否运行,第一次运行detect.py时界面如下,会首先下载权重文件

image.png 此处必定出错,因为自动下载的是6.1的权重,与我们代码的版本不匹配,会报错如下

image.png

然后,我们需要手动下载5.0的权重文件,链接如下 github.com/ultralytics…

下载后放置到weighs目录下,然后修改detect.py文件,只需要修改一行即可,就是指定权重文件的目录

image.png

然后继续运行,你会发现又报错了。。。

image.png 见招拆招,不要怕

image.png 打开图示的文件,加入下面的代码

import warnings
 
 
 
class SPPF(nn.Module):
    # Spatial Pyramid Pooling - Fast (SPPF) layer for YOLOv5 by Glenn Jocher
    def __init__(self, c1, c2, k=5):  # equivalent to SPP(k=(5, 9, 13))
        super().__init__()
        c_ = c1 // 2  # hidden channels
        self.cv1 = Conv(c1, c_, 1, 1)
        self.cv2 = Conv(c_ * 4, c2, 1, 1)
        self.m = nn.MaxPool2d(kernel_size=k, stride=1, padding=k // 2)
 
    def forward(self, x):
        x = self.cv1(x)
        with warnings.catch_warnings():
            warnings.simplefilter('ignore')  # suppress torch 1.9.0 max_pool2d() warning
            y1 = self.m(x)
            y2 = self.m(y1)
            return self.cv2(torch.cat([x, y1, y2, self.m(y2)], 1))

再运行detect.py,还报错。。不要慌

image.png

按照下面的方式修改即可

image.png

再运行,终于出现了下面的画面

image.png 此时,我们的代码终于跑了起来,运行成功之后刷新项目文件,会多出一个runs文件夹,下面就是我们检测结果的存放目录。

image.png

打开之后能看到检测的结果

image.png

image.png

这样我们的代码就跑成功了,下面就是训练我们自己的数据集了。关于如何制作yolov5的口罩数据集,可以擦模考前面的博客,里面有详细的教程。