• Tidak ada hasil yang ditemukan

Implementasi jaringan syaraf tiruan feedforward dan feature detection untuk verifikasi tanda tangan

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi jaringan syaraf tiruan feedforward dan feature detection untuk verifikasi tanda tangan"

Copied!
59
0
0

Teks penuh

(1)

1

1.1 Latar Belakang Masalah

Tanda tangan adalah hasil proses menulis seseorang yang bersifat khusus sebagai substansi simbolik. Banyak dari kita mungkin tidak membayangkan bahwa orang lain tidak akan menduplikasi tanda tangan kita karena sulit untuk diduplikasi atau tidak ada gunanya menduplikasi tanda tangan tersebut. Tetapi pada saat-saat tertentu kita mulai mewaspadai tanda tangan yang kita buat atau yang dibuat oleh orang lain, dengan tujuan agar kita dapat mengetahui keaslian dari tanda tangan, baik tanda tangan kita maupun milik orang lain. Hal tersebut mulai menjadi persoalan bagi kita bila suatu transaksi menjadi tidak syah karena terjadi pemalsuan tanda tangan. Dan tentunya dapat merugikan pihak-pihak yang bersangkutan, oleh karena itu diperlukan sebuah sistem yang dapat melakukan verifikasi keaslian tanda tangan.

Jaringan syaraf tiruan adalah sebuah model tiruan dari jaringan syaraf yang ada pada mahluk hidup seperti manusia, seperti halnya manusia yang bisa belajar bila di berikan pelatihan, maka jaringan syaraf tiruan ini dapat melakukan operasi dengan input tertentu dan memberikan output tertentu tergantung dari pelatihan yang diberikan padanya, dengan memanfaatkan jaringan syaraf tiruan maka tanda tangan dapat dilakukan analisis yang menghasilkan persentase kecocokan tanda tangan tersebut. Sedangkan feature detection adalah suatu proses yang menghasilkan tepi-tepi dari objek-objek citra, tepi-tepi ini akan menandai bagian detail citra.

(2)

backpropagation, untuk membandingkan tingkat keberhasilannya, agar diperoleh metode terbaik untuk identifikasi tanda tangan. Digunakannya algoritma learning vector quantization karena pada penelitian yang dilakukan oleh Wuryandari (2012) yang berjudul perbandingan metode jaringan syaraf tiruan backpropagation dan learning vector quantization pada Pengenalan Wajah menyatakan bahwa jaringan syaraf tiruan learning vector quantization lebih baik dari segi akurasi dan waktu dibandingkan denganbackrpopagation.

Pada penelitian Hidayanto A., dkk. (2008) juga menyarankan untuk dilakukan proses prapengolahan yang lebih kompleks pada citra tanda tangan sehingga diperoleh ciri citra tanda tangan yang lebih detail. Maka dari itu ditambahkan feature detection untuk mendapatkan ciri citra tanda tangan yang lebih detail. Metode feature detection yang digunakan adalah edge detection sobel, karena pada penelitian yang sudah dilakukan oleh Sugiantoro (2013) yang berjudul Perbandingan Metode Robert, Sobel, Prewitt dan Canny untuk Deteksi Tepi Objek pada Aplikasi Pengenalan Bentuk Bangun Datar Berbasis Citra Digital menyatakan bahwa metode Sobel memiliki tingkat akurasi yang paling tinggi.

Penelitian ini akan mengimplementasikan jaringan syaraf tiruan feedforward menggunakan algoritma learning vector quantization. Dengan ditambahkan metode edge detection sobel, diharapkan algoritma learning vector quantization dapat melakukan verifikasi tanda tangan, agar dapat memperoleh persentase dan waktu dari data pengujian.

1.2 Rumusan Masalah

(3)

1.3 Maksud dan Tujuan

Berdasarkan permasalahan pada latar belakang maka maksud dari penulisan skripsi ini adalah implementasi jaringan syaraf tiruan feedforward dan feature detectionuntuk verifikasi tanda tangan.

Adapun tujuan yang ingin dicapai adalah untuk memperoleh persentase kecocokan dan waktu dari data pengujian yang menggunakan jaringan syaraf tiruanfeedforwarddanfeature detection.

1.4 Batasan Masalah

Dalam pembahasan dan permasalahan yang terjadi, diperlukan beberapa pembatasan masalah atau ruang lingkup kajian sehingga penyajian lebih terarah dan terkait satu sama lain.

Adapun batasan dari permasalahan ini adalah sebagai berikut : 1. Citra tanda tangan diambil dari hasilscan, dengan format jpg. 2. Data citra masukan akan diubah menjadi 32x32pixel.

3. Informasi yang ditampilkan pada aplikasi berupa persentase kecocokan, waktu pengujian, waktu pengolahan, dan nama target.

4. Kombinasi Parameter untuk pelatihan yang digunakan diambil dari hasil penelitian yang telah dilakukan oleh Wuryandari (2012).

5. Pemodelan sistem menggunakan pemrograman berorientasi objek dengan UML (unified modeling language).

6. Bahasa pemrograman yang digunakan adalah C#.

7. Metode feature detection yang digunakan adalah metode edge detection sobel.

8. Algoritma jaringan syaraf tiruan feedforward yang digunakan adalah algoritmalearning vector quantization.

1.5 Metodologi Penelitian

(4)

dan akurat. Adapun tahap yang akan dilalui adalah metode pengumpulan data dan metode pembangunan perangkat lunak.

1.5.1 Metode Pengumpulan Data

Metode pengumpulan data yang digunakan dalam penelitian ini adalah Studi literatur. Tahap ini digunakan untuk mencari informasi yang berhubungan degan permasalahan yang ada mengenai metode jaringan syaraf tiruan feedforward dan feature detection pada buku-buku, jurnal, dan penelitian yang dapat membantu menyelesaikan penelitian ini.

1.5.2 Metode Pembangunan Perangkat Lunak

Dalam pembangunan sistem ini, digunakan metode pengembangan perangkat lunak dengan menggunakan metode Agile sebagai berikut :

Gambar 1.1 Metode Agile, XP Process (Pressman,2005)

Tahapan metode pengembangan perangkat lunak dengan menggunakan metode Agile sebagai berikut :

a. Planning

(5)

b. Design

Prototype dibangun dengan membuat rancanganinterface serta mengatur class-class di konsepobject oriented.

c. Coding

Melakukan konversi rancangan sistem kedalam kode-kode bahasa pemrograman C#.

d. Testing

Melakukan pengujian pada aplikasi yang telah selesai dibuat, untuk memastikan semua proses sudah dapat berjalan dan tampilan sesuai dengandesign.

1.6 Sistematika Penulisan

Sistematika penulisan tugas akhir ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB 1 PENDAHULUAN

Menguraikan tentang latar belakang, rumusan masalahan, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.

BAB 2 LANDASAN TEORI

Menjelaskan tentang teori-teori mengenai tanda tangan, kecerdasan buatan, jaringan syaraf tiruan dan biologi, pengolahan citra, OOP (Object Oriented Programming), UML (Unified Modelling Language), visual studio dan bahasa pemrograman C# (C Sharp).

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Menjelaskan tentang analisis masalah, analisis sistem, analisis metode/algoritma, analisis kebutuhan non fungsional, analisis kebutuhan fungsional, perancangan antarmuka.

