• Tidak ada hasil yang ditemukan

Implementasi Pengolahan Citra dan Algoritma Levenberg Marquardt pada Content Based Image Retrieval

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Pengolahan Citra dan Algoritma Levenberg Marquardt pada Content Based Image Retrieval"

Copied!
80
0
0

Teks penuh

(1)
(2)
(3)
(4)

D-1

Tempat dan Tanggal Lahir : Bandung, 4 Desember 1993

Jenis Kelamin : Wanita

Agama : Katolik

Status : Belum Menikah

Pekerjaan : Mahasiswa

Golongan Darah : O

Kontak : 081394341734

Alamat : Kp. Patrol RT 04 RW 09 No. 54 Desa Gandasari Kec. Katapang Kab. Bandung 40971

E-mail : barbaraxchristie@gmail.com

Riwayat Pendidikan Formal

(5)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

BARBARA CHRISTIE

10112188

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(6)

iii

Pengolahan Citra dan Algoritma Levenberg-Marquardt pada Content Based

Image Retrieval tepat pada waktunya.

Penyusunan skripsi ini tidak akan terwujud tanpa mendapat dukungan, bantuan dan masukan dari berbagai pihak. Untuk itu, penulis ingin menyampaikan terima kasih yang sebesar-besarnya kepada :

1. Yang saya hormati dan sangat saya sayangi, kedua orang tua saya, Antonius W dan Fransina W.

2. Dosen pembimbing saya selama satu semester ini, Ibu Nelly Indriani W, S.Si., M.T.

3. Kepala Program Studi Teknik Informatika sekaligus wali dosen saya, Bapak Irawan Afrianto, S.T., M.T.

4. My best sisters ever, kesayangan, Elizabeth Priscillia dan Sesilia Chaterine.

5. Semua teman-teman terbaik yang pernah saya punya sepanjang kuliah, anak-anak IF-5 dan 2 orang anak-anak IK yang pernah di IF-5.

6. My besties, teman-teman dari jaman SMA.

7. Yang selalu saling mendukung, teman-teman cewek di IF yang sangat langka dan semuanya beda kelas.

8. Keluarga saya di kampus, anak-anak KMK UNIKOM.

9. Semua orang yang memberi semangat dan dukungan yang tidak bisa saya sebutkan satu per satu.

Akhir kata, semoga skripsi ini dapat bermanfaat bagi para pembaca.

(7)

iv

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... iv

DAFTAR TABEL ... vi

DAFTAR GAMBAR ... viii

DAFTAR SIMBOL ... x

DAFTAR LAMPIRAN ... xii

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Rumusan Masalah ... 2

1.3 Maksud dan Tujuan ... 2

1.4 Batasan Masalah ... 2

1.5 Metode Penelitian ... 3

1.6 Sistematika Penulisan ... 6

BAB 2 LANDASAN TEORI ... 9

2.1 Citra ... 9

2.2 Pengolahan Citra ... 9

2.3 Ekstraksi Ciri ... 12

2.4 Ekstraksi Ciri Statistik ... 13

2.5 Deteksi Tepi ... 15

2.6 Content Based Image Retrieval (CBIR) ... 16

(8)

v

BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 29

3.1 Analisis Masalah ... 29

3.2 Analisis Data Masukan ... 29

3.3 Analisis Sistem ... 30

3.4 Analisis Metode ... 31

3.5 Analisis Kebutuhan Non-Fungsional ... 47

3.6 Pemodelan Sistem ... 49

3.7 Perancangan Sistem ... 57

BAB IV IMPLEMENTASI DAN PEMBAHASAN ... 61

4.1 Implementasi Sistem ... 61

4.2 Pengujian Sistem ... 63

4.3 Kesimpulan Pengujian ... 68

BAB V KESIMPULAN DAN SARAN ... 69

5.1 Kesimpulan ... 69

5.2 Saran ... 69

(9)

71

Metode Gradient Vector Flow Snake. Surabaya : Institut Teknologi Sepuluh Nopember.

[2] Purnamasari, Fitria. Ramadijanti, Nana. Setiawardhana. 2010, System Online CBIR Menggunakan Identifikasi Dominan Warna Pada

Foreground Objek. Surabaya : Politeknik Elektronika Negeri Surabaya

Institut Teknologi Sepuluh Nopember

[3] Munir, Rinaldi. Pengolahan Citra Digital. Bandung : Departemen Teknik Informatika Institut Teknologi Bandung

[4] Purnomo, Mauridhi Hery. Muntasa Arif. 2010, Konsep Pengolahan

Citra dan Ekstraksi Fitur. Yogyakarta : Graha Ilmu

[5] Munir, Rinaldi. 2004, Pengolahan Citra Digital dengan Pendekatan

Algoritma. Bandung : Informatika

[6] Long, Fahui. Zhang Honjiang. Feng, David Dagan. 2003,

Fundamentals of Content Based Image Retrieval. Microsoft

Corporation Research

[7] Hermawan, A. 2006, Jaringan Syaraf Tiruan Teori dan Aplikasi.

Yogyakarta : Penerbit Andi

[8] Suyanto. 2002, Intelijensia Buatan. Bandung : Sekolah Tinggi Teknologi Telkom

[9] Kusumadewi, Sri. 2003, Artificial Intelligence Teknik dan Aplikasinya.

Yogyakarta : Graha Ilmu

[10] Setiawan, K. 2003, Paradigma Sistem Cerdas. Malang : Bayumedia Publishing

[11] Siang, Jong Jek. 2005, Jaringan Syaraf Tiruan dan Pemogramannya

Menggunakan Matlab. Yogyakarta : Andi Offset

(10)

Share Rates Forecasting. International Journal of Computer, Electrical, Automation, Control and Information Engineering, Vol. 2, No. 4

[13] Hagan, Martin T. Menhaj, Mohammad B. 1994, Training Feedforward

Network with the Marquardt Algorithm. IEEE Transactions on Neural

Networks, Vol. 5, No. 6

[14] Sari, Erlis Ardila. 2013, Peramalan Tinggi Muka Air Sungai Bengawan Solo Menggunakan Jaringan Syaraf Tiruan Backpropagation dengan

Algoritma Levenberg-Marquardt dan Modified Levenberg-Marquardt.

Surakarta : Universitas Sebelas Maret

[15] Permadi, Yuda. Murinto. 2015, Aplikasi Pengolahan Citra Untuk Identifikasi Kematangan Mentimun Berdasarkan Tekstur Kulit Buah

Menggunakan Metode Ekstraksi Ciri Statistik. Yogyakarta : Universitas

Ahmad Dahlan

[16] Wuryandari, Maharani Dessy. Afrianto, Irawan. 2012, Perbandingan Metode Jaringan Syaraf Tiruan Backpropagation dan Learning Vector

Quantization pada Pengenalan Wajah. Bandung : Universitas

Komputer Indonesia

[17] Rahmat. Setiawan, Rachmad. Purnomo, Mauridhi Hery. 2006,

Perbandingan Algoritma Levenberg-Marquardt dengan Metoda Backpropagation pada Proses Learning Jaringan Saraf Tiruan untuk

Pengenalan Pola Sinyal Elektrokardiograf. Surabaya : Institut

(11)

1

Content Based Image Retrieval (CBIR) merupakan salah satu bentuk

implementasi dari pengolahan citra. CBIR sendiri merupakan teknik pencarian kembali image yang mempunyai kemiripan karakteristik atau content dari sekumpulan image [1]. Secara umum, proses dalam CBIR dilakukan dengan proses ekstraksi fitur. Parameter fitur yang dapat digunakan untuk retrieval dapat berupa histogram, susunan warna, tekstur, bentuk, tipe spesifik dari obyek, dan lain-lain.

Pengembangan sistem CBIR yang sudah pernah dilakukan sebelumnya [1][2] masih menghasilkan gambar hasil retrieval yang kurang sesuai dengan gambar masukan. Hal ini dikarenakan sistem yang dikembangkan tersebut hanya menggunakan kemiripan fitur warna dalam ekstraksi cirinya dan tanpa menerapkan metode pengelompokan. Fitur warna seringkali mengalami kesalahan karena intensitas cahaya dari gambar. Sedangkan pengelompokan gambar sendiri diajukan peneliti sebelumnya untuk dapat mengembangkan sistem CBIR agar lebih baik [2].

