YOLOv5目标检测模型

发布时间 2023-07-27 23:11:04作者: 琦家出品

YOLOv5目标检测模型

环境配置

1、安装Anaconda

打开命令行输入conda -V检验是否安装及当前conda的版本

2、conda常用的命令

1)conda常用的命令

conda list

2)查看当前存在哪些虚拟环境

conda env list
conda infor -e

3)python创建虚拟环境

conda create -n your_env_name python=x.x

4)虚拟环境的删除

conda remove --name $your_env_name $package_name

数据标注

1、安装labelimg软件
pip install labelimg

直接在命令行输入lableimg就可以进入

2、操作流程
  1. 修改数据输入格式,将数据转换为yolo
  2. 使用open dir去选择图片文件夹(包含图片的文件夹)
  3. 选择保存标注后的文件夹 change Save Dir
  4. 我们在图片上直接拖动鼠标标注物品,并输入物品类别,标注结束后,点击Next Image就可进入下一张图片

需要注意的是标注文件和图片文件对应的名称是相同的,同时在保存标注数据的文件夹中由 "classes.txt" 其中包含着所有的类别名

同时标注数据为[目标类别,中心点_x,中心点__y, 宽,高](经过归一化处理)

模型的训练验证和使用

1、修改数据集配置文件yaml文件

image-20230727223709213

如上图所示,我们需要在data文件夹下创建自己的yaml数据文件

train: 训练数据文件路径(使用反斜杠/)
val: 验证数据文件路径

nc: _  # number of classes

# class names
name: ['mask','face']
2、修改模型的配置文件

image-20230727224024100

我们在model文件夹中修改我们需要的模型,并修改识别类型数量

image-20230727224118456

即nc.

3、训练模型
python train.py --data mask_data.yaml--cfg mask_volov5s.yaml --weights pretrained/yolov5s.py --epoch 100 --batch-size 4 --device cpu

我们就可以直接在终端中开始训练模型,并设置各种参数。

4、训练得到的结果

训练得到的新模型得到的模型参数,我们可以在runs目录下找到,run文件夹中存在着train模型,其中会有weights文件夹存放着最好表现的模型,以及训练最后的模型。

如果需要单独对模型进行验证机评估,我们可以调用val.py文件,并且传入对应的参数,如

python val.py --data data/mask_data.yaml --weights runs/train/exp_yolov5s/weights/best.py --img 648

源码解读

yolov5的源码写的十分精彩,有需要的同学可以在B站找到“科科带你学”Up主的yolov5源码解读系列,讲解的特别好,小哥哥的声音也贴别好听,有需要可以移步B站。