• Tidak ada hasil yang ditemukan

Verifikasi Tanda Tangan Dengan Metode Jaringan Syaraf Tiruan Heteroassociative Memory.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Verifikasi Tanda Tangan Dengan Metode Jaringan Syaraf Tiruan Heteroassociative Memory."

Copied!
107
0
0

Teks penuh

(1)

i Universitas Kristen Maranatha

VERIFIKASI TANDA TANGAN DENGAN METODE JARINGAN

SYARAF TIRUAN HETEROASSOCIATIVE MEMORY

Disusun oleh :

Fabiola Zita Devy C. 0722085

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha, Jl.Prof.Drg.Suria Sumantri, MPH no.65, Bandung, Indonesia,

Email : vbee_160988@yahoo.co.id

ABSTRAK

Pada Tugas Akhir ini, dibuat perancangan program verifikasi tanda tangan dengan metode Jaringan Syaraf Tiruan Heteroassociative Memory yang direalisasikan menggunakan Visual Basic 6. Citra tanda tangan referensi maupun uji dipindai melalui scanner dan disimpan dalam bentuk file pada komputer, selanjutnya citra referensi diolah di komputer melalui proses pemotongan, penskalaan citra, ekstraksi ciri. Nilai ekstraksi ciri yang didapat menjadi masukan Jaringan Syaraf Tiruan Heteroassociative Memory, sementara itu nilai output atau nilai target untuk citra referensi telah ditentukan sebelumnya. Dari dua nilai tersebut didapat nilai bobot pada JST yang akan digunakan untuk pengujian citra uji. Dalam pengujian, nilai bobot yang telah didapat dikalikan dengan nilai ekstraksi ciri dari citra uji sehingga didapat nilai output. Dari nilai tersebut dapat diketahui kesesuaian antara nilai output citra referensi dengan citra uji.

Dari hasil pengujian terhadap 5 orang, masing-masing 60 kali, didapat persentase FAR dan FRR untuk setiap orang. Persentase terbesar FAR adalah 60 % dan persentase terbesar FRR didapat sebesar 56.67 %.

Kata kunci : Verfikasi tanda tangan, ekstraksi ciri, dan Jaringan Syaraf Tiruan

(2)

ii Universitas Kristen Maranatha

SIGNATURE VERIFICATION WITH HETEROASSOCIATIVE

MEMORY NEURAL NETWORK METHOD

Composed by :

Fabiola Zita Devy C. 0722085

Electrical Engineering, Maranatha Christian University Jl.Prof.Drg.Suria Sumantri, MPH no.65, Bandung, Indonesia,

Email : vbee_160988@yahoo.co.id

ABSTRACT

On this final project, made a verification signature software using

Heteroassociative Memory Neural Network method which implemented use Visual

Basic 6. Both reference and tested image were scanned through scanner and saved in

computer then processed on computer through image cropping, image scalling, and

feature extraction. Obtained feature extraction values become input for

Heteroassociative Memory Neural Network while output values for reference images

have been set before. From two values, weight value will be obtained and will use for

testing on tested image. In testing process, obtained weight value is multiplied by

feature extraction’s value from tested image so that output value obtained. From

output value, the compatibility between output value of reference and tested image

will be known.

From tests toward 5 peoples, each of them 60 times, percentage of FAR and

FRR for each person are obtained. The biggest FAR percentage is 60 % and the

biggest FRR percentage obtained is 56.67 %.

Keywords : Signature verification, feature extraction, and Heteroassociative Memory

(3)

v Universitas Kristen Maranatha

DAFTAR ISI

Abstrak... i

Abstract... ii

Kata Pengantar... iii

Daftar Isi ... v

Daftar Tabel... viii

Daftar Gambar... ix

Daftar Rumus... xi

Daftar Lampiran... xii

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah………... 1

1.2. Identifikasi Masalah... 2

1.3. Rumusan Masalah... 2

1.4. Tujuan………...… 2

1.5. Pembatasan Masalah………. 2

1.6. Sistematika Penulisan... 2

BAB II LANDASAN TEORI 2.1. Pengertian Tanda Tangan... 4

2.2. Pengolahan Citra... 4

2.2.1. Pemotongan Citra (Image Cropping)... 7

2.2.2. Penskalaan Citra (Image Resizing)... 7

2.3. Jaringan Syaraf Heteroassociative Memory……….. 7

2.3.1. Arsitektur …..………..……….. 8

2.3.2. Algoritma.………...………... 9

(4)

vi Universitas Kristen Maranatha

2.4.1. Komponen Visual Basic………..………..….. 11

2.4.2. Operator Visual Basic………..………... 14

2.4.3. Objek Visual pada Visual Basic………..……… 16

2.4.4. Data pada Visual Basic... 18

2.4.5. Conditional Statement... 18

2.4.6. Looping Statement... 19

2.4.7. Graphics... 20

2.4.8. Teori Penanganan File (File Handling Theory)... 21

2.5 False Acceptance Rate (FAR) dan False Rejection Rate (FRR) ... 22

BAB III PERANCANGAN DAN REALISASI 3.1. Model Jaringan Syaraf Tiruan Heteroassociative Memory yang Direalisasi.... 23

3.2. Input Scanner, Deteksi Tepi, dan Penskalaan Citra... 27

3.3. Ekstraksi Ciri Citra Tanda Tangan ………..……….... 30

3.4. Pencarian Matriks Bobot Melalui Jaringan Syaraf Tiruan Heteroassociative Memory... 34

3.4.1. Pengujian Jaringan Heteroassociative dengan Citra Uji... 36

3.5. Tampilan GUI... 43

BAB IV DATA PENGAMATAN DAN ANALISA 4.1. Data Pengamatan………... 47

4.1.1. Data Pengamatan Nilai Tanda Tangan Uji “Robert”………. 47

4.1.2. Data Pengamatan Nilai Tanda Tangan Uji “Andreas”………..………. 52

