![](https://csdnimg.cn/release/download_crawler_static/86783383/bg4.jpg)
filename='checkpoint.pth'
"""""""""""""""图像增强(数据集预处理处理)open"""""""""""""""
#图像增强:将数据集中照片进行旋转、翻折、放大...得到更多的数据
#ImageFolder 假设所有的文件按文件夹保存好,每个文件夹下面存贮同一类别的
图片,文件夹的名字为分类的名字
data_transforms = { #data_transforms 中指定了所有图像预处理操作,只需要修改
训练集和验证集的名字后复制粘贴
'train':
transforms.Compose([transforms.RandomRotation(45),#随机旋转,-45 到 45
度之间随机选
transforms.CenterCrop(224),#从中心开始裁剪
transforms.RandomHorizontalFlip(p=0.5),#随机水平翻转 选择一个概率概
率
transforms.RandomVerticalFlip(p=0.5),#随机垂直翻转
transforms.ColorJitter(brightness=0.2, contrast=0.1, saturation=0.1,
hue=0.1),#参数 1 为亮度,参数 2 为对比度,参数 3 为饱和度,参数 4 为色相
transforms.RandomGrayscale(p=0.025),#概率转换成灰度率,3 通道就是
R=G=B
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])#均值,
标准差
]),
'valid':
transforms.Compose([transforms.Resize(256),
transforms.CenterCrop(224),
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
]),
}
"""""""""""""""图像增强(数据集预处理处理)end"""""""""""""""
"""""""""""""""处理照片数据函数 open"""""""""""""""
#注意 tensor 的数据需要转换成 numpy 的格式,而且还需要还原回标准化的结果
def im_convert(tensor):
image = tensor.to("cpu").clone().detach()
image = image.numpy().squeeze()
# 还原回 h,w,c
image = image.transpose(1, 2, 0)