farkmu45 commited on
Commit
fb3421c
β€’
1 Parent(s): 74c5514

Initial commit

Browse files
Files changed (5) hide show
  1. README.md +2 -2
  2. app.py +20 -0
  3. face_data.py +11 -0
  4. requirements.txt +3 -0
  5. start.py +3 -0
README.md CHANGED
@@ -1,11 +1,11 @@
1
  ---
2
- title: Attendance Api
3
  emoji: πŸŒ–
4
  colorFrom: yellow
5
  colorTo: yellow
6
  sdk: gradio
7
  sdk_version: 4.20.1
8
- app_file: app.py
9
  pinned: false
10
  ---
11
 
 
1
  ---
2
+ title: Attendance API
3
  emoji: πŸŒ–
4
  colorFrom: yellow
5
  colorTo: yellow
6
  sdk: gradio
7
  sdk_version: 4.20.1
8
+ app_file: start.py
9
  pinned: false
10
  ---
11
 
app.py ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from fastapi import FastAPI
2
+ from face_data import FaceData
3
+ from fastapi.encoders import jsonable_encoder
4
+ from fastapi.responses import JSONResponse
5
+ from deepface import DeepFace
6
+
7
+ app = FastAPI()
8
+
9
+ def verify_face(face_data: FaceData):
10
+ result = False
11
+ try:
12
+ verify_result = DeepFace.verify(face_data.image_url, face_data.target_image)
13
+ result = result['verified']
14
+ except:
15
+ result = False
16
+ return JSONResponse(content=jsonable_encoder(result))
17
+
18
+ @app.post("/")
19
+ def process(face_data: FaceData):
20
+ return verify_face(face_data)
face_data.py ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from pydantic import BaseModel
2
+
3
+ class FaceData(BaseModel):
4
+ image: str
5
+ target_image: str
6
+
7
+ def to_dict(self):
8
+ return {
9
+ 'image': self.image,
10
+ 'target_image': self.target_image,
11
+ }
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ fastapi
2
+ uvicorn[standard]
3
+ deepface
start.py ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ import subprocess
2
+
3
+ subprocess.run("uvicorn app:app --host 0.0.0.0 --port 7860", shell=True)