YudeWang / SEAM

Self-supervised Equivariant Attention Mechanism for Weakly Supervised Semantic Segmentation, CVPR 2020 (Oral)
MIT License
539 stars 97 forks source link

Why using cls labels to generate CAMs at inference time? Is it valid? #16

Closed Siyuan-Zhou closed 3 years ago

Siyuan-Zhou commented 3 years ago

At val / test time, in infer_SEAM.py (line 79 to line 82), you use GT cls labels to choose CAMs of these categories and save these specified CAMs as .npy files. I am wondering whether using GT cls labels at inference time is valid in weakly-supervised semantic segmentation. Could you provide me with some hints? Much thanks!

YudeWang commented 3 years ago

Hi @Siyuan-Zhou , Because the generated is pseudo labels on train set. There is another retrain step to train segmentation model on these pseudo labels in fully supervised manner.

Siyuan-Zhou commented 3 years ago

@YudeWang Thanks for your quick reply! I exactly know that you use your generated pseudo segmentation masks to train a segmentation model separately. However, what I am talking about is that in the inference stage you use ground truth category-level labels (i.e. cls labels) to select CAMs, see infer_SEAM.py (line 79 to line 82). I am wondering whether ground truth category-level labels (i.e. cls labels) can be used during inference.

bityangke commented 3 years ago

@Siyuan-Zhou it does inference on the train set not the test set

Siyuan-Zhou commented 3 years ago

@bityangke Thanks.