Hi all
I want to ask about the IOU metric for multiclass semantic segmantation
can I use this code from the semantic segmentation PyTorch model to calculate the IOU
def iou(pr, gt, eps=1e-7, threshold=None, ignore_channels=None):
“”“Calculate Intersection over Union between ground truth and prediction
Args:
pr (torch.Tensor): predicted tensor
gt (torch.Tensor): ground truth tensor
eps (float): epsilon to avoid zero division
threshold: threshold for outputs binarization
Returns:
float: IoU (Jaccard) score
“””
pr = _threshold(pr, threshold=threshold)
pr, gt = _take_channels(pr, gt, ignore_channels=ignore_channels)
intersection = torch.sum(gt * pr)
union = torch.sum(gt) + torch.sum(pr) - intersection + eps
return (intersection + eps) / union
my target mask is: 8x512x512
my predicted mask is: 8x5x512x512
where is 5: No of class
8: batch size