• Tidak ada hasil yang ditemukan

Analisis Algoritma Backpropagation Levenberg Marquardit Untuk Pengenalan Motif Kain Batik

N/A
N/A
Protected

Academic year: 2017

Membagikan "Analisis Algoritma Backpropagation Levenberg Marquardit Untuk Pengenalan Motif Kain Batik"

Copied!
58
0
0

Teks penuh

(1)

ANALISIS ALGORITMA BACKPROPAGATION

LEVENBERG MARQUARDT UNTUK PENGENALAN

MOTIF KAIN BATIK

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

RONI AHDIAT

10111977

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(2)

iii

Assalamu’alaikum Wr. Wb.

Dengan memanjatkan puji syukur kehadirat Allah SWT, atas rahmat dan

karunia-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul

“ANALISIS ALGORITMA BACKPROPAGATION LEVENBERG

MARQUARDT UNTUK PENGENALAN MOTIF KAIN BATIK” untuk

memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di

Program Studi Teknik Informatika Fakultas Teknik dan Ilmu Komputer,

Universitas Komputer Indonesia.

Sehubungan dengan telah selesainya skripsi ini, penulis yakin bahwa skripsi

ini tidak akan berhasil tanpa doa, bimbingan, petunjuk dan dukungan dari

berbagai pihak yang terlibat dalam pembuatan skripsi ini. Untuk itu melalui kata

pengantar ini, penulis ingin menyampaikan terimakasih yang sebesar-besarnya

kepada:

1. Allah SWT atas segala nikmat yang telah diberikan sehingga penulis dapat

menyelesaikan skripsi ini.

2. Kedua orang tua beserta adik-adik yang telah memberikan kasih sayang, doa

dan dukungan baik moril maupun materi sehingga penulis dapat

menyelesaikan skripsi ini tepat pada waktunya.

3. Anike Dwi Putri Jefany yang selalu memberikan dukungan, doa, motivasi,

serta telah meluangkan waktunya untuk melakukan refreshing.

4. Bapak Galih Hermawan S.Kom., M.T., selaku dosen pembimbing penulis.

Terimakasih karena telah banyak meluangkan waktu untuk memberikan

bimbingan, saran, dan nasehatnya selama proses penyusunan skripsi ini.

5. Ibu Ken Kinanti Purnamasari S.Kom., selaku reviewer dan Ibu Nelly Indriani W, S.Si., M.T., selaku penguji.Terimakasih karena telah banyak meluangkan

waktu untuk memberikan pengarahan dan memberikan masukan selama

proses penyusunan skripsi ini.

6. Terimakasih kepada Theresia Sagala, Sri Susanti, Fitri Antriyanti, Faras

(3)

iv

pikiran, memberikan semangat, motivasi, dan membantu untuk berjalannya

penyusunan skripsi ini.

7. Bapak dan ibu dosen serta seluruh staf pegawai Program Studi Teknik

Informatika Universitas Komputer Indonesia yang telah membantu penulis

selama proses perkuliahan.

8. Teman-teman seperjuangan IF-17K/2011 yang sedang menyusun skripsi juga

yang selalu ada jika penulis membutuhkan bantuan dan selalu memberikan

dukungan kepada penulis selama penyusunan skripsi ini. 9. Rekan-rekan

kelas IF-17K /2011 yang selama empat tahun setengah ini menjadi teman

berbagi ilmu, tawa dan cerita.

9. Serta seluruh pihak yang tidak dapat penulis sebutkan satu persatu,

terimakasih atas segala bentuk dukungan untuk menyelesaikan skripsi ini.

Penulis menyadari bahwa penulisan skripsi ini masih jauh dari sempurna.

Oleh karena itu, penulis mengharapkan saran dan masukan yang bersifat

membangun untuk perbaikan dan pengembangan skripsi ini. Akhir kata,

semoga penulisan skripsi ini dapat bermanfaat bagi penulis khususnya dan

bagi pembaca umumnya.

Wassalamualaikum Wr.Wb.

Bandung, 1 Februari 2016

(4)

v

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... x

DAFTAR SIMBOL ... xi

DAFTAR LAMPIRAN ... xiv

BAB 1 ... 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 ... 3

1.5.2 Metode Pembangunan Perangkat Lunak ... 4

1.6. Sistematika Penulisan ... 5

BAB 2 ... 7

2.1. Batik ... 7

2.2. Pengolahan Citra ... 12

2.3. Kecerdasan Buatan ... 15

2.4. Jaringan Syaraf Tiruan ... 17

2.5. Algoritma Levenberg Marquardt ... 24

2.6. Inisialisasi Bobot Awal Dengan Metode Nguyen Widrow ... 25

2.7. Pengujian JST ... 26

2.8. Diagram Arus Data (Data Flow Diagram) ... 26

2.9. MATLAB ... 27

2.10. Cross Validation ... 30

BAB 3 ... 33

(5)

vi

3.2.1. Analisis Arsitektur Sistem ... 34

3.2.2. Analisis Pemrosesan ... 34

3.2.3. Analisis Data Masukan ... 37

3.2.4. Analisis Pra Proses ... 38

3.2.4.1. Resizing ... 38

3.2.4.2. Grayscale ... 39

3.2.4.3. Histogram Equalization ... 40

3.2.5. Analisis Pelatihan ... 44

3.2.5.1. Inisialisasi Bobot Menggunakan Nguyen Widrow ... 44

3.2.5.2. Pembentukan Jaringan Syaraf Tiruan ... 47

3.2.6. Analisis Pengujian ... 55

3.3. Analisis Kebutuhan Non Fungsional ... 57

3.3.1. Analisis Kebutuhan Perangkat Keras ... 58

3.3.2. Analisis Kebutuhan Perangkat Lunak ... 58

3.4. Analisis Kebutuhan Fungsional ... 58

3.4.1. Diagram Konteks ... 59

3.4.2. Data Flow Diagram (DFD) ... 59

3.4.3. Spesifikasi Proses ... 61

3.5. Perancangan ... 65

3.5.1. Perancangan Antarmuka ... 65

3.5.2. Perancangan Jaringan Semantik ... 68

BAB 4 ... 69

4.1. Implementasi ... 69

4.1.1. Implementasi Perangkat Keras ... 69

4.1.2. Implementasi Perangkat Lunak ... 69

4.1.3. Implementasi Antarmuka ... 70

4.2. Pengujian Metode... 70

4.2.1. Skenario Pengujian ... 71

4.3. Kesimpulan Pengujian ... 78

BAB 5 ... 79

(6)
(7)

81

[1] Anas, B. 1997. Indonesia Indah “Batik”. Jakarta: Yayasan Harapan

Kita/BP 3 TMII.

[2] Ariesto Hadi Sutopo. 2002. Analisis dan Desain Berorientasi Objek.

Penerbit J & J Learning : Yogyakarta.

[3] Bernardius Arisandi. 2011. Pengenalan Motif Batik Dengan Rotated Wavelet Filter dan Neural Network. Tugas Akhir periode Juli 2011. Surabaya: Jurusan Teknik Informatika, Fakultas Teknologi Informasi,

Institut Teknologi Sepuluh Nopember.

[4] Doellah, S. 2008. Batik “Pengaruh Zaman dan Lingkungan”. Bandung:

Danar Hadi.

[5] E. Alpaydin. 2010. Introduction to Machine Learning, The MIT Press. [6] Johanes Widagdho Yodha. 2014. Pengenalan Motif Batik menggunakan

Deteksi Tepi Canny dan K-Nearest Neighbor. Proceddings. Techno.COM, Vol. 13, No. 4, November 2014: 251-262. Semarang: Universitas Dian

Nuswantoro.

[7] Mohammed Alwakeel. 2010. Face Recognition Based on Haar Wavelet Transform and Principal Component Analysis via Levenberg-Marquardt Backpropagation Neural Network. Proceddings. European Journal of Scientific Research, vol 42(1), 25-31

[8] Nurhayati, John Adler, Sri Supatmi. 2013. Pengelompokkan Citra Warna Menggunakan Jaringan Syaraf Tiruan Dengan Software Matlab. Tugas Akhir. Bandung: Teknik Komputer Universitas Komputer Indonesia

[9] Nazarudin Ahmad dan Arifyanto Hadinegoro. 2012. Metode Histogram Equalization untuk Perbaikan Citra Digital. Proceddings. Seminar Nasional Teknologi Informasi & Komunikasi Terapan 2012 (Semantik 2012).

Semarang : Teknik Informatika Universitas Atma Jaya Yogyakarta.

(8)

Proceddings. Seminar Nasional Informatika 2012 (semnasIF 2012) UPN ”Veteran” Yogyakarta, 30 Juni 2012 Yogyakarta: Universitas Amikom. [11] Rinaldi Munir. 2004. Pengolahan Citra Digital dengan Pendekatan

Algoritmik. Penerbit Informatika : Bandung.

[12] Rosa A.S dan M. Shalahuddin. 2013. Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Penerbit Informatika: Bandung.

