Spaces:
Paused
Paused
| import os | |
| import sys | |
| import cv2 | |
| import argparse | |
| from insightface_func.face_detect_crop_single import Face_detect_crop | |
| from pathlib import Path | |
| from tqdm import tqdm | |
| def main(args): | |
| app = Face_detect_crop(name='antelope', root='./insightface_func/models') | |
| app.prepare(ctx_id= 0, det_thresh=0.6, det_size=(640,640)) | |
| crop_size = 224 | |
| dirs = os.listdir(args.path_to_dataset) | |
| for i in tqdm(range(len(dirs))): | |
| d = os.path.join(args.path_to_dataset, dirs[i]) | |
| dir_to_save = os.path.join(args.save_path, dirs[i]) | |
| Path(dir_to_save).mkdir(parents=True, exist_ok=True) | |
| image_names = os.listdir(d) | |
| for image_name in image_names: | |
| try: | |
| image_path = os.path.join(d, image_name) | |
| image = cv2.imread(image_path) | |
| cropped_image, _ = app.get(image, crop_size) | |
| cv2.imwrite(os.path.join(dir_to_save, image_name), cropped_image[0]) | |
| except: | |
| pass | |
| if __name__ == "__main__": | |
| parser = argparse.ArgumentParser() | |
| parser.add_argument('--path_to_dataset', default='./VggFace2/VGG-Face2/data/preprocess_train', type=str) | |
| parser.add_argument('--save_path', default='./VggFace2-crop', type=str) | |
| args = parser.parse_args() | |
| main(args) | |