pengenalan tanda tangan

5
A15 Seminar Nasional Teknologi Informasi 2010 80 PENGENALAN TANDA TANGAN DENGAN MENGGUNAKAN NEURAL NETWORK DAN PEMROSESAN AWAL THINNING ZHANG SUEN Chairisni Lubis 1) Yuliana Soegianto 2) 1) Fakultas Teknologi Informasi Universitas Tarumanagara Jl. S.Parman No.1 Jakarta 11440 Indonesia email : [email protected] 2) Fakultas Teknologi Informasi Universitas Tarumanagara Jl. S.Parman No.1 Jakarta 11440 Indonesia email : [email protected] ABSTRAK Pada sistem pengenalan tandatangan ini digunakan Backpropagation Neural Network. Pemrosesan awal yang dilakukan untuk mendapatkan ciri penting sebelum diproses dalam Neural Network adalah proses thinning Zhang Suen, sedangkan ekstraksi cirinya menggunakan proyeksi histogram. Pada sistem pengenalan tandatangan ini, citra tandatangan diperoleh dengan cara menscan tanda tangan yang akan diproses dan disimpam dalam format JPG dan BMP. Program aplikasinya dibuat dengan menggunakan Visual basic.Net dan untuk menyimpan tandatangan yang akan dipakai dalam proses pembelajran digunakan Microsoft Access. Pada proses pengujian digunakan 10 pola tanda tangan, dengan demikian jumlah neuron output pada arsitektur Backpropagation Neural Network yang digunakan sebanyak 10 buah. Jumlah neuron inputnya sebanyak 16 buah yang berasal dari hasil ekstraksi ciri dengan menggunakan proyeksi histogram. Dari hasil pengujian didapat tingkat pengenalan tanda tangan yang diperoleh dengan menggunakan Backpropagation Neural Network dan pemrosesan awal menggunakan thinning Zhang Suen sebesar 94% Key words Backpropagation Neural Network, Proyeksi Histogram, Thinning Zhang Suen. 1. Pendahuluan Sistem pemeriksaan tanda tangan secara manual memiliki kelemahan dimana pemeriksa kurang teliti dalam membandingkan tanda tangan. Salah satu solusi untuk mengatasi kelemahan sistem manual ini adalah dengan menggunakan Neural Network untuk proses pengenalannya. Neural Network merupakan suatu prosesor yang dapat melakukan pendistribusian secara besar-besaran, yang memiliki kecenderungan alami untuk menyimpan suatu pengenalan yang pernah dialaminya, dengan kata lain Neural Network ini memiliki kemampuan untuk dapat melakukan pembelajaran dan pengenalan terhadap suatu pola. Pada sistem pengenalan tandatangan ini digunakan Backpropagation Neural Network. Sebelum diproses dalam Neural Network, tanda tangan harus diproses awal dahulu (preprosesing). Tujuan pemrosesan awal ini adalah untuk mendapatkan ciri penting dari suatu pola tandatangan melalui proses yang dinamakan ekstraksi ciri. Metoda ekstraksi ciri yang digunakan adalah proyeksi histogram. Tanda tangan yang akan diperiksa kadang-kadang mengalami penebalan (salah satu penyebabnya adalah berasal dari tinta yang digunakan), karena itu pada sistem pengenalan tanda tangan ini digunakan proses thinning Zhang Suen untuk mengambil garis yang lebih tipis dari sebuah tanda tangan Thinning atau penipisan adalah suatu proses pengurangan objek dalam citra digital hingga ukuran minimal yang diperlukan untuk pengenalan objek, hasilnya dikenal dengan skeleton (kerangka) dan proses thinning kadang-kadang dikenal juga sebagai skeletonisasi. Algoritma Thinning Zhang Suen

Upload: mazkawaihi-sabir

Post on 13-Nov-2015

17 views

Category:

Documents


6 download

DESCRIPTION

mengenal tanda tangan dengan Artificial intelegent

TRANSCRIPT

  • A15 Seminar Nasional Teknologi Informasi 2010

    80

    PENGENALAN TANDA TANGAN DENGAN MENGGUNAKAN NEURAL NETWORK DAN PEMROSESAN AWAL THINNING

    ZHANG SUEN

    Chairisni Lubis1) Yuliana Soegianto2) 1) Fakultas Teknologi Informasi Universitas Tarumanagara

    Jl. S.Parman No.1 Jakarta 11440 Indonesia email : [email protected]

    2) Fakultas Teknologi Informasi Universitas Tarumanagara Jl. S.Parman No.1 Jakarta 11440 Indonesia

    email : [email protected]

    ABSTRAK

    Pada sistem pengenalan tandatangan ini digunakan Backpropagation Neural Network. Pemrosesan awal yang dilakukan untuk mendapatkan ciri penting sebelum diproses dalam Neural Network adalah proses thinning Zhang Suen, sedangkan ekstraksi cirinya menggunakan proyeksi histogram. Pada sistem pengenalan tandatangan ini, citra tandatangan diperoleh dengan cara menscan tanda tangan yang akan diproses dan disimpam dalam format JPG dan BMP. Program aplikasinya dibuat dengan menggunakan Visual basic.Net dan untuk menyimpan tandatangan yang akan dipakai dalam proses pembelajran digunakan Microsoft Access. Pada proses pengujian digunakan 10 pola tanda tangan, dengan demikian jumlah neuron output pada arsitektur Backpropagation Neural Network yang digunakan sebanyak 10 buah. Jumlah neuron inputnya sebanyak 16 buah yang berasal dari hasil ekstraksi ciri dengan menggunakan proyeksi histogram. Dari hasil pengujian didapat tingkat pengenalan tanda tangan yang diperoleh dengan menggunakan Backpropagation Neural Network dan pemrosesan awal menggunakan thinning Zhang Suen sebesar 94%

    Key words Backpropagation Neural Network, Proyeksi Histogram, Thinning Zhang Suen.

    1. Pendahuluan

    Sistem pemeriksaan tanda tangan secara manual memiliki kelemahan dimana pemeriksa kurang teliti dalam membandingkan tanda tangan. Salah satu solusi untuk mengatasi kelemahan sistem manual ini adalah dengan menggunakan Neural Network untuk proses pengenalannya. Neural Network merupakan suatu prosesor yang dapat melakukan pendistribusian secara besar-besaran, yang memiliki kecenderungan alami untuk menyimpan suatu pengenalan yang pernah dialaminya, dengan kata lain Neural Network ini memiliki kemampuan untuk dapat melakukan pembelajaran dan pengenalan terhadap suatu pola. Pada sistem pengenalan tandatangan ini digunakan Backpropagation Neural Network. Sebelum diproses dalam Neural Network, tanda tangan harus diproses awal dahulu (preprosesing). Tujuan pemrosesan awal ini adalah untuk mendapatkan ciri penting dari suatu pola tandatangan melalui proses yang dinamakan ekstraksi ciri. Metoda ekstraksi ciri yang digunakan adalah proyeksi histogram. Tanda tangan yang akan diperiksa kadang-kadang mengalami penebalan (salah satu penyebabnya adalah berasal dari tinta yang digunakan), karena itu pada sistem pengenalan tanda tangan ini digunakan proses thinning Zhang Suen untuk mengambil garis yang lebih tipis dari sebuah tanda tangan Thinning atau penipisan adalah suatu proses pengurangan objek dalam citra digital hingga ukuran minimal yang diperlukan untuk pengenalan objek, hasilnya dikenal dengan skeleton (kerangka) dan proses thinning kadang-kadang dikenal juga sebagai skeletonisasi. Algoritma Thinning Zhang Suen

  • Seminar Nasional Teknologi Informasi 2010 A15

    81

    didasarkan pada evaluasi nilai piksel dan 8 piksel tetangga atau dikenal dengan the 8-neighborhood pixel, dengan piksel acuan Selain itu, pada sistem ini digunakan juga Edge detection Sobel untuk mencari garis tepi tanda tangan sebelum diproses sehingga data yang digunakan merupakan data yang tidak terlalu besar.

    2. Pengenalan tanda tangan dengan menggunakan Backpropagation Neural Network

    Dalam perancangan program pengenalan tanda tangan ini, terdapat beberapa metode yang akan digunakan, yaitu : 1. Thresholding :

    Digunakan untuk mengatur jumlah derajat keabuan yang ada pada citra.

    2. Edge Detection Sobel Digunakan untuk memperjelas garis-garis batas yang terdapat pada citra.

    3. Thinning Zhang Suen Digunakan untuk skeletonizing

    4. Proyeksi Histogram Digunakan untuk proses ekstraksi ciri

    5. Backpropagation Neural Network (BPNN) Digunakan untuk proses pengenalan tanda tangan.

    Pada makalah ini hanya dibahas 3 buah metoda yang dianggap paling dominan dalam perancangan program tanda tangan ini, yaitu : 2.1 Thinning Zhang Suen

    Thinning Zhang Suen adalah salah satu

    algoritma thinning yang cukup populer dan telah digunakan sebagai suatu basis untuk perbandingan untuk thinning. Setiap iterasi dari metode ini terdiri dari dua sub-iterasi yang berurutan yang dilakukan terhadap contour points dari wilayah citra. Contour point adalah setiap pixel dengan nilai 1 dan memiliki setidaknya satu 8-neighbor dengan nilai 0. Langkah pertama adalah menandai contour point p untuk dihapus jika semua kondisi ini dipenuhi:[1]

    2 N(p1) 6; S(p1) = 1; p2 . p4 . p6 = 0; ( 1 ) p4 . p6 . p8 = 0;

    Keterangan : N(p1) = jumlah tetangga dari p1 yang tidak 0 S(p1) = jumlah dari transisi 0-1 pada urutan p2, p3, ..., p8, p9.

    p9 p2 p3

    p8 p1 p4

    p7 p6 p5

    Gambar 1 Piksel P1 dengan 8 tetangga Pada langkah kedua, kondisi 1 dan 2 sama

    dengan langkah pertama, sedangkan kondisi 3 dan 4 diubah menjadi:

    1. p2 . p4 . p8 = 0; 2. p2 . p6 . p8 = 0;

    Langkah pertama dilakukan terhadap semua

    border piksel di citra. Jika salah satu dari keempat kondisi di atas tidak dipenuhi atau dilanggar maka nilai piksel yang bersangkutan tidak diubah. Sebaliknya jika semua kondisi tersebut dipenuhi maka piksel tersebut ditandai untuk penghapusan. Piksel yang ditandai tidak dihapus sebelum semua border points selesai diproses. Setelah langkah 1 selesai dilakukan untuk semua border points maka dilakukan penghapusan untuk titik yang telah ditandai (diubah menjadi 0). Setelah itu dilakukan langkah 2 pada data hasil dari langkah 1 dengan cara yang sama dengan langkah 1 sehingga, dalam satu kali iterasi urutan algoritmanya terdiri dari:[1] 1. Menjalankan langkah 1 untuk menandai border points

    yang akan dihapus, 2. Menghapus titik-titik yang ditandai dengan

    menggantinya menjadi angka 0, 3. Menjalankan langkah 2 pada sisa border points yang

    ada langkah 1 belum dihapus lalu yang sesuai dengan semua kondisi yang seharusnya dipenuhi pada langkah 2 kemudian ditandai untuk dihapus,

    4. Menghapus titik-titik yang ditandai dengan menggantinya menjadi angka 0.

    Prosedur ini dilakukan secara iteratif sampai

    tidak ada lagi titik yang dapat dihapus. Pada saat algoritma ini selesai maka dihasilkan skeleton dari citra awal.[1]

    2.2 Proyeksi Histogram

    Ekstraksi ciri dapat mempersingkat waktu pemprosesan dalam pembelajaran, karena semakin banyak input yang masuk dalam pembelajaran Backpropagation maka akan semakin banyak pula persamaan yang akan diproses hal ini dapat menyebabkan proses yang terlalu lama. Salah satu metode yang dapat

  • A15 Seminar Nasional Teknologi Informasi 2010

    82

    digunakan untuk ekstraksi ciri adalah metode proyeksi histogram. Nilai-nilai dari histogram adalah jumlah dari piksel hitam sepanjang arah tertentu. Empat jenis histogram yang ada adalah, di 0 derajat (proyeksi histogram horizontal), di 90 derajat (proyeksi histogram vertikal) dengan melihat pada sumbu horizontal y, positif dan negatif diagonal. Suatu proyeksi histogram horizontal h(x) dari gambar biner f(x,y) adalah jumlah piksel hitam diproyeksikan ke sumbu vertikal x. Sumbu proyeksi histogram vertikal v(y) dari gambar biner f(x,y) adalah jumlah piksel hitam diproyeksikan ke horizontal sumbu y [1] Dari hasil feature vektor akan melakukan pendekatan statistika, yaitu dengan mencari nilai standar deviasi, range, maksimum median, dan mean dari setiap proyeksi. Rumus statistik yang digunakan adalah:[2] 1. Menghitung standar deviasi:

    S = nx2-x2n (n-1) (5) 2. Menghitung Range:

    Range = Maksimum Minimum (6) 3. Mengitung Maksimum Median (7) 4. Menghitung Mean:

    Mean = xn (8) 2.3 Backpropagation Neural Network

    Dari hasil ekstraksi cirri dengan menggunakan proyeksi histogram terdapat empat nilai yang dihitung dari citra secara vertikal, empat nilai yang dihitung dari citra secara horizontal, empat nilai yang dihitung dari citra secara diagonal positif, dan empat nilai yang dihitung dari citra secara diagonal negative. Empat nilai dari masing-masing arah terdiri dari jumlah nilai tengah piksel, nilai mean, nilai maksimum dikurangi dengan nilai median, dan nilai range. Sehingga menghasilkan input enam belas nilai yang akan menjadi enam belas neuron input yang kemudian diproses dalam backpropagation Neural Network Jumlah hidden layer akan dilakukan beberapa percobaan, dengan beberapa percobaan maka akan didapat hasil jumlah hidden layer yang paling baik untuk dipergunakan dalam proses pengenalan. Output berjumlah sepuluh tanda tangan dari sepuluh orang yang berbeda sehingga neuron output berjumlah sepuluh. Epoch dilakukan sebanyak 10000 kali, akan disesuaikan apabila waktu yang diperlukan untuk proses tersebut terlalu lama maka jumlah maksimum epoch akan dikurangi. Alpha () yang dipergunakan antara 0,1 sampai dengan 0,9 dipilih yang menghasilkan nilai output yang terbaik. Dan bobot awal untuk perhitungan awal akan menggunakan bobot acak antara -0.5 sampai dengan 0.5. Arsitektur backpropagation terdapat pada gambar 2 di bawah ini.

    Citra yang dimasukkan dalam program aplikasi ini adalah citra grayscale dan diproses thresholding. Setelah menentukan format input yang akan digunakan dalam proses pengenalan tanda tangan maka langkah selanjutnya adalah menentukan perangkat lunak dan perangkat keras yang akan digunakan, yang dapat mendukung dalam pembuatan program aplikasi ini.

    Program aplikasi pengenalan tanda tangan ini menggunakan spesifikasi perangkat lunak yaitu: 1. Microsoft Visual Basic.Net 2005 2. Microsoft Windows XP Profesional Service Pack 3 3. Microsoft Access 2007

    Dan spesifikasi perangkat keras yang akan

    digunakan adalah:

    1. Processor Intel Pentium 4 CPU 2,4 GHz. 2. Harddisk dengan kapasitas 70GB. 3. RAM 512 Mb. 4. Monitor 14. 5. VGA Card 128 Mb. 6. Mouse. 7. Keyboard.

    1

    X2

    X1

    X16

    1

    Z1

    Z2

    Zp

    Y1

    Y2

    Y10

    V01

    V12

    V22

    V0p

    V02

    V1p

    V11

    V21

    V2p

    V141

    V142

    V14p

    W01

    W02

    W010

    W11

    W12

    W110

    W21

    W22

    W210

    Wp1

    Wp2

    Wp10

    Gambar 2 Arsitektur Backpropagation untuk pengenalan tanda tangan

    3. Hasil Percobaan

    Pengujian pertama dilakukan dengan tujuan untuk menguji nilai alpha dan jumlah hidden layer yang terbaik yang akan digunakan dalam proses Backpropagation Neural Network, sehingga dalam proses selanjutnya akan menggunakan nilai-nilai ini. Berikut

  • Seminar Nasional Teknologi Informasi 2010 A15

    83

    adalah tabel 3 pengujian untuk menemukan jumlah hidden layer dengan alpha 0.9.

    Tabel 1 Jumlah Hidden Layer untuk Pembelajaran Jumlah Hidden

    Layer Berhenti pada

    Epoch Nilai Error

    5 8 0.00078 15 5 0.000689 20 30 0.000916 30 50 0.000818

    Dilihat dari hasil yang didapat, maka dapat diperoleh nilai error yang terkecil, yaitu pada hidden layer yang berjumlah lima belas sehingga akan dipergunakan jumlah hidden layer lima belas untuk proses pembelajaran Backpropagation Neural Network. Pengujian berikutnya adalah penentuan nilai alpha terbaik dari jumlah hidden layer lima belas yang akan digunakan pada proses pembelajaran Backpropagation Neural Network.

    Tabel 2 Nilai Alpha untuk Pembelajaran

    Nilai Alpha Berhenti pada Epoch

    Nilai Error

    0.1 23 0.000692 0.2 18 0.000665 0.3 17 0.000987 0.4 25 0.000794 0.5 27 0.000971 0.6 18 0.000665 0.7 18 0.00089 0.8 14 0.000644 0.9 17 0.000902

    Dilihat dari hasil yang didapat, maka dapat diperoleh nilai alpha yang memiliki nilai error terkecil dari pembelajaran dengan thinning yaitu pada alpha ke 0.8. Sehingga untuk proses pembelajaran Backpropagation akan menggunakan alpha 0.8 dan hidden layer lima belas.

    Pengujian kedua dilakukan dengan tujuan untuk menguji apakah output yang dihasilkan oleh program sesuai dengan konsep yang digunakan. Sampel yang digunakan untuk pengujian tanda tangan ini beasal dari 10 orang . Masing-masing orang memasukkan 5 buah tanda tangan, sehingga jumlah tanda tangan seluruhnya ada 50 tandatangan. Untuk mengetahui pengaruh thinning Zhang Suen pada pengenalan tanda tangan ini, maka digunakan 4 buah alat tulis yang berbeda ketebalannya dan hasilnya dibandingkan dengan pengenalan tanda tangan tanpa menggunakan proses thinning.

    Hasil proses pengenalan tanda tangan dapat dilihat pada tabel 3.

    Tabel 3 Perbandingan hasil pengenalan dengan thinning dan tanpa thinning

    Objek Dengan thinning

    Tanpa thinning

    Pena 92% 94%

    Boxy 92% 94%

    Stabillo 88% 90%

    Spidol 94% 94%

    Dari tabel 3 di atas terlihat bahwa penggunaan thinning dalam proses pengenalan tanda tangan tidak memberikan dampak yang besar pada proses pengenalan, karena gambar tanda tangan yang sudah tipis apabila dimasukkan dalam proses thinning maka citra akan terbuang sehingga tidak ikut dalam proses backpropagation. Seperti contoh gambar 3 hasil thinning di bawah ini.

    Gambar 3 Hasil Thinning

    Hasil pengenalan degan menggunakan thinning Zhang Suen sebesar 94 % didapat pada saat menggunakan tingkat ketebalan alat tulis yang lebih besar (spidol), tetapi hasilnya belum lebih baik dengan tanpa menggunakan thinning

    4. Kesimpulan

    Pengenalan tanda tangan dengan menggunakan Backpropagation Neural Network dengan pemrosesan awal thinning Zhang Suen tidak memberikan dampak yang cukup baik, persentase yang diperoleh adalah 94% dan dibandingkan proses yang tanpa menggunakan thinning, persentase yang diperoleh juga 94%. Hal ini dikarenakan terdapat penghilangan data gambar tanda tangan setelah proses thinning sehingga hal ini dapat mempengaruhi dalam pengenalannya.

  • A15 Seminar Nasional Teknologi Informasi 2010

    84

    REFERENSI [1] Andreas Nataniel, dkk., Algoritma

    Thinning, http://www.google.co.id/#hl=id&q=1.%09Skeleton+dari+citra+kira-kira+berada+di+bagian+tengah+dari+citra+awal+sebelum+dilakukan+thinning&meta=cr%3DcountryID&aq=&oq=1.%09Skeleton+dari+citra+kira-kira+berada+di+bagian+tengah+dari+citra+awal+sebelum+dilakukan+thinning&fp=3c535af0b522fb05, 10 Desember 2009.

    [2] Histogram Proyeksi, http://4.bp.blogspot.com/_D5l6uqAnYKs/Si20MQRnZdI/AAAAAAAAAJQ/VHX-MyE3Dc0/s1600-h/histproyeksi.jpg, 28 Maret 2010.

    Chairisni Lubis, memperoleh gelar Dra dari Jurusan Fisika, Universitas Indonesia dan M.Kom dari Program Pasca Sarjana Ilmu Komputer, Universitas Indonesia .

    Tabel 3 Perbandingan hasil pengenalan dengan thinning dan tanpa thinning