Traceback (most recent call last):
  File "F:/pycharm/pytorchtrain/Maskrcnn_Person/tv-training-code.py", line 244, in <module>
    main()
  File "F:/pycharm/pytorchtrain/Maskrcnn_Person/tv-training-code.py", line 226, in main
    evaluate(model, data_loader_test, device=device)
  File "F:\anaconda\envs\pytorch1.7-gpu\lib\site-packages\torch\autograd\grad_mode.py", line 15, in decorate_context
    return func(*args, **kwargs)
  File "F:\pycharm\pytorchtrain\Maskrcnn_Person\detection\engine.py", line 84, in evaluate
    for images, targets in metric_logger.log_every(data_loader, 100, header):
  File "F:\pycharm\pytorchtrain\Maskrcnn_Person\detection\utils.py", line 232, in log_every
    header, total_time_str, total_time / len(iterable)))
ZeroDivisionError: float division by zero

是因为

    # split the dataset in train and test set
    indices = torch.randperm(len(dataset)).tolist()
    dataset = torch.utils.data.Subset(dataset, indices[:80]) #训练集张数
    dataset_test = torch.utils.data.Subset(dataset_test, indices[80:])#测试集张数

加载数据集的时候,张数问题,这里定义的张数不能超过数据集的张数

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