上篇内容:yolo图像识别教程 - 以原神人物识别为例(4)
本篇主要是测试yolov8是否安装成功,以及开始训练
(一)预测
测试用图片
狗
测试代码
model = YOLO("yolov8m.pt")
res = model.predict(
['test_img/dog.jpg'], save=True, device=0,
conf=0.5
)
for i in res:
print("-----------")
print(i.boxes)
print("-----------")
print(i.cuda())
下面先简单介绍一下参数,后续实际使用会一一介绍。
source:['test_img/dog.jpg']代表图片路径,yoloV8官方支持视频、图片、url等多种形式。
save 是否保存,即是否保存至runs/predict路径下
device使用的设备,cuda或者0,1,2,3等cuda设备编号,或是cpu
conf:置信值,低于该置信值的不显示
在runs/detect/predict下的结果
(二)训练教程
yoloV8的训练非常简单,在完成图像标注后,编制yaml文件即可,例如以下为ys.yaml文件
path:xxxx #根路径
train: images/train
val: images/val
# 类型名
names:
0: keqing
1: ganyu
(一)yolo文件格式
首先需要介绍yolo的文件组织格式,这是固定格式,必须遵守。
我们的数据集分为两个文件夹,分别是imgaes、labels,用来存储图片与标签。images与labels的共同上级目录,为根目录
在images与labels下,分别组织train训练数据、val验证数据、test测试数据等。本次仅组织train与val数据。images下存储图片,labels下存储标签
即文件组织格式为
- 根目录
- images
- train
- val
- labels
- train
- val
- images
(二)yaml文件
在yaml文件中,输入相应路径即可。其中输入的路径为images的路径
在类型中,输入需要训练的分类。这里建议在数据集不大(1个全新的类型,一般最少需要1000张左右的图片)的情况下,最多训练1-2类。否则效果会非常差。