Update app.py
Browse files
app.py
CHANGED
@@ -1,11 +1,33 @@
|
|
1 |
import gradio as gr
|
2 |
from deepface import DeepFace
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
4 |
def face_similarity(img1, img2):
|
5 |
result = DeepFace.verify(img1, img2)
|
6 |
similarity = result["distance"] # 낮을수록 더 유사
|
7 |
verified = result["verified"]
|
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
return f"유사도: {similarity}, 인증 결과: {verified}"
|
10 |
|
11 |
iface = gr.Interface(fn=face_similarity,
|
@@ -15,3 +37,21 @@ iface = gr.Interface(fn=face_similarity,
|
|
15 |
description="두 얼굴 이미지를 업로드해서 유사도를 측정합니다.")
|
16 |
|
17 |
iface.launch()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
import gradio as gr
|
2 |
from deepface import DeepFace
|
3 |
+
import pandas as pd
|
4 |
+
import os
|
5 |
+
|
6 |
+
# 결과를 저장할 리스트
|
7 |
+
results = []
|
8 |
+
|
9 |
+
def save_results(img1_path, img2_path, similarity):
|
10 |
+
# 결과를 글로벌 리스트에 추가
|
11 |
+
results.append([img1_path, img2_path, similarity])
|
12 |
+
# 결과를 pandas DataFrame으로 변환
|
13 |
+
df = pd.DataFrame(results, columns=['Image 1', 'Image 2', 'Similarity'])
|
14 |
+
# DataFrame을 CSV 파일로 저장
|
15 |
+
df.to_csv('similarity_results.csv', index=False)
|
16 |
|
17 |
def face_similarity(img1, img2):
|
18 |
result = DeepFace.verify(img1, img2)
|
19 |
similarity = result["distance"] # 낮을수록 더 유사
|
20 |
verified = result["verified"]
|
21 |
|
22 |
+
# 이미지 파일 저장
|
23 |
+
img1_path = f"img1_{len(results)}.jpg"
|
24 |
+
img2_path = f"img2_{len(results)}.jpg"
|
25 |
+
img1.save(img1_path)
|
26 |
+
img2.save(img2_path)
|
27 |
+
|
28 |
+
# 결과 저장
|
29 |
+
save_results(img1_path, img2_path, similarity)
|
30 |
+
|
31 |
return f"유사도: {similarity}, 인증 결과: {verified}"
|
32 |
|
33 |
iface = gr.Interface(fn=face_similarity,
|
|
|
37 |
description="두 얼굴 이미지를 업로드해서 유사도를 측정합니다.")
|
38 |
|
39 |
iface.launch()
|
40 |
+
|
41 |
+
# import gradio as gr
|
42 |
+
# from deepface import DeepFace
|
43 |
+
|
44 |
+
# def face_similarity(img1, img2):
|
45 |
+
# result = DeepFace.verify(img1, img2)
|
46 |
+
# similarity = result["distance"] # 낮을수록 더 유사
|
47 |
+
# verified = result["verified"]
|
48 |
+
|
49 |
+
# return f"유사도: {similarity}, 인증 결과: {verified}"
|
50 |
+
|
51 |
+
# iface = gr.Interface(fn=face_similarity,
|
52 |
+
# inputs=[gr.inputs.Image(shape=(224, 224)), gr.inputs.Image(shape=(224, 224))],
|
53 |
+
# outputs="text",
|
54 |
+
# title="얼굴 유사도 측정",
|
55 |
+
# description="두 얼굴 이미지를 업로드해서 유사도를 측정합니다.")
|
56 |
+
|
57 |
+
# iface.launch()
|