超级详细的YOLOV8教程

举报
yd_247177890 发表于 2025/03/08 22:29:03 2025/03/08
378 0 0
【摘要】 YOLOV8介绍YOLOV8是较强的计算机视觉技术之一,我将带你手把手使用YOLOV8对自定义数据集进行图像检测和分类。各位小伙伴想要博客相关资料的话关注公众号:chuanyeTry即可领取相关资料!1. 数据标记首先第一步为数据标记,有两种方式。1.1 第一种为在网站上下载链接:图像数据集https://storage.googleapis.com/openimages/web/index...

YOLOV8介绍

YOLOV8是较强的计算机视觉技术之一,我将带你手把手使用YOLOV8对自定义数据集进行图像检测和分类。

在这里插入图片描述

各位小伙伴想要博客相关资料的话关注公众号:chuanyeTry即可领取相关资料!

1. 数据标记

首先第一步为数据标记,有两种方式。

1.1 第一种为在网站上下载

链接:像数据集

https://storage.googleapis.com/openimages/web/index.html

打开网站点击探索在这里插入图片描述

选择数据集的类型为检测,而后在class中选择例如ball类,则在下面出现各种关于ball类的数据集

在这里插入图片描述

果你选择像这种开放式数据集,在这个网站下载即可。

1.2 第二种为在CVAT上自定义数据

链接:CVAT

https://www. cvat.ai/

CVAT是较为常用的数据集编辑网站,我们可以将自己手机电脑里的数放到CVAT上进行处理,导出时可获得带有标记数据的数据集,但是这样需要很多时间来标记数据集

在这里插入图片描述

首先进行注册和登录,登录完成后,选择Projects新建项目

在这里插入图片描述

输入数据集的名字,比如road,点击Add label添加标签

在这里插入图片描述

在这里我们输入road_1,road_2两个标签,点击continue进行保存,输入标签后点击“Continue“,最后点”Submit & Open“提交并打开,请注意,如果你的标签不止一个,记得在创建项目时把它们都加入进去。

在这里插入图片描述

点击submit&open择保存项目数据集

在这里插入图片描述

成之后可以看到数据集的名称,以及标记的名称和数量

在这里插入图片描述

我们点右下角的+号来添加图片,在新的跳转页面中,添加新的“task“,命名,导入需要注释的图片,最”submit & open“

在这里插入图片描述

输入图片数据集的名称,点击Click or drag files来添加文件,此时,如果你的图片基数非常大,并不需要全部导入,选择二十到三十张进行注释即可。

在这里插入图片描述

我在这里添加一张道路数据图片,下面我们进行标记数据集,点击open再点击图片打开进行标记

在这里插入图片描述

创建完成后,点击工作编号即可打开所有图像。

打开图片到以下页面

在这里插入图片描述

点击左边图标,我们刚刚创建了两个标签,我们选择road_1标签,点击shape即可标注

在这里插入图片描述

我们将road_1数据在图中进行标记,再选中road_2,将road_2部分在图中标出

在这里插入图片描述

如果你想要删除一个注释,可以在右侧对应注释点击remove

注释带有主观性,所以会有差异。

注释的同时注意“ctrl+s”保存。下面将标注好的数据进行格式化

在这里插入图片描述

全部注释完成后,点击头部菜单栏的“Tasks”,导出注释好的数据。

在这里插入图片描述

数据可以导出为多种不同格式,此处我们选择为YoLo 1.1,点击ok

在这里插入图片描述

载完成的压缩包中的文件夹内保存着刚刚注释完的图片

我们打开文件可以看到我们的标注数据,这些数据就是刚刚我们在图片中标注数据的YOLO格式化。

在这里插入图片描述

其中,我们在这个图片上标注了四个地方,所以有四行数据,第一行的0表示检测的第一个标签,第二三个数据是标记数据的中心位置坐标,最后两个数据表示标记框的宽高。

2. 制作数据集

下面我们来创建数据集并说明自定义数据集的格式

创建两个文件夹,一个叫做images,另一个叫做labels

在这里插入图片描述

images文件夹中创建train文件夹,在train文件夹中放入要检测的图像。

在这里插入图片描述

labels文件夹中创建train文件夹,在train文件夹中放入检测图像的标注数据。

在这里插入图片描述

这里的检测图像和标注数据一定要完全对应,检测的图像文件名也是标注数据的文件名。

这样数据集文件夹就创建好了

3. 部署YOLOV8的代码

部署方式有两种,远程部署和本地部署。

3.1 远程部署

为了不消耗电脑的空间以及忽略电脑带来的差异,我将使用远程控制软件来远程部署安装环境以及推理

和验证我们自己的数据集。

远程控制软件fellshell:远程控制软件finalshell + AutoDL 算力云

https://blog.csdn.net/hellow_ xqs/article/details/135251072

3.1.1 项目下载

链接:YOLOV8

https://github.com/ultra lytics/ultralytics

在这里插入图片描述

3.1.2 修改代码

将项目下载到本地之后,用vscode打开项目代码包

在这里插入图片描述

复制在官网的代码

在这里插入图片描述

在代码中新建文件夹data,将在上面的imageslabels文件夹复制到文件夹中

在这里插入图片描述

3.1.2.1 训练模型

在一级目录中新建文件main.py,将以下代码复制到文件中

