13
PERANCANGAN SISTEM APLIKASI PENCATATAN KEHADIRAN SISWA MENGGUNAKAN PENGENALAN CITRA WAJAH DENGAN NOTIFIKASI SMS DAN EMAIL Tri Rosanti  Binus University, Jakarta, DKI Jakarta, Indonesia Alexander A S Gunawan  BinusUniversity, Jakarta, DKI Jakarta, Indonesia Afan Galih Salman  BinusUniversity, Jakarta, DKI Jakarta, Indonesia Abstract Recording student attendance is one of the highlights of the education system, schools are generally still use the system for recording attendance manually. Attendance manual itself example is the Calling one by one student on the attendance sheet has been provided in accordance with the name of each siswa.Masih many weaknesses in the system of recording attendance manually, among others, the student can manipulate the data so that the presence of which will process the data be difficult to determine whether the student is present in school or not. Besides manual recording system is also ineffective time and effort. And  parents will also be difficult to check / know the presence of their children this will have an impact on the confidence of parents to the school. So that required an attendance application more accurate and effective. In this final project an Application Record Attendance of students using automatic face recognition system will be developed, where the system will record the student is detected and sends the message was detected in the student trustee. Aplikasiini made in hopes of reducing and even eliminating the manipulation of student attendance data and make the system more effective student attendance and accurate. This is because the face is one of the unique parts of the human face, the students will be different from other students face. Keyword:  face recognition, email , webcam, notification,  sms,  AT command , automatic attendace

2012-1-01412-MTIF JuralIlmiah001

Embed Size (px)

Citation preview

PERANCANGAN SISTEM APLIKASI PENCATATAN KEHADIRAN SISWA MENGGUNAKAN PENGENALAN CITRA WAJAH DENGAN NOTIFIKASI SMS DAN EMAIL

Tri RosantiBinus University, Jakarta, DKI Jakarta, Indonesia

Alexander A S GunawanBinusUniversity, Jakarta, DKI Jakarta, Indonesia

Afan Galih SalmanBinusUniversity, Jakarta, DKI Jakarta, Indonesia

Abstract

Recording student attendance is one of the highlights of the education system, schools are generally still use the system for recording attendance manually. Attendance manual itself example is the Calling one by one student on the attendance sheet has been provided in accordance with the name of each siswa.Masih many weaknesses in the system of recording attendance manually, among others, the student can manipulate the data so that the presence of which will process the data be difficult to determine whether the student is present in school or not. Besides manual recording system is also ineffective time and effort. And parents will also be difficult to check / know the presence of their children this will have an impact on the confidence of parents to the school. So that required an attendance application more accurate and effective.In this final project an Application Record Attendance of students using automatic face recognition system will be developed, where the system will record the student is detected and sends the message was detected in the student trustee. Aplikasiini made in hopes of reducing and even eliminating the manipulation of student attendance data and make the system more effective student attendance and accurate. This is because the face is one of the unique parts of the human face, the students will be different from other students face.

Keyword: face recognition, email, webcam, notification, sms, AT command, automatic attendace

Abstrak