[13] Siswanto. 2005. Kecerdasan Tiruan. Penerbit Graha Ilmu : Yogyakarta [14] Sri Kusumadewi, 2004. Membangun Jaringan Syaraf Tiruan Menggunakan

MATLAB & Exel Link. Penerbit Graha Ilmu : Yogyakarta

[15] Sunda Ariana, Margareta Andriani, dan Andri. 2013. Prototipe Perangkat Lunak Analisis Kesalahan Berbahasa Dalam Karya Ilmiah Berbahasa Indonesia. Proceddings. Seminar Nasional Pendidikan “Mewujudkan

Pendidikan Berkualitas Melalui Kerangka Kualifikasi Nasional Indonesia.

Palembang : Universitas PGRI.

[16] Muhammad Arhami dan Anita Desiani. 2005. Pemrograman MATLAB.

Penerbit Andi : Yogyakarta.

[17] Tulus Bangkit Pratama, John Adler. 2013. Identifikasi Pola Warna Citra Google Maps Menggunakan Jaringan Syaraf Tiruan Metode Levenberg Marquardt Dengan Matlab Versi 7.8. Tugas Akhir Tahun 2013. Bandung : Jurusan Teknik Informatika, Fakultas Teknik dan Ilmu Komputer,

Universitas Komputer Indonesia.

[18] Wilamowski, Bogdan M., dan Yu, Hao. 2011. Levenberg-Marquardt Training. Industrial Electronics Handbook, 2nd Edition 5, 12-1 s/d 12-15. [19] Witten, Ian. H. 2011. Data Mining Practical Machine Learning Tools and

(9)

1

PENDAHULUAN

1.1.Latar Belakang Masalah

Batik merupakan budaya yang telah lama berkembang dan dikenal oleh

masyarakat Indonesia. Secara etimologi kata batik berasal dari bahasa Jawa, yaitu ”tik” yang berarti titik / matik (kata kerja, membuat titik) yang kemudian berkembang menjadi istilah ”batik” [1]. Motif batik di setiap daerah memiliki keunikan dan ciri khas masing-masing, baik dalam ragam hias maupun tata warna

batik itu sendiri. Salah satu cara untuk mengidentifikasi motif pada kain batik

yaitu melalui pengenalan pola. Penelitian mengenai pengenalan pola pada kain

batik sudah pernah dilakukan oleh Bernadinus Arisandi [3] dengan menggunakan

metode Rotated Wavelet Filter dan Neural Network Filter dengan hasil pada

penggunaan data training yang berbeda dengan data testing diperoleh akurasi tertinggi 78,26%. Selain itu juga sudah pernah dilakukan penelitian mengenai

pengenalan motif batik oleh Johanes Widagdho Yodha [6] dengan menggunakan

Deteksi Tepi Canny dan K-Nearest Neighbor dengan hasil pada penggunaan data

training yang berbeda dengan data testing diperoleh akurasi tertinggi 66,67%. Namun kedua penelitian tersebut hanya mengidentifikasi motif batik dasar, belum

mengidentifikasi motif batik campuran. Motif batik dasar merupakan batik klasik

yang tercipta sejak awal mula ada pembuatan batik. Motif batik campuran

merupakan gabungan antara dua motif batik dasar atau lebih.

Algoritma Levenberg Marquadt merupakan pengembangan dari algoritma

backpropagation. Algoritma ini dibangun untuk mengatasi beberapa kekurangan yang ada pada algoritma backpropagation dengan memanfaatkan teknik optimisasi numerik standar yaitu menggunakan pendekatan matriks Jacobian.

Tujuan dari Levenberg Marquadtadalah meminimalkan total error [8]. Algoritma Levenberg Marquardt telah diterapkan pada pengenalan pola wajah yang

dilakukan oleh Mohammed Alwakeel [7] dengan membandingkan algoritma

Levenberg Marquardt dengan algoritma Haar Wavelet Transform dan algoritma

(10)

Levenberg Marquardt lebih akurat, cepat, dan stabil dalam pengenalan pola wajah

dibandingkan algoritma Haar Wavelet Transform dan algoritma Principal

Component Analysis. Pada penelitian lain dilakukan oleh Tulus Bangkit Pratama

mengenai pengenalan pola warna citra google maps menggunakan algoritma Levenberg Marquardt [17] dengan hasil algoritma ini telah berhasil membuat pola

citra baru yang diidentifikasikan sebagai daerah daratan dan bukan daratan.

Dengan latar belakang masalah ini, maka akan dilakukan penelitian mengenai

algoritma Levenberg Marquardt yang akan diimplementasikan untuk

mengidentifikasi motif batik tidak hanya motif batik dasar, dapat juga

mengidentifikasi motif batik khusus atau campuran. Pada penelitian ini juga akan

diketahui tingkat akurasi penerapan algoritma Levenberg Marquardt terhadap

pengenalan motif batik.

1.2.Rumusan Masalah

Berdasarkan uraian latar belakang diatas maka dapat

dirumuskan permasalahan yang ada. Diantaranya adalah :

1. Bagaimana menerapkan algoritma Levenberg Marquardt dalam pengenalan

motif batik dasar dan campuran.

2. Bagaimana mengetahui tingkat keakuratan dalam pengenalan motif batik

dengan menggunakan algoritma Levenberg Marquardt.

1.3.Maksud dan Tujuan

Maksud dari penelitian ini yaitu untuk menganalisis tingkat keakuratan motif

batik pada kain batik dasar maupun motif khusus atau campuran. Adapun tujuan

dari penelitian ini adalah sebagai berikut :

1. Dapat mengidentifikasi motif dasar dan motif campuran dari batik dengan

menggunakan algoritma Levenberg Marquardt.

2. Untuk mengetahui tingkat keakuratan dalam pengenalan motif batik setelah

(11)

1.4.Batasan Masalah

Adapun batasan masalah dari tugas akhir ini antara lain adalah sebagai

berikut.

1. Metode pengenalan pola yang digunakan adalah metode Levenberg

Marquardt.

2. Jenis batik yang akan diidentifikasi sudah dalam bentuk citra berekstensi

*.jpg.

3. Ukuran batik yang digunakan yaitu semua ukuran, namun pada aplikasi akan

di-resize menjadi 25 x 25 piksel.

4. Motif batik yang akan digunakan dalam pengujian adalah batik parang,

ceplok, semen, lunglungan, dan buketan [4]. Adapun motif batik campuran

yang terdiri dari campuran dari dua motif batik saja. Motif tersebut antara lain

buketan ceplok, buketan lunglungan, buketan parang, buketan semen, ceplok

lunglungan, ceplok parang, ceplok semen, lunglungan parang, dan lunglungan

semen.

1.5.Metodologi Penelitian

Metode yang digunakan dalam penelitian ini adalah penelitian analisis

deskriptif, yaitu suatu jenis penelitian yang hanya menggambarkan fakta-fakta dan

informasi dalam situasi atau kejadian secara sistematis, faktual, dan akurat.

1.5.1 Metode Pengumpulan Data

Untuk mendapatkan data-data yang dibutuhkan dalam penelitian dilakukan

pengumpulan data dengan memakai metode deskriptif yaitu suatu metode dalam

meneliti status sekelompok manusia, suatu objek, suatu set kondisi, suatu sistem

pemikiran ataupun suatu kelas peristiwa pada masa sekarang. Tujuan dari

penelitian deskriptif ini adalah untuk membuat deskripsi, gambaran atau lukisan

secara sistematis, aktual dan akurat mengenai fakta-fakta, sifat-sifat serta

hubungan antar fenomena yang diselidiki. Metode pengumpulan data dilakukan

(12)

buku-buku, artikel, paper, jurnal, makalah, dan situs internet mengenai proses pengenalan pola dengan algoritma Levenberg Marquardt.

1.5.2 Metode Pembangunan Perangkat Lunak

Dalam penelitian ini metode pembangunan perangkat lunak yang akan

digunakan yaitu Prototype karena metode ini cocok untuk pengembangan perangkat lunak. Prototype adalah pengembangan yang cepat dan pengujian terhadap model kerja dari aplikasi baru melalui proses interaksi dan

berulang-ulang. Alur dari metode prototype dapat dilihat pada gambar dibawah ini.

Gambar 1. 1 Alur Metode Prototype [14]

Penjelasan dari alur metode prototype diatas adalah: a. Analisis Kebutuhan

Tahapan ini dilakukan untuk mengidentifikasi kebutuhan yang ada dalam

perangkat lunak yang akan dibangun. Identifikasi kebutuhan diperoleh

dari buku-buku, artikel, paper, jurnal, makalah, dan situs internet

mengenai algoritma Levenberg Marquardt dalam pengenalan pola.

b. Desain

Tahapan ini membuat rancangan proses perangkat lunak pengenalan motif

(13)

c. Prototipe

Pada tahapan ini dilakukan pembangunan perangkat lunak pengenalan

motif batik berdasarkan rancangan sebelumnya dengan menggunakan

bahasa pemrograman Matlab.