Menggunakan penelitian-penelitian sebelumnya, pengembangan CBIR dalam penelitian ini akan mencoba menggunakan fitur bentuk dan karakteristik histogram dengan ekstraksi ciri statistik. Metode ini dipilih karena melihat dari penelitian mengenai ekstraksi ciri statistik sebelumnya [15], metode ini cukup mudah diimplementasikan sehingga tidak memakan banyak waktu. Selain itu, dalam penelitian ini, akan diimplementasikan metode klasifikasi untuk dapat mengelompokan gambar-gambar dalam sistem. Metode yang digunakan adalah algoritma Levenberg-Marquardt. Algoritma tersebut diajukan dengan pertimbangan bahwa algoritma Levenberg-Marquardt merupakan pengembangan dari algoritma backpropagation yang terbukti dapat melakukan klasifikasi dengan baik [16] dan menghasilkan akurasi yang lebih baik dibandingkan algoritma

(12)

1.2Rumusan Masalah

Adapun masalah yang telah diidentifikasi untuk penelitian ini adalah bagaimana cara mengoptimalkan pencarian gambar dalam sistem Content Based

Image Retrieval (CBIR) dan bagaimana pengaruh penerapan ekstraksi ciri statistik

orde I dan algoritma Levenberg-Marquardt di dalamnya.

1.3Maksud dan Tujuan

Maksud dilakukannya penelitian ini adalah untuk menerapkan Content Based

Image Retrieval (CBIR) dalam kasus pencarian gambar dengan

mengimplementasikan ekstraksi ciri statistik dan algoritma Levenberg-Marquardt. Sedangkan tujuan penelitian ini adalah untuk mengetahui hasil akurasi penerapan ekstraksi ciri statistik dan algoritma Levenberg-Marquardt pada sistem CBIR.

1.4Batasan Masalah

Berikut merupakan beberapa batasan masalah dalam penelitian ini : 1) Kemiripan gambar dilihat dari kemiripan warna dan bentuk.

2) Metode ekstraksi ciri yang digunakan merupakan ekstraksi ciri statistik orde 1.

(13)

1.5Metode Penelitian

Metode penelitian yang digunakan dapat dilihat dari alur di bawah ini :

Gambar 1.1Alur Metode Penelitian

Berikut merupakan penjelasan mengenai metode yang digunakan : 1) Pengumpulan data

Pada tahap ini, akan dilakukan pengumpulan data referensi – referensi mengenai Content Based Image Retrieval (CBIR), algoritma

Levenberg-Marquardt, dan berbagai teori pendukung lain.

2) Identifikasi masalah

Tahap ini merupakan tahap menganalis masalah Content Based Image

Retrieval (CBIR) yang akan dijadikan sebagai bahan penelitian.

(14)

Pada tahap ini, masalah yang sudah diidentifikasi sebelumnya dan akan dijadikan bahan penelitian diberi batasan – batasan sehingga permasalahan

Content Based Image Retrieval (CBIR) yang akan dibangun tidak semakin

meluas. Selain itu, akan dilakukan analisis mengenai metode yang akan digunakan dalam sistem seperti metode ekstraksi ciri statistik, deteksi tepi, dan algoritma Levenberg-Marquardt.

4) Implementasi

Pada tahap ini, permasalahan Content Based Image Retrieval (CBIR) dalam penelitian dirancang untuk diimplementasikan ke perangkat lunak. Setelah itu, rancangan perangkat lunak yang sudah dibuat dan semua metode yang diteliti diimplementasikan ke dalam bahasa pemograman. 5) Pengujian

Setelah perangkat lunak selesai dibangun, untuk mengetahui hasil akhir dari penelitian Content Based Image Retrieval (CBIR) ini, maka dilakukan uji coba aplikasi atau simulasi. Pengujian meliputi pengujian terhadap metode pengolahan citra dan algoritma yang digunakan serta pengujian dari fungsi CBIR itu sendiri.

6) Penarikan Kesimpulan

Setelah dilakukan pengujian, tahap akhir dari penelitian ini adalah penarikan kesimpulan dari masalah Content Based Image Retrieval

(CBIR) dengan menggunakan algoritma Levenberg-Marquardt.

1.5.1 Metode Pengumpulan Data

Metode yang digunakan dalam pengumpulan data adalah studi kepustakaan, dengan mengumpulkan literatur berupa buku, jurnal-jurnal, dan bahan-bahan materi kuliah, serta berbagai sumber dari internet.

1.5.2 Metode Pembangunan Perangkat Lunak

Metode pembangunan perangkat lunak yang digunakan merupakan metode

(15)

Gambar 1.2 Metode Pembangunan Perangkat Lunak

Berikut merupakan penjelasan mengenai metode pembangunan perangkat lunak yang digunakan :

1) Requirements Analysis

Pada tahap ini, dilakukan analisa kebutuhan apa saja yang dibutuhkan untuk pembangunan sistem Content Based Image Retrieval (CBIR) yang akan dijadikan sebagai bahan penelitian.

2) System Design

Pada tahap ini, hasil analisa kebutuhan lebih dispesifikasikan menjadi sebuah desain yang nantinya akan dikembangkan nantinya.

3) Implementation

Pada tahap ini, permasalahan Content Based Image Retrieval (CBIR) dalam penelitian dirancang untuk diimplementasikan ke perangkat lunak. Setelah itu, rancangan perangkat lunak yang sudah dibuat dan semua metode yang diteliti diimplementasikan ke dalam bahasa pemograman.

4) Integration and testing

Setelah perangkat lunak selesai dibuat, maka selanjutnya, sistem diujicobakan.

5) Deployment

(16)

6) Maintenance

Selanjutnya adalah tahap pemeliharaan dan pengembangan. Pengembangan dilakukan pada bagian – bagian yang dirasa tidak sesuai dengan apa yang diharapkan.

1.6Sistematika Penulisan

Susunan bab dari penelitian ini adalah :

BAB I PENDAHULUAN

Bab ini akan berisi latar belakang dari masalah, rumusan masalah, maksud dan tujuan penelitian, batasan masalah, metodologi penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini akan berisi berbagai teori-teori yang digunakan dalam penyelesaian penelitian seperti teori mengenai : citra, pengolahan citra, ekstraksi ciri, deteksi tepi, Content Based Image Retrieval (CBIR), kecerdasan buatan, Jaringan Syaraf Tiruan (JST), algoritma Backpropagation, dan algoritma

Levenberg-Marquardt

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini akan berisi tentang deskripsi masalah Content Based Image Retrieval

(CBIR) yang akan diselesaikan dengan pengimplementasian algoritma

Levenberg-Marquardt, data – data yang akan digunakan dalam penelitian,

perancangan tentang sistem CBIR yang akan dibangun untuk mensimulasikan permasalahan dalam penelitian.

BAB IV IMPLEMENTASI DAN PEMBAHASAN

Bab ini akan berisi pengimplementasian sistem Content Based Image

Retrieval (CBIR) yang sudah dirancang pada bab sebelumnya ke dalam

(17)

BAB V KESIMPULAN DAN SARAN

(18)
(19)

9

Secara harafiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus

(continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya

menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh oleh alat-alat optik, misalnya mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam.

Citra dapat berupa citra diam dan citra bergerak. Citra diam adalah citra tunggal yang tidak bergerak. Citra bergerak (moving images) adalah rangkaian citra diam yang ditampilkan secara beruntun (sekuensial) sehingga memberi kesan pada mata kita sebagai gambar yang bergerak. Setiap citra di dalam rangkaian itu disebut frame. Gambar-gambar yang tampak pada film layar lebar atau televisi pada hakikatnya terdiri atas ratusan sampai ribuan frame. [3]

2.2Pengolahan Citra

Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki 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.

(20)

1) Perbaikan atau memodifikasi citra perlu dilakukan untuk meningkatkan kualitas penampakan atau untuk menonjolkan beberapa aspek informasi yang terkandung di dalam citra.

2) Elemen di dalam citra perlu dikelompokkan, dicocokkan, atau diukur. 3) Sebagian citra perlu digabung dengan bagian citra yang lain.

Di dalam bidang komputer, sebenarnya ada tiga bidang studi yang berkaitan dengan data citra yakni grafika komputer (computer graphics), pengolahan citra

(image processing), dan pengenalan pola (pattern recognition/image

interpretation), namun ketiganya memiliki tujuan yang berbeda.

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

Secara umum, operasi pengolahan citra dapat diklasifikasikan menjadi : 1) Perbaikan kualitas citra (image enhancement)

Operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter citra. Dengan operasi ini, ciri-ciri khusus dalam citra dapat lebih ditonjolkan. Contoh-contoh operasi dalam perbaikan kualitas citra adalah perbaikan kontras gelap / terang, perbaikan tepian objek (edge enhancement), penajaman (sharpening), pemberian warna semu (pseudocoloring), dan penapisan derau (noise). 2) Pemugaran citra (image restoration)