4.1.3. Data Pengamatan Nilai Tanda Tangan Uji “Dhani”…………..………. 55

4.1.4. Data Pengamatan Nilai Tanda Tangan Uji “Dearni”….………. 59

4.1.5. Data Pengamatan Nilai Tanda Tangan Uji “Olive”…………...………. 64

(5)

vii Universitas Kristen Maranatha BAB V KESIMPULAN DAN SARAN

(6)

viii Universitas Kristen Maranatha

DAFTAR TABEL

Tabel 2.1 Icon yang terdapat pada Jendela Project ………... 12

Tabel 2.2 Operator Aritmatika ... 15

Tabel 2.3 Operator Penggabungan... 15

Tabel 2.4 Operator Logika... 16

Tabel 2.5 Bagian-bagian syntax statement type... 18

Tabel 3.1 Tabel Nilai Threshold Citra Tanda Tangan... 36

Tabel 4.1 Tabel 4.1 Tabel Hasil Pengujian Citra Tanda Tangan Asli “Robert”... 48

Tabel 4.2 Tabel Hasil Pengujian Citra Tanda Tangan “Robert” yang Dipalsukan.... 50

Tabel 4.3 Tabel Hasil Pengujian Nilai Tanda Tangan Asli “Andreas” ... 52

Tabel 4.4 Tabel Hasil Pengujian Citra Tanda Tangan “Andreas” yang Dipalsukan.. 54

Tabel 4.5 Tabel Hasil Pengujian Citra Tanda Tangan Asli “Dhani”... 56

Tabel 4.6 Tabel Hasil Pengujian Citra Tanda Tangan “Dhani” yang Dipalsukan .... 58

Tabel 4.7 Tabel Hasil Pengujian Nilai Tanda Tangan Asli “Dearni” ... 60

Tabel 4.8 Tabel Hasil Pengujian Nilai Tanda Tangan “Dearni” yang Dipalsukan.... 62

Tabel 4.9 Tabel Hasil Pengujian Nilai Tanda Tangan Asli “Olive” ... 64

Tabel 4.10 Tabel Hasil Pengujian Nilai Tanda Tangan “Olive” yang Dipalsukan.... 66

Tabel 4.11 Tabel Tingkat Persentase False Acceptance Rate (FAR) ... 68

(7)

ix Universitas Kristen Maranatha

DAFTAR GAMBAR

Gambar 2.1 Pemotongan Citra... 7

Gambar 2.2 Jaringan Syaraf Tiruan Heteroassociative Memory... 8

Gambar 2.3 Visualisasi Pencarian Matriks Bobot dengan Perkalian Matriks... 10

Gambar 2.4 Tampilan Dasar Microsoft Visual Basic 6.0... 11

Gambar 2.5 Jendela Project... 11

Gambar 2.6 Tampilan Form... 12

Gambar 2.7 Toolbox... 13

Gambar 2.8 Jendela Properties... 13

Gambar 3.1.a Diagram Blok Pembuatan Database dari Citra Referensi... 23

Gambar 3.1.b Diagram Blok Pengujian Citra Uji pada Verifikasi Tanda Tangan... 23

Gambar 3.2 Model Jaringan Syaraf Tiruan Heteroassociative Memory yang Direalisasi... 24

Gambar 3.3 Diagram Alir Utama Program Pencarian Nilai Database Citra Referensi... 25

Gambar 3.4 Diagram Alir Utama Pengujian Program dengan Citra Uji... 26

Gambar 3.5 Diagram Alir Pengambilan Citra... 26

Gambar 3.5 Diagram Alir Pemotongan Citra... 27

Gambar 3.7 Diagram Alir Penskalaan Citra... 28

Gambar 3.8 Sel 4 x 4 pixel Beserta Nilai Pembobotan... 29

Gambar 3.9 Diagram Alir Ekstraksi Ciri Citra Tanda Tangan... 30

Gambar 3.10 Diagram Alir Pengambilan Nilai Rata-Rata Ekstraksi Ciri... 32

Gambar 3.11 Diagram Alir Pencarian Matriks Bobot... 34

Gambar 3.12 Diagram Alir Pengujian Jaringan Heteroassociative dengan Citra Uji... 37

(8)

x Universitas Kristen Maranatha

Gambar 4.1 Contoh Citra Tanda Tangan “Robert”... 46

Gambar 4.2 Contoh Citra Tanda Tangan “Andreas”... 46

Gambar 4.3 Contoh Citra Tanda Tangan “Dhani”... 46

Gambar 4.4 Contoh Citra Tanda Tangan “Dearni”... 47

Gambar 4.5 Contoh Citra Tanda Tangan “Olive”... 47

(9)

xi Universitas Kristen Maranatha

DAFTAR RUMUS

Rumus (2.1)... 7

Rumus (2.2)... 7

Rumus (2.3)... 8

Rumus (2.4)... 9

Rumus (2.5)... 9

Rumus (2.6)... 9

Rumus (2.7)... 9

Rumus (2.8)... 22

(10)

xii Universitas Kristen Maranatha

DAFTAR LAMPIRAN

LAMPIRAN A

LIST PROGRAM VISUAL BASIC... A-1 LAMPIRAN B

TAMPILAN PADA VISUAL BASIC... B-1 LAMPIRAN C

(11)

LAMPIRAN A

(12)

A-1

PROGRAM UTAMA

Dim sx, sy, h As Long

Dim xh, yh, xki, yki, xka, yka As Long Dim skalax, skalay, a, c, d, e As Long Dim s(1 To 5, 1 To 5) As Long Dim sum(1 To 41, 1 To 41) As Long

Dim f As Long, hs As Long, xah As Long, yah As Long, j As Long

Dim hasilterakhir(1 To 101) As Long, cekrow As Long, cekcol As Long, jst As Long Dim out1(1, 5) As Double, out2(1, 5) As Double, out3(1, 5) As Double, out4(1, 5) As Double, out5(1, 5) As Double

Dim rata_1(1 To 101, 1) As Double, rata_2(1 To 101, 1) As Double, rata_3(1 To 101, 1) As Double, rata_4(1 To 101, 1) As Double, rata_5(1 To 101, 1) As Double

Dim postitik, namafile

Dim bobot_1(102, 6) As Double, bobot_2(102, 6) As Double, bobot_3(102, 6) As Double, bobot_4(102, 6) As Double, bobot_5(102, 6) As Long, bobot_tot(101, 5) As Double

Dim yin1 As Double, yin2 As Double, yin3 As Double, yin4 As Double, yin5 As Double

Dim thrmin(5, 5) As Double, thrmax(5, 5) As Double

Private Sub Command3_Click() ‘membuka file citra dan ditampilkan pada picture4 CommonDialog1.ShowOpen

(13)

A-2 End Sub

Private Sub Command5_Click() Picture1.AutoRedraw = True

lebar = Picture1.Width tinggi = Picture1.Height yki = tinggi

xki = lebar yka = 0 xka = 0

For brs = 1 To tinggi For klm = 1 To lebar

wrn = Picture1.Point(klm, brs) r = wrn And RGB(255, 0, 0)

g = (wrn And RGB(0, 255, 0)) / 256

b = ((wrn And RGB(0, 0, 255)) / 256) / 256 wrn = (r + g + b) / 3

If (wrn <= 128) Then bw = 0 Else bw = 1 If bw = 0 Then

(14)

A-3 If brs < yki Then yki = brs

If klm > xka Then xka = klm If brs > yka Then yka = brs End If

' binerisasi citra

If wrn >= 128 Then wrn = 200 Else wrn = 0 Picture3.PSet (klm, brs), RGB(wrn, wrn, wrn) Next klm

Next brs

lbrttd = xka - xki tggittd = yka - yki sx = lbrttd / 40 sy = tggittd / 40 Text1.Text = sx Text2.Text = sy Text3.Text = xki Text4.Text = yki Text5.Text = xka Text6.Text = yka ' tampilkan cropping

(15)

A-4 wrn = Picture1.Point(klm, brs)

Picture3.PSet (klm, brs), wrn Next klm

Next brs yh = 1

For brs = xki To xka Step Int(sy) xh = 1

For klm = yki To yka Step Int(sx)

' cari jumlah piksel warna hitam simpan di h

h = 0

For baris = brs To (brs + Int(sy)) For kolom = klm To (klm + Int(sx)) x = Picture1.Point(baris, kolom) r = x And RGB(255, 0, 0)

g = (x And RGB(0, 255, 0)) / 256

b = ((x And RGB(0, 0, 255)) / 256) / 256 x = (r + g + b) / 3

If x <= 128 Then h = h + 1 Next kolom

Next baris

(16)

A-5

' jika h> threshold , diberi warna hitam

If h > (sx * sy) / 3 Then

Picture4.PSet (yh, xh), RGB(0, 0, 0) Else

Picture4.PSet (yh, xh), RGB(255, 255, 255) End If

Debug.Print xh xh = xh + 1 Next klm yh = yh + 1 Next brs

End Sub

Private Sub Command1_Click()

‘input nilai bobot per 4 x 4 sel (per blok)

(17)

A-6 s(3, 1) = 256

s(3, 2) = 512 s(3, 3) = 1024 s(3, 4) = 2048 s(4, 1) = 4096 s(4, 2) = 8192 s(4, 3) = 16384 s(4, 4) = 32768

‘input nilai target output

(18)

A-7 out3(0, 5) = 1

out4(0, 1) = 1 out4(0, 2) = 0 out4(0, 3) = 0 out4(0, 4) = 0 out4(0, 5) = 0 out5(0, 1) = 0 out5(0, 2) = 0 out5(0, 3) = 0 out5(0, 4) = 0 out5(0, 5) = 0

Picture4.AutoRedraw = False lebar = Picture4.Width tinggi = Picture4.Height d = tinggi

a = lebar e = 0 c = 0

For brs = 1 To tinggi For klm = 1 To lebar

(19)

A-8 g = (wrna And RGB(0, 255, 0)) / 256

b = ((wrna And RGB(0, 0, 255)) / 256) / 256 wrna = (r + g + b) / 3

If (wrna <= 128) Then bw = 0 Else bw = 1 If bw = 0 Then

If klm < a Then a = klm If brs < d Then d = brs If klm > c Then c = klm If brs > e Then e = brs End If

lbarttd = c - a tiggittd = e - d skalax = 4 skalay = 4

(20)

A-9 Next klm

Next brs hs = 1 yah = 1

For row = a To c Step Int(skalay) xah = 1

For col = d To e Step Int(skalax)

' cari jumlah piksel warna hitam simpan di i

cekrow = 1

f = 0

For rows = row To (row + Int(skalay)) cekcol = 1

For Column = col To (col + Int(skalax)) z = Picture4.Point(Column, rows) r = z And RGB(255, 0, 0)

g = (z And RGB(0, 255, 0)) / 256

b = ((z And RGB(0, 0, 255)) / 256) / 256 z = (r + g + b) / 3

If (z <= 128) Then black = 0 Else black = 1

If black = 0 Then

(21)

A-10 Else

sum(Column, rows) = 0 End If

cekcol = cekcol + 1

f = f + (sum(Column, rows) / 655.35) Next Column

cekrow = cekrow + 1 Next rows

List1.AddItem "f=" & f hasilterakhir(hs) = f hs = hs + 1

xah = xah + 1 Next col yah = yah + 1 Next row

postitik = InStr(Text13.Text, ".")

namafile = Left(Text13.Text, postitik - 1) + ".csv" ‘simpan nilai hasil ekstraksi ciri

Open namafile For Output As #1 For f = 1 To 101

(22)

A-11 Next f

Close #1

‘ambil nilai rata-rata ekstraksi ciri citra referensi

Dim ratarata_1 As String, ratarata_2 As String, ratarata_3 As String, ratarata_4 As String, ratarata_5 As String

Open "d:\TA vbee\AMBIL DATA TA VBEE\robert.csv" For Input As #1 i = 1

Do Until EOF(1)

Line Input #1, ratarata_1

List2.AddItem "rata2 =" & ratarata_1 rata_1(i, 1) = Val(ratarata_1)

i = i + 1 Loop Close #1

Open "d:\TA vbee\AMBIL DATA TA VBEE\andreas.csv" For Input As #2 i = 1

Do Until EOF(2)

Line Input #2, ratarata_2

List3.AddItem "rata2 =" & ratarata_2 rata_2(i, 1) = Val(ratarata_2)

(23)

A-12 Loop

Close #2

Open "d:\TA vbee\AMBIL DATA TA VBEE\dhani.csv" For Input As #3 i = 1

Do Until EOF(3)

Line Input #3, ratarata_3

List4.AddItem "rata2 =" & ratarata_3 rata_3(i, 1) = Val(ratarata_3)

i = i + 1 Loop Close #3

Open "d:\TA vbee\AMBIL DATA TA VBEE\dea.csv" For Input As #4 i = 1

Do Until EOF(4)

Line Input #4, ratarata_4

List5.AddItem "rata2 =" & ratarata_4 rata_4(i, 1) = Val(ratarata_4)

(24)

A-13

Open "d:\TA vbee\AMBIL DATA TA VBEE\livi.csv" For Input As #5 i = 1

Do Until EOF(5)

Line Input #5, ratarata_5

List6.AddItem "rata2 =" & ratarata_5 rata_5(i, 1) = Val(ratarata_5)

i = i + 1 Loop Close #5 End Sub

Private Sub Command6_Click() Dim strbobottot As Long, fvl As Long Dim i As Integer, j As Integer, k As Integer Dim filename, namefile

thrmin(1, 1) = 49133 ‘input nilai threshold thrmin(1, 2) = 46299

(25)

A-14 thrmin(2, 5) = 69956.1

(26)

A-15 thrmax(2, 3) = 69138.9

thrmax(2, 4) = 95085.5 thrmax(2, 5) = 144453.1 thrmax(3, 1) = 132580.1 thrmax(3, 2) = 128425.9 thrmax(3, 3) = 51454.1 thrmax(3, 4) = 80271.1 thrmax(3, 5) = 128425.9 thrmax(4, 1) = 35611.3 thrmax(4, 2) = 23486.3 thrmax(4, 3) = 10518.3 thrmax(4, 4) = 18664.5 thrmax(4, 5) = 23486.3 thrmax(5, 1) = 20367.4 thrmax(5, 2) = 17992.2 thrmax(5, 3) = 8045.6 thrmax(5, 4) = 14286 thrmax(5, 5) = 17992.2

‘pengujian terhadap citra uji

(27)

A-16 Next j

Next i

For j = 1 To 5

List7.AddItem "kolom = " & j For i = 1 To 100

bobot_1(i, j) = (rata_1(i, 1) * out1(0, j)) bobot_2(i, j) = (rata_2(i, 1) * out2(0, j)) bobot_3(i, j) = (rata_3(i, 1) * out3(0, j)) bobot_4(i, j) = (rata_4(i, 1) * out4(0, j)) bobot_5(i, j) = (rata_5(i, 1) * out5(0, j))

bobot_tot(i, j) = bobot_5(i, j) + bobot_4(i, j) + bobot_3(i, j) + bobot_2(i, j) + bobot_1(i, j)

strbobottot = bobot_tot(i, j)

List7.AddItem "bobot total=" & strbobottot Next i

(28)

A-17 For i = 1 To 100

yin1 = yin1 + (bobot_tot(i, 1) * hasilterakhir(i)) yin2 = yin2 + (bobot_tot(i, 2) * hasilterakhir(i)) yin3 = yin3 + (bobot_tot(i, 3) * hasilterakhir(i)) yin4 = yin4 + (bobot_tot(i, 4) * hasilterakhir(i)) yin5 = yin5 + (bobot_tot(i, 5) * hasilterakhir(i)) Next i

List8.AddItem yin1 List8.AddItem yin2 List8.AddItem yin3 List8.AddItem yin4 List8.AddItem yin5

filename = Mid(Text13.Text, 31, 5) Text15.Text = filename

‘penentuan range nilai threshold masing-masing citra tanda tangan

If Text15.Text = "robet" Then

(29)

A-18

If fvl1 = 1 And fvl2 = 1 And fvl3 = 0 And fvl4 = 1 And fvl5 = 1 Then Text14.Text = "Robert" Else: Text14.Text = "unknown"

End If

If Text15.Text = "andre" Then

If thrmin(2, 1) <= yin1 And yin1 <= thrmax(2, 1) Then fvl1 = 1 Else fvl1 = 0 If thrmin(2, 2) <= yin2 And yin2 <= thrmax(2, 2) Then fvl2 = 1 Else fvl2 = 0 If thrmin(2, 3) <= yin3 And yin3 <= thrmax(2, 3) Then fvl3 = 1 Else fvl3 = 0 If thrmin(2, 4) <= yin4 And yin4 <= thrmax(2, 4) Then fvl4 = 1 Else fvl4 = 0 If thrmin(2, 5) <= yin5 And yin5 <= thrmax(2, 5) Then fvl5 = 1 Else fvl5 = 0 If fvl1 = 1 And fvl2 = 1 And fvl3 = 1 And fvl4 = 1 And fvl5 = 1 Then Text14.Text = "Andreas" Else: Text14.Text = "unknown"

End If

If Text15.Text = "dhani" Then

If thrmin(3, 1) <= yin1 And yin1 <= thrmax(3, 1) Then fvl1 = 1 Else fvl1 = 0 If thrmin(3, 2) <= yin2 And yin2 <= thrmax(3, 2) Then fvl2 = 1 Else fvl2 = 0 If thrmin(3, 3) <= yin3 And yin3 <= thrmax(3, 3) Then fvl3 = 0 Else fvl3 = 1 If thrmin(3, 4) <= yin4 And yin4 <= thrmax(3, 4) Then fvl4 = 0 Else fvl4 = 1 If thrmin(3, 5) <= yin5 And yin5 <= thrmax(3, 5) Then fvl5 = 1 Else fvl5 = 0 If fvl1 = 1 And fvl2 = 1 And fvl3 = 0 And fvl4 = 0 And fvl5 = 1 Then Text14.Text = "Dhani" Else: Text14.Text = "unknown"

(30)

A-19 If Text15.Text = "dearn" Then

If thrmin(4, 1) <= yin1 And yin1 <= thrmax(4, 1) Then fvl1 = 1 Else fvl1 = 0 If thrmin(4, 2) <= yin2 And yin2 <= thrmax(4, 2) Then fvl2 = 0 Else fvl2 = 1 If thrmin(4, 3) <= yin3 And yin3 <= thrmax(4, 3) Then fvl3 = 0 Else fvl3 = 1 If thrmin(4, 4) <= yin4 And yin4 <= thrmax(4, 4) Then fvl4 = 0 Else fvl4 = 1 If thrmin(4, 5) <= yin5 And yin5 <= thrmax(4, 5) Then fvl5 = 0 Else fvl5 = 1 If fvl1 = 1 And fvl2 = 0 And fvl3 = 0 And fvl4 = 0 And fvl5 = 0 Then Text14.Text = "Dearni" Else: Text14.Text = "unknown"

End If

If Text15.Text = "olive" Then

If thrmin(5, 1) <= yin1 And yin1 <= thrmax(5, 1) Then fvl1 = 0 Else fvl1 = 1 If thrmin(5, 2) <= yin2 And yin2 <= thrmax(5, 2) Then fvl2 = 0 Else fvl2 = 1 If thrmin(5, 3) <= yin3 And yin3 <= thrmax(5, 3) Then fvl3 = 0 Else fvl3 = 1 If thrmin(5, 4) <= yin4 And yin4 <= thrmax(5, 4) Then fvl4 = 0 Else fvl4 = 1 If thrmin(5, 5) <= yin5 And yin5 <= thrmax(5, 5) Then fvl5 = 0 Else fvl5 = 1 If fvl1 = 0 And fvl2 = 0 And fvl3 = 0 And fvl4 = 0 And fvl5 = 0 Then Text14.Text = "Olive" Else: Text14.Text = "unknown"

End If

(31)

A-20 End Sub

Private Sub Command2_Click()

List1.Clear List2.Clear List3.Clear List4.Clear List5.Clear List6.Clear List7.Clear List8.Clear List9.Clear Text14.Text = "" Text15.Text = "" End Sub

Private Sub Command4_Click() ‘akhiri jalannya program End

(32)

LAMPIRAN B

(33)

B-1

Gambar B.1. Tampilan Awal Program

(34)

B-2

Gambar B.3. Tampilan Cropping Citra dan Resize Citra

(35)

B-3

Gambar B.5. Tampilan Hasil Pengujian Citra Uji “Robert”

(36)

B-4

Gambar B.7. Tampilan Hasil Pengujian Citra Uji “Dhani”

(37)

B-5

(38)

LAMPIRAN C

(39)

C-1 NILAI RATA-RATA EKSTRAKSI CIRI

(40)

C-2

Andreas

(41)
(42)

C-4

dearni

(43)
(44)
(45)

C-7

22 0

47

15

72

0

97

0

23 10

48

0

73

0

98

0

24 0

49

0

74

0

99

0

25 8.8

50

0

75

0

100

0

VERIFIKASI TANDA TANGAN

Seluruh data yang diambil : (Ket: “sesuai” untuk file no 6-35 = terverifikasi asli;

“tidak sesuai” untuk file no 6-35 = tidak terverifikasi asli; “sesuai” untuk file no 36

-65 = tidak terverifikasi palsu; “tidak sesuai” untuk file no 36-65 = terverifikasi palsu)

Nama file Gambar asli Resized Image Target Hasil Ket

Robet6

1 1 0 1 1

1 1 0 1 1

sesuai

Robet7 1

1 0 1 1

1 1 0 1 1

(46)

C-8 Robet8

1 1 0 1 1

1 1 0 1 1

sesuai

Robet9 1

1 0 1 1

1 1 1 1 1

Tidak sesuai

Robet10 1

1 0 1 1

0 0 1 1 0

Tidak sesuai

Robet11

1 1 0 1 1

1 1 0 1 1

(47)

C-9

Robet12 1

1 0 1 1

1 1 0 1 1

sesuai

Robet13 1

1 0 1 1

1 1 0 1 1

sesuai

Robet14 1

1 0 1 1

1 1 0 1 1

sesuai

Robet15

1 1 0 1 1

1 1 1 1 1

tidak sesuai

Robet16

1 1 0 1 1

1 1 0 1 1

(48)

C-10 Robet17

1

sesuai

Robet18

1 sesuai

Robet19

1

sesuai

Robet20

1

sesuai

Robet21

1

(49)

C-11 Robet22

1 sesuai

Robet23

1 sesuai

robet24

1

sesuai

robet25

1

sesuai

robet26

(50)

C-12 robet27

1 sesuai

robet28

1

sesuai

robet29

1

sesuai

robet30

1

sesuai

robet31

(51)

C-13 robet32

1 sesuai

robet33

1

sesuai

robet34

1

sesuai

robet35

1

sesuai

robet36

(52)

C-14 robet37

1

robet38

1

robet39

1

robet40

1

robet41

1

(53)

C-15 robet42

1

robet43

1

robet44

1

robet45

1

sesuai

robet46

(54)

C-16 robet47

1

robet48

1

robet49

1

robet50

1

robet51

1

(55)

C-17 robet52

1

robet53

1

robet54

1

sesuai

robet55

1

sesuai

robet56

(56)

C-18 robet57

1

robet58

1

robet59

1

robet60

1

robet61

(57)

C-19 robet62

1

robet63

1

robet64

1

robet65

1

Andre6

1

(58)

C-20

Andre7 1

1 1 1 1

1 1 1 1 1

sesuai

Andre8 1

1 1 1 1

1 1 1 1 1

sesuai

Andre9 1

1 1 1 1

1 1 1 1 1

sesuai

Andre10 1

1 1 1 1

1 1 1 1 1

(59)

C-21

Andre11 1

1 1 1 1

1 1 1 1 1

sesuai

Andre12

1 1 1 1 1

1 1 1 1 1

sesuai

andre13

1 1 1 1 1

1 1 1 1 1

sesuai

andre14

1 1 1 1 1

1 1 1 1 1

(60)

C-22 andre15

1

sesuai

andre16

1

sesuai

andre17

1

sesuai

andre18

1

sesuai

andre19

1

sesuai

andre20

1

(61)

C-23 andre21

1

sesuai

andre22

1

sesuai

andre23

1

sesuai

andre24

1

sesuai

andre25

1

sesuai

andre26

1

(62)

C-24 andre27

1

sesuai

andre28

1

sesuai

andre29

1

sesuai

andre30

1

sesuai

andre31

1

(63)

C-25 andre32

1 sesuai

andre33

1

sesuai

andre34

1

sesuai

andre35

1

sesuai

andre36

1

andre37

(64)

C-26 andre38

1

andre39

1

andre40

1

andre41

1

sesuai

andre42

1

sesuai

andre43

(65)

C-27 andre44

1

andre45

1

andre46

1

sesuai

andre47

1 sesuai

andre48

1

sesuai

andre49

(66)

C-28 andre50

1

andre51

1

andre52

1

andre53

1

andre54

1

(67)

C-29 andre55

1 sesuai

andre56

1

sesuai

andre57

1

andre58

1

andre59

1

andre60

1

(68)

C-30 andre61

1

andre62

1

andre63

1

andre64

1

sesuai

andre65

1 sesuai

Dhani6

1

(69)

C-31 Dhani7

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani8

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani9

1 1 0 0 1

1 1 0 0 1

(70)

C-32

Dhani10 1

1 0 0 1

1 1 0 0 1

sesuai

Dhani11

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani12

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani13

1 1 0 0 1

1 1 0 0 1

(71)

C-33 Dhani14

1

sesuai

Dhani15

1

sesuai

Dhani16

1

sesuai

Dhani17

1

sesuai

Dhani18

1

sesuai

Dhani19

1

(72)

C-34 Dhani20

1

sesuai

Dhani21

1 sesuai

Dhani22

1

sesuai

Dhani23

1

Dhani24

1

Dhani25

(73)

C-35 Dhani26

1

sesuai

Dhani27

1 sesuai

Dhani28

1

sesuai

Dhani29

1

sesuai

Dhani30

1

(74)

C-36 Dhani31

1

sesuai

Dhani32

1

sesuai

Dhani33

1

sesuai

Dhani34

1

Dhani35

1

Dhani36

(75)

C-37 Dhani37

1

Dhani38

1

sesuai

Dhani39

1

sesuai

Dhani40

1

sesuai

Dhani41

1 sesuai

Dhani42

1

(76)

C-38 Dhani43

1

sesuai

Dhani44

1

sesuai

Dhani45

1

sesuai

Dhani46

1 sesuai

Dhani47

1

sesuai

Dhani48

1

(77)

C-39 Dhani49

1

sesuai

Dhani50

1 sesuai

Dhani51

1

sesuai

Dhani52

1 sesuai

Dhani53

1

sesuai

Dhani54

1

(78)

C-40 Dhani55

1

sesuai

Dhani56

1

sesuai

Dhani57

1

Dhani58

1

Dhani59

1

Dhani60

(79)

C-41 Dhani61

1

Dhani62

1

sesuai

Dhani63

1

sesuai

Dhani64

1

Dhani65

1

Dearn6

(80)

C-42

Dearn7 1

0 0 0 0

0 1 1 1 1

Tidak sesuai

Dearn8 1

0 0 0 0

1 0 0 0 0

sesuai

Dearn9 1

0 0 0 0

1 0 0 0 0

sesuai

Dearn10 1

(81)

C-43

Dearn11 1

0 0 0 0

1 0 0 0 0

sesuai

Dearn12 1

0 0 0 0

1 0 0 0 0

sesuai

Dearn13

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn14

1 0 0 0 0

1 1 0 0 1

(82)

C-44 Dearn15

1 sesuai

Dearn16

1

sesuai

Dearn17

1

Dearn18

1

Dearn19

1

sesuai

Dearn20

(83)

C-45 Dearn21

1

sesuai

Dearn22

1 sesuai

Dearn23

1

Dearn24

1

Dearn25

1

Dearn26

(84)

C-46 Dearn27

1

Dearn28

1

Dearn29

1

Dearn30

1

sesuai

Dearn31

1

sesuai

Dearn32

1

(85)

C-47 Dearn33

1

sesuai

Dearn34

1

Dearn35

1

Dearn36

1

Dearn37

1

sesuai

Dearn38

(86)

C-48 Dearn39

1

Dearn40

1

Dearn41

1

Dearn42

1

Dearn43

1

Dearn44

(87)

C-49 Dearn45

1

Dearn46

1

Dearn47

1

Dearn48

1

Dearn49

1 sesuai

Dearn50

(88)

C-50 Dearn51

1

sesuai

Dearn52

1 sesuai

Dearn53

1

sesuai

Dearn54

1 sesuai

Dearn55

1

sesuai

Dearn56

(89)

C-51 Dearn57

1

sesuai

Dearn58

1

sesuai

Dearn59

1

Dearn60

1

Dearn61

1

Dearn62

(90)

C-52 Dearn63

1

Dearn64

1

Dearn65

1

Olive6

0

sesuai

Olive7

(91)

C-53 Olive8

0 0 0 0 0

1 1 1 0 1

Tidak sesuai

Olive9

0 0 0 0 0

1 1 1 1 1

Tidak sesuai

Olive10

0 0 0 0 0

0 0 0 0 0

sesuai

Olive11

0 0 0 0 0

0 0 0 0 0

(92)

C-54 Olive12

0

sesuai

Olive13

0

sesuai

Olive14

0

sesuai

Olive15

0

sesuai

Olive16

0

(93)

C-55 Olive17

0

sesuai

Olive18

0

sesuai

Olive19

0

sesuai

Olive20

0

sesuai

Olive21

0

(94)

C-56 Olive22

0

sesuai

Olive23

0

sesuai

Olive24

0 sesuai

Olive25

0 sesuai

Olive26

0

(95)

C-57 Olive27

0 sesuai

Olive28

0

sesuai

Olive29

0

sesuai

Olive30

0

Olive31

(96)

C-58 Olive32

0 sesuai

Olive33

0

sesuai

Olive34

0

Olive35

0

Olive36

0

(97)

C-59 Olive37

0

Olive38

0

Olive39

0

Olive40

0

Olive41

(98)

C-60 Olive42

0

Olive43

0

Olive44

0

sesuai

Olive45

0

sesuai

Olive46

(99)

C-61 Olive47

0

sesuai

Olive48

0

sesuai

Olive49

0

Olive50

0

Olive51

(100)

C-62 Olive52

0 sesuai

Olive53

0

Olive54

0

Olive55

0

sesuai

Olive56

0

(101)

C-63 Olive57

0 sesuai

Olive58

0

sesuai

Olive59

0

sesuai

Olive60

0

Olive61

(102)

C-64 Olive62

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive63

0 0 0 0 0

0 0 1 1 1

tidak sesuai

Olive64

0 0 0 0 0

0 0 0 0 0

tidak sesuai

Olive65

0 0 0 0 0

1 1 0 0 1

(103)

1 Universitas Kristen Maranatha

BAB I

PENDAHULUAN

Pada bab ini akan dibahas mengenai latar belakang, identifikasi masalah, perumusan masalah, tujuan, pembatasan masalah, metodologi, dan sistematika penulisan.

1.1 Latar Belakang Masalah

Tanda tangan merupakan tulisan tangan, kadang-kadang diberi gaya tulisan tertentu dari nama seseorang atau tanda identifikasi lainnya yang ditulis pada dokumen sebagai sebuah bukti dari identitas dan kemauan. Seringnya terjadi pemalsuan tanda tangan dapat disebabkan oleh sistem verifikasi yang kurang baik. Sebagian besar verifikasi tanda tangan dilakukan dengan cara manual, yaitu dengan membandingkan secara langsung menggunakan mata manusia yang memiliki banyak kelemahan terutama jika melakukan cukup banyak verifikasi. Hal tersebut menyebabkan ketelitian dan ketepatan hasil yang diinginkan seringkali kurang memuaskan.

Telah banyak dikembangkan metode verifikasi tanda tangan, antara lain menggunakan metode pola busur terlokasi, fuzzy logic, dan lain-lain. Salah satu metode yang digunakan untuk proses verifikasi tanda tangan adalah metode

Artificial Neural Network (ANN). Dalam bahasa Indonesia, Artificial Neural

Network dikenal dengan Jaringan Syaraf Tiruan (JST). Jaringan Syaraf Tiruan

adalah jaringan dari sekelompok unit pemroses kecil yang dimodelkan berdasarkan jaringan saraf manusia. JST digunakan untuk memodelkan hubungan yang kompleks antara input dan output untuk menemukan pola-pola pada data.

Pada Tugas Akhir ini dirancang sistem verifikasi tanda tangan dengan metode Jaringan Syaraf Tiruan Heteroassociative Memory secara offline.

1.2 Identifikasi Masalah

(104)

2

Universitas Kristen Maranatha metode Jaringan Syaraf Tiruan Heteroassociative Memory menggunakan Visual

Basic 6.0.

1.3 Perumusan Masalah

Permasalahan yang akan dibahas dalam Tugas Akhir ini meliputi : 1. Bagaimana merancang sistem verifikasi tanda tangan dengan metode Jaringan Syaraf Tiruan Heteroassociative Memory menggunakan Visual

Basic 6.0?

2. Berapa persen tingkat keberhasilan proses verifikasi tanda tangan dengan metode Jaringan Syaraf Tiruan Heteroassociative Memory?

1.4 Tujuan

Tujuan yang ingin dicapai dari Tugas Akhir ini bagi mahasiswa adalah : 1. Merancang sistem verifikasi tanda tangan dengan menggunakan metode Jaringan Syaraf Tiruan Heteroassociative Memory.

2. Mengetahui tingkat keberhasilan proses verifikasi tanda tangan dengan metode Jaringan Syaraf Tiruan Heteroassociative Memory.

1.5 Pembatasan Masalah

1. Proses scan tanda tangan dilakukan dengan menggunakan sebuah scanner. 2. Citra tanda tangan yang menjadi masukan untuk Jaringan Syaraf Tiruan Heteroassociative Memory adalah 40 x 40 pixel.

3. Citra tanda tangan (baik referensi maupun uji) tidak diujikan dengan berbagai kemiringan dan ukuran.

1.6 Sistematika Penulisan

Penyusunan laporan tugas akhir terdiri dari lima bab sebagai berikut :

 BAB I. PENDAHULUAN

(105)

3

Universitas Kristen Maranatha  BAB II. LANDASAN TEORI

Pada bab ini akan dibahas teori-teori yang akan digunakan untuk merancang program verifikasi tanda tangan dengan metoda Artificial

Neural Network (ANN), antara lain pengertian tanda tangan, pengolahan

citra, pemotongan citra (image cropping), penskalaan citra (image

resizing), Jaringan Syaraf Heteroassociative Memory, dan Visual Basic

6.0.

 BAB III. PERANCANGAN DAN REALISASI

Pada bab ini dijelaskan mengenai diagram blok pembuatan database dari citra referensi, diagram blok pengujian citra uji pada verifikasi tanda tangan, dan cara kerja sistem untuk merancang program verifikasi tanda tangan dengan metoda Jaringan Syaraf Tiruan Heteroassociative Memory yang meliputi input citra dari scanner, pemotongan citra, penskalaan citra, ekstraksi ciri tanda tangan, penghitungan nilai bobot, dan pengujian JST

Heteroassociative Memory dengan citra uji.

 BAB IV. DATA PENGAMATAN DAN ANALISA

Pada bab ini berisi tentang data pengamatan hasil pengujian program, tabel

hasil pengujian nilai tanda tangan uji “Robert”, tabel hasil pengujian nilai

tanda tangan uji “Andreas”, tabel hasil pengujian nilai tanda tangan uji “Dhani”, tabel hasil pengujian nilai tanda tangan uji “Dearni”, tabel hasil pengujian nilai tanda tangan uji “Olive”, perhitungan tingkat keberhasilan metoda yang digunakan, dan analisa data hasil pengujian program.

 BAB V. KESIMPULAN DAN SARAN

(106)

70 Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

Bab ini merupakan bab penutup yang berisi kesimpulan dari hasil penelitian dan analisis dari Tugas Akhir ini serta saran bagi pihak yang terkait

berkenaan dengan pembuatan “Verifikasi Tanda Tangan dengan Metode Jaringan

Syaraf Tiruan Heteroassociative Memory”. 5.1 Kesimpulan

1. Pembuatan program verifikasi tanda tangan dengan metode Jaringan Syaraf Tiruan Heteroassociative Memory berhasil diimplementasikan dengan

Visual Basic 6.0.

2. Dari hasil pengujian program terhadap 5 orang, masing-masing 60 kali pengujian (30 kali pengujian tanda tangan asli dan 30 kali pengujian tanda tangan palsu) didapat persentase FAR dan FRR untuk masing-masing orang. Nilai paling besar untuk persentase FAR adalah 60 % untuk tanda tangan Dearni dan FRR sebesar 56,67 % untuk tanda tangan Dhani. 3. Faktor-faktor yang mempengaruhi kegagalan proses verifikasi (baik asli

maupun palsu) adalah perbedaan panjang tanda tangan, ketebalan tanda tangan, dan kesamaan kerapatan tanda tangan sehingga mempengaruhi perhitungan nilai input yang akan diolah dalam Jaringan Syaraf Tiruan

Heteroassociative Memory.

5.2 Saran

1. Program tanda tangan yang direalisasi dapat dikembangkan secara online. 2. Perlu dibandingkan Jaringan Syaraf Heteroassociative Memory dengan

metode lainnya agar dapat diketahui metode mana yang lebih baik untuk proses verifikasi tanda tangan.

(107)

Universitas Kristen Maranatha

DAFTAR PUSTAKA

1. Signature http://en.wikipedia.org/wiki/Signature 6 Maret 2012

2. Munir, Rinaldi. 2007. Pengolahan Citra Digital. Bandung : Indonesia 3. http://digilib.mdp.ac.id/files/disk1/1/---idhawatihe-47-1-pengolah-a.pdf

17 Maret 2012

4. Kristanto, Andri. 2004. Jaringan Syaraf Tiruan (Konsep Dasar, Algoritma, dan

Aplikasi). Yogyakarta : Gava Media

5. Ramadhan, Arief. 2004. Seri Penuntun Praktis : Microsoft Visual Basic. Jakarta : Elex Media

6. http://id.wikipedia.org/wiki/Visual_Basic 20 Februari 2012

7. How to read simple text files

http://www.vb6.us/tutorials/how-read-simple-text-files 17 Maret 2012

8. Visual Basic for Applications Reference http://msdn.microsoft.com/en-us/library/aa243392(v=vs.60).aspx 17 Maret 2012

Gambar

Gambar B.1. Tampilan Awal Program
Gambar B.3. Tampilan Cropping Citra dan Resize Citra
Gambar B.5. Tampilan Hasil Pengujian Citra Uji “Robert”
Gambar B.7. Tampilan Hasil Pengujian Citra Uji “Dhani”
+3

Referensi

Dokumen terkait

Sebagai tindak lanjut perjanjian tersebut, kemudian dibentuk tiga lembaga moneter internasional, yaitu Internasional Monetery Fund (IMF), 25 Internasional Bank for

Hasil penelitian berbeda dengan penelitian yang dilakukan di Jepang yang menunjukkan bahwa konsumsi karbohidrat berhubungan dengan peningkatan risiko diabetes pada

Tujuan dari penelitian ini adalah mengetahui: (1) Implementasi Sistem Akuntabilitas Kinerja Instansi Pemerintah (SAKIP) pada BKPLD Kabupaten Tasikmalaya (2)

Swasakti Utama Tasikmalaya yang didasarkan pada hasil dari analisis faktor internal dan analisis faktor eksternal juga analisis SWOT yang kemudian datanya digunakan

Dari berbagai macam permasalahan yang dialami oleh orang tua yang memiliki anak Autism Spectrum Disorder (ASD) dalam penyesuaian diri pada orang tua yang memiliki

10 Raja Willem I adalah Raja Belanda yang bernama asli Willem Oranje. Dia menjadi Raja Belanda pertama yang dinobatkan setelah Belanda merdeka dari Prancis... Oppiumpacht

Kategori data penelitian terdiri atas variabel dependen (kejadian anemia pada ibu hamil) dan variabel independen (usia, tingkat pendidikan, status gizi kurang energi

yang dibuat untuk memenuhi sebagian syarat memperoleh derajat sarjana S1 pada Jurusan Teknik Mesin Fakultas Teknik Universitas Muhammadiyah Surakarta, sejauh yang saya