d. Pengujian

Tahapan ini melakukan pengujian perangkat lunak yang telah dibangun.

e. Evaluasi

Pada tahapan ini akan diperiksa output yang dihasilkan apakah sudah sesuai dengan rancangan atau belum. Jika belum, maka akan dilakukan

perbaikan sampai perangkat lunak sesuai dengan rancangan. Output yang diharapkan yaitu memperlihatkan akurasi dalam pengenalan motif batik

menggunakan algoritma Levenberg Marquardt

f. Penyesuaian

Tahapan ini dilakukan dengan menyesuaikan perbaikan-perbaikan yang

ada dari hasil evaluasi.

1.6.Sistematika Penulisan

Sistematika penulisan ini terdiri dari lima bab. Adapun susunannya adalah

sebagai berikut:

BAB I PENDAHULUAN

Bab ini membahas tentang latar belakang masalah, identifikasi masalah,

batasan masalah, maksud dan tujuan penelitian, kegunaan penelitian, serta

sistematika penelitian.

BAB II LANDASAN TEORI

Bab ini menjelaskan mengenai definisi teori-teori yang berkaitan dengan

makna tentang batik, motif batik, pengolahan citra, pengenalan pola, dan

pengertian mengenai algoritma Levenberg Marquardt.

BAB III ANALISIS DAN KEBUTUHAN ALGORITMA

Bab ini mencakup secara rinci menjelaskan mengenai analisis algoritma

(14)

BAB IV IMPLEMENTASI DAN PENGUJIAN

Bab ini menjelaskan tentang implementasi dan pengujian dari hasil analisis

dan perancangan dari bab sebelumnya.

BAB V KESIMPULAN DAN SARAN

Bab ini mengurai kesimpulan dari hasil analisis penelitian dan memaparkan

(15)

7

LANDASAN TEORI

2.1.Batik

Batik merupakan budaya yang telah lama berkembang dan dikenal oleh

masyarakat Indonesia. Secara etimologi kata batik berasal dari bahasa Jawa, yaitu

”tik” yang berarti titik / matik (kata kerja, membuat titik) yang kemudian

berkembang menjadi istilah ”batik” [1]. Motif batik di setiap daerah memiliki

keunikan dan ciri khas masing-masing, baik dalam ragam hias maupun tata warna

batik itu sendiri. Tradisi membatik awalnya merupakan tradisi turun menurun,

sehingga motif batikannya pun dapat dikenali dan menjadi motif khas di daerah

tertentu. Perkembangan batik di Indonesia memuncak pada tanggal 2 Oktober

2009 UNESCO saat ditetapkan bahwa batik adalah hak kebudayaan bangsa

Indonesia. Sehingga sampai sekarang batik bisa dikatakan sudah mendarah

daging, karena sering dipakai hampir dalam kegiatan Salah satu sarana bagi

kalangan muda Indonesia dalam mengenal budaya batik dapat berkunjung ke

Museum Tekstil yang berlokasi di Tanah Abang, Jakarta Pusat, sebagai lembaga

edukatif kultural untuk melestarikan budaya tekstil tradisional, salah satunya yaitu

batik.

Menurut H. Santosa Doellah [4] dalam bukunya yang berjudul “Batik:

Pengaruh Zaman Dan Lingkungan” motif batik terbagi menjadi dua bagian besar,

yaitu motif geometri dan non geometri. Pada motif geometri terbagi menjadi tiga

jenis yaitu motif parang, motif ceplok, dan motif lereng. Motif batik geometri

yang pertama yaitu motif parang. Motif parang merupakan motif yang memiliki

pola yang terdiri atas satu atau lebih ragam hias yang tersusun membentuk

(16)

Gambar 2.1 Motif Batik Parang

Jenis motif geometri yang kedua adalah motif ceplok. Motif batik ceplok

memiliki ciri-ciri dimana didalam batik tersebut terdapat gambar-gambar segi

empat, lingkaran dan segala variasinya dalam membuat sebuah pola yang teratur.

(17)

Jenis motif geometri yang ketiga adalah motif lereng (liris). Pada dasarnya

motif lereng sama dengan motif parang tetapi memiliki perbedaan pada tidak

adanya hias mlinjon dan hias gareng.

Gambar 2.3 Motif Batik Lereng

Selain itu pada motif non geometri dibagi menjadi empat jenis yaitu motif

semen, motif lung lungan, motif buketan dan motif khusus. Motif non geometri

yang pertama yaitu motif semen. Motif semen memiliki ragam hias utama yang

merupakan ciri pola semen yaitu meru.

Motif non geometri yang kedua yaitu motif lung lungan. Sebagian besar motif

lung lungan memiliki ragam hias utama serupa dengan motif semen. Yang

membedakan motif lung-lungan dengan motif semen adalah ragam hias utama

(18)

Gambar 2.4 Motif Batik Lung Lungan

Motif non geometri yang ketiga yaitu motif buketan. Pola buketan mudah

dikenali melalui rangkaian bunga atau kelopak bunga dengan kupu-kupu, burung,

atau berbagai satwa kecil mengelilinginya.

Gambar 2.5 Motif Batik Buketan

Motif non geometri yang terakhir yaitu motif khusus. Motif khusus memuat

motif yang tidak dapat dimasukkan ke dalam kelas yang lain. Motif ini banyak

(19)

Gambar 2.6 Motif Batik Campuran (1)

(20)

2.2.Pengolahan Citra

Citra merupakan istilah lain untuk gambar, sebagai salah satu komponen

multimedia memegang peranan sangat penting sebagai bentuk informasi visual.

Citra mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu citra kaya

dengan informasi. Ada sebuah peribahasa yang berbunyi “sebuah gambar

bermakna lebih dari seribu kata” (a picture is more than a thousand words) [10].

Secara harfiah, citra adalah gambar pada bidang dwimatra (dua

dimensi). Meskipun sebuah citra kaya informasi, namun seringkali citra yang

dimiliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat

atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Tentu saja citra semacam ini menjadi lebih sulit diinterpretasi karena

informasi yang disampaikan oleh citra tersebut menjadi berkurang. Agar citra

yang mengalami gangguan mudah diinterpretasi (baik oleh manusia maupun

mesin), maka citra tersebut perlu dimanipulasi menjadi citra lain yang kualitasnya

lebih baik. Bidang studi yang menyangkut hal ini adalah pengolahan citra(image processing).

Pengolahan citra adalah pemrosesan citra, khususnya dengan menggunakan

komputer, menjadi citra yang kualitasnya lebih baik. Sebagai contoh, citra burung

nuri pada Gambar 2.8 (a) tampak agak gelap, lalu dengan operasi pengolahan

citra kontrasnya diperbaiki sehingga menjadi lebih terang dan tajam (b).

(21)

Di dalam bidang komputer, sebenarnya ada tiga bidang studi yang berkaitan

dengan data citra, namun tujuan ketiganya berbeda, yaitu:

1. Grafika Komputer (computer graphics). 2. Pengolahan Citra (image processing).

3. Pengenalan Pola (pattern recognition/image interpretation).

Hubungan antara ketiga bidang (grafika komputer, pengolahan citra, pengenalan

pola) ditunjukkan pada gambar 2.9.

Gambar 2.9 Tiga Bidang Studi Yang Berkaitan Dengan Citra

Grafika Komputer bertujuan menghasilkan citra (lebih tepat disebut grafik

atau picture) dengan primitif-primitif geometri seperti garis, lingkaran, dan sebagainya. Primitif-primitif geometri tersebut memerlukan data deskriptif untuk

melukis elemen-elemen gambar. Contoh data deskriptif adalah koordinat titik,

panjang garis, jari-jari lingkaran, tebal garis, warna, dan sebagainya. Grafika

komputer memainkan peranan penting dalam visualisasi dan virtual reality.

Pengolahan Citra bertujuan memperbaiki kualitas citra agar mudah

diinterpretasi oleh manusia atau mesin (dalam hal ini komputer). Teknik-teknik

pengolahan citra mentransformasikan citra menjadi citra lain. Jadi, masukannya

adalah citra dan keluarannya juga citra, namun citra keluaran mempunyai kualitas

lebih baik daripada citra masukan. Termasuk ke dalam bidang ini juga adalah

pemampatan citra (image compression).

Pengenalan Pola mengelompokkan data numerik dan simbolik (termasuk

citra) secara otomatis oleh mesin (dalam hal ini komputer). Tujuan

pengelompokan adalah untuk mengenali suatu objek di dalam citra. Manusia bisa

(22)

mengklasifikasi objek-objek di alam sehingga mampu membedakan suatu objek

dengan objek lainnya. Kemampuan sistem visual manusia inilah yang dicoba

ditiru oleh mesin. Komputer menerima masukan berupa citra objek yang akan

diidentifikasi, memproses citra tersebut, dan memberikan keluaran berupa

deskripsi objek di dalam citra.

2.2.1. Grayscale

Untuk mengkonversi citra RGB ke grayscale dapat dilakukan dengan persamaan berikut.

