Spaces:
Sleeping
Sleeping
| import requests | |
| import pyrebase | |
| import urllib | |
| from retinaface import RetinaFace | |
| from deepface import DeepFace | |
| from fastapi import FastAPI | |
| from dotenv import load_dotenv | |
| app = FastAPI() | |
| load_dotenv() | |
| def read_root(): | |
| return {"Hello": "World"} | |
| def verify_image(url1): | |
| firebaseConfig = 'KEYS' | |
| firebase = pyrebase.initialize_app(firebaseConfig) | |
| storage = firebase.storage() | |
| path = "Faces/" | |
| files = storage.bucket.list_blobs(prefix=path) | |
| flag = False | |
| # url1 = "https://api.time.com/wp-content/uploads/2023/04/shah-rukh-khan-time100-2023-1.jpg" | |
| for file in files: | |
| if (file.name.endswith(".jpg") or file.name.endswith(".jpeg")) : | |
| # print(file.name) | |
| url = storage.child(f"{file.name}").get_url(None) | |
| # print(url) | |
| with requests.get(url) as response: | |
| result = DeepFace.verify(f"{url1}",url, model_name="Facenet", distance_metric='cosine') | |
| if result['verified']: | |
| flag = True | |
| start_index = file.name.rfind('/') | |
| end_index = file.name.rfind('$') | |
| if start_index != -1 and end_index != -1: | |
| name = file.name[start_index + 1:end_index] | |
| return {"username": name} | |
| break | |
| if flag == False: | |
| print("Not Verified") | |
| return {"username": "Not Found"} | |