Pengenalan Citra Sidikjari Menggunakan Minutiae Dan Propagasi Balik Sri Heranurweni1 1)
Jurusan Teknik Elektro, Universitas Semarang email :
[email protected]
Abstrak : Teknik identifikasi konvensional untuk mengenali identitas seseorang dengan menggunakan password atau kartu tidak cukup handal, karena sistem keamanan dapat ditembus ketika password dan kartu tersebut digunakan oleh pengguna yang tidak berwenang. Sistem pengenalan identitas dengan teknologi komputer ini menggunakan teknik identifikasi biometrik, hal itu dilakukan karena cenderung memiliki tingkat akurasi yang tinggi dan mudah untuk diterapkan. Didasarkan pada karakteristik alami manusia, yaitu karakteristik fisiologis dan karakteristik perilaku seperti sidik jari, suara, telapak tangan, iris dan retina mata, DNA (Deoxsiribo Nukleid Acid) dan tanda tangan. Teknik identifikasi biometrik yang mempunyai berbagai kelemahan pada sistem konvensional itu dapat berkurang. Citra masukan dari sidik jari kiri yang berupa citra dalam format BMP dan JPEG akan dilakukan proses thresholding dan thinning agar lebih mudah untuk diproses. Dilanjutkan dengan proses ekstraksi ciri dan pencarian minutiae terhadap sejumlah citra untuk pembelajaran menggunakan Propagasi Balik, maka akan dihasilkan vektor ciri dari citra untuk pembelajaran. Secara umum terdapat dua proses penting dalam perancangan, yaitu proses pelatihan dan pembelajaran. Metode Propagasi Balik menggunakan nilai jarak hasil pengujian dengan menggunakan 30 citra untuk pembelajaran, dan 10 citra pengujian. Nilai hasil propagasi balik digunakan untuk menguji apakah citra sidik jari luar dikenali identitasnya atau tidak berdasarkan nilai ecludean distance. Metode Propagasi Balik, pada pengujian dengan memasukkan 5 citra pembelajaran dan 5 citra lainnya didapat hasil pengenalan dengan tingkat keberhasilan 99 %. Kata kunci : sistem biometrik sidik jari, propagasi balik, ecludean distance 1. PENDAHULUAN Sistem biometrik sidik jari merupakan sistem autentikasi berbasis biometrik yang paling banyak digunakan saat ini karena cenderung memiliki tingkat akurasi yang tinggi dan mudah untuk diterapkan. Pengkajian terhadap akurasi dan unjuk kerja sistem biometrik sidik
jari menjadi latar belakang penelitian ini agar hasil dari analisis performansi tersebut nantinya dapat diterapkan untuk aplikasi keamanan akses. Salah satu bagian terpenting dalam sistem pengenalan sidik jari adalah teknik pencocokan sidik jari. Umumnya, teknik yang digunakan untuk mencocokkan sidik jari yaitu: minutiae-based dengan menghitung jumlah minutiae yang cocok dari dua buah citra sidik jari dan correlationbased dengan membandingkan pola umum dari dua buah citra sidik jari. Teknik yang berbasis minutiae bergantung pada seberapa akurat ekstraksi minutiae dari citra sidik jari sedangkan teknik yang berbasis korelasi bergantung pada distorsi dan noise yang ada di dalam citra sidik jari [Tirta Mahardika, 2006]. Salah satu permasalahan penting dalam sistem pengenalan sidik jari adalah peningkatan optimasi kerja sistem, untuk meningkatkan optimasi kerja sistem, dapat digunakan berbagai macam algoritma optimasi. Salah satunya yang dikenal cukup handal adalah propagasi balik yang merupakan metoda pelatihan supervised dan didesain untuk operasi pada jaringan feed forward multi lapis. 2. Ekstraksi Minutiae Ekstraksi minutiae diperoleh menggunakan matriks ketetanggaan dan filter bentuk dengan topologinya dirancang untuk mengeksploitasi dua sifat minutiae, yaitu untuk mendeteksi akhir garis alur atau titik-titik percabangan. Citra awal berhubungan dengan arah garis-garis alur pola sidik jari yang kemudian di sekat-sekat kedalam daerah-daerah yang terhubung yang homogen. Terminasi dan percabangan garis alur pola sidik jari maka diperoleh titik-titik minutiae. Peta dari titik-titik minutiae disimpan sebagai informasi unik berhubungan dengan sidik jari individual [D. Maltoni, 2003]. Pencocokan minutiae ini akan melakukan analisis percabangan garis (ridges bifurcations) dan akhir garis (ridges ending). Keseluruhan pola sidik jari rata-rata berisikan 100 minutiae, area pengukuran rata-rata berisikan 30-60 minutiae tergantung dari jari dan area sensor. Titik-titik minutiae disimpan berikut posisi dari titik minutiae local dalam kode 1
pola sidik jari atau secara langsung dalam template acuan.
Gambar. 1. Bentuk Ridge pada Sidikjari [D. Maltoni, 2003].
Bagian utama dari penggunaan pola sidik jari untuk sistem autentikasi adalah bagaimana mendapatkan pola sidik jari untuk disimpan sebagai template sewaktu pendaftaran ataupun sewaktu dilakukan perbandingan pola sidk jari tertentu dengan template tersebut (sewaktu identifikasi/verifikasi). Sistem pengenalan sidik jari memanfaatkan struktur sidik jari setiap manusia yang berbeda(ada kesamaan degan presentase yang cukup kecil). Sistem ini melibatkan penentuan tingkat kesamaan antara 2 citra sidik jari dengan membandingkan struktur ridge atau distribusi spasial dari titik-titik minutiae. Untuk mendapatkan titik-titik minutiae ini diperlukan beberapa proses terhadap citra hasil penangkapan Menggunakan Sensor Fingerprint Seperti Threshold Dan Thinning.[Adi, Kusworo, 2002] 3. Jaringan Syaraf Tiruan Propagasi Balik 3.1. Normalisasi Meskipun di algoritma ini tidak disebutkan bahwa data harus di normalisasi, akan tetapi ada baiknya dilakukan normalisasi sehingga didapatkan nilai antara 0 sampai 1. Alasan pertama adalah data menjadi lebih kecil karena sudah nol koma dan alasan kedua adalah dengan data yang kecil pengolahan tidak memerlukan memori yang besar sehingga akan menambah kecepatan proses pembelajaran [D. Maltoni, 2003]. Normalisasi dilakukan dengan cara membagi setiap komponen nilai dari data jarak minutiae dengan nilai maksimum dari data jarak minutiae tersebut. 3.2. Jaringan Syaraf Tiruan Propagasi Balik Algoritma pelatihan propagasi balik (Backpropagation), pertama kali dirumuskan oleh Werbos dan dipopulerkan oleh Rumelhart dan McClelland untuk dipakai pada jaringan syaraf tiruan (JST), dan selanjutnya algoritma ini biasa disingkat dengan BP. Algoritma ini termasuk metoda pelatihan terbimbing (supervised) dan didesain untuk operasi pada jaringan feed forward multi lapis.
Metoda Propagasi Balik ini banyak diaplikasikan secara luas. Sekitar 90%, bahkan lebih BP telah berhasil diaplikasikan di berbagai bidang, diantaranya diterapkan di bidang finansial, pengenalan pola tulisan tangan, pengenalan pola suara, sistem kendali, pengolah citra medika dan masih banyak lagi keberhasilan BP sebagai salah satu metoda komputasi yang handal. Algoritma ini juga banyak dipakai pada aplikasi pengaturan karena proses pelatihannya didasarkan pada hubungan yang sederhana, yaitu : Jika keluaran memberikan hasil yang salah, maka penimbang (Weight) dikoreksi supaya galatnya dapat diperkecil dan respon jaringan selanjutnya diharapkan akan lebih mendekati harga yang benar. BP juga berkemampuan untuk memperbaiki penimbang pada lapisan tersembunyi (hidden layer).
Gambar 2. Model Jaringan Syaraf Tiruan Lapis Jamak
Secara garis besar, mengapa algoritma ini disebut sebagai propagasi balik, dapat dideskripsikan sebagai berikut: Ketika jaringan diberikan pola masukan sebagai pola pelatihan maka pola tersebut menuju ke unit-unit pada lapisan tersembunyi untuk diteruskan ke unit-unit lapisan keluaran. Kemudian unit-unit lapisan keluaran memberikan tanggapan yang disebut sebagai keluaran jaringan. Saat keluaran jaringan tidak sama dengan keluaran yang diharapkan maka keluaran akan menyebar mundur (backward) pada lapisan tersembunyi diteruskan ke unit pada lapisan masukan. Mekanisme pelatihan tersebut dinamakan backpropagation/propagasi balik. Tahap pelatihan ini merupakan langkah bagaimana suatu jaringan saraf itu berlatih, yaitu dengan cara melakukan perubahan penimbang (sambungan antar lapisan yang membentuk jaringan melalui masing-masing unitnya). Sedangkan pemecahan masalah baru akan dilakukan jika proses pelatihan tersebut selesai , fase tersebut adalah fase mapping atau proses pengujian/testing [D. Maltoni, 2003]. 2
4.
Sistem Pengenalan Sidik Jari dengan Propagasi Balik Data input sistem pengenalan sidik jari ini diambil dari citra sidikjari dalam file .BMP atau .JPEG yang kemudian akan melalui proses normalisasi untuk mendapatkan citra yang sama ukurannya pikselnya. Dilanjutkan dengan proses inhacement, ekstraksi ciri untuk memperoleh data minutiae sebagai masukan pada jaringan propagasi balik untuk pembelajaran, sebagian data tersebut akan disimpan di database. Pengenalan citra untuk pengujian data akan membandingkan data yang akan diuji dengan data yang disimpan pada database. Hasilnya berupa data dikenali atau tidak dengan data yang duji. Perancangan program sistem pengenalan sidik jari dengan menggunakan minutiae dan metode jaringan syaraf tiruan propagasi balik (backpropagation). Sistem ini untuk mengenali citra sidik jari terbagi menjadi dua sistem yaitu : sistem pembelajaran dan sistem pengenalan. Tahap pre pocessing ini ada dua tahap yaitu Tresholding dan Thinning.
adalah salah satu algoritma thinning yang cukup populer dan telah digunakan sebagai suatu basis perbandingan untuk thinning. Algoritma ini cepat dan mudah di implementasikan. Setiap iterasi dari metode ini terdiri dari dua subiterasi yang berurutan yang dilakukan terhadap contour points dari wilayah citra. Contour point adalah setiap piksel dengan nilai 1 dan memiliki setidaknya satu 8-neighbor yang memiliki nilai 0. 4.2. Ekstraksi Ciri Minutiae dicari dengan mendeteksi adanya percabangan saja. Cabang hitam pada suatu citra biner merupakan ujung hitam pada citra biner inversnya. Thinning dilakukan pada obyek hitam dari citra biner, sehingga hasil penulangan suau citra akan berbeda dengan hasil penulangan citra inversnya. Selain itu proses tersebut dapat mengatasi kerusakan pada citra yang mengakibatkan hilangnya minutiae.
Image Enhancement Ekstraksi Ciri
Hasil Pengenalan
Propagasi Balik
Database
Gambar 3. Diagram Blok Sistem Pengenalan Sidikjari
4.1.1. Tresholding Image / citra sidik jari yang telah dinormalisasi, selanjutnya mengalami proses threshold untuk memperjelas alur sidik jari. Proses ini sangat berguna jika citra yang didapat, terdapat warna piksel yang tidak jelas (blok hitam). Tahap ini terlebih dahulu mencari filter rata-rata / mean dari citra sidik jari, pada program ini mean yang merupakan hasil dari jumlah piksel dibagi dengan hasil perkalian scale width dengan scale height dan dengan 1.38 untuk meminimalkan /mengurangi warna hitam (hitam yang mengeblok). Nilai piksel baru / hasil treshold didapat dari hasil piksel lebih dari mean maka image tresholding dirubah RGB nya menjadi 255, 255, 255 sebaliknya jika kurang dari mean maka diubah menjadi 0,0,0. 4.1.2. Thinning Algoritma thinning yang digunakan pada penelitian ini adalah Zhang – Suen. Algoritma ini
Hasil penulangan adalah garis dengan ketebalan satu piksel. Pada citra thinning adanya percabangan dideteksi dengan cara menelusuri setiap piksel hitam pada citra yang delapan titik tetangganya sesuai salah satu dari dua belas (12) matriks 3 x 3 piksel yang merupakan konfigurasi dari matriks percabangan Minutiae yang diperoleh dari penulangan citra biner awal merupakan alur cabang (ridge bifurcation), sedangkan minutiae yang diperoleh dari penulangan citra biner hasil inversnya merupakan alur berhenti (ridge ending). 4.2.1. Ekstraksi Daerah Minutiae / Jarak Proses ekstraksi minutiae semua minutiae dideteksi lalu minutiae – minutiae tersebut kemudian ditandai dengan diberi titik pada tiap minutiae. Sehingga hasil dari proses ekstraksi minutiae adalah beberapa titik yang menandai adanya minutiae baik 3
jalur percabangan (ridge bifurcation) maupun alur perhentian (ridge ending). Kemudian tiap – tiap minutiae diekstraksi untuk mendeteksi tetangganya, dengan memposisikan salah satu minutiae (yang diekstraksi) berada di tengah, sedangkan yang disekitarnya merupakan minutiae – minutiae tetangga. Jarak minutiae tetangga nantinya akan bervariasi ada yang dekat dan ada yang jauh. Data awal / jarak ini dijadikan sebagai inputan / sumber data yang akan diolah mengunakan propagasi balik. Langkah awal sebelum mencari propagasi balik.
Citra sidik jari akan di enhancement (perbaikan citra) dengan cara di tresholding, thinning untuk penipisan alur sidik jari. Hasil dari proses thinning ini akan diekstraksi dengan ekstraksi minutiae, setelah mendapatkan titik minutiae, maka hitung jarak antar titik minutiae tersebut. Data hasil jarak antar titik tersebut nantinya akan dijadikan data input / yang akan dihitung dalam proses selanjutnya yaitu propagasi balik (Backpropagation).
Gambar 6. Blok Diagram Pembelajaran Gambar 4. Tampilan Hasil Minutiae
4.2.2. Normalisasi Sebelum melakukan proses propagasi balik maka akan dilakukan normalisasi terhadap data input untuk propagasi balik tersebut. Untuk data input yang akan di normalisasi adalah hasil data jarak dari proses minutiae. Normalisasi ini bertujuan agar didapatkan nilai antara 0 sampai 1. Alasan pertama adalah data menjadi lebih kecil karena sudah nol koma dan alasan kedua adalah dengan data yang kecil pengolahan tidak memerlukan memori yang besar sehingga akan menambah kecepatan proses pembelajaran. Proses Region of Interest (ROI) ini diambil hanya pada daerah yang ada titik termination dan bifurfication dari citra ini, yiatu yang ditandai titik merah dan hijau. Cara ini mempunyai dua cara yaitu automatis dan manual. Proses ini gunanya untuk mempermudah proses validasi.
Hasil dari propagasi balik berupa sebuah nilai dari output layer yang mewakili identitas dari masingmasing sidik jari (akan disebut ciri I) ini nantinya akan disimpan ke dalam database, sebagai matrik / sidik jari referensi. Lebih jelasnya bisa dilihat pada gambar 6 yaitu blok diagram pada sistem pembelajaran. Gambar 6 diatas dapat dilihat bahwa secara keseluruhan terdapat empat bagian, yaitu : a. Bagian akuisisi citra, pengambilan citra sidik jari b. Ekstraksi ciri, terdiri dari pre-processing untuk memperoleh suatu ciri c. Pencocokan, untuk mencocokkan ciri yang diperoleh dengan ciri yang ada dalam basis data d. Basis data, dibutuhkan untuk menyimpan data biometrik individu yang telah terdaftar.
(a )Hidden Layer 8, iterasi 500
Gambar 5. Region of Interest Automatis dari Hasil Minutiae
4.3. Tahap Pembelajaran
(b) Hidden Layer 8, iterasi 1000 Gambar 7. Hasil dengan Hidden Layer 8
4
Proses pre-processingnya adalah dilakukan perbaikan citra (Image Enhancement) sidik jari. Setelah dilakukan perbaikan maka sidik jari tersebut akan diekstraksi dengan menggunakan ekstraksi Minutiae. Setiap titik percabangan akan dihitung jaraknya. Hasil perhitungan (jarak) ini digunakan sebagai data / input untuk proses Backpropagation. Jarak antar titik minutiae / percabangan dan hasil nilai bobot serta output Backpropagation disimpan ke dalam database. 4.4. Sistem Pengenalan Tahapan ini langkah – langkahnya hampir sama seperti pada sistem pembelajaran tetapi yang membedakan adalah membandingkan hasilnya dengan citra sidik jari dari sistem pembelajaran. Citra sidik jari akan di Enhancement (perbaikan citra) dengan cara di tresholding, thinning untuk penipisan alur sidik jari. Hasil dari proses i ini akan diekstraksi dengan ekstraksi Minutiae, setelah mendapatkan titik i, maka hitung jarak antar titik minutiae tersebut. Data hasil jarak antar titik tersebut nantinya akan dijadikan data input / yang akan dihitung dalam proses selanjutnya yaitu propagasi balik (backpropagation). Hasil dari Backpropagation berupa suatu nilai output (akan disebut ciri II ) ini nantinya akan dibandingkan dengan ciri I (yang ada dalam database) menggunakan metode Ecludean Distance. Dari hasil percobaan antara saat nilai iterasi 500 dengan 1000 untuk jumlah hidden layer sama, akan menghasilkan nilai yang lebih baik saat nilai iterasi 1000, dikarenakan menghasilkan nilai yang lebih stabil. 4.5.
Proses Verifikasi
Proses Verifikasi (proses pengenalan) ini akan mengenali sidik jari seseorang, untuk prosesnya hampir sama pada form proses pembelajaran yaitu melalui proses Image Enhancment, Ekstraksi Minusi, Normalisasi dan Propagasi Balik. Tetapi ada sedikit perbedaan dalam proses propagasi balik, yaitu dalam form verifikasi ini hanya menggunakan proses forward tanpa backward. Sidik jari seseorangyang akan di kenali di proses terlebih dahulu sehingga menghasilkan output propagasi balik (Ciri II) untuk dilakukan matching dengan output propagasi balik pada proses pembelajaran (Ciri I). Dari hasil matching ini dapat di ketahui apakah sidik jari tersebut dapat dikenali atau tidak. 4.6. Ecludian Distance Proses mencocokkan sidik jari tersebut menggunakan Ecludean Distance yaitu yang menghitung selisih antara output Ciri I dan Ciri II. Berikut adalah tampilan tabel output pada proses verifikasi.
Tabel 1. Hasil Output Propagasi Balik Referensi Sidik Sidik Output Output jari jari 0.4341890395 1 0.017451892 16 2
0.034898468
17
0.4693285971
3
0.052334414
18
0.4976408638
4
0.06975442
19
0.519927988
5
0.087153179
20
0.588144145
6
0.104525392
21
0.588469288
7
0.121865767
22
0.6110569446
8
0.139169023
23
0.6475372395
9
0.156429889
24
0.6746917152
10
0.173643108
25
0.695363901
11
0.190803437
26
0.7263869157
12
0.207905649
27
0.7496231539
13
0.224944534
28
0.7676254175
14
0.241914903
29
0.7923890497
15
0.4170029472
30
0.821187449
Tabel 2. Hasil Propagasi Balik Verifikasi I Output 0.8093562886
Sedangkan hasil dari mencocockkan sidik jari (matching) dengan menggunakan Ecludean Distance dapat dilihat pada tabel hasil Ecludean berikut. Tabel 3. Hasil Ecludean Verifikasi I Data Sidik Jari Ecludean 15 0.0287034043
Jika selisihnya / error sama dengan nol (0) atau kurang dari 10% maka sidik jari dianggap cocok / dikenali. Apabila sidik jari tersebut dikenali maka akan muncul keterangan data dikenali. Dari hasil percobaan diatas tampak bahwa dalam mengenali suatu sidik jari secara tingkat keakuratan aplikasi ini adalah 90% atau akurat. Karena titik minutiae pada waktu verifikasi sama dengan titik minutiae yang ada dalam database. 5. Kesimpulan Berdasarkan hasil penelitian dan pengujian maka dapat diambil kesimpulan sebagai berikut : 1. Penggunaan metode Propagasi Balik, pada pembelajaran memasukkan 30 citra dan pengujian yang digunakan adalah 10 citra, didapat hasil pengenalan dengan tingkat keberhasilan 99 % sehingga Propagasi Balik layak untuk digunakan sebagai metode pengenalan. 2. Propagasi Balik untuk jumlah iterasi lebih banyak akan menghasilkan data yang lebih 5
3.
baik, penelitian ini digunakan 500 dan 1000 iterasi. Jumlah hidden layer juga berpengaruh, jika digunakan jumlah layer yang 8 data yang diperoleh lebih baik dibanding 4 layer. Penggunaan ecludean distance menghasilkan selisih atau eror 1 (satul) %.
DAFTAR PUSTAKA 1.
2.
3.
4.
5.
6.
7.
8.
9.
Adi, Kusworo, “ Ekstraksi Ciri Berbasis Filter Gabor sebagai Sistem Verifikasi Sidikjari’, Tesis Magister, ITB, 2002 Darma Putra, “Sistem Biometrika : Konsep Dasar, Teknik Analisa Citra, dan Tahapan Membangun Aplikasi Sistem Biometrika”, Andi Offset, Yogyakarta D. Maltoni, D. Maio, A.K. Jain, S. Prabakhar, “Handbook of Fingerprint Recognition”, Springer, New York, 2003. Novira, Ade Chopie, “ Pengenalan Pola Sidikjari dengan Jaringan Syaraf Tiruan”,Skripsi, Teknik Elektro FT UGM, 2002. O’Gorman L, “Fingerprint Verification”, http://www.cse.msu.edu/~cse891/Sect601/textb ook/2.pdf, diunduh tanggal 18 September 2012 Minarni, “Klasifikasi Sidikjari dengan Pemrosesan Awal Tranformasi Wavelet”, www.oocities.com/transmisi_eeundip/minarni. pdf, diunduh tanggal 18 September 2012 Nalini K.R., Andrew Senior, Ruud M.Bolle, “Automated Biometriks”, http://us.ibm.com , diunduh tanggal 18 September 2012 Sri Heranurweni, “Performansi Autentikasi Sistem Biometrik Sidik Jari Menggunakan Principal Component Analysis”, Penelitian LPPM Universitas Semarang, 2012 Tirta Mahardika, “Sistem Verifikasi Sidik Jari dengan Metode Bank Gabor Filter”, Skripsi Teknik Elektro UNHAS, 2006
6