X = (R+G+B)/3 (2.1)

R = warna merah pada suatu piksel

G = warna hijau pada suatu piksel

B = warna biru pada suatu piksel

Di setiap pikselnya terdapat masing-masing nilai pada R (merah), G (hijau), dan B

(biru), sehingga ketika digunakan persamaan tersebut piksel-piksel akan hanya

akan memiliki warna gradasi dari warna putih sampai hitam.

2.2.2. Histogram Equalization

Histogram didefinisikan sebagai probabilitas statistik distribusi setiap tingkat abu-abu dalam gambar digital. Persamaan histogram (HE) adalah teknik yang sangat populer untuk peningkatan kontras gambar.

(2.2)

Sk = output HE

k = nilai yang muncul dalam citra

L = derajat keabuan

n = jumlah seluruh piksel dalam citra

(23)

2.3.Kecerdasan Buatan

2.3.1. Pengertian Kecerdasan Buatan

Kecerdasan Buatan atau AI (Artificial Intelligence) merupakan suatu ilmu yang mempelajari bagaimana membuat komputer melakukan sesuatu pada suatu

kejadian atau peristiwa yang mana orang melakukannya dengan baik. AI

merupakan proses di mana peralatan mekanik dapat melaksanakan kejadian

kejadian dengan menggunakan pemikiran atau kecerdasan seperti manusia [11]. AI adalah sub bagian dari ilmu komputer yang merupakan suatu teknik

perangkat lunak yang pemrogramannya dengan cara menyatakan data,

pemrosesan data dan penyelesaian masalah secara simbolik, dari pada secara

numerik. Masalah-masalah dalam bentuk simbolik ini adalah masalah-masalah

yang sering dijumpai dalam kehidupan sehari-hari. Masalah-masalah ini lebih

berhubungan dengan simbol dan konsep simbol dari pada dengan angka-angka. Di

sini dengan kecerdasan buatan diusahakan untuk membuat komputer seakan dapat

berpikir secara cerdas.

2.3.2. Kategori Dasar AI

Teknik pemrograman dengan kecerdasan buatan melakukan prosesnya sama

dengan apa yang dilakukan oleh otak manusia. Kecerdasan buatan juga meniru

proses belajar manusia di mana informasi yang baru diserap dan dimungkinkan

untuk digunakan sebagai referensi pada waktu yang akan datang. Di sini informasi

yang baru dapat disimpan tanpa harus mengubah cara kerja pikiran atau

mengganggu seluruh fakta-fakta yang sudah ada. Sehingga dengan kecerdasan

buatan dimungkinkan untuk membuat program di mana setiap bagian dari

program benar-benar independen. Di sini setiap bagian dari program seperti

potongan-potongan informasi dalam otak manusia. Secara umum kecerdasan

buatan dibagi menjadi tiga kategori dasar, yaitu:

(24)

2. Sistem bahasa alami (Natural Language System), yaitu pemrograman yang mengerti bahasa manusia.

3. Sistem dengan kemampuan memahami (Perception System), yaitu sistem untuk penglihatan, pembicaraan atau sentuhan.

2.3.3. Implementasi AI

AI dapat diimplementasikan ke dalam berbagai bidang, yaitu :

1. Machine Vision : Bertujuan pada pengenalan pola dalam beberapa jalan yang sama sebagai kegiatan sistem visual/indera manusia.

2. Robotics : Difokuskan pada produksi alat-alat mekanik yang dapat mengendalikan gerak. Sebagai contoh: sebuah robot sederhana dapat bergerak

atau berpindah ke depan, belakang, kanan atau kiri atau berpindah tempat ke

ruangan berbeda. Sebuah robot sebenarnya buta akan bentuk urutan dari aksi

bila tanpa usaha untuk mengganti komponennya atau bisa mendeteksi dan

memperbaiki kesalahan dalam rencananya akan menjadi sulit bila tanpa

kecerdasan. Sering sebuah robot akan diformulasikan pada sebuah rencana

dasar pada informasi yang tidak lengkap dan benar dalam menjalankan

sebuah rencana.

3. Speech Processing : Bertujuan pada pengenalan dan sintesa pembicaraan manusia.

4. Theorem Proving : Usaha untuk membuktikan secara otomatis masalah-masalah dalam matematika dan logika.

5. General Problem Solving : Bertujuan pada pemecahan kelas-kelas dari masalah-masalah yang ditekankan dalam sebuah bahasa formal.

6. Pattern Recognation: Difokuskan pada pengenalan dan klasifikasi dari pola-pola.

7. Game Playing: Pembuatan program-program bermain permainan.

8. Machine Learning : Bertujuan pada produksi mesin-mesin yang mengakumulasi pengetahuan dengan contoh-contoh observasi.

(25)

kemampuan untuk mempelajari komponen terpenting dari jalan kecerdasan.

Sebuah sistem pakar harus berkemampuan ekstensif dan dapat menghitung

kerugian dalam memecahkan sebuah persoalan.

10. Planning adalah aspek terpenting pendukung untuk mendesain atau merancang robot-robot dengan kemampuan menyelesaikan tugasnya dengan

tingkat fleksibelitas dan tanggap terhadap dunia luar.

11. Neural Network atau Parallel Distributed : teknik-teknik terbaik untuk merepresentasikan pengetahuan dan merancang algoritma pencarian yang

hati-hati untuk implementasi kecerdasan.

2.4.Jaringan Syaraf Tiruan

2.4.1. Pengertian Jaringan Syaraf Tiruan

Jaringan syaraf tiruan, bersama sistem pakar dan perangkat lunak, ternyata

memberikan solusi persoalan dunia industri, telekomunikasi dan informasi dengan

berbagai aplikasi masa kini maupun masa depan. Dalam bidang ilmu pengetahuan

jaringan syaraf tiruan sudah sejak lama dibicarakan banyak orang. Mulai dikenal

akhir tahun 1940-an, jaringan syaraf masuk dalam blok perkembangan teknologi

komputer. Meski begitu, anehnya perkembangan teknologi komputer itu pulalah

yang jadi penghambat berkembangnya ilmu jaringan syaraf. Meski riset dan

pengembangan teknologi komputer terus berjalan, jaringan syaraf kurang begitu

mendapat perhatian.

Ternyata kini jaringan syaraf tiruan dapat menjawab beberapa persoalan

dunia telekomunikasi, industri maupun informasi, yang tak terlintas sebelumnya.

Dan melihat prospeknya di masa depan, para ahli yang sangat fanatik pada model

komputer digital konvensional, boleh jadi berbalik menyesali diri.

Jaringan syaraf tiruan (JST) adalah sistem pengolahan informasi yang

didasari fisolofi struktur perilaku syaraf makhluk hidup [13]. Dengan begitu,

jaringan syaraf tiruan tak diprogram selayaknya mekanisme pada komputer digital

konvensional. Begitu juga dari segi arsitekturnya. Dalam arsitekturnya, jaringan

syaraf mempelajari bagaimana menghasilkan keluaran yang diinginkan pada saat

(26)

memerintahkan sistem untuk mengidentifikasikan hubungan antar masukan

kemudian mempelajari respon tersebut. Dengan metoda pensintesisan hubungan,

jaringan syaraf dapat mengenal situasi yang sedang dan telah dijumpai

sebelumnya. Berbeda dengan proses internal, proses eksternal lebih tergantung

pada aplikasinya. Sistem bisa menggunakan umpan balik eksternal atau sinyal

tanggapan yang diinginkan, untuk membentuk prilaku jaringan. Ini disebut

sebagai supervised learning. Dengan cara lain, jaringan dapat membangkitkan sinyal tanggapan yang diinginkan sendiri dalam skenario unsupervised learning.

Latar belakang dikembangkannya JST karena pada pemrograman beberapa

aplikasi seperti image recognition (pengenalan citra), speech recognition

(pengenalan suara), weather forecasting (peramalan cuaca) ataupun permodelan tiga dimensi, tak dapat dengan mudah dan akurat diterapkan pada set instruksi

komputer biasa. Atas dasar itu, maka diterapkan arsitektur komputer khusus yang

dimodel berdasar otak manusia.

2.4.2. Model Sel Syaraf (Neuron)

Satu sel syaraf terdiri dari tiga bagian, yaitu: fungsi penjumlah (summing function), fungsi aktivasi (activation function), dan keluaran (output). Secara matematis dapat digambarkan sebuah neuron k dengan menuliskan pasangan persamaan sebagai berikut :

(2.3)

dan

(2.4)

Dimana x1, x2, …, xp adalah sinyal input ; wk1, wk2, …, wkp adalah bobot

-bobot sinaptik dari neuron k; uk adalah linear combiner output; θk adalah threshold; µ(.) adalah fungsi aktivasi; dan yk adalah sinyal output dari neuron. Penggunaan threshold memberikan pengaruh adanya affine transformation

(27)

Gambar 2.10 Model Matematis Nonlinier Dari Suatu Neuron

2.4.3. Arsitektur Jaringan