BAB 4 IMPLEMENTASI DAN PENGUJIAN

(6)

BAB 5 KESIMPULAN DAN SARAN

(7)

7

2.1 Definisi Tanda Tangan

Tanda tangan adalah hasil proses menulis seseorang yang bersifat khusus sebagai substansi simbolik. Tanda tangan merupakan salah satu bentuk yang digunakan untuk identifikasi seseorang.

Contoh-contoh tanda tangan setiap orang umumnya identik namun tidak sama. Artinya tanda tangan seseorang sering berubah-ubah setiap waktu. Perubahan ini menyangkut posisi, ukuran maupun faktor tekanan tanda tangan. Pada kenyataannya, perubahan-perubahan tersebut dipengaruhi oleh waktu, umur, kebiasaan dan keadaan mental tertentu (Abbas, 1994).

Gambar 2.1 Contoh Citra Tanda Tangan

2.2 Kecerdasan Buatan

(8)

dari semua bidang ini pada akhirnya akan bermanfaat bagi kemajuan dalam upaya menciptakan suatu kecerdasan buatan (Suyanto, 2014).

Pengertian lain dari kecerdasan buatan adalah bagian ilmu komputer yang membuat agar mesin komputer dapat melakukan pekerjaan seperti dan sebaik yang dilakukan manusia. Pada awal diciptakannya, komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan perkembangan jaman, maka peran komputer semakin mendominasi kehidupan manusia. Komputer tidak lagi hanya digunakan sebagai alat hitung, lebih dari itu, komputer diharapkan untuk dapat diberdayakan untuk mengerjakan segala sesuatu yang bisa dikerjakan oleh manusia.

Manusia bisa menjadi pandai dalam menyelesaikan segala permasalahan di dunia ini karena manusia mempunyai pengetahuan dan pengalaman yang diperoleh dari belajar. Semakin banyak bekal pengetahuan yang dimiliki oleh seseorang tentu saja diharapkan akan lebih mampu dalam menyelesaikan permasalahan. Namu bekal pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran, mengambil kesimpulan berdasarkan pengetahuan dan pengalaman yang mereka miliki. Tanpa memiliki kemampuan untuk menalar dengan baik, manusia dengan segudang pengalaman dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik. Demikian juga dengan kemampuan menalar yang sangat baik, namun tanpa bekal pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa menyelesaikan masalah dengan baik. Agar komputer bisa bertindak seperti dan sebaik manusia, maka komputer juga harus diberi bekal pengetahuan dan mempunyai kemampuan untuk menalar. Untuk itu AI akan mencoba untuk memberikan beberapa metoda untuk membekali komputer dengan kedua komponen tersebut agar komputer bisa menjadi mesin pintar.

2.2.1 Keuntungan Kecerdasan Buatan

Keuntungan kecerdasan buatan antara lain :

(9)

pelupa. Kecerdasan buatan tidak akan berubah sepanjang sistem komputer dan program tidak mengubahnya.

2. Kecerdasan buatan lebih mudah diduplikasi dan disebarkan. Mentransfer pengetahuan manusia dari satu orang ke orang lain butuh proses dan waktu lama. Disamping itu suatu keahlian tidak akan pernah bisa diduplikasi secara lengkap. Sedangkan jika pengetahuan terletak pada suatu sistem komputer, pengetahuan tersebuat dapat ditransfer atau disalin dengan mudah dan cepat dari satu komputer ke komputer lain

3. Kecerdasan buatan lebih murah dibanding dengan kecerdasan alami. Menyediakan layanan komputer akan lebih mudah dan lebih murah dibanding dengan harus mendatangkan seseorang untuk mengerjakan sejumlah pekerjaan dalam jangka waktu yang sangat lama.

4. Kecerdasan buatan bersifat konsisten. Hal ini disebabkan karena kecerdasan busatan adalah bagian dari teknologi komputer. Sedangkan kecerdasan alami senantiasa berubah-ubah.

5. Kecerdasan buatan dapat didokumentasikan. Keputusan yang dibuat komputer dapat didokumentasikan dengan mudah dengan melacak setiap aktivitas dari sistem tersebut. Kecerdasan alami sangat sulit untuk direproduksi.

6. Kecerdasan buatan dapat mengerjakan pekerjaan lebih cepat dibanding dengan kecerdasan alami

7. Kecerdasan buatan dapat mengerjakan pekerjaan lebih baik dibanding dengan kecerdasan alami.

2.2.2 Penerapan Kecerdasan Buatan

(10)

1. Pengenalan Pola

Pengenalan pola dilakukan untuk mengenali suatu objek tertentu, misalnya untuk keperluan absensi menggunakan sidik jari (finger recognition), pengenalan suara (voice recognition), pengenalan tanda tangan (signature recognition), atau pengenalan wajah (face recognition). Selain itu juga dapat digunakan sebagai mesin pencarian dengan gambar atau suara sebagai kata kuncinya dengan menggunakan pengenalan gambar (image recognition) dan pengenalan suara (speech recognition).

2. Sistem Pakar

Sistem pakar digunakan sebagai sarana untuk menyimpan pengetahuan para pakar, sehingga komputer dapat menyelesaikan permasalahan dengan meniru keahlian yang dimiliki oleh pakar. Misalnya analisis penyakit, kerusakan komputer, penasihat keuangan dan lain sebagainya.

3. Game Playing

Gamemerupakan fasilitas menarik yang terdapat dalam komputer. Game dalam komputer seperti catur, kartu dan lain sebagainya menggunakan kecerdasan buatan agar dapat bermain selayaknya manusia, memiliki strategi langkah selanjutnya, pengetahuan peraturan permainan dan dapat mengetahui pemenangnya.

4. Robotika dan Sistem Sensor

Salah satu contoh sistem sensor adalah pada mesin cuci yaitu menggunakan sensor optik, mengeluarkan cahaya ke air dan mengukur bagaimana cahaya tersebut sampai ke ujung lainnya. Makin kotor, maka sinar yang sampai makin redup. Sistem juga mampu menentukan jenis kotoran tersebut daki/minyak. Sistem juga bisa menentukan putaran yang tepat secara otomatis berdasarkan jenis dan banyaknya kotoran serta jumlah yang akan dicuci.

2.3 Jaringan Syaraf Tiruan dan Biologi

(11)

otak manusia tersebut. Istilah buatan disini digunakan karena jaringan syaraf ini diimplementasikan dengan menggunakan program komputer yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran. Jaringan syaraf biologi merupakan jaringan syaraf yang terdapat pada manusia, sedangkan jaringan syaraf tiruan merupakan jaringan syaraf yang dibuat dan dijalankan pada komputer (Muis, 2006).

2.3.1 Jaringan Syaraf Biologi (JSB)

Otak manusia memiliki struktur yang sangat kompleks dan memiliki kemampuan yang luar biasa. Otak terdiri dari neuron-neuron dan penghubung yang disebut sinapsis. Neuron bekerja berdasarkan impuls atau sinyal yang diberikan pada neuron. Neuron meneruskannya pada neuron lain. Diperkirakan manusia memiliki 10 neuron dan 6. 10 sinapsis. Dengan jumlah yang begitu

banyak, otak mampu mengenali pola, melakukan perhitungan, dan mengontrol organ-organ dengan kecepatan yang lebih tinggi dibandingkan komputer digital.

