From b6f97a64fffce9f363f5f0aa6b2cb907c354fcec Mon Sep 17 00:00:00 2001 From: Sefik Ilkin Serengil Date: Mon, 10 Feb 2020 17:01:29 +0300 Subject: [PATCH 1/4] read me --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 06cd396..d4408a6 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![Downloads](https://pepy.tech/badge/deepface)](https://pepy.tech/project/deepface) -**deepface** is a lightweight python based facial analysis framework including face recognition and demography. You can use the framework with a just few lines of codes. +**deepface** is a lightweight python based facial analysis framework including face recognition and demography (age, gender, emotion and race). You can use the framework with a just few lines of codes. # Face Recognition From 81f4440be2ab155fdeeec4c8db54ce5ea598bc70 Mon Sep 17 00:00:00 2001 From: Sefik Ilkin Serengil Date: Mon, 10 Feb 2020 17:11:58 +0300 Subject: [PATCH 2/4] file extension --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d4408a6..fbddb20 100644 --- a/README.md +++ b/README.md @@ -67,8 +67,8 @@ Deepface also offers facial attribute analysis including [`age`](https://sefiks. ```python from deepface import DeepFace -demography = DeepFace.analyze("img.zip") #passing nothing as 2nd argument will find everything -#demography = DeepFace.analyze("img.zip", ['age', 'gender', 'race', 'emotion']) #identical to above line +demography = DeepFace.analyze("img.jpg") #passing nothing as 2nd argument will find everything +#demography = DeepFace.analyze("img.jpg", ['age', 'gender', 'race', 'emotion']) #identical to above line ``` Analysis function returns a json object. From efd0933cec566bfad45fb3e7628a82d7eebfbdba Mon Sep 17 00:00:00 2001 From: Sefik Ilkin Serengil Date: Mon, 10 Feb 2020 17:12:54 +0300 Subject: [PATCH 3/4] license --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fbddb20..0612f2d 100644 --- a/README.md +++ b/README.md @@ -147,4 +147,4 @@ There are many ways to support a project - starring⭐️ the GitHub repos is ju # Licence -Chefboost is licensed under the MIT License - see [`LICENSE`](https://github.com/serengil/deepface/blob/master/LICENSE) for more details. +Deepface is licensed under the MIT License - see [`LICENSE`](https://github.com/serengil/deepface/blob/master/LICENSE) for more details. From 48e5dee67f326b914e9c2c581945233a52cc170b Mon Sep 17 00:00:00 2001 From: Sefik Ilkin Serengil Date: Mon, 10 Feb 2020 17:15:11 +0300 Subject: [PATCH 4/4] face recognition models comparision --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0612f2d..8bca3d7 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,8 @@ facenet_result = DeepFace.verify("img1.jpg", "img2.jpg", model_name = "Facenet") openface_result = DeepFace.verify("img1.jpg", "img2.jpg", model_name = "OpenFace") ``` +VGG-Face has the highest accuracy score but it is not convenient for real time studies because of its complex structure. Facenet is a complex model as well. On the other hand, OpenFace has a close accuracy score but it performs the fastest. That's why, OpenFace is much more convenient for real time studies. + ## Similarity These models actually find the vector embeddings of faces. Decision of verification is based on the distance between vectors. Distance could be found by different metrics such as [`Cosine Similarity`](https://sefiks.com/2018/08/13/cosine-similarity-in-machine-learning/), Euclidean Distance and L2 form. The default configuration finds the **cosine similarity**. You can alternatively set the similarity metric while verification as demostratred below. @@ -34,8 +36,6 @@ result = DeepFace.verify("img1.jpg", "img2.jpg", model_name = "VGG-Face", distan result = DeepFace.verify("img1.jpg", "img2.jpg", model_name = "VGG-Face", distance_metric = "euclidean_l2") ``` -VGG-Face has the highest accuracy score but it is not convenient for real time studies because of its complex structure. Facenet is a complex model as well. On the other hand, OpenFace has a close accuracy score but it performs the fastest. That's why, OpenFace is much more convenient for real time studies. - ## Verification Verification function returns a tuple including boolean verification result, distance between two faces and max threshold to identify.