(gts_list, preds_list)
| 50 | |
| 51 | |
| 52 | def optimal_match(gts_list, preds_list): |
| 53 | num_gts = len(gts_list) |
| 54 | num_preds = len(preds_list) |
| 55 | cost_matrix = np.zeros((num_gts, num_preds)) |
| 56 | |
| 57 | for i in range(num_gts): |
| 58 | for j in range(num_preds): |
| 59 | cost_matrix[i, j] = distance.euclidean(gts_list[i][..., :2].flatten(), preds_list[j][..., :2].flatten()) |
| 60 | row_ind, col_ind = linear_sum_assignment(cost_matrix) |
| 61 | |
| 62 | return col_ind |
| 63 | |
| 64 | |
| 65 | def calculate_iou(box1, box2): |