Pola dimana neuron-neuron pada JST disusun berhubungan erat dengan algoritma pembelajaran yang digunakan untuk melatih jaringan.

1. Single-Layer Feedforward Networks

(28)

2. Multi-Layer Feedforward Networks

Gambar 2.12 Feedforward Network dengan lebih dari satu lapisan neurons

3. Recurrent Networks

(29)

4. Lattice Structure

Gambar 2.14 Lattice satu dimensi dengan 3 neuron

Gambar 2.15 Lattice dua dimensi dengan 3 kali 3 neuron

2.4.4. Proses Pembelajaran

Proses pembelajaran pada JST adalah suatu proses dimana

(30)

berkelanjutan oleh lingkungan dimana jaringan berada. Definisi proses

pembelajaran ini menyebabkan urutan kejadian sebagai berikut:

1. JST dirangsang oleh lingkungan.

2. JST mengubah dirinya sebagai hasil rangsangan ini.

3. JST memberikan respon dengan cara yang baru kepada lingkungan,

disebabkan perubahan yang terjadi dalam struktur internalnya sendiri.

2.4.5. Algoritma Pembentukan JST

Tahap-tahap pembentukan JST dapat dilakukan dengan cara berikut [14].

1. Inisialisasi bobot = 0.

2. Menetapkan maksimum epoh, target error, dan learning rate

3. Inisialisasi Epoh = 0, MSE = 1.

4. Kerjakan langkah-langkah berikut selama (Epoh < maksimum epoh) dan

(MSE > target error):

a. Epoh = Epoh + 1 (2.5)

b. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran,

kerjakan:

- Tiap-tiap unit input (xi, i=1,2,3…,n) menerima sinyal xi dan

meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di

atasnya (lapisan tersembuyi)

- Tiap-tiap unit pada suatu lapisan tersembunyi (zj, j=1,2,3…,p)

menjumlahkan sinyal-sinyal input terbobot:

(2.6)

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya:

zj = f(z_inj) (2.7)

dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya

(unit-unit output)

- Tiap-tiap unit output (yk, k=1,2,3,…,m) menjumlahkan sinyal-sinyal

(31)

(2.8)

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya:

yk = f(y_ink) (2.9)

dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya

(unit-unit output)

- Tiap-tiap unit output (yk, k=1,2,3,…,m) menerima target pola yang

berhubungan dengan pola input pembelajaran, hitung informasi

errornya:

ẟ2k = (t k– y k) f’(y_in k) (2.10)

φ2 jk = k zj (2.11)

β2 k = ẟ k (2.12)

kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk

memperbaiki nilai wjk):

Δwk = αφ2jk (2.13)

hitung juga koreksi bias (yang nantinya akan digunakan untuk

memperbaiki nilai b2k):

Δb2k= αβ2k (2.14)

Langkah di atas juga dilakukan sebanyak jumlah lapisan tersembunyi,

yaitu menghitung informasi error dan suatu laposan tersembunyi ke

lapisan tersembunyi sebelumnya.

- Tiap-tiap unit tersembunyi (zj, j=1,2,3,…,p) menjumlahkan delta

inputnya (dari unit-unit berada pada lapisan di atasnya):

(2.15)

Kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk

menghitung informasi error:

ẟ1j = ẟ_inj f’(z_inj) (2.16)

φ1ij= φ1j xj (2.17)

(32)

kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk

memperbaiki nilai vij):

Δvij= α φ1ij (2.19)

Hitung juga koreksi bias (yang nantinya akan digunakan untuk

memperbaiki nilai b1j):

Δb1j= αβ1j (2.20)

- Tiap-tiap unit output (Yk, k = 1,2,3,…,m) memperbaiki bias dan

bobotnya (j=0,1,2,…,p):

wjk(baru) = wjk(lama) + Δwjk (2.21)

b2k(baru) = b2k(lama) + Δb2k (2.22)

tiap-tiap unit tersembunyi (zj, j=1,2,3,…,p) memperbaiki bias dan

bobotnya (i=0,1,2,…,n):

vij(baru) = vij(lama) + Δ vij (2.23)

b1j(baru) = b1j (lama) + Δ b1j (2.24)

c. Hitung MSE

2.5.Algoritma Levenberg Marquardt

Algoritma Levenberg Marquardt dikembangkan oleh Kenneth Levenberg dan

Donald Marquardt, memberikan solusi numerik untuk masalah meminimalkan

fungsi nonlinear [16]. Di bidang jaringan syaraf tiruan, algoritma ini cocok untuk

pelatihan kecil dan menengah.

Algoritma Levenberg Marquadt merupakan pengembangan dari algoritma

backpropagation. Algoritma ini dibangun untuk mengatasi beberapa kekurangan yang ada pada algoritma backpropagation dengan memanfaatkan teknik optimisasi numerik standar yaitu menggunakan pendekatan matriks Jacobian.

Tujuan dari Levenberg Marquadt adalah meminimalkan total error. Pada algoritma backpropagation proses update bobot dan bias menggunakan negative gradient descent secara langsung, sedangkan algoritma Levenberg Marquardt menggunakan pendekatan matrik Hesian (H) yang dapat dihitung dengan:

(33)

Sedangkan gradient dapat dihitung dengan:

g = JT e (2.26)

Dalam hal ini J merupakan sebuah matrik jacobian yang berisikan turunan pertama dari error jaringan terhadap bobot dan bias jaringan. Perubahan pembobot dapat dihitung dengan:

ΔW= [JT J + µI] - JT e (2.27)

Sehingga perbaikan pembobot dapat ditentukan dengan:

W = W + ΔW (2.28)

W = W + [JT J + µI] - JT e (2.29)

Keterangan :

W = fungsi bobot-bobot jaringan dan bias

e = vektor yang menyatakan semua error pada output jaringan

µ = konstanta learning

I = matrik identitas

2.6.Inisialisasi Bobot Awal Dengan Metode Nguyen Widrow

Pemilihan bobot awal sangat mempengaruhi jaringan syaraf dalam mencapai

minimum global terhadap nilai error, serta cepat tidaknya proses pelatihan menuju kekonvergenan. Jikai nilai bobot awal terlalu besar, maka input ke setiap

lapisan tersembunyi atau lapisan output akan jatuh pada daerah dimana turunan

fungsi sigmoidnya akan sangat kecil. Jika nilai bobot awal awal terlalu kecil,

maka input ke setiap lapisan tersembunyi atau lapisan output akan sangan kecil

yang akan mengakibatkan proses pelatihan akan berjalan sangat lambat. Biasanya

bobot awal diinisialisasi secara random dengan nilai antara -0,5 sampai 0,5. Nguyen Widrow merupakan modifikasi sederhana bobot-bobot dan bias ke

unit tersembunyi yang mampu meningkatkan kecepatan jaringan dalam proses

pelatihan jaringan. Metode ini secara sederhana dapat diimplementasikan dengan

prosedur sebagai berikut.

1. Tetapkan :

(34)

dimana

n = jumlah neuron pada lapisan input

p = jumlah neuron pada lapisan tersembunyi

β = faktor penskalaan

2. Kerjakan untuk setiap unit pada lapisan tersembunyi (j = 1, 2…., p).

a. Inisialisasi bobot-bobot dari lapisan input ke lapisan tersembunyi:

b. Hitung: | | Vj | |

c. Set bias :

b1j = bilangan random antara -β sampai β.

2.7.Pengujian JST

Pada proses pengujian, tahap yang dilakukan hanya sampai

tahap maju saja, tidak ada tahap mundur dan tahap modifikasi bobot.

Seluruh bobot input diambil dari nilai bobot terakhir yang diperoleh dari proses pelatihan. Pada tahap pengujian ini, jaringan diharapkan dapat

mengenali pola berdasarkan data baru yang diberikan (generalisasi).

2.8.Diagram Arus Data (Data Flow Diagram)

Data flow diagram adalah suatu gambaran secara logika, data flow diagram

biasa digunakan untuk membuat sebuah model sistem informasi dalam bentuk

proses-proses yang saling berhubungan yang disebut dengan aliran data.

1. Arus Data (Data Flow)

Arus data ini menunjukan arus dari data yang dapat berupa masukan untuk

sistem atau hasil dari proses sistem. Pada DFD, arus data digambarkan dengan

tanda panah.

2. Proses

Proses adalah kegiatan yang dilakukan oleh orang, mesin atau komputer dari

hasil arus data yang masuk ke dalam proses untuk dihasilkan arus data yang akan

(35)

3. Kesatuan Luar (External Entity)

Kesatuan luar merupakan kesatuan di lingkungan luar sistem yang dapat

berupa orang, organisasi atau sistem lain yang akan memberikan masukan (input) atau menerima keluaran (output) dari sistem. Kesatuan luar digambarkan dengan simbol kotak persegi panjang.

4. File

File digambarkan dengan dua garis horizontal.

Konsep dasar DFD dapat dilakukan dengan analisa Top Down, yaitu pemecahan sistem yang besar menjadi beberapa sub-sub sistem yang lebih kecil