Hampir sama dengan operasi perbaikan kualitas citra, operasi ini bertujuan untuk menghilangkan / meminimumkan cacat pada citra. Contoh-contoh operasi dalam pemugaran citra antara lain penghilangan kesamaran (deblurring) dan penghilangan derau (noise)

3) Pemampatan citra (image compression)

(21)

diperhatikan dalam pemampatan citra, citra yang dimampatkan harus tetap memiliki kualitas yang baik.

4) Segmentasi citra (image segmentation)

Operasi ini bertujuan untuk memecah suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Jenis operasi ini erat kaitannya dengan pengenalan pola.

5) Pengorakan citra (image analysis)

Operasi ini bertujuan untuk menghitung besaran kumulatif dari citra untuk menghasilkan deskripsinya. Teknik pengorakan citra mengekstraksi ciri-ciri tertentu yang membantu dalam identifikasi objek. Contoh-contoh operasi pengorakan citra antara lain pendeteksian tepian objek (edge detection), ekstraksi batas (boundary), dan representasi daerah (region).

6) Rekonstruksi citra (image reconstruction)

Operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi ini banyak digunakan dalam bidang medis seperti pada foto rontgen dengan sinar X yang digunakan untuk membentuk ulang gambar organ tubuh.

Pengolahan citra telah dimanfaatkan dalam berbagai bidang, beberapa di antaranya adalah [3] :

1) Bidang perdagangan

a. Pembacaan kode batang (bar code) yang tertera pada barang (umum digunakan di pasar swalayan/supermarket).

b. Mengenali huruf/angka pada suatu formulir secara otomatis. 2) Bidang militer

a. Mengenali sasaran peluru kendali mela lui sensor visual. b. Mengidentifikasi jenis pesawat musuh.

3) Bidang kedokteran

a. Pengolahan citra sinar X untuk mammografi (deteksi kanker payudara)

(22)

c. Mendeteksi kelainan tubuh dari foto sinar X. d. Rekonstruksi foto janin hasil USG

4) Bidang biologi

Pengenalan jenis kromosom melalui gambar mikroskopik 5) Bidang komunikasi data

Pemampatan citra yang ditransmisi. 6) Bidang hiburan

Pemampatan video (MPEG) 7) Bidang robotika

Visualy-guided autonomous navigation

8) Bidang pemetaan

Klasifikasi penggunaan tanah melalui foto udara/LANDSAT 9) Bidang geologi

Mengenali jenis batu-batuan melalui foto udara/LANDSAT 10)Bidang hukum

a. Pengenalan sidik jari

b. Pengenalan foto narapidana.

2.3Ekstraksi Ciri

Ekstraksi ciri adalah proses untuk mengubah tiap gambar yang terdapat dalam file gambar menjadi susunan kode biner (angka 0 dan 1). Suatu ekstraksi ciri dapat meminimumkan dimensi data dengan mempertahankan informasi penting yang terkandung di dalam sebuah objek.

Ekstraksi ciri merupakan langkah awal dalam melakukan klasifikasi dan interpretasi citra. Proses ini berkaitan dengan kuantisasi karakteristis citra ke dalam sekelompok nilai ciri yang sesuai.

Tujuan dari pemilihan ciri khas (feature selection) citra adalah untuk : 1) Mencari ciri yang paling optimum dari suatu objek yang dapat digunakan

untuk membedakan objek tersebut dengan objek lainnya.

(23)

Beberapa metode yang dapat digunakan untuk melakukan ekstraksi ciri antara lain :

1) Metode statistik

Metode statistik menggunakan perhitungan statistik distribusi derajat keabuan (histogram) dengan mengukur tingkat kekontrasan, granularitas, dan kekasaran suatu daerah dari hubungan ketetanggaan antar piksel di dalam citra.

2) Metode spektral

Metode spektral berdasarkan pada fungsi autokorelasi suatu daerah atau power distribution pada domain transformasi Fourier dalam mendeteksi periodisitas tekstur.

3) Metode struktural

Analisis dengan metode ini menggunakan deskripsi primitif tekstur dan aturan sintaktik. Metode struktural banyak digunakan untuk pola-pola makrostruktur. [4]

2.4Ekstraksi Ciri Statistik

Ekstraksi ciri statistik merupakan metode pengambilan ciri yang didasarkan pada karakteristik histogram citra. Histogram menunjukkan probabilitas kemunculan nilai derajat keabuan piksel pada suatu citra. Ekstraksi ciri statistik terbagi menjadi dua metode yaitu [5] :

1) Ekstraksi ciri orde pertama

Parameter ciri yang dihasilkan dari ekstraksi ciri orde pertama yakni : a. Mean

Menunjukkan ukuran dispersi dari suatu citra.

� = (2.1)

dengan

fn : nilai skala keabuan

P(fn) : probabilitas kemunculan skala keabuan

b. Variance

(24)

� = − � ( ) (2.2)

c. Skewness

Menunjukkan tigkat kemencengan relatif kurva histogram dari suatu citra.

� =

� − � ( ) (2.3)

d. Kurtosis

Menunjukkan tingkat keruncingan realatif kurva histogram dari suatu citra.

� =

� − � − (2.4)

e. Entrophy

Menunjukkan ukuran ketidakteraturan bentuk dari suatu citra.

= − ∙ � � ( ) (2.5) 2) Ekstraksi ciri orde kedua

Ekstraksi ciri orde kedua digunakan bila ekstraksi ciri orde pertama tidak dapat lagi digunakna untuk mengenali perbedaan antar citra. Parameter ciri yang dihasilkan dari ekstraksi ciri orde kedua yakni :

a. Angular Second Moment

Menunjukkan ukuran sifat homogenitas citra.

= ( , ) (2.6)

b. Contrast

Menunjukkan ukuran penyebaran (momen inersaia) elemen-elemen matriks citra. Jika letaknya jauh dari diagonal utama, maka nilai kekontrasan besar. Nilai kekontrasan adalah ukuran variasi antar derajat keabuan suatu daerah citra.

�� �= ( − ) ( , ) (2.7)

c. Correlation

(25)

�= , −� �

� � (2.8)

d. Inverse Different Moment (IDM)

Menunjukkan kehomogenan citra yang berderajat keabuan sejenis. Citra homogen akan memiliki harga IDM yang besar.

=

+ − ( , ) (2.9)

e. Entrophy

Menunjukkan ukuran ketidakteraturan bentuk. Harga ENT besar untuk citra dengan transisi derajat keabuan merata dan bernilai kecil jika struktur citra tidak teratur (bervariasi).

�= − ( , )� �( ( , )) (2.10)

2.5Deteksi Tepi

Faktor kunci dalam mengekstraksi ciri adalah kemampuan mendeteksi keberadaan tepi (edge) dari objek di dalam citra. Yang dimaksud dengan tepi di sini adalah perubahan nilai intensitas derajat keabuan yang mendadak (besar) dalam jarak yang singkat. Perbedaan intensitas inilah yang menampakkan rincian pada gambar. Tepi biasanya terdapat pada batas antara dua daerah berbeda pada suatu citra. Tepi dapat diorientasikan dengan suatu arah, dan arah ini berbeda-beda pada bergantung pada perubahan intensitas.

Ada tiga macam tepi yang terdapat di dalam citra digital yakni : 1) Tepi curam

Tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90°. 2) Tepi landai

Disebut juga tepi lebar, yaitu tepi dengan sudut arah yang kecil. Tepi landai dapat dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan.

3) Tepi yang mengandung derau (noise)

(26)

Gambar 2.1 Jenis-Jenis Tepi Citra Digital (dari kiri ke kanan) Tepi Curam, Tepi Landai, Tepi yang Mengandung Derau

Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek di dalam citra. Karena tepi termasuk ke dalam komponen berfrekuensi tinggi, maka pendeteksian tepi dapat dilakukan dengan penapis lolos-tinggi. Terdapat beberapa teknik yang digunakan untuk mendeteksi tepi, antara lain [3] :

1) Operator gradien pertama (differential gradient) 2) Operator turunan kedua (Laplacian)

3) Operator kompas (compass operator)

2.6Content Based Image Retrieval (CBIR)

Content Based Image Retrieval System (CBIR) merupakan teknik pencarian

kembali gambar yang mempunyai kemiripan karakteristik atau content dari sekumpulan gambar. Proses secara umum dari CBIR pada image query dilakukan proses ekstraksi fitur. Parameter fitur gambar yang dapat digunakan untuk retrieval pada sistem ini seperti histogram, susunan warna, tekstur, bentuk, tipe spesifik dari obyek, tipe event tertentu, nama individu, lokasi, emosi. Image query terdiri atas 3 level, yaitu:

1) Level 1

Retrieval dengan primitive feature, seperti color, shape, teksture. 2) Level 2

(27)

3) Level 3

