Face RecognitionPython

การประมวลผลรู้จำใบหน้า Face Recognition ด้วย Python

การเตรียม Environment สำหรับประมวลผลระบบตรวจจับใบหน้าเบื้องต้นด้วย Python และ Face Recognition

มาดูบทเรียนเกี่ยวกับ Python กันหน่อยคือการเตรียม Environment สำหรับประมวลผลระบบตรวจจับใบหน้าเบื้องต้นด้วย Python และ Face Recognition

หลายคน Request มาเยอะมากว่า อยากให้เพิ่มบทเรียนของ Go และ Python เข้ามาหน่อยอีกอย่างก็ไม่ค่อยได้อัพเด็ตกันนานมากกับบทความของ Python ก็เลยหยิบเรื่องพวกนี้มาทำบทเรียนให้แทนล่ะกัน

ระบบเริ่มต้นนี้คือ Python กับการจดจำ และประมวลผลใบหน้า ซึ่งเราจะใช้ Library หลักคือ https://github.com/ageitgey/face_recognition เนื่องจากเค้าได้ทำไว้ให้เราเรียกใช้ได้อย่างสะดวกเขียนคำสั่งไม่กี่บรรทัด ซ้ำยังทำงานร่วมกับ OpenCV ได้อีกด้วย

ก่อนอื่นเรามาเตรียม Environment กันก่อนดีกว่า สิ่งที่เราต้องมีคือ Visual Studio Code ซึ่งเราไปดาวน์โหลดมาได้เลยจาก https://code.visualstudio.com

เมื่อติดตั้งแล้ว เราต้องลง Python3, Cmake, Dlib และ OpenCV ตามลำดับซึ่งสำหรับผมใช้ Mac OSx เลยต้องลง Library เหล่านี้ผ่าน Home Brew https://brew.sh/index_th ก็ไม่ยากอะไรแค่เปิด Terminal ขึ้นมาแล้วพิมพ์ใน $ ของ Terminal ได้เลย:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

ถ้าติดตั้งเสร็จแล้วก็จะได้เรียกชุดติดตั้งผ่านเจ้านี่ได้สบายๆ

เมื่อติดตั้ง Home Brew เป็นที่เรียบร้อยแล้วก็ได้เวลาที่เราจะลง Library ที่ต้องใช้งานสักทีนั่นคือ:

$ brew install python

นั่นคือการติดตั้ง Python ซึ่งผมจะลง Python 3

ถ้าลง Python แล้วเราจะเรียกใช้ คำสั่ง pip หรือ pip3 ได้ซึ่งเป็น Python Package Index (PyPI) เป็นคลังโปรแกรมและไลบรารีเสริมของ Python โดย Python เวอร์ชั่นใหม่ ๆ สามารถสั่งติดตั้งโมดูลจาก PyPI ได้ด้วยคำสั่ง pip หรือ pip3 ในตัวอย่างคือเราต้องติดตั้ง cmake

$ pip3 install cmake

ถ้าติดตั้งเสร็จแล้วก็ให้เราเรียกติดตั้ง Dlib ซึ่งเป็น Native Library ภาษา C++ library ซึ่งใน Package ของมันจะมี Machine learning algorithms ชุดคำสั่ง และ เครื่องมือต่างๆในการสร้างโปรแกรมที่ซับซ้อน อย่างระบบการจดจำใบหน้าให้ง่าย เช่น Face Landmark เป็นต้น

$ pip3 install dlib

ทีนี้เผื่อจะทำ Project อื่นๆ ให้เราลงติดตั้งไว้ก่อนนั่นคือ OpenCV

$ pip3 install opencv-python

สุดท้ายคือ Face Recognition พระเอกของเรา

$ pip3 install face_recognition

มาทดสอบกันหน่อยว่า เราสามารถ Develop ได้ไหมไปหาภาพมาหน่อยแล้วกัน ภาพที่ผมใช้คือภาพผมเอง

บันทึกไว้ Folder เดียวกับไฟล์ python ของเราในตัวอย่างผมตั้งชื่อไฟล์ว่า banyapon.jpg ให้เปิด Visual Studio Code ขึ้นมาไปที่เมนู Add-on ติดตั้ง Python ให้เรียบร้อยอันไหนก็ได้ครับเหมือนกันหมด แล้วสร้างไฟล์ ชื่อ test.py ขึ้นมา

import face_recognition

image = face_recognition.load_image_file("banyapon.jpg")
face_location = face_recognition.face_locations(image)

print(face_location)
print(f"Number of Face:{len(face_location)}")

ให้คลิกขวาที่ Folder ใน Solution Work Space เลือก “Run Python File in Terminal” เพื่อดูผลลัพธ์ใน Terminal

ให้เราไปดูว่ามันนับจำนวนใบหน้าของคนในภาพได้ใน Terminal ได้กี่ภาพซึ่งคำตอบคือ 1 ถูกต้อง

ลองไปหารูปภาพของใบหน้าหลายๆ ภาพมาใช้งานหน่อยสิว่ามันประมวลผลได้ถูกต้องไหม:

ชื่อไฟล์คือ beegees.jpg เราลองแก้ไข Code เป็น:

import face_recognition

image = face_recognition.load_image_file("beegees.jpg")
face_location = face_recognition.face_locations(image)

print(face_location)
print(f"Number of Face:{len(face_location)}")

ผลลัพธ์คือ:

บทเรียนต่อไป: การดึงและจำแนกใบหน้า Pull Face ด้วย Python และ Face Recognition

Asst. Prof. Banyapon Poolsawas

อาจารย์ประจำสาขาวิชาการออกแบบเชิงโต้ตอบ และการพัฒนาเกม วิทยาลัยครีเอทีฟดีไซน์ & เอ็นเตอร์เทนเมนต์เทคโนโลยี มหาวิทยาลัยธุรกิจบัณฑิตย์ ผู้ก่อตั้ง บริษัท Daydev Co., Ltd, (เดย์เดฟ จำกัด)

Related Articles

Back to top button

Adblock Detected

เราตรวจพบว่าคุณใช้ Adblock บนบราวเซอร์ของคุณ,กรุณาปิดระบบ Adblock ก่อนเข้าอ่าน Content ของเรานะครับ, ถือว่าช่วยเหลือกัน