【YOLOv7热力图可视化】参考链接非常棒,此博客用于记录一些细节(如果遇到报错:ValueError: too many values to unpack (expected 2))

目录

  • 参考链接
  • 细节
    • 1. 直接跟着链接改完,发现报错ValueError: not enough values to unpack (expected 3, got 2)
    • 2. 会有检测框,去掉的方法
    • 3. 改进之后的模型,应该注意输出层的位置
    • 4. 遇到报错 ValueError: too many values to unpack (expected 2)

参考链接

  • 【YOLOv7】结合GradCAM热力图可视化
  • 关于YOLOv5的热力图可参考这个链接:【YOLOv5】结合GradCAM热力图可视化

细节

1. 直接跟着链接改完,发现报错ValueError: not enough values to unpack (expected 3, got 2)

  • 原因:修改部分1添加的四条语句,不应该在Detect类中的forward函数中操作,而是应该在IDetect类中的fuseforward函数中操作
    【YOLOv7热力图可视化】参考链接非常棒,此博客用于记录一些细节(如果遇到报错:ValueError: too many values to unpack (expected 2))_第1张图片

2. 会有检测框,去掉的方法

【YOLOv7热力图可视化】参考链接非常棒,此博客用于记录一些细节(如果遇到报错:ValueError: too many values to unpack (expected 2))_第2张图片
【YOLOv7热力图可视化】参考链接非常棒,此博客用于记录一些细节(如果遇到报错:ValueError: too many values to unpack (expected 2))_第3张图片

3. 改进之后的模型,应该注意输出层的位置

【YOLOv7热力图可视化】参考链接非常棒,此博客用于记录一些细节(如果遇到报错:ValueError: too many values to unpack (expected 2))_第4张图片

4. 遇到报错 ValueError: too many values to unpack (expected 2)

在这里插入图片描述

解决方法:还原models/yolo.py里面的out值,因为为了制作热力图,对IDetectfuseforward函数里面最后面的out进行了更改。因此做以下操作即可:

【YOLOv7热力图可视化】参考链接非常棒,此博客用于记录一些细节(如果遇到报错:ValueError: too many values to unpack (expected 2))_第5张图片

你可能感兴趣的:(论文写作,YOLO)