完整的模型验证套路

在这里插入图片描述

读取图片

from PIL import Imageimg_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系列,暂时完结了:)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/343801.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

区块链是怎么存储数据的?

每个块都是有大小限制的新的数据存储单元,当前数据不到上限,那么都可以添加进块。当前数据达到了上限,那么就得分表/分块,超限的那部分数据就需要等待下个区块存储 存储的数据:和mysql一样,文本数据直接存储…

从vue小白到高手,从一个内容管理网站开始实战开发第八天,登录功能后台功能设计--业务逻辑层基础接口和基础服务实现

上一篇我们介绍了项目后续要使用到的工具类,关于工具类的创建可以查看 从vue小白到高手,从一个内容管理网站开始实战开发第七天,登录功能后台功能设计--通用分页、枚举以及相关工具类-CSDN博客文章浏览阅读2次。本次内容主要介绍了项目后续用到的部分工具类,这些工具类,在…

适用于 Windows 的 12 个最佳免费磁盘分区管理器软件

分区是与其他部分分开的硬盘驱动器部分。它使您能够将硬盘划分为不同的逻辑部分。分区软件是一种工具,可帮助您执行基本选项,例如创建、调整大小和删除物理磁盘的分区。许多此类程序允许您更改磁盘片的标签以便于识别数据。 适用于 Windows 的 12 个最佳…

C++笔记之cout高亮输出以及纯C++实现一个彩色时钟

C笔记之cout高亮输出以及纯C实现一个彩色时钟 code review! 文章目录 C笔记之cout高亮输出以及纯C实现一个彩色时钟一.cout高亮输出1.1.运行1.2.代码一1.3.代码二1.4.重置终端的文本格式到默认设置说明 二.纯C实现一个彩色时钟2.1.运行2.2.main.cc2.3.cout带颜色打印输出技巧…

C++设计模式-- 2.代理模式

文章目录 代理模式 代理模式 代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合 或不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 代理模式有以下三种角色&…

中本聪15年前剧本重演!“比特币上市首日”成绩斐然,ETF交易量冲破46亿美元!

2024年1月11日,美国证券交易委员会(SEC)以3-2投票结果批准比特币现货ETF。 2009年1月11日,中本聪向比特币早期开发者哈尔芬尼(Hal Finney)转出10枚比特币,使他成为世界上第一个透过交易获得比特币的人。随后&#xff0…

Python的内置函数 def __init__和__str__用法

__init__() 当使用类名()创建对象时,会自动执行以下操作 __init__()是对象的的内置方法,是专门用来定义一个类 具有哪些属性的方法 class Person:def __init__(self):print("这是一个初始化方法")result Person() …

(26)Linux 进程通信之共享内存(共享储存空间)

共享内存是System V版本的最后一个进程间通信方式。共享内存,顾名思义就是允许两个不相关的进程访问同一个逻辑内存,共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一…

3D scanner with DLPC3478

https://www.bilibili.com/video/BV1vJ411J7ih?p3&vd_source109fb20ee1f39e5212cd7a443a0286c5 因数: 分别率波长pattern速度 DMD 与 DLPC匹配 3D scanner是结构光的概念走的 Internal pattern, 是DLPC内部提供图像给DMD External Pattern, 外部FPGA /MCU…

查看SQL Server的表字段类型、长度、描述以及是否可为null

文章目录 初步理解小步测试组合一下参考文章有更详细评述 继续理解得到大部分信息 本文参考:https://blog.csdn.net/josjiang1/article/details/80558068。 也可以直接点击这里文章链接: sql server查询表结构(字段名,数据类型&a…

借款还款记录账本,借款还款账务处理

生活中,难免会有一些金钱上的往来。有时候,我们会因为忙碌或者其他原因,忘记了借款或还款的具体情况。现在【晨曦记账本】可以帮你可以清楚的掌握自己的借款和还款情况,无论是借款总额、还款总额,还是逾期未还的金额&a…

RT-Thread:STM32 PHY 调试,使用软件包 WIZNET 驱动 W5500

说明: 1. 本文记录使用 RT-Thread 软件包 WIZNET驱动 W5500 的调试笔记。 2. 采用 RT-Thread Studio 工程 STM32F407VET6 芯片,W5500 PHY芯片,两者之间使用SPI接口链接 。 注意: 1.在按流程建立工程,和移植完 wizn…