dskahill's picture
Upload 2 files
d3dae3f
"""import os
os.environ["SM_FRAMEWORK"] = "tf.keras"
os.environ['CUDA_VISIBLE_DEVICES'] = '0'
os.environ['NUMBAPRO_NVVM']='/share/pkg.7/cuda/11.2/install/nvvm/lib64/libnvvm.so'
os.environ['NUMBAPRO_LIBDEVICE']='/share/pkg.7/cuda/11.2/install/nvvm/libdevice/'
import segmentation_models as sm
os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'"""
import tensorflow as tf
import keras
import keras_vggface
from keras_vggface.vggface import VGGFace
import mtcnn
import numpy as np
import matplotlib as mpl
from keras.utils.data_utils import get_file
import dlib
import keras_vggface.utils
import PIL
import os.path
os.environ['KMP_DUPLICATE_LIB_OK']='True'
from deepface import DeepFace
import pandas as pd
import sys
import gradio as gr
from PIL import Image
models = [
"VGG-Face",
"Facenet",
"Facenet512",
"OpenFace",
"DeepFace",
"DeepID",
"ArcFace",
"Dlib",
"SFace",
]
def db_find(path, db="database", model=0, thresh=.25):
m = model
dfs = DeepFace.find(img_path=path, db_path=db, model_name=models[m], detector_backend="mtcnn", enforce_detection=False)
df = dfs[0].copy()
df = df.drop(columns=['source_x', 'source_y', 'source_w', 'source_h'])
df['id'] = df['identity'].str.strip("atfalmafkoda_unzip/database/person").str.split("/")
df['id'] = df['id'].apply(lambda x: x[0])
img_len = df.loc[df["VGG-Face_cosine"] < .3].shape[0]
imgs = df.head(img_len)['identity'].tolist()
return df.loc[df["VGG-Face_cosine"] < .3], imgs
demo = gr.Interface(fn=db_find, inputs="image", outputs=["dataframe", "gallery"])
demo.launch()