我是 pytorch 的新手,我尝试使用预训练的 ResNet34 为编码器构建 U-Net 模型,以分割糖尿病性视网膜病变。在预训练的 ResNet34 编码器 pytorch 文档中,它说图像必须用 mean [0.485, 0.456, 0.406] 和 std [0.229, 0.224, 0.225] 进行归一化,但是当我尝试在像这样训练之前预处理数据集时
class PreprocessDataset(Dataset):
def __init__(self, data, target):
self.data = data
self.target = target
self.preprocess_data = transforms.Compose([
transforms.Resize(256),
transforms.CenterCrop(224),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])
self.preprocess_target = transforms.Compose([
transforms.Resize(256),
transforms.CenterCrop(224),
transforms.ToTensor(),
])
def __getitem__(self, index):
data_img = Image.open(self.data[index])
target_img = Image.open(self.target[index])
x = self.preprocess_data(data_img)
y = self.preprocess_target(target_img)
return x, y
def __len__(self):
return len(self.data)
输入图像将是这样的,我不确定它是否可以生成预测的掩码,因为它的结果很暗
这里有人使用预训练的 resnet34 作为编码器以及如何在训练前对图像进行归一化吗?非常感谢!