from fastapi import APIRouter, UploadFile import cv2 import numpy as np from app.core.embedder import get_embedding from app.storage import save_known_face, load_embeddings, save_embeddings router = APIRouter() @router.post("/add") async def add_face(name: str, file: UploadFile): img_bytes = await file.read() img = np.frombuffer(img_bytes, np.uint8) img = cv2.imdecode(img, cv2.IMREAD_COLOR) # Salva foto del volto noto save_known_face(name, img) # Genera embedding emb = get_embedding(img) # Aggiorna database db = load_embeddings() db[name] = emb.tolist() save_embeddings(db) return { "status": "ok", "name": name, "embedding_len": len(emb) }