BBBBchan / CorrMatch

Official code for "CorrMatch: Label Propagation via Correlation Matching for Semi-Supervised Semantic Segmentation"
128 stars 8 forks source link

Typo in Dynamic Threshold Updating Function? #23

Closed Arimitsu06 closed 1 week ago

Arimitsu06 commented 1 week ago

Hello, thank you for this great work! I was looking at your dynamic threshold function and when you call it in line 200-201 of corrmatch.py, it is

thresh_controller.thresh_update(pred_u_w.detach(), ignore_mask_cutmixed1, update_g=True) thresh_global = thresh_controller.get_thresh_global()

I was wondering why you are using ignore_mask_cutmixed1 instead of ignore_mask since wouldn't this entail using the cutmixed ignore mask for the non-cutmixed unlabeled weakly augmented image?

BBBBchan commented 1 week ago

Thanks for your attention. We use ignore_mask_cutmixed1 here to remain consistency with confidence map filter and loss function, which indeed has the potential to result in more pixels being ignored in the non-cutmixed prediction. In fact, since the ignore mask for the unlabeled image is primarily generated by random cropping, using ignore_mask instead of ignore_mask_cutmixed1 would not affect the distribution of the predictions and hence the threshold update.

Arimitsu06 commented 1 week ago

Thanks for your quick reply and clarification!