1.PIL
(1) 用image.show()
和image.save('PIL1.jpg')
直接显示和保存PIL格式的image
(2) transforms.Compose.ToTensor()
把PIL图像或者数组图像numpy.ndarry(WxHxC)从[0,255]转换到float型[0.0,1.0]的tensor;
(3) transforms.Compose.Normalize(Tensor,mean,std,inplace),比如transforms.Normalize([0.5,0.5,0.5], [0.5,0.5,0.5])
说明三个通道的mean和std均是0.5.
(4) 保存arrayImage.fromarray(image).save('PIL.jpg')
array通过transforms.Compose转换为PIL后保存,unloader = transforms.ToPILImage() image = (unloader(image))
transforms.Compose.Resize()
只能对PIL图像进行转换
(5) 结果如下:
PIL1和PIL显示
from PIL import Image
import torchvision.transforms as transforms
import numpy as np
image_path = 'E:/aboutVS/dataset/image/LIVE/gblur/img2.bmp'
transform = transforms.Compose([
transforms.Resize(256),
transforms.RandomResizedCrop(224,scale=(0.5,1.0)),
transforms.ToTensor(),
transforms.Normalize([0.5,0.5,0.5], [0.5,0.5,0.5])
]) #定义变换:resize+随机裁剪+totensor+归一化
im = Image.open(image_path,"r").convert('RGB') # 读取为PIL图像
im.show() # 直接显示PIL图像
image = (transform(im)).permute(1,