Retrieval dengan abstract feature, seperti nama even, tipe aktifitas, emotional, religius.

Beberapa pokok persoalan yang sering terjadi dalam pembangunan CBIR dapat diuraikan sebagai berikut:

1) Pemahaman gambar yang dibutuhkan oleh user dan pencarian informasi. 2) Pengidentifikasian cara yang sesuai dalam image content atau karakteristik

dari gambar.

3) Proses ekstraksi fitur dari gambar.

Ekstraksi fitur merupakan proses penting pada sistem CBIR karena hasil dari proses ini perbedaan pada setiap gambar dapat diketahui berdasarkan cirinya seperti ciri bentuk, warna, tekstur dan lain – lain. Beberapa teknik yang dapat digunakan untuk ekstraksi fitur antara lain : teknik analisis komponen utama, besaran statistik , histogram warna, wavelet transform dan lain – lain. [6]

2.7Kecerdasan Buatan

Kecerdasan buatan atau Artificial Intelligence merupakan cabang dari ilmu komputer yang mempelajari bagaimana membuat mesin (komputer) agar dapat melakukan pekerjaan dengan baik seperti apa yang dilakukan manusia atau bahkan lebih baik.

Agar mesin bisa menjadi cerdas, maka mesin harus diberi bekal pengetahuan dan kemampuan untuk menalar. Cerdas yang dimaksud di sini adalah memilki pengetahuan dan pengalaman yang dapat digunakan untuk mengambil suatu keputusan atau suatu tindakan dengan baik. Terdapat dua bagian utama yang dibutuhkan dalam pengembangan aplikasi kecerdasan buatan, yakni [7] :

1) Basis pengetahuan (Knowledge base)

Basis pengetahuan berisi fakta-fakta, teori, pemikiran, dan hubungan antara satu dengan yang lainnya.

2) Motor inferensi (Inference agent)

(28)

Definisi – definisi kecerdasan buatan, diorganisasikan ke dalam empat kategori yakni [8] :

1) Thinking humanly (The cognitive modelling approach)

Pendekatan ini mencoba menangkap pemikiran – pemikiran melalui introspeksi dan melalui eksperimen – eksperimen psikologi.

2) Acting humanly (The Turing test approach)

Seperti eksperimen yang dilakukan Alan Turing (1950), dirancang suatu ujian bagi komputer yang menggunakan kecerdasan buatan, apakah mampu mengelabui seorang manuasi yang menginterogasi komputer tersebut melalui teletype. Jika interrogator tidak dapat membedakan apakah yang diinterogasi adalah manusia atau komputer, maka komputer tersebut lolos dari Turing test. Komputer tersebut perlu memiliki kemampuan: Natural Language Processing, Knowledge Representation,

Automated Reasoning, Machine Learning, Computer Vision, Robotics.

Turing Test sengaja menghindari interaksi fisik antara interrogator dan komputer karenasimulasi fisik manusia tidak memerlukan kecerdasan.

3) Thinking rationally (The laws of thought approach)

Terdapat dua masalah dalam pendekatan ini, yang pertama tidak mudah untuk membuat pengetahuan informal dan menyatakannya dalam formal

term yang diperlukan oleh notasi logika, khususnya ketika pengetahuan

tersebut memiliki kepastian kurang dari 100%. Selain itu, masalah yang kedua adalah terdapat perbedaan besar antara dapat memecahkan masalah “dalam prinsip” dan juga memecahkannya dalam praktek.

4) Acting rationally (The rational agent approach)

(29)

2.8Jaringan Syaraf Tiruan

Jaringan Syaraf Tiruan (JST) atau yang disebut juga dengan neural network

merupakan salah satu cabang dari kecerdasan buatan. JST adalah simulasi perangkat lunak dengan arsitektur dan operasi yang diilhami dari pengetahuan tentang sel syaraf biologis di dalam otak (neuron). JST merupakan salah satu representasi buatan dari otak manusia yang bekerja dengan menstimulasi proses pembelajaran yang diterima otak manusia tersebut. Ide dari ilmu tentang neural network ini pertama kali ditemukan oleh seorang ahli psikologi, William James, pada tahun 1890 yang kemudian dilakukan pengembangan model neuron secara matematik oleh McCulloch dan Pitts pada tahun 1943. JST menyerupai otak manusia dalam dua hal, yaitu:

1) Pengetahuan diperoleh jaringan melalui proses belajar.

2) Kekuatan hubungan antar sel syaraf (neuron) yang dikenal sebagai bobot- bobot sinaptik digunakan untuk menyimpan pengetahuan.

JST mempunyai sifat dan kemampuan: 1) Nonlinieritas (Nonlinearity)

2) Pemetaan Input-Output (Input-Output Mapping) 3) Adaptivitas (Adaptivity)

4) Respon Yang Jelas (Evidential Response)

5) Informasi Yang Sesuai Dengan Keadaan (Contextual Information) 6) Toleransi Kesalahan (Fault Tolerance)

7) Kemampuan Implementasi Pada VLSI (VLSI Implementability)

8) Keseragaman Analisis Dan Perancangan (Unifomity of Analysis and Design)

9) Analogi Sel Syaraf Biologi (Neurobiological Analogy)

(30)

1) Pemrosesan informasi terjadi pada elemen - elemen sederhana yang disebut neuron.

2) Sinyal – sinyal merambat di antara neuran melalui suatu sambungan penghubung.

3) Setiap sambungan penghubung memiliki bobot yang bersesuaian yang berfungsi untuk menggandakan / mengalikan sinyal yang dikirim. 4) Setiap neuron menerapkan fungsi aktifasi terhadap sinyal hasil

penjumlahan berbobot yang masuk untuk menentukan sinyal keluaran. Pada dasarnya karakteristik JST ditentukan oleh [9] :

1) Pola hubungan antar neuron (disebut arsitektur jaringan).

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

3) Fungsi aktivasi.

Pada JST, neuron-neuron akan dikumpulkan dalam lapisan-lapisan (layer) yang disebut dengan lapisan neuron (neuron layers). Neuron-neuron pada satu lapisan akan dihubungkan dengan lapisan-lapisan sebelum dan sesudahnya. Informasi yang diberikan pada jaringan syaraf akan dirambatkan lapisan ke lapisan, mulai dari lapisan masukan sampai ke lapisan keluaran melalui lapisan tersembunyi (hidden layer). Faktor terpenting dalam menentukan kelakuan suatu neuron adalah fungsi aktivasi dan pola bobotnya. Umumnya neuron-neuron yang terletak pada lapisan yang sama akan memiliki keadaan yang sama sehingga pada setiap lapisan yang sama neuron-neuron memiliki fungsi aktivasi yang sama. Bila neuron-neuron pada suatu lapisan (misal lapisan tersembunyi) akan dihubungkan dengan neuron-neuron pada lapisan lain (misal lapisan keluaran) maka setiap neuron pada lapisan tersebut (lapisan tersembunyi) juga harus dihubungkan dengan setiap neuron pada lapisan lainnya (lapisan keluaran). Terdapat 3 macam arsitektur JST, yakni:

1) Jaringan dengan lapisan tunggal (single layer net)

(31)

Seberapa besar hubungan antara 2 neuron ditentukan oleh bobot yang bersesuaian. Semua unit masukan akan dihubungkan dengan setiap unit keluaran.

Gambar 2.2 JST dengan Lapisan Tunggal

2) Jaringan dengan banyak lapisan (multilayer net)

(32)

Gambar 2.3 JST dengan Banyak Lapisan

3) Jaringan dengan lapisan kompetitif (competitive layer net)

Pada jaringan ini sekumpulan neuron bersaing untuk mendapatkan hak menjadi aktif. Umumnya hubungan antar neuron pada lapisan kompetitif ini tidak diperlihatkan pada diagram arsitektur.

(33)

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

Pelatihan Jaringan Syaraf bertujuan untuk mencari bobot-bobot yang terdapat pada setiap layer. Terdapat dua jenis pelatihan dalam sistem JST, yakni [11] :

1) Supervised Learning

Dalam proses pelatihan ini, jaringan dilatih dengan cara diberikan data-data yang disebut training data yang terdiri atas pasangan input-output

yang diharapkan dan disebut associative memory. Setelah jaringan dilatih,

associative memory dapat mengingat suatu pola. Jika jaringan diberi input

baru, jaringan dapat menghasilkan output seperti yang diharapkan berdasarkan pola yang sudah ada.

2) Unsupervised Learning

Dalam proses pelatihan ini, jaringan dilatih hanya dengan diberi data input

yang memiliki kesamaan sifat tanpa disertai output.

2.9Algoritma Backpropagation

(34)

