完整的模型验证套路

本文介绍了如何使用Python的PIL库读取图片,将其转换为灰度图和RGB格式,并使用PyTorch进行图像尺寸调整、张量化。接着演示了如何加载预训练模型进行验证,以及在GPU环境下运行的注意事项。最后提到CIFAR10数据集的简单应用和可能的优化策略。
摘要由CSDN通过智能技术生成

在这里插入图片描述

读取图片

from PIL import Image

img_path = "../Yennefer_of_Vengerberg.jpg"
image = Image.open(img_path)
print(image)

在这里插入图片描述

转换成灰度图(可选)

image = image.convert('L')
image.show()

在这里插入图片描述

转换成RGB格式

image = image.convert('RGB')

在这里插入图片描述
因为png格式是四个通道,除了‘RGB’三个通道外,还有一个透明度通道。
所以,我们调用image = image.convert(‘RGB’),保留其颜色通道。
当然,如果图片本来就是三个颜色通道,经过此操作,不变。
加上这一步后,可以适应png jpg各种格式的图片。

Resize&ToTensor

transform = torchvision.transforms.Compose([torchvision.transforms.Resize((32, 32)),
                                            torchvision.transforms.ToTensor()])
image = transform(image)

加载之前的模型,并加以验证

model = torch.load('../GPU/tudui_10.pth')  # GPU训练的
print(model)
image = torch.reshape(image, (1, 3, 32, 32))
if torch.cuda.is_available():
    image = image.cuda()
model.eval()
with torch.no_grad():
    output = model(image)
print(output)
print(output.argmax(1))

注意
1.如果之前是GPU上训练的模型,一定要将图片转成‘GPU’:image = image.cuda()
2.image = torch.reshape(image, (1, 3, 32, 32)) 不要忘了
3.with torch.no_grad(),可以加快验证速度

查看是哪类

在这里插入图片描述
在这里插入图片描述
没有人类别(叶奈法,巫师)所以换一张deer
在这里插入图片描述

ls = ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truch']
print('class:{}'.format(ls[output.argmax(1)]))

在这里插入图片描述
还挺准(CIFAR10只训练到到第十轮,model = torch.load(‘…/GPU/tudui_10.pth’))
MAYBACH 迈巴赫试试
在这里插入图片描述
在这里插入图片描述

如果失败:优化函数optim:用Adam,激活函数用relu加到卷积层后面,训练三十轮90%

pytorch系列,暂时完结了:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值