import cv2 import os from utils import * from face_detection import * from face_recognition import * from face_classifying import * # list all files in data/raw files = list_all_files("./data/raw", ["jpg", "webp"]) print(files) # process each files faces = [] for file_path in files: filename = file_path.split("/")[-1].split(".")[0] # load image img = cv2.imread(file_path) if img is None: print(f"ERROR: Could not read image at {file_path}") continue # detect faces file faces_data = detect_face_in_image(img, scale=1) # extract faces from file extracted_faces = extract_faces(faces_data, img, filename) faces += extracted_faces classified_faces = classify_faces(faces) # saving result by folders for person, faces in classified_faces.items(): dir_ = f"./data/results/{person}/" if not os.path.exists(dir_): os.makedirs(dir_) for face in faces: face.save(dir_) print("classified_faces: ", classified_faces) cv2.destroyAllWindows()