feipanir / IntraDA

Unsupervised Intra-domain Adaptation for Semantic Segmentation through Self-Supervision (CVPR 2020 Oral)
https://arxiv.org/pdf/2004.07703.pdf
MIT License
270 stars 35 forks source link

No color_masks #17

Closed bryanbocao closed 11 months ago

bryanbocao commented 11 months ago
(uda) brcao@dawn:~/Repos/fork/IntraDA/intrada$ python train.py --cfg ./intrada.yml
Called with args:
Namespace(cfg='./intrada.yml', random_train=False, tensorboard=False, viz_every_iter=None, exp_suffix=None)
Using config:
{'DATA_DIRECTORY_SOURCE': '../ADVENT/data/Cityscapes',
 'DATA_DIRECTORY_TARGET': '/home/brcao/Repos/fork/IntraDA/ADVENT/data/Cityscapes',
 'DATA_LIST_SOURCE': '../entropy_rank/easy_split.txt',
 'DATA_LIST_TARGET': '../entropy_rank/hard_split.txt',
 'EXP_NAME': 'CityscapesEasy2CityscapesHard_DeepLabv2_AdvEnt',
 'EXP_ROOT': PosixPath('/home/brcao/Repos/fork/IntraDA/ADVENT/experiments'),
 'EXP_ROOT_LOGS': '/home/brcao/Repos/fork/IntraDA/ADVENT/experiments/logs',
 'EXP_ROOT_SNAPSHOT': '/home/brcao/Repos/fork/IntraDA/ADVENT/experiments/snapshots',
 'GPU_ID': 0,
 'NUM_CLASSES': 19,
 'NUM_WORKERS': 1,
 'SOURCE': 'CityscapesEasy',
 'TARGET': 'CityscapesHard',
 'TEST': {'BATCH_SIZE_TARGET': 1,
          'IMG_MEAN': array([104.00699, 116.66877, 122.67892], dtype=float32),
          'INFO_TARGET': '/home/brcao/Repos/fork/IntraDA/ADVENT/advent/dataset/cityscapes_list/info.json',
          'INPUT_SIZE_TARGET': [1024, 512],
          'MODE': 'best',
          'MODEL': ['DeepLabv2'],
          'MODEL_WEIGHT': [1.0],
          'MULTI_LEVEL': [True],
          'OUTPUT_SIZE_TARGET': [2048, 1024],
          'RESTORE_FROM': [''],
          'SET_TARGET': 'val',
          'SNAPSHOT_DIR': [''],
          'SNAPSHOT_MAXITER': 120000,
          'SNAPSHOT_STEP': 2000,
          'WAIT_MODEL': True},
 'TRAIN': {'BATCH_SIZE_SOURCE': 1,
           'BATCH_SIZE_TARGET': 1,
           'DA_METHOD': 'AdvEnt',
           'EARLY_STOP': 120000,
           'IGNORE_LABEL': 255,
           'IMG_MEAN': array([104.00699, 116.66877, 122.67892], dtype=float32),
           'INFO_SOURCE': '',
           'INFO_TARGET': '/home/brcao/Repos/fork/IntraDA/ADVENT/advent/dataset/cityscapes_list/info.json',
           'INPUT_SIZE_SOURCE': [1024, 512],
           'INPUT_SIZE_TARGET': [1024, 512],
           'LAMBDA_ADV_AUX': 0.0002,
           'LAMBDA_ADV_MAIN': 0.001,
           'LAMBDA_ENT_AUX': 0.0002,
           'LAMBDA_ENT_MAIN': 0.001,
           'LAMBDA_SEG_AUX': 0.1,
           'LAMBDA_SEG_MAIN': 1.0,
           'LEARNING_RATE': 0.00025,
           'LEARNING_RATE_D': 0.0001,
           'MAX_ITERS': 250000,
           'MODEL': 'DeepLabv2',
           'MOMENTUM': 0.9,
           'MULTI_LEVEL': True,
           'POWER': 0.9,
           'RANDOM_SEED': 1234,
           'RESTORE_FROM': '../ADVENT/pretrained_models/DeepLab_resnet_pretrained_imagenet.pth',
           'SAVE_PRED_EVERY': 2000,
           'SET_SOURCE': 'all',
           'SET_TARGET': 'train',
           'SNAPSHOT_DIR': '/home/brcao/Repos/fork/IntraDA/ADVENT/experiments/snapshots/CityscapesEasy2CityscapesHard_DeepLabv2_AdvEnt',
           'TENSORBOARD_LOGDIR': '',
           'TENSORBOARD_VIZRATE': 100,
           'WEIGHT_DECAY': 0.0005}}