Gambar 2.2 Neuron

Komponen utama neuron dapat dikelompokan menjadi 3 bagian, yaitu : 1. Dendrit = bertugas menerima informasi = jalur masukan bagi soma. 2. Badan sel (soma) = tempat pengolahan informasi.

(12)

2.3.2 Jaringan Syaraf Tiruan (JST)

Jaringan syaraf tiruan adalah paradigma pemrosesan suatu informasi yang terinspirasi oleh sistem sel syaraf biologi, sama seperti otak yang memproses suatu informasi. Elemen mendasar dari paradigma tersebut adalah struktur yang baru dari sistem pemrosesan informasi. Jaringan syaraf tiruan, seperti manusia, belajar dari suatu contoh. Jaringan syaraf tiruan dibentuk untuk memecahkan suatu masalah tertentu seperti pengenalan pola atau klasifikasi. Jaringan syaraf tiruan berkembang secara pesat pada beberapa tahun terakhir. Jaringan syaraf tiruan dikembangkan sebelum adanya komputer konvensial yang canggih dan terus berkembang walaupun pernah mengalami masa vakum selama beberapa tahun.

Jaringan syaraf tiruan tercipta sebagai suatu generalisasi model matematis dari pemahaman manusia (human cognition) yang didasarkan atas asumsi sebagai berikut :

1. Pemrosesan informasi terjadi pada elemen sederhana yang disebut neuron. 2. Sinyal mengalir diantara sel saraf atau neuron melalui suatu sambungan

penghubung.

3. Setiap sambungan penghubung memiliki bobot yang bersesuaian. Bobot ini digunakan untuk menggandakan atau mengalikan sinyal yang dikirim melaluinya.

4. Setiap sel syaraf akan menerapkan fungsi aktivasi terhadap sinyal hasil penjumlahan berbobot yang masuk kepadanya untuk menentukan sinyal keluarannya.

Tabel 2.1 Analogi JST dan JSB

JST JSB

Node/masukan Badan sel (soma)

Masukan Dendrit

Keluaran Akson

(13)

Gambar 2.3 Model Struktur JST

Jaringan syaraf tiruan dapat belajar dari pengalaman, melakukan generalisasi atas contoh-contoh yang diperolehnya dan mengabstraksi karakteristik esensial masukan bahkan untuk data yang tidak relevan. Algoritma untuk JST beroperasi secara langsung dengan angka sehingga data yang tidak numerik harus diubah menjadi data numerik. JST tidak diprogram untuk menghasilkan keluaran tertentu. Semua keluaran atau kesimpulan yang ditarik oleh jaringan didasarkan pada pengalamannya selama mengikuti proses pembelajaran. Pada dasarnya pembelajaran kedalam JST dimasukkan pola-pola masukan (dan keluaran) lalu jaringan akan diajari untuk memberikan jawaban yang bisa diterima. Pada dasarnya karakteristik JST ditentukan oleh :

1. Pola hubungan antar neuron (disebut arsitektur jaringan)

2. Metode penentuan bobot-bobot sambungan (disebut dengan pelatihan atau proses belajar jaringan)

3. Fungsi aktivasi

2.3.3 Arsitektur Jaringan Syaraf Tiruan

(14)

Faktor terpenting dalam menentukan kelakuan suatu neuron adalah fungsi aktivasi dan pola bobotnya. Umumnya neuron-neuron yang terletak pada lapisan yang sama akan memiliki keadaan yang sama sehingga pada setiap lapisan yang sama neuron akan memiliki fungsi aktivasi yang sama. Bila neuron-neuron pada suatu lapisan (misal lapisan tersembunyi) akan dihubungkan dengan neuron-neuron lapisan lain (misal lapisan keluaran) maka setiap neuron pada lapisan tersebut (lapisan tersembunyi juga harus dihubungkan dengan setiap neuron pada lapisan lainnya (lapisan keluaran). Terdapat 3 macam arsitektur jaringan syaraf tiruan, yaitu :

1. Jaringan Dengan Lapisan Tunggal (Single Layer Net)

Jaringan ini hanya memiliki 1 lapisan dengan bobot-bobot terhubung. Jaringan ini hanya menerima masukan kemudian secara langsung akan mengolahnya menjadi keluaran tanpa harus melalui lapisan tersembunyi. Seberapa besar hubungan antara 2 neuron ditentukan oleh bobot yang bersesuaian. Semua unit masukan akan dihubungkan dengan setiap unit keluaran, seperti terlihat pada Gambar 2.4.

(15)

2. Jaringan Dengan Banyak Lapisan (Multilayer Net)

Jaringan ini memiliki 1 atau lebih lapisan yang terletak diantara lapisan masukan dan lapisan keluaran. Umumnya ada lapisan bobot-bobot yang terletak antara 2 lapisan yang bersebelahan. Jaringan dengan banyak jaringan lapisan dapat dilihat pada Gambar 2.5.

Gambar 2.5 Jaringan Dengan Banyak Lapisan

3. Jaringan Dengan Lapisan Kompetitif (Competitive Layer Net)

(16)

Gambar 2.6 Jaringan Dengan Lapisan Kompetitif

Berdasarkan dari arsitektur (pola koneksi) jaringan syaraf tiruan dapat dibagi kedalam dua kategori :

2.3.3.1 Strukturfeedforward

Sebuah jaringan yang sederhana mempunyai struktur feedforward dimana signal bergerak dari input kemudian melewati lapisan tersembunyi dan akhirnya mencapai unit output (memiliki struktur perilaku yang stabil).

Tipe jaringan feedforward mempunyai sel syaraf yang tersusun dari beberapa lapisan. Lapisan input bukan merupakan sel syaraf. Lapisan ini hanya memberi pelayanan dengan mengenalkan suatu nilai dari suatu variabel. Lapisan tersembunyi dan lapian output sel syaraf terhubung satu sama lain dengan lapisan sebelumnya. Kemungkinan yang timbul adalah adanya hubungan dengan beberapa unit dari lapisan sebelumnya atau terhubung semuanya (lebih baik).

Metode-metode yang termasuk kedalam strukturfeedforwardantara lain :

a. Hebb Rule

(17)

Gambar 2.7 Jaringan Hebb Rule b. Perceptron

Jaringan jenis ini hanya terdiri dari layer masukan dan layer keluaran saja. Data masukan yang masuk melalui vektor masukan akan langsung diproses dan kemudian ditentukan target keluaran dari hasil pengolahan.

Gambar 2.8 Jaringan Perceptron c. Backpropagation

(18)

Gambar 2.9 JaringanBackpropagation d. Learning Vector Quantization(LVQ)

LVQ merupakan jaringan syaraf tiruan dengan tipe arsitektur jaringan lapis tunggal umpan-maju (Single Layer Feedforward) yang terdiri atas unit masukan dan unit keluaran. Suatu lapisan kompetitif akan secara otomatis belajar untuk mengklasifikasikan vektor-vektor masukan. Kelas-kelas yang didapatkan sebagai hasil dari lapisan kompetitif ini hanya tergantung pada jarak antara vektor-vektor masukan. Jika 2 vektor masukan mendekati sama, maka lapisan kompetitif akan meletakan kedua vektor masukan tersebut kedalam kelas yang sama.

(19)

Pada Gambar 2.10 memperlihatkan bahwa yang bertindak sebagai dendrit atau data masukan adalah x1-x6, yang bertindak sebagai sinapsis atau bobot adalah W, sedangkan soma atau badan sel dari jaringan ini adalah perhitungan | − | . Dan yang bertindak sebagai akson atau data keluaran adalah Y. berikut ini algoritma pembelajaran metode LVQ : Langkah 0 : Inisialisasi vektor referensi dan learning rate (α).

Langkah 1 : selama kondisi berhenti bernilai salah kerjakan langkah 2 dan 3. (kondisi berhenti jika perulangan mencapai maksimal perulangan dan perubahan rasio lebih kecil dari minimal eror).

Langkah 2 : untuk masing-masing pelatihan vektor masukan, kerjakan : a. Temukan J sehingga‖ − ‖ bernilai minimum.

= ∑ ( − )² (1)

b. Perbaikan Wj dengan : i. Jika T = Cj maka

( ) = + [ − ( )] (2)

ii. Jika T≠ Cj maka

( ) = − [ − ( )] (3)

Langkah 3 : kurangilearning rate

= ∗ (4)

Langkah 4 : tes kondisi berhenti. Keterangan rumus :

T : Target

J : Jumlah selisih data dan bobot C : Kelas selisih bobot terkecil

W : Bobot

α : Rasio pembelajaran

(20)

2.3.3.2 Strukturrecurrent(feedback)

Jika suatu jaringan berulang (mempunyai koneksi kembali dari output ke input) akan menimbulkan ketidakstabilan dan akan menghasilkan dinamika yang sangat kompleks. Jaringan yang berulang sangat menarik untuk diteliti dalam jaringan syaraf tiruan, namun sejauh ini struktur feedforward sangat berguna untuk memecahkan masalah.

Metode-metode yang termasuk kedalam strukturfeedbackantara lain :

a. Jaringan Kohonen

Jaringan kohonen pertama kali diperkenalkan oleh Prof. Teuvo Kohonen pada tahun 1982. Pada jaringan ini, suatu lapisan yang berisi neuron-neuron akan menyusun dirinya sendiri berdasarkan masukan nilai tertentu dalam suatu kelompok yang dikenal dengan istilah pengelompokkan (cluster). Selama proses penyusunan diri, cluster yang memiliki vektor bobot paling cocok dengan pola masukan (memiliki jarak yang paling dekat) akan terpilih sebagai pemenang beserta neuron-neuron tetangganya akan memperbaiki bobotnya.

Gambar 2.11 Jaringan Kohonen b. Jaringan Hopfield

(21)

kemudian menjadi input bagi semua neuron yang lain. Proses pengiriman dan penerimaan sinyal antar neuron ini secara feedbacktertutup dan terus menerus sampai dicapai kondisi stabil.

Gambar 2.12 Jaringan Hopfield

2.4 Pengolahan Citra

Pengolahan citra merupakan suatu proses pengolahan data dan analisis citra yang banyak melibatkan persepsi visual. Proses ini mempunyai ciri data masukan dan informasi keluaran berbentuk citra. Istilah pengolahan citra digital umum didefinisikan sebagai pemrosesan citra dua dimensi dengan komputer. Dalam definisi yang lebih luas, pengolahan citra digital juga mencakup semua data dua dimensi. Citra digital adalah barisan bilangan nyata maupun kompleks yang diwakili oleh bit-bit tertentu (Ahmad, 2005).

(22)

pengolahan citra mentransformasikan citra menjadi citra lain yang mempunyai kualitas lebih baik.

Beberapa jenis operasi pengolahan citra adalah sebagai berikut : 1. Modifikasi Kecermelangan (Brightness Modification)

Mengubah nilai keabuan/warna dari gelap menuju terang atau sebaliknya emngubah citra yang terlalu cemerlang/terang menajdi gelap.

2. Peningkatan Kontras (Contrast Enchancement)

Dengan peningkatan kontras maka titik yang cenderung gelap menjadi lebih gelap dan yang cenderung terang menjadi lebih terang.

3. Negasi

Operasi untuk mendapatkan citra negatif (negative image) 4. Pengabuan (Grayscale)

Grayscale merupakan proses untuk mengubah warna gambar menjadi kabu-abuan. Proses grayscale dilakukan dengan mengubah nilai RGB setiap pixel gambar menjadi 1 nilai yang sama. Sehingga setiap pixel memiliki nilai yang sama untuk ketiga unsur warnanya. Salah satu prosentase yang digunakan dalam fungsiimage processing toolboxadalah 29,9% dari warna merah (Red), 58,7% dari warna hijau (Green), dan 11,4% dari warna biru (Blue).

Rumus untuk menghitunggrayscale:

= 0.3 ∗ + 0.59 ∗ + 0.11 ∗ (5)

5. Thresholding

Operasi ini digunakan untuk mengubah citra menjadi memiliki 2 buah nilai yaitu 255 dan 0. Tentukan ambang batas nilai RGB. Dalam hal ini diambil batas 128. Baca setiap pixel gambar, jika nilai rata-rata RGBnya lebih besar dari 128, maka matriks pada kordinat yang sama dengan pixel yang sedang dibaca diisi dengan nilai 255, dan jika nilainya lebih kecil atau sama dengan 128, matriksnya diisi dengan 0.

6. Ekstraksi Ciri

(23)

batas 128. Baca setiap pixel gambar, jika nilai rata-rata RGBnya lebih besar dari 128, maka matriks pada kordinat yang sama dengan pixel yang sedang dibaca diisi dengan nilai 1, dan jika nilainya lebih kecil atau sama dengan 128, matriksnya diisi dengan 0.

7. Pencerminan (Flippng)

Pencerminan merupakan proses menggambar citra ke bentuk kebalikannya seperti ketika sedang bercermin.

8. Rotasi (Rotating)

Rotasi yaitu proses memutar koordinat citra sesuai derajat yang ditentukannya.

9. Pemotongan (Cropping)

Memotong saru bagian dari citra sesuai kebutuhan. 10. Pengskalaan (Scaling)

Mengubah ukuran citra menjadi lebih besar atau lebih kecil. 11. Deteksi Tepi (Edge Detection)

Deteksi tepi pada suatu citra adalah suatu proses yang menghasilkan tepi-tepi dari objek-objek citra.

2.4.1 Deteksi Tepi

Tepi adalah perubahan nilai intensitas derajat keabuan yang mendadak (besar) dalam jarak yang sangat singkat. Perbedaan intensitas inilah yang memperlihatkan rincian pada gambar. Tepi dapat diorientasikan dengan suatu arah, dan arah ini berbeda-beda, tergantung pada perubahan intensitas. Deteksi tepi merupakan langkah pertama untuk melingkupi informasi didalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra. Suatu titik (x,y) dikatakan sebgai tepi (edge) dari suatu citra bila titik tersebut mempunyai perbedaan yang tinggi dengan tetangganya.

Deteksi tepi (Edge Detection) pada suatu citra adalah suatu proses yang menghasilkan tepi-tepi dari objek citra, tujuannya adalah :

(24)

b. Untuk memeperbaiki detail dari citra yang kabur, yang terjadi karenaerror atau adanya efek dari proses akuisisi citra.

c. Serta untuk mengubah citra 2D menjadi bentuk kurva

Gambar 2.13 Deteksi Tepi

Macam-macam metode untuk deteksi tepi antara lain :

1. Metode Robert

(25)

dari sepasang kernel 2x2 konvolusi. Satu kernel yang lain hanya diputar oleh 90̊.

Gambar 2.14 Matriks Metode Robert 2. Metode Prewitt

Metode ini adalah pengembangan metode robert dengan menggunakan filter HPF yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi laplacian yang dikenal sebagai fungsi untuk membangkitkan HPF. Sehingga tepi-tepi yang dihasilkan lebih banyak dari metode robert. Filter HPF menciptakan sebuah gambar dimana tepi (perubahan tajam nilai tingkat keabuan) yang akan ditampilkan. Hanya dilter dengan ukuran 3x3 yang dapat digunakan dengan filter ini. Filter ini menggunakan dua template 3x3 untuk menghitung nilai prewitt.

Gambar 2.15 Matriks Deteksi Prewitt

3. Deteksi Tepi Sobel

(26)

banyak dibanding metode sebelumnya. Operator sobel terdiri dari sepasang kernel 3x3 konvolusi seperti yang ditunjukan pada Gambar 2.16. satu kernel yang lain hanya diputar oleh 90̊. Deteksi tepi sobel adalah salah satu deteksi tepi yang menghindari adanya perhitungan gradien dititik interpolasi. Operator ini menggunakan kernel ukuran 3x3 piksel untuk perhitungan gradien sehingga perkiraan gradien berada tepat ditengah jendela.

Gambar 2.16 Matriks Deteksi Sobel

Kernel ini dirancang untuk merespon secara maksimal untuk tepi berjalan secara vertikal dan horizontal relatif terhadap grid pixel, satu kernel untuk masing-masing dua orientasi tegak lurus. Kernel dapat diterapkan secara terpisah dengan citra masukan, untuk menghasilkan pengukuran yang terpisah dari komponen gradien disetiap orientasi (menyebut Gx dan Gy). Perhitungan pada deteksi tepi ini, semua pixel dihitung kecuali pixel yang berada pada tepi gambar. Hal ini dilakukan karena didalam perhitungan nilai tepi sebuah pixel, harus menggunakan nilai pixel dari pixel-pixel disekitar pixel yang sedang dihitung, sedangkan pixel pada tepi gambar tidak memiliki beberapa pixel disekitarnya yang dibutuhkan dalam perhitungan.

Langkah perhitungan sobel adalah sebagai berikut :

(27)

x diwakili oleh variabel wi dan pada sumbu y diwakili oleh variabel hw. Pada setiap perulangan dilakukan perhitungan :

C = (p( j + wi,i + hw).R*0.3 + p( j + wi,i + hw).G*0.59 + p( j + wi,I + hw).B*0.11 ) (6)

+ = ( + 1, + 1) ∗ (7)

+ = ( + 1, + 1) ∗ (8)

b. Jika ² + ² lebih besar dari 255, maka nilai RGB pixel pada titik yang sedang dihitung diubah menjadi 255, sedangkan jika hasilnya lebih kecil atau sama dengan dari 255 maka nilai RGB pixel yang sedang dihitung sesuai nilai hasil akhir xbaru dan ybaru.

c. Langkah a. dan b. diulang terhadap semua pixel kecuali pixel tepi gambar.

Gambar 2.17 Keluaran Hasil Metode Robert, Sobel , Prewitt

2.5 OOP (Object Oriented Programming)

Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang berisi data dan operasi yang diberlakukan terhadapnya. Metodologi berorientasi objek merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan objek secara sistematis. Metode berorientasi objek didasarkan pada penerapan prinsip-prinsip pengelolaan kompleksitas. Metode berorientasi objek meliputi rangkaian aktivitas analisis berorientasi objek, perancangan berorientasi objek, pemrograman berorientasi objek, dan pengujian berorientasi objek (Nugroho, 2005)

(28)

mentransformasi hasil dari satu tahap pengembangan ke tahap berikutnya, misalnya pada metode pendekatan terstruktur, jenis aplikasi yang dikembangkan saat ini berbeda dengan masa lalu. Aplikasi yang dikembangkan saat ini sangat beragam (aplikasi bisnis, real-time, utility, dan sebagainya) dengan platformyang berbeda-beda, sehingga menimbulkan tuntutan kebutuhan metodologi pengembangan yang dapat mengakomodasi ke semua jenis aplikasi tersebut.

Keuntungan menggunakan metodologi berorientasi objek adalah sebagai berikut :

a. Meningkatkan produktivitas

Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnya yang melibatkan objek tersebut (reusable).

b. Kecepatan pengembangan

Karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan berkurangnya kesalahan pada saat pengkodean.

c. Kemudahan pemeliharaan

Karena dengan model objek, pola-pola yang cenderung tetap dan stabil dapat dipisahkan dan pola-pola yang mungkin sering diubah-ubah.

d. Adanya konsistensi

Karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan maupun pengkodean.

e. Meningkatkan kualitas perangkat lunak

(29)

2.5.1 Konsep Dasar Berorientasi Objek

Berikut adalah konsep dasar Permrograman Berorientasi Objek : a. Objek (Object)

Objek adalah abstraksi dan sesuatu yang mewakili dunia nyata seperti benda, manusia, satuan organisasi, tempat, kejadian, struktur,status, atau hal-hal lain yang bersifat abstrak. Objek merupakan suatu entitas yang mampu menyimpan informasi(status) dan mempunyai operasi yang dapat diterapkan atau dapat berpengaruh pada status objeknya.

b. Kelas (class)

Kelas adalah kumpulan objek-objek dengan karakteristik yang sama. Kelas merupakan definisi statik dan himpunan objek yang sama yang mungkin lahir atau diciptakan dalam kelas tersebut .

c. Pembungkusan (Encapsulation)

Pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai objek untuk menyembunyikan implementasi dan objek sehingga objek lain tidak mengetahui cara kerjanya.

d. Pewarisan (Inheritance) dan Generalisasi/Spesialisasi

Mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh definisi dan objek lain sebagai bagian dirinya .

e. Metode

Operasi atau metode pada sebuah kelas hampir sama dengan fungsi atau prosedur pada metodologi struktural .

f. Polimorfisme

Kemampuan suatu objek untuk digunakan dibanyak tujuan yang berbeda dengan nama yang sama sehingga menghemat baris program.

2.6 UML (Unified Modeling Language)

(30)

berkembang selama bertahun-tahun. Sebuah keuntungan penting dari UML adalah konsistensi dan bagian dari konsistensi tersebut adalah penerapan model umum elemen-elemen di diagram yang berbeda. UML yang digunakkan adalah UML 2.3 yang terdiri dari 13 macam diagram yang dikelompokan pada 3 kategori (Widodo, 2011), yaitu :

A. Structure Diagram

Yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang dimodelkan.

Diagram-diagram yang termasuk kedalam tipe ini adalah sebagai berikut :

1. Class Diagram

Diagram kelas menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut attribut dan metode atau operasi.

2. Object Diagram

Diagram objek menggambarkan struktur sistem dari segi penamaan objek dan jalannya objek dalam sistem.

3. Component Diagram

Diagram komponen dibuat untuk menunjukan organisasi dan ketergantungan diantara kumpulan komponen dalam sebuah sistem.

4. Composite Structure Diagram

Composite structure diagram baru mulai ada pada UML versi 2.0. Diagram ini dapat digunakan untuk menggambarkan struktur dari bagian-bagian yang saling terhubung maupun mendeskripsikan struktur pada saat berjalan (runtime).

5. Package Diagram

(31)

6. Deployment Diagram

Deployment menunjukan konfigurasi komponen dalam proses eksekusi aplikasi.

B. Behavior Diagram

Yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem.

Diagram-diagram yang termasuk kedalam tipe ini adalah sebagai berikut :

1. Use Case Diagram

Use case diagram merupakan pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat.

2. Activity Diagram

Activity diagram menggambarkan rangkaian aliran dari aktivitas, digunakan untuk mendeskripsikan aktifitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas lainnya sepertiuse caseatau interaksi. 3. State Machine Diagram

State machine diagram digunakan untuk menggambarkan perubahan status atau transisi status dari sebuah mesin atau sistem atau objek.

C. Interactions Diagram

Yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi antar subsistem pada suatu sistem.

Diagram-diagram yang termasuk kedalam tipe ini adalah sebagai berikut : 1. Sequence Diagram

Sequence diagram menggambarkan perilaku pada sebuah use case scenario. Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara objek juga interaksi antara objek, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem.

2. Communication Diagram

(32)

informasi yang diperoleh dari diagram kelas, diagram sekuen, dan diagram use case untuk mendeskripsikan gabungan antara struktur statis dan tingkah laku dinamis dari suatu sistem.

3. Timing Diagram

Timing diagram merupakan diagram yang fokus pada penggambaran terkait batasan waktu.

4. Interaction overview diagram

Interaction overview diagram mirip dengan diagram aktivitas yang berfungsi untuk menggambarkan sekumpulan urutan aktivitas, diagram ini adalah bentuk aktivitas diagram yang setiap titik merepresentasikan diagram interaksi.

2.7 Visual Studio

Microsoft visual studio merupakan sebuah perangkat lunak (suite) yang dapat digunakan untuk melakukan pengembangan aplikasi, baik itu aplikasi bisnis, aplikasi personal, atau komponen aplikasinya, dalam bentuk console, aplikasi wondows, atau aplikasi web. Visual studio mencakup compiler, SDK, Intergrated Development Environment (IDE) dan dokumentasinya (umumnya berupa MSDN Library), compileryang dimasukkan ke dalam paket visual studio antara lain Visual C++, Visual C#, Visual Basic, Visual Basic .NET, Visual InterDev, Visual J++, Visual FoxPro, dan Visual CourceSafe.

Microsoft visual studio dapat digunakan untuk mengembangkan aplikasi native code (dalam bentuk bahasa mesin yang berjalan di atas wondows) atau managed code (dalam bentuk Microsoft Intermediete Language diatas .NET Framework). Selain itu visual studio juga dapat digunakan untuk mengembangkan aplikasi Silverlight, aplikasi Windows Mobile (yang berjalan diatas .NET Compact Framework).

2.8 Bahasa Pemrograman C# (C Sharp)

(33)

teknologi .Net sebagai bahasa baru, C# tidak berevolusi dari bahasa C# versi bukan teknologi .Net. dengan demikian C# dapat memaksimalkan kemampuannya tanpa khawatir dengan masalah kompatibilitas dengan versi-versi sebelumnya. Keharusan sebuah perangkat lunak untuk tetap dapat kompatibel dengan versi-versi sebelumnya sebagaimana yang terjadi pada Visual Basic (VB) maupun C++ biasanya menghambat optimalitas kemampuan dari perangkat lunak tersebut (Hartanto, 2008).

Sejak diluncurkan pada tahun 2000, C# dengan cepat merebut hati progammer C++ bahkan VB. Dengan tata cara penulisan yang mirip C++ dan interface mirip VB 6.0 menurut wikipedia, sebuah ensiklopedia gratis di internet pengguna C# .Net pada saat ini sudah melebihi pengguna VB.Net. sementara itu jumlah pengguna bahasa pemrograman lain masih berada dibawah jumlah pengguna VB .Net. masih menurut wikipedia, jumlah buku C# yang terjual pun berada dikisaran 2 hingga 3 kali lebih banyak dari jumlah buku VB yang terjual.

(34)
(35)

81

4.1 Implementasi Sistem

Implementasi sistem menjelaskan pengimplementasian dari sistem yang telah dibuat. Implementasi yang dijelaskan berupa implementasi perangkat keras, implementasi perangkat lunak, implementasiclassdan implementasi antarmuka.

4.1.1 Implementasi Perangkat Keras

Implementasi perangkat keras menjelaskan perangkat keras yang digunakan untuk mengimplementasikan sistem yang telah dibuat. Berikut ini merupakan perangkat keras yang digunakan dalam implementasi sistem ini :

1. Processor : Intel Core i5 @ 2.40 GHz

2. Memory : 4GB

Implementasi perangkat lunak menjelaskan perangkat lunak yang digunakan dalam implementai sistem ini. Perangkat lunak yang digunakan adalah sistem operasi windows 7.

4.1.3 ImplementasiClass

Implementasi class merupakan implementasi dari analisis kelas yang ada pada class diagram. Deskripsi implementasi class pada sistem yang dibangun dapat dilihat pada tabel 4.1.

Tabel 4.1 Implementasi Class

No Nama Class Nama File

(36)

4.1.4 Implementasi Antarmuka

Implementasi antarmuka menjelaskan dan menggambarkan proses dari setiap antarmuka yang ada dalam sistem ini.

1. Pengolahan Citra

Pengolahan citra merupakan proses untuk menambahkan file gambar dan melakukan proses pengolahan citra. Tampilan awal pengolahan citra dapat dilihat pada Gambar 4.1. Kemudian pada tampilan data yang telah diinputkan dan diproses dengan pengolahan citra dapat dilihat pada Gambar 4.2.

(37)

Gambar 4.2 Tampilan Hasil Pengolahan Citra

2. Pelatihan

Pelatihan merupakan proses untuk melakukan pelatihan terhadap data-data yang sudah diinputkan melalui proses pengolahan citra. Tampilan awal pelatihan terlihat pada Gambar 4.3. Untuk melakukan proses pelatihan terlebih dahulu isi parameter yang digunakan kemudian klik tombol latih maka tampilan hasil seperti pada Gambar 4.4.

(38)

Gambar 4.4 Tampilan Hasil Pelatihan

3. Pengujian

Pengujian merupakan proses untuk menguji gambar tanda tangan yang telah melalui proses pelatihan. Tampilan awal pengujian dilihat pada Gambar 4.5. Kemudian memasukan data yang akan diuji terlihat pada Gambar 4.6. Kemudian menekan tombol uji dan hasilnya terlihat pada Gambar 4.7.

(39)

Gambar 4.6 Tampilan Input File Pengujian

(40)

4.2 Pengujian Sistem

Pengujian sistem ini terdiri dari 2 jenis pengujian, yaitu pengujian black boxdan pengujian algoritma.

4.2.1 PengujianBlack Box

Pengujianblack boxdigunkaan untuk menguji fungsional dari sistem yang dibuat.

4.2.1.1 Rencana Pengujian

Berikut ini merupakan rencana pengujian black box yang akan dijalankan pada sistem ini.

Tabel 4.2 Rencana Pengujian

Komponen yang di uji Macam-macam uji Jenis pengujian Pengolahan Citra Proses pengolahan citra Black box

Proses simpan

Pelatihan

Proses pelatihan

Black box Proses simpan ke .txt

Proses ambil data

Pengujian Proses pengujian Black box

4.2.1.2 Pengujian

(41)

1. Menggunakan Data Yang Benar

Pada tabel 4.3 adalah hasil pengujian dengan menggunakan data uji yang benar.

Tabel 4.3 Hasil Pengujian Menggunakan Data Yang Benar

(42)

2. Menggunakan Data Yang Salah

Pada Tabel 4.4 adalah hasil pengujian menggunakan data uji yang salah.

Tabel 4.4 Hasil Pengujian Menggunakan Data Yang Salah

No Kasus/Uji Skenario Uji Hasil Yang Diharapkan

Pengujian Algoritma merupakan pengujian terhadap hasil verifikasi tanda tangan dengan menggunakan algoritmalearning vector quantization.

4.2.2.1 Rencana Pengujian

(43)

diambil dari hasil penelitian Wuryandari (2012). Tabel 4.6 merupakan data tanda tangan yang akan melaui proses pelatihan. Tabel 4.7 merupakan data tanda tangan yang tidak melalui proses pelatihan.

Tabel 4.5 Kombinasi Parameter Pelatihan

Maksimal Perulangan

Rasio Pembelajaran

Error Minimum

Pengurangan Rasio

10 0,1 0,1 0,1

Tabel 4.6 Data Tanda Tangan Pelatihan

No Nama Gambar Tanda Tangan No Nama Gambar Tanda Tangan

1 Faisal 6 Segi

2 Izzy 7 Sidik

3 Kiki 8 Tajir

4 Rivan 9 Tyo

(44)

Tabel 4.7 Data Tanda Tangan Yang Diuji

No Nama Gambar Tanda

Tangan No Nama Gambar Tanda Tangan

1 Faisal 6 Segi

2 Izzy 7 Sidik

3 Kiki 8 Tajir

4 Rivan 9 Tyo

5 Ryan 10 Ucup

4.2.2.2 Pengujian

(45)

Tabel 4.9 Hasil Pengujian Data Tanda Tangan

No Nama Waktu

Pengolahan

Waktu Pengujian

Waktu Total (detik)

Persentase Kecocokan

(%)

Kesimpulan

1 Faisal 0,0109242 0,0065485 0,0174727 83 % Cocok

2 Izzy 0,0278325 0.0090435 0,036876 83 % Cocok

3 Kiki 0,0137563 0,0066563 0,0204126 83 % Cocok

4 Rivan 0,010529 0,0064608 0,0169898 86 % Cocok

5 Ryan 0,0104503 0,0066277 0,017078 82 % Cocok

6 Segi 0,0146006 0,0065284 0,021129 82 % Cocok

7 Sidik 0,0237977 0,00646 0,0302577 85 % Cocok

8 Tajir 0,0143115 0,0065913 0,0209028 82 % Cocok

9 Tyo 0,0134868 0,0071234 0,0206102 83 % Cocok

10 Ucup 0,0161935 0,006679 0,0228725 81 % Cocok

Seluruh

Data =

0,02246013

4.2.2.3 Kesimpulan Pengujian

Dari hasil pengujian yang telah dilakukan dapat diambil kesimpulan yaitu rata-rata tingkat persentase kecocokan tanda tangan adalah sebesar 83% dengan

(46)
(47)

93

5.1 Kesimpulan

Setelah dilakukan pengujian data citra tanda tangan terhadap data hasil pelatihan maka dapat diambil kesimpulan bahwa rata-rata persentase kecocokan tanda tangan adalah sebesar 83% dan rata-rata waktu total adalah 0,02246013 detik.

5.2 Saran

(48)
(49)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

RYAN HAMZAH FADHILAH

10110474

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(50)

v

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Rumusan Masalah ... 2

1.3 Maksud dan Tujuan ... 2

1.4 Batasan Masalah ... 3

1.5 Metodologi Penelitian ... 3

1.5.1 Metode Pengumpulan Data ... 4

1.5.2 Metode Pembangunan Perangkat Lunak ... 4

1.6 Sistematika Penulisan ... 5

BAB 2 LANDASAN TEORI ... 7

2.1 Definisi Tanda Tangan ... 7

2.2 Kecerdasan Buatan ... 7

2.2.1 Keuntungan Kecerdasan Buatan ... 8

2.2.2 Penerapan Kecerdasan Buatan ... 9

2.3 Jaringan Syaraf Tiruan dan Biologi ... 10

2.3.1 Jaringan Syaraf Biologi ... 11

2.3.2 Jaringan Syaraf Tiruan ... 12

2.3.3 Arsitektur Jaringan Syaraf Tiruan ... 13

2.3.3.1 Struktur Feedforward ... 16

2.3.3.2 Struktur Reccurent (feedback) ... 20

(51)

vi

2.4.1 Deteksi Tepi ... 23

2.5 OOP (Object Oriented Programming) ... 27

2.5.1 Konsep Dasar Beroientasi Objek ... .29

2.6 UML (Unified Modeling Language) ... 29

2.7 Visual Studio ... 32

2.8 Bahasa Pemrograman C# ( C Sharp) ... 32

BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 35

3.1 Analisis Masalah ... 35

3.2 Analisis Sistem ... 36

3.3 Analisis Metode/Algoritma ... 39

3.3.1 Grayscale ... 40

3.3.2 Edge Detection Sobel ... 43

3.3.3 Threshold ... 47

3.3.4 Ekstraksi Ciri ... 49

3.3.5 Pelatihan Learning Vector Quantization ... 51

3.3.6 Pengujian Learning Vector Quantization ... 59

3.4 Analisis Kebutuhan Non Fungsional ... 62

3.4.1 Kebutuhan Perangkat Keras ... 62

3.4.2 Kebutuhan Perangkat Lunak ... 63

3.4.3 Kebutuhan User ... 63

3.5 Analisis Kebutuhan Fungsional ... 63

3.5.1 Use Case Diagram ... 64

3.5.2 Skenario Diagram ... 64

3.5.3 Activity Diagram ... 67

3.5.4 Sequence Diagram ... 70

3.5.5 Class Diagram ... 72

3.6 Perancangan Antar Muka ... 72

3.6.1 Perancangan Form Menu ... 72

3.6.2 Perancangan Form ... 73

3.6.2.1 Rancangan Form Pengolahan Citra ... 73

(52)

vii

3.6.2.3 Rancangan Form Pengujian ... 74

3.6.3 Perancangan Pesan ... 74

3.6.4 Jaringan Semantik ... 79

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 81

4.1 Implementasi Sistem ... 81

4.1.1 Implementasi Perangkat Keras ... 81

4.1.2 Implementasi Perangkat Lunak ... 81

4.1.3 Implementasi Class ... 81

4.1.4 Implementasi Antar Muka ... 81

4.2 Pengujian Sistem ... 86

4.2.1 Pengujian Black Box ... 86

4.2.1.1 Rencana Pengujian ... 86

4.2.1.2 Pengujian ... 86

4.2.2 Pengujian Algoritma ... 88

4.2.2.1 Rencana Pengujian ... 88

4.2.2.2 Pengujian ... 90

4.2.2.3 Kesimpulan Pengujian ... 91

BAB 5 KESIMPULAN DAN SARAN ... 93

5.1 Kesimpulan ... 93

5.2 Saran ... 93

(53)

95 Science, RMIT.

2. Ahmad, U., 2005. Pengolahan Citra Digital dan Teknik Pemrogramannya. Yogyakarta : Graha Ilmu.

3. Dillak, R. Y., Bintiri, M. G., Harjoko, A., 2013. Sistem Deteksi Penyakit Menggunakan Jaringan Syaraf Tiruan. Yogyakarta : Graha Ilmu.

4. Hartanto, B., 2008. Memahami Visual C#.Net Secara Mudah. Pertama penyunt. Yogyakarta: Andi.

5. Hidayanto, A., Isnanto, R. R., Buana, D. K. W., 2008. Identifikasi Tanda-Tangan Menggunakan Jaringan Syaraf Tiruan Perambatan-Balik (Backpropagation). Jurnal Teknologi, Volume 1 nomor 2. Universitas Diponegoro, Semarang.

6. Muis, S., 2006. Jaringan Saraf Tiruan. Yogyakarta : Graha Ilmu.

7. Nugroho, A., 2005. Pemodelan Berorientasi Objek. Bandung : Informatika. 8. Pressman, R. S., 2005. Software Engineering: A Practitioner's Approach,

Sixth Edition. New York: McGraw-Hill.

9. Sugiantoro, D. W., 2013. Perbandingan Metode Robert, Sobel, Prewitt dan Canny untuk Deteksi Tepi Objek pada Aplikasi Pengenalan Bentuk Bangun Datar Berbasis Citra Digital. Jurnal Informatika. UPN “Veteran” Jawa Timur.

10. Suyanto, 2014. Artificial Intelligence Searching, Reasoning, Planning, Learning. Revisi Kedua. Bandung : Informatika.

11. Widodo, P. P., 2011. Menggunakan UML. Bandung : Informatika.

12. Wuryandari, M. D., 2012. Perbandingan Meotde Jaringan Syaraf Tiruan Backpropagation dan Learning Vector Quantization pada Pengenalan

(54)

iii

Segala puji dan syukur penulis panjatkan kepada Allah SWT yang telah memberikan kelancaran, kemudahan dan kesehatan sehingga skripsi yang berjudul “Implementasi Jaringan Syaraf Tiruan Feedforward Dan Feature

Detection Untuk Verifikasi Tanda Tangan” dapat diselesaikan dengan baik tanpa

hambatan.

Mahakuasa Allah SWT yang telah mengirim anugrah dengan orang-orang yang dapat menemani, membimbing dan mendukung penyelesaian skripsi ini dengan cara yang sangat luar biasa. Untuk itu, penulis ingin menyampaikan rasa terimakasih yang sebesar-besarnya kepada :

1. Kedua Orang Tua yang telah memberikan pendidikan, pemahaman, kekuatan, doa dan pengertian dengan cara yang sangat luar biasa.

2. Kakak, adik-adik, dan seluruh keluarga besar tercinta yang selalu mendukung dan mendoakan yang tidak henti-hentinya.

3. Bapak Galih Hermawan, S.Kom., M.T selaku dosen pembimbing yang telah banyak memberikan masukan dan saran kepada penulis sejak sidang proposal sampai dengan selesainya penulisan skripsi ini.

4. Bapak Eko Budi Setiawan, S.Kom., M.T selaku dosen penguji 1 yang telah memberikan masukan dan saran dalam penyusunan penelitian skripsi ini. 5. Ibu Nelly Indriani Widiastuti., S.Si., S.T selaku dosen penguji 2 yang telah

memberikan masukan dan saran dalam penyusunan penelitian skripsi ini. 6. Ibu Utami Dewi Widianti, S.Kom., M.Kom selaku dosen wali.

7. Teman-teman di kelas IF-11 angakatan 2010, terimakasih telah menjadi teman seperjuangan yang terbaik.

8. Teman-teman IPA 2 yang namanya tidak bisa disebutkan satu persatu, terimakasih telah memberikan kekeluargaan dalam sebuah pertemanan. 9. Serta semua pihak yang membantu penulis baik langsung maupupun tidak

(55)

iv

Penulis telah berupaya dengan semaksimal mungkin dalam penyelesaian skripsi ini, namun penulis menyadari masih banyak sekali kelemahan dan kekurangan, untuk itu penulis mengharapkan kritik dan saran yang bersifat membangun dari pembaca demi kesempurnaan skripsi ini. Tak lupa pula penulis memohon maaf apabila dalam penulisan laporan skripsi ini, penulis telah menyinggung perasaan atau telah menyakiti hati semua orang, baik yang disengaja maupun yang tidak disengaja. Semoga karya ilmiah ini bermanfaat dan dapat dijadikan sebagai salah satu sumber referensi bagi peneliti selanjutnya yang ingin meneliti hal yang serupa.

Wassalamualaikum Wr. Wb.

(56)
(57)

TTL : Bandung, 21 September 1992

Alamat : Jl. Paledang no. 15 RT 10 / RW 18 Karawang Barat NO. Handphone : 085717890961

Email : ryan_weh@yahoo.com

RIWAYAT PENDIDIKAN

1998-2004 : SDN Karawang Kulon V

2004-2007 : SMPN 8 Karawang

2007-2010 : SMAN 1 Karawang

(58)
(59)

Gambar

Gambar 2.2 Neuron
Tabel 2.1 Analogi JST dan JSB
Gambar 2.3 Model Struktur JST
Gambar 2.4 Jaringan Dengan Lapisan Tunggal
+7

Referensi

Dokumen terkait

Judul yang dipilih oleh Tim peneliti untuk Hibah Penelitian dan Pengabdian Pada Masyarakat Kemenristekdikti 2017 ini adalah “Rencana Kontinjensi Pengurangan Risiko Bencana

Berdasarkan hasil evaluasi administrasi, evaluasi teknis dan evaluasi harga dan evaluasi kualifikasi serta pembktian kualifikasi maka Panitia Pengadaan Barang/Jasa

10.10.2 Menggunakan media pembelajaran dan sumber belajar yang relevan dengan karakteristik peserta didik dan mata pelajaran yang diampu untukmencapai.. 10.10.10.2 Memahami

Berdasarkan bobot relatif persyaratan teknik, urutan prioritas persyaratan teknik yang harus dipenuhi oleh PKBT IPB dalam pengembangan varietas melon (pemuliaan melon) khususnya

The difference (∆) of PASI score, Trozak score, and K6 expression of psoriasis patients in Cipto Mangunkusumo Hospital before and after 1% C. xanthorrhiza ointment and

Riset ini akan melihat sejauh mana khalayak bisa menangkap citra kota yang dikomunikasi melalui program branding ini, seberapa efektif program

Keputusan Menteri Riset, Teknologi, dan Pendidikan Tinggi Republik Indonesia Nomor 732/KPT/I/2018 tentang Izin Penyatuan dan Perubahan Bentuk Beberapa Perguruan Tinggi