AI ตรวจจับใบหน้าด้วย OpenCV แบบเรียลไทม์: เริ่มต้นง่าย ๆ ด้วย Python

สวัสดีค่ะ ! บทความนี้เราจะพาไปรู้จักกับการใช้ OpenCV (Open Source Computer Vision Library) เพื่อใช้ในการตรวจจับใบหน้าแบบเรียลไทม์ผ่านกล้องเว็บแคมกัน โดยเราจะใช้เทคนิค Haar Cascade Classifier ซึ่งเป็นหนึ่งในโมเดลคลาสสิกของ Computer Vision ที่สามารถใช้ได้รวดเร็วและเบาเครื่อง เหมาะสำหรับผู้เริ่มต้น AI และ Deep Learningมากๆเลยค่ะ เพราะทั้งสะดวกและไม่ซับซ้อนด้วย ตัวอย่างCODE import cv2 face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml') cap = cv2.VideoCapture(0) while True: ret, frame = cap.read() gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # แปลงภาพเป็นขาวดำ faces = face_cascade.detectMultiScale(gray, 1.1, 4) for (x, y, w, h) in faces: cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2) cv2.imshow('Face Detection', frame) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows()

Apr 10, 2025 - 17:19
 0
AI ตรวจจับใบหน้าด้วย OpenCV แบบเรียลไทม์: เริ่มต้นง่าย ๆ ด้วย Python

สวัสดีค่ะ !
บทความนี้เราจะพาไปรู้จักกับการใช้ OpenCV (Open Source Computer Vision Library) เพื่อใช้ในการตรวจจับใบหน้าแบบเรียลไทม์ผ่านกล้องเว็บแคมกัน

โดยเราจะใช้เทคนิค Haar Cascade Classifier ซึ่งเป็นหนึ่งในโมเดลคลาสสิกของ Computer Vision ที่สามารถใช้ได้รวดเร็วและเบาเครื่อง เหมาะสำหรับผู้เริ่มต้น AI และ Deep Learningมากๆเลยค่ะ เพราะทั้งสะดวกและไม่ซับซ้อนด้วย

ตัวอย่างCODE

import cv2


face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')


cap = cv2.VideoCapture(0)

while True:

    ret, frame = cap.read()
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)  # แปลงภาพเป็นขาวดำ


    faces = face_cascade.detectMultiScale(gray, 1.1, 4)


    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)


    cv2.imshow('Face Detection', frame)


    if cv2.waitKey(1) & 0xFF == ord('q'):
        break


cap.release()
cv2.destroyAllWindows()