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的调整,长边进行相应的缩放,最后导致图像进行等比例放缩。

相关推荐
吴佳浩 Alben6 小时前
GPU 编号错乱踩坑指南:PyTorch cuda 编号与 nvidia-smi 不一致
人工智能·pytorch·python·深度学习·神经网络·语言模型·自然语言处理
吴佳浩 Alben6 小时前
CUDA_VISIBLE_DEVICES、多进程与容器化陷阱
人工智能·pytorch·语言模型·transformer
koo3647 小时前
pytorch深度学习笔记23
pytorch·笔记·深度学习
剑穗挂着新流苏3128 小时前
109_神经网络的决策层:线性层(Linear Layer)与数据展平详解
人工智能·pytorch·深度学习
如若12311 小时前
WSL2 启动报错“拒绝访问“ E_ACCESSDENIED 完整解决方案
人工智能·pytorch·python·深度学习·计算机视觉
蛐蛐蛐12 小时前
在昇腾310P推理服务器上安装CANN和PyTorch
人工智能·pytorch·python·npu
剑穗挂着新流苏31212 小时前
112_深度学习的导航仪:PyTorch 优化器(Optimizer)全解析
pytorch·深度学习·机器学习
吴佳浩20 小时前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
吴佳浩21 小时前
GPU 编号错乱踩坑指南:PyTorch cuda 编号与 nvidia-smi 不一致
人工智能·pytorch·nvidia
云上的云端1 天前
vLLM-Ascend operator torchvision::nms does not exist 问题解决
人工智能·pytorch·深度学习