lewat suara, pendeteksi penyakit dan masih banyak lagi penerapan algoritma

backpropagation ini.

Backpropagation digunakan oleh perceptron dengan banyak lapisan untuk

mengubah bobot-bobot yang terhubung dengan neuron-neuron yang terdapat pada lapisan tersembunyi. Algoritma propagasi balik menggunakan error output agar dapat mengubah nilai bobot – bobotnya dalam proses mundur (backward) untuk mendapatkan error ini, tahap perambatan maju, neuron – neuron diaktifkan dengan menggunakan fungsi aktivasi sigmoid, sedangkan dalam melakukan sebuah proses perambatan maju dan mundur disebut epoch atau iterasi. [12]

Berikut merupakan tahapan pada proses pelatihan algoritma

backpropagation :

(35)

2.10Algoritma Levenberg-Marquardt

Algoritma Levenberg-Marquardt pengembangan algoritma backpropagation

standar yang secara umum prosesnya masih seperti algoritma backpropagation. Bila pada algoritma backpropagation, proses update bobot dan bias menggunakan

negative gradient descent secara langsung, algoritma Levenberg-Marquardt

menggunakan pendekatan matriks Hesian (H) yang dapat dihitung dengan persamaan 2.11 :

= �J (2.11)

sedangkan gradient dapat dihitung dengan persamaan 2.12 :

= � (2.12)

J merupakan sebuah matrik jacobian yang berisikan turunan pertama dari error

jaringan terhadap bobot dan bias jaringan. Matriks Jacobian dapat dihitung dengan persamaan 2.13 [12] :

= � (2.13)

Perubahan pembobot dapat dihitung dengan persamaan 2.14 [13] :

∆�= � + � − � (2.14)

di mana μ merupakan konstanta learning, I merupakan matrik identitas dan � merupakan vektor yang menyatakan semua error pada output jaringan

Berikut tahapan pada proses pelatihan algoritma Levenberg-Marquardt : Langkah 1 : Inisialisasi bobot dan parameter.

Langkah 2 : Hitung input setiap node pada hidden layer

_ = = × (2.15)

di mana :

z_inj : jumlah total input untuk node ke-j

n : jumlah node pada hidden layer sebelumnya, untuk hidden layer yang pertama n adalah jumlah

node input

(36)

sebelumnya, untuk hidden layer yang pertama xi adalah input yang diterima oleh sistem

wij : bobot yang menghubungkan antara node ke-i dan

node ke-j

Hitung output setiap node pada hidden layer dengan fungsi aktivasi

= ( _ ) (2.16) di mana :

zj : output dari node ke-j

=

+�� ⁡(− ) (2.17)

Langkah 3 : Hitung input setiap node pada output layer

_ = = × (2.18)

dimana :

y_ink : jumlah total input untuk node ke-k

n : jumlah node pada hidden layer sebelum output layer

wjk : bobot yang menghubungkan antara node ke-j dan

node ke-k

Hitung output pada setiap node pada output layer

= ( _ ) (2.19)

dimana :

yk : output dari node ke-k

Langkah 4 : Hitung error setiap node pada output layer = [� − ]� (2.20)

dimana :

k : banyaknya unit pada output layer

(37)

Langkah 6 : Hitung selisih bobot dengan persamaan 2.14

Langkah 7 : Update error dengan persamaan :

= � (2.21)

Langkah 8 : Update bobot pada setiap node pada output layer

dan hidden layer dengan persamaan :

= + ∆ (2.22)

= + ∆ (2.23)

dimana ∆� dan ∆� berasal dari matriks ∆�

Jika iterasi masih berlanjut (epoch < max epoch dan error > max error), terdapat 2 kemungkinan [14] :

(38)
(39)

29

Pengembangan penelitian mengenai Content Based Image Retrieval sudah pernah dilakukan sebelumnya. Sistem yang dikembangkan sebelumnya lebih banyak berfokus pada fitur warna juga tanpa menggunakan metode pengelompokan khusus.

Masalah muncul karena dengan menggunakan fitur warna, seringkali dipengaruhi oleh seberapa intensitas cahaya yang dimiliki suatu citra. Selain itu, tanpa metode pengelompokan gambar, sistem CBIR belum dapat menghasilkan hasil yang baik.

Dalam penelitian ini, metode yang diajukan untuk sistem CBIR adalah metode ekstraksi ciri statistik. Metode ini dipilih dengan pertimbangan bahwa metode ini cukup mudah diimplementasikan dan dapat menghasilkan hasil ekstraksi yang cukup baik [15].

Selain itu, dengan harapan untuk dapat meningkatkan akurasi sistem, maka akan diterapkan metode klasifikasi dengan algoritma Levenberg-Marquardt. Alasan penggunaan metode ini adalah karena metode ini merupakan pengembangan metode backpropagation yang mampu melakukan klasifikasi citra dengan baik [16].

3.2Analisis Data Masukan

Data yang digunakan sebagai data masukan dalam sistem Content Based

Image Retrieval (CBIR) ini adalah gambar dengan format .bmp, .jpg, .jpeg,

(40)

gambar masukan yang akan digunakan 120 data yang berasal dari 8 kategori klasifikasi yang berbeda. Setiap kategori menggunakan 15 data. Adapun kategori yang digunakan yakni bunga matahari, bunga mawar, harimau, daun, bis, burung, anjing, dan bumi. Berikut merupakan kategori gambar yang akan digunakan beserta dengan nilai target outputnya :

Tabel 3.1 Target Klasifikasi

Nilai Target

(Y1,Y2,Y3) Klasifikasi

000 Harimau 001 Bunga mawar 010 Daun 011 Bunga matahari

100 Bis

101 Burung 110 Anjing 111 Bumi

3.3Analisis Sistem

Sistem Content Based Image Retrieval (CBIR) dengan algoritma

Levenberg-Marquardt secara umum dapat dilihat dari skema berikut :

(41)

Berikut penjelasan umum sistem :

1) Gambar masukan diambil dari 120 data gambar yang sudah disiapkan untuk penelitian. Gambar yang masuk sistem akan melalui tahap pre-processing yakni proses resize dan grayscale.

2) Gambar yang telah melalui tahap pre-processing tersebut kemudian

digunakan untuk proses ekstraksi ciri statistik yang akan menghasilkan nilai mean, variance, skewness, kurtosis, dan entrophy.

3) Nilai – nilai tersebut akan digunakan sebagai variabel dalam input layer

pada jaringan Levenberg-Marquardt.

4) Dilakukan proses pelatihan Levenberg-Marquardt yang akan

menghasilkan bobot-bobot baru untuk proses pengujian dan hasil klasifikasi citra latih yang akan digunakan untuk pencocokan gambar. Hasil klasifikasi ini akan disimpan dalam database.

5) Dengan menggunakan beberapa citra uji, dilakukan proses pengujian

Levenberg-Marquardt. Pengujian ini akan menghasilkan klasifikasi citra

yang akan dicocokkan dengan data hasil latih dalam database untuk mendapatkan hasil retrieval.

6) Hasil retrieval yang didapat akan ditampilkan secara urut dengan melihat nilai error yang paling kecil.

3.4Analisis Metode

Dalam penelitian ini metode yang digunakan adalah metode pengolahan citra dan metode kecerdasan buatan yang meliputi tahap pre-processing ekstraksi ciri, dan algoritma Levenberg-Marquardt.

3.4.1 Pre-processing

Pre-processing yang akan dilakukan pada penelitian ini adalah proses

resizegambar masukan menjadi ukuran 150 x 150 piksel. Hal ini ditujukan untuk

(42)

Berikut merupakan contoh dengan menggunakan citra bumi :

Gambar 3.2 Citra Bumi (1)

Citra masukan di atas memiliki ukuran asli 750 x 750 piksel, yang kemudian

diresize menjadi citra 150 x 150 piksel. Tahap selanjutnya adalah mengubah citra

berwarna menjadi citra grayscale. Adapun persamaan yang digunakan untuk mengubah citra berwarna menjadi grayscale yang digunakan adalah :

� � = �+ + (3.1)

dengan :

R : nilai Red piksel G : nilai Green piksel B : nilai Blue piksel

Gambar 3.3 Citra Bumi Grayscale 150 x 150 piksel

3.4.2 Ekstraksi Ciri

(43)

Dengan citra yang sudah diolah menjadi citra grayscale berukuran 150 x 150 piksel, maka kita lakukan proses ekstraksi ciri. Proses ekstraksi ciri dimulai dengan mengambil nilai keabuan dari setiap piksel citra.

Gambar 3.4 Nilai Keabuan Citra Bumi

Selanjutnya, hitung total dan probabilitas kemunculan piksel dengan skala keabuan yang sama. Probabilitas atau nilai histogram dihitung dengan

