def match_and_make_predictions()

in isc/descriptor_matching.py [0:0]


def match_and_make_predictions(xq, query_image_ids, xb, db_image_ids, num_results, ngpu=-1, metric=faiss.METRIC_L2):
    lims, dis, ids = search_with_capped_res(xq, xb, num_results, metric=metric)
    nq = len(xq)

    if metric == faiss.METRIC_L2:
        # use negated distances as scores
        dis = -dis

    predictions = [
        PredictedMatch(
            query_image_ids[i],
            db_image_ids[ids[j]],
            dis[j]
        )
        for i in range(nq)
        for j in range(lims[i], lims[i + 1])
    ]
    return predictions