在用python编写CNN、UNet、VGG等模型时,需要先对数据集进行处理,即先读取image和label并进行预处理(比如设置图像大小等)。
在这之前已经将BraTS2018的nii格式文件保存为png格式:
https://blog.csdn.net/weixin_43330946/article/details/89576759
下面的代码是我最近写UNet用于分割BraTS2018数据集的代码。但是一般情况下,数据预处理的封装都差不多。
torch.utils.data.Dataset主要包括三个部分:
https://blog.csdn.net/weixin_43330946/article/details/89598204
1、__init__()
主要用于参数初始化,个人理解就是参数定义。根据自己网络所需要的参数进行定义。
2、__getitem__()
获取数据集的序列。数据的预处理就在这个部分编写。
3、__len()__
返回数据集的长度。一般都是固定的,没什么影响。
import numpy as np
import torch
import torch.utils.data
import os
import torchvision
from PIL import Image
from torchvision import Variable
class med(torch.utils.data.Dataset):