Yolov8基本介绍+训练自己数据集(自用版心得)

1、图像分割基础

1.1、任务说明及常用数据集

目标检测:将不同种类框起来

语义分割:能够反应不同种类的形状出来

实例分割:代表同种类的物体也能识别清楚,精确分割每个实例

semantic labels 语义标签

常用数据集

1.2、性能指标

 

 

2、Yolov8网络

2.1、yolov8网络架构

针对于边界框模糊的情况,设计DFL(distribution focal loss)

有利于性能的提升。

2.2、YOLACT实例分割

实例分割,也是目标检测,精度也高。抛弃显示定位步骤,全卷积模型,是一个实时的实例分割

五个级别骨干网,送到

protonet获得prototype

(1)获得

(2)对每个实例获得蒙版系数

产生实例的文本,

 

 

 

2.3、实例分割网络输出

2.3.1、YOLACT

3、训练自己的数据集

3.1、服务器会连(有显卡别看)

3.2、单个图片检测、单个视频检测

首先直接在大文件夹创建新的demo_predict.py 即创建一个python文件,如图

1、检测当前屏幕

2、打开摄像头实时检测

# 扫描检测当前屏幕上面
# result = yolo(source="screen")

# 打开摄像头检测
# result = yolo(source=0)

需要进行的操作,比如保存,save=True,需要改动在此处改想要进行的操作。

conf 分数越低画出来的框越多

iou 设置越高,出来越多

jupyter当中,plt。imshow(result[0].plot()[:,:,::-1])可以让图片输出格式正常

绝对路径,相对路径 

调用服务器要使用相对路径     ./当前文件夹/文件夹下的目录

result = yolo(source="./ultralytics/assets/road.jpg",save=True,conf=0.2)

绝对路径是在本地中用的,从D盘到

result = yolo(source="D:\\code\\ultralytics-main\\ultralytics-main\\ultralytics\\assets\\road.jpg",save=True,conf=0.2)

  3.3、Labelimg

本人没有显卡,租云端服务器,直接在cpu安装的yolov8 和 labelimg

data.yaml 里面看类别名称

3.4、数据集格式

模型训练前准备:整理数据集,对于直接在网络上下载的数据集而言,有的不太规范,比如没有train 和 val 等等分类

首先在图片里面,修改文件夹名称,images,然后在里面创建 train 和val 分出一部分 放在train ,剩下的部分塞到val里面。

1、务必放在datasets里面!没有就创建,然后将刚刚准备的数据集放入

2、第二配置 描述文件,从 ultralytics 里面 assets 按照这里面的配置,可以将文件copy一份放在外侧,然后对文件进行修改

 3、视频里光改了yolo.bvn    其中path没有直接从根目录里面,而是在assets 下面的bvn 直接写bvn

4、需要修改的部分是data 改成刚刚的yaml文件  另一个区别是mode从predict 改成了train

 windows系统将workers=1 

epochs代表训练多少轮

batche=16 就可以

这是基于命令行的方式进行启动!在终端上输入这一行代码

还有一种启动基于代码的

记住切换解释器,选yolov8解释器

第二行是加载模型

 

windows上面是在代码上workers要变成0  否则上面那张图运行不出来。

每次从这个地方加载参数但是可以copy一份用于平常训练,直接在copy的上面改

 修改上面这几个参数,设置用yolov8n模型,这样每次运行不用指定特别多的参数,直接在命令行指定一个参数  直接输入

5、结果存在runs里面train里面,如果不想要这个值,可以根据 results.csv 进行自行绘制

6、模型会存在 weights 里面 

7、接下来可以使用 predict  对于我们训练的模型,检测一下什么效果

用这句话直接对于视频进行一个检测                           

注意点

yaml文件就放在想跑的根目录下面,然后数据集就放在根目录下的datasets 再根据自己的数据据名称给他包一层就可以了 datasets/bvn 

path  的yaml要从我们包的那一层写起会少很多问题

 

 4、实战及问题

由于本人是边练边写经验,每次打开csdn的草稿都太卡了 ,这期间调试也遇见了很多很多问题,多次崩溃发疯扭曲爬行后阅读百十篇帖子最终得到了解决,会另外开新的帖子,把遇到的问题以及解决方案全部分享出来,这里不再赘述。

  • 17
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了训练自己的数据集,您可以按照以下步骤进行操作: 1. 数据准备:首先,您需要准备您自己的数据集。确保您的数据集包含图像和标签,其中标签指定了每个图像中物体的位置和类别。 2. 数据标注:使用合适的工具对您的数据集进行标注。您可以选择使用开源的标注工具,如LabelImg、Labelbox或RectLabel等。在标注过程中,确保正确地标记每个物体的边界框,并为每个边界框分配相应的类别标签。 3. 配置YOLOv8:接下来,您需要根据您的数据集配置YOLOv8模型。YOLOv8是一种目标检测模型,可以用于训练和推理。您可以参考YOLOv8的官方源代码中提供的配置文件,根据您的数据集进行相应的修改。 4. 数据预处理:在训练,您可能需要对您的数据集进行一些预处理操作,以便与YOLOv8模型兼容。这可能包括图像尺寸的调整、数据增强操作(如随机裁剪、翻转等)以及颜色空间的转换。 5. 训练模型:一切准备就绪后,您可以使用YOLOv8训练脚本来开始训练模型。该脚本通常会接受配置文件、数据集路径以及其他训练参数作为输入。您可以根据需要进行适当的调整,如学习率、批处理大小等。 6. 模型评估:训练完成后,您可以使用验证集或测试集来评估模型在新数据上的性能表现。这将帮助您了解模型的准确性和效果。 请注意,以上步骤是针对使用YOLOv8和ByteTrack方法训练自己的数据集的一般步骤。具体实施细节可能会因您的数据集和任务的特定要求而有所不同。因此,建议您参考引用中提供的代码项目或其他相关资料,以获取更详细和具体的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值