Esempio n. 1
0
    def preprocess(self, mode):
        assert mode in ['train', 'val', 'test']
        pascal_data_path = get_data_path('pascal')
        sbd_data_path = get_data_path('sbd')
        items = []

        if mode == 'train':
            p = open(
                os.path.join(pascal_data_path, 'ImageSets', 'Person',
                             'train.txt')).readlines()
            s = open(os.path.join(sbd_data_path, 'dataset',
                                  'train.txt')).readlines()
            lines = list(set(p).intersection(s))
            data_list = [l.strip('\n') for l in lines]
        elif mode == 'val':
            p = open(
                os.path.join(pascal_data_path, 'ImageSets', 'Person',
                             'val.txt')).readlines()
            s = open(os.path.join(sbd_data_path, 'dataset',
                                  'val.txt')).readlines()
            lines = list(set(p).intersection(s))
            data_list = [l.strip('\n') for l in lines]

        img_path = os.path.join(sbd_data_path, 'dataset', 'img')
        semseg_mask_path = os.path.join(sbd_data_path, 'dataset', 'cls')
        parts_mask_path = os.path.join(pascal_data_path, 'ImageSets', 'Person',
                                       'gt')

        for it in data_list:
            item = (os.path.join(img_path, it + '.jpg'),
                    os.path.join(semseg_mask_path, it + '.mat'),
                    os.path.join(parts_mask_path, it + '.png'))
            items.append(item)
        return items
Esempio n. 2
0
    def preprocess(self, mode):
        assert mode in ['train', 'val', 'test']
        items = []
        data_path = get_data_path('lip')

        if mode == 'train':
            img_path = os.path.join(data_path, 'multi-person', 'Training',
                                    'Images')
            mask_path = os.path.join(data_path, 'multi-person', 'Training',
                                     'Category_ids')
            data_list = [
                l.strip('\n') for l in open(
                    os.path.join(data_path, 'multi-person', 'Training',
                                 'train_id.txt')).readlines()
            ]
            for it in data_list:
                item = (os.path.join(img_path, it + '.jpg'),
                        os.path.join(mask_path, it + '.png'))
                items.append(item)
        elif mode == 'val':
            img_path = os.path.join(data_path, 'multi-person', 'Validation',
                                    'Images')
            mask_path = os.path.join(data_path, 'multi-person', 'Validation',
                                     'Category_ids')
            data_list = [
                l.strip('\n') for l in open(
                    os.path.join(data_path, 'multi-person', 'Validation',
                                 'val_id.txt')).readlines()
            ]
            for it in data_list:
                item = (os.path.join(img_path, it + '.jpg'),
                        os.path.join(mask_path, it + '.png'))
                items.append(item)
        return items[0:11716]
Esempio n. 3
0
    def preprocess(self, mode):
        assert mode in ['train', 'val', 'test']
        data_path = get_data_path('pascalparts')
        if mode == 'train':
            data_list = [
                l.strip('\n') for l in open(
                    os.path.join(data_path, 'ImageSets', 'Person',
                                 'train.txt')).readlines()
            ]
        elif mode == 'val':
            data_list = [
                l.strip('\n') for l in open(
                    os.path.join(data_path, 'ImageSets', 'Person',
                                 'val.txt')).readlines()
            ]

        items = []
        img_path = os.path.join(data_path, 'JPEGImages')
        mask_path = os.path.join(data_path, 'ImageSets', 'Person', 'gt')
        for it in data_list:
            item = (os.path.join(img_path, it + '.jpg'),
                    os.path.join(mask_path, it + '.png'))
            items.append(item)

        return items
Esempio n. 4
0
    def preprocess(self, mode):
        assert mode in ['train', 'val', 'test']
        items = []
        sbd_path = get_data_path('sbd')
        sbd_img_path = os.path.join(sbd_path, 'dataset', 'img')
        sbd_mask_path = os.path.join(sbd_path, 'dataset', 'cls')
        voc_path = get_data_path('pascal')
        voc_test_path = get_data_path('pascal_test')
        voc_img_path = os.path.join(voc_path, 'JPEGImages')
        voc_mask_path = os.path.join(voc_path, 'SegmentationClass')

        # Train data = VOC_train + SBD_train + SBD_val
        if mode == 'train':
            sbd_data_list = [
                l.strip('\n')
                for l in open(os.path.join(sbd_path, 'dataset',
                                           'trainval.txt')).readlines()
            ]
            # SBD dataset contains some of the voc_val samples, so we have to remove them
            voc_val_data_list = [
                l.strip('\n') for l in open(
                    os.path.join(voc_path, 'ImageSets', 'Segmentation',
                                 'val.txt')).readlines()
            ]
            sbd_data_list = list(set(sbd_data_list) - set(voc_val_data_list))

            for it in sbd_data_list:
                item = (os.path.join(sbd_img_path, it + '.jpg'),
                        os.path.join(sbd_mask_path, it + '.mat'))
                items.append(item)

            voc_data_list = [
                l.strip('\n') for l in open(
                    os.path.join(voc_path, 'ImageSets', 'Segmentation',
                                 'train.txt')).readlines()
            ]
            for it in voc_data_list:
                item = (os.path.join(voc_img_path, it + '.jpg'),
                        os.path.join(voc_mask_path, it + '.png'))
                items.append(item)
        # Val data = VOC_val
        elif mode == 'val':
            data_list = [
                l.strip('\n') for l in open(
                    os.path.join(voc_path, 'ImageSets', 'Segmentation',
                                 'val.txt')).readlines()
            ]
            for it in data_list:
                item = (os.path.join(voc_img_path, it + '.jpg'),
                        os.path.join(voc_mask_path, it + '.png'))
                items.append(item)
        # Test data = VOC_test
        else:
            img_path = os.path.join(voc_test_path, 'JPEGImages')
            data_list = [
                l.strip('\n') for l in open(
                    os.path.join(voc_path, 'ImageSets', 'Segmentation',
                                 'test.txt')).readlines()
            ]
            for it in data_list:
                items.append((img_path, it))
        return items