PVTv2 ——KeyError:‘RetinaNet:“pvt_v2_b1:\‘pretrained‘“‘

PVTv2 ——KeyError:‘RetinaNet:“pvt_v2_b1:‘pretrained’”’

#问题说明:以retinanet_pvt_v2_b1_fpn_1x_coco.py为例,测试时提示错误KeyError:'RetinaNet:“pvt_v2_b1:‘pretrained’”'

#解决方案:
将pvt_v2.py文件中class pvt_v2_b1(PyramidVisionTransformerV2)中super().__init__中的pretrained=kwargs[‘pretrained’]注释掉
即变成如下

@BACKBONES.register_module()
class pvt_v2_b1(PyramidVisionTransformerV2):
    def __init__(self, **kwargs):
        super(pvt_v2_b1, self).__init__(
            patch_size=4, embed_dims=[64, 128, 320, 512], num_heads=[1, 2, 5, 8], mlp_ratios=[8, 8, 4, 4],
            qkv_bias=True, norm_layer=partial(nn.LayerNorm, eps=1e-6), depths=[2, 2, 2, 2], sr_ratios=[8, 4, 2, 1],
            drop_rate=0.0, drop_path_rate=0.1,)# pretrained=kwargs['pretrained'])

版权声明:本文为CSDN博主「Elizabeth-sun」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sumeil/article/details/122372783

Elizabeth-sun

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

使用python+opencv+yolov3实现实时目标检测

调用笔记本自带摄像头实时捕获帧
调用笔记本自带摄像头,实现捕获摄像头帧。设置显示框名称为‘window’,并等待鼠标或键盘任意键按下。如果鼠标或键盘任意键没有按下,则继续捕获;若按下&#

U-Net训练自己的数据集

1:数据准备
我说使用的数据是labelme制作的。json文件保存的是对应图片中所有目标的边界点坐标。
但是UNet训练却使用的是原始图像及其对应的二值化掩膜。就像下面这样: 所以需要把labelme输出的