nobodyplayer1 / VM-UNetV2

Apache License 2.0
78 stars 10 forks source link

Is it reasonable to merge the training set from isic17 and isic18 #3

Open Frank-Cai0709 opened 5 months ago

Frank-Cai0709 commented 5 months ago

Excuse me, I just saw the setting code inconfigs/config_setting_v2.py:

elif datasets == 'isic_all':
      data_path = '/raid/code/mamba_all/VM-UNet/data/zd-medic/isic_all/'

Then I notice that you merge the training data from ISIC 2017 and 2018 in Isic_datasets as below, which enlarges the numbers of training data. It is rewarding for the performance of VMNet V2, but in VMnet and Unet-v2, they train and evaluate ISIC2017 and ISIC2018 separately. So I wonder whether it is unfair to compare the evaluation results of VM-UnetV2 and other models (like VMNet).

Looking forward to your reply. Thank you so much :)

class Isic_datasets(Dataset):
    def __init__(self, path_Data, config, train=True, test_dataset = 'isic17'):
        super(Isic_datasets, self)
        if train:
            images_list = sorted(os.listdir(path_Data+'train/images/'))
            masks_list = sorted(os.listdir(path_Data+'train/masks/'))
            self.data = []
            for i in range(len(images_list)):
                img_path = path_Data+'train/images/' + images_list[i]
                mask_path = path_Data+'train/masks/' + masks_list[i]
                self.data.append([img_path, mask_path])
            self.transformer = config.train_transformer
        else: # test 数据集需要 加 test 数据集的名称
            images_list = sorted(os.listdir(path_Data+'val/' + test_dataset + '/images/'))
            masks_list = sorted(os.listdir(path_Data+'val/' + test_dataset + '/masks/'))
            self.data = []
            for i in range(len(images_list)):
                img_path = path_Data+'val/' + test_dataset + '/images/' + images_list[i]
                mask_path = path_Data+'val/' + test_dataset + '/masks/' + masks_list[i]
                self.data.append([img_path, mask_path])
            self.transformer = config.test_transformer
nobodyplayer1 commented 5 months ago

This is actually fair, for polyp data you can refer to the following article "Polyp-PVT: Polyp Segmentation with Pyramid Vision Transformers".The polyp test results here are the result of merging a number of polyp datasets for training and then looking at the metrics on each dataset

anran0422 commented 2 weeks ago

@Frank-Cai0709 想知道您有没有去运行,VM-Net的代码,如果单独训练isic2017或者isic2018数据集,结果与论文相差较大,不知道为什么