lhoyer / DAFormer

[CVPR22] Official Implementation of DAFormer: Improving Network Architectures and Training Strategies for Domain-Adaptive Semantic Segmentation
Other
470 stars 93 forks source link

Checkpoint on SYNTHIA>Cityscapes #10

Closed kw01sg closed 2 years ago

kw01sg commented 2 years ago

Is the pre-trained checkpoint for SYNTHIA to CityScapes available for download?

lhoyer commented 2 years ago

I have uploaded the checkpoint with the median performance for Synthia to Cityscapes to Google Drive: https://drive.google.com/file/d/1V9EpoTePjGq33B8MfombxEEcq9a2rBEt/view?usp=sharing

It achieves a mIoU for the 16 labeled classes in Synthia of 61.3. This differs from the mIoU in the log as it is divided by 19 instead of 16 there. The mIoU of 61.3 for this checkpoint slightly differs from the reported mIoU of 60.9 in Tab. 6 as the mean performance over three seeds is reported there.

kw01sg commented 2 years ago

Do you think you can provide the config file used to train this checkpoint? Would love to try and replicate the results. Have tried to make my own from the gta to cityscapes config file provided and I got an mIoU16 of 59.9, which is around 1.4 less (but still state of the art).

lhoyer commented 2 years ago

You can automatically generate the synthia training configs (and train with them) using:

python run_experimenty.py --exp 7

Please refer to https://github.com/lhoyer/DAFormer#training for more details.

kw01sg commented 2 years ago
  # -------------------------------------------------------------------------
  # Final DAFormer (Table 6)
  # -------------------------------------------------------------------------
  elif id == 7:
      seeds = [0, 1, 2]
      datasets = [
          # ('gta', 'cityscapes'),  # already run in exp 6
          ('synthia', 'cityscapes'),
      ]
      architecture, backbone = ('daformer_sepaspp', 'mitb5')
      uda = 'dacs_a999_fdthings'
      rcs_T = 0.01
      plcrop = True
      for (source, target), seed in \
              itertools.product(datasets, seeds):
          cfg = config_from_vars()
          cfgs.append(cfg)

From the source code, to obtain results from table 6 of the paper on synthia to cityscapes, can I confirm that i should be running experiment id 7?

lhoyer commented 2 years ago

Yes, that's right.

kw01sg commented 2 years ago

Got it. Thanks!