jd730 / EOPSN

[CVPR 2021] Exemplar-Based Open-Set Panoptic Segmentation Network (EOPSN)
Other
52 stars 7 forks source link

Adoption to cityscapes #5

Closed Hoff97 closed 2 years ago

Hoff97 commented 2 years ago

Hi, thanks for providing the code to your method. I am interested in trying this out on another dataset, namely cityscapes. I already know that I would have to adapt the dataloading to cityscapes, what I am still unsure about is which pretrained model I would need.

In this issue you mention that training needs a model pretrained with void-supression, the weights of which you provide. How would I go about pretraining such a model on cityscapes? Is there code in this repository for pretraining on COCO, which I could adapt to cityscapes?

jd730 commented 2 years ago

Hi @Hoff97, Thank you for being interested in this work. here is the procedure you might want to do

  1. Train Mask R-CNN (Detectron2) on Cityscape excluding unknown class. You might need to add one loss, void suppression.
    • However, you can totally discard unknown classes by not using void suppression loss during training although it will slightly decrease the performance.
  2. Fine-tune the model trained on 1. using EOPSN.
Hoff97 commented 2 years ago

Thanks for the swift answer! As a follow up question, the way I understand having some pretrained model is important, because otherwise EOPSN will not be able to extract exemplars from void regions, is that correct?

jd730 commented 2 years ago

The reason why we use the pre-trained model is EOPSN requires more time for training compared to mask R-CNN so we want to set the initial weight as a certain stage. I think you can even start from scratch but painful.

Regarding exemplar extraction, it leans on RPN and some heuristics (e.g., thresholding, quality of cluster). The reason why I said you may not need to use void suppression loss is that the loss is for training box head, not RPN although the loss prevents void region (where has unknown class potentially) from being classified as background class in the box head. Anyway, while training EOPSN, that prevention will be trained.

Hoff97 commented 2 years ago

Thanks for the clarification, the info is very helpful!