当前位置:   article > 正文

tt100k数据集跑yolov5s模型时,所遇到的问题记录_filenotfounderror: [errno 2] no such file or direc

filenotfounderror: [errno 2] no such file or directory: 'yolov5s.pt

错误1:  FileNotFoundError: [Errno 2] No such file or directory: 'yolov5s.pt'

解决:离谱,重新运行就没了这个错误,开始报下一个错误。意思是找不到权重文件,但明明weights目录下有这个pt文件。

错误2:   AttributeError: Can't get attribute 'SPPF' on <module 'models.common' from '

解决:网上查说是缺少一个代码段,在models/common.py里

 代码贴在下面,加到相应位置就可以。

  1. class SPPF(nn.Module):
  2. def __init__(self, c1, c2, k=5):
  3. super().__init__()
  4. c_ = c1 // 2
  5. self.cv1 = Conv(c1, c_, 1, 1)
  6. self.cv2 = Conv(c_ * 4, c2, 1, 1)
  7. self.m = nn.MaxPool2d(kernel_size=k, stride=1, padding=k // 2)
  8. def forward(self, x):
  9. x = self.cv1(x)
  10. with warnings.catch_warnings():
  11. warnings.simplefilter('ignore')
  12. y1 = self.m(x)
  13. y2 = self.m(y1)
  14. return self.cv2(torch.cat([x, y1, y2, self.m(y2)], 1))

网上有说这个方法解决不了,其他人的方法如下图

错误3:    RuntimeError: Given groups=1, weight of size [512, 1024, 1, 1], expected input[1, 512, 8, 8] to have

解决:默认的模型配置文件yaml路径没有指定。 添加路径即可。

错误4:   Exception: train: Error loading data from ../coco128/images/train2017/: train: ..\coco128\images\train2017 does not exist

解决:是coco128数据集的位置有问题,我的coco数据集放在了项目目录下,但是实际应该放在项目目录的平行目录中

同时 coco128.yaml文件中的路径也需要设置正确,一个“.”表示上级目录,调整之前是上上级目录

 错误5:TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主

解决:离谱,好像是网络问题。

错误6: RuntimeError: result type Float can‘t be cast to the desired output type long int

解决:通过百度搜索,看到别人解决方案,

1.打开你的【utils】文件下的【loss.py】

2.按【Ctrl】+【F】打开搜索功能,输入【for i in range(self.nl)】找到下面的一行内容:

(上面的代码在【loss.py】的后半部分)

将下面的代码替换掉上图中的红圈部分:

 anchors, shape = self.anchors[i], p[i].shape 

 3.按【Ctrl】+【F】打开搜索功能,输入【indices.append】找到下面的一行内容: 

上面的代码在【loss.py】的最后部分,具体位置在上一处搜索位置的下面10行左右)

 将下面的代码替换掉上图中的红圈部分:

indices.append((b, a, gj.clamp_(0, shape[2] - 1), gi.clamp_(0, shape[3] - 1)))  # image, anchor, grid

 之后就可以了。

看别人的博客说如果还不行

调试detect文件测试时遇到的问题:

1.问题如下以及网上搜到的解决方法:

解决方案来自:一步真实解决AttributeError: ‘Upsample‘ object has no attribute ‘recompute_scale_factor‘_蓝胖胖▸的博客-CSDN博客

2.另一个问题:

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

解决方法是,yolov5s.pt默认下载的6.1,而模型是5.0,所以去下载5.0的权重文件就行。

解决方法来自:【解决问题】RuntimeError: The size of tensor a (80) must match the size of tensor b (56) at non-singleton_王大队长的博客-CSDN博客

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/818175
推荐阅读
相关标签
  

闽ICP备14008679号