yolov8-02 训练自己的数据集

news2024/11/17 9:41:16

1. 准备数据集

数据集格式跟yolov5一样,关于如何准备数据集可见之前的文章。
在这里插入图片描述

2. 创建 mydata.yaml

格式参考coco128.yaml,主要是 train / validate文件的存放路径,可以是同一个。
在ultralytics-main/ultralytics/datasets中,有标准数据集的yaml文件。
coco128.yaml格式如下:

# Ultralytics YOLO 🚀, AGPL-3.0 license
# COCO128 dataset https://www.kaggle.com/ultralytics/coco128 (first 128 images from COCO train2017) by Ultralytics
# Example usage: yolo train data=coco128.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco128  ← downloads here (7 MB)


# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../datasets/coco128  # dataset root dir
train: images/train2017  # train images (relative to 'path') 128 images
val: images/train2017  # val images (relative to 'path') 128 images
test:  # test images (optional)

# Classes
names:
  0: person
  1: bicycle
  2: car
  3: motorcycle
  4: airplane
  5: bus
  6: train
  7: truck
  8: boat
  9: traffic light
  10: fire hydrant
  11: stop sign
  12: parking meter
  13: bench
  14: bird
  15: cat
  16: dog
  17: horse
  18: sheep
  19: cow
  20: elephant
  21: bear
  22: zebra
  23: giraffe
  24: backpack
  25: umbrella
  26: handbag
  27: tie
  28: suitcase
  29: frisbee
  30: skis
  31: snowboard
  32: sports ball
  33: kite
  34: baseball bat
  35: baseball glove
  36: skateboard
  37: surfboard
  38: tennis racket
  39: bottle
  40: wine glass
  41: cup
  42: fork
  43: knife
  44: spoon
  45: bowl
  46: banana
  47: apple
  48: sandwich
  49: orange
  50: broccoli
  51: carrot
  52: hot dog
  53: pizza
  54: donut
  55: cake
  56: chair
  57: couch
  58: potted plant
  59: bed
  60: dining table
  61: toilet
  62: tv
  63: laptop
  64: mouse
  65: remote
  66: keyboard
  67: cell phone
  68: microwave
  69: oven
  70: toaster
  71: sink
  72: refrigerator
  73: book
  74: clock
  75: vase
  76: scissors
  77: teddy bear
  78: hair drier
  79: toothbrush


# Download script/URL (optional)
download: https://ultralytics.com/assets/coco128.zip

3. 修改models , yolo8.yaml (这一步好像没有必要)

在models文件夹内,存放了v3-v8各个版本的模型配置文件。对目标模型文件进行修改,主要是对分类类别数量
在这里插入图片描述

如我的目标是4类,将nc设置为4
在这里插入图片描述

4. 官网下载预训练模型

如果是想先把流程走通的话,建议选择yolo8n.pt , V8系列里,最小的模型。

5. 训练

官方参考格式如下:
注意,如果从头开始训练,model = yolov8n.yaml ; 如果采用与训练的方式,model = yolov8n.pt

yolo task =detect mode=train model=yolov8n.pt data=mydata.yaml epochs=200

在这里插入图片描述
关于命令行,yolo 后可以跟哪些参数,可参考yolo/cfg/default.yaml
在这里插入图片描述
在这里插入图片描述

6. predict

在这里插入图片描述

参考

https://github.com/ultralytics/ultralytics
https://docs.ultralytics.com/usage/cli/#val

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/687724.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】ubuntu20.04安装ansys2023r1教程--超详细

一、安装包及其和谐文件 双击挂载 二、在ubuntu上安装依赖项 执行命令sudo apt install build-essential xterm libmotif-dev libxtst-dev libxt-dev libzip-dev libxmu-dev tcl tk lsb csh xfonts-75dpi xfonts-100dpi wine 弹出一个提示,需要去下载一个171MB的压…

Simulink 中基于 FPGA 的波束成形:算法设计(附源码)

一、前言 本示例显示了在 Simulink中开发适用于在硬件(如现场可编程门阵列 (FPGA))上实现的波束成形器的工作流程的前半部分。它还演示如何将实现模型的结果与行为模型的结果进行比较。 示例 Simulink 中基于 FPGA 的波束成形&…

shell 数组 ${array[@]} ${array[*]}的使用及区别

数组定义 shell中用括号来表示数组,数组元素间使用空格隔开。 例如: a(1 2 3 4) 表示a数组且有元素为1,2,3,4 也可单个元素逐步来赋值 b[1]"a" b[2]"b" b[3]"c" echo ${b[]} # a b c 关联数组 定义关联数组&#xf…

论文翻译:Segment Anything

论文地址:https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresearch/segment-anything 数据集地址:https://ai.facebook.com/datasets/segment-anything/ “Segment Anything"项目旨在通过引入新的任务、数据集…

决定AI大模型胜负的关键:解读数据在未来竞争中的角色

随着人工智能的迅猛发展,高质量数据的重要性已愈发明显。以大型语言模型为例,近年来的飞跃式进展在很大程度上依赖于高质量和丰富的训练数据集。相比于GPT-2,GPT-3在模型架构上的改变微乎其微,更大的精力是投入到了收集更大、更高…

声卡设备无法正常工作或初始化的原因和解决方法

