from torchvision import models,transforms
import torch
from PIL import Image
from torch import nn
preprocess_transform = transforms.Compose([
transforms.Resize((900, 600)),
transforms.ToTensor()
])
dev = torch.device("cuda")
def load_image(img_path):
image = Image.open(img_path).convert('RGB')
return preprocess_transform(image).unsqueeze(0).to(dev)
model = models.vgg19(pretrained=True)
model = model.to(dev)
print(model)
img_path = 'img/building.png'
image = load_image(img_path) # (1,3,600,900)
print(image.shape)
# outputs = model(image)
x = image
layers_outputs = []
for l in model.features:
x = l(x)
if isinstance(l, nn.Conv2d):
layers_outputs.append(x)
print(layers_outputs) # 想要哪一层拿哪一层
得到VGG19某个卷积层的输出结果
最新推荐文章于 2024-08-23 08:01:08 发布