Implementasi Algoritma K-Nearest Neighbor untuk Mengklasifikasikan Motif Batik Besurek Bengkulu

(1)

IMPLEMENTASI ALGORITMA K-NEAREST NEIGHBOR UNTUK MENGKLASIFIKASIKAN MOTIF

BATIK BESUREK BENGKULU

SKRIPSI

WESTHYMA SIBARANI 101401071

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2015


(2)

IMPLEMENTASI ALGORITMA K-NEAREST NEIGHBOR UNTUK MENGKLASIFIKASIKAN MOTIF

BATIK BESUREK BENGKULU

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Sarjana Ilmu Komputer

WESTHYMA SIBARANI 101401071

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2015


(3)

ii

PERSETUJUAN

Judul : IMPLEMENTASI ALGORITMA K-NEAREST NEIGHBOR UNTUK MENGKLASIFIKASIKAN MOTIF BATIK BESUREK BENGKULU

Kategori : SKRIPSI

Nama : WESTHYMA SIBARANI

Nomor Induk Mahasiswa : 101401071

Program Studi : S1 ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI (Fasilkom-TI)

Diluluskan di Medan, September 2015 Komisi Pembimbing

Pembimbing 2 Pembimbing 1

Drs.Marihat Situmorang,M.Kom Drs.Partano Siagian,M.Sc NIP. 196312141989031001 NIP. 195112271980031001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr.Poltak Sihombing, M.Kom NIP.196203171991031001


(4)

PERNYATAAN

IMPLEMENTASI ALGORITMA K-NEAREST NEIGHBOR UNTUK MENGKLASIFIKASIKAN MOTIF

BATIK BESUREK BENGKULU

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 2015

Westhyma Sibarani NIM. 101401071


(5)

iv

PENGHARGAAN

Pujian, hormat dan syukur buat kasih Allah Bapa, Tuhan Yesus Kristus dan Roh Kudus atas berkatNya yang begitu besar sehingga penulis dapat menyelesaikan penyusunan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

Dalam kesempatan ini penulis ingin mengucapkan terima kasih kepada :

1. Bapak Prof. Subhillar, Ph.D selaku pejabat Rektor Universitas Sumatera Utara. 2. Bapak Prof.Dr. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan

Teknologi Informasi Universitas Sumatera Utara.

3. Bapak Dr.Poltak Sihombing,M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

4. Ibu Maya Silvi Lydia, B.Sc,M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

5. Bapak Drs.Partano Siagian,M.Sc selaku Dosen Pembimbing I yang telah memberikan bimbingan kepada penulis dalam pengerjaan skripsi.

6. Bapak Drs.Marihat Situmorang,M.Kom selaku Dosen Pembimbing II yang telah meluangkan waktu dan memberi masukan yang bermanfaat bagi penulis.

7. Ibu Dr.Elviawaty Muisa Zamzami,ST,MT,MM selaku Dosen Penguji I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

8. Bapak Jos Timanta Tarigan,S.Kom, M.Sc selaku Dosen Penguji II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

9. Seluruh bapak/ibu dosen dan pegawai di Program Studi S1 Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. 10.Ayahanda M.Sibarani, ibunda M.Sihombing (Alm) dan E.Sihombing tercinta,

saudaraku bang Parulian Sibarani,ST, bang Faber Zufrianton Sibarani,dan Lionel Teguh Sibarani yang selalu memberikan cinta dan kasih sayang,semangat,dana, dan doa tanpa henti kepada penulis.

