Top Banner
PENERAPAN JARINGAN SYARAF TIRUAN UNTUK PEMBUATAN SISTEM PENGENALAN TANDA TANGAN SKRIPSI Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer Oleh: Pristina Mayrita Naibaho NIM: 023124021 PROGRAM STUDI ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
99

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

Aug 03, 2019

Download

Documents

vukhue
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

PENERAPAN JARINGAN SYARAF TIRUAN UNTUK

PEMBUATAN SISTEM PENGENALAN TANDA TANGAN

SKRIPSI

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer

Oleh:

Pristina Mayrita Naibaho

NIM: 023124021

PROGRAM STUDI ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SANATA DHARMA YOGYAKARTA

2007

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

- PERSEMBAHAN -

Whene’er i come to Jesus,

When troubled or distressed,

I always find a refuge

When i with Him can rest....

In times of joy or sorrow,

Whate’er my need may be

I can always come to Jesus,

And Jesus comfort me....

” Sebab di dalam Dialah tersembunyi segala harta hikmat dan pengetahuan. In whom are hide all the treasures of wisdom and knowledge (Kol 2;3) “

Karya ini kupersembahkan untuk :

The Lord Almighty.

Thanks Jesus, You are so good to me....

You are my all in all.. Without You, i’m nothing at all..

Bapakku P. Naibaho, Spd & Mamaku D. Nadeak yang selalu setia

mendoakanku, mendukung dan memberiku kesempatan untuk memulai dari

yang baru.

Abang-abangku :

Saut Maruli Naibaho, Am.T.

Andy Juliver Naibaho S.T. dan my Sister in law Netty

Nainggolan,Am,Keb. and my little nephew Rafael..

Jantri Musa Marolop Naibaho S.T.

My little Sister Erita Marlina Naibaho ☺

 

Thanks Buat semua cinta yang diberikan buat aku,  

Finally i can finish..  

...Jesus is only a prayer away... 

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat

karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan

daftar pustaka, sebagaimana layaknya karya ilmiah

Yogyakarta, 28 Maret 2007

Penulis

Pristina Mayrita Naibaho

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

ABSTRAK

Tanda tangan merupakan salah satu cara yang digunakan sebagai sistem

autentifikasi dalam sebuah instansi, atau perusahaan-perusahaan besar khususnya. Hal ini

digunakan untuk dapat menjaga kerahasiaan data didalamnya. Dalam skripsi ini dibuat

sebuah sistem yang dapat mengenali tanda tangan dengan menggunakan jaringan syaraf

tiruan khususnya metode backpropagation.

Backpropagation yang digunakan dalam pembuatan sistem ini adalah

backpropagation standar. Arsitektur jaringan yang digunakan terdiri dari sebuah layar

input dengan 2500 neuron, sebuah layar tersembunyi yang terdiri dari 5 neuron dan

sebuah layar output dengan 5 neuron (2500 – 5 – 5).

Data yang digunakan untuk training adalah data tanda tangan yang diambil dari 5

orang, dimana setiap orang membubuhkan 10 buah tanda tangan. Hasil yang dicapai dari

sistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin

besar pula kemungkinan pola akan dikenali. Pola dapat dikenali sebesar 83 % untuk

pengujian pola dengan 25 data training (50 % data), 90% untuk pengujian pola dengan 30

data training (60 % data) dan 94 % untuk pengujian pola dengan 35 data training (70 %

data).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

ABSTRACT

Signature represent one of method that used for the aunthentification system in a

institution, or big companys specially. This is used to be able keep of data secret in it. In

this scripsi made a system able to recognize signature by using artificial neural network

specially method of backpropagation.

Backpropagation which is used in making of this system is a standard

backpropagation. Network architecture that used is consist of a input layer with 2500

neuron, a hidden layer which consist of 5 neuron and a output layer with 5 neuron ( 2500

- 5 - 5).

Data used for training is signature had taken from 5 people, where each and

everyone give 10 signature. Result of this system indicate that more and more amount of

training pattern, hence ever greater also possibility of pattern will recognize. Pattern can

recognize equal to 83 % for the testing of pattern by 25 training set ( 50 % data), 90% for

the testing of pattern by 30 training set (60 % data) and 94 % for the testing of pattern by

35 training set ( 70 % data).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

KATA PENGANTAR

Puji syukur pada Tuhan Yesus Kristus yang telah melimpahkan rahmat dan kasih-

Nya sehingga penulis bisa menyelesaikan skripsi ini.

Skripsi ini ditulis untuk memenuhi salah satu syarat memperoleh gelar sarjana

sains Fakultas Matematika dan Ilmu Pengetahuan Alam, Program Studi Ilmu Komputer

Universitas Sanata Dharma.

Dalam penulisan skripsi penulis menyadari banyak pihak yang telah memberikan

sumbangan baik pikiran, waktu, tenaga, bimbingan dan dorongan pada penulis sehingga

akhirnya skripsi ini dapat selesai. Oleh karena itu dengan segala kerendahan hati penulis

menyampaikan ucapan terima kasih kepada :

1. Bapak Aris Dwi Atmoko selaku Dekan Fakultas MIPA.

2. Bapak Drs. J.J. Siang, M.Sc selaku dosen pembimbing untuk kesabaran, bantuan

dan arahan selama penulis menyusun skripsi.

3. Ibu P.H. Prima Rosa selaku KaProDi Ilmu Komputer untuk bantuan dan dorongan

yang diberikan selama kuliah.

4. Bapak St. Eko Hari Permadi, selaku dosen penguji.

5. Bapak Y. Joko Nugroho, selaku dosen penguji.

6. Seluruh Dosen Ilmu Komputer yang telah membimbing penulis selama belajar di

Sanata Dharma.

7. Pak Tukijo, Ibu Warni, mbak Linda, serta mas Susilo dan mas Widodo atas

bantuan teknis selama ini.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

8. Teman – teman seperjuangan IKOM ’02, Agnes Nulat, Esti, Lidia n lainnya,

Especially for Team SC: Daru “Kakak Canggah”, Hendy “De’Dita”, Utix “Jeng

Tik” , Anell “Jeng Sri”, Kris “Bunda”..Ayo piknik..

9. Sister and Brother in PMK OIKUMENE: Tassa, Asih&Wahyu, Daniel, Agung,

April&Ray, Elis, Vika, Ridwan, Citra&Frans, Priskila, Tias, Putri, Wahyu&Dian,

dan semua teman2 PMK, thanks for doa&dukungannya.

10. Sahabat-sahabatku di KOST “ICHA”: Techa, Cicil, Ratih, Via, Ijup, Lusi, Mba

Nia, Indri, dan Ana. Thanks buat kebersamaannya selama ini.. Kepolosan kalian

mendewasakanku.. Love u all...

11. My old friends, Mba Ninuk, Mba Nina, Tika, Lina nova, and especially Bang

Cipto, thanks buat kesetiaannya, tuk tetap menyemangati aku..

12. All Friends in solafide..I love U all, tetap setia melayani Tuhan.

13. Kakak-kakakku, Mas Budi, Mas Indra, Mas Dewa, Bang Egie, Bang Ajie, Mas

Leo, Mas Prio, Mba Niken, dan semua ikom 03, 01, 00. Thankyu....

14. Semua pihak yang tidak dapat disebutkan satu persatu, terima kasih telah

membantu dalam menyelesaikan tugas akhir ini

Penulis menyadari masih banyak kekurangan dalam penulisan skripsi ini, oleh

karena itu dengan kerendahan hati penulis mengharapkan kritik dan saran guna

penyempurnaan skripsi ini. Akhirnya penulis berharap semoga skripsi ini berguna bagi

semua pihak.

Penulis

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

DAFTAR ISI

HALAMAN JUDUL .............................................................................. i

HALAMAN PERSETUJUAN PEMBIMBING ...................................... ii

HALAMAN PENGESAHAN ................................................................. iii

HALAMAN PERSEMBAHAN .............................................................. iv

PERNYATAAN KEASLIAN KARYA ................................................. v

ABSTRAK .............................................................................................. vi

ABSTRACT ............................................................................................. vii

KATA PENGANTAR............................................................................. viii

DAFTAR ISI ........................................................................................... x

DAFTAR TABEL .................................................................................... xiv

DAFTAR GAMBAR .............................................................................. xv

BAB I. PENDAHULUAN ....................................................................... 1

A. Latar Belakang ..........................……………………..…........ 1

B. Rumusan Masalah ................................................................... 2

C. Batasan Masalah ..................................................................... 2

D. Metodologi .............................................................................. 3

E. Manfaat Penelitian .................................................................. 4

F. Sistematika Penulisan ............................................................. 4

BAB II. DASAR TEORI .......................................................................... 6

A. Jaringan Syaraf Biologi ............................................................ 6

B. Backpropagation ..................................................................... 6

1. Arsitektur Backpropagation ......................................... 7

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

2. Pelatihan standar Backpropagation .............................. 8

3. Algoritma Pelatihan Backpropagation ......................... 8

4. Pemilihan Bobot dan Bias ........................................... 10

5. Jumlah Unit Tersembunyi ........................................... 11

6. Jumlah Pola Pelatihan ................................................. 11

7. Jumlah Iterasi .............................................................. 12

C. Preprocessing (Pra pengolahan Citra) ..................................... 12

BAB III. ANALISIS DAN PERANCANGAN ....................................... 14

A. Analisa Sistem ...................................................................... 14

B. Analisa Kebutuhan Hardware dan Software......................... 16

1. Analisa Kebutuhan Hardware ..................................... 16

2. Analisa Kebutuhan Software ...................................... 17

C. Perancangan User Interface ................................................. 17

1. Perancangan Form Pembuka ...................................... 19

2. Perancangan Form Menu Utama Program ................. 20

3. Perancangan Form Data Baru ..................................... 21

4. Perancangan Form Training ....................................... 22

a. Form Masukan Data .......................................... 22

b. Form Pelatihan .................................................... 23

c. Form Hasil Training .......................................... 24

5. Perancangan Form Testing ......................................... 25

6. Perancangan Form Keputusan .................................... 26

D. Perancangan Arsitektur Jaringan ......................................... 27

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

E. Perancangan Proses ............................................................. 29

1. Proses Input data baru ................................................ 29

2. Proses Preprocessing ............................................. ..... 30

3. Proses Training ........................................................... 31

4. Proses Testing .............................................................. 33

BAB IV. IMPLEMENTASI DAN PEMBAHASAN............................... 35

A. Implementasi ........................................................................... 35

1. Proses Data Baru .......................................................... 35

2. Proses Pelatihan ........................................................... 36

a. Proses Pengambilan gambar ................................ 36

b. Proses Preprocessing............................................ 37

c. Proses Pelatihan .................................................. 38

3. Proses Testing .............................................................. 39

B. Antar Muka Pengguna (User Interface) .................................. 40

1. Tampilan Awal Program ............................................. 40

2. Tampilan Menu ........................................................... 41

C. Pembahasan Program .............................................................. 47

1. Jumlah Epoch .............................................................. 47

2. Batas Toleransi ............................................................. 49

3. Fungsi Pelatihan ........................................................... 50

4. Hidden Layer ............................................................... 51

5. Pengujian Pola .............................................................. 52

a. Pengujian pola dengan 25 data ........................... 53

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

b. Pengujian pola dengan 30 data .......................... 56

c. Pengujian pola dengan 35 data ........................... 57

d. Hasil Pengujian .................................................. 59

BAB V. KESIMPULAN DAN SARAN................................................... 60

A. Kesimpulan........................................................................... 60

B. Saran..................................................................................... 61

DAFTAR PUSTAKA............................................................................... 62

LAMPIRAN............................................................................................. 63

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

DAFTAR TABEL

Tabel 4.1. Hubungan antara jumlah Epoch dengan error training....... 48

Tabel 4.2. Hubungan antara batas toleransi dengan error training ...... 49

Tabel 4.3. Hubungan antara fungsi pelatihan dengan jumlah epoch,

waktu iterasi dan error training ........................................... 50

Tabel 4.4. Hubungan antara jumlah unit hidden layer dengan error

training ................................................................................ 51

Tabel 4.5. Pembagian pola pelatihan dan pola pengujian .................... 53

Tabel 4.6. Hasil pengujian terhadap 25 data training ........................... 54

Tabel 4.7. Hasil pengujian terhadap data testing ................................. 54

Tabel 4.8. Hasil pengujian terhadap data lain ...................................... 55

Tabel 4.9. Pembagian pola pelatihan dan pola pengujian .................... 56

Tabel 4.10. Pengujian pola terhadap data training ................................. 56

Tabel 4.11. Pengujian pola terhadap data testing .................................. 56

Tabel 4.12. Pengujian pola terhadap data lain ....................................... 57

Tabel 4.13. Pola pelatihan dan pola pengujian ...................................... 57

Tabel 4.14. Pengujian pola terhadap data training ................................ 58

Tabel 4.15. Pengujian pola terhadap data testing .................................. 58

Tabel 4.16. Pengujian pola terhadap data lain ....................................... 59

Tabel 4.17. Hasil pengujian semua pola ................................................ 59

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

DAFTAR GAMBAR

Gambar 2.1. Susunan Syaraf Manusia .................................................. 6

Gambar 2.2. Arsitektur Jaringan Backpropagation................................ 7

Gambar 3.1. Flowchart (Alur Kerja) Jaringan syaraf tiruan.................. 15

Gambar 3.2. Flowchart Sistem Secara Umum ...................................... 18

Gambar 3.3. Perancangan Awal Program ............................................ 19

Gambar 3.4. Perancangan Menu Utama Program ................................. 20

Gambar 3.5. Perancangan Form Data Baru ........................................... 21

Gambar 3.6. Perancangan form masukan data training ........................ 22

Gambar 3.7. Perancangan Form Pelatihan............................................. 23

Gambar 3.8. Perancangan form hasil training ....................................... 24

Gambar 3.9. Perancangan Form Testing ............................................... 25

Gambar 3.10. Perancangan form keputusan ........................................... 26

Gambar 3.11. Arsitektur Jaringan ........................................................... 28

Gambar 3.12. Flowchart proses Input data baru ..................................... 29

Gambar 3.13. Flowchart Proses Preprocessing ....................................... 30

Gambar 3.14. Flowchart proses training .................................................. 32

Gambar 3.15. Flowchart proses testing .................................................... 34

Gambar 4.1. Tampilan awal Program .................................................... 40

Gambar 4.2. Tampilan Menu ................................................................ 41

Gambar 4.3. Tampilan Konfirmasi keluar ............................................ 41

Gambar 4.4. Tampilan input data baru ................................................. 42

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

Gambar 4.5. Form masukan banyaknya data yang akan ditraining ........ 43

Gambar 4.6. Pesan kesalahan jika masukan berupa string .................... 43

Gambar 4.7. Pesan kesalahan jika masukan user lebih dari 30 .............. 44

Gambar 4.8. Form training .................................................................... 44

Gambar 4.9. Form hasil training ............................................................ 45

Gambar 4.10. Form Testing ..................................................................... 46

Gambar 4.11. Form keputusan .................................................................. 46

Gambar 4.12 . Form About Us .................................................................. 47

Gambar 4.13. Grafik hubungan antara jumlah epoch dan error training .. 48

Gambar 4.14. Grafik hubungan antara toleransi kesalahan dengan error

training ................................................................................ 49

Gambar 4.15 Grafik hubungan antara jumlah unit hidden layer

dengan error training ........................................................... 52

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

BAB I

PENDAHULUAN

A. Latar Belakang

Data merupakan kumpulan dari fakta-fakta yang sering digunakan dalam

mengolah ataupun memproses segala sesuatu. Khususnya dalam sebuah instansi

atau organisasi, ada banyak data yang terdapat didalamnya. Baik itu data

administrasi, data perusahaan, ataupun data data penting lainnya. Dalam hal ini

dibutuhkan sistem keamanan dan kerahasiaan data yang bagus untuk menjamin

tersimpannya data dengan baik, mengingat banyaknya terjadi pembobolan data

akhir-akhir ini oleh pihak yang tidak bertanggung jawab.

Terdapat macam-macam sistem yang digunakan untuk autentifikasi data,

antara lain sistem keamanan sidik jari, pengenalan wajah, biometrik, sistem

kemanan barcode, tanda tangan ataupun sistem keamanan lainnya. Yang akan

dibahas dalam hal ini adalah sistem autentifikasi dengan menggunakan tanda

tangan.

Tanda tangan merupakan salah satu cara yang digunakan sebagai sistem

autentifikasi dalam sebuah instansi, atau perusahaan-perusahaan besar khususnya.

Hal ini digunakan untuk dapat menjaga kerahasiaan data. Jadi setiap orang yang

akan berhubungan dengan data khususnya data penting, mereka dapat mengakses

data hanya jika tanda tangan mereka sesuai dengan tanda tangan yang terdapat

dalam daftar. Misalnya seseorang ingin mengakses data penting, Untuk

mengijinkan dia masuk, orang itu harus tanda tangan, kemudian tanda tangan itu

1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

2

akan dikenali, apakah sesuai dengan pemilik tanda tangan aslinya. Jika sesuai,

maka orang tersebut akan diijinkan masuk dan boleh mengakses data. Tapi jika

tanda tangannya tidak sesuai atau tanda tangannya tidak dikenali, maka orang

tersebut tidak diperbolehkan untuk masuk dan mengakses data. Jadi tanda tangan

tersebut berguna sebagai tanda pengenal seseorang untuk dapat mengakses data

penting.

Metode yang digunakan untuk mengenali tanda tangan seseorang yaitu

dengan memakai jaringan syaraf tiruan dengan metode backpropagation. Metode

back propagation merupakan metode yang tepat untuk mengenali sebuah pola

tanda tangan karena metode ini menggunakan pelatihan berulang-ulang sehingga

dapat menjamin keakuratan data. Langkah yang dilakukan sebelum pada tahap

Jaringan Syaraf Tiruan adalah preprocessing. Dengan beberapa kali pelatihan

pengenalan pola diharapkan metode ini dapat mengenali tanda tangan.

B. Rumusan Masalah

Yang menjadi bahasan penulisan tugas akhir ini adalah bagaimana

membuat sebuah sistem yang dapat mengenali tanda tangan dengan menggunakan

jaringan syaraf tiruan khususnya metode backpropagation.

C. Batasan Masalah

Agar penulisan tugas akhir tidak terlalu jauh dari tujuan maka akan

dibatasi pada :

1. Sampel yang digunakan sebanyak 50 tanda tangan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

3

2. Model jaringan yang digunakan adalah jaringan Back Propagation

3. Input yang digunakan berupa file tanda tangan dengan format .jpg.

4. Implementasi sistem menggunakan Matlab 6.5 dari MathWork

D. Metodologi

Metode yang digunakan dalam penyelesaian tugas akhir ini akan

dijelaskan dalam tahap-tahap berikut ini :

1. Pengambilan sampel

Pada tahap ini yang dilakukan adalah pengambilan sampel tanda tangan

yang digunakan sebagai template dan input dalam proses pengenalan tanda

tangan. Tanda tangan diambil dari 5 orang dimana setiap orang

membubuhkan10 tanda tangan, sehingga semua tanda tangan berjumlah 50

buah.

2. Preprocessing

Yang dilakukan pada tahap ini adalah pengubahan gambar menjadi citra

digital, pemotongan gambar (cropping image), binerisasi citra dan

pengubahan ukuran gambar.

3. Pelatihan dan Pengujian

Pada tahap ini yang dilakukan adalah pelatihan dan pengujian tanda

tangan. Metode pembelajaran yang digunakan dalam pelatihan dan

pengujian jaringan ini adalah backpropagation atau dikenal dengan

generalisasi delta rule.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

4

4. Pengambilan Keputusan

Pada tahap ini akan diambil keputusan mengenai tanda tangan, misalnya

keputusan apakah tanda tangan tersebut dikenali atau tidak. Keputusan

diambil berdasarkan langkah-langkah sebelumnya.

5. Penulisan Program

Pada tahap ini mulai menulis program yang akan dipakai dalam

pengenalan tanda tangan dengan merepresentasikan langkah-langkah

diatas kedalam sebuah program. Program yang dipakai adalah Matlab 6.5.

6. Pengujian terhadap sistem

Tahap ini dilakukan untuk mengetahui apakah sistem sesuai dengan yang

diinginkan, juga digunakan untuk mengetahui kesalahan yang masih

mungkin terjadi.

E. Manfaat Penelitian

Dengan dibuatnya sistem ini diharapkan dapat membantu

pihak/instansi dalam melakukan autentikasi data, yaitu mampu membantu

mengenali pola tanda tangan seseorang demi terciptanya keamanan dalam

mengakses data.

F. Sistematika Pembahasan

Adapun sistematika penulisan tugas akhir adalah sebagai berikut :

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

5

Bab I Pendahuluan

Berisi mengenai Latar belakang penulisan, rumusan masalah,

batasan masalah, manfaat penulisan tugas akhir, metode penelitian

dan sistematika penulisan

Bab II Landasan Teori

Berisi mengenai pengertian dari jaringan syaraf tiruan, pengenalan

tanda tangan, algoritma back propagation, pre-processing.

Bab III Analisis dan Perancangan

Berisi tentang analisis sistem, perancangan atau desain program

termasuk user interface, proses pre processing, proses pelatihan

dan pengujian, pengambilan keputusan serta perancangan mesin

inference.

Bab IV Implementasi dan pembahasan

Berisi tentang hasil pembuatan program dan penjelasan atau

analisis program, diagram alir, serta beberapa contoh keluaran dari

data yang dimasukkan serta pembahasan program.

Bab V Kesimpulan dan Saran

Berisi beberapa kesimpulan dan saran berdasarkan hasil pembuatan

program dan pembahasan program.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

BAB II

LANDASAN TEORI

A. Jaringan Syaraf Biologi

Otak manusia memiliki struktur yang sangat kompleks dan memiliki

kemampuan yang luar biasa. Otak manusia berisi jutaan sel syaraf yang bertugas

untuk memproses informasi. Tiap-tiap sel bekerja seperti suatu processor

sederhana. Masing-masing sel tersebut saling berinteraksi sehingga mendukung

kemampuan kerja otak manusia. Otak terdiri dari neuron-neuron dan penghubung

yang disebut sinapsis. Neuron bekerja berdasarkan inpuls/sinyal yang diberikan

kepada neuron. Neuron meneruskannya pada neuron lain. Diperkirakan manusia

memiliki 1012 neuron dan 6.1018 sinapsis.

Gambar 2.1. Susunan syaraf manusia

Nucleus

Synapses

Axon

Dendrite

B. Backpropagation

Backpropagation merupakan salah satu metode pembelajaran yang

terawasi (supervised training). Backpropagation melatih jaringan untuk

mendapatkan keseimbangan antara kemampuan jaringan untuk mengenali pola

6

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

7

yang digunakan selama pelatihan serta kemampuan jaringan untuk memberikan

respon yang benar terhadap pola masukan yang serupa dengan pola yang dipakai

pada saat pelatihan. Algoritma Backpropagation menggunakan error output untuk

mengubah nilai bobot-bobotnya dalam arah mundur (backward). Untuk

mendapatkan error ini, tahap perambatan maju (forward propagation) harus

dikerjakan terlebih dahulu. Pada saat perambatan maju, neuron – neuron

diaktifkan dengan menggunakan fungsi aktivasi sigmoid yaitu :

xexf −+=