DFD terdiri dari :

1. Diagram Konteks

Diagram Konteks adalah diagram arus data yang berfungsi untuk

menggambarkan yang dirancang disuatu objek, diagram konteks ini

menggambarkan secara global atau menyeluruh dari suatu sistem informasi

keterkaitan aliran-aliran data antara system dengan bagian-bagian luar. Kesatuan

luar ini merupakan sumber arus data atau tujuan data yang berhubungan dengan

sistem informasi tersebut.

2. Middle Level

Merupakan pemecahan dari tiap-tiap proses yang mempunyai fungsi sama.

Pada middle level diagaram 0 dipecah menjadi diagram 1,2,3 dan seterusnya yang merupakan penguraian dari diagram konteks.

3. Lowest Level

Merupakan pemecahan dari data flow yang ada pada middle level. Pemecahan tersebut masih tetap mempunyai fungsi yang sama dari level sebelumnya. Untuk

Lowest Level, pemberian nomor diagram terdiri dari bagian middle level.

2.9.MATLAB

MATLAB (Matrix Laboratory) adalah sebuah program untuk analisis dan komputasi numerik, merupakan suatu bahasa pemrograman matematika lanjutan

yang dibentuk dengan dasar pemikiran menggunakan sifat dan bentuk matriks

(36)

numerik proyek LINPACK dan EISPACK, dikembangkan menggunakan bahasan

FORTRAN. Namun sekarang, program ini merupakan produk komersial dari

perusahaan Mathworks, Inc. yang dalam perkembangan selanjutnya

dikembangkan menggunakan bahasa C++ dan assembler ( terutama untuk

fungsi-fungsi dasar MATLAB).

MATLAB telah berkembang menjadi sebuah environment pemrograman yang canggih dan berisi fungsi-fungsi built-in untuk melakukan tugas pengolahan sinyal, aljabar linier, dan kalkulasi matematis lainnya. MATLAB juga berisi

toolbox yang berisi fungsi-fungsi tambahan untuk aplikasi khusus. MATLAB bersifat extensible, dalam arti bahwa seorang pengguna dapat menulis fungsi baru untuk ditambahkan di library jika fungsi-fungsi built-in yang tersedia tidak dapat melakukan tugas tertentu. MATLAB dapat menggunakan teknik berorientasi

objek dalam desain program. Teknik berorientasi objek dapat menyederhanakan

pemrograman tugas yang melibatkan struktur data khusus atau sejumlah besar

fungsi yang berinteraksi dengan jenis data khusus.

Dalam lingkungan perguruan tinggi teknik, Matlab merupakan perangkat

standar untuk memperkenalkan dan mengembangkan penyajian materi

matematika, rekayasa dan kelimuan. Di industri, Matlab merupakan perangkat

pilihan untuk penelitian dengan produktifitas yang tinggi, pengembangan dan

analisanya. Fitur-fitur Matlab sudah banyak dikembangkan, dan lebih dikenal

dengan nama toolbox. Toolbox ini merupakan kumpulan dari fungsi -fungsi Matlab (M-files) yang telah dikembangkan ke suatu lingkungan kerja Matlab untuk memecahkan masalah dalam kelas particular. Area-area yang sudah bisa dipecahkan dengan toolbox saat ini meliputi pengolahan sinyal, sistem kontrol,

neural networks, fuzzy logic, wavelets, dan lain-lain.

Kelengkapan pada Sistem Matlab sebagai sebuah sistem, Matlab tersusun dari

5 bagian utama:

1. Development Environment.

Development Environment merupakan sekumpulan perangkat dan fasilitas yang membantu anda untuk menggunakan fungsi-fungsi dan file-file Matlab.

(37)

Termasuk didalamnya adalah Matlab desktop dan command window,

command history, sebuah editor dan debugger, dan browsers untuk melihat

help, workspace, files, dan search path. 2. Matlab Mathematical Function Library.

Merupakan sekumpulan algoritma komputasi mulai dari fungsi-fungsi dasar

seperti sum, sin, cos, complex arithmetic, sampai dengan fungsi-fungsi yang lebih kompeks seperti matrix inverse, matrix eigenvalues, bessel functions, dan fast fourier transforms.

3. Matlab Language.

Merupakan suatu high-level matrix/array language dengan control flow statements, functions, data structures, input/output, dan fitur-fitur object-oriented programming. Ini dimungkinkan untuk melakukan kedua hal baik "pemrograman dalam lingkup sederhana" untuk mendapatkan hasil yang

cepat, dan "pemrograman dalam lingkup yang lebih besar" untuk memperoleh

hasil-hasil dan aplikasi yang komplek.

4. Graphics.

Matlab memiliki fasilitas untuk menampilkan vector dan matrices sebagai suatu grafik. Didalamnya melibatkan high-level functions (fungsi-fungsi level tinggi) untuk visualisasi data dua dikensi dan data tiga dimensi, image processing, animation, dan presentation graphics. Ini juga melibatkan fungsi level rendah yang dimungkinkan untuk memunculkan grafik mulai dari benutk

yang sederhana sampai dengan tingkatan graphical user interfaces pada aplikasi Matlab.

5. Matlab Application Program Interface (API).

Merupakan suatu library yang memungkinkan program yang telah ditulis dalam bahasa C dan Fortran mampu berinterakasi dengan Matlab. Ini

(38)

MATLAB banyak digunakan pada :

1. Matematika dan Komputasi

2. Pengembangan dan Algoritma

3. Pemrograman Modeling, simulasi, dan pembuatan prototipe

4. Analisa data, eksplorasi, dan visualisasi

5. Analisis numerik dan statistik

6. Pengembangan aplikasi teknik

2.10. Cross Validation

Untuk tujuan replikasi, yang dibutuhkan adalah mendapatkan jumlah dari

data latih dan pasangan data tes dari dataset X (setelah lebih dahulu memisahkan

sebagian data sebagai data uji). Untuk mendapatkannya, jika sampel X cukup

besar, dapat dibagi secara acak ke dalam K bagian, lalu secara acak memisahkan

masing-masing bagian ke dalam 2 kelompok dan menggunakan setengah data

pertama untuk data latih dan setengah data lainnya untuk data uji. Pengujian ini

dilakukan berulang dengan menggunakan data split yang berbeda, dinamakan

cross validation.

K-fold cross-validation adalah sebuah pengujian dimana dataset X dibagi secara acak kedalam K bagian dengan ukuran yang sama, Xi, i=1,...,K. Untuk

memproses setiap pasangnya diambil terlebih dahulu salah satu bagian dari K

bagian sebagai data tes, dan mengkombinasikan sisanya sebanyak K-1 bagian

sebagai data latih. Proses pengujian dilakukan sebanyak K kali [5].

Dalam contoh kasus yang memiliki banyak prediksi, hasil pada data uji

sering ditampilkan sebagai confusion matrix dua dimensi dengan baris dan kolom

untuk setiap kelas. Setiap elemen matrix menunjukkan jumlah data uji. Pada

bagian baris adalah kelas data uji yang sebenarnya dan pada bagian kolom adalah

(39)

Tabel 2.1 Contoh Confusion Matrix

Hasil Identifikasi

Target Identifikasi a b c d

A 4 0 0 0

B 1 3 0 0

c 1 0 2 1

d 0 0 0 4

Berikut ini adalah penjelasan pada tabel 2.1

Target a teridentifikasi menjadi a sebanyak 4

teridentifikasi menjadi b sebanyak 0

teridentifikasi menjadi c sebanyak 0

teridentifikasi menjadi d sebanyak 0

Target b teridentifikasi menjadi a sebanyak 1

teridentifikasi menjadi b sebanyak 3

teridentifikasi menjadi c sebanyak 0

teridentifikasi menjadi d sebanyak 0

Target c teridentifikasi menjadi a sebanyak 1

teridentifikasi menjadi b sebanyak 0

teridentifikasi menjadi c sebanyak 2

teridentifikasi menjadi d sebanyak 1

Target d teridentifikasi menjadi a sebanyak 0

teridentifikasi menjadi b sebanyak 0

teridentifikasi menjadi c sebanyak 0

(40)

Contents

BAB 2 ... 7

2.1. Batik ... 7

2.2. Pengolahan Citra ... 12

2.3. Kecerdasan Buatan ... 15

2.4. Jaringan Syaraf Tiruan... 17

2.5. Algoritma Levenberg Marquardt ... 24

2.6. Inisialisasi Bobot Awal Dengan Metode Nguyen Widrow ... 25

2.7. Pengujian JST ... 26

2.8. Diagram Arus Data (Data Flow Diagram)... 26

2.9. MATLAB ... 27

2.10. Cross Validation ... 30

Gambar 2.1 Motif Batik Parang ... 8

Gambar 2.2 Motif Batik Ceplok ... 8

Gambar 2.3 Motif Batik Lereng ... 9

Gambar 2.4 Motif Batik Lung Lungan ... 10