Pencatatan kehadiran siswa merupakan salah satu hal penting dari suatu sistem pendidikan, sekolah-sekolah pada umumnya masih menggunakan sistem pencatatan kehadiran siswa secara manual. Pencatatan kehadiran manual sendiri contohnya adalah dengan memangil satu persatu siswa pada lembar absensi yang telah disediakan sesuai dengan nama masing-masing siswa.Masih banyak kelemahan dalam sistem pencatatan kehadiran secara manual tersebut antara lain siswa dapat memanipulasi data kehadiran tersebut sehingga pihak yang akan mengolah data tersebut akan kesulitan menentukan apakah siswa tersebut memang hadir di sekolah atau tidak. Selain itu sistem pencatatan manual ini juga tidak efektif waktu dan usaha. Serta orang tua juga akan kesulitan untuk mengecek / mengetahui kehadiran putra-putrinya hal ini akan berdampak pada kepercayaan orang tua terhadap sekolah. Sehingga diperlukan suatu aplikasi pencatatan kehadiran yang lebih akurat dan efektif.Dalam Tugas Akhir ini dikembangkan suatu Aplikasi Pencatatan Kehadiran siswa menggunakan sistem pengenalan wajah secara otomatis dimana sistem ini akan mencatat siswa yang terdeteksi dan mengirimkan pesan terdeteksi pada wali siswa yang bersangkutan. Aplikasiini dibuat dengan harapan dapat mengurangi bahkan menghilangkan adanya manipulasi data kehadiran oleh siswa serta membuat sistem pencatatan kehadiran siswa lebih efektif dan akurat. Hal ini dikarenakan wajah merupakan salah satu bagian unik dari manusia, wajah siswa yang satu akan berbeda dengan wajah siswa yang lain.

Kata kunci: pengenalan wajah, email, webcam, notifikasi, sms, AT command, absensi otomatis

1. PendahuluanPerkembangan ilmu pengetahuan di segala bidang dalam era globalisasi saat ini begitu pesat.Terutama dalam bidang IT yang semakin maju seiring dengan kebutuhan pemakai (user). Perkembangan ini membuat banyak pekerjaan manusia yang digantikan oleh computer. Dengan adanya penggantian posisi manusia oleh komputer ini, pekerjaan dapat diselesaikan dengan biaya lebih murah dan lebih optimal, namun tetap dapat diandalkan.Perkembangan ilmu pengetahuan tersebut diharapkan berbanding lurus dengan perkembangan sumber daya manusia, pendidikan adalah usaha yang dilakukan untuk mengembangkan potensi generasi muda agar memiliki kemampuan, keterampilan, sikap dan kepribadian. Untuk tujuan ini dibutuhkan perhatian dan kerja sama yang terpadu dari semua elemen masyarakat dunia pendidikan termasuk orang tua dan guru sebagai elemen yang berhubungan langsung dengan proses pendidikan seorang anak.Absensi siswa memegang peranan penting dalam setiap proses kegiatan belajar mengajar.Dimana absensi merupakan salah satu penunjang yang dapat mendukung atau memotivasi setiap kegiatan yang dilakukan di dalamnya. Disamping itu, absensi siswa dapat juga sebagai informasi tentang bagaimana kedisiplinan siswa yang bersangkutan.Penting adanya bagi orang tua untuk mengetahui kehadiran putra-putrinya di sekolah secara real time.Selain dapat mencegah pertumbuhan sikap dan kepribadian yang buruk pada anak secara dini juga dapat menumbuhkan perasaan tenang dan menambah kepercayaan orang tua terhadap sekolah.Tugas akhir ini membahas mengenai perancangan sistem pencatatan kehadiran siswa secara otomatis dimana sistem akan mengirim pesan notifikasi saat siswa dikenali. Pada sistem ini digunakan salah satu perkembangan dalam bidang computer vision yaitu pengenalan citra wajah. Pengenalan citra wajah atau Face recognition adalah salah satu teknologi biometric yang telah banyak diaplikasikan dalam sistem keamanan. Dalam implementasinya, secara umum pengenalan citra wajah dilakukan menggunakan sebuah webcam untuk menangkap citra wajah seseorang kemudian citra wajah tersebut dibandingkan dengan citra wajah sebelumnya yang telah disimpan.

