VGG16及VGG19预训练模型可以到本人上传资源去下载。
import torch
import torch.nn as nn
from torchvision import models
from torchvision import transforms, utils
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
from PIL import Image, ImageFilter, ImageChops
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
dtype = torch.float
def load_image(path):
image = Image.open(path)
plt.imshow(image)
plt.title("Image loaded successfully")
return image
normalise = transforms.Normalize(
mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225]
)
preprocess = transforms.Compose([
transforms.Resize((224,224)),
transforms.ToTensor(),
normalise
])
def deprocess(image):
images=image * torch.tensor([0.229, 0.224, 0.225],device=device) + torch.tensor([0.485, 0.456, 0.406],device=device)
return images
#加载已经放到本地的VGG19载预训练模型,可与下面这边