Gambar 2.5 Motif Batik Buketan ... 10

Gambar 2.6 Motif Batik Campuran (1) ... 11

Gambar 2.7 Motif Batik Campuran (2) ... 11

Gambar 2.8 Perbaikan Kontras Citra ... 12

Gambar 2.9 Tiga Bidang Studi Yang Berkaitan Dengan Citra ... 13

Gambar 2.10 Model Matematis Nonlinier Dari Suatu Neuron ... 19

Gambar 2.11 Feedforward Network dengan satu lapisan neurons ... 19

Gambar 2.12 Feedforward Network dengan lebih dari satu lapisan neurons ... 20

Gambar 2.13 Recurrent network ... 20

Gambar 2.14 Lattice satu dimensi dengan 3 neuron ... 21

(41)
(42)

79

serta saran untuk perbaikan dan pengembangan penelitian lebih lanjut.

5.1.Kesimpulan

Dari hasil penelitian yang telah dilakukan dapat diperoleh kesimpulan sebagai

berikut.

1. Algoritma Levenberg Marquardt dapat diterapkan untuk pengenalan motif

kain batik dasar dan motif campuran.

2. Pengenalan motif kain batik dasar dan campuran menggunakan algoritma

Levenberg Marquardt memiliki akurasi tertinggi sebesar 62.5% dengan

akurasi pada batik motif dasar sebesar 80% dan akurasi pada batik motif

campuran sebesar 15.79%. Akurasi ini didapatkan dari susunan variabel yang

memiliki jumlah neuron pada hidden layer sebanyak 3 neuron atau 4 neuron, learning rate yang bernilai 0.01, batas epoh sebesar 7000, dan target error

sebesar 0.035. Sedangkan sampel data yang diuji pada penelitian ini

berjumlah 137 buah. Sampel data yang digunakan pada proses pelatihan

berjumlah 50 buah motif dasar dengan masing-masing motif 10 buah dan 45

buah motif campuran dengan masing-masing motif 5 buah. Jumlah motif

yang dilakukan pengujian yaitu 42 buah, dengan masing-masing motif 3

buah.

5.2.Saran

Dari hasil penelitian ini dapat diberikan saran-saran yaitu untuk

mengidentifikasi motif batik dasar atau campuran dapat menggunakan algoritma

lain sehingga bisa mendapatkan algoritma yang cocok untuk pengenalan motif

(43)

1. Data Pribadi

Nama : Roni Ahdiat

Tempat/Tanggal Lahir : Garut, 6 November 1989

Jenis Kelamin : Laki-laki

Warga Negara : Indonesia

Agama : Islam

Status : Belum Menikah

Alamat : Jl. Rajawali Timur Gg. Barnas 2 Rt. 06 Rw. 05

No.56 B/77 Bandung

Email : roni.ibex@gmail.com

No. Handphone : 085624622448

2. Pendidikan Formal

1996 – 2002 SD BPMD Taruna Bandung

2002 – 2005 SMP Negeri 25 Bandung

2005 – 2009 SMK Negeri 1 Cimahi

2011 – 2016 Universitas Komputer Indonesia (UNIKOM)

(44)
(45)
(46)

MOTIF KAIN BATIK

Roni Ahdiat1

1 Teknik Informatika - Universitas Komputer Indonesia

Jl. Dipatiukur 112-114 Bandung E-mail : roni.ibex@gmail.com1

ABSTRAK

Batik merupakan budaya yang telah lama berkembang dan dikenal oleh masyarakat Indonesia. Motif batik di setiap daerah memiliki keunikan dan ciri khas masing-masing, baik dalam ragam hias maupun tata warna batik itu sendiri. Salah satu cara untuk mengidentifikasi motif pada kain batik yaitu melalui pengenalan pola.

Algoritma Levenberg Marquadt merupakan pengembangan dari algoritma backpropagation. Algoritma ini dibangun untuk mengatasi beberapa kekurangan yang ada pada algoritma

backpropagation dengan memanfaatkan teknik

optimisasi numerik standar yaitu menggunakan pendekatan matriks Jacobian. Tujuan dari Levenberg Marquadt adalah meminimalkan total

error.

Pengujian dari algoritma Levenberg Marquardt dilakukan dengan metode cross validation. Data yang digunakan pada proses pelatihan berjumlah 50 buah motif dasar dengan masing-masing motif 10 buah dan 45 buah motif campuran dengan masing-masing motif 5 buah. Sedangkan jumlah motif yang akan dilakukan pengujian yaitu 42 buah, dengan masing-masing motif 3 buah. Dari 4 skenario pengujian yaitu menggunakan 1 sampai 4 hidden

layer, hasil pengujian menunjukkan akurasi tertinggi

sebesar 62.5% dengan akurasi pada batik motif dasar sebesar 80% dan akurasi pada batik motif campuran sebesar 15.79%. Akurasi ini didapatkan dari susunan variabel yang memiliki jumlah neuron pada hidden

layer sebanyak 3 neuron dan 4 neuron, learning rate

yang bernilai 0.01, batas epoh sebesar 7000, dan target error sebesar 0.035.

Kata Kunci : backpropagation, levenberg marquardt, batik, pattern recognition

1. PENDAHULUAN

Batik merupakan budaya yang telah lama berkembang dan dikenal oleh masyarakat Indonesia. Secara etimologi kata batik berasal dari bahasa Jawa, yaitu ”tik” yang berarti titik / matik (kata kerja, membuat titik) yang kemudian berkembang

menjadi istilah ”batik” [1]. Motif batik di setiap daerah memiliki keunikan dan ciri khas masing-masing, baik dalam ragam hias maupun tata warna batik itu sendiri. Salah satu cara untuk mengidentifikasi motif pada kain batik yaitu melalui pengenalan pola.

Algoritma Levenberg Marquadt merupakan pengembangan dari algoritma backpropagation. Algoritma ini dibangun untuk mengatasi beberapa kekurangan yang ada pada algoritma

backpropagation dengan memanfaatkan teknik

optimisasi numerik standar yaitu menggunakan pendekatan matriks Jacobian. Tujuan dari Levenberg Marquadt adalah meminimalkan total

error [8]. Algoritma Levenberg Marquardt telah

diterapkan pada pengenalan pola wajah yang dilakukan oleh Mohammed Alwakeel [7] dengan membandingkan algoritma Levenberg Marquardt dengan algoritma Haar Wavelet Transform dan algoritma Principal Component Analysis. Dari penelitian tersebut terbukti algoritma Levenberg Marquardt lebih akurat, cepat, dan stabil dalam pengenalan pola wajah dibandingkan algoritma Haar Wavelet Transform dan algoritma Principal Component Analysis. Pada penelitian lain dilakukan oleh Tulus Bangkit Pratama mengenai pengenalan pola warna citra google maps menggunakan algoritma Levenberg Marquardt [17] dengan hasil algoritma ini telah berhasil membuat pola citra baru yang diidentifikasikan sebagai daerah daratan dan bukan daratan.

Dengan latar belakang masalah ini, maka akan dilakukan penelitian mengenai algoritma Levenberg Marquardt yang akan diimplementasikan untuk mengidentifikasi motif batik tidak hanya motif batik dasar, dapat juga mengidentifikasi motif batik khusus atau campuran. Pada penelitian ini juga akan diketahui tingkat akurasi penerapan algoritma Levenberg Marquardt terhadap pengenalan motif batik.

1.1 Kecerdasan Buatan

Kecerdasan Buatan atau AI (Artificial

Intelligence) merupakan suatu ilmu yang

(47)

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033

melakukan sesuatu pada suatu kejadian atau peristiwa yang mana orang melakukannya dengan baik. AI merupakan proses di mana peralatan mekanik dapat melaksanakan kejadian kejadian dengan menggunakan pemikiran atau kecerdasan seperti manusia [11].

1.2 Jaringan Syaraf Tiruan

Jaringan syaraf tiruan (JST) adalah sistem pengolahan informasi yang didasari fisolofi struktur perilaku syaraf makhluk hidup [13]. Dengan begitu, jaringan syaraf tiruan tak diprogram selayaknya mekanisme pada komputer digital konvensional. Begitu juga dari segi arsitekturnya. Dalam arsitekturnya, jaringan syaraf mempelajari bagaimana menghasilkan keluaran yang diinginkan pada saat diberikan sekumpulan masukan. Proses ini dilakukan secara internal, yaitu dengan memerintahkan sistem untuk mengidentifikasikan hubungan antar masukan kemudian mempelajari respon tersebut. Dengan metoda pensintesisan hubungan, jaringan syaraf dapat mengenal situasi yang sedang dan telah dijumpai sebelumnya. Berbeda dengan proses internal, proses eksternal lebih tergantung pada aplikasinya. Sistem bisa menggunakan umpan balik eksternal atau sinyal tanggapan yang diinginkan, untuk membentuk prilaku jaringan. Ini disebut sebagai supervised

learning. Dengan cara lain, jaringan dapat

membangkitkan sinyal tanggapan yang diinginkan sendiri dalam skenario unsupervised learning.