11.Sahabat terkasih AGATHA (bang Boris Sirait, kak Desi Mariza Sinaga, Lennora Marbun,Sunfirst Lady Jeanfera Nababan,Tetti Sinaga,Noviyanti Sagala, dan


(6)

Bernadet Elvina, Yuliza Andriany, bang Markus, dan adik Ls.Hari Simanjuntak yang terus memberikan dukungan dan doa bagi penulis

12.Adik kelompok terkasih AOPHIA (Janferson Panggabean, Tuti Simanjuntak, Anggi Fitriani Lumbanbatu, Astria Martina Silaban, dan Yonathan Hutapea) 13.Sanak keluarga besar baik opung,tulang dan nantulang no.1,3,dan4,kak Lawrellya,

kak Ria,bang Boby,bang Gilbert,tulang Maringan Simanjuntak,Amd, tante Ruceh, tulang dan nantulang Pendeta, dan semua keluarga yang tetap mendukung penulis. 14.Teman-teman kampus LOGIC (bang Johanes G.Hutabarat, bang Yudhi Pangaribuan, bang Samuel Tarigan,bang Jonhri Sibarani, Johanes P.Saragih, Rivai H.Purba, Yansen Simatupang,Lorent Oliver Barus, Kurniawan Hutagaol, dan Hengky Gulo) , teman KOMDIS,Arifin, para Hadeuh serta semua teman-teman Kom-A 2010 yang selalu mengingatkan, mendorong, memberikan semangat dan membantu dalam pengerjaan skripsi ini.

15.Adik junior di kampus Winda Sari Elisabeth,Baringin Sihite,Maya Hartina Hutagalung,Ardi,Toni A.Sianturi,Mangasa Manullang,Endang, Rosalia,Evelin, Maya K.Nasution dan semua adik-adik terkasih yang selama ini juga membantu dalam memberi semangat dan doa.

16. Abang/kakak/teman/adik semasa pelayanan di UKM KMK USU, UP FMIPA, dan Tim Kerja UKM KMK USU 2014 baik Tiara Tobing,Wahyu Rahyuni Butar-butar, Mardi Sirait,Octa Manurung, Harif Nepen Marbun, Gery L.Purba, kak Destriani, bang Jakup, Julfi, Fahmy, Marlina, Suryati

17.Semua pihak yang tidak dapat disebutkan penulis satu per satu yang telah membantu penyelesaian skripsi ini.

Penulis menyadari bahwa skripsi ini masih terdapat kekurangan, oleh karena itu penulis mengharapkan kritik dan saran yang membangun demi kesempurnaan skripsi ini.

Medan, 2015 Penulis


(7)

vi

ABSTRAK

Indonesia merupakan negara yang terkenal dengan salah satu kebudayaannya yaitu batik. Batik di Indonesia memiliki beragam corak dan motif yang pada umumnya beberapa daerah memiliki perbedaan. Dari perbedaan itu pula yang menjadi latar belakang untuk membahas mengenai batik dari daerah Bengkulu yaitu batik Besurek. Perkembangan teknologi di bidang pengenalan pola menjadi dasar dalam klasifikasi motif batik Besurek Bengkulu. K-NN ( K-Nearest Neighbor) merupakan salah satu metode klasifikasi dalam data mining dimana pengklasifikasiannya berdasarkan kedekatan lokasi (jarak) suatu data dengan data yang lain dan jumlah anggota kelas terbanyak. Metode ekstraksi ciri dalam penelitian ini menggunakan

threshold dan deteksi tepi Robert. Citra yang dilatih dan diuji adalah citra batik Besurek Bengkulu yang terdiri dari 4 kelas motif yaitu Relung Paku, Bunga Rafflesia, Burung Kuau, dan Rembulan dengan ukuran citra sebesar 100x100 piksel. Dari hasil pengujian didapati bahwa tingkat pengenalan untuk citra latih diperoleh nilai sebesar 100% pada k = 1 dan tingkat pengenalan untuk citra diluar citra latih diperoleh nilai sebesar 50% pada k= 3. Rata-rata waktu pengujian tercepat untuk citra latih diperoleh pada saat k = 5 sebesar 27,06 detik dan rata-rata waktu pengujian tercepat untuk citra diluar citra latih tercepat diperoleh pada saat k = 1 sebesar 31,94 detik.

Kata kunci : Data Mining, Ekstraksi Ciri, K-Nearest Neighbor, Motif Batik Besurek Bengkulu.


(8)

ABSTRACT

Indonesia is a country which is well-known with its culture called Batik. Batik has various of pattern and motif which is generally different each area in Indonesia. The difference is the reason for researching about Bengkulu Batik called Besurek. The development of technology in feature identification sector is a basic in classifying Bengkulu Besurek Batik motif. K-NN (K-Nearest Neighbor) is one of classification methods of data mining which is based on nearness location(distance) of each data and the most amount of class member. Feature extraction method used in this research is threshold and Robert edge detection. Image training and testing are Bengkulu Besurek batik image which are contain of 4 motif classes that are Relung Paku, Bunga Rafflesia, Burung Kuau, and Rembulan which have a measurement of 100 x 100 pixels. According to the result of the testing, the degree of identification of image training is 100% on K = 1 and outside image training as big as 50 % on K = 3. The average of the fastest time testing of image training for K = 5 is 27.06 seconds and the fastest time testing of outside image training for K = 1 is 31.94 seconds.

Keywords : Bengkulu Besurek Batik Pattern, Data Mining, Feature Extraction, K-Nearest Neighbor.


(9)

viii

DAFTAR ISI

Hal

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Gambar x

Daftar Tabel xii

Daftar Simbol xiii

Daftar Lampiran xvi

Bab I Pendahuluan

1.1Latar Belakang 1

1.2Rumusan Masalah 2

1.3Batasan Masalah 2

1.4Tujuan Penelitian 3

1.5Manfaat Penelitian 3

1.6Metodologi Penelitian 3

1.7Sistematika Penulisan 4

Bab II Tinjauan Pustaka

2.1Batik Besurek 6

2.1.1 Sejarah Batik Besurek Bengkulu 6 2.1.2 Jenis-jenis Motif Dasar Batik Besurek 7

2.2Data Mining 9

2.3K-Nearest Neighbor (K-NN) 10

2.3.1 Algoritma K-NN 11

2.4Ekstraksi Ciri

2.4.1 Thresholding 13

2.4.2 Deteksi Tepi (Edge Detection) 14

2.4.2.1Deteksi Tepi Robert 14

2.5Pengenalan Pola (Pattern Recognition) 16

2.6Format File Citra 18

2.6.1 JPEG (Joint Photographic Expert Group) 18 Bab III Analisis dan Perancangan Sistem

3.1Analisis Sistem 19

3.1.1 Analisis Permasalahan 19


(10)

3.1.2.2Analisis Kebutuhan Non-Fungsional Sistem 20

3.1.3 Analisis Proses 21

3.1.3.1Use Case Diagram 21

3.1.3.1.1 Use Case Pelatihan Sistem 22 3.1.3.1.2 Use Case Pengujian Sistem 23

3.1.3.2Activity Diagram 25

3.1.3.2.1 Activity Diagram Pelatihan 25 3.1.3.2.2 Activity Diagram Pengujian 26

3.1.3.3Sequence Diagram 27

3.1.3.3.1 Sequence Diagram Pelatihan 27 3.1.3.3.2 Sequence Diagram Pengujian 28

3.2Perancangan Sistem 28

3.2.1 Flowchart Sistem 28

3.2.1.1Flowchart Proses Pelatihan 28 3.2.1.2Flowchart Subproses Ekstraksi Ciri 29 3.2.1.3Flowchart Proses Pengujian 30

3.2.2 Perancangan Antarmuka 31

3.2.2.1Perancangan Antarmuka Beranda 31 3.2.2.2Perancangan Antarmuka Bantuan 32 3.2.2.3Perancangan Antarmuka Pelatihan 33 3.2.2.4Perancangan Antarmuka Pengujian 35 3.2.2.5Perancangan Antarmuka Keluar 37 Bab IV Implementasi dan Pengujian

4.1Implementasi Sistem 39

4.1.1 Tampilan Antarmuka Sistem 39

4.1.1.1Tampilan Antarmuka Beranda 39 4.1.1.2Tampilan Antarmuka Bantuan 40 4.1.1.3Tampilan Antarmuka Pelatihan 40 4.1.1.4Tampilan Antarmuka Pengujian 44 4.1.1.5Tampilan Antarmuka Keluar 48

4.2Pengujian Sistem 49

4.2.1 Pengujian K-NN terhadap Citra Latih 54 4.2.2 Pengujian K-NN terhadap Citra diluar Citra Latih 56 Bab V Kesimpulan dan Saran

5.1 Kesimpulan 58

5.2 Saran 59

Daftar Pustaka 60


(11)

x

DAFTAR GAMBAR

Hal

Gambar 2.1 Motif Relung Paku 7

Gambar 2.2 Motif Bunga Rafflesia 7

Gambar 2.3 Motif Burung Kuau 8

Gambar 2.4 Motif Rembulan 8

Gambar 2.5 Operator Robert 14

Gambar 2.6 Pengenalan Pola 16

Gambar 3.1 Diagram Ishikawa Analisis Permasalahan 19

Gambar 3.2 Use case Diagram 22

Gambar 3.3 Activity Diagram Pelatihan 25

Gambar 3.4 Activity Diagram Pengujian 26

Gambar 3.5 Sequence Diagram Pelatihan 27

Gambar 3.6 Sequence Diagram Pengujian 28

Gambar 3.7 Flowchart Proses Pelatihan 29

Gambar 3.8 Flowchart Subproses Ekstraksi Ciri 29

Gambar 3.9 Flowchart Proses Pengujian 30

Gambar 3.10 Tampilan Rancangan Antarmuka Beranda 31 Gambar 3.11 Tampilan Rancangan Antarmuka Bantuan 32 Gambar 3.12 Tampilan Rancangan Antarmuka Pelatihan 33 Gambar 3.13 Tampilan Rancangan Antarmuka Pengujian 35 Gambar 3.14 Tampilan Rancangan Antarmuka Keluar 37

Gambar 4.1 Tampilan Antarmuka Beranda 39

Gambar 4.2 Tampilan Antarmuka Bantuan 40

Gambar 4.3 Tampilan Antarmuka Pelatihan 41

Gambar 4.4 Tampilan Antarmuka Pelatihan setelah button Load diklik 41 Gambar 4.5 Tampilan Antarmuka Pelatihan setelah slider Threshold diklik 42 Gambar 4.6 Tampilan Antarmuka Pelatihan saat deteksi tepi Robert 42 Gambar 4.7 Tampilan Penyimpanan Matriks Vektor 43 Gambar 4.8 Tampilan Antarmuka Pelatihan setelah button Reset diklik 43


(12)

Gambar 4.10 Tampilan Buka File Motif Batik 44 Gambar 4.11 Tampilan Antarmuka Pengujian setelah dimasukkan citra 45 Gambar 4.12 Tampilan Antarmuka Pengujian setelah threshold 45

dan deteksi tepi Robert

Gambar 4.13 Tampilan Antarmuka Pengujian untuk memilih nilai K 46 Gambar 4.14 Tampilan Antarmuka Pengujian dengan nilai K=1 46 Gambar 4.15 Tampilan Antarmuka Pengujian dengan nilai K=3 47 Gambar 4.16 Tampilan Antarmuka Pengujian dengan nilai K=5 47 Gambar 4.17 Tampilan Antarmuka Pengujian dengan nilai K=7 48

Gambar 4.18 Tampilan Antarmuka Keluar 48

Gambar 4.19 Tampilan Matriks Vektor Ekstraksi Ciri Data latih dan Data Uji 52 Gambar 4.20 Tampilan Hasil Ascending Euclidean Distance 53


(13)

xii

DAFTAR TABEL

Hal

Tabel 2.1 Klasifikasi Data Latih 11

Tabel 2.2 Perhitungan kuadrat jarak data latih dengan data uji 12 Tabel 2.3 Penentuan 3 tetangga tedekat dari data uji 12 Tabel 2.4 Klasifikasi kelas tetangga terdekat 12 Tabel 2.5 Perhitungan deteksi tepi Robert 15

Tabel 3.1 Spesifikasi Use Case Pelatihan 22 Tabel 3.2 Spesifikasi Use Case Pengujian 24

Tabel 4.1 Data Citra Latih 49

Tabel 4.2 Data Citra diluar Citra Latih 51 Tabel 4.3 Hasil Pengujian K-NN terhadap Citra Latih 54 Tabel 4.4 Tingkat Akurasi Pengenalan terhadap Citra Latih 55 Tabel 4.5 Rata-rata Waktu Pengujian terhadap Citra Latih 56 Tabel 4.6 Hasil Pengujian K-NN terhadap Citra diluar Citra Latih 56 Tabel 4.7 Tingkat Akurasi Pengenalan terhadap Citra diluar Citra Latih 57 Tabel 4.8 Rata-rata Waktu Pengujian terhadap Citra diluar Citra Latih 57


(14)

DAFTAR SIMBOL

Flowchart

No Simbol Nama Fungsi

1 Terminator Permulaan/akhir program

2 Input/Output

Data

Proses input/output data, parameter, informasi

3 Process Proses perhitungan/proses

pengolahan data

4 Decision

Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah

selanjutnya

5 Subprocess Permulaan sub program/ proses

menjalankan sub program

6 Magnetic Disk

(Database)

Lokasi penyimpanan data yang digambarkan dalam bentuk

database

7 Flow Line Arah aliran program

Use Case Diagram

No Simbol Nama Fungsi

1

Actor1

Actor

Segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi

2 UseCase1 Use Case Mengidentifikasi dan menggambarkan fungsi-fungsi sistem

3 Association Hubungan antara aktor dengan use


(15)

xiv

Activity Diagram

No Simbol Nama Fungsi

1 Initial State Awal sebuah proses

2 State1 State

Menggambarkan sebuah kegiatan/tugas yang perlu dilakukan

3 Control Flow Sasaran yang mengawali kegiatan

4 Transition

Fork/Join

Menunjukkan kegiatan yang dilakukan secara paralel atau untuk

menggabungkan dua/lebih kegiatan paralel menjadi satu

5 Decision Sebuah kegiatan keputusan

6 Final State Akhir dari sebuah proses

Sequence Diagram

No Simbol Nama Fungsi

1

Object

Object

Contoh dari sebuah class dengan nama objek di dalamnya dan dituliskan

secara horizontal

2

User

Actor

Dapat berkomunikasi dengan objek maka actor juga dapat diurutkan

sebagai kolom

3 Lifeline Keberadaan sebuah objek dalam basis

waktu

4 Activition

Mengindikasikan sebuah objek yang akan melakukan aksi


(16)

5 Message1 Message Mengindikasikan komunikasi antara

objek-objek

6 Message Self Message Mengindikasikan komunikasi kembali

ke dalam sebuah objek itu sendiri

7 Message2 Message

(return)

Menampilkan hasil dari pengiriman


(17)

xvi

DAFTAR LAMPIRAN

Halaman

A. Listing Program A-1


(18)

ABSTRAK

Indonesia merupakan negara yang terkenal dengan salah satu kebudayaannya yaitu batik. Batik di Indonesia memiliki beragam corak dan motif yang pada umumnya beberapa daerah memiliki perbedaan. Dari perbedaan itu pula yang menjadi latar belakang untuk membahas mengenai batik dari daerah Bengkulu yaitu batik Besurek. Perkembangan teknologi di bidang pengenalan pola menjadi dasar dalam klasifikasi motif batik Besurek Bengkulu. K-NN ( K-Nearest Neighbor) merupakan salah satu metode klasifikasi dalam data mining dimana pengklasifikasiannya berdasarkan kedekatan lokasi (jarak) suatu data dengan data yang lain dan jumlah anggota kelas terbanyak. Metode ekstraksi ciri dalam penelitian ini menggunakan

threshold dan deteksi tepi Robert. Citra yang dilatih dan diuji adalah citra batik Besurek Bengkulu yang terdiri dari 4 kelas motif yaitu Relung Paku, Bunga Rafflesia, Burung Kuau, dan Rembulan dengan ukuran citra sebesar 100x100 piksel. Dari hasil pengujian didapati bahwa tingkat pengenalan untuk citra latih diperoleh nilai sebesar 100% pada k = 1 dan tingkat pengenalan untuk citra diluar citra latih diperoleh nilai sebesar 50% pada k= 3. Rata-rata waktu pengujian tercepat untuk citra latih diperoleh pada saat k = 5 sebesar 27,06 detik dan rata-rata waktu pengujian tercepat untuk citra diluar citra latih tercepat diperoleh pada saat k = 1 sebesar 31,94 detik.

Kata kunci : Data Mining, Ekstraksi Ciri, K-Nearest Neighbor, Motif Batik Besurek Bengkulu.


(19)

vii

ABSTRACT

Indonesia is a country which is well-known with its culture called Batik. Batik has various of pattern and motif which is generally different each area in Indonesia. The difference is the reason for researching about Bengkulu Batik called Besurek. The development of technology in feature identification sector is a basic in classifying Bengkulu Besurek Batik motif. K-NN (K-Nearest Neighbor) is one of classification methods of data mining which is based on nearness location(distance) of each data and the most amount of class member. Feature extraction method used in this research is threshold and Robert edge detection. Image training and testing are Bengkulu Besurek batik image which are contain of 4 motif classes that are Relung Paku, Bunga Rafflesia, Burung Kuau, and Rembulan which have a measurement of 100 x 100 pixels. According to the result of the testing, the degree of identification of image training is 100% on K = 1 and outside image training as big as 50 % on K = 3. The average of the fastest time testing of image training for K = 5 is 27.06 seconds and the fastest time testing of outside image training for K = 1 is 31.94 seconds.

Keywords : Bengkulu Besurek Batik Pattern, Data Mining, Feature Extraction, K-Nearest Neighbor.


(20)

BAB I PENDAHULUAN

1.1Latar Belakang

Indonesia merupakan negara yang terdiri dari banyak ragam suku dan budaya. Masing-masing daerah mempunyai keunikannya tersendiri. Keunikan tersebut disalurkan dalam bentuk tarian, lagu, kuliner, pakaian daerah, kain khas daerah, dan sebagainya.

Batik merupakan warisan leluhur dari generasi ke generasi bangsa Indonesia. Batik sebagai salah satu seni tradisional Indonesia menyimpan konsep artistik yang tidak dibuat semata-mata untuk keindahan. Istilah batik sendiri berasal dari bahasa Jawa “amba” , yang artinya menulis dan “niti”. Batik juga fungsional sebagai pilihan busana sehari-hari, untuk keperluan upacara, adat, tradisi, kepercayaan, agama, bahkan status sosial [5].

Di Indonesia sendiri terdapat berbagai jenis batik yang memiliki motif, corak dan arti yang berbeda. Di propinsi Bengkulu terdapat salah satu batik peninggalan bangsa Indonesia, yaitu batik Besurek. Motif pada batik besurek sendiri dulunya adalah sakral yang sering di gunakan pada upacara adat Bengkulu, seperti nikahan, sunatan, dan upacara adat lainnya. Dulunya batik ini bukan merupakan batik, melainkan hanya kain yang terbuat dari serat kayu dan akar yang bernama lantung, tetapi seiring berkembangnya teknologi dan pola pikir masyarakat Bengkulu akhirnya di buatlah menjadi batik yang lebih sederhana dan proses pembuatannya tidak begitu sukar. Motif dasar merupakan pedoman pengembangan untuk mendapatkan jenis-jenis motif baru.

Dalam bidang Ilmu Komputer, terdapat banyak metode yang dikembangkan dengan metode lain, termasuk kemajuan teknologi di dalam pelestarian budaya.


(21)

2

Salah satu metode yang dapat dikembangkan adalah Data Mining. Data Mining yaitu pengekstrakan informasi baru yang yang diambil dari bongkahan data besar yang membantu dalam pengambilan keputusan. Salah satu metode dalam Data Mining

adalah K-Nearest Neighbor (K-NN). K-Nearest Neighbor (K-NN) adalah algoritma yang melakukan klasifikasi berdasarkan kedekatan lokasi (jarak) suatu data dengan data yang lain [8]. Tujuan dari algoritma ini adalah mengklasifikasi objek baru berdasarkan atribut dan sampel latih.

Pada penelitian ini membahas mengenai teknik mengklasifikasikan motif batik Besurek Bengkulu dengan menggunakan metode deteksi tepi Robert dan metode klasifikasi yang digunakan adalah metode K-Nearest Neighbor (K-NN). Pada penelitian sebelumnya dilakukan oleh Haffiz Wahyu yang berjudul “Perancangan Sistem Perangkat Lunak untuk Motif Batik menggunakan Metode Klasifikasi K-Nearest Neighbour (K-NN)”[12]. Perbedaan dengan penelitian sebelumnya adalah ekstrasi ciri dan jenis batik yang digunakan.

Dengan demikian penulis akan membuat penelitian yang berjudul “Implementasi Algoritma K-Nearest Neighbor untuk Mengklasifikasikan Batik Besurek Bengkulu”.

1.2Rumusan Masalah

Masalah yang akan dibahas dalam penelitian ini adalah :

Bagaimana mengimplementasikan metode K-Nearest Neighbor dalam bentuk aplikasi untuk mengklasifikasikan motif batik besurek Bengkulu.

1.3Batasan Masalah

Batasan masalah dalam penelitian ini adalah :

1. Ukuran citra 100x100 piksel berformat .jpg sebanyak 22 buah.

2. Motif batik besurek yang digunakan sebanyak 4 motif dasar yaitu Relung Paku, Bunga Rafflesia, Burung Kuau, dan Rembulan.

3. Nilai K yang digunakan adalah bilangan ganjil dari 1 sampai 7.

4. Ekstraksi ciri yang digunakan adalah nilai rata-rata threshold untuk setiap citra dan deteksi tepi Robert.


(22)

6. Spesifikasi perangkat keras sistem yang digunakan yaitu Processor Intel Core

i5, RAM 2GB, dan harddisk 320GB.

1.4Tujuan Penelitian

Mengimplementasikan algoritma K-Nearest Neighbor untuk mengklasifikasikan motif batik besurek Bengkulu.

1.5Manfaat Penelitian

Manfaat penelitian yang dibuat antara lain : 1. Manfaat untuk bidang ilmu

Penelitian diharapkan dapat menambah literatur mengenai bidang ilmu Data Mining terkhususnya metode K-Nearest Neighbor.

2. Manfaat untuk bidang budaya

Menambah wawasan, pengetahuan dan kecintaan terhadap pelestarian batik yang beraneka ragam di Indonesia dan memperkenalkan batik Besurek Bengkulu.

1.6 Metodologi Penelitian

Metodologi penelitian yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut :

1. Studi Literatur

Pada tahap ini dilakukan studi kepustakaan berupa buku dan jurnal yang berkaitan dengan penelitian antara lain mengenai batik besurek, data mining,

k-nearest neighbor, deteksi tepi Robert, pengolahan citra. 2. Pengumpulan Data

Dalam tahap ini dilakukan pengumpulan data berupa citra digital yang akan digunakan dalam proses pembelajaran dari sistem yang dibuat.

3. Analisis dan Perancangan

Pada tahap ini dilakukan analisis terhadap motif batik besurek, nilai K, pengaruh jarak terdekat Euclidean Distance pada proses klasifikasi


(23)

4 K-NN baik untuk data latih dan data uji serta perancangan dalam bentuk

flowchart dan desain antarmuka dari sistem. 4. Implementasi dan Pengujian

Pada tahap ini diimplementasikan metode K-Nearest Neighbor sesuai konsep yang telah dibuat pada tahap analisis dan perancangan untuk klasifikasi motif batik besurek Bengkulu baik pelatihan dan pengujian ke dalam sebuah sistem dengan menggunakan bahasa pemrograman MATLAB R2009a.

5. Dokumentasi

Pada tahap ini dilakukan dokumentasi dalam bentuk laporan tugas akhir.

1.7Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut:

BAB 1: PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Implementasi Algoritma K-Nearest Neighbor untuk Mengklasifikasikan Motif Batik Besurek Bengkulu”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.

BAB 2: TINJAUAN PUSTAKA

Bab ini berisi dasar teori-teori yang digunakan dalam analisis, perancangan dan implementasi skripsi.

BAB 3: ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi analisis terhadap fokus permasalahan penelitian dan perancangan terhadap pelatihan dan pengujian metode K-Nearest Neighbor untuk mengklasifikasikan motif Batik Besurek Bengkulu


(24)

BAB 4: IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi teknik implementasi dari perancangan yang telah dibuat dan pengujian terhadap implementasi. Pengujian dilakukan untuk membuktikan perangkat lunak dapat berjalan sesuai dengan spesifikasi yang telah ditentukan di tahapan analisis.

BAB 5: KESIMPULAN DAN SARAN

Bab ini memuat kesimpulan isi dari keseluruhan uraian bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh, yang diharapkan dapat bermanfaat untuk pengembangan selanjutnya.


(25)

BAB II

TINJAUAN PUSTAKA

2.1Batik Besurek

2.1.1 Sejarah Batik Besurek Bengkulu

Kain Batik Besurek merupakan salah satu bentuk batik hasil kerajinan tradisional daerah Bengkulu yang telah diwariskan dari generasi ke generasi. Kain Besurek merupakan salah satu hasil budaya daerah atau tradisional masyarakat Bengkulu yang sampai saat ini masih dipertahankan, bahkan terus ditumbuhkembangkan keberadaannya. Sehingga kain Besurek ini menjadi ciri khas tersendiri bagi Propinsi Bengkulu. Sebagai salah satu wujud fisik budaya daerah atau tradisional, tentu saja kain Besurek tersebut memebrikan andil di dalam pertumbuhkembangan peradaban masyarakat Bengkulu. Oleh sebab itu agar masyarakat Bengkulu tidak kehilangan jejak budaya dan sejarah dari keberadaan kain Besurek yang mempunyai kandungan tak ternilai harganya [8]. Kain Basurek merupakan batik tradisional daerah Bengkulu yang artinya kain yang mempunyai surat atau tulisan. Surat atau tulisan yang di maksud terdiri atas berbagai macam ragam hiasan (ornamen), baik yang berupa tulisan huruf Arab (kaligrafi) maupun bermacam ragam hiasan. Selain itu dapat juga berupa berbagai bentuk motif lainnya, seperti tumbuh-tumbuhan (flora) dan binatang (fauna), anyam-anyaman, serta ukir-ukiran [4]. Dulu kain besurek hanya digunakan dalam upacara ritual keagamaan di wilayah Bengkulu, namun karena adanya transisi dan perubahan zaman, kain besurek sekarang ini telah menyebar dan dimanfaatkan dalam berbagai acara dan kondisi. Motif dasar kain besurek merupakan motif peninggalan para nenek moyang yang sampai saat ini belum diketahui asalnya, ada yang mengatakan bahwa motif kain Basurek ini dulunya sangat sakral di karenakan huruf arabnya yang bisa terbaca dan menandakan hubungan manusia dengan Tuhan. Berdasarkan sejarah perkembangannya hingga saat ini, motif dasar tersebut sudah banyak mengalami perubahan.


(26)

2.1.2 Jenis-jenis Motif Dasar Batik Besurek 1. Motif Relung Paku

Motif ini menggambarkan keadaan tumbuh-tumbuhan dan keadaan binatang. Sering di gunakan untuk upacara adat cukuran bayi.

Gambar 2.1 Motif Relung Paku [4]

2. Motif Bunga Rafflesia

Bunga Rafflesia Arnoldi yang merupakan bunga raksasa khas Bengkulu. Motif bunga rafflesia bisa dibilang sebagai motif utama kain besurek setelah kaligrafi.


(27)

8

3. Motif Burung Kuau

Motif burung kuau menggambarkan keadaan binatang. Jenis motif ini pada waktu dahulu digunakan pada upacara pernikahan, yaitu pada acara ziarah kubur.

Gambar 2.3 Motif Burung Kuau [4]

4. Motif Rembulan

Motif rembulan menggambarkan bahwa segala sesuatu yang ada di dunia ini merupakan ciptaan Tuhan Yang Maha Esa. Motif ini dipakai pada rangkaian pernikahan, yaitu pada acara siraman (mandi).


(28)

2.2Data Mining

Tan (2006) mendefinisikan data mining sebagai proses untuk mendapatkan informasi yang berguna dari gudang basis data yang besar [6]. Data mining juga dapat diartikan sebagai pengekstrakan informasi baru yang diambil dari bongkahan data besar yang membantu dalam pengambilan keputusan. Salah satu teknik yang dibuat dalam data mining adalah bagaimana menelusuri data yang ada untuk membangun sebuah model,kemudian menggunakan model tersebut agar dapat mengenali pola data yang lain yang tidak berada dalam basis data yang tersimpan. Dalam data mining, pengelompokan data juga bisa dilakukan. Tujuannya adalah agar kita dapat mengetahui pola universal data-data yang ada. Pekerjaan yang berkaitan dengan data mining dapat dibagi menjadi empat kelompok, yaitu model prediksi (prediction modelling), analisis kelompok (cluster analysis), analisis asosiasi (association analysis), dan deteksi anomali (anomaly detection).

1. Model Prediksi (Prediction Modelling)

Model prediksi berkaitan dengan pembuatan sebuah model yang dapat melakukan pemetaan dari setiap himpunan variabel ke setiap targetnya, kemudian menggunakan model tersebut untuk memberikan nilai target pada himpunan baru yang didapat. Ada dua jenis model prediksi, yaitu klasifikasi dan regresi. Klasifikasi digunakan untuk variabel target diskret sedangkan regresi untuk variabel target kontinu.

2. Analisis Kelompok (cluster analysis)

Analisis kelompok melakukan pengelompokan data-data ke dalam sejumlah kelompok (cluster) berdasarkan kesamaan karakteristik masing-masing data pada kelompok-kelompok yang ada. Data-data yang masuk dalam batas kesamaan dengan kelompoknya akan bergabung dalam kelompok tersebut, dan akan terpisah dalam kelompok yang berbeda jika keluar dari batas kesamaan dengan kelompok tersebut.

3. Analisis Asosiasi (Association Analysis)

Analisis asosiasi digunakan untuk menemukan pola yang menggambarkan kekuatan hubungan fitur dalam data. Pola yang ditemukan biasanya merepresntasikan bentuk aturan implikasi atau subset fitur. Tujuannya adalah untuk menemukan pola yang menarik dengan cara yang efisien.


(29)

10 4. Deteksi Anomali (Anomaly Detection)

Pekerjaan deteksi anomali berkaitan dengan pengamatan sebuah data dari sejumlah data yang secara signifikan mempunyai karakteristik yang berbeda dengan dari sisa data yang lain [6].

2.3K-Nearest Neighbor (K-NN)

K-Nearest Neighbor (K-NN) merupakan sebuah metode klasifikasi terhadap sekumpulan data berdasarkan pembelajaran data yang sudah terklasifikasikan sebelumnya. K-Nearest Neighbor berdasarkan konsep ‘learning by analogy’. Data

learning dideskripsikan dengan atribut numerik n-dimensi. Jika sebuah data uji yang labelnya tidak diketahui diinputkan,maka K-Nearest Neighbor akan mencari k buah data latih yang jaraknya paling dekat dengan data uji dihitung dengan cara mengukur jarak antara titik yang mempresentasikan data latih dengan rumus Euclidean Distance.

Pada fase pelatihan untuk data latih, algoritma hanya melakukan penyimpanan vektor-vektor fitur dan klasifikasi data latih. Pada fase klasifikasi, fitur-fitur yang sama dihitung untuk data uji dimana data uji adalah data yang klasifikasinya belum diketahui atau pengujian kembali data latih untuk mengetahui ketepatan klasifikasi. Jarak dari vektor data uji terhadap seluruh vektor data latih dihitung dan sejumlah k

buah yang paling dekat diambil. Titik dari data uji klasifikasinya diprediksikan berdasarkan klasifikasi data latih terbanyak dari titik-titik tersebut.

K-Nearest Neighbor merupakan teknik klasifikasi yang sederhana, tetapi mempunyai hasil kerja yang cukup bagus. Meskipun begitu, K-NN juga mempunyai kelebihan dan kekurangan [6]. Beberapa karakteristik K-NN adalah sebagai berikut :

1. K-NN merupakan algoritma yang menggunakan seluruh data latih untuk melakukan proses klasifikasi. Hal ini mengaikibatkan proses prediksi yang sangat lama untuk data dalam jumlah yang sangat besar.

2. Algoritma K-NN tidak membedakan setiap fitur dengan suatu bobot.

3. Karena K-NN termasuk lazy learning yang menyimpan sebagian atau semua data, K-NN sangat cepat dalam proses pelatihan tetapi sangat lambat dalam proses prediksi.


(30)

4. Hal yang rumit adalah menentukan nilai K yang paling sesuai

5. Karena K-NN pada prinsipnya memilih tetangga terdekat, parameter jarak juga penting untuk dipertimbangkan sesuai dengan kasus datanya.

2.3.1 Algoritma K-NN

Algoritma K-NN menggunakan klasifikasi ketetanggaan sebagai nilai prediksi untuk query data yang baru atau data uji. Dekat atau jauhnya tetangga biasanya dihitung berdasarkan Euclidean Distance :

D(a,b) = √∑ 2 ...(1) Keterangan :

D(a,b) : jarak skalar dari a dan b

ak, bk : vektor a dan b yang berupa matrik berukuran d dimensi

Algoritma :

Langkah 1 : Tentukan parameter K

Langkah 2 : Hitung jarak antara data uji dengan data latih dengan rumus

Euclidean Distance.

Langkah 3 : Urutkan hasil jarak tersebut secara ascending dan tetapkan tetangga terdekat berdasarkan jarak minimum ke-K

Langkah 4: Dengan menggunakan klasifikasi K-Nearest Neighbor yang paling mayoritas, maka dapat diprediksikan klasifikasi dari data uji

Contoh Soal :

Terdiri dari 2 atribut dengan skala kuantitatif sebagai data latih yaitu X1 dan X2 serta Y yaitu kelas baik dan buruk seperti pada Tabel 2.1 [10]

Tabel 2.1 Klasifikasi Data Latih

X1 X2 Y

7 7 Buruk

7 4 Buruk


(31)

12

Terdapat data uji yaitu X1 = 3 dan X2 = 7, tentukan nilai Y! Langkah penyelesaian:

1. Tentukan parameter K = jumlah tetangga terdekat, misalkan ditetapkan K = 3 2. Hitung jarak antara data baru dengan semua data latih seperti pada Tabel 2.2

Tabel 2.2 Perhitungan kuadrat jarak data latih dengan data uji X1 X2 Kuadrat jarak dengan data baru (3,7)

7 7 (7-3)2 + (7-7)2 = 16 7 4 (7-3)2 + (4-7)2 = 25 3 4 (3-3)2 + (4-7)2 = 9 1 4 (1-3)2 + (4-7)2 = 13

3. Urutkan hasil kuadrat jarak tersebut secara ascending dan tetapkan tetangga terdekat berdasarkan nilai K ( dimana K= 3) seperti pada tabel 2.3 dan tabel 2.4

Tabel 2.3 Penentuan 3 tetangga terdekat dari data uji

X1 X2 Euclidean Peringkat Jarak Tetangga terdekat

7 7 = 4 3 Ya

7 4 = 5 4 Tidak

3 4 = 3 1 Ya

1 4 = 3,6 2 Ya

Tabel 2.4 Klasifikasi kelas tetangga terdekat

X1 X2 Euclidean

Distance

Peringkat Jarak

Tetangga terdekat

Y

7 7 4 3 Ya Buruk

7 4 5 4 Tidak -

3 4 3 1 Ya Baik


(32)

4. Berdasarkan hasil dari Tabel 2.4 dimana nilai K= 3 , mayoritas hasil Y yang diperoleh yaitu “Baik”. Jadi hasil klasifikasi data uji dengan nilai X1 = 3 dan X2 = 7 adalah Y = kelas Baik

2.4 Ekstraksi Ciri

Ekstraksi ciri adalah suatu proses dimana mengambil ciri-ciri yang terdapat pada objek dalam citra. Pada proses ini objek di dalam citra dihitung properti-properti objek yang berkaitan sebagai ciri. Dan pada penelitian ini untuk ekstraksi ciri citra akan digunakan dua tahapan yaitu threshold dan deteksi tepi Robert.

2.4.1 Thresholding

Dalam proses thresholding atau biasa disebut binerisasi yaitu melakukan pengubahan nilai dari derajat keabuan menjadi dua nilai yaitu 0 atau biasa dikenal dengan warna hitam dan juga 255 yang disebut dengan warna putih. Pemilihan nilai threshold yang ada juga mempengaruhi ketajaman dari suatu citra [8]. Proses threshold dari suatu citra adalah sebagai berikut:

g(x,y) = {

}

Keterangan :

g(x,y) = citra biner dari citra f(x,y)

T = nilai threshold

Citra awal = ||

| |

Misalkan dari nilai citra awaldiatas threshold = 5, jika nilai

gradient(x,y) >= 5 maka citra(x,y) = 1 (putih/tepi). Jika nilai gradient(x,y) < 5 maka citra(x,y) = 0 (hitam/bukan tepi). Sehingga hasil citra threshold :

Citra Threshold =

[

]


(33)

14 Deteksi tepi adalah operasi yang dijalankan untuk mendeteksi garis tepi (edges) yang membatasi dua wilayah citra yang homogen yang memiliki tingkat kecerahan yang berbeda [5]. Sebuah operator deteksi tepi merupakan operasi bertetangga, yaitu sebuah operasi yang memodifikasi nilai keabuan sebuah titik berdasarkan nilai-nilai keabuan dari titik-titik yang ada di sekitarnya (tetangganya) yang masing-masing mempunyai bobot tersendiri. Bobot-bobot tersebut nilainya bergantung pada operasi yang dilakukan, sedangkan banyaknya titik tetangga yang terlibat biasanya adalah 2x2, 3x3, 3x4, 7x7, dan sebagainya.

Tujuan dari deteksi tepi antara lain :

1. Meningkatkan penampakan garis batas suatu daerah atau objek dalam sebuah citra.

2. Mencirikan batas objek dan berguna untuk proses segmentasi dan identifikasi objek.

2.4.2.1Deteksi Tepi Robert

Operator Roberts, yang pertama kali dipublikasikan pada tahun 1965, terdiri atas dua filter berukuran 2x2. Ukuran filter yang kecil membuat komputasi sangat cepat. Namun, kelebihan ini sekaligus menimbulkan kelemahan, yakni sangat terpengaruh oleh derau. Selain itu, operator Roberts memberikan tanggapan yang lemah terhadap tepi, kecuali kalau tepi sangat tajam (Fisher, dkk., 2003).

(b) Gx (a) Posisi pada citra f

z1 z2

z3 z4

x x+1

y y+1

1 0

0 -1

0 -1

1 0

(c) Gy Gambar 2.5 Operator Roberts [6]

Bentuk operator Roberts ditunjukkan pada Gambar 2.5. Maka, nilai operator Roberts pada (y, x) didefinisikan sebagai


(34)

Dalam hal ini, Z1 = f(y, x), Z2 = f(y, x+1), Z3 = f(y+1, x), dan Z4 = f(y+1, x+1).

Berikut ini perhitungan deteksi tepi Robert terhadap citra threshold seperti yang ditunjukkan pada Tabel 2.5

Citra Threshold =

[ ] Tabel 2.5 Perhitungan Deteksi Tepi Robert

r(1,1) =√

= √ = √

= √ = 1

r(1,2) =√

= √ = √

= √ = 1,4 = 1

r(1,3) =√

= √ = √

= √ = 1,4 = 1

r(1,4) =√

= √ = √

= 0

0

r(2,1) =√

= √ = √

= 0

r(2,2) =√

= √ = √

= 0

r(2,3) =√

= √ = √

= 1

r(2,4) =√

= √ =

= √ = 1

1

r(3,1) =√

= √ = √

= 0

r(3,2) =√

= √ = √

= 1

r(3,3) =√

= √ = √

= √ = 1

r(3,4) =√

= √ = √

= √ = 1

1

r(4,1) =√

= √ = √

= 0

r(4,2) =√

= √ = √

= √ = 1,4 = 1

r(4,3) =√

= √ = √

= √ = 0

r(4,4) =√

= √ = √ = √ = 1,4 = 1 1

0 0 1 1 0

Deteksi TepiOperator Robert = ||

| |


(35)

16

1.4 Pengenalan Pola (Pattern Recognition)

Pengenalan pola merupakan suatu proses yang dilakukan untuk mengelompokkan atau mengklasifikasikan data numerik dan simbol. Banyak teknik statistik dan sintaksis yang telah dikembangkan untuk keperluan klasifikasi pola dan teknik-teknik ini dapat memainkan peran yang penting dalam sistem visual untuk pengenalan objek yang biasanya memerlukan banyak teknik. Bantuk-bentuk objek tertentu dalam dunia nyata yang sangat kompleks dapat dibandingkan dengan pola-pola dasar di dalam citra sehingga penggolongan objek yang bersangkutan dapat dilakukan lebih mudah [1].

Gambar 2.6 Pengenalan Pola [3]

Adapun penjelasan seperti Gambar 2.6 adalah:

1. Prapengolahan

Proses awal yang dilakukan untuk memperbaiki kualitas citra (image enhacement) dengan menggunakan teknik-teknik yang ada [3]. Pada pola batik berguna memisahkan gambar batik dengan latar belakangnya dan tahap ini akan memproses data dengan mengubah citra batik menjadi grayscale [13].

2. Ekstrasi Ciri

Proses mengambil ciri-ciri yang terdapat pada objek di dalam citra. Pada proses ini objek di dalam citra dihitung properti-properti objek yang berkaitan sebagai ciri. Untuk tahap ini citra batik dilakukan dengan mengubah citra grayscale ke citra thresholding dan deteksi tepi operator Robert.


(36)

3. Klasifikasi

Proses pengelompokan objek ke dalam kelas yang sesuai pada saat pelatihan. Pada penelitian ini untuk pengujian akan menggunakan klasifikasi dengan metode K-Nearest Neighbor menggunakan Euclidean Distance untuk menghitung jarak terdekat dalam metode klasifikasi.

4. Pemilihan Ciri

Proses memilih ciri pada suatu objek agar diperoleh ciri yang optimum, yaitu ciri yang dapat membedakan suatu objek dengan objek lainnya sesuai berdasarkan hasil ekstraksi ciri.

5. Pembelajaran

Proses belajar membuat aturan klasifikasi sehingga jumlah kelas yang tumpang tindih dibuat sekecil mungkin


(37)

18

1.5 Format File Citra

1.5.1 JPEG (Joint Photographic Expert Group)

JPG atau JPEG ( Joint Photographic Experts Group) adalah format file yang paling umum digunakan dalam digital fotografi. Format ini mendukung kedalaman warna 24 bit (3 saluran warna masing-masing 8 bit). Hampir setiap kamera digital mampu membaca gambar menggunakan format ini dan secara luas dapat dibaca oleh program penampil gambar lainnya. Format citra JPG menghasilkan ukuran file kecil menggunakan kompresi lossy. Setiap kali menyimpan gambar dalam format ini, kualitas degradasi menurun karena kompresi lossy tersebut. Kompresi Lossy (Lossy Compression) adalah metode memperkecil ukuran file citra dengan membuang beberapa data, hal ini menyebabkan adanya sedikit penurunan kualitas citra. JPEG merupakan teknik dan standar universal untuk kompresi dan dekompresi citra tidak bergerak yang digunakan pada kamera digital dan sistem pencitraan dengan menggunakan komputer [10].


(38)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1Analisis Sistem

Analisis sistem adalah penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatann yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikan. Analisis sistem terdiri dari tiga tahapan yaitu analisis permasalahan, analisis kebutuhan dan analisis proses.

3.1.1 Analisis Permasalahan

Batik adalah salah satu unsur kebudayaan yang dimiliki oleh Indonesia. Batik memiliki berbagai macam motif dan coraknya dimana setiap daerah memiliki motif yang berbeda-beda. Bahkan dalam satu daerah mempunyai banyak motif yang dalam pembuatan motif itu sendiri memiliki asal usul dan arti tersendiri bagi daerah tersebut. Maka dibutuhkan suatu sistem yang bisa mengenali pola ciri khas motif batik suatu daerah dan penulis membahas mengenai motif batik dari daerah Bengkulu. Permasalahan yang dianalisis dalam sistem ini adalah bagaimana mengklasifikasikan motif batik besurek Bengkulu.

Diagram Ishikawa berikut akan menjelaskan sebab dan akibat dalam permasalahan tersebut yang diperlihatkan pada gambar 3.1

Belum ada pengklasifikasian

motif Batik Besurek Bengkulu

secara komputerisasi

People Method

Machine/Tools Material

kemampuan mengenali motif batik Besurek Bengkulu

kurang baik

buku Sistem tradisional

Belum ada aplikasi Motif kurang jelas


(39)

19

3.1.2 Analisis Kebutuhan

Analisis kebutuhan sistem meliputi analisis kebutuhan fungsional dan analisis kebutuhan non-fungsional sistem

3.1.2.1 Analisis Kebutuhan Fungsional Sistem

Kebutuhan fungsional yang harus dimiliki oleh sistem klasifikasi motif Batik Besurek Bengkulu antara lain sebagai berikut:

1. Sistem dapat membaca pilihan motif dan menampilkan gambar motif dalam bentuk format .jpg atau .jpeg yang akan dilatih.

2. Sistem dapat melakukan pelatihan dengan pemrosesan threshold dan deteksi tepi Robert serta menyimpan pola ekstraksi ciri dalam bentuk file *.xls atau *.xlxs. 3. Sistem dapat melakukan klasifikasi motif batik dengan metode K-Nearest

Neighbor dalam pengujian berdasarkan data pelatihan.

4. Sistem dapat menampilkan hasil pengenalan pola yaitu nama klasifikasi motif dan waktu pengujian yang dilakukan

3.1.2.2 Analisis Kebutuhan Non-Fungsional Sistem

Adapun kebutuhan non-fungsional sistem adalah persyaratan yang harus dilakukan sistem. Dalam sistem Klasifikasi Motif Batik Besurek Bengkulu dengan algoritma K-Nearest Neighbor untuk kebutuhan non-fungsional yang harus dipenuhi adalah sebagai berikut:

1. Performa

Sistem yang akan dibangun harus dapat menunjukkan hasil proses klasifikasi motif Batik Besurek Bengkulu yang sesuai.


(40)

2. Mudah dipelajari dan digunakan

Sistem yang dibangun harus menarik dan mudah dimengerti oleh pengguna.

3. Dokumentasi

Sistem yang dibangun dapat menyimpan data hasil pelatihan dan menampilkan hasil pengujian berupa klasifikasi dan waktu pemrosesan untuk motif Batik Besurek Bengkulu.

4. Kontrol

Sistem yang dibangun memiliki beberapa kontrol untuk melakukan suatu fungsi misalnya user harus terlebih dahulu menginputkan citra threshold sehungga button

deteksi tepi Robert dari embed menjadi enable, pesan “berhasil” jika data masukan berupa matriks vektor sudah disimpan.

5. Hemat Biaya

Sistem yang dibangun tidak memerlukan perangkat tambahan dalam proses eksekusinya.

3.1.3 Analisis Proses

Pada penelitian sistem Implementasi Algoritma K-Nearest Neighbor untuk mengklasifikasikan motif batik besurek Bengkulu ini analisis proses yang digunakan adalah use case diagram, activity diagram, dan sequence diagram.

3.1.3.1 Use case Diagram

Use case diagram adalah diagram yang menggambarkan interaksi antara sistem dengan sistem eksternal dan pengguna. Aktor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi [13]. Dalam pemodelan ini terdapat aktor yaitu


(41)

21

Sistem Implementasi Algoritma K-NN untuk

Mengklasifikasikan Motif Batik Besurek

Bengkulu

User

Pelatihan

Pengujian

Gambar 3.2 Use Case Diagram

3.1.3.1.1 Use Case Pelatihan Sistem

Use Case pelatihan sistem ini menjelaskan spesifikasi dari pelatihan yang akan dibangun seperti pada Tabel 3.1

Tabel 3.1 Spesifikasi Use Case Pelatihan Nama Use Case Pelatihan Motif Batik Besurek Bengkulu

Aktor User

Deskripsi Melakukan proses pelatihan motif batik besurek Bengkulu

Pra-Kondisi Berada pada interface menu Pelatihan

Alur Dasar

Kegiatan Pengguna Respon Sistem

1. Pengguna memilih tombol menu pelatihan

1. Sistem merespon dengan menampilkan menu yang dipilih pengguna 2. Pengguna memilih

jenis motif batik yang ingin dilatih

2. Sistem menampilkan 4 jenis motif batik pilihan dalam bentuk pop-up


(42)

tombol Load gambar batik sesuai jenis motif yang sudah dipilih ke dalam axes 1 sampai axes 3

4. Pengguna menentukan nilai threshold

4. Sistem mengubah citra batik ke citra grayscale

dan mengubah ke citra biner sesuai nilai

threshold yang dipilih dalam axes 6 sampai 8

5. Pengguna memilih tombol deteksi tepi

Robert

5. Sistem melakukan deteksi tepi dari hasil citra threshold yang kemudian ditampilkan ke axes 6 sampai axes 8 kembali dan sistem menyimpan hasil matriks vektor pelatihan ke database

Alur Alternatif Pengguna memilih tombol

Reset

Sistem menghapus citra dari axes 1-3 dan axes 6-8

Post-Kondisi Sistem telah menyimpan vektor ekstraksi ciri hasil dari pelatihan

3.1.3.1.2 Use Case Pengujian Sistem

Use Case pengujian sistem ini menjelaskan spesifikasi dari pengujian yang akan dibangun sepert pada Tabel 3.2


(43)

23

Nama Use Case Pengujian Motif Batik Besurek Bengkulu

Aktor User

Deskripsi Melakukan proses pengujian motif batik besurek Bengkulu

Pra-Kondisi Berada pada interface menu pengujian

Alur Dasar

Kegiatan Pengguna Respon Sistem

1. Pengguna

memilih tombol pengujian

1. Sistem merespon dengan menampilkan menu yang dipilih pengguna

2. Pengguna

memilih tombol Buka

2. Sistem menampilkan antarmuka pemilihan citra motif batik besurek Bengkulu yang akan diuji dan ditampilkan di axes 1

3. Pengguna menentukan nilai threshold

dan tombol deteksi tepi

3. Sistem melakukan proses

threshold dan deteksi tepi

Robert terhadap citra di axes 1 lalu hasil matriks vektor disimpan

4. Pengguna memilih nilai K

4. Sistem melakukan proses sesuai nilai K yang dipilih.

5. Pengguna

memilih tombol Kenali

5. Sistem melakukan proses pengenalan yaitu klasifikasi berdasarkan nilai K dan metode K-NN terhadap citra di axes 1


(44)

Post-Kondisi Sistem menampilkan hasil pengujian yaitu klasifikasi dan waktu pengujian

3.1.3.2 Activity Diagram

Activity Diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi dan bagaimana berakhir. Activity Diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Berikut activity diagram pelatihan dan pengujian yang ditunjukkan pada gambar 3.3 dan gambar 3.4

3.1.3.2.1 Activity Diagram Pelatihan

SISTEM AKTOR

Pilih Motif

Relung Paku

Bunga Rafflesia

Burung Kuau

Rembulan

Yes

Yes

Yes No

No

No

Load Menampilkan citra motif yang dipilih ke axes 1-3

Tentukan nilai threshold

Melakukan threshold pada citra dan ditampilkan ke axes 6-8

Pilih deteksi tepi Robert

Melakukan deteksi tepi pada citra threshold Dan ditampilkan ke axes6-8

Simpan hasil matriks vektor deteksi tepi ke dalam database(*.xlxs)

Gambar 3.3 Activity Diagram Pelatihan 3.1.3.2.2 Activity Diagram Pengujian


(45)

25

SISTEM AKTOR

Pilih Buka Menampilkan pilihan citra motif batikDan dimasukan ke axes1

Tentukan nilai threshlod

Melakukan threshold pada citra dan ditampilkan di axes1

Pilih deteksi tepi

Melakukan deteksi tepi pada citra hasil threshold dan disimpan ke database

Pilih nilai K

Melakukan pengujian terhadap citra

Menampilkan hasil pengujian yaitu klasifikasi dan kecepatan waktu

proses pengujian Membaca nilai K yang dipilih

Pilih Kenali

Gambar 3.4 Activity Diagram Pengujian


(46)

Sequence Diagram (diagram urutan) adalah suatu diagram yang memperlihatkan atau menampilkan interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah urutan atau rangkaian waktu [13]. Interaksi antar objek tersebut termasuk pengguna, display, dan sebagainya berupa pesan/message. Berikut sequence diagram

pelatihan dan pengujian yang ditunjukkan pada gambar 3.5 dan gambar 3.6

3.1.3.3.1 Sequence Diagram Pelatihan

User

Load Threshold

Pilih jenis motif batik

tampilkan citra batik

Proses grayscale dan threshold citra

tampilkan citra threshold

proses deteksi tepi

Deteksi Tepi Robert

tampilkan citra deteksi tepi

Penyimpanan

simpan matriks vektor

Gambar 3.5 Sequence Diagram Pelatihan


(47)

27

User

Input Citra Threshold

pilih citra batik

tampilkan citra batik

Proses grayscale dan threshold citra

tampilkan citra threshold

proses deteksi tepi

Deteksi Tepi Robert

tampilkan citra deteksi tepi

Metode K-NN

Klasifikasi K-NN

Nilai K

Tampilkan hasil klasifikasi dan waktu pemrosesan citra uji

Gambar 3.6 Sequence Diagram Pengujian

3.2 Perancangan Sistem

3.2.1 Flowchart Sistem

Flowchart merupakan diagram alir dari bagan-bagan tertentu yang memiliki arus penggambaran mengenai langkah-langkah penyelesaian suatu permasalahan. Pada sistem yang dibangun ini terdapat beberapa proses yang akan direpresentasikan dengan flowchart,

seperti proses pelatihan, ekstraksi ciri dan pengujian.

3.2.1.1 Flowchart Proses Pelatihan

Pelatihan adalah proses untuk memperoleh hasil ekstraksi ciri guna membentuk kelas klasifikasi. Proses pelatihan dapat dilihat pada Gambar 3.7


(48)

Mulai

Citra Latih

Ekstraksi Ciri

Matriks Vektor Ekstraksi

Ciri

Selesai

Gambar 3.7 Flowchart Proses Pelatihan 3.2.1.2 Flowchart Subproses Ekstraksi Ciri

Proses dimana citra yang telah di inputkan akan di ekstraksi cirinya sehingga menghasilkan nilai vektor matriks yang disimpan sebagai kelas klasifikasi ke database

dalam bentuk file *.xlx atau *.xlxs dan nantinya data tersebut dalam pengujian digunakan untuk mencari klasifikasi tetangga terdekat. Diagram alir untuk subproses ekstraksi ciri dapat dilihat pada Gambar 3.8

Ekstraksi Ciri

Tentukan nilai

Threshold

Deteksi Tepi Robert


(49)

29

3.2.1.3 Flowchart Proses Pengujian

Pengujian adalah proses dimana sistem melakukan klasifikasi motif batik berdasarkan hasil pelatihan terhadap citra latih. Citra yang akan diuji adalah citra latih dan citra diluar dari citra dilatih. Hal ini dilakukan untuk menentukan kecepatan dan ketepatan dari masing-masing nilai K sehingga dapat diperoleh nilai K yang terbaik dengan menggunakan metode K-Nearest Neighbor dan dalam menentukan jarak ketetanggaan digunakan rumus Euclidean Distance. Proses pengujian dapat dilihat pada Gambar 3.9

Mulai

Citra Uji Citra Latih

Citra diluar Citra Latih

Ekstraksi Ciri

Selesai Nilai K

Hitung Euclidean Distance

Menentukan citra terdekat sesuai nilai K

dua/lebih jumlah anggota

kelas sama?

Menghitung jarak rata-rata setiap kelas yang sama

Menentukan kelas dengan jarak

rata-rata terkecil

No Yes

Yes

No Matriks

Vektor Ekstraksi

Ciri


(50)

Perancangan antarmuka pemakai (interface) bertujuan untuk memberikan tampilan-tampilan halaman pada sistem yang digunakan oleh pengguna. Terdapat beberapa halaman yang dimiliki oleh sistem, diantaranya Beranda, Bantuan, Pelatihan, Pengujian, dan Keluar.

3.2.2.1Perancangan Antarmuka Beranda

Halaman Beranda adalah halaman utama yang terbuka pertama kali dalam sistem seperti yang terlihat pada gambar 3.10

Beranda 1 Bantuan 2 Pelatihan 3 Pengujian 4 Keluar 5

Text

Axes 1

Text 7

6

6

Axes 2 Axes 3

8 8

Gambar 3.10 Tampilan Rancangan Antarmuka Beranda Keterangan :

1. Menu Beranda

Berisi menu pada Beranda yang dibuat. 2. Menu Bantuan

Berisi mengenai langkah-langkah dalam menggunakan sistem bagi user.

3. Menu Pelatihan

Berisi menu pada Pelatihan yang dibuat. 4. Menu Pengujian

Berisi menu pada Pengujian yang dibuat. 5. Menu Keluar


(51)

31 6. Text

Berisi tentang text informasi mengenai sistem. 7. Axes 1

Berisi gambar logo Fakultas Ilmu Komputer dan Teknologi Informasi USU. 8. Axes 2 dan axes 3

Berisi gambar batik Besurek Bengkulu.

3.2.2.2Perancangan Antarmuka Bantuan

Halaman Bantuan berisi mengenai langkah-langkah bagi pengguna dalam menggunakan sistem seperti yang terlihat pada gambar 3.11

Beranda 1 Bantuan 2 Pelatihan 3 Pengujian 4 Keluar 5

List Box

6

Gambar 3.11 Tampilan Rancangan Antarmuka Bantuan

Keterangan:

1. Menu Beranda


(52)

Berisi mengenai langkah-langkah dalam menggunakan sistem bagi user.

3. Menu Pelatihan

Berisi menu pada Pelatihan yang dibuat. 4. Menu Pengujian

Berisi menu pada Pengujian yang dibuat. 5. Menu Keluar

Berisi menu keluar dari sistem seluruhnya. 6. List Box

Berisi text informasi mengenai langkah-langkah menggunakan sistem.

3.2.2.3Perancangan Antarmuka Pelatihan

Halaman Pelatihan ini untuk memproses citra batik yang akan dilatih dan menyimpan hasil ekstraksi ciri citra tersebut. Tampilan rancangan halaman Pelatihan seperti pada gambar 3.12

Beranda 1 Bantuan 2 Pelatihan 3 Pengujian 4 Keluar 5

Pop-Up Menu (pilih motif batik)

Load

Axes1 Axes2 Axes3

Deteksi Tepi Robert Axes6 Reset 11 10 9 8 8 8 7 6 13 12

11 11

S L I D E R

Axes7 Axes8

S L I D E R S L I D E R

Text1 Text2 Text3

9 9

10 10

Gambar 3.12 Tampilan Rancangan Antarmuka Pelatihan

Keterangan:


(53)

33 Berisi mengenai langkah-langkah dalam menggunakan sistem bagi user.

3. Menu Pelatihan

Berisi menu pada Pelatihan yang dibuat. 4. Menu Pengujian

Berisi menu pada Pengujian yang dibuat. 5. Menu Keluar

Berisi menu keluar dari sistem seluruhnya. 6. Pop-up Menu

Berisi menu yang menampilkan jenis motif batik. 7. Button Load

Untuk memanggil citra batik yang sudah dipilih berdasarkan jenisnya. 8. Axes 1 sampai axes 3

Untuk menampilkan citra batik RGB sesuai dengan jenis motifnya. 9. Axes 6 sampai axes 8

Untuk menampilkan citra batik baik citra threshold dan citra deteksi tepi. 10.Slider

Berfungsi untuk mengatur nilai threshold

11.Text

Berisi informasi text yaitu nilai threshold 12.Button Deteksi Tepi Robert

Untuk mendeteksi tepi citra hasil threshold dengan deteksi tepi Robert kemudian ditampilkan kembali ke axes 6 sampai axes 8 kemudian hasil ekstraksi ciri berupa matriks vektor disimpan ke database dalam format *.xls

13.Button Reset

Untuk menghapus kembali semua gambar di Axes.

3.2.2.4Perancangan Antarmuka Pengujian

Halaman Pengujian ini merupakan halaman yang digunakan user untuk melakukan pengujian terhadap motif batik Besurek Bengkulu. Tampilan rancangan halaman Pengujian seperti pada gambar 3.13


(54)

Beranda 1 Bantuan 2 Pelatihan 3 Pengujian 4 Keluar 5

Axes 1

Buka

Deteksi Tepi

Hapus

Pop-up Menu (pilih nilai K)

Kenali

Klasifikasi : Text1

Waktu : Text2

6 7 8 11 12 13 14 15 S L I D E R Text3 9 10

Gambar 3.13 Tampilan Rancangan Antarmuka Pengujian Keterangan :

1. Menu Beranda

Berisi menu pada Beranda yang dibuat. 2. Menu Bantuan

Berisi mengenai langkah-langkah dalam menggunakan sistem bagi user.

3. Menu Pelatihan

Berisi menu pada Pelatihan yang dibuat. 4. Menu Pengujian

Berisi menu pada Pengujian yang dibuat. 5. Menu Keluar

Berisi menu keluar dari sistem seluruhnya. 6. Axes 1

Berfungsi untuk menampilkan citra batik. 7. Slider

Berfungsi untuk mengatur nilai threshold

8. Text3


(55)

35 Berfungsi untuk mengambil citra batik yang akan diuji.

10.Button Deteksi Tepi

Berfungsi untuk melakukan deteksi tepi pada axes 1 dan simpan matriks vektor 11.Pop-up Menu

Berfungi untuk menentukan nilai K yang akan mempengaruhi batas jarak ketetanggaan dalam klasifikasi

12.Button Kenali

Berfungsi untuk melakukan klasifikasi dan mengenali citra batik yang diuji sesuai metode K-NN.

13.Text 1

Berfungsi untuk menampilkan nama klasifikasi citra batik. 14.Text 2

Berfungsi untuk menampilkan kecepatan waktu pemrosesan pengujian dari citra batik yang diuji.

15.Button Hapus

Berfungsi untuk menghapus informasi dalam axes dan text

3.2.2.5Perancangan Antarmuka Keluar

Halaman keluar merupakan halaman yang digunakan user untuk keluar dari sistem. Pada tampilan rancangan halaman Keluar seperti pada gambar 3.14

Beranda 1 Bantuan 2 Pelatihan 3 Pengujian 4 Keluar 5

Text Keluar

Ya 8 Tidak 9 Axes 1

6

7


(56)

Keterangan:

1. Menu Beranda

Berisi menu pada Beranda yang dibuat. 2. Menu Bantuan

Berisi mengenai langkah-langkah dalam menggunakan sistem bagi user.

3. Menu Pelatihan

Berisi menu pada Pelatihan yang dibuat. 4. Menu Pengujian

Berisi menu pada Pengujian yang dibuat. 5. Menu Keluar


(57)

37 6. Axes 1

Berisi logo question mark. 7. Text

Berisi informasi pilihan pada menu Keluar. 8. Button “Ya”

Memberi konfimasi user kepada sistem untuk menutup aplikasi. 9. Button “Tidak”


(58)

BAB IV

IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi Sistem

Implementasi sistem untuk mengkasifikasikan motif batik Besurek Bengkulu ini menggunakan algoritma K-Nearest Neighbor dan ekstraksi ciri menggunakan threshold

serta deteksi tepi Robert. Sistem ini dibangun mengunakan bahasa pemrograman Matlab R2009a dan Microsoft Excel 2010 sebagai tempat penyimpanan data yang sudah diolah.

4.1.1 Tampilan Antarmuka Sistem

Pada sistem ini diimplementasikan ke dalam beberapa tampilan yang terdiri dari antarmuka Beranda, Bantuan, Pelatihan, Pengujian, dan Keluar.

4.1.1.1 Tampilan Antarmuka Beranda

Beranda merupakan halaman yang akan muncul pertama kali saat program dijalankan. Terdapat lima menu pada halaman Beranda, yaitu menu Beranda, menu Bantuan, menu Pelatihan, menu Pengujian, dan menu Keluar. Tampilan Beranda dapat dilihat pada gambar 4.1


(59)

39 Bantuan merupakan halaman yang akan membantu user dalam menggunakan sistem. Di dalam menu Bantuan terdapat langkah-langkah penggunaan Pelatihan dan Pengujian. Tampilan Bantuan dapat dilihat pada gambar 4.2

Gambar 4.2 Tampilan Antarmuka Bantuan 4.1.1.3 Tampilan Antarmuka Pelatihan

Antarmuka Pelatihan merupakan tempat motif batik Besurek Bengkulu yang akan dilatih yaitu terdiri dari 3 sampel citra untuk masing-masing motif sehingga dengan 4 jenis motif maka total citra latih sebanyak 12 sampel citra. Pop-up menu jika diklik akan menampilkan pilihan 4 jenis motif, lalu jika button Load diklik menampilkan 3 citra batik sesuai dengan jenis motif yang sudah dipilih sebelumnya. Pada antarmuka pelatihan juga terdapat menu lain untuk dapat menghubungkan antarmuka pelatihan dengan antarmuka yang lain seperti menu


(60)

beranda, menu bantuan, menu pengujian,dan menu keluar. Tampilan antarmuka pelatihan ditunjukkan pada gambar 4.3

Gambar 4.3 Tampilan Antarmuka Pelatihan

Tampilan antarmuka pelatihan pada saat salah satu jenis motif dipilih dan button Load

diklik ditunjukkan pada gambar 4.4


(61)

41 Pada antarmuka Pelatihan terdapat panel ekstraksi ciri yang terdiri dari slider threshold

untuk masing-masing citra dan button deteksi tepi Robert. Untuk ekstraksi ciri digunakan secara berurutan dimulai dari tentukan nilai threshold menggunakan slider threshold

untuk melakukan threshold tiap citra kemudian button deteksi tepi Robert. Slider threshold berfungsi untuk mengubah citra batik besurek Bengkulu RGB menjadi

grayscale lalu diubah ke citra biner. Tampilan antarmuka untuk hasil slider Threshold

ditunjukkan pada gambar 4.5

Gambar 4.5 Tampilan Antarmuka Pelatihan setelah Slider Threshold diklik Selanjutnya citra batik yang sudah di threshold akan di deteksi tepi menggunakan deteksi tepi Robert dan citra batik besurek yang sudah siap diolah akan disimpan datanya berupa matriks vektor ke dalam database Data.xlxs. Setelah matriks vektor disimpan, maka diberi informasi seperti yang ditunjukkan pada gambar 4.6


(62)

Message Box Berhasil “Data disimpan” merupakan tanda dimana data telah disimpan ke

dalam tempat penyimpanan yaitu Data.xlxs yang berada pada Microsoft Office Excel

2010. Tampilan antarmuka penyimpanan matriks vektor tersebut dapat ditunjukkan seperti tampilan gambar 4.7

Gambar 4.7 Tampilan Penyimpanan Matriks Vektor

Pada antarmuka Pelatihan terdapat satu button Reset yang fungsinya untuk menghapus citra batik besurek yang terdapat di axes 1 sampai axes 3 dan axes 6 sampai axes 8 seperti yang ditunjukkan pada gambar 4.8


(63)

43

4.1.1.4 Tampilan Antarmuka Pengujian

Antarmuka pengujian adalah tampilan dimana dilakukannya pengujian terhadap citra batik besurek Bengkulu untuk menentukan termasuk klasifikasi motifnya. Dalam tampilan antarmuka pengujian terdapat juga menu yang dapat menghubungkan antarmuka pengujian dengan tampilan antarmuka yang lain seperti menu beranda,bantuan,pelatihan, dan keluar. Tampilan antarmuka pengujian ditunjukkan pada gambar 4.9

Gambar 4.9 Tampilan Antarmuka Pengujian

Untuk melakukan pengujian terhadap citra batik besurek, klik button/tombol Buka, maka akan muncul tampilan Buka File Motif Batik seperti yang ditunjukkan pada gambar 4.10


(64)

Kemudian dari beberapa pilihan jenis motif, setelah gambar dipilih maka citra batik besurek akan ditampilkan pada axes 1 seperti yang ditunjukkan pada gambar 4.11

Gambar 4.11 Tampilan Antarmuka Pengujian setelah dimasukkan citra

Selanjutnya citra yang sudah dimasukkan terlebih dahulu harus di threshold lalu di deteksi tepi sehingga hasilnya berupa matriks vektor disimpan dan data tersebut akan digunakan dalam pengujian seperti yang ditunjukkan pada gambar 4.12

Gambar 4.12 Tampilan Antarmuka Pengujian setelah Threshold dan Deteksi Tepi Robert


(65)

45 Setelah data disimpan, pilih nilai K dimana nilai ini berfungsi untuk menentukan jarak tetangga terdekat data uji ke semua data latih dan menentukan klasifikasi dengan jumlah kelas terbanyak. Pada contoh ini nilai K yang dipilih adalah 1 seperti yang ditunjukkan pada gambar 4.13

Gambar 4.13 Tampilan Antarmuka Pengujian untuk memilih nilai K

Selanjutnya setelah dipilih nilai K=1, klik button/tombol Kenali maka pengujian akan ditampilkan nama klasifikasi dan kecepatan waktu pemrosesan seperti yang ditunjukkan pada gambar 4.14


(66)

Berikutnya pengujian dengan citra uji yang sama namun nilai K = 3, klik button/tombol Kenali maka hasil pengujian seperti yang ditunjukkan pada gambar 4.15

Gambar 4.15 Tampilan Antarmuka Pengujian dengan nilai K=3

Kemudian pengujian dengan citra uji yang sama namun nilai K = 5, klik button/tombol Kenali maka hasil pengujian seperti yang ditunjukkan pada gambar 4.16


(67)

47 Selanjutnya pengujian dengan citra uji yang sama namun nilai K = 7, klik button/tombol Kenali maka hasil pengujian seperti yang ditunjukkan pada gambar 4.17

Gambar 4.17 Tampilan Antarmuka Pengujian dengan nilai K=7 4.1.1.5 Tampilan Antarmuka Keluar

Antarmuka keluar merupakan tampilan antarmuka untuk konfirmasi keluar dari aplikasi atau tidak. Jika ingin keluar dari aplikasi maka klik button “Ya” , jika masih tetap ingin

menggunakan aplikasi klik button“Tidak”. Tampilan antarmuka keluar ditunjukkan pada

gambar 4.18


(68)

4.2 Pengujian Sistem

Pengujian sistem yang dilakukan bertujuan untuk menguji keberhasilan dalam mengklasifikasikan motif batik besurek Bengkulu dengan berdasarkan nilai threshold,

metode deteksi tepi Robert dan K-Nearest Neighbor dengan menggunakan citra batik besurek Bengkulu sebesar 100x100 piksel. Pengujian ini untuk mengenali citra motif batik besurek yang sudah dilatih dan citra yang belum dilatih menggunakan nilai rata-rata threshold dari setiap citra. Berikut ini data motif citra batik besurek Bengkulu baik citra yang dilatih dan citra diluar citra latih beserta nilai rata-rata threshold untuk setiap citra yangditunjukkan pada tabel 4.1 dan tabel 4.2

Tabel 4.1 Data Citra Latih

Motif Citra Range Threshold Rata-rata Threshold

Relung Paku 1 83-122 102

Relung Paku 2 88-110 99

Relung Paku 3 115-156 135

Bunga Rafflesia 1 130-172 150


(69)

49

Bunga Rafflesia 3 140-157 148

Burung Kuau 1 65-145 105

Burung Kuau 2 46-92 69

Burung Kuau 3 90-107 99

Rembulan 1 95-184 140

Rembulan 2 84-130 107


(70)

Tabel 4.2 Data Citra diluar Citra Latih

Motif Citra Range Threshold Rata-rata Threshold

Relung Paku 4 79-120 99

Relung Paku 5 67-163 115

Bunga Rafflesia 4 69-157 112

Bunga Rafflesia 5 156-179 168

Bunga Rafflesia 6 169-184 176

Bunga Rafflesia 7 140-161 150


(71)

51

Burung Kuau 5 92-144 117

Rembulan 4 101-125 112

Rembulan 5 41-143 92

Pada dasarnya metode K-Nearest Neighbor adalah sebuah metode untuk melakukan klasifikasi terhadap objek berdasarkan data latih yang jaraknya paling dekat dengan objek tersebut dan kelas klasifikasi dengan data terbanyak. Nilai K menentukan berapa data terdekat dari data uji. Berdasarkan gambar sebelumnya yaitu pada gambar 4.14, gambar 4.15, gambar 4.16 dan gambar 4.17 berikut ini adalah cara bagaimana mengetahui dan menentukan hasil klasifikasi berdasarkan nilai K yang berbeda. Hasil ekstraksi ciri berupa matriks vektor baik untuk data latih dan data uji yang ditunjukkan pada gambar 4.19


(72)

Setelah mendapatkan hasil matriks vektor, kemudian menghitung nilai Euclidean Distance antara nilai setiap matriks vektor data latih dengan nilai matriks vektor data uji. Setelah masing-masing nilai Euclidean Distance sudah didapat kemudian nilai tersebut diurutkan secara ascending (dari nilai terkecil sampai terbesar) beserta dengan kelasnya seperti yang ditunjukkan pada gambar 4.20

Gambar 4.20 Tampilan Hasil Ascending Euclidean Distance

Untuk nilai K=1 hasilnya adalah kelas Bunga Rafflesia dimana nilai jarak terdekat yaitu Bunga Rafflesia = 0. Nilai yang didapat adalah nol karena citra yang diujikan adalah citra yang sudah dilatih sebelumnya. Sama halnya dengan nilai K=3 hasilnya adalah kelas Bunga Rafflesia karena dari jarak tiga data terdekat hasil Ascending Euclidean Distance yaitu Bunga Rafflesia = 0, Relung Paku = 2647, dan Bunga Rafflesia = 3113. Dalam kasus ini terdapat dua buah kelas Bunga Rafflesia maka kelas Bunga Rafflesia adalah kelas dengan anggota terbanyak pada nilai K=3.

Berbeda halnya jika K = 5 dimana terdiri dari Bunga Rafflesia = 0, Relung Paku = 2647, Bunga Rafflesia = 3113, Relung Paku = 3299, dan Burung Kuau = 3354. Terlihat bahwa kelas Bunga Rafflesia dan Relung Paku memiliki jumlah anggota kelas terbanyak yang sama maka dicari nilai jarak rata-rata dari kedua kelas tersebut. Untuk kelas Bunga Rafflesia jarak rata-ratanya adalah 1556 dan kelas Relung Paku jarak rata-ratanya adalah 2973. Maka diambil jarak rata-rata terkecil untuk nilai K=5 yaitu klasifikasi Bunga


(1)

end

xlswrite('Data.xlsx',jumlah,'ED','B15');

S = xlsread('Data.xlsx','Motif','C16:NTR16'); panjang = length(S);

jumlah = 0;

for i = 1:panjang

jumlah = (S(1,i) - B(1,i))^2 + jumlah; end

xlswrite('Data.xlsx',jumlah,'ED','B16');

%untuk Ascending hasil Euclidean Distance dan kelas arrayA = xlsread('Data.xlsx','ED','B5:B16')

[numB,txtB,rawB] = xlsread('Data.xlsx','ED','A5:A16') arrayTemp = zeros(12,1)

[numD,txtD,rawD] = xlsread('Data.xlsx','ED','D5:D16') n = 12;

for i = n : -1 : 1 for j = 1 : i -1

if arrayA(j)>arrayA(j+1) temp = arrayA(j);

arrayA(j) = arrayA(j+1); arrayA(j+1) = temp; end

end end

arrayC = arrayTemp + arrayA disp(arrayC)

xlswrite('Data.xlsx',arrayC,'ED','C5:C16') arrayA = xlsread('Data.xlsx','ED','B5:B16') for i = 1:12

for j = 1:12

if arrayC(i) == arrayA(j) rawD(i) = rawB(j) end

end end

xlswrite('Data.xlsx',rawD,'ED','D5:D16') %K-NN

%ambil kolom, masukkan ke variabel rawD

[txtD, rawD] = xlsread('Data.xlsx','ED','D5:D16'); deretAngka = xlsread('Data.xlsx','ED','C5:C16'); k = get(handles.nilaik,'value');

if k == 1 k = 1 elseif k == 2 k = 3 elseif k == 3


(2)

k = 5 else k = 7 end

% variabel penampung data unique dari rawD dataA = {};

% variabel penampung jumlah dari setiap data unique di dataA dataIndA = [];

% variabel penampung data angka uniqe di dataA dataAngkaA = [];

for i = 1:k

% mengecek apakah elemen sudah ada dalam dataA exist = false;

panjangDataA = length(dataA); for j = 1:panjangDataA

% jika elemen sudah ada

if(strcmp(rawD(i), dataA(j)))

% nyatakan bahwa elemen sudah ada exist = true;

% jika elemen sudah eksis, maka naikkan jumlah elemen di dalam

% array dataIndA

dataIndA(j) = dataIndA(j) + 1;

dataAngkaA(j) = dataAngkaA(j) + deretAngka(i); end

end

% jika elemen belum ada, masukkan elemen baru ke dataA if(~exist)

dataA(end + 1) = rawD(i); % dan buat jumlah elemennya 1 dataIndA(end + 1) = 1;

dataAngkaA(end + 1) = deretAngka(i); %disp(deretAngka(i));

end end

panjang = length(dataIndA); maks = 1;

indeksTerbanyakElemen = 1;

% variabel penampung data angka uniqe di dataA %mencari rata-rata

for i = 1:panjang

if(dataIndA(i) > 1)

dataAngkaA(i) = dataAngkaA(i) / dataIndA(i); end

end

% mencari index yang berisi bilangan terbesar dalam dataIndA % yang berarti index tersebut memiliki elemen paling banyak for i = 1:panjang

if(dataIndA(i) > maks) maks = dataIndA(i);

indeksTerbanyakElemen = i; end


(3)

indeksNilaiTerkecil = indeksTerbanyakElemen;

%jika ada lebih dari 1 indeks yang memiliki terbanyak for i = 1:panjang

% jika yang dicek adalah indeks yang telah ditentukan, lanjutkan. if i == indeksTerbanyakElemen

continue; end

%jika ada indeks yang memiliki jumlah elemen sama if(dataIndA(i) == dataIndA(indeksTerbanyakElemen))

%maka indeks teratas adalah indeks dengan nilai rata-rata terkecil

if(dataAngkaA(i) < dataAngkaA(indeksTerbanyakElemen)) indeksNilaiTerkecil = i;

end end end

hasil = rawD(indeksNilaiTerkecil);

set(handles.klasifikasi,'String',hasil); guidata(hObject, handles);

waktupengujian = toc(tStart);

set(handles.waktu,'string',waktupengujian); set(handles.deteksitepi,'Enable','Off');

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

% --- Executes on selection change in nilaik.

function nilaik_Callback(hObject, eventdata, handles) set(handles.kenali,'Enable','on');

% hObject handle to nilaik (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: contents = get(hObject,'String') returns nilaik contents as cell array

% contents{get(hObject,'Value')} returns selected item from nilaik

% --- Executes during object creation, after setting all properties. function nilaik_CreateFcn(hObject, eventdata, handles)

% hObject handle to nilaik (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called


(4)

% Hint: popupmenu controls usually have a white background on Windows.

% See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in ekstraksiciri.

function ekstraksiciri_Callback(hObject, eventdata, handles) % hObject handle to ekstraksiciri (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in hapus.

function hapus_Callback(hObject, eventdata, handles) axes(handles.axes1);

imshow(1);

set(handles.slider2,'Value',0); set(handles.text9,'string',0); set(handles.nilaik,'Value',1);

set(handles.klasifikasi,'String','','Enable','on'); set(handles.waktu,'String','','Enable','on');

set(handles.deteksitepi,'Enable','Off'); set(handles.kenali,'Enable','Off'); % hObject handle to hapus (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% --- Executes on slider movement.

function slider2_Callback(hObject, eventdata, handles) thres = get(handles.slider2,'value');

handles.thres = round(thres); guidata(hObject, handles);

set(handles.text9,'string',handles.thres); citra_gray=rgb2gray(handles.citra);

citra_gray=double(citra_gray); [b k]= size(citra_gray);

for x=1:b for y=1:k

if citra_gray(x,y)<thres

citra_threshold_batik(x,y)=1; elseif citra_gray(x,y)>=thres citra_threshold_batik(x,y)=0; end

end end

citra_threshold_batik;

handles.citra_tres_batik1=citra_threshold_batik; guidata(hObject, handles);


(5)

axes(handles.axes1);

imshow(citra_threshold_batik);

set(handles.deteksitepi,'Enable','on');

% --- Executes during object creation, after setting all properties. function slider2_CreateFcn(hObject, eventdata, handles)

% hObject handle to slider2 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

% Hint: slider controls usually have a light gray background. if isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]); end

% --- Executes on button press in deteksitepi.

function deteksitepi_Callback(hObject, eventdata, handles) citra1=getimage(handles.axes1);

citra1rb=edge(citra1,'roberts',0.1); axes(handles.axes1);imshow(citra1rb); uji = double(getimage(handles.axes1)); motif = reshape(uji, 1, 10000);

xlswrite('Data.xlsx',motif,'Motif','C25');


(6)

CURICULUM VITAE

Nama

:

Westhyma Sibarani

Alamat

:

Jl.Pambangunan No.122,Kampus USU, Medan

Telp/Hp

:

082364509288

Email

:

westhyma@gmail.com

Pendidikan

1998-2004

:

SD Sint Carolus, Bengkulu

2004=2007

:

SMP Sint Carolus, Bengkulu

2007-2010

:

SMAK Sint Carolus, Bengkulu