persamaan :

= (3.2)

dengan

ni : jumlah piksel yang memiliki skala keabuan i

n : jumlah seluruh piksel citra

Tabel yang menunjukan skala keabuan beserta jumlah piksel dan probabilitas atau nilai histogramnya dapat dilihat pada lampiran E.

Setelah itu dilakukan perhitungan ekstraksi ciri statistik orde 1 untuk semua skala keabuan.

1) Mean

Mean dihitung dengan persamaan 2.1 yakni :

�=

dengan :

fn : skala keabuan

P(fn) : probabilitas skala keabuan (lampiran E) maka,

� = × , + × , + + × = ,

0 0

(44)

2) Variance

Variance dihitung dengan persamaan 2.2 yakni :

� = − � ( )

dengan :

� : nilai mean

maka,

� = − , × , + − , × , + +

− , × = ,

3) Skewness

Skewness dihitung dengan persamaan 2.3 yakni :

� =

� − � ( )

dengan :

� : standar deviasi skala keabuan maka,

� =

, − , × , + − , × ,

+ + − , × = ,

4) Kurtosis

Kurtosis dihitung dengan persamaan 2.4 yakni :

� =

� − � −

� =

, × − , × , − + − , ×

, − + + − , × − = 4,513

5) Entrophy

Entrophy dihitung dengan persamaan 2.5 yakni :

= − ∙ � � ( )

=−( , × � � , + , × � � , +

(45)

Nilai mean, variance, skewness, kurtosis, dan entrophy inilah yang akan menjadi input layer pada algoritma Levenberg-Marquardt. Untuk perhitungan ekstraksi ciri statistik semua data dapat dilihat pada lampiran F.

3.4.3 Algoritma Levenberg-Marquardt

Algoritma Levenberg-Marquardt yang digunakan terdiri dari proses pelatihan dan proses pengujian. Berikut merupakan beberapa parameter yang harus ditentukan sebelum proses pelatihan :

1) Maximum epoch

Epoch merupakan perulangan atau iterasi dari proses yang dilakukan

untuk mencapai target yang ditentukan. Maximum epoch adalah jumlah maksimal yang akan dilakukan selama proses pelatihan. Iterasi akan dihentikan bila nilai epoch sudah melebihi maximum epoch

2) Maximum error

Maximum error merupakan nilai toleransi error yang juga akan digunakan

untuk kondisi penghentian iterasi. Iterasi akan dihentikan bila nilai error

lebih kecil atau sama dengan maximum error.

3) Learning rate / parameter Marquardt

Learning rate atau disebut juga parameter Marquardt � merupakan laju

pembelajaran yang berupa perkalian negatif dari gradien untuk menentukan perubahan nilai bobot dan bias. Semakin besarnya learning rate akan berpengaruh pada semakin besarnya langkah pembelajaran. Penentuan nilai learning rate perlu diperhatikan karena jika nilai learning rate diatur terlalu besar, maka algoritma akan menjadi tidak stabil. Namun jika nilai learning rate diatur terlalu kecil, maka algoritma akan mencapai target dalam jangka waktu yang lama.

4) Faktor beta

(46)

Dengan 5 input yang dimasukkan antara lain mean, variance, skewness, kurtosis, dan entrophy, dan 3 output yang ingin dihasilkan, maka jumlah hidden

layer ditentukan dengan :

= × (3.3) dengan :

NH : jumlah node hidden

NI : jumlah node input

NO : jumlah node output

maka,

�� = 5 × 3

= 3,873 ≈4

Sesuai dengan perhitungan di atas, maka ditentukan bahwa hidden layer yang digunakan adalah 2. Berikut merupakan gambaran rancangan arsitektur yang digunakan :

Gambar 3.5 Arsitektur Levenberg-Marquardt

(47)

Berikut merupakan tahap – tahap dalam proses pelatihan Levenberg-

Marquardt (diterapkan pada contoh citra bumi yang sudah diekstraksi ciri) :

1) Inisialisasi parameter awal yakni maximum epoch, maximum error,

learning rate, dan faktor beta. Untuk simulasi ini, dipilih maximum epoch

= 10, maximum error = 0,01, � = 0,01, dan β = 2.

Inisialisasi bobot awal. Bobot awal merupakan bilangan acak antara 0 sampai 1. Berikut merupakan bobot yang digunakan sebagai contoh :

� =

2) Hitung input setiap node pada hidden layer dengan persamaan 2.15

_ = ×

=

dengan :

xi : input sistem berupa nilai mean, variance, skewness, kurtosis, dan

entrophy yang dinormalisasi dengan range yang didapat dari

perhitungan pada lampiran H, seperti berikut :

Tabel 3.2 Range Mean

Tabel 3.3 Range Variance

(48)

5520,269 – 6594,69 0,75 6594,691 – 7669,112 0,875 7669,113 – 8743,534 1

Tabel 3.4 Range Skewness

Skewness Representasi

Tabel 3.5 Range Kurtosis

Kurtosis Representasi

Tabel 3.6 Range Entrophy

Entrophy Representasi

wij : bobot acak awal yang diinisialisasi pada langkah 1

(49)

_

Hitung output setiap node pada hidden layer dengan persamaan 2.16 dan 2.17

3) Hitung input setiap node output layer dengan persamaan 2.18

_ = ×

Hitung output setiap node output layer dengan persamaan 2.19

(50)

=

4) Hitung error setiap node output layer dengan persamaan 2.20. Tahap ini merupakan awal tahap propagasi balik.

= [� − ]�

5) Hitung matriks Jacobian dengan persamaan 2.13

(51)

=

0,647 0,809 1,294 1,078 2,699 3,235 … 0,809 1,044 0,602 0,752 1,203 1,003 2,507 3,009 … 0,752 0,971 0,488 0,611 0,977 0,814 2,035 2,443 … 0,611 0,788

6) Hitung selisih bobot dengan persamaan 2.14

∆� = � + � − �

Berikut merupakan hasil selisih bobot yang didapat :

∆�=

7) Update error dengan persamaan 2.21

(52)

8) Update bobot setiap node output layer dengan persamaan 2.22

Update bobot setiap node hidden layer dengan persamaan 2.23

= + ∆

error. Iterasi baru dihentikan setelah mencapai maximum epoch yakni 1000. Nilai

bobot baru yang didapat adalah :

� =

Selanjutnya akan dilakukan proses pengujian. Pengujian algoritma

Levenberg-Marquardt yang menggunakan tahap yang sama dengan pelatihan namun tanpa

proses propagasi balik. Bobot yang digunakan bukan bilangan acak melainkan bobot baru dari proses pelatihan.

1) Inisialisasi bobot. Bobot yang digunakan diambil dari proses pelatihan.

(53)
(54)

�_

Hitung output setiap node output layer

= ( _ )

� ≥0,5 maka �= 1 selain itu 0. Hasil klasifikasi output yang diharapkan dapat dilihat kembali pada tabel 3.1.

Dengan contoh perhitungan di atas, hasil Y1, Y2, Y3 yang didapat sebesar 0,639, 0,656, dan 0,702

Tabel 3.7 Hasil Klasifikasi Citra Latih

Y1 Y2 Y3

0,639 0,656 0,702

Nilai Target 1 1 1

(55)

Sebagai contoh, pengujian akan dilakukan pada citra bumi baru seperti berikut :

Gambar 3.6 Citra Bumi (2)

Citra di atas memiliki nilai ekstraksi ciri statistik mean : 45,661, variance : 3444,463, skewness : 1,140, kurtosis : 3,369, dan entrophy : 3,708. Maka, berikut proses pengujian Levenberg-Marquardt untuk mengetahui hasil klasifikasi citra tersebut :

(56)

_4 = 0,25 × 0,132 + 0,5 × 0,305 +

Hitung output setiap node output layer

(57)

�2 =

Melihat dari hasil perhitungan di atas, nilai Y1, Y2, Y3 yang didapat sebesar 0,674, 0,696, dan 0,751

Tabel 3.8 Hasil Klasifikasi Citra Uji

Y1 Y2 Y3

0,674 0,696 0,751

Nilai Target 1 1 1

Nilai target yang didapat adalah 1 1 1, maka gambar tersebut masuk klasifikasi citra bumi.

Dengan menggunakan contoh perhitungan sebelumnya, setiap citra dengan hasil target 1 1 1 akan disimpan ke database dengan hasil klasifikasi citra bumi, kemudian ketika pengguna memasukan citra bumi baru ke sistem retrieval, sistem akan mencocokan semua citra dengan nilai yang sama dalam database, yang kemudian akan ditampilkan sebagai hasil retrieval citra bumi. Begitupun berlaku untuk semua citra lain.

