Spaces:
Configuration error
Configuration error
| import torch | |
| import numpy as np | |
| from app.config import EDGEFACE_WEIGHTS, EDGEFACE_MODEL_NAME | |
| from app.services.edgeface_model import get_model | |
| from app.utils.preprocess import preprocess_face | |
| # ---------------- تحميل الموديل مرة واحدة بس ---------------- | |
| _net = get_model(EDGEFACE_MODEL_NAME, fp16=False) | |
| _net.load_state_dict(torch.load(EDGEFACE_WEIGHTS, map_location="cpu")) | |
| _net.eval() | |
| def get_embedding(face_bgr: np.ndarray) -> np.ndarray: | |
| """بياخد صورة وجه (crop بصيغة BGR) ويرجع الـ embedding بتاعه (512,)""" | |
| face_tensor = preprocess_face(face_bgr) | |
| with torch.no_grad(): | |
| emb = _net(face_tensor).squeeze().numpy().astype(np.float32) | |
| return emb | |