Source Code ini dibuat oleh kami, Kelompok 11, untuk memenuhi Tugas Besar 2 - Aljabar Linear dan Geometri IF2123 yaitu mengimplementasikan Aplikasi Nilai Eigen dan EigenFace pada Pengenalan Wajah (Face Recognition)
- Anggota Kelompok
- Implementasi Program
- Sistematika File
- Requirements
- Cara Menjalankan Program
- Screenshots
NIM | Nama |
---|---|
13521108 | Michael Leon Putra Widhi |
13521145 | Kenneth Dave Bahana |
13521172 | Nathan Tenka |
Pada Tugas Besar kali ini, program yang kami buat dapat digunakan untuk :
- Program melakukan pencocokan wajah dengan koleksi wajah yang ada di folder yang telah dipilih. Metrik untuk pengukuran kemiripan menggunakan eigenface + jarak euclidean.
- Program menampilkan 1 hasil pencocokan pada dataset yang paling dekat dengan gambar input atau memberikan pesan jika tidak didapatkan hasil yang sesuai.
- Program menghitung jarak euclidean dan nilai eigen & vektor eigen yang ditulis. Tidak boleh menggunakan fungsi yang sudah tersedia di dalam library atau Bahasa Python.
- [BONUS] Terdapat fitur kamera yang dapat mengenali wajah secara realtime menggunakan webcam ketika program dijalankan dengan mekanisme pengambilan gambar yang dibebaskan.
.
├─── doc
├─── src
│ ├─── GUI
│ │ ├─── images
│ │ └─── interface.py
| ├─── camRecord.py
| ├─── cobaOpenCV.py
| ├─── CobaQRDecomp.py
| ├─── Eigenface.py
| └─── webcam.py
├─── test
│ ├─── Dataset
│ ├─── Face Cam Data
│ └─── Gambar Uji
├─── Average face.jpg
├─── testImg.jpg
└─── README.md
Libraries
- Tkinter
- Pillow
- OpenCV
- Glob
- Schedule
- Time
- Threading
- Numpy
- Math
- Pastikan Python 3 versi terbaru sudah terpasang pada mesin eksekusi (Anda dapat mengecek versi Python 3 dengan menjalankan command
python --version
pada command prompt). - Lakukan pemindahan posisi folder directory ke source code dengan command
cd src
. - Jalankan run pada
interface.py
. - Jika berhasil dikompilasi, maka akan muncul tampilan GUI dan program siap digunakan.
- Masukkan dataset yang ingin dianalisis dengan menekan tombol
Choose File
pada bagian "Insert Your Dataset", Tunggu hingga proses pembacaan dan pengenalan dataset selesai dilakukan. - Masukkan gambar yang ingin dicari kemiripannya dengan menekan tombol
Choose File
pada bagian "Insert Your Image", Jika berhasil maka akan muncul gambar yang ditambahkan pada bagian "Test Image". - Sesaat kemudian akan muncul sebuah wajah dari dalam database yang memiliki kemiripan dari eigenface dengan jarak euclidean terpendek pada bagian "Closest Result" jika gambar yang sesuai ditemukan pada dataset yang dimasukkan.
- Proses perekaman gambar akan dimulai sesaat setelah Anda menekan tombol
Dataset
. - Tunggu proses perekaman berlangsung dan sebuah database berjumlah 30 gambar akan tersimpan di dalam folder
Face_Cam_Data
.
- Masukkan dataset yang ingin dianalisis dengan menekan tombol
Choose File
pada bagian "Insert Your Dataset", Tunggu hingga proses pembacaan dan pengenalan dataset selesai dilakukan. - Masukkan gambar dengan nama file
image_webcam.jpg
dengan menekan tombolChoose File
pada bagian "Insert Your Image", Jika berhasil maka akan muncul gambar yang ditambahkan pada bagian "Test Image". - Tekan tombol
Capture
dan sebuah wajah dari dalam database yang memiliki kemiripan dari eigenface dengan jarak euclidean terpendek akan muncul pada bagian "Closest Result". - Proses penghentian pengambilan gambar dapat dilakukan dengan menekan tombol
Stop
.