Sebagai contoh, ketika mengujikan citra bumi kedua, jika pengguna ingin mendapatkan hasil retrieval, maka sistem akan menampilkan citra bumi pertama yang sudah dilatih dan diujikan sebagai citra yang sudah terdapat dalam database.

3.5Analisis Kebutuhan Non-Fungsional

Untuk dapat membangun dan mengimplementasikan sistem, terdapat beberapa spesifikasi komponen-komponen yang dibutuhkan. Berikut analisis kebutuhan non-fungsional sistem :

3.5.1 Analisis Kebutuhan Perangkat Keras

Spesifikasi perangkat keras yang dibutuhkan untuk membangun sistem antara lain :

(58)

2) Processor : Intel Core i3 CPU @ 2,10 GHz 3) RAM : 2 GB

4) Keyboard

5) Mouse

3.5.2 Analisis Kebutuhan Perangkat Lunak Berikut perangkat lunak yang digunakan : 1) Sistem operasi : Windows 7 Ultimate 2) Microsoft Visual Studio 2010

3) XAMPP Server 4) SQLYog Community

3.5.3 Analisis Kebutuhan Pengguna

Adapun kriteria pengguna yang dapat menggunakan sistem ini adalah : 1) Pengguna memahami cara mengoperasikan komputer.

2) Pengguna memahami cara kerja sistem CBIR dengan proses klasifikasi

3.5.4 Analisis Basis Data

1) Entity Relationship Diagram (ERD)

Untuk dapat melihat hubungan antar entitas dalam sistem, dapat dilihat dari diagram berikut :

(59)

2) Kamus Data

Secara lebih rinci, atribut setiap entitas dapat dilihat dalam tabel berikut :

Tabel 3.9 Kamus Data

3.6Pemodelan Sistem

3.6.1 Use Case Diagram

Untuk mengetahui interaksi yang dapat dilakukan pengguna dalam sistem, dapat dilihat dari diagram berikut :

Gambar 3.8 Use Case Diagram

Entitas Atribut Keterangan

t_masukan id_gambar int (4) not null, gambar longblob

Primary key

t_hasil mean double, variance double,

id_gambar int (4) not null Foreign key, primary key t_analisis id_gambar int (4) not null,

(60)

3.6.1.1Definisi Aktor

Tabel 3.10 Definisi Aktor

Aktor Deskripsi

Pengguna Aktor ini memiliki hak untuk memasukkan data, melakukan pengolahan citra, melakukan pelatihan algoritma Levenberg-Marquardt, melakukan pengujian, dan mendapatkan hasil retrieval citra dan akurasi algoritma.

3.6.1.2Definisi Use Case

Tabel 3.11 Definisi Use Case

Use Case Deskripsi

Ekstraksi ciri statistik

Fungsi ini digunakan untuk melakukan proses perhitungan ekstraksi ciri statistik

Pelatihan Levenberg-Marquardt

Fungsi ini dapat digunakan oleh aktor untuk melakukan proses pelatihan algoritma Levenberg-Marquardt

Pengujian Levenberg-Marquardt

Fungsi ini dapat digunakan oleh aktor untuk melakukan proses pengujian algoritma Levenberg-Marquardt untuk mengetahui hasil klasifikasi citra masukan.

Retrieval

Fungsi ini dapat digunakan oleh aktor untuk mendapatkan hasil retrieval dari sistem berdasarkan citra masukan dan mendapatkan hasil analisisnya

3.6.2 Use Case Scenario

Untuk lebih memahami setiap use case dapat dilihat dari skenario di bawah :

Tabel 3.12 Use Case Scenario Ekstraksi Ciri Statistik

Use Case Name Ekstraksi Ciri Statistik

Related

Requirements -

Goal in Context Pengguna dapat melakukan perhitungan ekstraksi ciri statistik

Preconditions Pengguna memiliki data berupa gambar

Successful End

Condition Didapatkan nilai-nilai keluaran ekstraksi ciri statistik Failed End

Condition

Tidak berhasil didapatkan nilai-nilai keluaran ekstraksi ciri statistik

Primary Actor Pengguna

Trigger Sistem mendapatkan hasil ekstraksi ciri statistik

Main Flow

3 Melakukan pre-processing

4 Melakukan kalkulasi ekstraksi ciri statistik

5 Menampilkan hasil ekstraksi

(61)

-

Tabel 3.13 Use Case Scenario Pelatihan Levenberg-Marquardt

Use Case Name Pelatihan Levenberg-Marquardt

Related

Requirements -

Goal in Context Pengguna dapat menggunakan proses pelatihan algoritma

Levenberg-Marquardt

Preconditions Pengguna memiliki data latih di dalam database

Successful End Condition

Proses kalkulasi pelatihan menghasilkan hasil klasifikasi yang akan disimpan dalam database

Failed End

Condition Proses kalkulasi tidak berhasil diselesaikan

Primary Actor Pengguna

Trigger Sistem menyimpan hasil klasifikasi di database

Main Flow

Step Action

Pengguna Sistem 1 Memilih menu

pelatihan

2 Melakukan pre-processing 3 Melakukan ekstraksi ciri statistik

4 Melakukan kalkulasi pelatihan Levenberg-Marquardt

5 Menyimpan hasil klasifikasi ke database

Extensions Step Branching Action

-

Tabel 3.14 Use Case Scenario Pengujian Levenberg-Marquardt

Use Case Name Pengujian Levenberg-Marquardt

Related

Requirements Pelatihan Levenberg-Marquardt, ekstraksi ciri statistik

Goal in Context Pengguna dapat proses pengujian algoritma Levenberg-Marquardt

dan mendapatkan hasil klasifikasi citra

Preconditions Sudah dilakukan proses pelatihan sebelumnya dan terdapat hasil

klasifikasi data latih dalam database

Successful End

Condition Citra masukan dapat diklasifikasikan Failed End

Condition Citra masukan tidak dapat diklasifikasikan

Primary Actor Pengguna

Trigger Sistem menampilkan hasil klasifikasi citra masukan

Main Flow

Step Action

Pengguna Sistem

1 Memilih menu uji

2 Melakukan kalkulasi pengujian Levenberg-Marquardt

3 Menampilkan hasil klasifikasi citra uji

Extensions Step Branching Action

(62)

Tabel 3.15 Use Case Scenario Retrieval

Use Case Name Retrieval

Related

Requirements Pengujian Levenberg-Marquardt

Goal in Context Pengguna bisa mendapatkan gambar-gambar serupa dengan citra

masukan

Preconditions Proses pelatihan dan pengujian sudah dilakukan sebelumnya dan

sudah terdapat hasil klasifikasi di database

Successful End Condition

Dapat menampilkan beberapa citra dengan hasil klasifikasi yang sama

Failed End

Condition Tidak dapat menampilkan citra

Primary Actor

Pengguna

Trigger

Sistem menampilkan hasil retrieval berupa gambar-gambar dengan hasil klasifikasi yang sama dengan masukan

2 Mencocokan hasil klasifikasi ke database

3 Menampilkan hasil retrieval

Extensions Step Branching Action

3.1 Menampilkan hasil analisis data

3.6.3 Activity Diagram

Berikut merupakan aktivitas dari setiap use case yang dapat lebih jelas dilihat pada activity diagram di bawah :

(63)

Gambar 3.10 Activity Diagram Pelatihan Levenberg-Marquardt

(64)

Gambar 3.12 Activity Diagram Retrieval

3.6.4 Class Diagram

Untuk mendefinisikan kelas-kelas yang terdapat di dalam sistem, dapat dilihat dari diagram berikut :

(65)

3.6.5 Sequence Diagram

Sequence diagram menggambarkan perilaku objek pada setiap use case

dengan mendeskripsikan waktu hidup dan pesan objek. Sequence diagram sistem yang dibangun dapat dilihat di bawah ini :

Gambar 3.14 Sequence Diagram Ekstraksi Ciri Statistik

(66)

Gambar 3.16 Sequence Diagram Pengujian Levenberg-Marquardt

(67)

3.7Perancangan Sistem

3.7.1 Perancangan Struktur Menu

Untuk lebih memahami menu yang akan diimplementasikan dalam sistem, berikut merupakan perancangan struktur menu yang digunakan :

Gambar 3.18 Perancangan Struktur Menu

3.7.2 Perancangan Antarmuka

Perancangan antarmuka sistem CBIR yang dibuat dapat dilihat berikut ini :

Tabel 3.16 Perancangan Antarmuka Utama

(68)

menampilkan hasil retrieval

Bila belum melakukan pelatihan, muncul P01 Bila belum memasukkan gambar, muncul P02 Bila belum melakukan ekstraksi, muncul P03 Bila belum melakukan pengujian, muncul P04 Bila hasil retrieve tidak ditemukan, muncul P06