1.3 Algoritma Levenberg Marquardt

Algoritma Levenberg Marquardt dikembangkan oleh Kenneth Levenberg dan Donald Marquardt, memberikan solusi numerik untuk masalah meminimalkan fungsi nonlinear [16]. Di bidang jaringan syaraf tiruan, algoritma ini cocok untuk pelatihan kecil dan menengah.

Algoritma Levenberg Marquadt merupakan pengembangan dari algoritma backpropagation. Algoritma ini dibangun untuk mengatasi beberapa kekurangan yang ada pada algoritma

backpropagation dengan memanfaatkan teknik

optimisasi numerik standar yaitu menggunakan pendekatan matriks Jacobian. Tujuan dari Levenberg Marquadt adalah meminimalkan total

error.

2. ISI PENELITIAN

2.1 Analisis Masalah

Pada penelitian ini akan dilakukan pengenalan motif kain batik menggunakan algoritma Levenberg Marquardt. Berdasarkan hasil studi literatur mengenai penggunaan algoritma Levenberg Marquardt terhadap pengenalan pola wajah pada jurnal Muhammed Alwakeel dan Zyad Shaaban [7]. Pada jurnal ini membahas tentang pengenalan pola wajah menggunakan algoritma Levenberg

Marquardt dan menghasilkan output yang lebih akurat dibandingkan algoritma Haar Wavelet Transform dan Principal Component Analysis. Selain itu, algoritma Levenberg Marquardt belum pernah dilakukan penelitian untuk pengenalan motif batik. Dengan alasan ini, maka penelitian mengenai algoritma Levenberg Marquardt akan diimplementasikan terhadap pengenalan motif kain batik.

2.2 Analisis Sistem

Analisis adalah aktivitas yang memuat sejumlah kegiatan seperti menguraikan sebuah pembahasan. Dalam hal ini pembahasan mengenai pengenalan motif kain batik menggunakan algoritma Levenberg Marquardt

2.3 Analisis Arsitektur Sistem

Arsitektur yang diterapkan terdiri dari data masukan berupa file citra berekstensi *jpg, pra proses, proses pelatihan menggunakan algoritma Levenberg Marquardt, pengujian motif batik menggunakan Levenberg Marquardt, lalu menghasilkan output berupa akurasi. Arsitektur sistem yang digunakan dapat dilihat pada gambar

Gambar 2.1 Arsitektur Umum Sistem

Langkah-langkahnya yaitu :

1. Input data citra merupakan tahapan bahwa data yang dimasukkan adalah berupa file berekstensi *jpg.

2. Pada tahap pra proses, sistem melakukan tahapan yang terdiri dari perubahan warna citra

ke grayscale untuk memudahkan dalam proses

binerisasi. Pada tahap ini pun dilakukan

histogram equalization untuk memperjelas

citra batik sehingga pada proses binerisasi dapat lebih terlihat motif dari citra batik tersebut.

3. Pada tahapan pelatihan, sistem akan melakukan pelatihan untuk pembentukan jaringan syaraf tiruan sebagai data sumber ketika melakukan identifikasi terhadap motif batik yang nantinya akan diuji.

4. Pengujian motif batik, motif kain batik dilakukan pengujian untuk mengetahui jenis batik berdasarkan motifnya.

(48)

pengecekan data masukan. Data masukan yang diperbolehkan merupakan data citra berformat *.jpg. Data masukan ini terdiri atas file citra berupa motif batik yang akan digunakan untuk pembentukan jaringan syaraf tiruan (JST) dan pengujian untuk mengidentifikasi motif batik yang diinput. Kemudian sistem akan menyediakan pilihan menu, yaitu Pelatihan dan Pengujian.

Pada menu pelatihan, data citra yang diinput akan dilakukan tahap pra proses, yaitu mengkonversi data citra ke dalam bentuk grayscale. Lalu untuk memperjelas pola atau motif dari data citra yang sudah berwarna grayscale, maka data citra tersebut dilakukan histogram equalization. Setelah itu data citra dikonversikan kembali ke dalam bentuk biner sehingga data citra akan menghasilkan matriks bernilai 1 dan 0. Pada tahapan selanjutnya yaitu pembentukan JST menggunakan algoritma Levenberg Marquardt. Setelah itu data disimpan sebagai basis pengetahuan.

Selanjutnya pada menu pengujian prosesnya hampir sama dengan pelatihan, yaitu melakukan konversi data citra ke dalam bentuk grayscale, melakukan

histogram equalization untuk memperjelas pola atau

motif citra, selanjutnya pembentukan JST menggunakan algoritma Levenberg Marquardt. Setelah JST terbentuk, maka data untuk pengujian akan dibandingkan dengan data yang ada pada basis pengetahuan sehingga dapat menghasilkan output berupa jenis batik beserta tingkat akurasinya.

Secara garis besar, flowchart aplikasi pengenalan motif kain batik ini adalah sebagai

Gambar 2.2 Flowchart Sistem

masukan dan tata cara penulisan data yang diperbolehkan sistem. Data masukan yang diperbolehkan merupakan data citra berformat *.jpg. Data masukan ini terdiri atas file citra berupa motif batik yang akan digunakan untuk pembentukan JST dan pengujian untuk mengidentifikasi motif batik yang diinput

2.6 Analisis Pra Proses

2.6.1. Resizing

Untuk merubah ukuran citra batik, dapat menggunakan fungsi resize() pada matlab. Pada contoh ini, data citra batik dirubah ke dalam ukuran 7 x 5 piksel. Jika dilihat ke dalam bentuk matriks akan menghasilkan 3 dimensi, yaitu 7 x 5 x 3 karena data citra masih berbentuk RGB (Red Green Blue).

2.6.2. Grayscale

Pada proses ini matriks citra RGB akan dikonversi ke dalam bentuk grayscale. Untuk mengkonversi matriks citra RGB ke grayscale dapat dilakukan dengan persamaan berikut.

Grayscale = (R+G+B)/3 (2.1)

2.6.3. Histogram Equalization

Konsep dasar dari histogram equalization

adalah dengan men-strecth histogram, sehingga perbedaan piksel menjadi lebih besar atau dengan kata lain informasi menjadi lebih kuat sehingga mata dapat menangkap informasi yang disampaikan. Persamaan yang digunakan untuk HE yaitu persamaan (2.2).

(2.2)

Sk = output HE

k = nilai yang muncul dalam citra L = derajat keabuan

n = jumlah seluruh piksel dalam citra nj = jumlah yang muncul di setiap nilai k

2.7 Analisis Pelatihan

2.7.1. Inisialisasi Bobot Menggunakan Nguyen Widrow

Nguyen Widrow merupakan modifikasi sederhana bobot-bobot dan bias ke unit tersembunyi yang mampu meningkatkan kecepatan jaringan dalam proses pelatihan jaringan. Metode ini secara sederhana dapat diimplementasikan dengan prosedur sebagai berikut.

1. Tetapkan :

β = 0.7(p)1/n (2.3)

dimana

n = jumlah neuron pada lapisan input p = jumlah neuron pada lapisan tersembunyi

Gambar

Gambar 1. 1 Alur Metode Prototype [14]
Gambar 2.1 Motif Batik Parang
Gambar 2.3 Motif Batik Lereng
Gambar 2.4 Motif Batik Lung Lungan
+7

Referensi

Dokumen terkait

Pada tahap ini diimplementasikan metode K-Nearest Neighbor sesuai konsep yang telah dibuat pada tahap analisis dan perancangan untuk klasifikasi motif batik besurek Bengkulu

Penelitian serupa juga dilakukan oleh Alwakeel dan Shaaban (2010) yang melakukan penelitian Face Recognation menggunakan JST Levenberg-Marquardt dengan akurasi 98%, sedangkan

C merupakan blankspace yang akan menampilkan hasil estimasi parameter model regresi non linear dengan algoritma Levenberg-Marquardt. D merupakan blankspace yang akan menampilkan

Penelitian ini bertujuan untuk membuat kain tenun ATBM dobby dan kombinasi ikat dari motif batik tradisional yaitu motif khas Kota Bandung yang dikembangkan dan disesuaikan dengan

IMPLEMENTASI DETEKSI TEPI PREWITT DAN ALGORITMA BACKPROPAGATION UNTUK PENGENALAN MOTIF SONGKET PALEMBANG CITRA EKA MUTIA 121401035 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Penulis memiliki inisiatif untuk melakukan penelitian mengenai pengenalan pola wayang kulit menggunakan metode jaringan saraf tiruan dengan Algoritma Backpropagation.. Tujuan utama

Tujuan dari penelitian ini adalah untuk mengkaji Estetika motif Ondel-ondel pada batik Bet- awi. Penelitian ini dirumuskan dalam pertanyaan: 1) Bagaimana latar belakang

training data suara hasil ekstraksi feature digunakan jaringan syaraf tiruan backpropagation. Adapun perubahan bobotnya menggunakan algoritma Levenberg-Marquadt.