YOLOv8训练自定义数据集后,模型预测结果没有显示正确的标签,而是claa_0、class_1

目录


前言

根据YOLOv8的相关教程训练自定义数据集后,却发现图片的预测结果并没有显示正确的标签,而是class_0、class_1.....

对此,可以通过对YOLOv8模型预测后图片的绘制代码进行修改,以显示正确的标签类别。


一、准备自定义标签字典

假设自定义数据集的data.yaml如下:

nc: 3
name:
    0: "cat"
    1: "dog"
    2: "others"

根据标签类别的一一对应关系,自定义一个标签映射字典:

classes = {"class_0":"cat",
           "class_1":"dog",
           "class_2":"others"}

二、修改代码

1.找到plotting.py文件

在YOLOv8官方源码ultralytics文件夹下,进入yolo目录下,打开plotting.py文件。

定位到def box_label函数:

2.修改

参数label为模型预测的标签字符串,为了利用该函数的已知参数,以减少修改代码量,将参数label修改成label1:

再对自定义的标签字典进行键值对的查找、拼接,代码如下:

classes = {"class_0":"cat",
           "class_1":"dog",
           "class_2":"others"}
label = classes[label1[0:7]] + label1[7:]


总结

对于YOLOv8训练自定义数据集的模型,如果出现无法正确显示预测标签信息,可以通过预测后的图片绘制进行修正。

参考u蓝色精灵--yolov5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值