2. PembahasanPengenalan citra wajah atau face recognition adalah sebuah tugas yang dilakukan oleh manusia secara rutin dan mudah dalam kehidupan sehari-hari. Secara umum sistem pengenalan citra wajah dibagi menjadi dua jenis, yaitu sistem feature-based dan sistem image-based. Pada sistem pertama digunakan ciri yang diekstraksi dari komponen citra wajah seperti mata, hidung, mulut, dan lain-lain yang kemudian dimodelkan secara geometris hubungan antara ciri-ciri tersebut. Sedangkan pada sistem ke dua menggunakan informasi mentah dari piksel citra yang kemudian direpresentasikan dalam metode tertentu, misalnya seperti Principal Component Analysis (PCA) atau transformasi wavelet yang digunakan untuk klasifikasi identitas citra (Al Fatta, Hanif, 2009).Sistem pengenalan citra wajah umumnya mencakup empat modul utama (Li & Jain, 2005, p. 2), yaitu: deteksi, alignment, ekstraksi fitur, dan pencocokan. Proses lokalisasi dan normalisasi (deteksi wajah dan alignment) adalah langkah-langkah sebelum proses pengenalan wajah (ekstraksi fitur wajah dan pencocokan) dilakukan.Deteksi wajah adalah langkah awal untuk melakukan identifikasi wajah atau face recognition. Sebuah pendeteksi wajah yang ideal seharusnya mampu mengidentifikasi dan menemukan lokasi dan luas semua wajah yang ada di dalam sebuah gambar tanpa memperhatikan pose, skala, orientasi, umur, dan ekspresi (Li & Jain, 2005, p. 13). Deteksi wajah melakukan segmentasi area citra wajah dengan bagian latar (background).Proses alignment bertujuan untuk memperoleh akurasi yang lebih tinggi untuk lokalisasi dan normalisasi citra wajah karena deteksi wajah menyediakan estimasi lokasi dan skala dari setiap citra wajah yang terdeteksi.Setelah sebuah wajah dinormalisasi, ekstraksi fitur dilakukan untuk mengambil data efektif yang berguna untuk memisahkan antara citra-citra wajah dan orang-orang yang berbeda dan cukup stabil untuk variasi geometrik dan fotometrik. Pencocokan wajah dilakukan dengan cara melakukan pencocokan fitur yang telah diekstraksi dari citra wajah masukan dengan kumpulan data training citra wajah yang telah disimpan sebagai basis data wajah.Principal Component Analysis (PCA) adalah teknik standar yang digunakan dalam pengenalan pola statistikal dan pemrosesan sinyal untuk data reduction dan ekstraksi fitur (Eleyan & Demirel, 2007, p. 94). Kemampuan ekstraksi fitur ini dapat digunakan untuk melakukan pengenalan wajah. Metode PCA dikenal juga dengan nama Karhunen-Loeve Transformation (KLT). PCA memberikan transformasi ortogonal yang disebut juga dengan eigenimage yang di mana sebuah citra akan direpresentasikan ke dalam bentuk proyeksi linier searah dengan eigenimage yang bersesuaian dengan nilai Eigen terbesar dari matriks covariance. Dalam prakteknya, matriks covariance ini dibangun dari sekumpulan image training yang diambil dari berbagai objek.Sebuah citra 2D dengan dimensi kolom dan baris dapat direpresentasikan ke dalam bentuk citra 1D. Dalam penelitian ini ukuran jumlah kolom dan baris pixel citra adalah sama, sehingga nantinya akan terbentuk dimensi.

Gambar.1 Contoh citra wajahMisalnya ada sejumlah individu yang dijadikan sampel. Dari setiap individu diambil citra, sehingga total citra di dalam training set adalah:

Sejumlahsampel citra dinyatakan sebagai di dalam sebuah ruang citra -dimensi.Kumpulan citra tersebut dihitung nilai rata-ratanya yang disebut juga sebagai average face dengan perhitungan berikut:

Gambar.2 Average face

Kemudian nilai rata-rata dari wajah tersebut dikurangi dengan setiap vektor wajah

untuk mendapatkan vektor .

Setiap citra wajah dikurangi dengan nilai rata-rata membentuk kumpulan vektor menggunakan rumus:

