OpenCV เป็น โปรแกรม OpenSource ยอดนิยม สำหรับ Image และ Video Version ที่ติดตั้งให้ติดตั้งหลังจาก ติดตั้ง Python ก่อน ใช้ Version 3 ถ้ามี Nvidia ให้ลง Version ที่ Support Cura จะได้ ความเร็วในการ run แต่ติดตั้งง่ายให้ ใช้ Intel
การติดตั้ง Python ให้ ติดตั้งจาก Tool ของ Anaconda จะง่ายสุด
เวลา run อาจจะใช้ Jupyter notebook หรือไม่นั้นก็ Save เป็น facerec.py และ run จาก command line
python facerec.py ก็ได้
Code นี้ทดลองใน OSX ต้องมี กล้อง webcam ด้วย Code นี้ยังไม่ใช่ AI แต่เป็น Algorithm Detect หน้า
# cv2 เป็นตัวแทนของ opencv3
import cv2
import sys
#haarcascade_frontalface_default.xml ไป download from opencv website
cascPath = "haarcascade_frontalface_default.xml"
print cascPath
faceCascade = cv2.CascadeClassifier(cascPath)
# เปิด กล้อง
cv2.namedWindow("preview")
video_capture = cv2.VideoCapture(0)
# loop สำหรับ Recognition
while True:
# ที่ละ Frame
ret, frame = video_capture.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces = faceCascade.detectMultiScale(
gray,
scaleFactor=1.1,
minNeighbors=5,
minSize=(30, 30)
)
# วาดสี่เหลี่ยมหน้า
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
# แสดงรูป
cv2.imshow('Video', frame)
# กด x ออก
if cv2.waitKey(1) & 0xFF == ord('x'):
break
#ปิด Video
video_capture.release()
cv2.destroyAllWindows()