【小土堆】 AttributeError: Can‘t get attribute ‘SPPF‘ on <module ‘models.common‘ from ‘地址

学习小土堆YoloV5视频中遇到的三个报错

ERROR 1:AttributeError: Can’t get attribute ‘SPPF’ on <module ‘models.common’ from '地址

首先在 detect.py 文件中进行运行

产生了这个报错,我从其他博客里找到了解决办法,是在 common.py 文件中添加SPPF类

代码如下

class SPPF(nn.Module):
    # Spatial Pyramid Pooling - Fast (SPPF) layer for YOLOv5 by Glenn Jocher
    def __init__(self, c1, c2, k=5):  # equivalent to SPP(k=(5, 9, 13))
        super().__init__()
        c_ = c1 // 2  # hidden channels
        self.cv1 = Conv(c1, c_, 1, 1)
        self.cv2 = Conv(c_ * 4, c2, 1, 1)
        self.m = nn.MaxPool2d(kernel_size=k, stride=1, padding=k // 2)

    def forward(self, x):
        x = self.cv1(x)
        with warnings.catch_warnings():
            warnings.simplefilter('ignore')  # suppress torch 1.9.0 max_pool2d() warning
            y1 = self.m(x)
            y2 = self.m(y1)
            return self.cv2(torch.cat([x, y1, y2, self.m(y2)], 1))

warrings会标红,记得 import warrings

-----------------------------------------------------------分割线------------------------------------------------------------

ERROR2:AttributeError: ‘Upsample’ object has no attribute ‘recompute_scale_facto’

然后我回到 detect.py 文件再次运行,又报错了,这次是:

在这里插入图片描述

参考网上的解决方法,我用以下方法解决了:
step1 : 进到这里

在这里插入图片描述

step2:
在这里插入图片描述
括号里的删除

可能会有这个提示,还是顶着巨大的压力给删了
在这里插入图片描述

删除后如图:
在这里插入图片描述
刚运行了下报错了,记得“,”逗号也要删掉(我是傻子)

------------------------------------------------------分割线-----------------------------------------------------------------

ERROR3:RuntimeError: The size of tensor a (80) must match the size of tensor b (56) at non-singleton dimension 3

正当我美滋滋的以为问题解决了,我发现又又又报错了,这次的报错如下:

在这里插入图片描述

这个也是弹幕里提到的错误。

这个我猜可能是预训练权重yolov5s.pt]的问题,因为小土堆是5.0的工程,默认下载的是最新的模型,所以不匹配
所以我又去下载了一个,然后把 yolov5s.pt 给覆盖掉了,这个错误就消失了

附上下载链接:https://github.com/ultralytics/yolov5/releases/download/v5.0/yolov5s.pt

---------------------------------------------------------分割线------------------------------------------------------------
其实我写这篇文章这个错误解决还遇到了一个错误,好像是未能找到图片地址的一个错误,但是我在写这篇文章之前把路径改成全英文的了,这次没有报错,所以我猜那个报错就是路径中有中文名称的原因。

  • 32
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值