Kumpulan vektor yang sangat besar ini kemudian mengikuti pada aturan PCA, yang mencari sejumlah vektor-vektor ortonormal dan nilai Eigen yang terbaik dalam menggambarkan distribusi dari data tersebut.Vektor-vektor dan nilai-nilai adalah vektor-vektor Eigen dan nilai-nilai Eigen dari matriks covariance

di mana.

Dari matriks (dalam penelitian ini berukuran ), diambil vektor-vektor Eigen terbaik sebanyak jumlah data. Karena vektor-vektor Eigen ini memiliki dimensi yang sama dengan dimensi citra yang asli, maka vektor-vektor ini jika disusun menjadi matriks berukuran akan membentuk citra yang mirip dengan wajah. Oleh karena itu, vektor-vektor Eigen ini disebut juga Eigenfaces.

Ketika sebuah citra wajah harus dikenali, maka dilakukan langkah berikut:1.

Data citra wajah masukan dinormalisasi dengan rumus .2. Hasil normalisasi pada langkah pertama diproyeksikan ke dalam ruang Eigen (kumpulan dari vektor-vektor Eigen) dan dihitung bobotnya. Nilai hasil normalisasi dapat digambarkan sebagai berikut.

3. Setelah data bobot didapat, perlu dilakukan proses klasifikasi untuk melakukan perhitungan jarak. Pada penelitian ini, perhitungan jarak dilakukan dengan menggunakan Euclidean Distance. Metode ini memiliki perhitungan sebagai berikut.

4. Kemudian dicari nilai terkecil dari kumpulan jarak data citra wajah masukan dengan data training yang telah disimpan sebelumnya.

Penggunaan PCA sangat mengurangi kalkulasi yang perlu dilakukan, dari sejumlah pixel di dalam citra () menjadi sejumlah citra di dalam training set (). Dalam prakteknya, jumlah citra wajah di dalam training set biasanya lebih kecil dibandingkan dengan jumlah pixel di dalam citra (Eleyan & Demirel, 2007, p. 96). Pendekatan metode PCA untuk pengenalan wajah ditunjukkan pada Gambar 4.

Gambar.3 Pendekatan PCA untuk pengenalan wajah (Eleyan & Demirel, 2007, p. 98)

Dengan kata lain metode PCA memproyeksikan ruang asal menjadi ruang baru yang berdimensi lebih rendah, dengan berpegang bahwa sebanyak mungkin informasi yang dimiliki dimensi asal dipertahankan dan tidak terlalu banyak yang hilang setelah diproyeksikan ke ruang yang baru. Dengan memperkecil dimensi dari sebuah ruang, tentu akan meringankan proses komputasi yang perlu dilakukan oleh sistem.Penulis menggunakan fitur yang telah disediakan oleh EmguCV untuk menerapkan algoritma ini di dalam aplikasi dengan menggunakan bantuan class bernama HaarCascade sebagai classifier dari pendeteksian objek. Proses deteksi dan pengenalan citra wajah yang dipisah menjadi tiga ini membuat waktu proses yang diperlukan oleh sistem menjadi lebih lama. Hal ini menyebabkan aplikasi tidak dapat berjalan secara realtime saat melakukan proses deteksi dan pengenalan citra wajah dengan sumber masukan menggunakan webcam. Oleh karena itu, pada tahapan ini diterapkan konsep parallel processing yang disediakan oleh .NET Framework 4. Penggunaan parallel processing membuat tugas pemrosesan data disebarkan ke beberapa core di dalam processor (CPU) yang membuat banyak tugas dapat diselesaikan dengan lebih cepat. Penggunaan parallel processing ini begantung pada spesifikasi CPU yang digunakan.Koleksi citra wajah yang digunakan dalam penelitian ini ditangkap dengan latar belakang tidak terkontrol, sehingga diharapkan hasil dari penelitian ini mendekati implementasi di dunia nyata. Hasil pengujian yang didapat dirasa kurang memuaskan, sistem pengenalan citra wajah berjalan dengan akurat, namun kecepatan dalam pengenalan dirasa tidak efektif. Untuk masalah ini penulis menyarankan untuk implementasi dan pengembangan lebih lanjut untuk dibuatkan prosedur pencatatan kehadiran agar sistem dapat bekerja dengan efektif dan akurat.Untuk pengiriman notifikasi SMS penulis menggunakan modem GSM dengan memanfaatkan AT Command. AT Command adalah suatu metode standar dalam bentuk perintah - perintah Command yang dapat digunakan oleh komputer untuk berkomunikasi dengan modem dan peralatan komunikasi lainnya, misalnya teleponselular/handphone dalam komunikasi dengan serial port. Dengan AT Command kita dapat mengetahui vendor dari handphone yang digunakan, kekuatan sinyal, membaca pesan yang ada di SIM Card, mengirim pesan, mendeteksi pesan SMS yang baru masuk secara otomatis, menghapus pesan pada SIM Card, dan lain-lain.Beberapa AT Command yang sering digunakan: AT : untuk test terminal AT+CPIN : untuk memasukkan PIN SIM jika diperlukan. AT+CMGF : untuk mengganti format SMS dari PDU ke text dan sebaliknya. AT+CMGR : untuk membaca SMS. AT+CMGS : untuk mengirim sebuah SMS.

