我是在使用预训练模型是碰到的该问题:
问题所在:加载的预训练模型是pth格式的,但Detectron2因为你加载了pkl格式的预训练模型。而pkl格式与pth格式的预训练模型不同在于:
pkl是weights['model']['roi_haed.mask_head.predictor.weight']格式的,
pth是weights['roi_haed.mask_head.predictor.weight']格式的。
使用最简单的方法是修改官方的库文件:
点击到checkpoint.py文件:
将:
修改为:
不在pop出model,而是直接使用。不用从numpy转换到torch了。因为pth本身就是torch保存的。
开始完美运行:
最后简单讲一下我的环境:Detectron2=0.3 python=3.7 torch=1.6