使用Ultralytics代码训练YOLOv5时类标签的排序规则是什么?
YOLOv5 dataset.yaml 标签名称排序规则
标签顺序不需要按字母排序,仅需遵循一个核心规则:和你标注数据集时分配的类别ID顺序完全一一对应,具体说明如下:
- YOLO系列的标注逻辑是每个类别对应一个从0开始递增的连续整数ID,训练和推理时,程序会直接用标注里的ID值索引
dataset.yaml中names列表的对应位置作为类名,排序错误会直接导致推理输出的类名不匹配。 - 举个实际示例:假设你标注数据集时,给类别「人」分配的ID是0,「车」分配的ID是1,「树」分配的ID是2,那么
names列表就需要写成names: ['人', '车', '树'],不能调整顺序。 - 如果你用LabelImg、LabelMe这类标注工具,工具预先配置的类别列表的顺序就是对应ID的顺序,直接把列表内容按原顺序复制到
names字段即可,不需要做额外排序调整。
内容的提问来源于stack exchange,提问作者Shreyas Vedpathak
相关产品推荐
相关产品推荐

