Bootstrap

YOLOv8 代码训练与中文字体配置教程(Linux、Windows通用)

前言

网上的yolov8教程大部分都是命令式训练,这里提供一个完整的代码式训练+中文配置

教程内容

提供yolov8的训练代码,以及中文字体文件及其配置方式

字体下载

 文泉驿正黑字体下载

训练代码

例子

from matplotlib import font_manager, pyplot as plt
from ultralytics import YOLO

fontPath="D:\\A01PythonProjects3123\\ultralytics-main\\wqy-zenhei\\wqy-zenhei.ttc" #字体路径
font = font_manager.FontProperties(fname=fontPath)
# 重新加载字体
font_manager.fontManager.ttflist = []
font_manager.fontManager.addfont(fontPath)
plt.rcParams['font.family'] = font.get_name()
# 加载YOLOv8模型(可以是预训练模型,也可以是新的模型)
model = YOLO("yolov8n.pt")

# 设置训练配置
train_config = {
    # 'data': '/home/uav/Python312Pros/ultralytics-main/MyTrain/MergedConfig.yaml',  # linux数据集路径
    'data': 'D:\\A01PythonProjects3123\\ultralytics-main\\MyTrain\\MergedConfig.yaml',  # windows数据集路径
    'epochs': 300,  # 训练轮数
    'batch': 8,  # 批量大小
    'imgsz': 640,  # 输入图像尺寸
    'workers': 16, #使用核心数
    'device': '0',  # 训练所使用的GPU设备,0表示第一块GPU
    'project': 'runs/train',  # 保存训练结果的文件夹
    'name': 'trainResult',  # 训练结果保存的文件夹名称
    'save_period': 1, # 每1个epoch保存一次模型
    'resume' : False #是否继续训练
}

# 开始训练
if __name__ == '__main__':
    model.train(**train_config)

使用步骤

1.将上方的字体下载下来,解压放到yolo根目录即可,如图标记的 wqy-zenhei.ttc 是主要使用的字体文件

QQ_1732692065542

2.根目录新建文件名为train.py,将上方代码加入进去,需要修改的是fontPath和train_config中的data,fontPath替换为自己字体的路径,也就是ttc文件,如图

QQ_1732692257721

3.直接运行train.py即可

关于字体

在tain.py中,关于字体最重要的是加载字体,若没有加载字体,即使字体文件路径正确也会报错找不到字体,报错信息为

findfont: Font family 'WenQuanYi Zen Hei' not found.

字体使用前后对比

在未设置中文字体前,生成的报告中字体全是空方块,如图

QQ_1732692581769

使用后结果如下

QQ_1732692708228

;