Face Recognition bagian 1

Dhea Laksmita Arsya Primananda
3 min readJan 9, 2020

--

Assalamualaikum wr.wb.

Pada kesempatan kali ini saya akan mencoba melakukan pengenalan wajah menggunakan Python dari dasar mengenal bagaimana komputer menangkap gambar.

Face recognition adalah sebuah teknologi pengenal wajah yang saat ini tengah dalam masa pengembangan. Teknologi ini memanfaatkan kecerdasan aritificial intelligence alias AI untuk mengenali wajah-wajah orang yang sudah terdaftar di database-nya. Singkatnya, dengan fitur face recognition ini kamera bisa mengenali siapa kalian dari data yang mereka simpan baik dalam cloud server maupun penyimpanan lainnya.

Prinsip kerja face recognition sebenarnya sangat sederhana dan mudah dimengerti. Kamera dan kecerdasan buatan akan melakukan scan wajah terdahap orang secara mendetail. Scan ini akan menyimpan semua data mulai dari bentuk mata, rahang, bibir, mulut, hidung, ukuran wajah, dan lain — lain yang ada di dalam wajah orang tersebut. Kemudian, datanya disimpan di dalam server khusus milik perusahaan atau pemilik face recognition ini.

Nantinya, setiap kali wajah orang yang datanya sudah di scan melewati atau melakukan lagi scan di kamera dengan database yang sama, data mereka akan muncul dan diverifikasi. Bisa dibilang, cara kerjanya mirip finger print namun dalam bentuk wajah. Uniknya hasil scan wajah tidak akan terpengaruhi oleh factor pencahayaan. Sehingga kamera melakukan scan dengan cara khusus agar bisa memperoleh data akurat tanpa membutuhkan pencahayaan yang baik.

Yuk langsung kita coba!

Part 1

  1. Install open-cv phyton
pip install opencv-python

2. Kemudian import terlebih dahulu modul yang diperlukan.

import cv2, time

3. Simpanlah koding dibawah ini dengan nama “tangkap.py” didalam sebuah folder yaitu c:/capture/tangkap.py.

import cv2, timecamera = 0
video = cv2.VideoCapture(camera,cv2.CAP_DSHOW)
a = 0while True:
a = a + 1
check, frame = video.read()print(check)
print(frame)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)cv2.imshow(“tangkap”, gray)
#cv2.waitKey(0)
key = cv2.waitKey(1)if key == ord(‘q’):break

print(a)
video.release()
cv2.destroyAllWindows()

4. Kemudian buka command prompt dan jalankan perintah berikut.

c:/capture/> python tangkap.py

5. Maka akan muncul hasil sebagai berikut.

nampak hasil tangkapan kamera dan matriks nilai pikselnya dengan konversi gambar ke warna gray. Kita telah mengetahui bagaimana komputer menangkap gambar video berupa matriks nilai piksel.

Part 2

  1. Unduh file yang tersedia di link https://github.com/opencv/opencv/tree/master/data/haarcascades, kemudian simpan file “haarcascade_frontalface_default.xml” di folder c:/capture untuk mendapatkan koding pengkelasan wajah yang telah disediakan oleh OpenCV.
  2. Simpanlah koding dibawah ini dengan nama “tangkapwajah.py” didalam folder yang sama yaitu c:/capture.
import cv2, time
camera = 0
video = cv2.VideoCapture(camera,cv2.CAP_DSHOW)
a = 0
faceDetect = cv2.CascadeClassifier(‘haarcascade_frontalface_default.xml’)
id = raw_input(‘masukkan id user ‘)while True:
a = a + 1
check, frame = video.read()
print(check)
print(frame)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces=faceDetect.detectMultiScale(gray,1.3,5);
for (x,y,w,h) in faces:
cv2.imwrite(“DataSet/User.”+str(id)+”.”+str(a)+”.jpg”,
gray[y:y+h,x:x+w])
cv2.rectangle(frame,(x,y),(x+w,y+h),(0,0,255),2)
cv2.imshow(“wajah”,frame)
#key = cv2.waitKey(1)
if (a>24):
break
print(a)
video.release()
cv2.destroyAllWindows()

3. Kemudian melalui command prompt jalankan perintah berikut.

c:/capture/>python tangkapwajah.py

4. Maka akan muncul pertanyaan, “masukkan id user”, lalu ketik angka “1”. akan muncul hasil gambar berikut.

Terlihat pada hasil kamera menampilkan stream wajah berwarna dan memiliki titik fokus pada object yang ada yang mengarah identifikasi pada wajah yang terdeteksi kamera.

5. Proses penangkapan wajah akan terus berjalan sampai dengan menekan ctrl+C. Dapat juga kita lihat hasil tangkapan layar pada file explorer di folder “c:/capture/DataSet” (folder yang penulis buat sebelumnya).

Sampai pada tahapan ini kita telah berhasil mencoba menangkap wajah dan membangkitkan data wajah untuk proses selanjutnya.

Silahkan ikuti materi berikutnya..

Sumber

https://medium.com/@986110101/pengenalan-wajah-1-6dc7d788fd07

https://medium.com/@986110101/pengenalan-wajah-2-5152fa2ee5da

https://www.centerklik.com/teknologi-face-recognition/

--

--