首先,这次讲解的tansforms
功能,通俗地讲,类似于在计算机视觉流程里的图像预处理部分的数据增强。
transforms的原理:
说明:图片(输入)通过工具得到结果(输出),这个工具,就是transforms
模板工具,(tool=transforms.ToTensor()
具体工具),使用工具result=tool
(图片)
tansforms的调用与使用,由下图可得:
- 先创建一个
transforms.Tensor(),
使用from torchvision import transforms
调包 transforms
去调init函数- init去调用真正的
transforms
类,里面就有很多的方法(绿色五角星标注),例如:resize
,ToTensor
,CenterCrop
(从这些方法可以看出,许多都是数据增强的方法)。
接下来,上代码:
import os
from torchvision import transforms
from PIL import Image
root_path = "D:\\data\\basic\\Image"
label_path = "aligned"
# 1.获取aligned第一张图的名字
img_dir = os.path.join(root_path, label_path)
img_list = os.listdir(img_dir)
img_path = img_list[0]
# 2.获取aligned第一张图的路径
img = os.path.join(root_path, label_path, img_path)
# 3.使用python自带的PIL获取图片
img = Image.open(img)
# 4.将PIL利用transforms转换成ToTensor
to_tensor = transforms.ToTensor() # 创建totensor ()
img = to_tensor(img) # 使用to_tensor直接将图片的PIL转化为tensor
print(img)
# transforms
代码结果: