JURNAL MASYARAKAT INFORMATIKA INDONESIA JMII Vol 2, No. 1, Januari-Maret 2017 ISSN: 2541-5093
IMAGE SPOOFING DETECTION USING LOCAL BINARY PATTERN Indra Bayu Kusuma Fakultas Teknik Informatika, Jurusan Teknik Informatika Universitas Telkom Jalan Telekomunikasi No.1, Bandung, Indonesia
[email protected] Arida Kartika Fakultas Teknik Infomatika, Jurusan Teknik Informatika Universitas Telkom Jalan Telekomunikasi No.1, Bandung, Indonesia
[email protected]
Abstract
Abstrak Wajah manusia merupakan salah satu ciri unik dalam diri seorang manusia. Dalam bidang biometric khususnya kemanan menggunakan wajah manusia sudah banyak diimplementasikan dalam dunia nyata. Saat ini wajah manusia merupakan salah satu pedoman dalam sistem keamanan. Dewasa ini tantangannya ialah bagaimana mendeteksi pemalsuan data tersebut. Serangan seperti ini disebut dengan spoofing. Spoofing terjadi saat seseorang mencoba untuk berpura-pura menjadi orang lain dengan memalsukan data asli dan dari tindakan tersebut orang tersebut bisa mendapatkan akses ilegal dan keuntungan baginya. Sebagai contoh seseorang dapat memalsukan wajah pada sistem rekognisi dengan menggunakan photograph, video, masker ataupun model 3D dari targetnya didepan kamera. Untuk mengatasi hal tersebut penulis mengajukan pendektesian spoofing wajah manusia dengan menggunakan analisis tekstur. Analisis tektur yang digunakan pada paper ini ialah Local Binary Pattern dan menggunakan preprocessing Adaptive Histogram Equalization dan untuk klasifikasi menggunakan KNearest Neighbour. Dengan metode diatas, akurasi yang didapat adalah 92.24%. Kata kunci : Adaptive Histogram Equalization, K-Nearest Neighbour, Local Binary Pattern, Spoofing
Particularly in the field of biometric security using human face has been widely implemented in the real world. Currently the human face is one of the guidelines in the security system. Nowadays the challenge is how to detect data falsification; such an attack is called spoofing. Spoofing occurs when someone is trying to pretend to be someone else by falsifying the original data and then that person may gain illegal access and benefit him. For example one can falsify the face recognition system using photographs, video, masks or 3D models. In this paper image spoofing human face detection using texture analysis on input image is proposed. Texture analysis used in this paper is the Local Binary Pattern (LBP) and as the preprocessing is Adaptive Histogram Equalization and then K-Nearest Neighbour as the classifier. in this paper with proposed method,the accuracy is 92.94%. Keywords : Adaptive Histogram Equalization, K-Nearest Neighbour, Local Binary Pattern, Spoofing
I. PENDAHULUAN Dalam dunia biometrik, pendeteksian wajah sudah banyak diimplementasikan di kehidupan nyata. Pendeteksian wajah yang ada saat ini umumnya digunakan untuk kepentingan keamanan, alasannya terletak pada keunikan wajah setiap manusia.
Jurnal Nasional JMII 2017
49
JURNAL MASYARAKAT INFORMATIKA INDONESIA JMII Vol 2, No. 1, Januari-Maret 2017 ISSN: 2541-5093
Pendeteksian wajah yang ada memiliki kekurangan, seperti pemalsuan data menggunakan foto wajah yang telah dicetak. Serangan seperti itu disebut dengan spoofing. Serangan spoofing terjadi saat ada orang yang mencoba untuk menyamar menjadi seseorang dengan memalsukan data dan mengambil keuntungan dari akses yang terlarang tersebut [1]. Tanpa pengukuran spoofing kebanyakan sistem biometrik wajah rentan untuk diserang. Walaupun dengan hasil cetakan wajah manusia biasa yang ditampilkan ke layar dapat mengelabuhi sistem. Wajah asli dengan citra wajah hasil cetakan tentunya merefleksikan cahaya dengan cara yang berbeda, hal ini disebabkan oleh wajah manusia yang merupakan objek kompleks 3D dimana hasi cetakan dapat terlihat sebagai objek planar yang kaku. Selain itu wajah manusia memiliki pigmen sedangkan hasil cetakan tidak demikian. Dengan kerentanan serangan spoofing tersebut maka penulis membangun sistem yang dapat mendeteksi spoofing wajah manusia. Dari beberapa penelitian sebelumnya, pendeteksian spoofing wajah manusia dilakukan menggunakan analisis tekstur. Analisis tekstur yang digunakan mengacu pada beberapa algoritma seperti Local Binary Pattern, Local Binary Pattern Variance, Gabor Wavelet, Haboor Wavelet, Histogram of Gradient, Spatiotemporal Local Binary Pattern [2-5]. LBP memiliki kemampuan untuk mengekstrasi ciri suatu tekstur sehingga dapat membedakan citra wajah manusia yang asli dengan hasil spoof. Oleh karena itu, pada penilitian ini diusulkan metode Local Binary Pattern sebagai metode ekstraksi ciri yang berbasis tekstur. Untuk selanjutnya hasil ekstraksi ciri yang didapat akan diklasifikasikan menjadi dua kelas yaitu kelas spoof dan kelas non-spoof.
II. KAJIAN LITERATUR Pembagian yang dipakai dalam penelitian ini dibagi menjadi dua, yaitu kelas pertama adalah kelas wajah asli, sedangkan yang kedua adalah wajah tiruan. Seperti yang diketahui bahwa foto adalah sebuah gambar yang sudah melewati lebih dari satu sistem. Pertama dengan kamera, wajah yang diambil sudah berbeda dengan aslinya, kedua memasukki sistem printer, pada akhirnya keluaran dari printer dilakukan pengambilan gambar kembali [9]. Pembagian dua kelas tersebut dilakukan dengan
menggunakan tekstur dari gambar, dari tekstur tersebut akan didapat perbedaan antara kelas wajah asli dan wajah tiruan. Sebelum masuk ke proses ekstraksi ciri, sebelumnya dilakukan preprocessing pada gambar inputan agar data yang masuk untuk dilakukan ekstraksi ciri bisa lebih menjelaskan perbedaan antara gambar wajah asli dengan wajah palsu. Setelah melalui preprocessing kemudian langsung masuk ke proses ekstraksi ciri Local Binary Pattern (LBP) untuk mendapatkan ciri tekstur dari gambar masukkan, kemudian untuk metode klasifikasi pada pendekatan ini digunakan K-Nearest Neighbor (KNN). Metode preprocessing yang digunakan terdapat tiga macam, yaitu Difference of Gaussian (DoG), Histogram Equalization (Histeq) dan Adaptive Histogram Equalization (AdaptHisteq). DoG dalam penerapan pada pendekatan ini digunakan untuk menghilangkan noise, gangguan warna atau frekuensi, pada gambar saat mencari nilai komponen yang memiliki frekuensi tinggi [8]. Histeq adalah metode yang digunakan untuk memperbaiki atau menjadikan gambar memiliki kontras yang lebih baik dan dapat digunakan untuk semua jenis gampang secara mudah [9]. AdapHisteq lebih meningkatkan kontras namun mengurangi sisi buruk penambahan noise pada gambar [10]. LBP adalah metode untuk memberikan karakterisasi terhadap tekstur dalam sebuah gambar. Dua level LBP digunakan yaitu memiliki nilai antara 0 dan 1, sehingga untuk mendeskripsikan 3x3 ketetanggan yang nilai tengah dalam matriks tersebut merupakan threshold sehingga terdapat 8 tetangga, sehingga kemungkinan yang didapat adalah 28 = 256 [6]. Perhitungan yang dilakukan dalam ekstraksi tekstur dapat dilihat pada persamaan berikut: , ,
(1) (2)
Persamaan diatas terdapat variabel p yang menunjukkan banyak tetangga terhadap piksel tengah gc sebagai threshold dari nilai tetangga gp. Selain dari yang digunakan dalam persamaan juga terdapat R
Jurnal Nasional JMII 2017
50
JURNAL MASYARAKAT INFORMATIKA INDONESIA JMII Vol 2, No. 1, Januari-Maret 2017 ISSN: 2541-5093
yang merupakan radius dari pemilihan tetangga p untuk perhitungan LBP. K-Nearest Neighbor (KNN) merupakan metode klasifikasi yang sudah banyak digunakan dengan menggunakan modifikasi. Secara garis besar sistem yang berada dalam KNN dibagi menjadi dua, yaitu menentukan tetangga terdekat, setelah itu menentukan kelas dari data yang sedang diuji[11]. Visualisasi tentang cara kerja KNN ditampilkan pada Gambar 1, dapat dilihat untuk menentukan sebuah kelas dilakukan dengan mengambil tiga tetangga terdekat. Setelah mendapatkan jumlah tetangga yang dibutuhkan, kemudian dilakukan penentuan kelas. Penentuan yang dilakukan dalam KNN bisa beragam cara, namun salah satu cara dalam penentuan kelas adalah dengan menghitung jumlah kelas yang mayoritas dalam tetangga yang terpilih.
Dataset yang digunakan dalam penelitian ini berasal dari NUAA impostor database[7]. Terdapat 15 subjek penelitian yang pada setiap subjek nya terdapat gambar asli langsung dari wajah subjek, serta dari foto subjek. Gambar asli diambil dari sebuah webcam, dan semua subjek nya menghadap kamera secara frontal menggunakan expreksi alami serta tidak terdapat perubahan, misal kedipan mata ataupun perubahan posisi kepala untuk membuat wajah asli menyerupai sebuah foto, contoh data gambar yang terdapat di dalam dataset dapat dilihat pada Gambar 2.
Gambar 2. Data gambar yang ada di dalam dataset, (atas gambar wajah asli, bawah gambar wajah dari foto)
Kemudian untuk foto dilakukan dengan menggunakan kamera Canon yang memuat wajah sampai 2/3 dari foto. Langkah selanjutnya dilakukan dalam dua tahap, pertama di print pada kertas foto dengan ukuran normal 6.8cm x 10.2cm untuk ukuran kecil sedangkan yang besar 8.9cm x 12.7cm. Cara kedua di print pada kertas A4 70g menggunakan HP printer. Gambar 1. Klasifikasi KNN dengan K=3
Tetangga yang didapatkan berdasarkan jarak nilai dari kelas yang akan diuji. Untuk mendapatkan nilai disini bisa dilakukan dengan perhitungan Minkowski distance, Euclidean distance dan masih banyak yang lainnya. Banyak perhitungan jarak nilai menggunakan Euclidean distance yaitu dengan menggunakan persamaan sebagai berikut: (3) Pada persamaan diatas x dan y adalah vektor yang jaraknya ingin dibandingkan, n adalah banyak nilai di dalam vektor x atau y dengan nilai yang sama, i adalah indeks dari vektor yang ingin dibandingkan.
Perhitungan akurasi, precision dan recall digunakan untuk mengukur performansi dari sistem yang dibangun. Menggunakan metode confusion matrix karena menggunakan data yang tidak seimbang dari imposter dan client.
III. ANALISIS DAN PERANCANGAN Sistem secara keseluruhan dibagi menjadi dua bagian, yaitu bagian membangun model dan bagian testing. Gambar 3, menjelaskan bagian pembangungan model. Kedua bagian memiliki bagian yang hampir sama, hanya terdapat perbedaan pada setelah mendapatkan ekstraksi ciri, bagian pertama menyimpan hasil ekstraksi ciri kedalam database, bagian kedua mengambil hasil ekstraksi ciri data latih kemudian mencocokan menggunakan KNN untuk mendapatkan keluaran kelas dari setiap gambar test, seperti ditunjukkan pada Gambar 4.
Jurnal Nasional JMII 2017
51
JURNAL MASYARAKAT INFORMATIKA INDONESIA JMII Vol 2, No. 1, Januari-Maret 2017 ISSN: 2541-5093
AdaptHisteq merupakan metode yang memberikan performansi paling tinggi di angka akurasi 88.69%.
Gambar 3. Pembangunan Model
Gambar 4. Testing
Dataset yang dipakai menggunakan NUAA Imposter jumlah gambar untuk proses pembangunan model dan proses testing telah dibedakan oleh NUAA. Jumlah secara rinci tentang data yang digunakan menyangkut gambar imposter dan data client dapat dilihat pada Tabel 1. Pada jumlah gambar untuk proses pembangunan data memiliki jumlah yang sama sebagai aspek fairness di dalam sistem.
Table 1. Jumlah detail dataset yang dipakai
Pembangunan
Testing
Imposter
1748
5761
Client
1743
3362
Pada proses pembangunan model, hanya dilakukan sampai mendapatkan data ciri tekstur dari gambar, namun proses kedua dimasukkan perhitungan akurasi dengan langsung menggunakan confussion matrix. Setelah proses kedua dijalankan, keluaran yang didapat adalah akurasi beserta precision dan recall. Dalam paper ini precision menandakan ukuran sistem dapat mengenali imposter beserta client, sedangkan recall adalah tingkat pengenalan terhadap data imposter.
Gambar 5. Nilai akurasi, precision dan recall dari tiga preprocessing dengan LBP8,1
Hasil tersebut didapat karena untuk preprocessing DoG yang merupakan filter untuk noise pada gambar namun tidak menambah tingkat kontras pada gambar yang menjadi inputan, sedangkan Histeq digunakan untuk meningkatkan kontras gambar namun menambah noise yang sudah sebelumnya ada di dalam gambar. Antara kedua metode tersebut, AdaptHisteq digunakan untuk menambah tingkat kontras pada gambar namun tidak menambahkan noise yang banyak. Kemudian percobaan dilakukan berfokus pada preprocessing menggunakan metode AdaptHisteq dengan kemudian mengubah tingkat R pada saat proses LBP dilakukan. Pengubahan nilai R akan merubah piksel yang diambil. Ilustrasi dari piksel – piksel tetangga yang diambl dapat dilihat pada Gambar 6, A merupakan LBP8,1 menggunakan nilai R=1, B merupakan LBP8,2 dan C merupakan LBP8,3. Nilai R yang dipakai dalam paper ini adalah 1,2,3 dan 4.
Pengujian pertama yang dilakukan adalah melihat performansi sistem saat ditambah dengan menggunakan tiga preprocessing yang berbeda. Hasil dari pengujian dapat dilihat pada Gambar 5, dapat dilihat bahwa menggunakan metode preprocessing
Jurnal Nasional JMII 2017
52
JURNAL MASYARAKAT INFORMATIKA INDONESIA JMII Vol 2, No. 1, Januari-Maret 2017 ISSN: 2541-5093
Gambar 6. Ilustrasi perubahan radius R pada proses pengambilan tetangga di metode LBP
Data akurasi hasil perubahan nilai R pada LBP dapat dilihat pada Gambar 7. Terlihat pada R=2 mendapatkan nilai akurasi yang tinggi yaitu 91.67%, dengan nilai R tersebut didapatkan ciri tekstur yang bisa membedakan gambar imposter dan client dengan baik, karena saat nilai R satu, nilai tetangga tidak terlalu beragam, dan piksel yang dideksripsikan hanya sekitar titik tengah. Nilai R semakin besar akan menyebabkan ciri yang didapat semakin beda dan tidak menemukan titik pembeda antara dua kelas.
Gambar 8. Perubahan nilai K terhadap akurasi
Akurasi terbaik didapat pada nilai K=151 dengan akurasi 92.24%. Sehingga untuk dapat membedakan gambar wajah asli dan wajah palsu, dalam hal ini foto wajah, dapat digunakan pendekatan yang digunakan dalam paper ini. Menggunakan tekstur untuk membedakan dengan bantuan penambahan kontras dapat dengan hasil yang memuaskan dengan melakukan perubahan parameter pada metode LBP yang digunakan.
IV. KESIMPULAN DAN SARAN Gambar 7. Akurasi pada perubahan nilai R
Setelah mendapatkan metode preprocessing dan parameter terbaik untuk LBP, selanjutnya pada proses klasifikasi menggunakan KNN, dilakukan pengujian untuk nilai K yang digunakan dalam sistem. Pada Gambar 8, dapat dilihat bahwa semakin banyak nilai K maka tingkat akurasi semakin tinggi, dikarenakan nilai K menentukkan banyak tetangga dan sangat mempengaruhi pendeteksian antara kedua kelas. Nilai K yang terlalu besar bisa menjadi miss judgement, mengenali kelas yang bukan kelas seharusnya.
Membedakan gambar wajah asli dengan wajah dalam foto menggunakan pendekatan metode LBP melalui preprocessing Adaptive Histogram Equalization, serta menggunakan klasifikasi KNearest Neighbor diajukan dalam paper ini. LBP digunakan untuk mendapatkan ekstraksi ciri dari bagian tekstur dari gambar dengan dibantu menambahkan kontras. Didapatkan hasil yang memuaskan dengan menggunakan dataset dari NUAA [7]. Nilai parameter pada LBP dan KNN beberapa harus diubah untuk mendapatkan nilai akurasi yang memuaskan seperti radius R pada LBP dan nilai K pada KNN. Paper ini menunjukkan bahwa untuk membedakan gambar wajah asli dengan wajah pada foto dibutuhkan tekstur dari gambar serta ditambah kontras yang tidak terlalu banyak menambah gangguan pada gambar. Untuk penelitian lebih lanjut, dapat dilakukan dengan mengubah atau melakukan modifikasi terhadap fitur ekstraksi ciri yang digunakan, serta
Jurnal Nasional JMII 2017
53
JURNAL MASYARAKAT INFORMATIKA INDONESIA JMII Vol 2, No. 1, Januari-Maret 2017 ISSN: 2541-5093
pemilihan metode preprocessing yang dapat memberikan data yang sesuai untuk membedakan gambar wajah asli dengan wajah di foto. Untuk metode klasifikasi masih memerlukan waktu pemrosesan yang masih terlalu lama.
[7]. X. Tan, Y. Li, J. Liu, L. Jiang. Face Liveness Detection from a Single Image with Sparse Low Rank Bilinear Discriminative Mode. in Proc. Of the 11th European conference on Computer vision, 2010, pp. 504-517.
REFERENSI
[8]. Kose, N., Dugelay, J-Luke. Classification of Captured and Recaptured Images to Detect Photograph Spoofing. Multi Media Department, EURECOM 2229 ROUTE des Cretes, SophiaAntipolis, France.
[1]. Maatta, J., Hadid, A., & Pietikainen, M. (2012). Face spoofing detection from single images using texture and local shape analysis. Biometrics, IET, 1(1), 3-10. [2]. Komulainen, J., Hadid, A., & Pietikäinen, M. Face spoofing detection using dynamic texture. Computer Vision-ACCV 2012 Workshops. pp. 146-157. November 2012. [3]. Maata, J., Hadid, A., & Pietikainen, M. Face Spoofing Detection from Single Image using Micro-Texture Analysis. In Biometrics (IJCB), 2011 international joint conference. pp. 1-7. IEEE. [4]. Wen, D., Han, H., & Jain, A. K. Face Spoofing Detection with Image Distortion Analysis. Informatics Forensics and Security. IEEE Transactions on,10(4), 746-761. 2015.
[9]. Gupta, S., E., Kaur, Y., E. Review of Different Histogram Equalization Based Contrast Enhancement Techniques. IJARCCE. Vol. 3, Issue 7, July 2014. [10]. Zhu, Y., Huang, C. An Adaptive Histogram Equalization Algorithm on the Image Gray Level Mapping.2012 International Conference on Solid State Devices and Materials Science.(2012). [11]. Cunningham, P., Delany, J., S. k-Nearest Neighbour Classifier. Technical Report UCDCSI-2007-4. March 27, 2007.
[5]. de Freitas Pereira, T., Anjos, A., De Martino, J.M., & Marcel, S. LBP-TOP based Countermeasure Against Face Spoofing Attacks. Computer Vision-ACCV 2012 Workshops. pp. 121-123. Springer Berine Heidelberg. November, 2012. [6]. Ojala, T., Pietikainen, M., & Harwood, D. A Comparative Study of Texture Measures with Classification Based on Feature Distributions. Pattern Recognition Society. Vol 29, No. 1, pp.51-59. 1996.
Jurnal Nasional JMII 2017
54