一、前言

1.代码在我的资源里下载。 代码链接:mbd.pub/o/bread/Ypy…

2.本文不会解说关于yolov5的理论问题,仅仅教大家实操,这篇文章能够协助大家学会yolov5的训练与辨认,本文运用穿越前方(cf)为例。

二、视频辨认

咱们先看作用。

最新版穿越火线游戏识别教程(人工智能yolov5)

后续链接

yolov5后续(参考v3) (mianbaoduo.com)

三、版别和装备环境

matplotlib>=3.2.2 numpy>=1.18.5 opencv-python>=4.1.2 Pillow>=7.1.2 PyYAML>=5.3.1 requests>=2.23.0 scipy>=1.4.1 torch>=1.7.0 torchvision>=0.8.1 tqdm>=4.41.0

thop # FLOPs computation

四、准备工作 1.yolov5 模板下载 第一步:将整个代码从github上下载下来,

网址:GitHub – ultralytics/yolov5: YOLOv5 in PyTorch > ONNX > CoreML > TFLite

也能够直接到GitHub上搜yolov5

然后点code(绿色) 最后点下面的Download ZIP (最好不要下到C盘,假如C盘够用也不要紧) 2.装置所需库 主要是装置版别与装备声明中所需在库。 matplotlib>=3.2.2

numpy>=1.18.5

opencv-python>=4.1.2

Pillow

PyYAML>=5.3.1

scipy>=1.4.1

torch>=1.7.0

torchvision>=0.8.1

tqdm>=4.41.0

tensorboard>=2.4.1

seaborn>=0.11.0

pandas

pycocotools>=2.0 # COCO mAP

albumentations>=1.0.2

(1)装置pytorch(主张装置gpu版别cpu版别太慢)

这些库中或许就pytorch比较难装置,其他库用pip install 基本能完成。

可直接在Anaconda Prompt里输入:

pip install torch==1.7.0+cu101 torchvision==0.8.1+cu101 torchaudio===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html

3.运转检测

下载完yolov5后,运转detect,能够协助咱们检查上面的环境是不是装置成功。

最新版穿越火线游戏识别教程(人工智能yolov5)

假如运转不报错,咱们会在runs//detect//exp 文件夹下看到两张已经猜测出的相片。

最新版穿越火线游戏识别教程(人工智能yolov5)

最新版穿越火线游戏识别教程(人工智能yolov5)
假如报错,问题也不大,看就是装置的环境版别比较低或者没装置,咱们略微调试一下就OK了。

五、数据集

咱们先要创建几个文件夹用来寄存数据和模型。

在yolov5-master如下图所示文件夹

最新版穿越火线游戏识别教程(人工智能yolov5)
1.制作标签 这里我是以穿越前方为例,供给100个已经符号好的数据(放在文末)。你也能够自己符号,一百张作用不是很好,能够多符号几张。

(1)装置labelme

在Anaconda Prompt里pip install labelme

(2)运用labelme

在Anaconda Prompt里输入labelme,会弹出一个窗口。

最新版穿越火线游戏识别教程(人工智能yolov5)

然后打开图片地点的文件夹

点击rectangle,符号想要辨认的东西。

咱们这里用了两个标签(保卫者:’Global Risk’ 、埋伏者:’Black List’)

最新版穿越火线游戏识别教程(人工智能yolov5)

符号完后保存到一个新的文件夹下,保存的文件格局是.json

2.转格局(json转txt) 要修正代码中标签名称,寄存json文件的绝对途径和保存txt文件的绝对途径。

咱们将生成的txt放在my_dates//labels//train中

将本来的图片放在my_dates//images//train中

六、装备文件

1.mydata.yaml

copy一下coco128.yaml文件到my_dates下并改名为mydata

最新版穿越火线游戏识别教程(人工智能yolov5)

最新版穿越火线游戏识别教程(人工智能yolov5)
然后修正里边的参数:

(1)先将path注释掉(别忘记注释) ,然后将train和val改为寄存训练集图片的方位

train: my_dates/images/train val: my_dates/images/train (2)然后将nc 改为标签个数(咱们这里是2),names里边改为咱们的标签名。

最新版穿越火线游戏识别教程(人工智能yolov5)
别忘了注释path

2.mydata_1.yaml

copy一下yolov5s.yaml文件到my_dates下并改名为mydata_1。(yolov5s作用最差但速度最快咱们能够依据自己的情况挑选模型)

最新版穿越火线游戏识别教程(人工智能yolov5)

最新版穿越火线游戏识别教程(人工智能yolov5)
然后修正里边的参数:

这里只需求将第四行的nc改为2(标签个数) 。

最新版穿越火线游戏识别教程(人工智能yolov5)

七、训练模型

咱们要对train.py文件进行修正。

1.为了防止编码出错,with open后边要加上encoding=’utf-8’,要改好几处,能够用ctrl+F查找with open。

最新版穿越火线游戏识别教程(人工智能yolov5)

2.咱们还要改多处default的值,在代码的480行左右。(改的全是default的值)。

一共要修正六处,最后一处略微靠下一点。

第四处假如电脑装备好的话能够不用修正。

最新版穿越火线游戏识别教程(人工智能yolov5)

最新版穿越火线游戏识别教程(人工智能yolov5)

最后运转:

最新版穿越火线游戏识别教程(人工智能yolov5)

时刻有点长(一小时左右)!!!!

假如报错依据实际情况修正一下就ok

成果会放在下面途径下

最新版穿越火线游戏识别教程(人工智能yolov5)

八、测验视频 咱们只需修正detect.py文件夹下的权重途径和测验途径。(210行左右)

最新版穿越火线游戏识别教程(人工智能yolov5)

只需求将需求猜测的视频或图片放在下面文件夹下,

最新版穿越火线游戏识别教程(人工智能yolov5)
然后运转detect.py就ok了!!!!!!

最新版穿越火线游戏识别教程(人工智能yolov5)
成果放在 (每次运转都会生成一个新的exp,所以我这是exp7)

最新版穿越火线游戏识别教程(人工智能yolov5)

九、总结 咱们本次仅仅辨认穿越前方中的人物,还没有完成自动瞄准,我只用了一百张图片进行猜测,猜测作用不是很好,你能够增加些图片进行训练。

后期还会更新!!!!!!!!!!!!!!!!!!!