Gambar.4 Cara kerja SMS dengan modem GSM

Untuk mengirim sebuah email dari alamat email yang satu ke alamat yang lainnya digunakan sebuah protocol (aturan) yaitu Simple Mail Transfer Protocol (SMTP). Protocol SMTP telah menjadi aturan dasar yang disepakati untuk pengiriman email. Dengan demikian semua software email server pasti mendukung protokol ini. SMTP merupakan protokol yang digunakan untuk mengirim email (komukasi antar mail server), dan tidak digunakan untuk berkomunikasi dengan client. Penulis menggunakan STMP server gratis yang banyak di gunakan. Sehingga biaya penggunaan sistem ini bisa semakin di tekan.

Gambar.5 Cara kerja Email dengan STMPAdapun spesifikasi komputer yang digunakan penulis dalam melakukan simulasi pada aplikasi penelitian pengenalan citra wajah dengan variasi pose ini adalah sebagai berikut:1. Intel Core i5-2430M CPU @ 2.40 Ghz 2.40 Ghz4. Memory 4 GB DDR35. Webcam logitech6. OS: Microsoft Windows 7 Home7. IDE: Microsoft Visual Studio 2010 Ultimate8. Library: EmguCV 2.0.50779. Modem GSM Huawei

Pada percobaan ini diambil citra wajah dari sepuluh orang dengan lama percobaan terhadap sampel adalah 1 menit. Proses percobaan pertama dilakukan dengan menggunakan nilai threshold sebesar 2000. Hasil percobaan ditunjukkan pada Tabel.1.

NoSequenceNameTerdeteksiDikenaliRata - rata waktudikenali (dtk)

13A3316.666667

2B1119

3C2233

4D1125

5E447.5

6F778.1428571

7G5510.8

8H1117

9I1121

10J2223.5

15A1139

2B000

3C3314.33333

4D000

5E000

6F1144

7G3314

8H3311.33333

9I2223

10J3318.66667

17A000

2B000

3C1154

4D000

5E000

6F1158

7G1158

8H1130

9I2223.5

10J000

Tabel 1 Hasil simulasi untuk setiap sampel dengan threshold 2000

Proses percobaan kedua dilakukan dengan menggunakan nilai threshold sebesar 3000. Hasil percobaan ditunjukkan pada Tabel.2.

NoSequenceNameTerdeteksiDikenaliRata - rata waktudikenali (dtk)

13A5510.8

2B559.4

3C559.4

4D3315.666667

5E668.6666667

6F2227

7G5511

8H777.7142857

9I668

10J5218

15A3315

2B339.75

3C3319.66667

4D3318.33333