from ultralytics import YOLO

# Load a model

model = YOLO("yolov8n.yaml") # build a new model from scratch

# Use the model

model.train(data="config.yaml", epochs=3) # train the model

在这里插入图片描述

在一级目录中新建文件config.yaml,将以下代码复制到文件中

path: /root/autodl-tmp/ultralytics-main/data//注意地址train: images/train//训练文件夹的图片地址

val: images/train//训练文件夹的图片地址

names:

0: 横向裂缝

1: 纵向裂缝

2: 块状裂缝

3: 龟裂

4: 坑槽

5: 修补网状裂缝

6: 修补裂缝

7: 修补坑槽

3.1.2.1 验证模型

在一级目录中新建文件verify.py,将以下代码复制到文件中

from ultralytics import YOLO

# Load a model

model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training) model.info()

results = model("/root/autodl-tmp/ultralytics/ultralytics/assets/bus.jpg",save = True,save_txt = True) # predict on an image

print(results)

在这里插入图片描述

3.2 本地部署

3.2.1 YOLOV8项目部署

github链接:https://github.com/ultralytics/ultralytics

git拉取项目:git clone https://github.com/ultralytics/ultralytics.git

3.2.2 cudacudnnPytorch等环境安装与卸载

首先查看pytorch支持的最高版本:https://pytorch.org/

然后查看N卡系统支持最高的版本,然后权衡下载支持最高版本的CUDAcuDNN CUDA工具包

https://developer.nvidia.cn/zh-cn/cuda-toolkit cuDNN https://developer.nvidia.com/rdp/cu dnn-download 配置对应的环境变量

3.2.3 安装项目依赖

在上级目录下安装

pip install ultralytics

pip install yolo

卸载项目依赖为你安装CPU版本pytorch,打开pytorch官网,使用对应命令下载GPU版本

3.2.4 训练与推理使用指令

3.2.4.1 文件

yolov8.yaml文件为权重样本文件

位置:ultralytics-main\ultralytics-main\build\lib\ultralytics\cfg\models\v8\yolov8.yaml

test_python.pyyolov8.yaml出文件

位置:ultralytics-main\ultralytics-main\tests\test_python.py

defaultYOLOv8的训练配置文件

位置:ultralytics-main\ultralytics-main\ultralytics\cfg\default.yaml

3.2.4.2 指令

task=detect,表示使用YOLO进行目标检测任务

推理:

mode=predict设置为推理model=yolov8n.pt为模型文件conf=0.25 置信度

source='ultralytics/assets/bus.jpg' 训练样本
yolo task=detect mode=predict model=存放自己最好的训练模型地址 conf=0.25 source='ultralytics/assets/bus.jpg'

yolo task=detect mode=predict model=yolov8n.pt conf=0.25 source='ultralytics/assets/bus.jpg'

yolo task=detect mode=predict model=/root/autodl-tmp/ultralytics- main/ultralytics-main/runs/detect/train8/weights/best.pt conf=0.25 source='/root/autodl-tmp/ultralytics-main/ultralytics- main/ultralytics/assets/images/'

训练:

mode=train设置为训练model=yolov8n.pt为模型文件

epochs=100 100imgsz=640 图片为640尺寸resume=True 为断训续训

yolo task=detect mode=train model=yolov8n.pt data=config.yaml epochs=100

yolo task=detect mode=train model=yolov8s.pt data={dataset.location}/data.yaml epochs=100 imgsz=640 resume=True workers=2

断续训:

runs/detect/train12/weights/last.pt为上次续训地址

yolo task=detect mode=train model=runs/detect/train12/weights/last.pt epochs=100 imgsz=640 resume=True workers=2

4. 出现的错误:

1.出现 Usage: yolo OPTIONS COMMAND ARGS... Try 'yolo -h' for help.

Error: No such command 'task=detect'.

解决办法: python setup.py install 然后重新运行代码即可。

2.

出现Downloading https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt to 'yolov8n.pt'...

Traceback (most recent call last):

File "C:\minconda\envs\xqs2.0\lib\site-packages\urllib3\connectionpool.py", line 711, in urlopen

self._prepare_proxy(conn)

File "C:\minconda\envs\xqs2.0\lib\site-packages\urllib3\connectionpool.py", line 1007, in

_prepare_proxy

解决办法:把自己梯子关掉试试

3.

出现FileNotFoundError: ultralytics-main/ultralytics/assets/zidane.jpg does not exist

解决办法:yolo task=detect mode=predict model=yolov8n.pt conf=0.25 source='ultralytics/assets/zidane.jpg'source改为绝对路径或者相对路径。

5. 参考

Ultralytics YOLOv8 Docs(官方的说明文档)

https://docs.ultralytics.com/ultralytics/README.zh-CN.md at main · ultralytics/ultralytics ·

GitHub(官方的中文说明页)https://github.com/ultralytics/ultralytics/blob/main/README.zh-CN.md https://stitch.blog.csdn.net/article/details/112329058 cuda cudnn 库的卸载与安装 - 知乎http s://zhuanlan.zhihu.com/p/102966512

Pytorch 环境详细安装教程【 Win10+CUDA 升级 11.6+cudNN+Anaconda3 虚拟环境 +pycharm h ttp s://blog.csdn.net/weixin_44842318/article /details/127487476/

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。