drozdgk's picture
chore: vendor third_party (remove submodules, ignore artifacts)
352cafd
raw
history blame
1.12 kB
from torch.nn import functional as F
def compute_tensor_iu(seg, gt):
seg = seg.squeeze(1)
gt = gt.squeeze(1)
intersection = (seg & gt).float().sum()
union = (seg | gt).float().sum()
return intersection, union
def compute_tensor_iou(seg, gt):
seg = seg.squeeze(1)
gt = gt.squeeze(1)
intersection = (seg & gt).float().sum((1, 2))
union = (seg | gt).float().sum((1, 2))
iou = (intersection + 1e-6) / (union + 1e-6)
return iou
def resize_min_side(im, size, method):
h, w = im.shape[-2:]
min_side = min(h, w)
ratio = size / min_side
if method == 'bilinear':
return F.interpolate(im, scale_factor=ratio, mode=method, align_corners=False)
else:
return F.interpolate(im, scale_factor=ratio, mode=method)
def resize_max_side(im, size, method):
h, w = im.shape[-2:]
max_side = max(h, w)
ratio = size / max_side
if method in ['bilinear', 'bicubic']:
return F.interpolate(im, scale_factor=ratio, mode=method, align_corners=False)
else:
return F.interpolate(im, scale_factor=ratio, mode=method)