yolov7训练NEU-DET

本文介绍了如何下载东北大学宋克臣教授提供的中文表面缺陷数据库,以及如何将数据集转化为YOLOv7可使用的格式。过程包括环境配置、数据集处理、权重文件准备和训练。在数据处理中,涉及了VOC到YOLO格式的转换,并根据概率划分训练集和测试集。之后,文章提到了训练时可能遇到的问题及其解决方案。
摘要由CSDN通过智能技术生成

1、数据集下载:

东北大学教师个人主页 宋克臣--中文主页--NEU surface defect database

缺陷:'inclusion','crazing','patches','pitted_surface','rolled-in_scale','scratches'

2、yolov7下载

(2条消息) YOLOv7保姆级教程(个人踩坑无数)----训练自己的数据集_AmbitionToFree的博客-CSDN博客

下载链接:

GitHub - WongKinYiu/yolov7: Implementation of paper - YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors

3、环境

使用自己原来的环境(但是torch版本不能等于1.12.0,torchvision不能等于0.13.0)

numpy库如果安装最新的1.24.1,会发生module numpy has no attribute int 错误,

1.24以上的版本可以把报错出的int改成inf。(我使用的是在官网粘贴的GPU运行环境,不知道为什么没有报错)

或者直接替换成numpy==1.23.0

python安装指定版本numpy_python中numpy版本-CSDN博客

pip install numpy==1.23.0

创建一个新环境conda create -n yolov7 python=3.8(我的没成功)

输入y确认创建

激活yolov7:conda activate yolov7

然后cd切换至刚才下载解压后的yolov7-main文件夹中

输入:E:

输入:cd E:\01-test\yolov7-main

输入:


pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple 

4、数据集处理

①查找缺陷名称

点开。xml文件,查找缺陷classes类型,在宋老师主页其实已经写出六种类型缺陷

若想使用 YOLOv5 训练 NEU-DET 数据集,可以按照以下步骤进行操作: 1. 下载 NEU-DET 数据集: 首先,从数据集提供的来源下载 NEU-DET 数据集。确保你拥有训练图像和相应的标签文件。 2. 准备数据集: - 将训练图像放在一个文件夹中(如 `data/images/train/`)。 - 将与每个图像对应的标签文件放在另一个文件夹中(如 `data/labels/train/`),标签文件的格式应与 YOLOv5 要求的格式相匹配。 3. 创建数据集配置文件: 在 `data/` 目录下创建一个新的 `.yaml` 文件(如 `neu-det.yaml`),并按照以下格式填写文件内容: ```yaml train: path/to/train.txt val: path/to/val.txt nc: 6 # 类别数目 names: [crazing, inclusion, patches, pitted_surface, rolled-in_scale, scratches] # 类别名称 ``` - 将 `path/to/train.txt` 替换为包含训练图像路径的文本文件的路径。 - 将 `path/to/val.txt` 替换为包含验证图像路径的文本文件的路径。 - 将 `nc` 设置为数据集中的类别数目(在 NEU-DET 中为 6)。 - 将 `names` 设置为数据集中每个类别的名称列表。 4. 开始训练: 运行以下命令来启动训练过程: ```shell python train.py --img 640 --batch 16 --epochs 50 --data path/to/neu-det.yaml --weights yolov5s.pt ``` - `--img` 设置输入图像的大小(推荐使用 640 或 1280)。 - `--batch` 设置批量大小。 - `--epochs` 设置训练的轮数。 - `--data` 指定数据集配置文件的路径。 - `--weights` 指定预训练权重文件的路径,可以使用预训练YOLOv5 权重(如 `yolov5s.pt`)或者之前训练的权重文件。 5. 监控训练过程: 训练过程中会显示损失和其他指标,同时会在 `runs/train/` 目录下保存模型权重文件和训练日志。 这样,你就可以使用 YOLOv5 训练 NEU-DET 数据集了。记得替换命令中的路径参数为你自己的路径和设置适合你的训练参数。如果有其他问题,欢迎继续提问!
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值