5E2229

6F1154

7G4413

8H776.571429

9I3315.33333

10J3318.33333

17A2222.5

2B3316.33333

3C1143

4D2226.5

5E4411

6F2219

7G2229.5

8H3317.66667

9I4413

10J2225

Tabel 2 Hasil simulasi untuk setiap sampel dengan threshold 3000

Proses percobaan ketiga dilakukan dengan menggunakan nilai threshold sebesar 4000. Hasil percobaan ditunjukkan pada Tabel.3

NoSequenceNameTerdeteksiDikenaliRata - rata waktudikenali (dtk)

13A4414.75

2B667.8333333

3C3316

4D449.25

5E7511

6F4413.25

7G557.8

8H557.6

9I5510.4

10J556.8

15A000

2B3318.66667

3C3316.66667

4D4411.5

5E559.8

6F4411.25

7G4410.5

8H10105.9

9I2219.5

10J4411

17A3315

2B4412.5

3C2225

4D4414.5

5E668.5

6F5515.66667

7G4410.75

8H778.428571

9I5510.6

10J3315

Tabel 3 Hasil simulasi untuk setiap sampel dengan threshold 4000

Proses percobaan terakhir dilakukan dengan menggunakan nilai threshold sebesar 5000. Hasil percobaan ditunjukkan pada Tabel.4

NoSequenceNameTerdeteksiDikenaliRata - rata waktudikenali (dtk)

13A3318

2B559

3C3318.33333

4D4310.33333

5E669

6F638

7G767.285714

8H887.125

9I5510.4

10J5511.2

15A3314.66667

2B4411.25

3C4414

4D555.6

5E5511.2

6F4410

7G669.666667

8H4414.75

9I428.75

10J527.2

17A3316

2B4411.75

3C3316.66667

4D4410

5E2228

6F5510.4

7G400

8H555.4

9I2223.5

10J4313.5

Tabel 4 Hasil simulasi untuk setiap sampel dengan threshold 5000

Berdasarkan hasil simulasi di atas, maka dapat dihitung keakuratan sistem dalam mengenali setiap wajah yang terdeteksi adalah:Persentase ketepatan = Rata-rata waktu dikenali = Sehinga didapat hasil akhir sebagai berikut:

ThresholdSequence% keakuratanRata - rata kecepatan individu dikenali (detik)

2000310018.16095

2000510016.43333

2000710022.35

3000393.8812.56476

3000510019.89881

3000710022.35

4000395.8310.46833

4000510011.47833

4000710013.59452

5000390.3810.86774

5000588.6410.70833

5000786.1113.52167

Tabel.5 Hasil percobaan

Kegagalan dalam pengenalan dapat disebabkan oleh beberapa hal berikut:1. Citra digital yang kurang jelas atau mengalami gangguan (noise) yang berlebihan.2. Adanya kemiripan antara wajah yang satu dengan yang lainnya.3. Sudut putaran kepala yang tidak tersedia di dalam data training.

1. PenutupBerdasarkan hasil analisis terhadap data yang telah diperoleh pada penelitian ini, maka diambil kesimpulan sebagai berikut:1. Semakin banyak citra wajah yang digunakan dalam melakukan training untuk setiap sampel, maka pengenalan akan semakin baik, tetapi waktu proses untuk training data wajah meningkat.2. Semakin rendah nilai threshold, kemiripan citra wajah masukan dengan citra wajah di dalam data training semakin tinggi, tetapi semakin sulit mengenali (untuk high security).3. Semakin tinggi nilai threshold, semakin tinggi kemungkinan mengenali citra wajah masukan dengan citra wajah di dalam data training, tetapi semakin tinggi kemungkinan kesalahan (untuk visual surveillance).4. Semakin besar sequence, semakin lama waktu yang diperlukan untuk mengenali citra wajah, namun keakuratan meningkat.5. Semakin kecil sequence, semakin cepat waktu yang diperlukan untuk mengenali citra wajah, namun keakuratan menurun.6. Pasangan variabel threshold dan sequence yang optimal berdasarkan tabel tersebut adalah threshold 4000 dengan sequence 5.7. Kesalahan dalam melakukan pengenalan dapat terjadi karena kemiripan antara dua atau lebih sampel yang berbeda.8. Besarnya sequence yang diberikan, sehingga perlu waktu untuk melakukan cek terhadap semua data sequence.

