Pyrhon - Lanmark pada Wajah
Program dasar untuk membaca lanmark wajah (dapat dikembangkan Untuk mengenali Orang)
Programnya :
import dlib
import cv2
import numpy as np
# Inisialisasi detektor wajah dlib dan prediktor landmark
detector = dlib.get_frontal_face_detector()
predictor = dlib.shape_predictor("shape_predictor_68_face_landmarks.dat") # Download file dari dlib.net
# Fungsi untuk menggambar landmark pada wajah
def draw_landmarks(image, landmarks):
for n in range(landmarks.num_parts):
x = landmarks.part(n).x
y = landmarks.part(n).y
cv2.circle(image, (x, y), 2, (0, 255, 0), -1)
# Membuka webcam atau file video
cap = cv2.VideoCapture(0) # Ganti dengan path video jika perlu
while True:
ret, frame = cap.read()
if not ret:
break
# Konversi ke skala abu-abu untuk deteksi wajah
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# Deteksi wajah
faces = detector(gray)
for face in faces:
# Prediksi landmark
landmarks = predictor(gray, face)
# Gambar kotak di sekitar wajah
x1, y1, x2, y2 = face.left(), face.top(), face.right(), face.bottom()
cv2.rectangle(frame, (x1, y1), (x2, y2), (255, 0, 0), 2)
# Gambar landmark pada wajah
draw_landmarks(frame, landmarks)
# Tampilkan hasil
cv2.imshow("Face Landmarks", frame)
# Tekan 'q' untuk keluar
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# Bersihkan resources
cap.release()
cv2.destroyAllWindows()
