torchvision.transforms.Resize()的用法

今天我在使用torchvision.transforms.Resize()的时候发现,一般Resize中放的是size或者是(size,size)这样的二元数。

这两个里面,torchvision.transforms.Resize((size,size)),大家都很清楚,会将图像的h和w大小都变成size。

但是,第一种用法,torchvision.transforms.Resize(size)我最开始的时候,就不知道,到底是只转换一个边长,还是转换两个边长,还是说转换一个边长,另一个边长等比例放缩。

经过自己测试,发现torchvision.transforms.Resize(size)是将最短边长变成size,长边进行比例缩放,也就是最短边为size,最长边大于size。

python 复制代码
from PIL import Image
from torchvision import transforms

# 使用PIL库中的Image模块打开图像文件
img = Image.open('images/styles/starry_night.jpg')

# 打印原始图像的尺寸
print("原图尺寸:", img.size)

# 创建transforms.Resize对象,指定缩放大小为[256, 256]
resize = transforms.Resize(256)
# resize = transforms.Resize([256, 256])

# 使用resize对象对图像进行缩放
img2 = resize(img)

# 打印缩放后图像的尺寸
print("缩放后尺寸:", img2.size)

# 显示缩放后的图像
img2.show()

运行结果如下:

可以发现是短边进行size的调整,长边进行相应的缩放,最后导致图像进行等比例放缩。

相关推荐
独隅3 小时前
PyTorch 文本生成完整代码模板与深度解析
人工智能·pytorch·python
独隅4 小时前
PyTorch 图像分类完整代码模板与深度解析
人工智能·pytorch·分类
云程笔记7 小时前
004.环境搭建基础篇:Python、CUDA、cuDNN、PyTorch/TensorFlow安装与版本兼容性踩坑
pytorch·python·tensorflow
独隅1 天前
PyTorch 分布式训练完整指南:策略、实现与模型选型
人工智能·pytorch·分布式
沪漂阿龙1 天前
卷积神经网络(CNN)零基础通关指南:原理、图解与PyTorch实战
人工智能·pytorch·cnn
龙文浩_2 天前
AI中NLP的注意力机制的计算公式解析
人工智能·pytorch·深度学习·神经网络·自然语言处理
断眉的派大星2 天前
pytorch中链式法则求解梯度
人工智能·pytorch·python
龙文浩_2 天前
AI中NLP的深入浅出注意力机制 Seq2Seq 模型
人工智能·pytorch·深度学习·神经网络·自然语言处理
却道天凉_好个秋2 天前
pytorch(一):张量
人工智能·pytorch·python·深度学习
网上邻居YY2 天前
深度学习DL 之 安装PyTorch·GPU版、CUDA(本人Anaconda、Python、PyCharm已提前安装好)
pytorch·经验分享·python·深度学习·pycharm·学习方法