PixelSSL icon indicating copy to clipboard operation
PixelSSL copied to clipboard

Is there a bug in task/sseg/func.py metrics?

Open HHuiwen opened this issue 3 years ago • 1 comments

Hi, ZHKKKe, Thank you for your excellent code.

I found a suspected bug in task/sseg/func.py.

In the function metrics, you reset all meters named acc_str/acc_class_str/mIoU_str/fwIoU_str. if meters.has_key(acc_str): meters.reset(acc_str) if meters.has_key(acc_class_str): meters.reset(acc_class_str) if meters.has_key(mIoU_str): meters.reset(mIoU_str) if meters.has_key(fwIoU_str): meters.reset(fwIoU_str) When I test your pre-trained model deeplabv2_pascalvoc_1-8_suponly.ckpt, I found the Validation metrics logging the whole confusion matrix. Shouldn‘t we count the single image acc/mIoU independently?

I'm not sure whether my speculation is right, could you help me?

HHuiwen avatar Aug 04 '21 15:08 HHuiwen

Hi, thanks for your attention. Sorry for late response.

The metric calculation in semantic segmentation can be a bit difficult to understand. If you dive into the code, you will find that historical information is stored in confusion_matrix. Therefore, we should reset the metrics and calculate new metrics from confusion_matrix in each validation iteration.

ZHKKKe avatar Aug 11 '21 03:08 ZHKKKe