# YoloV5对水域中游泳者进行检测
## 一、说明
### 1.1 项目说明
本项目是使用 YoloV5 来训练自己的数据集,所以仅仅展示训练自定义数据集的过程。
**yolov5原项目在 github的地址:https://github.com/ultralytics/yolov5**
**如果想要训练自己的数据集,强烈推荐去 github 下载最新的代码,因为最新的代码目录结构可能发生改变,以最新的代码为准。**
**同时,原作者在 github 给出的文档十分详细,想要深入了解的话强烈推荐去 github,这里只是展示本人训练的一个过程。**
### 1.2 数据集说明
**数据集存放在项目根路径的 `myDataSet` 文件夹内,但是在实际训练时,请按照作者要求的目录机构组织数据集的位置,即让数据集和项目位于同级目录下。**
- `swimmer_img`
这个数据集是本人自己标注的水域游泳者的数据集,共有118张图片。
- `coco128`
这个是从官网下的 coco128 数据集,已经标注好了的。
- `BCCD.v1-resize-416x416.yolov5pytorch`
这是是血细胞的数据集,可以用来检测血细胞,同样也是标注好了的数据集,数据集来源于 B 站。
## 二、检测效果截图
- 检测水域游泳者
![水域游泳者检测1](https://images.gitee.com/uploads/images/2021/0620/153308_fcbc9bfe_5430474.png "屏幕截图.png")
- 检测血细胞
![检测血细胞](https://images.gitee.com/uploads/images/2021/0620/154402_79038d2f_5430474.png "屏幕截图.png")
- 数据集的标注
![数据集的标注](https://images.gitee.com/uploads/images/2021/0620/153835_66c255c3_5430474.png "屏幕截图.png")
## 三、训练步骤
### 3.1 组织目录结构
![目录结构](https://images.gitee.com/uploads/images/2021/0620/154204_06d7cce6_5430474.png "屏幕截图.png")
项目工程代码位于 `yolov5-develp` 目录项目,标注好的数据集位于 `swimmer_img` 里面
### 3.2 编写数据集配置文件
修改位于 `models/yolov5s_swimmer.yaml` 的文件内容。
主要是修改 ==nc== 参数的值,这里我们有 ==person== 和 ==swimmer== 两种类型的目标,所以 nc 设置为 2。
```yaml
# parameters
nc: 2 # number of classes
depth_multiple: 0.33 # model depth multiple
width_multiple: 0.50 # layer channel multiple
# anchors
anchors:
- [10,13, 16,30, 33,23] # P3/8
- [30,61, 62,45, 59,119] # P4/16
- [116,90, 156,198, 373,326] # P5/32
# YOLOv5 backbone
backbone:
# [from, number, module, args]
[[-1, 1, Focus, [64, 3]], # 0-P1/2
[-1, 1, Conv, [128, 3, 2]], # 1-P2/4
[-1, 3, C3, [128]],
[-1, 1, Conv, [256, 3, 2]], # 3-P3/8
[-1, 9, C3, [256]],
[-1, 1, Conv, [512, 3, 2]], # 5-P4/16
[-1, 9, C3, [512]],
[-1, 1, Conv, [1024, 3, 2]], # 7-P5/32
[-1, 1, SPP, [1024, [5, 9, 13]]],
[-1, 3, C3, [1024, False]], # 9
]
# YOLOv5 head
head:
[[-1, 1, Conv, [512, 1, 1]],
[-1, 1, nn.Upsample, [None, 2, 'nearest']],
[[-1, 6], 1, Concat, [1]], # cat backbone P4
[-1, 3, C3, [512, False]], # 13
[-1, 1, Conv, [256, 1, 1]],
[-1, 1, nn.Upsample, [None, 2, 'nearest']],
[[-1, 4], 1, Concat, [1]], # cat backbone P3
[-1, 3, C3, [256, False]], # 17 (P3/8-small)
[-1, 1, Conv, [256, 3, 2]],
[[-1, 14], 1, Concat, [1]], # cat head P4
[-1, 3, C3, [512, False]], # 20 (P4/16-medium)
[-1, 1, Conv, [512, 3, 2]],
[[-1, 10], 1, Concat, [1]], # cat head P5
[-1, 3, C3, [1024, False]], # 23 (P5/32-large)
[[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5)
]
```
### 3.3 编写模型配置文件
编辑 `/data/swimmer.yaml` 文件。
修改 ==train== 参数和 ==val== 参数,这 2 个参数设置用来指定数据集的路径。
修改 ==nc== 参数为识别的目标类别个数。
修改 ==names== 参数为类别名称,名称要和标注图片时的下标对应起来。
```yaml
# COCO 2017 dataset http://cocodataset.org - first 128 training images
# Train command: python train.py --data coco128.yaml
# Default dataset location is next to YOLOv5:
# /parent_folder
# /coco128
# /yolov5
# download command/URL (optional)
# download: https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip
# train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/]
train: ../swimmer_img/images/ # 128 images
val: ../swimmer_img/images/ # 128 images
# number of classes
nc: 2
# class names
names: ['swimmer', 'water' ]
```
### 3.4 开始训练
具体的各个参数可以看 ==train.py== 里面有具体的解释
```sh
python train.py --img 640 --batch 16 --epochs 100 --data ./data/swimmer.yaml --cfg ./models/yolov5s_swimmer.yaml --weights weights/yolov5s.pt --name yolov5s_swimmer
```
可以去官网下载对应的预训练模型,我下载的预训练模型放在 `weights/yolov5s.pt` 。
**预训练模型的尽量和项目的版本一致,否则会导致训练失败。**
## 四、查看结果
在 `/runs/train` 文件夹下存放每次训练的结果,最后一层训练成功的结果位于 `yolov5s_swimmer2` 文件夹下。
在 `/runs/detect` 文件夹下存放检测的结果,`exp10`,`exp11`,`exp12` 存放的是对图片检测的结果, `swimmer_video2` 存放的是对视频检测到的结果。
没有合适的资源?快使用搜索试试~ 我知道了~
基于YOLOV5的水域中游泳者检测识别系统源码+训练好的模型+数据集.zip
共1875个文件
jpg:880个
txt:811个
yaml:60个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 100 浏览量
2024-04-21
21:58:31
上传
评论
收藏 231.92MB ZIP 举报
温馨提示
基于YOLOV5的水域中游泳者检测识别系统源码+训练好的模型+数据集说明 数据集存放在项目根路径的 myDataSet 文件夹内在实际训练时,请按照作者要求的目录机构组织数据集的位置,即让数据集和项目位于同级目录下。
资源推荐
资源详情
资源评论
收起资源包目录
基于YOLOV5的水域中游泳者检测识别系统源码+训练好的模型+数据集.zip (1875个子文件)
events.out.tfevents.1622345317.b56b89382d6f.544.0 750KB
events.out.tfevents.1622348409.b56b89382d6f.776.0 745KB
events.out.tfevents.1622347943.b56b89382d6f.682.0 694KB
events.out.tfevents.1622343384.b56b89382d6f.158.0 689KB
events.out.tfevents.1622450972.fc846bd6f9e4.353.0 688KB
events.out.tfevents.1622450126.fc846bd6f9e4.246.0 681KB
events.out.tfevents.1622343372.b56b89382d6f.148.0 40B
train2017.cache 43KB
Dockerfile 2KB
Dockerfile 821B
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
tutorial.ipynb 385KB
image_test_002.jpeg 129KB
image_test_002-checkpoint.jpeg 129KB
image_test_003.jpeg 119KB
image_test_003-checkpoint.jpeg 119KB
img_110.jpg 1.32MB
img_110.jpg 1.32MB
img_109.jpg 1.16MB
img_109.jpg 1.16MB
img_111.jpg 1.06MB
img_111.jpg 1.06MB
img_113.jpg 1.06MB
img_113.jpg 1.06MB
img_117.jpg 1MB
img_117.jpg 1MB
img_106.jpg 960KB
img_106.jpg 960KB
img_067.jpg 931KB
img_067.jpg 931KB
img_080.jpg 667KB
img_080.jpg 667KB
img_116.jpg 606KB
img_116.jpg 606KB
000000000575.jpg 530KB
img_115.jpg 518KB
img_115.jpg 518KB
labels.jpg 506KB
labels.jpg 506KB
bus.jpg 483KB
bus-checkpoint.jpg 483KB
bus.jpg 476KB
img_114.jpg 470KB
img_114.jpg 470KB
labels.jpg 454KB
image_258.jpg 423KB
labels_correlogram.jpg 423KB
labels_correlogram.jpg 423KB
labels_correlogram.jpg 412KB
000000000034.jpg 397KB
000000000061.jpg 391KB
train_batch2.jpg 389KB
000000000073.jpg 375KB
000000000151.jpg 374KB
img_088.jpg 372KB
img_088.jpg 372KB
labels.jpg 367KB
labels.jpg 367KB
train_batch0.jpg 354KB
train_batch2.jpg 349KB
train_batch2.jpg 349KB
train_batch1.jpg 349KB
train_batch1.jpg 349KB
train_batch1.jpg 344KB
000000000368.jpg 341KB
labels_correlogram.jpg 341KB
train_batch0.jpg 339KB
train_batch0.jpg 339KB
test_batch2_pred.jpg 331KB
test_batch2_pred-checkpoint.jpg 331KB
test_batch2_labels.jpg 331KB
test_batch2_labels-checkpoint.jpg 331KB
000000000309.jpg 330KB
000000000397.jpg 313KB
000000000605.jpg 311KB
test_batch2_pred.jpg 309KB
test_batch2_pred-checkpoint.jpg 309KB
labels.jpg 308KB
test_batch2_labels.jpg 303KB
test_batch2_labels.jpg 303KB
test_batch2_pred.jpg 296KB
test_batch2_pred-checkpoint.jpg 296KB
000000000312.jpg 293KB
labels_correlogram.jpg 292KB
labels_correlogram.jpg 292KB
000000000307.jpg 292KB
test_batch1_pred.jpg 292KB
img_112.jpg 288KB
img_112.jpg 288KB
000000000502.jpg 287KB
000000000629.jpg 286KB
img_087.jpg 281KB
img_087.jpg 281KB
共 1875 条
- 1
- 2
- 3
- 4
- 5
- 6
- 19
资源评论
FL1768317420
- 粉丝: 3793
- 资源: 4531
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功