先来一个小科普,声卡设备是电脑中负责处理音频信号的硬件部件,它需要与相应的声卡驱动程序配合使用,才能让电脑发出或录制声音。 不过,自带声卡的设备或是自行匹配的声卡设备,也经常出现声卡设备无法正常工作或初始化…

通过Jenkins实现Unity多平台自动打包以及相关问题解决

简介 通过本文可以了解到如何在windows和mac上部署Jenkins。并且通过Jenkins实现Unity在IOS,安卓和PC等多平台自动打包的功能,并且可以将打包结果通过飞书机器人同步到飞书群内。优化工作流,提高团队的开发效率。文末记录了实际使用Jenkins时遇到的各种问…

Leetcode44 通配符匹配

给你一个输入字符串 (s) 和一个字符模式 (p) ,请你实现一个支持 ? 和 * 匹配规则的通配符匹配: ? 可以匹配任何单个字符。 * 可以匹配任意字符序列(包括空字符序列)。 判定匹配成功的充要条件是:字符模式必须能够 完…

真心靠谱 Ubuntu18.04 换源 国内阿里云私服

本篇 blog 真心靠谱 1、备份原来的默认源 cp /etc/apt/sources.list{,.bak} 2、换阿里云的源(需要稍作修改) 直接使用阿里云的会报错 https://developer.aliyun.com/mirror/ubuntu 以上报错:是https证书问题,网上有人说安装证…

基于改进ISODATA算法的负荷场景曲线聚类MATLAB程序

参考文献: 基于机器学习的短期电力负荷预测和负荷曲线聚类研究_张辰睿(硕士论文) 参考其第三章 主要内容: 主要包含四种聚类算法,K-means聚类、ISODATA聚类、L-ISODATA聚类及K-L-ISODATA聚类,并且包含了…

JSch登录sftp时发现需要Kerberos身份验证

本问记录使用JSch登录sftps时遇到的Kerberos验证问题并记录了解决方法 项目场景: 项目开发中使用了SFTP,debug调试程序时发现了每次都需要手动输入 Kerberos的口令信息。这就很奇怪了难道每次连接SFTP时候都需要手动输入吗? 日志如下&#x…

RPC核心原理详解

什么是RPC? RPC的全称是Remote Procedure Call,即远程过程调用。简单解读字面上的意思,远程肯定是指要跨机器而非本机,所以需要用到网络编程才能实现,但是不是只要通过网络通信访问到另一台机器的应用程序&#xff0c…

基于Dubbo分布式学校信息管理系统设计与实现

一、引言 1.1 课题背景 随着时代的发展与进步,计算机网络也随之日益完善,渐渐覆盖了我们生活的各个方面。在信息化和数字化的时代背景下,使用计算机管理学校信息来提升教育工作的质量和效率,是大势所趋,所以近年来,随着网络技术的不断发展,使用信息管理系统的学校越来…

云原生时代数据治理的变革与创新

随着数字化进程的深入,企业对数据的依赖日益加深,数据资源的重要性愈发凸显。如何管好、用好数据,做好数据治理工作,发挥数据资源价值,成为企业提质增效过程中的重要议题。 在本次直播中,我们介绍了数据治…

leetcode:191. 位1的个数

难度:简单 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 1 的个数(也被称为汉明重量)。 提示: 请注意,在某些语言(…

qt 最小文件系统 交叉编译qt源码

busybox qt源码下载后,需要交叉编译,在开发板上生成相应的库,才能在开发板上使用 我用qt制作了一个计时器,有相应的按钮功能。在windows上我大概知道鼠标点击按钮能够触发相应事件。把该程序移植到linux开发板上,开发…

Qt QSqlTableModel详解

背景知识: Qt SQL的API分为不同层: 驱动层 驱动层 对于QT是基于C来实现的框架,该层主要包括QSqlDriver、QSqlDriverCreator、QSqlDriverCreatorbase、QSqlDriverPlugin and QSqlResult。这一层提供了特定数据库和SQL API层之间的底层桥梁…

AutoSAR系列讲解(入门篇)3.2-RTE对Runnables的运行支撑

目录 一、作为运行环境的主要功能点 二、Runnables的触发条件 一、作为运行环境的主要功能点 通过RTE给runnable提供触发事件。 之前说过了runnable是可以被触发的,就是需要通过RTE来实现这个触发和调用runnable,具体在下面讲解 通过RTE给runnable提供…

STM32外设系列—DHT11

文章标题 一、DHT11简介二、数据手册分析2.1 接口说明2.2 串行通信说明2.2.1 单总线通信2.2.2 单总线传输数据位定义2.2.3 时序图 三、DHT11程序设计3.1 初始化GPIO3.2 发送起始信号3.3 接收一个字节数据3.4 接收温湿度信息并校准 四、总结 一、DHT11简介 DHT11是一款常用的数…

Qt生成安卓工程运行闪退分析

提示找不到库 jin目录下库是存在的 提示下列库没有找到 libopencv_java4.so libtiff.so libboost_filesystem.so.1.71.0 libboost_chrono.so.1.71.0 libboost_regex.so.1.71.0 导致无法加载符号 最终导致应用无法启动,而退出 重新编译为静态库,并以静态库方式链…