Berikut beberapa saran yang diajukan untuk penggunaan ataupun pengembangan aplikasi ini adalah:1. Untuk implementasi, penelitian dan pengembangan lebih lanjut diharapkan dibut prosedur cara absensi terlebih dahulu agar hasil yang dihasilkan lebih cepat dan akurat.2. Perlu adanya pengembangan dalam pengenalan citra dengan algoritma yang lebih baik yang mendukung klasifikasi class. 3. Pada sistem ini belum digunakan sistem database yang terkontrol. Akan lebih baik jika selanjutnya digunakan sistem database untuk menyimpan data data yang didapat.

Daftar Pustaka

Viola, Paul and Michael Jones (2001). Rapid object detection using boosted cascade of simple features. In: Proceedings IEEE Conf. on Computer Vision and Pattern Recognition, 2001.

Lienhart, Rainer and Jochen Maydt (2002). An extended set of haar-like features for rapid object detection. In: IEEE ICIP 2002, Vol.1, pp 900-903.

Anonim. (2011, December 28). Emgu CV Main Page. Retrieved December 2011, from Emgu CV: OpenCV in .NET (C#, VB, C++ and more): http://www.emgu.com/wiki/index.php/Main_Page

Bernard, & Surya Liestiawan, B. (2006). Pengenalan Wajah dengan Menggunakan Metode EigenFaces.

Eleyan, A., & Demirel, H. (2007). PCA and LDA based Neural Networks for Human Face Recognition. In K. Delac, & M. Grgic, Face Recognition. Vienna: I-Tech Education and Publishing.

Gupta, P. (2003). Short Message Service (SMS). Edisi Empat. Yogyakarta: Penerbit Andi.

Gonzalez, R. C., & Woods, R. E. (2002). Digital Image Processing (2nd Edition ed.). New Jersey: Prentice-Hall, Inc.

Jones, M. J., & Viola, P. (2003). Fast Multi-view Face Detection.

Khang Ir. Bustam. (2002). Trik Pemrograman Aplikasi Berbasis SMS. Jakarta. PT. Elex Media Komputindo.

Li, S. Z., & Jain, A. K. (2005). Handbook of Face Recognition. New York: Springer Science+Business Media, Inc.

Marcus, T., and Widiadhi, J., 2006. Aplikasi SMS untuk Berbagai Keperluan. Bandung: Informatika Bandung.

Pissarenko, D. (2002). Eigenface-based Facial Recognition. Pusat Bahasa. (2008). In Kamus Besar Bahasa Indonesia. Jakarta: Gramedia Pustaka Utama.

Sari, M., (2010). Penerapan Algoritma EigenFace Pada Sistem Absensi Karyawan Berbasis Webcam

Seo, N. (2006). EigenFaces and FisherFaces.

Seo, N. (2008, 10 16). Tutorial: OpenCV haartraining (Rapid Object Detection With A Cascade of Boosted Classifiers Based on Haar-like Features). Retrieved 12 2011, from Naotoshi Seo: http://note.sonots.com/SciSoftware/haartraining.html

Shakhnarovich, G., & Moghaddam, B. (2005). Face Recognition in Subspaces. In S. Z. Li, & A. K. Jain, Handbook of Face Recognition. New York: Springer Science+Business Media, Inc.

http://opensource.telkomspeedy.com/wiki/index.php/Gambaran_Sederhana_Cara_Kerja_e-mail akses tanggal 05 Januari 2013