11)(

1. Arsitektur Backpropagation

Gambar 2.2. Arsitektur jaringan Backpropagation

Gambar diatas merupakan gambar arsitektur jaringan Backpropagation

dengan sebuah layar input dengan n unit masukan ditambah dengan sebuah bias.

Dalam gambar tersebut juga terdapat sebuah layar tersembunyi dengan p unit

ditambah dengan sebuah bias, serta sebuah layar output dengan m unit keluaran.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

8

Bias merupakan parameter neuron yang dijumlahkan dengan bobot input

neuron dan diteruskan ke fungsi transfer neuron untuk meng-generate output

neuron. Biasanya bias bernilai 1.

Layar tersembunyi merupakan layar dari jaringan dimana layar ini tidak

menerima input dari luar jaringan dan tidak mengirimkan output ke luar jaringan.

Disebut hidden layer karena layar ini hanya menerima input internal (input dari

processing lain) dan menghasilkan output internal (output ke unit processing lain).

2. Pelatihan standar Backpropagation

Pelatihan Backpropagation meliputi 3 fase. Fase pertama ialah fase maju

(Forward Chaining) dimana pola masukan dihitung maju mulai dari layar

masukan hingga layar keluaran dengan menggunakan fungsi aktivasi yang

ditentukan. Fase kedua adalah fase mundur (backward Chaining). Dalam fase ini

selisih antara keluaran jaringan dengan target yang diinginkan merupakan

kesalahan yang terjadi. Kesalahan tersebut dipropagasikan mundur, dimulai dari

garis yang berhubungan langsung dengan unit-unit dilayar keluaran. Fase ketiga

adalah modifikasi bobot untuk menurunkan kesalahan yang terjadi.

3. Algoritma Pelatihan Backpropagation

1. Inisialisasi semua bobot-bobot dengan bilangan acak kecil.

2. Jika kondisi penghentian belum terpenuhi, lakukan langkah berikut :

a. Untuk setiap pasang data pelatihan, lakukan langkah berikut :

Fase I : Propagasi maju

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

9

i. Tiap unit masukan menerima sinyal dan meneruskannya ke

unit tersembunyi diatasnya.

ii. Hitung semua keluaran di unit tersembunyi zj (j=1,2,3,...,p)

∑=

+=n

ijiijoj vxvnetz

1_

jnetzjj enetzfz _1

1)_( −+==

iii. Hitung semua keluaran jaringan di unit yk (k=1,2,...,m)

∑=

+=p

jkjjkk wzwnety

10_

knetykk enetyfy _1

1)_( −+==

Fase II : Propagasi mundur

iv. Hitung faktor δ unit keluaran berdasarkan kesalahan di

setiap unit keluaran yk(k=1,2,...,m)

)1()()_('k kkkkkkk yyytnetyfyt −−=)−(=δ

δk merupakan unit kesalahan yang akan dipakai dalam

perubahan bobot layar dibawahnya (langkah v)

Hitung suku perubahan bobot wkj (yang akan dipakai nanti

untuk merubah bobot wkj) dengan laju percepatan α.

jkkj zw αδ=Δ ; k=1, 2, ..., m ; j=0, 1, ..., p

v. Hitung faktor δ unit tersembunyi berdasarkan kesalahan di

setiap unit tersembuyi zj (j=1,2,...,p)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

10

∑=

=m

kkjkj wnet

1_ δδ

Faktor δ unit tersembunyi :

)1(_)_('_ jjjjjj zznetnetzfnet −== δδδ

Hitung suku perubahan bobot vji (yang akan dipakai nanti

untuk merubah bobot vji)

Δvji=α δj xi ; j=1, 2, ..., p ; i=0, 1, ..., n

Fase III : Perubahan bobot

vi. Hitung semua perubahan bobot

Perubahan bobot garis yang menuju ke unit keluaran :

wkj(baru)=wkj(lama)+ Δwkj (k=1, 2, ..., m ; j=0, 1, ..., p)

Perubahan bobot garis yang menuju ke unit tersembunyi :

vji(baru)=vji(lama)+ Δvji (j=1, 2, ..., p ; i=0, 1, ..., n)

Setelah proses pelatihan selesai dilakukan, jaringan dapat dipakai untuk

mengenali pola. Dalam hal ini, hanya propagasi maju saja yang digunakan

untuk pengujian (testing) yang bertujuan untuk menentukan keluaran

jaringan. Selain itu proses pengujian ini juga bertujuan untuk mengetahui

keakuratan jaringan syaraf tiruan yang sebelumnya dilatih.

4. Pemilihan Bobot dan Bias

Bobot awal akan mempengaruhi apakah jaringan mencapai titik minimum

lokal atau global terhadap nilai error, dan cepat tidaknya proses pelatihan menuju

kekonvergenan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

11

Apabila nilai bobot awal terlalu besar, maka input ke setiap lapisan

tersembunyi atau lapisan output akan jatuh pada daerah dimana turunan

sigmoidnya sangat kecil. Dan jika bobot awal terlalu kecil, maka proses pelatihan

akan menjadi lambat. Oleh karena itu dalam standar backpropagation, bobot dan

bias diisi dengan bilangan acak kecil. Prosedur umum untuk menginisialisasi

bobot dan bias adalah nilai acak antara -0.5 dan 0.5. Cara lain untuk membuat

inisialisasi bobot dan bias awal ke unit tersembunyi dapat dilakukan dengan

menggunakan metode Nguyen-Widrow.

5. Jumlah Unit Tersembunyi

Pada dasarnya tidak ada aturan khusus untuk menetapkan jumlah layar

tersembunyi yang akan digunakan. Jaringan dengan sebuah layar tesembunyi

sudah cukup bagi backpropagation untuk mengenali sembarang perkawanan

antara masukan dan target dengan tingkat ketelitian yang ditentukan. Tetapi

penambahan jumlah layar tersembunyi dapat membuat pelatihan lebih mudah.

6. Jumlah Pola Pelatihan

Dalam Hal ini juga tidak ada kepastian tentang berapa banyak pola yang

akan digunakan agar jaringan dapat dilatih dengan sempurna. Jumlah pola yang

dibutuhkan dipengaruhi oleh banyaknya bobot dalam jaringan serta tingkat

akurasi yang diharapkan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

12

7. Jumlah iterasi

Jumah iterasi digunakan sebagai kondisi penghentian dari pelatihan

backpropagation. Jumlah iterasi ditentukan oleh user sendiri, karena tidak ada

aturan untuk menentukan jumlah iterasi. Dalam pelatihan backpropagation, iterasi

akan dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah

maksimum iterasi yang ditetapkan, atau kesalahan yang terjadi sudah lebih kecil

dari batas toleransi yang diijinkan.

C. Pengenalan Pola

Pola adalah suatu entitas yang dapat didefinisikan (mungkin secara samar)

dan dapat diberi suatu identifikasi atau nama. Contoh: gelombang suara, sidik

jari, raut wajah, penutup lahan dll. Pengenalan pola bertujuan menentukan

kelompok atau kategori pola berdasarkan ciri-ciri yang dimiliki pola tersebut.

D. Preprocessing (Pra Pengolahan Citra)

Secara harafiah, citra (image) adalah sebuah gambar pada bidang

dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan

fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. (Munir,

2004)

Preprocessing merupakan proses awal yang dilakukan untuk memperbaiki

kualitas citra (edge enhancement) dengan menggunakan teknik-teknik pengolahan

citra.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

13

Pengolahan citra bertujuan memperbaiki kualitas citra agar mudah

diinterpretasikan oleh manusia atau mesin komputer. Terdapat macam-macam

operasi pengolahan citra, diantaranya :

a. Pengubahan ukuran gambar (resize)

Pengubahan ukuran gambar berarti mengubah citra dari ukuran semula ke

ukuran yang diinginkan.

b. Pemotongan gambar (cropping)

Cropping atau pemotongan gambar merupakan salah satu operasi dari

pengolahan citra dimana operasi ini bertujuan untuk mengubah gambar

menjadi ukuran yang spesifik.

c. Konversi citra warna menjadi citra biner (binerisasi)

Citra biner merupakan citra yang hanya mempunyai dua nilai derajat

keabuan yaitu hitam dan putih. Pixel-pixel objek bernilai 1 dan pixel-pixel

latar belakang bernilai 0. Pada waktu menampilkan gambar, 0 adalah

putih, dan 1 adalah hitam. Citra biner banyak diaplikasikan di berbagai

operasi pemrosesan pengenalan objek, salah satunya untuk pengenalan

objek tanda tangan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

BAB III

ANALISIS DAN PERANCANGAN

A. Analisa Sistem

Sistem yang dibuat adalah sistem untuk pengenalan pola tanda tangan,

bertujuan untuk membantu user dalam mengenali tanda tangan seseorang dengan

menggunakan algoritma pembelajaran Jaringan Syaraf Tiruan.

Dalam sistem ini akan digunakan algoritma pembelajaran backpropagation

standar, dimana dalam pembelajaran ini akan dicari penyelesaian yang paling

optimal untuk pengenalan sebuah pola tanda tangan.

Dalam pengenalan tanda tangan ini, pola masukan tanda tangan akan

dibandingkan dengan target yang ingin dicapai. Pola tanda tangan akan dibagi

menjadi dua yaitu data pelatihan dan data pengujian. Data pelatihan akan

digunakan untuk proses pelatihan dan data pengujian akan digunakan untuk

proses pengujian. Hasil proses pelatihan akan digunakan untuk proses pengujian,

dimana hasilnya berupa output tanda tangan hasil pengujian dan informasi apakah

tanda tangan tersebut dapat dikenali atau tidak. Jika tanda tangan dikenali, maka

sistem akan memberi informasi tentang identitas pemilik tanda tangan tersebut.

14

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

15

Alur Kerja dari Jaringan Syaraf tiruan untuk pengenalan tanda tangan

Gambar 3.1. Flowchart (Alur Kerja) Jaringan syaraf tiruan

- Input

Merupakan masukan berupa tanda tangan dengan format .jpg, dan sudah

diubah menjadi citra digital.

- Image Processing

Proses ini merupakan proses pengolahan citra, dimana citra yang diolah

adalah gambar tanda tangan yang sudah di scan sebelumnya. Citra awal

yang diambil oleh user merupakan citra RGB 3 dimensi.

Binerisasi citra dilakukan untuk mengubah citra menjadi citra grayscale

yang bernilai 0 dan 1.

Pemotongan gambar (Cropping), yaitu memotong gambar sedemikian

rupa sehingga citra tepat berada di tepi batas. Pemotongan dilakukan

dengan menghilangkan informasi citra yang bernilai 1.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

16

Pengubahan ukuran gambar (Resize) dilakukan agar citra lebih mudah

untuk diolah dalam proses neural network. Ukuran citra diubah menjadi

citra dengan ukuran 50 x 50.

- Neural Network

Proses ini digunakan pada saat pelatihan dan pengujian. Jaringan syaraf

yang digunakan adalah jaringan syaraf backpropagation dengan sebuah

input yang terdiri dari 2500 neuron, sebuah layar hidden dengan 5 unit,

dan 5 buah target. Bobot awal yang digunakan merupakan bilangan

random bukan 0.

- Output

Setelah melalui 3 proses diatas, maka program akan mengeluarkan output,

yang berupa keterangan apakah tanda tangannya dikenali atau tidak. Jika

dikenali, maka program akan menampilkan tanda tangannya beserta

biodata dari pemilik tanda tangan tersebut. Jika tidak, program akan

menampilkan tanda tangan dan pesan bahwa tanda tangan tidak dikenali.

B. Analisa Kebutuhan Hardware dan Software

1. Analisa kebutuhan hardware

Kebutuhan hardware merupakan kebutuhan akan perangkat keras

komputer untuk mendukung sistem yang akan dibuat. Yang dibutuhkan

untuk membangun sistem ini antara lain :

1. Main board : Asus P4S533X

2. Procesor : Intel P4 1.8 GHz

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

17

3. Memori : RAM 256 MB

4. Hard disk : HDD 40 Gbyte

5. VGA Card : AGP 64 Mb Geforce

6. Monitor : LG 15’

7. Disk Drive : LiteOn 52x

2. Analisis kebutuhan software

Analisis kebutuhan software untuk mendukung pengoperasian dan

pengembangan sistem.

1. Sistem operasi : Sistem Operasi Windows XP

2. Source Code : Matlab 6.5

3. Browser : Internet Explorer dan Mozila Firefox

4. Data base : SQLyog

C. Perancangan User Interface

Program dirancang dengan menggunakan GUI (Graphical User Interface)

dari Matlab 6.5. Program ini dirancang memiliki 4 buah menu yaitu menu File,

Input, Run, dan Help.

- Menu File berisi sub menu exit, digunakan untuk keluar dari program.

- Menu Input berisi sub menu New Data, digunakan jika user ingin

memasukkan data baru.

- Menu Run memiliki 2 sub menu yaitu sub menu training dan testing.

- Menu Help mempunyai sub menu yaitu about us, yang berisi sekilas

tentang program dan pembuat program

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

18

Start

If y=1

Menu Pilihan :1. File2. Input3. Run4. HelpMasukkan pilihan(y)?

KELUAR

If y=2 DATA BARU

If y=3

Menu Pilihan:1. Training2. Testing

masukkan pilihan (x) ?

If x=1 TRAINING

If x=2 TESTING

If y=4 ABOUT US

ya

tidak

ya

tidak

ya

tidak

ya

tidak

ya

ya

end

Gambar 3.2. Flowchart sistem secara umum

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

19

1. Perancangan Form Pembuka

JUDUL

LOGO USD

PRODI JURUSAN

FAKULTAS UNIVERSITAS

TAHUN

Disusun Oleh : Dosen Pembimbing :

ENTER EXIT

Gambar 3.3. Perancangan Awal Program

Rancangan form pembuka ini terdiri dari

a. 3 buah static text

3 buah static text ini digunakan untuk menampilkan judul,

nama penyusun dan dosen pembimbing, dan nama prodi,

jurusan, fakultas, universitas serta tahun pembuatan.

b. 1 buah Axes

Axes atau grafik disini digunakan untuk menampilkan logo

dari universitas.

Axes atau grafik disini digunakan untuk menampilkan logo dari universitas.Axes

atau grafik disini digunakan untuk menampilkan logo dari universitas.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

20

c. 2 buah push button

2 buah push button atau tombol yaitu tombol exit dan

tombol enter. Tombol exit digunakan untuk keluar dari

form pembuka, dan tombo enter digunakan untuk masuk

kedalam form menu utama.

2. Perancangan Form Menu Utama Program

Perancangan Form preprocessing

File Input Run Help

Exit New Data Training About US

Testing

Gambar 3.4. Perancangan Menu Utama Program

Form menu awal program terdiri dari: sebuah menu editor, dimana

didalamnya terdapat 4 buah menu.

a. Menu File

Terdiri dari sebuah sub menu yaitu sub menu exit

b. Menu Input

Terdiri dari sebuah sub menu yaitu sub menu new data

c. Menu Run

Terdiri dari 2 buah sub menu yaitu sub menu training dan sub menu

testing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

21

d. Menu Help

Terdiri dari sebuah sub menu yaitu sub menu about us

3. Perancangan Form Data Baru

Masukkan Nama :

Masukkan Alamat :

Masukkan Pekerjaan

Masukkan No. Telp :

INPUT DATA

Edit Text

Edit Text

Edit Text

Edit Text

Ambil Gambar

Images

Menu Utama Simpan

Text1

Images

Ambil Foto

Text2

Gambar 3.5. Perancangan Form Data Baru

Form data baru terdiri dari

a. 4 buah edit text

Masing-masing edit text digunakan untuk isian dari nama, alamat,

pekerjaan, dan no. telp.

b. 7 buah static text

5 buah static text, digunakan untuk menampilkan kalimat input

data baru, masukkan nama, masukkan alamat, masukkan pekerjaan,

dan masukkan no. telp. Text 1 digunakan untuk menampilkan

masukan nama file tanda tangan, dan text 2 digunakan untuk

menampilkan nama file gambar foto.

masukan nama file tanda tangan, dan text 2 digunakan untuk

menampilkan nama file gambar foto.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

22

c. 2 buah Axes

Axes disini digunakan untuk menampilkan gambar tanda tangan

dan gambar foto yang akan dimasukkan oleh user.

d. 4 buah push button

4 buah push button atau tombol yaitu tombol ambil gambar, ambil

foto, tombol back dan tombol save. Tombol ambil gambar

digunakan untuk mengambil gambar tanda tangan dari file, tombol

ambil foto digunakan untuk mengambil foto, tombol back

digunakan untuk kembali ke menu utama, dan tombol save

digunakan untuk menyimpan data yang telah dimasukkan.

4. Perancangan Form Training

a. Form Masukan data

Banyaknya data yang akan ditraining

3

OK Menu Utama

Gambar 3.6. Perancangan form masukan data training

Dalam form ini hanya terdapat sebuah edit text dan sebuah tombol OK.

Edit text berfungsi sebagai masukkan data dari user, yaitu banyaknya data

yang akan di training. Tombol OK berfungsi untuk melangkah ke form

berikutnya yaitu form training.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

23

b. Form Pelatihan

PELATIHAN JARINGAN Masukkan Jumlah Epoch :

Masukkan batas toleransi : Masukkan Laju Pemahaman : Jumlah Hidden Layer Masukkan jumlah unit hidden layer :

Gambar 1

Gambar2

Gambar3

Menu Utama Bobot Latih Jaringan

Gambar 3.7. Perancangan Form Pelatihan

Form pelatihan jaringan terdiri dari :

a. 6 buah static text

6 buah Static text disini hanya digunakan untuk menampilkan

kalimat.

b. edit text

Masing-masing edit text digunakan untuk nama file data yang akan

ditraining.

c. Pop up

Pop up digunakan untuk pilihan masukan jumlah epoch, batas

toleransi kesalahan, laju pemahaman, jumlah hidden layer dan

jumlah unit hidden layer

d. Push button (Tombol)

Beberapa buah tombol yaitu tombol ambil gambar, tombol keluar,

tombol train, dan tombol kembali. Tombol gambar digunakan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

24

untuk mengambil citra yang ingin di latih dari file. Tombol ini

akan disesuaikan dengan banyaknya masukan data dari user. Jika

user memasukkan data 3, maka tombol gambar akan mucul

sebanyak 3 buah. Tombol train digunakan untuk melatih jaringan.

Setiap citra yang akan dilatih harus melewati proses ini, tombol

keluar digunakan jika user ingin keluar dari form pelatihan dan

tombol kembali digunakan untuk kembali ke menu utama.

c. Form Hasil Training

HASIL TRAINING

Listbox 1

Listbox3 Listbox4 Listbox2

close

Gambar 3.8. Perancangan form hasil training

Form hasil training, yang terdiri dari 4 buah listbox, dimana

masing-masing listbox berisikan nilai modifikasi bobot untuk

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

25

setiap layar dan nilai bias untuk setiap layar. Sebuah tombol close,

digunakan untuk menutup form.

5. Perancangan Form Testing

TESTING JARINGAN

Images

Pilih data ambil gambar

Lihat bobot

Uji Jaringan

Menu Utama

Gambar 3.9. Perancangan Form Testing

Form testing terdiri dari :

a. 2 buah static text, digunakan untuk menampilkan text (kalimat)

b. 4 buah push button(tombol), terdiri dari tombol ambil gambar, lihat

bobot, uji jaringan dan tombol keluar.

c. 1 buah axes, yaitu grafik yang digunakan untuk menampilkan citra

yang dipilih user untuk dikenakan testing dan citra yang ditampilkan

sudah dikenakan proses preprocessing.

masukan nama file tanda tangan, dan text 2 digunakan untuk menampilkan nama

file gambar foto. masukan nama file tanda tangan, dan text 2 digunakan untuk

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

26

6. Perancangan Form Keputusan

FORM KEPUTUSAN

Berdasarkan hasil pelatihan dan pengujian diperoleh keputusan

Kode :

Nama :

Alamat :

Pekerjaan :

No. Telp :

Edit text1

Edit Text2

Edit Text3

Edit Text4

Edit Text5

Image

1

Tutup

Image 2

Gambar TTD yang diuji Hasil Keputusan :

Gambar 3.10. Perancangan form keputusan

Gambar 3.10. merupakan rancangan dari form keputusan, dimana

didalamnya terdapat :

a. 8 buah static text, digunakan untuk menampilkan kalimat form

keputusan, gambar tanda tangan yang diuji, hasil keputusan,

berdasarkan hasil pelatihan dan pengujian, kode, nama, alamat,

pekerjaan, dan no. Telp.

b. 6 buah edit text, digunakan untuk menampilkan hasil keluaran dari

kode, nama, alamat, pekerjaan, dan no. Telp.

c. 1 buah pushbutton yaitu tombol tutup, yang digunakan untuk menutup

form

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

27

d. 2 buah axes, digunakan untuk menampilkan tanda tangan yang

diujikan dan biodata hasil pelatihan dan pengujian.

D. Perancangan Arsitektur Jaringan

Arsitektur jaringan yang digunakan dalam pengenalan tanda tangan ini

adalah arsitektur jaringan dengan banyak lapisan (multilayer net). Jaringan yang

dibentuk terdiri dari sebuah layar masukan (input layer), sebuah layar tersembunyi

(hidden layer) dan sebuah layar keluaran (output layer).

a. Layar Input

Layar input terdiri dari 2500 elemen x1, x2, ..., x2500 dan sebuah bias b.

b. Layar tersembunyi

Layar tersembunyi yang digunakan pada sistem ini hanya 1 lapis yang

terdiri dari 5 neuron (y1, y2, y3, y4, dan y5) dan sebuah bias. Jumlah hidden

layer ini ditentukan sendiri karena belum ada ketentuan mengenai jumlah

hidden layer dan jumlah neuron pada hidden layer.

c. Layar Output

Layar output terdiri dari 5 buah neuron yang merupakan keluaran dari

jaringan.

Jaringan ini memiliki 50 buah pola masukan tanda tangan dimana setiap

pola memiliki ukuran matriks 50 x 50. Bentuk pola masukan berupa matriks

dimana baris menyatakan banyaknya variabel dan kolom menyatakan banyaknya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

28

pola masukan, sehingga bentuk pola masukan adalah sebuah matriks dengan

ukuran 2500 x 50.gggggggggggggggggggggggggggggggggggggggggggggggg

Gambar 3.11. Arsitektur Jaringan

E. Perancangan Struktur Data geeeeeeeeeeeeeeeeeeeeeeeesssssssssssssssssss

Data untuk input sistem yang dipakai dalam program ini berupa file

gambar. Dari bentuk gambar dilakukan proses binerisasi, pemotongan gambar dan

pengubahan ukuran gambar. Data dalam bentuk biner ini ditampung dalam sebuah

matriks dengan ukuran 2501 yang berasal dari ukuran gambar 50 x 50 dan 1 untuk

menampung bias. Matriks yang bertipe biner ini digunakan sebagai masukan pada

layar input.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

29

F. Perancangan Proses

1. Proses Input data baru

Cara kerja :

1. Masukkan nama, alamat, pekerjaan, no. telp, dan gambar tanda tangan

dan gambar foto.

2. Cek kelengkapan data, jika terdapat kesalahan, sistem akan

menampilkan pesan kesalahan.

3. Jika data yang diisikan lengkap, data baru akan disimpan ke dalam

database.

Data baru akan disimpan ke dalam tabel tanda tangan yang terdapat di

database .

Nama Alamat Pekerjaan No.telp Gambar_ttd Gambar_foto

Tabel 3.1. Tabel tanda tangan

Tabel tanda tangan memiliki 6 field

Nama : varchar25

Alamat : varchar25

Pekerjaan : varchar20

No. telp : varchar15

Gambar_ttd : varchar50

Gambar_foto : varchar50

menampung bias. Matriks yang bertipe biner ini digunakan sebagai masukan pada

layar input.cbvcvfgdffffffffffffffffffffffffffffffffffffffffdddddddddddddddddddzsss

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

30

menampriks yang bertipe biner ini digunakan sebagai masukan pada layar

input.njjdcvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvdddddddddddddddee

Gambar 3.12. Flowchart Proses Input Data Baru

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

31

2. Proses Preprocessing effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

Proses preprocessing digunakan agar memudahkan sistem dalam

mengolah citra. Cara kerja proses preprocessing :

- Ambil gambar yang akan diolah.

- Pemotongan citra (cropping), yaitu memotong citra sedemikian rupa

sehingga citra berada tepat di tepi objek.

- binerisasi citra, yaitu pengubahan citra dari RGB menjadi citra hitam putih

yang bernilai 1 dan 0. angka 1 menyatakan warna putih, dan 0 menyatakan

warna hitam

- Pengubahan ukuran citra menjadi citra dengan ukuran 50 x 50.

menampung bias. Matriks yang bertipe biner ii digunakan sebagai masukan pada

Gambar 3.13. Flowchart Proses Preprocessing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

32

3. Proses training efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

Cara kerja proses training :

- Masukkan banyaknya data yang akan dilatih

- Ambil data yang akan dilatih sesuai dengan banyaknya masukan data.

Data yang diambil oleh user akan dikeluarkan ke program berupa nama

file data.

- Masukan jumlah epoch, batas toleransi, laju pemahaman, dan jumlah unit

hidden layer

- Inisialisasi bobot awal. Bobot awal di inisialisasikan pada setiap nilai x

dilayar input yang terhubung ke layar tersembunyi y, dan kepada setiap

nilai y dilayar tersembunyi ke layar output z. Bobot awal juga di

inisialisasikan untuk setiap bias, baik itu bias di layar input dan bias di

layar tersembunyi.

- Cek kesamaan input, yaitu mengecek apakah terdapat kesamaan data

masukan yang diambil oleh user. Jika terdapat data yang sama, sistem

akan memberi konfirmasi kesamaan data.

- Data akan dilatih dengan sehingga menghasilkan bobot – bobot baru.

- Bobot – bobot baru yang dihasilkan akan disimpan untuk digunakan pada

proses testing.

menampung bias. Matriks yang bertipe biner ini digunakan sebagai masukan pada

layar input. menampung bias. Matriks yang bertipe biner ini digunakan sebagai

masukan pada layar input. menampung bias. Matriks yang bertipe biner ini

digunakan sebagai masukan pada layar input. menampung bias. Matriks yang

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

33

digunakan sebagai masukan pada layar input. menampung bias. Matriks yang efe

Gambar 3.14. Flowchart Proses training

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

34

4. Proses Testing effffffsssssssssssssssssseeeeeeeeeeeeeeeeeeeeeeeeeeeeeeqqqq

Dalam proses pengujian ini, akan ditentukan keluaran akhir dari jaringan.

Dalam hal ini, hanya proses maju saja yang dipakai untuk menentukan keluaran

jaringan. Bobot yang digunakan dalam proses ini adalah bobot-bobot yang

diperoleh dari hasil pelatihan. Proses testing dilakukan terhadap 3 model data,

yaitu testing terhadap 25 data training (50 %), 30 data training (60 %) dan 35 data

training (70 %). Untuk setiap model data, pola diuji terhadap 3 bagian data, yaitu

pengujian terhadap data training, data testing, dan data lain.

Cara kerja proses testing:

- Ambil data nilai bobot hasil training. Bobot yang diambil berupa bobot

input ke hidden layer, bobot input dari hidden layer ke output layer, nilai

bias di layar input dan nilai bias di layar output

- Ambil data yang akan diuji, yang berupa gambar tanda tangan

- Lakukan proses perambatan maju

- Hasil testing yang diperoleh akan dibandingkan dengan target yang

terdapat di tabel kelas dalam database untuk pengambilan keputusan.

- Target ditentukan berdasarkan pola yang digunakan. Dalam hal ini, tanda

tangan terdiri dari 5 pola, sehingga targetnya juga ada 5.

Untuk pola I. T = [1 0 0 0 0]

Untuk pola II. T = [0 1 0 0 0]

Untuk pola III. T = [0 0 1 0 0]

Untuk pola IV.T = [0 0 0 1 0]

Untuk pola V. T = [0 0 0 0 1]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

35

Jika nilai keluaran yang dihasilkan sama dengan pola I, maka tanda tangan

termasuk dalam kelas I. Kemudian database akan mengeluarkan informasi

pemilik dari kelas I ke dalam form keputusan.

Kelas Nama Alamat Pekerjaan No.telp Gambar_ttd Target

1 Andy Jakarta Wiraswasta 0817252862 andy.jpg 1 0 0 0 0

2 Anel Paingan Mahasiswi 0813658954 anel.jpg 0 1 0 0 0

: : : : : : :

termasuk dalam kelas I. Kemudian database akan mengeluarkan informasi

termasuk dalam kelas I. Kemudian database akan mengeluarkan informasi fefefe

Gambar 3.15. Flowchart Proses testing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

BAB IV

IMPLEMENTASI DAN PEMBAHASAN

A. Implementasi

1. Proses data baru

Dalam proses ini, user dapat memasukkan data baru ke dalam sistem.

Sebelum data baru disimpan ke dalam sistem, data yang dimasukkan oleh user

akan melalui proses pengecekan data terlebih dahulu. nma=get(handles.edit1,'string'); % pengecekan data untuk nama nma = strvcat(nma) nm=isempty(nma); if (nm==1) errordlg('Nama anda belum dimasukkan','!! Perhatian !!') break; end; almat=get(handles.edit2,'string'); % pengecekan data untuk alamat almat = strvcat(almat) almt=isempty(almat); if (almt==1) errordlg('Alamat anda belum dimasukkan','!! Perhatian !!') break; end; pkrjn=get(handles.edit3,'string'); % pengecekan data untuk pekerjaan pkrjn = strvcat(pkrjn) pek=isempty(pkrjn); if (pek==1) errordlg('Pekerjaan anda belum dimasukkan','!! Perhatian !!') break; end; notelp=get(handles.edit4,'string'); % pengecekan data untuk nomor telepon notelp = strvcat(notelp) notel=isempty(notelp); if (notel==1) errordlg('Nomor telepon anda belum dimasukkan','!Perhatian !') break; end; gambar = get(handles.text13,'String') % pengecekan data untuk gambar tanda tangan gambar = strvcat(gambar) gbr = isempty(gambar); if(gbr == 1) errordlg('gambar anda belum dimasukkan','!! Perhatian !!') break; end

36

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

37

Setelah data dicek, dan tidak ada kesalahan, maka data akan disimpan

kedalam database. Perintah untuk koneksi data base :

%untuk mengkoneksikan ke database myodbc conn = database('myodbc','root',''); ping(conn); %untuk memilih tabel database curs = exec(conn, 'select * from table_tanda_tangan') setdbprefs('DataReturnFormat','cellarray') curs = fetch(curs,10) AA = curs.Data %lihat_data=curs.data(:,1) %untuk mengetahui jumlah data dari database yang disimpan panjangbaris = rows(curs)

Setelah database dikoneksikan, maka proses penyimpanan data baru pun

dapat dilakukan.

data2 = { nma,almat,pkrjn,notelp,gambar } nama_data2 = {'nama','alamat','pekerjaan','no_telp','gambar_pola'} insert(conn, 'table_tanda_tangan', nama_data2, data2); % untuk memasukkan data ke tabel database sidik jari h = waitbar(0,'Proses Penyimpanan data');

for i=1:1000, % computation here % waitbar(i/1000);

end close(h); msgbox('Data Telah Tersimpan','Pesan Program','warn'); close(curs) close(conn);

2. Proses pelatihan

a. Proses pengambilan gambar

Dalam proses pelatihan, user akan diminta memilih file tanda tangan yang

ingin dilatih. Nama file tanda tangan yang diambil oleh user akan ditampilkan di

program. Source code untuk pengambilan gambar

[fname,pname] =uigetfile('data training\*.jpg','Open Citra Tanda tangan'); asli=fname; set(handles.edit5,'string',asli);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

38

b. Proses preprocessing

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

edit_a=get(handles.edit5,'string'); citra = imread(edit_a); a=im2bw(citra); [m,n]=size(a); i=1; while i~=m for i=1:m if a(i,:)==1 a(i,:)=[]; m=m-1; i=1; break; end end;end; j=1; while j~=n for j=1:n if a(:,j)==1 a(:,j)=[]; n=n-1; j=1; break;end; end;end; a1=imresize(a,[50 50]); end a21=double(a1); pa=a21(1:2500);

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

39

c. Proses Pelatihan

Proses pelatihan ini bertujuan untuk melatih jaringan agar mampu

mengenali pola yang telah dimasukkan oleh user. Dari proses pelatihan akan

diperoleh nilai bobot jaringan. Nilai ini akan digunakan untuk proses testing.

p=[pa;pb;pc;pd;pe]; pt=p'; global net; global t % target t=[t1 t2 t3 t4 t5] % pembentukan jaringan net=newff(minmax(pt),[unit,5],{'logsig','logsig'},'traingdx'); net=init(net); % untuk melihat nilai keluaran jaringan sebelum dilatih y=sim(net,pt) net.trainparam.epochs=epoch; net.trainparam.goal=tole; net.trainparam.lr=laju; tic % pelatihan jaringan [net,tr]=train(net,pt,t) toc % bobot yang dihasilkan setelah di training bobot1=net.IW{1,1} bobot2=net.LW{2,1} bobot3=net.b{1} bobot4=net.b{2} waktu=toc eror=tr.perf(:,end) epoh=tr.epoch(:,end) bobot;

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal ini

dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.jhghgh

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

40

3. Proses testing

Proses ini digunakan pada saat user ingin melakukan proses pengenalan

tanda tangan. Pada proses testing ini tahapan yang dilakukan hanya tahap

perambatan maju.

global bobot1; global bobot2; global bobot3; global bobot4; global net; b1=bobot1; b2=bobot2; b3=bobot3; b4=bobot4; global ps; pe=(ps); y=double(sim(net,pe)) level=graythresh(y) y1=im2bw(y,level); y2=double(y1) global t; [m,n]=size(t) global x; for x=1:n if t(:,x) == y2 fprintf('%d dikenali\n',x) hasil=1; cekt return; end end for w=1:n if isequal(t(:,w),y2) == 0 fprintf('%d tidak dikenali\n',w) hasil1=0 keputusan_gakenal return; end end

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

41

B. Antar muka pengguna (User Interface)

1. Tampilan awal Program

Gambar 4.1. Tampilan awal Program

Pada tampilan awal ini hanya menyajikan judul dan penulis program,

kemudian didalamnya terdapat 2 buah tombol (pushbutton), yaitu tombol enter

dan tombol exit. Tombol Enter berguna untuk memasuki tampilan berikutnya, dan

tombol exit digunakan untuk keluar.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing.

jkkk

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

42

2. Tampilan Menu

Gambar 4.2. Tampilan Menu

Pada tampilan ini terdapat 4 menu yang dapat membantu user.

1. Menu File

Dalam menu ini terdapat sebuah sub menu keluar yang digunakan untuk

keluar dari tampilan menu. Jika user memilih sub menu keluar, program

akan meminta konfirmasi apakah user yakin ingin keluar dari program,

jika ya, maka program akan menutup tampilan, dan jika tidak, tampilan

menu tidak akan tertutup.

Gambar 4.3. Tampilan Konfirmasi keluar

2. Menu Input

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

43

Dalam menu Input terdapat sebuah sub menu yaitu sub menu data baru,

dimana menu ini berguna jika user ingin memasukkan data baru tanda

tangan. Data yang dimasukkan oleh user adalah data nama, alamat,

pekerjaan, nomor telepon dan gambar tanda tangan. Gambar tanda tangan

dapat diambil dari file.

Gambar 4.4. Tampilan input data baru

Dalam form ini terdapat 4 buah pushbutton (tombol), yaitu tombol ambil

gambar, ambil foto, tombol menu utama, dan tombol simpan.

Tombol ambil gambar berguna untuk mengambil gambar dari file. Hal ini

dilakukan user jika user ingin memasukkan data baru.

Tombol menu utama, digunakan jika user ingin kembali ke menu utama.

Dalam form ini juga terdapat sebuah axes (grafik) yang berguna untuk

menampilkan tanda tangan yang diambil user dari file. Jadi pada saat user

mengambil tanda tangan dari file, tanda tangan tersebut akan muncul di

grafik dibawahnya, kemudian nama file tanda tangan yang diambil

tersebut akan muncul di kotak dibawah grafik.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

44

Tombol simpan, digunakan jika user ingin menyimpan data baru yang

telah diisikan oleh user. Pada saat menyimpan data, program akan

mengecek kelengkapan data yang dimasukkan oleh user. Jika data yang

tidak lengkap, maka program akan menampilkan pesan kesalahan.

3. Menu Run

Dalam menu Run, terdapat 2 buah sub menu yaitu sub menu training dan

testing. Pada sub menu training, program akan melatih jaringan dengan

menggunakan jaringan backpropagation standar. Pada proses pelatihan,

user akan memasukkan berapa banyaknya data yang akan dilatih. Data

yang akan dilatih dibatasi hingga 30 data.

Gambar 4.5. Form masukan banyaknya data yang akan ditraining

Jika masukan data berupa string, program akan menampilkan pesan

kesalahan

Gambar 4.6. Pesan kesalahan jika masukan berupa string

Jika angka yang dimasukkan oleh user lebih dari 30, maka program akan

menampilkan pesan kesalahan bahwa data training tidak boleh melebihi 30

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

45

Gambar 4.7. Pesan kesalahan jika masukan user lebih dari 30

Kemudian user juga akan diminta untuk memilih banyaknya jumlah

epoch, laju pemahaman, batas toleransi errornya, dan jumlah unit untuk

satu hidden layer. Hal ini bertujuan agar user dapat melihat perubahan di

setiap pelatihan. Setelah user memasukkan semua data, maka data sudah

dapat dilatih. Jika data yang dimasukkan user tidak lengkap, maka user

tidak akan dapat melakukan proses training, dan program akan

menampilkan pesan kesalahan.

Gambar 4.8. Form training

Form training berfungsi untuk melatih jaringan dari data yang telah

dimasukkan oleh user. Dari proses pelatihan akan diperoleh nilai bobot

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

46

jaringan. Nilai bobot jaringan yang telah dilatih akan ditampilkan ke dalam

sebuah form. Gambar 4.9. merupakan form yang digunakan untuk

menampilkan hasil modifikasi bobot dari setiap layarnya. Nilai ini akan

digunakan nantinya dalam proses pengujian jaringan.

Gambar 4.9. Form hasil training

Pada sub menu Testing, data akan diuji dan dikenali, dengan menggunakan

bobot yang diperoleh dari hasil training. Caranya user diminta untuk

mengambil citra yang digunakan untuk pengujian. Citra yang ditampilkan

di grafik merupakan citra yang sudah melewati proses preprocessing,

kemudian citra akan di testing.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

47

Gambar 4.10. Form Testing

Hasil pengujian akan ditampilkan di form baru, dimana hasil pengujian

berupa keputusan apakah tanda tangan dikenali atau tidak. Jika dikenali,

maka form akan menampilkan identitas dari pemilik program.

Gambar 4.11. Form keputusan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

48

4. Menu Help

Pada menu ini terdapat sebuah sub menu yaitu about us, yang berisi

informasi sekilas tentang program dan tentang pembuat program.

Gambar 4.12. Form About Us

C. Pembahasan Program

1. Jumlah epoch

Tabel 4.1. merupakan hasil training yang dilakukan untuk 30 buah data,

dengan toleransi kesalahan 0.0001, learning rate 0.05 dan jumlah neuron hidden

layer 5.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

49

Jumlah Epoch Error training

100 0.150494

200 0.169112

300 0.253727

400 0.249435

500 0.0960561

1000 0.0470009

Tabel 4.1. hubungan antara jumlah epoch dan error training

Dari tabel diatas, dapat ditarik kesimpulan bahwa jumlah epoch

mempengaruhi nilai error training. Semakin besar jumlah epoch, semakin kecil

pula error training yang didapat. Sebaliknya, semakin besar jumlah epoch,

semakin lama pula waktu yang dibutuhkan untuk sebuah proses.

Grafik hubungan antara jumlah epoch dengan error training

00.05

0.1

0.150.2

0.250.3

100 200 300 400 500 600 700 800 900 1000

Jumlah epoch

Erro

r tra

inin

g

error training

Gambar 4.13 . Grafik hubungan antara jumlah epoch dan error training

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

50

2. Batas Toleransi

Percobaan berulang ulang juga dilakukan terhadap batas toleransi. Tabel

4.2. menggambarkan hasil dari percobaan yang dilakukan terhadap 30 buah data,

dengan laju pemahaman 0.02, jumlah epoch 500, dan jumlah unit hidden layer

sebanyak 10.

Tol kesalahan Error training 0.01 0.00992619 0.001 0.00326833 0.0001 9.78E-05 0.0002 0.0017724 0.0005 0.00601012

Tabel 4.2. Hubungan antara batas toleransi dengan error training

Grafik hubungan antara toleransi kesalahan dengan error training

0.0000950.0005950.0010950.0015950.0020950.0025950.0030950.0035950.0040950.0045950.0050950.0055950.0060950.0065950.0070950.0075950.0080950.0085950.0090950.009595

0.0001 0.0011 0.0021 0.0031 0.0041 0.0051 0.0061 0.0071 0.0081 0.0091

toleransi kesalahan

erro

r tra

inin

g

error training

Gambar 4.14. Grafik hubungan antara toleransi kesalahan dengan error training

Dari grafik dapat dilihat bahwa toleransi kesalahan sangat berpengaruh

terhadap nilai error training. Semakin kecil toleransi kesalahan (semakin

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

51

mendekati nol), nilai error training yang diperoleh semakin kecil. Dalam hal ini,

nilai optimal dicapai pada toleransi kesalahan 0.0001.

3. Fungsi Pelatihan

Tabel 4.3. merupakan hasil training dengan fungsi pelatihan yang berbeda-

beda, untuk 30 data dengan epoch 500, toleransi kesalahan 0.0001, laju

pemahaman 0.02 dan jumlah unit hidden layer adalah 10.

Fungsi Pelatihan Jumlah epoch Waktu Iterasi

(det)

Error training

Traingd Tidak selesai pada epoch ke 100 17.125 0.264628

Traingdm Tidak selesai pada epoch ke 100 17.438 0.0439853

Traingda Tidak selesai pada epoch ke 100 17.422 0.0161458

Traingdx Tidak selesai pada epoch ke 100 12.015 9.93E-05

Tabel 4.3. Hubungan antara fungsi pelatihan dengan jumlah epoch, waktu iterasi

dan error training

Dari proses training dapat dilihat dalam tabel bahwa fungsi pelatihan

traingdx adalah fungsi pelatihan yang lebih cepat dibanding dengan fungsi

pelatihan lainnya. Selain itu juga nilai error yang dihasilkan lebih kecil dibanding

dengan fungsi pelatihan lainnya.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

52

4. Hidden Layer

Jumlah unit hidden layer juga dapat berpengaruh dalam proses pelatihan

dan pengujian jaringan. Semakin banyak jumlah unit hidden layer, proses

pelatihan pun akan semakin baik. Tabel 4.4. menunjukkan hasil training dengan

jumlah unit hidden layer yang berbeda-beda dan nilai error training yang

dihasilkan. Percobaan dilakukan terhadap 30 data, dengan epoch 500, toleransi

kesalahan 0.0001, dan learning rate 0.02.

Jumlah unit hidden layer Error training

4 0.259261

5 0.0149425

6 0.0109165

7 0.00736939

8 0.0026789

10 0.00211877

Tabel 4.4. Hubungan antara jumlah unit hidden layer dengan error training

Hubungan antara jumlah unit hidden layer dengan error training dapat

dilihat jelas dari grafik berikut:

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

53

Hubungan antara unit hidden layer dengan error training

0

0.05

0.1

0.15

0.2

0.25

4 5 6 7 8 9 10

Unit hidden layer

Erro

r tra

inin

g

error training

Gambar 4.15. Grafik hubungan antara jumlah unit hidden layer dengan error

training

Dari grafik dapat dilihat bahwa jumlah unit hidden layer juga berpengaruh

terhadap nilai error training. Semakin banyak jumlah unit, semakin kecil pula nilai

error training yang diperoleh.

5. Pengujian Pola

Pengujian pola dilakukan terhadap 3 model data, yaitu pengujian pola

dengan 25 data training, pengujian pola dengan 30 data training, dan pengujian

pola dengan 35 data training. Hal ini dilakukan untuk melihat bagaimana

perubahan akurasi pengujian pola dengan jumlah data training yang berbeda-beda.

Pengujian pola dilakukan terhadap 3 buah bagian data, yaitu data training

(data pelatihan), data testing (data pengujian), dan data lain (data tanda tangan

yang berbeda). Jumlah tanda tangan yang digunakan sebanyak 50 buah tanda

tangan, yang terdiri dari 5 pola, dimana setiap pola memiliki 10 buah tanda

tangan. 50 buah tanda tangan dibagi menjadi data training dan data testing.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

54

Pengujian pola juga menggunakan 12 buah tanda tangan dari orang lain. 12 tanda

tangan terdiri dari 3 pola, dimana setiap pola memiliki 4 buah tanda tangan.

Percobaan dilakukan dengan jumlah epoch 500, learning rate 0.02 dan toleransi

kesalahan 0.0001 dan jumlah unit hidden layer sebanyak 5 buah.

a. Pengujian pola dengan 25 data

Pola tanda tangan dibagi menjadi 2 bagian, yaitu pola pelatihan dan pola

pengujian. Dari 50 buah pola tanda tangan dibagi menjadi 25 buah untuk data

pelatihan dan 25 buah untuk data pengujian.

Pola Tanda tangan P-1 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-2 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-3 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-4 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-5 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10

Tabel 4.5. Pembagian pola pelatihan dan pola pengujian

Keterangan :

P-1 : Pola ke 1, dst

Ttd1 : Tanda tangan ke 1, dst

: Pola pelatihan

: Pola pengujian

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

ini dilakukan untuk memudahkan dalam perhitungan. Proses ini digunakan untuk

memanipulasi citra sedemikian rupa hingga menjadi citra yang siap diolah.

Setiap pola yang diambil oleh user akan melalui proses preprocessing. Hal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

55

Pengujian pola terhadap data training

Pola Ttd1 Ttd2 Ttd3 Ttd4 Ttd5

P-1 P-1 P-1 P-1 P-1 P-1

P-2 P-2 P-2 P-2 P-2 P-2

P-3 P-3 P-3 P-3 P-3 P-3

P-4 P-4 P-4 P-4 P-4 P-4

P-5 ??? ??? ??? ??? ???

Tabel 4.6. hasil pengujian terhadap 25 data training

Keterangan :

: Tanda tangan tidak dikenal

Tabel diatas merupakan tabel hasil pengujian pola yang dilakukan

terhadap data yang sudah ditraining. Hal ini berarti data pengujian sama dengan

data pelatihan. Dari hasil pengujian yang dilakukan terhadap 25 buah data

training, pola tanda tangan dapat dikenali dengan benar sebesar 83 %

Pengujian pola terhadap data testing Pola Ttd1 Ttd2 Ttd3 Ttd4 Ttd5

P-1 P-1 ??? ??? P-1 ???

P-2 ??? P-4 P-2 P-2 ???

P-3 ??? P-4 ??? P-3 ???

P-4 P-4 P-4 P-4 P-4 ???

P-5 P-4 ??? ??? P-4 P-4

Tabel 4.7. Hasil pengujian terhadap data testing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

56

Keterangan :

: Tanda tangan tidak dikenal

: Tanda tangan dikenali sebagai tanda tangan lain

Tabel diatas merupakan hasil pengujian pola yang dilakukan terhadap data

testing. Dari tabel diatas dapat dilihat hasil pengujian yang dilakukan terhadap 25

pola, pola dapat dikenali dengan benar sebesar 40 %

Pengujian pola terhadap data lain

Pola Ttd1 Ttd2 Ttd3 Ttd4

P-A ??? P-4 ??? ???

P-B P-2 ??? P-3 ???

P-C P-2 ??? P-1 P-1

Tabel 4.8. hasil pengujian terhadap data lain

Keterangan :

P-A : Pola ke A, dst

: Tanda tangan tidak dikenal

: Tanda tangan dikenali sebagai tanda tangan lain

Pengujian pola untuk data yang berbeda dilakukan terhadap 12 buah tanda

tangan, yang diperoleh dari 3 orang, dimana setiap orang membubuhkan 4 buah

tanda tangan.

Dari hasil pengujian pada tabel diatas dapat dilihat bahwa tanda tangan

yang berbeda tidak dikenali dengan benar. Dalam hal ini pola dikenali dengan

benar sebesar 50 %

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

57

b. Pengujian pola dengan 30 data

Dalam pengujian pola ini, dari 50 buah pola tanda tangan dibagi menjadi

30 buah untuk data pelatihan dan 20 buah untuk data pengujian.

Pola Tanda tangan P-1 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-2 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-3 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-4 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-5 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10

Tabel 4.9. Pembagian pola pelatihan dan pola pengujian

Pengujian pola juga dilakukan terhadap 3 buah model data, yaitu data

training (data pelatihan), data testing (data pengujian), dan data lain

Pengujian pola terhadap data training

Pola Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 P-1 P-1 P-1 P-1 P-1 P-1 P-1 P-2 P-2 P-2 P-2 P-2 P-2 P-2 P-3 P-3 P-3 P-3 P-3 P-3 P-3 P-4 P-4 P-4 P-4 P-4 P-4 P-4 P-5 ??? P-5 P-4 P-4 P-5 P-5

Tabel 4.10. Pengujian pola terhadap data training

Tabel diatas merupakan tabel hasil pengujian pola yang dilakukan

terhadap data yang sudah ditraining. Dari hasil pengujian yang dilakukan terhadap

30 pola, pola tanda tangan dapat dikenali dengan benar sebesar 90 %

Pengujian pola terhadap data testing

Pola Ttd1 Ttd2 Ttd3 Ttd4 P-1 P-1 P-3 P-1 P-1 P-2 P-4 P-2 ?? P-2 P-3 P-3 P-3 P-3 P-3 P-4 P-4 P-4 P-4 P-4 P-5 ??? ??? ??? ???

Tabel 4.11. Pengujian pola terhadap data testing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

58

Hasil pengujian pola diatas merupakan hasil pengujian yang dilakukan

terhadap data testing. Dari tabel diatas dapat dilihat hasil pengujian yang

dilakukan terhadap 20 pola, pola dapat dikenali dengan benar sebesar 65 %

Pengujian pola terhadap data lain

Pola Ttd1 Ttd2 Ttd3 Ttd4 P-A P-2 P-2 P-2 P-3 P-B ??? ??? ??? ??? P-C P-3 P-3 ??? ???

Tabel 4.12. Pengujian pola terhadap data yang berbeda

Dari hasil pengujian pada tabel diatas dapat dilihat bahwa tangan yang

berbeda tidak dikenali dengan benar. Dalam hal ini pola dikenali dengan benar

sebesar 50 %

c. Pengujian pola dengan 35 data

Dalam pengujian pola dengan 35 data ini, dari 50 buah pola tanda tangan

dibagi menjadi 35 buah untuk data pelatihan dan 15 buah untuk data pengujian.

Pola Tanda tangan P-1 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-2 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-3 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-4 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10P-5 Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7 Ttd8 Ttd9 Ttd10

Tabel 4.13. Pola pelatihan dan pola pengujian

Pengujian pola juga dilakukan terhadap 3 buah model data, yaitu data

training (data pelatihan), data testing (data pengujian), dan data lain (data tanda

tangan yang berbeda).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

59

Pengujian pola terhadap data training

Pola Ttd1 Ttd2 Ttd3 Ttd4 Ttd5 Ttd6 Ttd7

P-1 P-1 P-1 P-1 P-1 P-1 P-1 P-1

P-2 P-2 P-2 P-2 P-2 P-2 P-2 P-2

P-3 P-3 P-3 P-3 P-3 P-3 P-3 ???

P-4 P-4 P-4 P-4 P-4 P-4 P-4 ???

P-5 P-5 P-5 P-5 P-5 P-5 P-5 P-5

Tabel 4.14. Pengujian pola terhadap data training

Dari hasil pengujian terhadap data training, dapat ditarik sebuah hasil yaitu

pola dapat dikenali dengan benar sebesar 94 %. Dari 35 buah tanda tangan yang

diuji, hanya 2 buah yang tidak dikenali.

Pengujian pola terhadap data testing

Pola Ttd3 Ttd4 Ttd5

P-1 P-1 P-1 P-1

P-2 P-2 P-2 P-2

P-3 P-3 P-3 P-3

P-4 P-2 P-4 P-2

P-5 ??? P-5 P-5

Tabel 4.15. Pengujian pola terhadap data testing

Tabel diatas merupakan hasil pengujian pola yang dilakukan terhadap data

testing. Dari tabel diatas dapat dilihat hasil pengujian yang dilakukan terhadap 15

pola, pola dapat dikenali dengan benar sebesar 80 %

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

60

Pengujian pola terhadap data lain Pola Ttd1 Ttd2 Ttd3 Ttd4

P-A P-4 P-2 P-2 ???

P-B P-2 ??? P-2 ???

P-C P-2 P-2 P-1 P-2

Tabel 4.16. Pengujian pola terhadap data lain

Dari hasil pengujian pada tabel diatas dapat dilihat bahwa tangan yang

berbeda tidak dikenali dengan benar. Dari 12 buah tanda tangan yang di uji, pola

dapat dikenali dengan benar sebesar 25%

d. Ringkasan Pengujian

Hasil pengujian (% dikenali) Jumlah data

training dan

testing

Jumlah

Data training

Jumlah

Data

testing

Jumlah

data

lain

Data training Data testing Data lain

50 25 (50 %) 25 12 83 % 40 % 50 %

50 30 (60 %) 20 12 90 % 65 % 50 %

50 35 (70 %) 15 12 94 % 80 % 25 %

Tabel 4.17. Hasil pengujian semua pola

Dari ketiga model pengujian pola, dapat diambil kesimpulan, bahwa hasil

terbaik diperoleh dari pengujian 35 data. Hal ini berarti, semakin banyak data

pelatihan, maka pola semakin mudah dikenali. Hal lain yang dapat dihasilkan dari

percobaan ini adalah bahwa data lain tidak dapat dikenali dengan benar.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

BAB V

KESIMPULAN DAN SARAN

A. Kesimpulan

Dari hasil pelatihan dan pengujian jaringan terhadap pola tanda tangan, dapat

ditarik beberapa kesimpulan antara lain :

1. Pola dapat dikenali dengan benar sebesar 83 % untuk pengujian pola dengan

25 data training (50 % data), 90% untuk pengujian pola dengan 30 data

training (60 % data) dan 94 % untuk pengujian pola dengan 35 data training

(70 % data).

2. Untuk hasil pengujian pola terhadap data training, Semakin banyak data yang

digunakan untuk pelatihan, maka semakin besar pula kemungkinan pola akan

dikenali.

3. Semakin besar jumlah epoch, semakin kecil pula error training yang dicapai,

dalam hal ini untuk jumlah epoch 10000 menghasilkan error 0.0470009

4. Fungsi pelatihan traingdx lebih baik dibanding dengan fungsi pelatihan

lainnya. Fungsi ini menghasilkan waktu tercepat yaitu 12.015 dan error

terkecil yaitu 9.93E-05

5. Semakin banyak neuron hidden layer yang digunakan, maka error training

yang dihasilkan akan semakin kecil.

61

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

62

B. Saran

1. Program bisa dikembangkan lagi dengan metode pembelajaran yang

lain yang lebih baik lagi

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

Daftar Pustaka

Andam Zainal, 2002, Aplikasi Neural Network pada Pengenalan Pola Tanda

Tangan, http://lecturer.eepis-its.edu/~huda/tandatangan.pdf

Fausett, L., 1994, Fundamentals of Neural Network, Architecture, Algorithms and

Applications, Prentice Hall.

Kristanto, Andi, 2004, Jaringan Syaraf Tiruan, Gava Media, Yogyakarta

KusumaDewi, Sri, Artificial Intelligence, Graha Ilmu, Yogyakarta

Munir, Rinaldi, Pengolahan citra digital dengan pendekatan algoritmik,

Informatika, Bandung

Siang, J.J., 2005, Jaringan Syaraf Tiruan dan Pemrogramannya dengan

MATLAB, Andi Offset, Yogyakarta.

63

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

Form data Baru (data_baru.m) function varargout = data_baru(varargin) % DATA_BARU M-file for data_baru.fig % DATA_BARU, by itself, creates a new DATA_BARU or raises the existing % singleton*. % % H = DATA_BARU returns the handle to a new DATA_BARU or the handle to % the existing singleton*. % % DATA_BARU('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in DATA_BARU.M with the given input arguments. % % DATA_BARU('Property','Value',...) creates a new DATA_BARU or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before data_baru_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to data_baru_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help data_baru % Last Modified by GUIDE v2.5 24-Mar-2007 14:21:00 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @data_baru_OpeningFcn, ... 'gui_OutputFcn', @data_baru_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin & isstr(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before data_baru is made visible. function data_baru_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to data_baru (see VARARGIN) % Choose default command line output for data_baru handles.output = hObject;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% Update handles structure guidata(hObject, handles); % UIWAIT makes data_baru wait for user response (see UIRESUME) % uiwait(handles.figure1); str = datestr(now); set(handles.text9,'string',str) % --- Outputs from this function are returned to the command line. function varargout = data_baru_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double nma=get(handles.edit1,'string'); % pengecekan data untuk nama if (isletter(nma)==0) errordlg('Nama harus berupa string','!! Perhatian !!') break; end; nm=isempty(nma); try if (nm==1) errordlg('Nama anda belum dimasukkan','!! Perhatian !!') end; end % --- Executes during object creation, after setting all properties. function edit2_CreateFcn(hObject, eventdata, handles)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% hObject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit2_Callback(hObject, eventdata, handles) % hObject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit2 as text % str2double(get(hObject,'String')) returns contents of edit2 as a double almat=get(handles.edit2,'string'); % pengecekan data untuk alamat if (isletter(almat)==0) errordlg('Alamat harus berupa string','!! Perhatian !!') break; end; almt=isempty(almat); try if (almt==1) errordlg('Alamat anda belum dimasukkan','!! Perhatian !!') end; end % --- Executes during object creation, after setting all properties. function edit3_CreateFcn(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit3_Callback(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit3 as text % str2double(get(hObject,'String')) returns contents of edit3 as a double pkrjn=get(handles.edit3,'string'); % pengecekan data untuk pekerjaan if (isletter(pkrjn)==0) errordlg('Pekerjaan harus berupa string','!! Perhatian !!')

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

break; end; pek=isempty(pkrjn); try if (pek==1) errordlg('Pekerjaan anda belum dimasukkan','!! Perhatian !!') end; end % --- Executes during object creation, after setting all properties. function edit4_CreateFcn(hObject, eventdata, handles) % hObject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit4_Callback(hObject, eventdata, handles) % hObject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit4 as text % str2double(get(hObject,'String')) returns contents of edit4 as a double notelp=get(handles.edit4,'string'); % pengecekan data untuk nomor telepon if (isletter(notelp)==1) errordlg('Nomor telepon harus berupa angka','!! Perhatian !!') end; notel=isempty(notelp); try if (notel==1) errordlg('Nomor telepon anda belum dimasukkan','!! Perhatian !!') end; end % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) nma=get(handles.edit1,'string'); % pengecekan data untuk nama if (isletter(nma)==0) errordlg('Nama harus berupa string','!! Perhatian !!') break; end; nma = strvcat(nma)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

nm=isempty(nma); if (nm==1) errordlg('Nama anda belum dimasukkan','!! Perhatian !!') break; end; almat=get(handles.edit2,'string'); % pengecekan data untuk alamat if (isletter(almat)==0) errordlg('Alamat harus berupa string','!! Perhatian !!') break; end; almat = strvcat(almat) almt=isempty(almat); if (almt==1) errordlg('Alamat anda belum dimasukkan','!! Perhatian !!') break; end; pkrjn=get(handles.edit3,'string'); % pengecekan data untuk pekerjaan if (isletter(pkrjn)==0) errordlg('Pekerjaan harus berupa string','!! Perhatian !!') break; end; pkrjn = strvcat(pkrjn) pek=isempty(pkrjn); if (pek==1) errordlg('Pekerjaan anda belum dimasukkan','!! Perhatian !!') break; end; notelp=get(handles.edit4,'string'); % pengecekan data untuk nomor telepon if isletter(notelp)==1 errordlg('Nomor telepon harus berupa angka','!! Perhatian !!') break; end; notelp = strvcat(notelp) notel=isempty(notelp); if (notel==1) errordlg('Nomor telepon anda belum dimasukkan','!! Perhatian !!') break; end; gambar = get(handles.text13,'String') % pengecekan data untuk gambar tanda tangan gambar = strvcat(gambar) gbr = isempty(gambar); if(gbr == 1) errordlg('gambar anda belum dimasukkan','!! Perhatian !!') break; end if gambar == 't001.jpg' | gambar == 't002.jpg'|gambar == 't003.jpg'|gambar == 't004.jpg'|gambar == 't005.jpg'|gambar == 't006.jpg' errordlg('tanda tangan sudah ada','!! Perhatian !!') break;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

end if gambar == 't007.jpg' | gambar == 't008.jpg'|gambar == 't009.jpg'|gambar == 't010.jpg'|gambar == 't011.jpg'|gambar == 't012.jpg' errordlg('tanda tangan sudah ada','!! Perhatian !!') break; end if gambar == 't013.jpg' | gambar == 't014.jpg'|gambar == 't015.jpg'|gambar == 't016.jpg'|gambar == 't017.jpg'|gambar == 't018.jpg' errordlg('tanda tangan sudah ada','!! Perhatian !!') break; end if gambar == 't019.jpg' | gambar == 't020.jpg'|gambar == 't021.jpg'|gambar == 't022.jpg'|gambar == 't023.jpg'|gambar == 't024.jpg' errordlg('tanda tangan sudah ada','!! Perhatian !!') break; end if gambar == 't025.jpg' | gambar == 't026.jpg'|gambar == 't027.jpg'|gambar == 't028.jpg'|gambar == 't029.jpg'|gambar == 't030.jpg' errordlg('tanda tangan sudah ada','!! Perhatian !!') break; end gambar_org = get(handles.text15,'String') % pengecekan data untuk gambar tanda tangan gambar2 = strvcat(gambar_org) gbr = isempty(gambar2); if(gbr == 1) errordlg('Foto anda belum dimasukkan','!! Perhatian !!') break; end % untuk menyimpan data %untuk mengkoneksikan ke database myodbc conn = database('myodbc','root',''); ping(conn); %untuk memilih tabel database curs = exec(conn, 'select * from table_tanda_tangan') setdbprefs('DataReturnFormat','cellarray') curs = fetch(curs,10) AA = curs.Data %lihat_data=curs.data(:,1) %untuk mengetahui jumlah data dari database yang disimpan panjangbaris = rows(curs) data2 = { nma,almat,pkrjn,notelp,gambar,gambar2 }

nama_data2 = {'nama','alamat','pekerjaan','no_telp','gambar_pola','gambar_foto'}

insert(conn, 'table_tanda_tangan', nama_data2, data2); h = waitbar(0,'Proses Penyimpanan data'); for i=1:1000, % computation here % waitbar(i/1000); end close(h); msgbox('Data Telah Tersimpan','Pesan Program','warn'); close(curs) close(conn);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; menu; % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [fname,pname] =uigetfile({'*.jpg'},'Open Citra Tanda tangan'); asli=fname; citra = imread(asli); position = get(hObject, 'Position'); axes(handles.axes1); imshow(citra); set(handles.text13,'string',asli); % --- Executes during object creation, after setting all properties. function edit5_CreateFcn(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit5_Callback(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit5 as text % str2double(get(hObject,'String')) returns contents of edit5 as a double % --- Executes on button press in pushbutton5. function pushbutton5_Callback(hObject, eventdata, handles) % hObject handle to pushbutton5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [fname,pname] =uigetfile({'*.jpg'},'Open Citra Tanda tangan'); global asli asli=fname; citra = imread(asli); position = get(hObject, 'Position'); axes(handles.axes4); imshow(citra); set(handles.text15,'string',asli);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

form training (coba_training1.m) function varargout = coba_training1(varargin) clc; % COBA_TRAINING1 M-file for coba_training1.fig % COBA_TRAINING1, by itself, creates a new COBA_TRAINING1 or raises the existing % singleton*. % % H = COBA_TRAINING1 returns the handle to a new COBA_TRAINING1 or the handle to % the existing singleton*. % % COBA_TRAINING1('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in COBA_TRAINING1.M with the given input arguments. % % COBA_TRAINING1('Property','Value',...) creates a new COBA_TRAINING1 or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before coba_training1_OpeningFunction gets called. An %unrecognized property name or invalid value makes property application % stop. All inputs are passed to coba_training1_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help coba_training1 % Last Modified by GUIDE v2.5 14-Mar-2007 13:06:27 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @coba_training1_OpeningFcn, ... 'gui_OutputFcn', @coba_training1_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin & isstr(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before coba_training1 is made visible. function coba_training1_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to coba_training1 (see VARARGIN) % Choose default command line output for coba_training1 handles.output = hObject;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% Update handles structure guidata(hObject, handles); % UIWAIT makes coba_training1 wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = coba_training1_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; menu; % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global hidden layar=str2num(hidden); if layar ==1 bobot; else bobot2hd; end % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -----------------------training 2 data------------------------------- set(handles.pushbutton2,'enable','on') global ep global tol global lp global hd global edit_a global edit_b global unit2 global hd2 epoch=str2num(ep) tole=str2num(tol); laju=str2num(lp); unit=str2num(hd); unit2=str2num(hd2);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

edit_a=get(handles.edit5,'string') citra = imread(edit_a); a=im2bw(citra); [m,n]=size(a); i=1; while i~=m for i=1:m if a(i,:)==1 a(i,:)=[]; m=m-1; i=1; break; end end end j=1; while j~=n for j=1:n if a(:,j)==1 a(:,j)=[]; n=n-1; j=1; break; end end end a1=imresize(a,[50 50]); end a21=double(a1); pa=a21(1:2500); if edit_a == 't001.jpg' | edit_a == 't002.jpg'| edit_a == 't003.jpg' | edit_a == 't004.jpg'| edit_a == 't005.jpg'| edit_a == 't006.jpg' t1=[1;0;0;0;0;]; else if edit_a == 't007.jpg' | edit_a == 't008.jpg'| edit_a == 't009.jpg' | edit_a == 't010.jpg'| edit_a == 't011.jpg'| edit_a == 't012.jpg' t1=[0;1;0;0;0]; else if edit_a == 't013.jpg' | edit_a == 't014.jpg'| edit_a == 't015.jpg'| edit_a == 't016.jpg'| edit_a == 't017.jpg'| edit_a == 't018.jpg' t1=[0;0;1;0;0]; else if edit_a == 't019.jpg' | edit_a == 't020.jpg'| edit_a == 't021.jpg'| edit_a == 't022.jpg'| edit_a == 't023.jpg'| edit_a == 't024.jpg' t1=[0;0;0;1;0]; else if edit_a == 't025.jpg' | edit_a == 't026.jpg'| edit_a == 't027.jpg'| edit_a == 't028.jpg'| edit_a == 't029.jpg'| edit_a == 't030.jpg' t1=[0;0;0;0;1]; end end end end end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

edit_b=get(handles.edit6,'string'); citra = imread(edit_b); a=im2bw(citra); [m,n]=size(a); i=1; while i~=m for i=1:m if a(i,:)==1 a(i,:)=[]; m=m-1; i=1; break; end end end j=1; while j~=n for j=1:n if a(:,j)==1 a(:,j)=[]; n=n-1; j=1; break; end end end b1=imresize(a,[50 50]); end b21=double(b1); pb=b21(1:2500); if edit_b == 't001.jpg' | edit_b == 't002.jpg'| edit_b == 't003.jpg'| edit_b == 't004.jpg'| edit_b == 't005.jpg'| edit_b == 't006.jpg' t2=[1;0;0;0;0;]; end if edit_b == 't007.jpg' | edit_b == 't008.jpg'| edit_b == 't009.jpg'| edit_b == 't010.jpg'| edit_b == 't011.jpg'| edit_b == 't012.jpg' t2=[0;1;0;0;0]; end if edit_b == 't013.jpg' | edit_b == 't014.jpg'| edit_b == 't015.jpg'| edit_b == 't016.jpg'| edit_b == 't017.jpg'| edit_b == 't018.jpg' t2=[0;0;1;0;0]; end if edit_b == 't019.jpg' | edit_b == 't020.jpg'| edit_b == 't021.jpg'| edit_b == 't022.jpg'| edit_b == 't023.jpg'| edit_b == 't024.jpg' t2=[0;0;0;1;0]; end if edit_b == 't025.jpg' | edit_b == 't026.jpg'| edit_b == 't027.jpg'| edit_b == 't028.jpg'| edit_b == 't029.jpg'| edit_b == 't030.jpg' t2=[0;0;0;0;1]; end % -------------------------------cek string---------------------------- if (isequal(a1,b1)==1) button = questdlg('Terdapat data yang sama.Apakah ingin diubah??',... 'Message Box','Ya','Tidak','Tidak'); if strcmp(button,'Ya') return;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

elseif strcmp(button,'Tidak') close; end end % -------------------------------cek string---------------------------- p=[pa;pb]; pt=p'; global net; global t; t=[t1 t2] global hidden layar=str2num(hidden) if (layar==1) net=newff(minmax(pt),[unit,5],{'logsig','logsig'},'traingdx'); net=init(net); y=sim(net,pt) net.trainparam.epochs=epoch; net.trainparam.goal=tole; net.trainparam.lr=laju; tic [net,tr]=train(net,pt,t) toc global bobot1; global bobot2; global bobot3; global bobot4; global waktu; global eror global epoh bobot1=net.IW{1,1}; bobot2=net.LW{2,1}; bobot3=net.b{1}; bobot4=net.b{2}; waktu=toc eror=tr.perf(:,end) epoh=tr.epoch(:,end) e1=y-t rerata_e1=mean(abs(e1)) rerata_training=mean(abs(rerata_e1)) bobot; end if (layar==2) net=newff(minmax(pt),[unit,unit2,5],{'logsig','logsig','logsig'},'traingdx'); net=init(net) y=sim(net,pt) net.trainparam.epochs=epoch; net.trainparam.goal=tole; net.trainparam.lr=laju; tic [net,tr]=train(net,pt,t) toc global bobot1; global bobot2; global bobot3; global bobot4; global bobot5;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

global bobot6; global waktu; global eror; global epoh; bobot1=net.IW{1,1}; bobot2=net.LW{2,1}; bobot3=net.LW{3,2}; bobot4=net.b{1}; bobot5=net.b{2}; bobot6=net.b{3}; waktu=toc eror=tr.perf(:,end) epoh=tr.epoch(:,end) e1=y-t; rerata_e1=mean(abs(e1)); rerata_training=mean(abs(rerata_e1)) bobot2hd; end; % --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [fname,pname] =uigetfile('data training\*.jpg','Open Citra Tanda tangan'); asli=fname set(handles.edit5,'string',asli); % --- Executes on button press in pushbutton5. function pushbutton5_Callback(hObject, eventdata, handles) % hObject handle to pushbutton5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [fname,pname] =uigetfile('data training\*.jpg','Open Citra Tanda tangan'); asli=fname; set(handles.edit6,'string',asli); % --- Executes during object creation, after setting all properties. function edit5_CreateFcn(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit5_Callback(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit5 as text

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% str2double(get(hObject,'String')) returns contents of edit5 as a double % --- Executes during object creation, after setting all properties. function edit6_CreateFcn(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end function edit6_Callback(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit6 as text % str2double(get(hObject,'String')) returns contents of edit6 as a double % --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end % --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu1 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu1 global ep val_ep = get(hObject,'Value'); string_list = get(hObject,'String'); ep = string_list{val_ep}; % --- Executes during object creation, after setting all properties. function popupmenu2_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end % --- Executes on selection change in popupmenu2. function popupmenu2_Callback(hObject, eventdata, handles) % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu2 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu2 global tol val_tol = get(hObject,'Value'); string_list = get(hObject,'String'); tol = string_list{val_tol}; % --- Executes during object creation, after setting all properties. function popupmenu3_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end % --- Executes on selection change in popupmenu3. function popupmenu3_Callback(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu3 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu3 global lp val_lp = get(hObject,'Value'); string_list = get(hObject,'String'); lp = string_list{val_lp}; % --- Executes during object creation, after setting all properties. function popupmenu4_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu4 (see GCBO)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end % --- Executes on selection change in popupmenu4. function popupmenu4_Callback(hObject, eventdata, handles) % hObject handle to popupmenu4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu4 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu4 global hd val_hd = get(hObject,'Value'); string_list = get(hObject,'String'); hd = string_list{val_hd}; % --- Executes during object creation, after setting all properties. function popupmenu5_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end % --- Executes on selection change in popupmenu5. function popupmenu5_Callback(hObject, eventdata, handles) % hObject handle to popupmenu5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu5 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu5 global hd2 val_hd2 = get(hObject,'Value'); string_list = get(hObject,'String'); hd2 = string_list{val_hd2}; % --- Executes during object creation, after setting all properties. function popupmenu6_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc set(hObject,'BackgroundColor','white'); else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end % --- Executes on selection change in popupmenu6. function popupmenu6_Callback(hObject, eventdata, handles) % hObject handle to popupmenu6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu6 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu6 global val_hidden global hidden val_hidden = get(hObject,'Value'); string_list = get(hObject,'String'); hidden = string_list{val_hidden}; if val_hidden==1 set(handles.popupmenu4,'visible','on') set(handles.popupmenu5,'visible','off') end if val_hidden==2 set(handles.popupmenu4,'visible','on') set(handles.popupmenu5,'visible','on') end Form Testing (Testing30.m) function varargout = testing30(varargin) % TESTING30 M-file for testing30.fig % TESTING30, by itself, creates a new TESTING30 or raises the existing % singleton*. % % H = TESTING30 returns the handle to a new TESTING30 or the handle to % the existing singleton*. % % TESTING30('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in TESTING30.M with the given input arguments. % % TESTING30('Property','Value',...) creates a new TESTING30 or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before testing30_OpeningFunction gets called. An %unrecognized property name or invalid value makes property application %stop. All inputs are passed to testing30_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% Edit the above text to modify the response to help testing30 % Last Modified by GUIDE v2.5 19-Feb-2007 20:50:34 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @testing30_OpeningFcn, ... 'gui_OutputFcn', @testing30_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin & isstr(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before testing30 is made visible. function testing30_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to testing30 (see VARARGIN) % Choose default command line output for testing30 handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes testing30 wait for user response (see UIRESUME) % uiwait(handles.figure1); str = datestr(now); set(handles.text15,'string',str) % --- Outputs from this function are returned to the command line. function varargout = testing30_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global hidden layar=str2num(hidden); if layar ==1 bobot; else bobot2hd; end % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clc global bobot1; global bobot2; global bobot3; global bobot4; global net; b1=bobot1; b2=bobot2; b3=bobot3; b4=bobot4; global ps; pe=(ps); y=double(sim(net,pe)) level=graythresh(y) y1=im2bw(y,level); y2=double(y1) global t; [m,n]=size(t) global x; for x=1:n if t(:,x) == y2 fprintf('%d dikenali\n',x) hasil=1; cekt return; end end for w=1:n if isequal(t(:,w),y2) == 0 fprintf('%d tidak dikenali\n',w) hasil1=0 h = waitbar(0,'Proses Pengambilan Keputusan'); for i=1:1000, % computation here % waitbar(i/1000); end close(h); keputusan_gakenal return;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 99: PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI … filesistem ini menunjukkan bahwa semakin banyak jumlah pola pelatihan, maka semakin besar pula kemungkinan pola akan dikenali. Pola dapat

end end % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; menu; % --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [fname,pname] =uigetfile('.jpg','Open Citra Tanda tangan'); global asli asli=fname [v,w]=size(asli) citra = imread(asli); a=im2bw(citra); [m,n]=size(a); i=1; while i~=m for i=1:m if a(i,:)==1 a(i,:)=[]; m=m-1; i=1; break; end end end j=1; while j~=n for j=1:n if a(:,j)==1 a(:,j)=[]; n=n-1; j=1; break; end end end a2=imresize(a,[200 200]); axes(handles.axes1) imshow(a2) a3=imresize(a,[50 50]); pk=double(a3); pd=pk(1:2500); global ps; ps=pd'; set(handles.pushbutton2,'enable','on')

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI