Verifikasi Tanda Tangan Dengan Metode Jaringan Syaraf Tiruan Heteroassociative Memory.

(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 : [email protected]

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 Heteroassociative Memory


(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 : [email protected]

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 Neural Network


(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

5.1. Kesimpulan... 70 5.2. Saran... 70


(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

Text13.Text = CommonDialog1.filename Picture1.Picture = LoadPicture(Text13.Text) Picture4.Refresh


(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 For brs = yki To yka For klm = xki To xka


(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)

s(1, 1) = 1 s(1, 2) = 2 s(1, 3) = 4 s(1, 4) = 8 s(2, 1) = 16 s(2, 2) = 32 s(2, 3) = 64 s(2, 4) = 128


(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

out1(0, 1) = 1 out1(0, 2) = 1 out1(0, 3) = 0 out1(0, 4) = 1 out1(0, 5) = 1 out2(0, 1) = 1 out2(0, 2) = 1 out2(0, 3) = 1 out2(0, 4) = 1 out2(0, 5) = 1 out3(0, 1) = 1 out3(0, 2) = 1 out3(0, 3) = 0 out3(0, 4) = 0


(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

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


(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

Text7.Text = skalax Text8.Text = skalay Text9.Text = a Text10.Text = d Text11.Text = c Text12.Text = e


(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)

i = i + 1 Loop Close #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

thrmin(1, 3) = 9902 thrmin(1, 4) = 34790 thrmin(1, 5) = 46299 thrmin(2, 1) = 75200.1 thrmin(2, 2) = 69956.1 thrmin(2, 3) = 26163.9 thrmin(2, 4) = 48809.9


(25)

A-14 thrmin(2, 5) = 69956.1

thrmin(3, 1) = 34423 thrmin(3, 2) = 33307 thrmin(3, 3) = 12808 thrmin(3, 4) = 17753 thrmin(3, 5) = 33307 thrmin(4, 1) = 18624 thrmin(4, 2) = 12528 thrmin(4, 3) = 4079 thrmin(4, 4) = 7861 thrmin(4, 5) = 12528 thrmin(5, 1) = 1142 thrmin(5, 2) = 1071 thrmin(5, 3) = 448 thrmin(5, 4) = 643 thrmin(5, 5) = 1071 thrmax(1, 1) = 85061 thrmax(1, 2) = 81166.2 thrmax(1, 3) = 24798.2 thrmax(1, 4) = 60734.6 thrmax(1, 5) = 81166.2 thrmax(2, 1) = 155350.5 thrmax(2, 2) = 144453.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

For i = 1 To 100 For j = 1 To 5 bobot_1(i, j) = 0


(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

Next j yin1 = 0 yin2 = 0 yin3 = 0 yin4 = 0 yin5 = 0


(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

If thrmin(1, 1) <= yin1 And yin1 <= thrmax(1, 1) Then fvl1 = 1 Else fvl1 = 0 If thrmin(1, 2) <= yin2 And yin2 <= thrmax(1, 2) Then fvl2 = 1 Else fvl2 = 0 If thrmin(1, 3) <= yin3 And yin3 <= thrmax(1, 3) Then fvl3 = 0 Else fvl3 = 1 If thrmin(1, 4) <= yin4 And yin4 <= thrmax(1, 4) Then fvl4 = 1 Else fvl4 = 0 If thrmin(1, 5) <= yin5 And yin5 <= thrmax(1, 5) Then fvl5 = 1 Else fvl5 = 0


(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

List9.AddItem fvl1 List9.AddItem fvl2 List9.AddItem fvl3 List9.AddItem fvl4 List9.AddItem fvl5


(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

robert Nilai ke

Nilai

Nilai

ke Nilai Nilai ke Nilai Nilai ke Nilai

1 10

26 20.4 51 26.4 76 0

2 35.6

27 24.8 52 10 77 0

3 30.8

28 45.2 53 10 78 0

4 23.6

29 2.2 54 19.6 79 0

5 8.6

30 0 55 8 80 0

6 0

31 20 56 4.2 81 17.2

7 0

32 31 57 5.2 82 0

8 0

33 57 58 4 83 0

9 0

34 48.8 59 0.2 84 0

10 0

35 16.4 60 0 85 2.2

11 2.4

36 29.6 61 15 86 0

12 23.2

37 56 62 8.6 87 0

13 20.6

38 42.6 63 0 88 0

14 25.6

39 2.2 64 0 89 0

15 44.4

40 0 65 0 90 0

16 25.2

41 18.8 66 0 91 0

17 0

42 34.4 67 0 92 0

18 0

43 22.6 68 0 93 0

19 0

44 30.6 69 0 94 0

20 0

45 35.2 70 0 95 0


(40)

C-2

21 0

46 16.4 71 35.6 96 0

22 0

47 24.8 72 5 97 0

23 29.8

48 15.8 73 5 98 0

24 33.2

49 0.8 74 2.6 99 0

25 18

50 0 75 2.8 100 0 Andreas

Nilai ke Nilai Nilai

ke Nilai Nilai ke Nilai Nilai ke Nilai

1 0

26 17.8 51 15 76 17.8

2 0

27 13.8 52 20.6 77 30.2

3 0

28 7.4 53 28.8 78 20.6

4 0

29 0.2 54 40.8 79 0.6

5 0

30 0 55 37 80 0

6 1

31 5.2 56 58.8 81 0

7 11.2

32 1.6 57 43.8 82 9

8 45.2

33 0.6 58 30.4 83 10.4

9 0

34 15.8 59 1.8 84 9

10 0

35 15 60 0 85 15.2

11 5.4

36 15 61 15 86 15.8

12 3

37 29.4 62 17.6 87 5

13 13.4

38 28.4 63 17 88 4.4

14 29

39 1.6 64 47.4 89 0

15 29

40 0 65 54 90 0

16 41.8

41 5.4 66 51.2 91 0


(41)

C-3 17 18.2

42 16.6 67 48.4 92 0

18 23.4

43 35.6 68 19.6 93 0

19 1.4

44 41.2 69 0.8 94 0

20 0

45 49.4 70 0 95 0

21 19.4

46 31.2 71 0 96 0

22 25

47 29.6 72 5.6 97 0

23 23.6

48 41.8 73 24.8 98 0

24 15

49 1.4 74 30 99 0

25 15.6

50 0 75 14.6 100 0 Dhani

Nilai ke Nilai Nilai ke Nilai Nilai ke Nilai Nilai ke Nilai

1 0

26 22.6 51 17.4 76 16.8

2 0

27 22.8 52 5 77 29.6

3 18.8

28 25.8 53 0 78 31

4 0

29 0.6 54 6.2 79 1.2

5 0

30 0 55 50.4 80 0

6 15.6

31 0 56 46.2 81 0

7 0.4

32 0 57 37.6 82 0

8 10.4

33 0.4 58 19.4 83 0

9 1.4

34 38.6 59 3.8 84 16.8

10 0

35 17.8 60 0 85 0

11 0

36 49.8 61 3 86 2.6


(42)

C-4

12 0

37 19.4 62 10 87 1.2

13 0

38 25 63 0.4 88 3.6

14 10

39 0.4 64 26.8 89 1.8

15 0

40 0 65 50.4 90 0

16 20.6

41 5.6 66 59.4 91 0

17 37

42 11 67 23.2 92 0

18 34.2

43 11.4 68 1.2 93 0

19 1.6

44 39.2 69 3 94 0

20 0

45 39 70 0 95 0

21 0

46 32.6 71 0 96 0

22 0

47 21.4 72 0 97 0

23 0

48 17.6 73 4.4 98 0

24 19.4

49 2.4 74 22 99 0

25 20.6

50 0 75 47 100 0 dearni

Nilai ke Nilai Nilai ke Nilai Nilai ke Nilai Nilai ke Nilai

1 21.6

26 2.4 51 0 76 0

2 2.8

27 2.6 52 0 77 0

3 3.8

28 4 53 0 78 0

4 11.6

29 0 54 0 79 0

5 0

30 0 55 0 80 0

6 16.8

31 0 56 0 81 0


(43)

C-5

7 0.6

32 0 57 0 82 0

8 7.6

33 0 58 0 83 0

9 0

34 0 59 0 84 0

10 0

35 0 60 0 85 0

11 38.2

36 0 61 20 86 0

12 7.8

37 0 62 0 87 0

13 26.6

38 0 63 0 88 0

14 30

39 0 64 0 89 0

15 30

40 0 65 0 90 0

16 13.8

41 0 66 1.2 91 0

17 8

42 0 67 0 92 0

18 28.8

43 0 68 0 93 0

19 0.6

44 0 69 1.2 94 0

20 0

45 0 70 0 95 0

21 29.8

46 0 71 38 96 0

22 12

47 0 72 0 97 0

23 0.6

48 0 73 0 98 0

24 1.2

49 0 74 0 99 0

25 1.4

50 0 75 0 100 0


(44)

C-6 olive

Nilai ke Nilai Nilai ke Nilai Nilai ke Nilai

Nilai

ke Nilai

1 0

26 0.2 51 0 76 0.4

2 0

27 23.8 52 0 77 10.6

3 0

28 0 53 10 78 0

4 0

29 0 54 0 79 0.4

5 0

30 0 55 1.2 80 0

6 0.6

31 0 56 0 81 0

7 2.4

32 0 57 0 82 0

8 0

33 1.4 58 10 83 0

9 0

34 0 59 0.6 84 0

10 0

35 1.2 60 0 85 0

11 0

36 0 61 15 86 0

12 0

37 1.2 62 0 87 0

13 0

38 0 63 0 88 0

14 10

39 0 64 0 89 0

15 15

40 0 65 0 90 0

16 1

41 0 66 5 91 0

17 10.6

42 4.6 67 0.6 92 0

18 0

43 0 68 19.4 93 0

19 0

44 5.4 69 1.4 94 0

20 0

45 0.6 70 0 95 0

21 0

46 0 71 0 96 0


(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 1 0 1 1

1 1 0 1 1

sesuai

Robet18

1 1 0 1 1

1 1 1 0 1

tidak sesuai

Robet19

1 1 0 1 1

1 1 0 1 1

sesuai

Robet20

1 1 0 1 1

1 1 0 1 1

sesuai

Robet21

1 1 0 1 1

1 1 0 1 1


(49)

C-11 Robet22

1 1 0 1 1

1 1 1 1 1

tidak sesuai

Robet23

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet24

1 1 0 1 1

1 1 0 1 1

sesuai

robet25

1 1 0 1 1

1 1 0 1 1

sesuai

robet26

1 1 0 1 1

1 1 1 1 1

tidak sesuai


(50)

C-12 robet27

1 1 0 1 1

1 1 0 0 1

tidak sesuai

robet28

1 1 0 1 1

1 1 0 1 1

sesuai

robet29

1 1 0 1 1

1 1 0 1 1

sesuai

robet30

1 1 0 1 1

1 1 0 1 1

sesuai

robet31

1 1 0 1 1

0 0 1 1 1

tidak sesuai


(51)

C-13 robet32

1 1 0 1 1

1 1 1 1 1

tidak sesuai

robet33

1 1 0 1 1

1 1 0 1 1

sesuai

robet34

1 1 0 1 1

1 1 0 1 1

sesuai

robet35

1 1 0 1 1

1 1 0 1 1

sesuai

robet36

1 1 0 1 1

1 1 0 0 1

tidak sesuai


(52)

C-14 robet37

1 1 0 1 1

0 0 0 0 0

tidak sesuai

robet38

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet39

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet40

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet41

1 1 0 1 1

1 1 0 1 1


(53)

C-15 robet42

1 1 0 1 1

1 1 0 0 1

tidak sesuai

robet43

1 1 0 1 1

1 1 1 1 1

tidak sesuai

robet44

1 1 0 1 1

1 1 0 0 1

tidak sesuai

robet45

1 1 0 1 1

1 1 0 1 1

sesuai

robet46

1 1 0 1 1

0 0 1 0 0

tidak sesuai


(54)

C-16 robet47

1 1 0 1 1

1 1 1 1 1

tidak sesuai

robet48

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet49

1 1 0 1 1

0 0 0 0 0

tidak sesuai

robet50

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet51

1 1 0 1 1

1 1 0 1 1


(55)

C-17 robet52

1 1 0 1 1

1 1 1 1 1

tidak sesuai

robet53

1 1 0 1 1

1 1 1 1 1

tidak sesuai

robet54

1 1 0 1 1

1 1 0 1 1

sesuai

robet55

1 1 0 1 1

1 1 0 1 1

sesuai

robet56

1 1 0 1 1

0 0 0 0 0

tidak sesuai


(56)

C-18 robet57

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet58

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet59

1 1 0 1 1

1 0 1 0 0

tidak sesuai

robet60

1 1 0 1 1

0 0 1 0 0

tidak sesuai

robet61

1 1 0 1 1

1 1 1 1 1

tidak sesuai


(57)

C-19 robet62

1 1 0 1 1

0 0 1 1 0

tidak sesuai

robet63

1 1 0 1 1

0 0 1 1 0

tidak sesuai

robet64

1 1 0 1 1

1 1 1 1 1

tidak sesuai

robet65

1 1 0 1 1

0 0 1 0 0

tidak sesuai

Andre6

1 1 1 1 1

1 1 1 1 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 1 1 1 1

1 1 1 1 1

sesuai

andre16

1 1 1 1 1

1 1 1 1 1

sesuai

andre17

1 1 1 1 1

1 1 1 1 1

sesuai

andre18

1 1 1 1 1

1 1 1 1 1

sesuai

andre19

1 1 1 1 1

1 1 1 1 1

sesuai

andre20

1 1 1 1 1

1 1 1 1 1


(61)

C-23 andre21

1 1 1 1 1

1 1 1 1 1

sesuai

andre22

1 1 1 1 1

1 1 1 1 1

sesuai

andre23

1 1 1 1 1

1 1 1 1 1

sesuai

andre24

1 1 1 1 1

1 1 1 1 1

sesuai

andre25

1 1 1 1 1

1 1 1 1 1

sesuai

andre26

1 1 1 1 1

1 1 1 1 1


(62)

C-24 andre27

1 1 1 1 1

1 1 1 1 1

sesuai

andre28

1 1 1 1 1

1 1 1 1 1

sesuai

andre29

1 1 1 1 1

1 1 1 1 1

sesuai

andre30

1 1 1 1 1

1 1 1 1 1

sesuai

andre31

1 1 1 1 1

1 1 1 1 1


(63)

C-25 andre32

1 1 1 1 1

0 0 1 0 0

tidak sesuai

andre33

1 1 1 1 1

1 1 1 1 1

sesuai

andre34

1 1 1 1 1

1 1 1 1 1

sesuai

andre35

1 1 1 1 1

1 1 1 1 1

sesuai

andre36

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre37

1 1 1 1 1

0 0 0 0 0

tidak sesuai


(64)

C-26 andre38

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre39

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre40

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre41

1 1 1 1 1

1 1 1 1 1

sesuai

andre42

1 1 1 1 1

1 1 1 1 1

sesuai

andre43

1 1 1 1 1

1 1 0 1 1

tidak sesuai


(65)

C-27 andre44

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre45

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre46

1 1 1 1 1

1 1 1 1 1

sesuai

andre47

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre48

1 1 1 1 1

1 1 1 1 1

sesuai

andre49

1 1 1 1 1

1 1 1 0 1

tidak sesuai


(66)

C-28 andre50

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre51

1 1 1 1 1

0 1 1 0 1

tidak sesuai

andre52

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre53

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre54

1 1 1 1 1

1 1 1 1 1


(67)

C-29 andre55

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre56

1 1 1 1 1

1 1 1 1 1

sesuai

andre57

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre58

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre59

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre60

1 1 1 1 1

1 1 1 1 1


(68)

C-30 andre61

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre62

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre63

1 1 1 1 1

0 0 0 0 0

tidak sesuai

andre64

1 1 1 1 1

1 1 1 1 1

sesuai

andre65

1 1 1 1 1

1 1 1 0 1

tidak sesuai

Dhani6

1 1 0 0 1

1 1 0 0 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 1 0 0 1

1 1 0 0 1

sesuai

Dhani15

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani16

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani17

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani18

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani19

1 1 0 0 1

1 1 0 0 1


(72)

C-34 Dhani20

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani21

1 1 0 0 1

1 1 1 0 1

tidak sesuai

Dhani22

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani23

1 1 0 0 1

0 0 0 0 0

tidak sesuai

Dhani24

1 1 0 0 1

0 1 1 1 1

tidak sesuai

Dhani25

1 1 0 0 1

1 1 0 1 1

tidak sesuai


(73)

C-35 Dhani26

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani27

1 1 0 0 1

0 1 0 1 1

tidak sesuai

Dhani28

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani29

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani30

1 1 0 0 1

1 1 0 0 1


(74)

C-36 Dhani31

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani32

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani33

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani34

1 1 0 0 1

1 1 1 0 1

tidak sesuai

Dhani35

1 1 0 0 1

1 1 1 1 1

tidak sesuai

Dhani36

1 1 0 0 1

0 0 1 1 0

tidak sesuai


(75)

C-37 Dhani37

1 1 0 0 1

1 1 1 0 1

tidak sesuai

Dhani38

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani39

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani40

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani41

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani42

1 1 0 0 1

1 1 0 0 1


(76)

C-38 Dhani43

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani44

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani45

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani46

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani47

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani48

1 1 0 0 1

1 1 0 0 1


(77)

C-39 Dhani49

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani50

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani51

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani52

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani53

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani54

1 1 0 0 1

1 1 0 0 1


(78)

C-40 Dhani55

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani56

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani57

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani58

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani59

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani60

1 1 0 0 1

1 1 1 0 1

tidak sesuai


(79)

C-41 Dhani61

1 1 0 0 1

1 1 0 1 1

tidak sesuai

Dhani62

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani63

1 1 0 0 1

1 1 0 0 1

sesuai

Dhani64

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dhani65

1 1 0 0 1

0 0 1 1 0

tidak sesuai

Dearn6

1 0 0 0 0

0 1 0 0 1

Tidak sesuai


(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

0 0 0 0


(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

tidak sesuai


(82)

C-44 Dearn15

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn16

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn17

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn18

1 0 0 0 0

0 1 0 1 1

tidak sesuai

Dearn19

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn20

1 0 0 0 0

1 0 0 1 0

tidak sesuai


(83)

C-45 Dearn21

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn22

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn23

1 0 0 0 0

1 1 0 1 1

tidak sesuai

Dearn24

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn25

1 0 0 0 0

1 1 0 0 1

tidak sesuai

Dearn26

1 0 0 0 0

0 1 0 1 1

tidak sesuai


(84)

C-46 Dearn27

1 0 0 0 0

1 1 1 0 1

tidak sesuai

Dearn28

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn29

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn30

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn31

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn32

1 0 0 0 0

1 0 0 0 0


(85)

C-47 Dearn33

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn34

1 0 0 0 0

0 1 1 0 1

tidak sesuai

Dearn35

1 0 0 0 0

1 1 0 1 1

tidak sesuai

Dearn36

1 0 0 0 0

0 1 0 0 1

tidak sesuai

Dearn37

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn38

1 0 0 0 0

0 1 1 1 1

tidak sesuai


(86)

C-48 Dearn39 1 0 0 0 0 0 0 0 0 0 tidak sesuai Dearn40 1 0 0 0 0 1 0 0 0 1 tidak sesuai Dearn41 1 0 0 0 0 1 1 0 1 1 tidak sesuai Dearn42 1 0 0 0 0 0 1 1 1 1 tidak sesuai Dearn43 1 0 0 0 0 0 1 1 1 1 tidak sesuai Dearn44 1 0 0 0 0 0 1 1 1 1 tidak sesuai


(87)

C-49 Dearn45 1 0 0 0 0 0 1 0 1 1 tidak sesuai Dearn46 1 0 0 0 0 0 1 1 1 1 tidak sesuai Dearn47 1 0 0 0 0 0 1 0 1 1 tidak sesuai Dearn48 1 0 0 0 0 0 1 1 1 1 tidak sesuai Dearn49 1 0 0 0 0 1 0 1 0 0 tidak sesuai Dearn50 1 0 0 0 0 0 1 1 1 1 tidak sesuai


(88)

C-50 Dearn51

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn52

1 0 0 0 0

0 1 1 0 1

tidak sesuai

Dearn53

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn54

1 0 0 0 0

1 1 1 0 1

tidak sesuai

Dearn55

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn56

1 0 0 0 0

0 1 1 0 1

tidak sesuai


(89)

C-51 Dearn57

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn58

1 0 0 0 0

1 0 0 0 0

sesuai

Dearn59

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn60

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn61

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn62

1 0 0 0 0

0 1 1 1 1

tidak sesuai


(90)

C-52 Dearn63

1 0 0 0 0

0 1 0 1 1

tidak sesuai

Dearn64

1 0 0 0 0

0 1 1 1 1

tidak sesuai

Dearn65

1 0 0 0 0

0 1 0 1 1

tidak sesuai

Olive6

0 0 0 0 0

0 0 0 0 0

sesuai

Olive7

0 0 0 0 0

1 1 1 0 1

Tidak sesuai


(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 0 0 0 0

0 0 0 0 0

sesuai

Olive13

0 0 0 0 0

0 0 0 0 0

sesuai

Olive14

0 0 0 0 0

0 0 0 0 0

sesuai

Olive15

0 0 0 0 0

0 0 0 0 0

sesuai

Olive16

0 0 0 0 0

0 0 0 0 0


(93)

C-55 Olive17

0 0 0 0 0

0 0 0 0 0

sesuai

Olive18

0 0 0 0 0

0 0 0 0 0

sesuai

Olive19

0 0 0 0 0

0 0 0 0 0

sesuai

Olive20

0 0 0 0 0

0 0 0 0 0

sesuai

Olive21

0 0 0 0 0

0 0 0 0 0


(94)

C-56 Olive22

0 0 0 0 0

0 0 0 0 0

sesuai

Olive23

0 0 0 0 0

0 0 0 0 0

sesuai

Olive24

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive25

0 0 0 0 0

0 0 1 0 1

tidak sesuai

Olive26

0 0 0 0 0

0 0 0 0 0


(95)

C-57 Olive27

0 0 0 0 0

0 1 1 1 1

tidak sesuai

Olive28

0 0 0 0 0

0 0 0 0 0

sesuai

Olive29

0 0 0 0 0

0 0 0 0 0

sesuai

Olive30

0 0 0 0 0

1 1 0 0 1

tidak sesuai

Olive31

0 0 0 0 0

1 1 1 1 1

tidak sesuai


(96)

C-58 Olive32

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive33

0 0 0 0 0

0 0 0 0 0

sesuai

Olive34

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive35

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive36

0 0 0 0 0

0 0 0 0 0


(97)

C-59 Olive37

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive38

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive39

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive40

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive41

0 0 0 0 0

1 1 1 1 1

tidak sesuai


(98)

C-60 Olive42

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive43

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive44

0 0 0 0 0

0 0 0 0 0

sesuai

Olive45

0 0 0 0 0

0 0 0 0 0

sesuai

Olive46

0 0 0 0 0

1 1 1 1 1

tidak sesuai


(99)

C-61 Olive47

0 0 0 0 0

0 0 0 0 0

sesuai

Olive48

0 0 0 0 0

0 0 0 0 0

sesuai

Olive49

0 0 0 0 0

1 1 0 1 1

tidak sesuai

Olive50

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive51

0 0 0 0 0

1 1 0 1 1

tidak sesuai


(100)

C-62 Olive52

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive53

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive54

0 0 0 0 0

1 1 1 1 1

tidak sesuai

Olive55

0 0 0 0 0

0 0 0 0 0

sesuai

Olive56

0 0 0 0 0

0 0 0 0 0


(1)

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 tidak sesuai


(2)

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

Berdasarkan latar belakang di atas, masalah utama yang akan diangkat pada Tugas Akhir ini adalah merancang sistem verifikasi tanda tangan dengan


(3)

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

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


(4)

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

Pada bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang perlu dilakukan untuk perbaikan di masa mendatang.


(5)

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.

3. Perlu dilakukan pengujian terhadap citra uji berdasarkan sudut kemiringan dan ukuran tanda tangan yang berbeda-beda.


(6)

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

9. http://www.webopedia.com/TERM/F/false_acceptance.html 2 April 2012 10. http://www.webopedia.com/TERM/F/false_rejection.html 2 April 2012 11. http://repo.eepis-its.edu/1445/1/[E-D303-3] 5 April 2012