best possible recall fix

pull/1/head
Glenn Jocher 5 years ago
parent 31f3310029
commit 93bbf1b87a

@ -53,8 +53,8 @@ def check_img_size(img_size, s=32):
def check_best_possible_recall(dataset, anchors, thr): def check_best_possible_recall(dataset, anchors, thr):
# Check best possible recall of dataset with current anchors # Check best possible recall of dataset with current anchors
wh = torch.tensor(np.concatenate([l[:, 3:5] * s for s, l in zip(dataset.shapes, dataset.labels)])) # width-height wh = torch.tensor(np.concatenate([l[:, 3:5] * s for s, l in zip(dataset.shapes, dataset.labels)])).float() # wh
ratio = wh[:, None] / anchors.view(-1, 2)[None] # ratio ratio = wh[:, None] / anchors.view(-1, 2).cpu()[None] # ratio
m = torch.max(ratio, 1. / ratio).max(2)[0] # max ratio m = torch.max(ratio, 1. / ratio).max(2)[0] # max ratio
bpr = (m.min(1)[0] < thr).float().mean() # best possible recall bpr = (m.min(1)[0] < thr).float().mean() # best possible recall
mr = (m < thr).float().mean() # match ratio mr = (m < thr).float().mean() # match ratio

Loading…
Cancel
Save