使用yolo模型进行目标检测,包含训练步骤和测试代码

图片标注:

推荐在线标注工具:Make Sense

点击页面右下角的Get Started进入主页面

批量上传图片,并点击【目标识别】:

目标识别:框选出我们要识别的指定目标

设置一个标签类别(我这里做演示,实际使用最好使用英文名称):

开始标注:

标注完成了之后到处标注信息:

导出的标注文件的信息:

等会这些txt文件将要分别放在labels文件夹中。

接着做其余动作:

安装python3.10

添加到系统变量路径,选择【install now】

禁用最大长度路径:

使用cmd命令终端安装训练库(阿里源,安装训练必须的库,安装过程中不要去动,安装完成有提示信息的):

pip install -i https://mirrors.aliyun.com/pypi/simple/ ultralytics torch torchvision

创建一个yolo文件夹(尽量避免使用中文文件名称,我这为了方便演示):

  1. 把刚刚标注的txt文件放入train\labels文件夹中
  2. 把刚刚需要标注的图片文件放入train\images文件夹中
  3. 在train\labels文件夹和train\images文件夹中,分别【剪切】几个文件到val文件夹中剪切的图片和文本都要名称一致,分别放到val的labels和images文件夹中,用于训练验证。

*这两个是一一对应的,也就是说图片名称和标注名称是一致的。

val文件夹中,需要放置几个错误的产品,放图片和txt文件,txt设置为空就行,图片名称和txt文件名要保持一致,用于验证的

Yolo的data.yaml文件信息:


训练代码:

yolo detect train \     #检测模型训练

data=F:\py_yolo\data.yaml \      # 指定数据集配置

model=F:\py_yolo\yolov8n.pt \   # 加载预训练模型

epochs=18 \ # 训练 18 轮,就是你训练图片有多少张,我就放了18张

imgsz=640 \  # 图像缩放至 640x640,如果图片很大,目标很小,就不要把图片缩到太小,否者训练效果不理想

batch=8 \    # 每批处理 8 张图(我电脑是8核心,是CPU核心数不是线程数)

device=cpu \  # 使用 CPU 训练(gpu的使用device=0或者device=cuda)

project=F:\py_yolo\my_train \ # 结果保存到 my_train 目录

name=exp1 \# 实验名为 exp1

rect=True  # 启用矩形训练优化

打开CMD命令运行训练代码,自己更改下实际路径:

yolo detect train data=D:\yolo\model\data.yaml model=D:\yolo\model\yolov8n.pt epochs=18 imgsz=640 batch=8 device=cpu project=D:\yolo\my_train name=exp1 rect=True

训练过程截图,我这里是使用CPU训练,i7 11700型号的, 8核心CPU测试下来5秒一张图,只要识别指定目标的,我放了18张图,共计包含150个标注信息,训练出来的结果已经很好了

训练结果:

训练好的模型放在my_train\自己定义的输出名称\weights中,bast.pt代表最佳模型,last.pt代表最后训练的模型

验证模型效果:

安装IDE,我这里是字节的TREA软件,其实就是VSCODE,套了个壳。

直接有勾选的全部勾选,一直安装完成,最后要登录编辑器的,手机验证码登录就行

IDE调试使用

安装python扩展

代码重点:

识别结果,绿色框出来的就是我的产品:

附带完整的运行代码例子,请参考资源下载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值