transforms包含了一些常用的图像变换,这些变换能够用Compose串联组合起来。
# 用于把一系列变换组合到一起。
class torchvision.transforms.Compose(transforms)
# 格式变换,把张量或ndarray转化为PIL图像。
class torchvision.transforms.ToPILImage(mode=None)
# 格式变换,将PIL Image或numpy.ndarray转化成张量。
class torchvision.transforms.ToTensor
# 通用变换 将用户定义的函数用作变换。
class torchvision.transforms.Lambda(lambd)
# 图像缩放,将原是PIL图像重新调整到指定形状。
torchvision.transforms.functional.resize(img, size, interpolation=2)
实战demo例子:
# -*- coding: utf-8 -*-
from torchvision import transforms
from PIL import Image
import warnings
warnings.filterwarnings("ignore")
img = Image.open('F:/img_spam/test/10064004771670192900320010027531.jpg')
print(type(img))
print(img.size)
# 将输入的PIL.Image重新改变大小成给定的size,size是最小边的边长。
crop = transforms.Scale(300)
croped_img=crop(img)
print(type(croped_img))
print(croped_img.size)
croped_img.show()
img_tensor = transforms.ToTensor()(croped_img) # 转换成tensor
print(img_tensor)
# 图像转换,
croped_img_1=transforms.ToPILImage(img_tensor)
print(croped_img_1)
# 图像缩放,将原是PIL图像重新调整到指定形状。
croped_img_2=transforms.functional.resize(img, [300,578], interpolation=2)
print(croped_img_2)
croped_img_2.show()
转自:【python 走进pytorch】torchvision.transforms进行图像缩放