python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Pytorch抽取网络层的Feature Map(Vgg)

Pytorch抽取网络层的Feature Map(Vgg)实例

作者:seeney

今天小编就为大家分享一篇Pytorch抽取网络层的Feature Map(Vgg)实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

这边我是需要得到图片在Vgg的5个block里relu后的Feature Map (其余网络只需要替换就可以了)

索引可以这样获得

vgg = models.vgg19(pretrained=True).features.eval()
print (vgg)

Feature Map可利用下面的class

class Vgg16(nn.Module):
  def __init__(self, pretrained=True):
    super(Vgg16, self).__init__()
    self.net = models.vgg16(pretrained).features.eval()
 
  def forward(self, x):
    out = []
    for i in range(len(self.net)):
      x = self.net[i](x)
      if i in [3, 8, 15, 22, 29]:
        # print(self.net[i])
        out.append(x
    return out

以上这篇Pytorch抽取网络层的Feature Map(Vgg)实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文