报错位置在 models/assigner/yolo_anchor_assigner.py line367。
indices.append((b, a, gj.clamp_(0, gain[3] - 1), gi.clamp_(0, gain[2] - 1)))
这个报错是由于在将gj和gi的值限制在了[0, gain[3] - 1]和[0, gain[2] - 1]的范围内后,产生了浮点数类型的值。在调用append()函数时,将浮点数类型的值传递给了indices,而indices预期的值类型是long int
修改为:
indices.append((b, a, gj.clamp(0, int(gain[3] - 1)), gi.clamp(0, int(gain[2] - 1))))