可调用的函数列表https://pytorch.org/vision/stable/transforms.html
介绍几个常用的函数:
将图像转换成目标大小
参数列表:
从图像的中心裁剪为目标大小
参数列表:
将PIL图像或narray转换为张量并相应地缩放值。
无参
用均值和标准差归一化张量图像。此转换不支持PIL图像。
参数列表:
实例:
# 单通道图像归一化
transforms.Normalize([0.485], [0.229])
# 三通道图像归一化
transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
torchvision.datasets.ImageFolder(root,transform,target_transform,loader,is_valid_file)
torchvision.transforms类
target_transform(可选):对图片类别进行预处理的操作,输入为 target,输出对其的转换。如果不传该参数,即对 target 不做任何转换,返回的顺序索引 0,1, 2…
loader(可选):表示数据集加载方式,通常默认加载方式即可。
is_valid_file :检查图像文件是否有效(用于检查损坏的文件)
data_transform = {
"train": transforms.Compose([transforms.RandomResizedCrop(224),
transforms.RandomHorizontalFlip(),
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])]),
"val": transforms.Compose([transforms.Resize(256),
transforms.CenterCrop(224),
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])])}
train_dataset= torchvision.datasets.ImageFolder(root=r'/root/src/data/oneimg_v_t/train/' ,transform=data_transform["train"])
val_dataset = torchvision.datasets.ImageFolder(root=r'/root/src/data/oneimg_v_t/val/' ,transform=data_transform["val"])
from torchvision import datasets
dataset = datasets.ImageFolder(root=r'F:\DataSetOneDir\\')
print(dataset.classes)
print(dataset.class_to_idx)
print(dataset.imgs)