PaddleSeg2.8训练验证时报错[Hint: Expected axis >= -rank && axis < rank == true, but received axis >= -rank && axis < rank:0 != true:1.]

1. 报错问题

  ValueError: (InvalidArgument) The axis is expected to be in range of [0, 0), but got 0
  [Hint: Expected axis >= -rank && axis < rank == true, but received axis >= -rank && axis < rank:0 != true:1.]

2.解决办法

  上述报错问题是在使用PaddleSeg-release2.8版本使用deeplabv3p模型训练图片做分割时遇到的。训练过程中一切正常,等到evaluate验证时就报错了。解决办法如下:

  看一下你报错的代码是哪行?我的是paddleseg\utils\metrics.py中的

  pred_area.append(paddle.sum(paddle.cast(pred_i, "int64")))
  label_area.append(paddle.sum(paddle.cast(label_i, "int64")))
  intersect_area.append(paddle.sum(paddle.cast(intersect_i, "int64")))

  这些行报错了,根据报错内容,可以使用unsqueeze将结果提升一个维度,修改如下:

  pred_area.append(paddle.sum(paddle.cast(pred_i, "int64")).unsqueeze(0))
  label_area.append(paddle.sum(paddle.cast(label_i, "int64")).unsqueeze(0))
  intersect_area.append(paddle.sum(paddle.cast(intersect_i, "int64")).unsqueeze(0))

  再次运行命令训练:

python tools/train.py --config E:\pythonWorksapce\PaddleSeg-release-2.8\configs\deeplabv3p_resnet101_os8_cityscapes_769x769_80k_wx.yml --do_eval --use_vdl --save_interval 500 --save_dir output0425

  直到训练完都是正常不报错。

  训练可视化使用visualdl --logdir output0425

  据说使用源码安装也可以解决报错问题,具体没有试过。

posted @   wancy  阅读(329)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
点击右上角即可分享
微信分享提示