souvikmajumder26 / Any-Face-Clustering

📸 Face Clustering Engine developed using OpenCV & DBSCAN, deployed as a Streamlit Web App to deliver uploaded images grouped according to the individual unique faces in them.
MIT License
6 stars 2 forks source link
any-face-clustering clustering computer-vision dbscan dbscan-clustering deep-learning dlib face-clustering face-detection face-recognition google-colab machine-learning opencv python python3 streamlit streamlit-webapp unlabeled-data unsupervised-learning webapp

Any Face Clustering:
Automatically Group your Images by Faces with an
end-to-end Artificial Intelligence App

                    Jupyter Python Dependencies GitHub Issues Contributions welcome License


Overview

A Face Clustering Engine has been developed utilizing OpenCV, Face Recognition & DBSCAN (scikit-learn) python libraries. The project has been deployed as a Streamlit Web App which provides users the facility to upload their own images (or images they want to test with) and be delivered with the images grouped according to the individual unique faces contained in them.

A Face Clustering Engine in essence performs grouping of user-provided images according to the unique faces contained in them. Unsupervised Learning being at the core of this Face Clustering Engine enables it to cluster/group images by faces which it hasn't even seen (trained on) yet. Thus it is applicable to Any Face.


Table of Contents

  1. Usage / User Interaction with the Project (follow any one)
  2. Demo video of the Streamlit Web App
  3. Motivation and Use Cases
  4. Detailed Project Code with Explanation
  5. Citing
  6. Dependencies
  7. Acknowledgement

1. Usage / User Interaction with the Project (follow any one)

💡 To launch the "Any Face Clustering" Streamlit Web App...

a) Follow these steps to open the Project in Google Colab Notebook:

b) Follow these steps to open the Project Locally:


2. [Demo] Follow this video on how to interact with the Streamlit App after launching it:

Feel free to interact with the Streamlit Web App...

💡 Upload images of several faces (make sure to upload atleast 3 images containing the same face)... or you can choose to use the Unlabelled_test_images by downloading the folder and then uploading the images to the Web App to experience how the project works.

https://user-images.githubusercontent.com/86871718/171251974-bd3312c7-b407-4ca6-b4ee-8f59b4b742e4.mp4


3. Motivation and Use Cases


4. Detailed Project Code with Explanation


5. Citing

@misc{Souvik2022,
  Author = {Souvik Majumder},
  Title = {Any Face Clustering},
  Year = {2022},
  Publisher = {GitHub},
  Journal = {GitHub repository},
  Howpublished = {\url{https://github.com/souvikmajumder26/Any-Face-Clustering}}
}

6. Dependencies


7. Acknowledgement