From 4440d82d440fcd8a23df66a91d56456831ccfb23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=9Eefik=20Serangil?= Date: Mon, 25 May 2020 17:23:15 +0300 Subject: [PATCH] distance in find function implemented --- deepface/DeepFace.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/deepface/DeepFace.py b/deepface/DeepFace.py index 35e4f5b..3cb97a0 100644 --- a/deepface/DeepFace.py +++ b/deepface/DeepFace.py @@ -435,7 +435,16 @@ def find(img_path, db_path distances = [] for index, instance in df.iterrows(): source_representation = instance["representation"] - distance = dst.findCosineDistance(source_representation, target_representation) + + if distance_metric == 'cosine': + distance = dst.findCosineDistance(source_representation, target_representation) + elif distance_metric == 'euclidean': + distance = dst.findEuclideanDistance(source_representation, target_representation) + elif distance_metric == 'euclidean_l2': + distance = dst.findEuclideanDistance(dst.l2_normalize(source_representation), dst.l2_normalize(target_representation)) + else: + raise ValueError("Invalid distance_metric passed - ", distance_metric) + distances.append(distance) df["distance"] = distances