Model loaded
  0%|                                                                    | 0/120000 [00:00<?, ?it/s]
Traceback (most recent call last):
  File "/home/brcao/Repos/fork/IntraDA/intrada/train.py", line 149, in <module>
    main()
  File "/home/brcao/Repos/fork/IntraDA/intrada/train.py", line 145, in main
    train_domain_adaptation(model, easy_loader, hard_loader, cfg)
  File "/home/brcao/Repos/fork/IntraDA/intrada/train_UDA.py", line 360, in train_domain_adaptation
    train_advent(model, trainloader, targetloader, cfg)
  File "/home/brcao/Repos/fork/IntraDA/intrada/train_UDA.py", line 115, in train_advent
    _, batch = trainloader_iter.__next__()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/utils/data/dataloader.py", line 633, in __next__
    data = self._next_data()
           ^^^^^^^^^^^^^^^^^
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/utils/data/dataloader.py", line 1345, in _next_data
    return self._process_data(data)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/utils/data/dataloader.py", line 1371, in _process_data
    data.reraise()
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/_utils.py", line 644, in reraise
    raise exception
FileNotFoundError: Caught FileNotFoundError in DataLoader worker process 0.
Original Traceback (most recent call last):
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/utils/data/_utils/worker.py", line 308, in _worker_loop
    data = fetcher.fetch(index)
           ^^^^^^^^^^^^^^^^^^^^
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/utils/data/_utils/fetch.py", line 51, in fetch
    data = [self.dataset[idx] for idx in possibly_batched_index]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/torch/utils/data/_utils/fetch.py", line 51, in <listcomp>
    data = [self.dataset[idx] for idx in possibly_batched_index]
            ~~~~~~~~~~~~^^^^^
  File "/home/brcao/Repos/fork/IntraDA/intrada/cityscapes.py", line 42, in __getitem__
    label = self.get_labels(label_file)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/brcao/Repos/fork/IntraDA/intrada/../ADVENT/advent/dataset/base_dataset.py", line 44, in get_labels
    return _load_img(file, self.labels_size, Image.NEAREST, rgb=False)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/brcao/Repos/fork/IntraDA/intrada/../ADVENT/advent/dataset/base_dataset.py", line 48, in _load_img
    img = Image.open(file)
          ^^^^^^^^^^^^^^^^
  File "/home/brcao/Apps/miniconda3/envs/uda/lib/python3.11/site-packages/PIL/Image.py", line 3218, in open
    fp = builtins.open(filename, "rb")
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '../entropy/color_masks/weimar_000053_000019_leftImg8bit.png'
bryanbocao commented 11 months ago

Pull request: https://github.com/feipanir/IntraDA/pull/18 https://github.com/bryanbocao/IntraDA/commit/d97dd1f5bf27c443cf9c94aeb9f71b369f178361

Change label_file = '../entropy/color_masks/' + label_name to label_file = '../entropy_rank/color_masks/' + label_name in intrada/cityscapes.py:

def get_metadata(self, name):
    # label_name = name.replace("leftImg8bit", "gtFine_labelIds")
    # pdb.set_trace()
    label_name = name.split('/')[1]
    label_file = '../entropy_rank/color_masks/' + label_name
    # label_file = self.root / 'gtFine' / self.set / label_name
    return img_file, label_file