Klik “X” untuk keluar

3.7.3 Perancangan Pesan

Berikut merupakan beberapa pesan yang akan muncul sebagai informasi atas aksi yang dilakukan pengguna :

1) Pesan Lakukan Pelatihan (P01)

Pesan akan muncul ketika pengguna memilih tombol “Cari Gambar” atau “Ekstraksi” atau “Uji” atau “Retrieve” sebelum melakukan pelatihan Levenberg-Marquardt.

Gambar 3.19 Pesan Lakukan Pelatihan (P01)

2) Pesan Masukkan Gambar (P02)

Pesan akan muncul ketika pengguna memilih tombol “Ekstraksi” atau “Uji” atau “Retrieve” sebelum memasukkan gambar.

(69)

3) Pesan Lakukan Ekstraksi (P03)

Pesan akan muncul ketika pengguna memilih tombol “Uji” atau “Retrieve” sebelum melakukan ekstraksi ciri.

Gambar 3.21 Pesan Lakukan Ekstraksi (P03)

4) Pesan Lakukan Pengujian (P04)

Pesan akan muncul ketika pengguna memilih tombol “Retrieve” sebelum melakukan pengujian Levenberg-Marquardt.

Gambar 3.22 Pesan Lakukan Pengujian (P04)

5) Pesan Pelatihan Berhasil (P05)

Pesan akan muncul ketika proses pelatihan Levenberg-Marquardt

selesai dilakukan.

Gambar 3.23 Pesan Pelatihan Berhasil (P05)

6) Pesan Data Tidak Ditemukan (P06)

(70)

Gambar 3.24 Pesan Data Tidak Ditemukan (P06)

3.7.4 Jaringan Semantik

Berikut merupakan jaringan semantik sistem :

Gambar 3.25 Jaringan Semantik

Keterangan :

(71)

61

Pada sub bab implementasi sistem ini, akan dijelaskan bagaimana penerapan dari sistem yang meliputi implementasi perangkat keras, perangkat lunak, basis data, dan proses.

4.1.1 Implementasi Perangkat Keras

Berikut merupakan perangkat keras yang digunakan untuk membangun sistem :

1) Monitor : 14 inch 64-bit

2) Processor : Intel Core i3 CPU @ 2,10 GHz

3) RAM : 2 GB

4) Keyboard

5) Mouse

4.1.2 Implementasi Perangkat Lunak

Berikut merupakan perangkat lunak yang digunakan untuk membangun sistem :

1) Sistem operasi : Windows 7 Ultimate 2) Microsoft Visual Studio 2010

3) XAMPP Server 4) SQLYog Community

4.1.3 Implementasi Basis Data

Implementasi basis data dari sistem CBIR yang dibuat meliputi proses pembuatan database dan tabel. Berikut merupakan implementasi basis data sistem yang dibangun :

Tabel 4.1 Implementasi Basis Data Pembuatan

database

CREATE DATABASE `db_cbir_lm`;

(72)

tabel t_masukan

`id_gambar` int(4) NOT NULL auto_increment, `gambar` longblob,

PRIMARY KEY (`id_gambar`), KEY `id_gambar` (`id_gambar`)

) ENGINE=InnoDB AUTO_INCREMENT=121 DEFAULT CHA RSET=latin1 COLLATE=latin1_general_ci

Pembuatan tabel t_hasil

CREATE TABLE `t_hasil` ( `id_gambar` int(4) NOT NULL, `mean` double default NULL, `variance` double default NULL, `skewness` double default NULL, `kurtosis` double default NULL, `entrophy` double default NULL, `y1` int(2) default NULL, `y2` int(2) default NULL, `y3` int(2) default NULL, `error` double default NULL, PRIMARY KEY (`id_gambar`),

CONSTRAINT `t_hasil_ibfk_1` FOREIGN KEY (`id_gambar`) REFERENCES `t_masukan` (`id_gambar`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=lat in1_general_ci

Pembuatan

t_analisis CREATE TABLE `t_analisis` ( `id_gambar` int(4) NOT NULL,

`mean` double default NULL,

`variance` double default NULL, `skewness` double default NULL, `kurtosis` double default NULL, `entrophy` double default NULL, `y1` int(2) default NULL, `y2` int(2) default NULL, `y3` int(2) default NULL, `error` double default NULL, PRIMARY KEY (`id_gambar`)

(73)

4.1.4 Implementasi Antarmuka

Berikut merupakan tampilan antarmuka sistem yang dibangun :

Gambar 4.1 Antarmuka Utama

4.2Pengujian Sistem

4.2.1 Pengujian Black Box

Untuk mengetahui fungsionalitas dari sistem CBIR yang dibuat, maka dilakukan pengujian black box.

4.2.1.1Pelatihan Levenberg-Marquardt

Tabel 4.2 Pengujian Pelatihan Levenberg-Marquardt

Kasus dan Hasil Uji Kasus

Data Masukan Hasil yang Diharapkan Hasil Sesuai Uji Kasus

120 data gambar latih

Tabel 4.3 Pengujian Input Data

Kasus dan Hasil Uji Kasus

Data Masukan Hasil yang Diharapkan Hasil Sesuai Uji Kasus

(74)

4.2.1.3Ekstraksi Ciri Statistik

Tabel 4.4 Pengujian Ekstraksi Ciri Statistik

Kasus dan Hasil Uji Kasus

Data Masukan Hasil yang Diharapkan Hasil Sesuai Uji Kasus

Gambar uji yang akan diretrieve

Melakukan perhitungan ekstraksi ciri statistik dan menampilkan hasilnya pada antarmuka

Sesuai dengan yang diharapkan

4.2.1.4Pengujian Levenberg-Marquardt

Tabel 4.5 Pengujian Pengujian Levenberg-Marquardt

Kasus dan Hasil Uji Kasus

Data Masukan Hasil yang Diharapkan Hasil Sesuai Uji Kasus

Gambar uji yang akan

Tabel 4.6 Pengujian Retrieval

Kasus dan Hasil Uji Kasus

Data Masukan Hasil yang Diharapkan Hasil Sesuai Uji Kasus

Gambar uji yang akan diretrieve

Membandingkan hasil klasifikasi gambar uji dengan hasil klasifikasi seluruh data latih di database, menampilkan keluaran gambar yang memiliki hasil klasifikasi sama, dan menampilkan analisis data

Sesuai dengan yang diharapkan

4.2.2 Pengujian Metode

Pengujian metode merupakan tahap pengujian performansi metode – metode yang diimplementasikan untuk membangun sistem CBIR. Metode yang akan diujikan adalah metode ekstraksi ciri statistik serta algoritma

Levenberg-Marquardt. Metode diujikan dengan menggunakan 120 data dari 8 kategori yang

Gambar

Gambar 2.2 JST dengan Lapisan Tunggal
Gambar 2.4 JST dengan Lapisan Kompetitif
Gambar 2.5 Flowchart Proses Pelatihan Backpropagation
Gambar 3.1 Flowchart Sistem CBIR
+7

Referensi

Dokumen terkait

Penelitian ini dilakukan untuk mengetahui aktivitas antioksidan dan total kandungan flavonoid dari ekstrak kulit biji Pinang Yaki (Areca Vestiaria Giseke) yang diekstraksi secara

Kemampuan analisis mahasiswa prodi D3 Analis Kesehatan STIKes Karsa Husada Garut meningkat setelah diterapkan praktikum langsung di laboratorium maupun setelah

Perhitungan jalur dilakukan untuk menjelaskan pengaruh/ hubungan variabel gaya kepemimpinan transaksional (X1), budaya organisasi (X2) baik secara langsung maupun tidak langsung

Dengan metode deskriptif ini, penulis mendeskripsikan tingkat pencemaran tanah di Kecamatan Rancaekek Kabupaten Bandung, sumber pencemaran tanah dan selanjutnya

(2009) memberi tumpuan terhadap keberkesanan penerapan kemahiran insaniah dalam kalangan pelajar UMS melalui aktiviti pengajaran dan pembelajaran kursus TITAS,

Penelitian ini bertujuan merancang dan membuat sistem kontrol mesin sortasi untuk buah manggis yang meliputi perputaran konveyor rantai, merancang dan membuat sistem

kurikulum yang digunakan. 2) Menentukan alat penilaian, penilaian dapat diambil dari proses kerja dan hasil kerja peserta didik. Kriteria-kriteria penilaian harus

Penelitian ini bertujuan untuk menganalisis pengaruh harga jeruk pamelo, harga buah belimbing, harga buah manggis, pendapatan konsumen, jumlah anggota keluarga