YOLO系列算法遇到的错误

在用YOLOv7训练自己的数据过程中,遇到了一点问题,错误如下:

Traceback (most recent call last):
  File "train.py", line 615, in
    train(hyp, opt, device, tb_writer)
  File "train.py", line 250, in train
    mlc = np.concatenate(dataset.labels, 0)[:, 0].max()  # max label class
  File "D:\ProgramFile\anaconda\envs\yoloV7Env\lib\site-packages\numpy\core\_method
s.py", line 40, in _amax
    return umr_maximum(a, axis, None, out, keepdims, initial, where)
ValueError: zero-size array to reduction operation maximum which has no identity

在网上找了许多方法,都是标签归一化,或者标签类别错了。没有解决我的问题。

我的数据组织如下所示:

YOLO系列算法遇到的错误_第1张图片

data.yaml的配置如下,其中只有一个类别。没错。

YOLO系列算法遇到的错误_第2张图片 

我的标签数据如下:

YOLO系列算法遇到的错误_第3张图片

到这里都没错。

不知道问题出现在哪了。

最后发现我的训练数据中只有空标签数据,没有带标签的数据。出现类别不匹配的问题。改完之后就好了。 

YOLO系列算法遇到的错误_第4张图片

重要的事说三遍:注意标签、标签、标签

检查训练数据和验证数据是否包含所有标签。

检查标签的个数和标签名是否相同。

如果用了模型结构的配置文件,检查里面标签个数改没改。

 

 

你可能感兴趣的:(遇到的错误,算法,python)