关于语义分割里的mIOU求取问题
收藏
假设有13个类需要预测
在用验证集进行评估的过程中,如果对某个batch预测,该batch的对应的评估标签图像里不存在第13个类,并且预测输出的图像里也不存在第13个类,那么这第13个类的IOU该怎么作数呢?
是①将第13个类的IOU值直接作为0,还是②视第13个类的IOU值为无意义(无效),不参与后续IOU计算
个人感觉第②种方式比较正确,毕竟此时第13类是预测正确的结果,IOU不应该等于0,想看看大家是怎么处理的。
0
收藏
请登录后评论
但是网上的写法是直接用第①种方法实现的,这样处理也比较简单,但是这样不会让真实的每个类的iou值偏低么?
上面写的太复杂,我简化一下我的问题:
预测一个batch时对某个类A会遇到四种情况:
①标签里有A,预测结果有A
②标签里有A,预测结果没有A
③标签里没有A,预测结果有A
④标签里没有A,预测结果没有A
第①②种情况直接计算iou没有问题,第③④种情况怎么算呢?
不会的
其实就是算TP、FN、FP、TN这几个值
不要一个个batch算,要整个验证集一起算,就不会出现③④情况
了解,之前想错了,弄成了每个batch求取类iou,求和每个batch后再按验证集数量求平均值,原来是直接按照整个验证集来算iou,再求类的平均值。