reab5555 commited on
Commit
f89004e
·
verified ·
1 Parent(s): 58b948c

Update face_analysis.py

Browse files
Files changed (1) hide show
  1. face_analysis.py +19 -1
face_analysis.py CHANGED
@@ -4,6 +4,7 @@ from facenet_pytorch import InceptionResnetV1
4
  from sklearn.cluster import DBSCAN
5
  import os
6
  import shutil
 
7
 
8
  device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
9
  model = InceptionResnetV1(pretrained='vggface2').eval().to(device)
@@ -37,4 +38,21 @@ def organize_faces_by_person(embeddings_by_frame, clusters, aligned_faces_folder
37
  os.makedirs(person_folder, exist_ok=True)
38
  src = os.path.join(aligned_faces_folder, f"frame_{frame_num}_face.jpg")
39
  dst = os.path.join(person_folder, f"frame_{frame_num}_face.jpg")
40
- shutil.copy(src, dst)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  from sklearn.cluster import DBSCAN
5
  import os
6
  import shutil
7
+ import mediapipe as mp
8
 
9
  device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
10
  model = InceptionResnetV1(pretrained='vggface2').eval().to(device)
 
38
  os.makedirs(person_folder, exist_ok=True)
39
  src = os.path.join(aligned_faces_folder, f"frame_{frame_num}_face.jpg")
40
  dst = os.path.join(person_folder, f"frame_{frame_num}_face.jpg")
41
+ shutil.copy(src, dst)
42
+
43
+
44
+ def draw_facial_landmarks(image, landmarks):
45
+ mp_face_mesh = mp.solutions.face_mesh
46
+ face_mesh = mp_face_mesh.FaceMesh(static_image_mode=False, max_num_faces=1, min_detection_confidence=0.6)
47
+ mp_drawing = mp.solutions.drawing_utils
48
+ mp_face_mesh = mp.solutions.face_mesh
49
+ drawing_spec = mp_drawing.DrawingSpec(thickness=1, circle_radius=1)
50
+
51
+ if landmarks:
52
+ mp_drawing.draw_landmarks(
53
+ image=image,
54
+ landmark_list=landmarks,
55
+ connections=mp_face_mesh.FACEMESH_TESSELATION,
56
+ landmark_drawing_spec=drawing_spec,
57
+ connection_drawing_spec=drawing_spec)
58
+ return image