训练数据集
onnx模型训练及导出
设置参数
双击运行AI TrainKit for Detection1.1.exe界面如下图所示:

Training File Path:即预训练模型文件和训练之后生成的模型文件存放路径,默认为:C:\ProgramData\VIRobotics\Train\yolov8,大家可以根据需要自己选择,需要注意:路径不要包含中文或空格;
yaml data: 数据文件的路径。该参数指定了数据集文件的位置,例如 data.yaml。数据集文件包含了训练和验证所需的图像、标签。演示中选择的是标注生成的xxx.yaml;

epoch:训练轮数。默认为20;这个参数确定了模型将会被训练多少次,每一轮都遍历整个训练数据集。设置数值越大,训练时间越久,模型精度越高,我们可以设置大一些比如100来找到模型的更佳性能;
workers:默认为0,所有数据加载在主进程中完成(通常最稳定,但速度慢),workers>0:启用多个子进程同时加载batch数据,可以加快数据预处理,提升GPU的利用率,一般经验:workers≈内存/4,例如,16G内存可以尝试workers=4 ,可以根据实际内存占用来适当调整workers的大小,workers并不会影响模型训练的结果,但会显著影响训练速度;
model: 预训练模型:默认为yolov8n.pt,根据数据集更换训练模型,如过是seg标注数据集,则预训练模型例如yolov8n-seg、yolov8s-seg、yolov8m-seg、yolov8l-seg、yolov8x-seg。如果为Obb标注的数据集,则预训练模型例如yolov8n-Obb、yolov8s-Obb、yolov8m-Obb、yolov8l-Obb、yolov8x-Obb,n、s、m、l、x预训练权重越来越大。预训练模型权重越大,训练出来的模型精度相对来说越高,但训练和检测的速度也会越慢。

img:输入图像的尺寸,默认为640。这个参数确定了输入图像的大小。可以指定一个整数值表示图像的边长,建议为32的整数倍。(设置策略:如果数据集中存在大量小对象,增大输入图像的尺寸imgsz可以使得这些小对象从高分辨率中受益,更好的被检测出)
batch: 每个批次中的图像数量。在训练过程中,数据被分成多个批次进行处理,每个批次包含一定数量的图像。这个参数确定了每个批次中包含的图像数量,默认为8。一般认为batch越大越好。batch越大选择的这个batch中的图片更有可能代表整个数据集的分布,从而帮助模型学习。但batch越大占用的显卡显存空间越多,如果训练过程中出现GPU显存溢出的报错或者内存不足,可将该值设置的小一点,GPU对2的幂次的batch可以发挥更佳的性能;
若希望训练之后直接生成onnx模型,勾选“训练后生成onnx”,训练结束后会自动弹出生成的onnx模型,该格式的模型可以直接用于仪酷AI系列工具包的推理部署;

开始训练
所有参数配置好了之后,点击Train;

弹出的框中点击“是的”开始进行训练;

训练过程会弹出cmd黑框,请不要关闭,训练完毕会自动关闭,首次训练会自动下载一些必要的文件以及预训练模型,这将会耗费一点时间;
如下图所示训练了20个epoch,黄色进度条满格,则表示整个数据集已经训练完毕,训练生成的pt模型输出在C:\ProgramData\VIRobotics\Train\yolov8\runs\segment\train\weights文件夹中;
【注:多次训练时,输出路径的train会自动变为train2、train3 … 以此类推。】
如果对本次训练的结果不满意,可以用上述的best.pt 或last.pt 作为预训练模型再次训练,而不必用yolov8n-seg.pt 从头开始训练,操作方法如下:将best.pt复制到C:\ProgramData\VIRobotics\Train\yolov8文件夹下,修改model控件中的yolov8n-seg为best.pt,点击Train再次开始训练。
导出为onnx模型
onnx模型导出的两种方式:自动导出、手动导出
自动导出onnx模型
打开AI TrainKit for Detection1.1.exe,选择”Generate ONNX“生成模型界面;

若在训练之前,勾选了”Trained Model“训练模型,则在训练完成后会弹出生成训练模型的onnx及所在路径提示框;

点击OK,完成本次训练,可根据实际检测效果来判断是否要继续进行训练;

手动导出onnx模型
勾选”Trained Model“选择生成训练模型的onnx,勾选”Manually input pt“选择手动输入需要转换的pt模型;

导出需要转换的pt模型,点击”Generate“按钮生成onnx模型,生成的onnx模型与pt模型在同一路径下;


导出的onnx可以直接用于仪酷AI系列工具包的推理和部署;
新增断点训练功能
断点训练
在 YOLOv 系列模型训练过程中,常常会遇到训练中断(如断电、错误关闭、程序崩溃等),通过断点训练界面设置,可以从上次保存的权重文件继续训练,避免因重复计算而浪费算力资源和时间。
开始训练
打开AI TrainKit for Detection1.1.exe,选择ResumeTraining断点训练界面;

根据训练内容 ,选择断点类型,如detect、segment、obb;

点击“Check”,检查对应类型下的断点路径,如右侧列表为断点数据集开始训练的时间和断点模型路径;

勾选“Resume Training“, 复制想要从断点开始训练的模型路径到“Import Checkpoint Model”;

点击Train开始训练;

如图可以看到,从断点位置继续进行训练。

常见问题
如在标注或训练过程遇到问题,可查看故障排除
如果您遇到了无法解决的问题,请联系我们的支持团队寻求帮助。联系邮箱: support@virobotics.net