今天在做实验的时候,修改了一下数据增强的方式。一开始图片的处理都是用PIL库进行处理的,后来接触了torchvision中的transform后就对原有的代码进行了修改。实验发现,训练的结果过拟合了,测试集的loss一直都很大且没有办法下降。总之,存在很大的疑惑。
开始的数据生成代码
import argparse
import os
import sys
sys.path.append('../')
sys.path.append('../model')
import h5py
import numpy as np
import PIL.Image as pil_image
from utils import convert_rgb_to_y,random_crop
from PIL import Image
import config
def train(args):
print('尺度因子是',args.scale)
if not os.path.exists("../train"):
os.makedirs("../train")
h5_file = h5py.File(args.output_path, 'w')
lr_patches = []
hr_patches = []
flip = [0,1,2]
count = 0
if args.mode=='y':
print('生成y通道数据')
else:
print('生成rgb数据')
if args.with_aug:
print('进行数据增强')
for image_path in sorted(os.listdir(args.images_dir)):