basic-face-id / app.py
Dhritiman Sagar
Initial commit
019de41
Raw
History Blame Contribute Delete
1.19 kB
import datasets
from transformers import AutoFeatureExtractor, AutoModelForImageClassification
import gradio as gr
import torch
import transformers
from sklearn.metrics.pairwise import cosine_similarity
from sklearn.metrics import silhouette_score
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("clip-ViT-L-14")
def predict(im1, im2):
embeddings = [model.encode(im1), model.encode(im2)]
sim = cosine_similarity(embeddings[0].reshape(1, -1), embeddings[1].reshape(1, -1)).squeeze()
if sim > 0.80:
return sim, "SAME PERSON, UNLOCK PHONE"
else:
return sim, "DIFFERENT PEOPLE, DON'T UNLOCK"
import gradio as gr
interface = gr.Interface(fn=predict,
inputs=[gr.Image(type="pil", source="webcam"),
gr.Image(type="pil", source="webcam")],
outputs=[gr.Number(label="Similarity"),
gr.Textbox(label="Message")],
title='Basic Face-Id',
description='A very simple face-id implementation using sentence-transformer embeddings.',
)
interface.launch()