khartist29's picture
Update app.py
2a94b1b
raw
history blame
1.32 kB
import gradio as gr
from deepface import DeepFace
def verify(img1, img2):
result = DeepFace.verify(img1_path = img1, img2_path = img2, model_name = models[0])
return result
def detect(img):
dct = DeepFace.detectFace(img, model_name = models[0])
return dct
def analyze(img):
objs = DeepFace.analyze(img_path = img, actions = ['age', 'gender', 'race', 'emotion'])
return objs
demo = gr.Blocks()
with demo:
with gr.Tab("Face Detection"):
with gr.Row():
image_input = gr.Image(type = "numpy")
image_output = gr.Image()
image_button = gr.Button("Detect")
image_button.click(detect, inputs=image_input, outputs=image_output)
with gr.Tab("Verification"):
with gr.Row():
imgToVerify = gr.Image(type = "numpy")
imgToVerify2 = gr.Image(type = "numpy")
verifyOutput = gr.Textbox()
verifyImgButton = gr.Button("Verify with Images input")
verifyImgButton.click(verify, inputs=[imgToVerify2,imgToVerify], outputs = verifyOutput)
with gr.Tab("Face Analysis"):
with gr.Row():
imgToAnalyze = gr.Image(type = "numpy")
analyzeData = gr.JSON()
analyzeImgButton = gr.Button("Analyze this image")
analyzeImgButton.click(analyze, inputs = imgToAnalyze, outputs = analyzeData)
demo.launch()