当前位置:   article > 正文

YOLOv5改进之添加注意力机制_如何添加注意力机制

如何添加注意力机制

本文主要给大家讲解一下,如何在yolov5中添加注意力机制,

这里提供SE通道注意力的改进方法,其他注意力的添加方法,大同小异

首先找到SE注意力机制的pytorch代码

  1. class SELayer(nn.Module):
  2. def __init__(self, c1, r=16):
  3. super(SELayer, self).__init__()
  4. self.avgpool = nn.AdaptiveAvgPool2d(1)
  5. self.l1 = nn.Linear(c1, c1 // r, bias=False)
  6. self.relu = nn.ReLU(inplace=True)
  7. self.l2 = nn.Linear(c1 // r, c1, bias=False)
  8. self.sig = nn.Sigmoid()
  9. def forward(self, x):
  10. b, c, _, _ = x.size()
  11. y = self.avgpool(x).view(b, c)
  12. y = self.l1(y)
  13. y = self.relu(y)
  14. y = self.l2(y)
  15. y = self.sig(y)
  16. y = y.view(b, c, 1, 1)
  17. return x * y.expand_as(x)

直接把SE注意力机制的程序,复制到models文件夹下面的common.py文件中

然后找到yolo.py,在这个文件中找到下面这一行

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

闽ICP备14008679号