Pengenalan Pola Citra Menggunakan Metode Corner Detection Dan Backpropagation

(1)

DAFTAR PUSTAKA

Anam, Sarawat., Islam, Md. Shohidul., Kashem, M.A., Islam, M.N., Islam, M.R., Islam, M.S. 2009. Face Recognition Using Genetic Algorithm and Backpropagation Neural Network. Proceeding of Internation MultiConference of Engineers and Computer Scientists Vol 1.

Atkociunas, E., Blake, R., Juozapavicus, A., Kazimianec, M. 2005. Image Processing in Road Traffic Analysis. Nonlinear Analysis: Modelling and Control, Vol 10 Issue 4 Hal. 315-332.

Bhatia, N., Chabbra, M. 2011. Accurate Corner Detection Methods Using Two Step Approach. Global Journal of Computer Science & Technology Vol 11, Issue 6 Hal. 24-30.

Burger, W., Burge, M.J. 2008. Digital Image Processing An Algorithmic Introduction using Java Second Edition. New York: Springer.

Coppin, B. 2004. Artificial Intelligance Illuminated. Massachusetts: Jones and Bartlett Publishers.

Devireddy, Srinivasa Kumar., Rao, Settipalli Appa. 2005. Hand Written Character Recognition Using Backpropagation Network. Journal of Theoritical and Applied Information Technology: 257-259.

Ganatra, Amit., Kosta, Y.P., Panchal, Gaurang., Gajjar, Chintan. 2011. Initial Classification Through Backprogation in a Neural Network Following Optimazation Through GA to Evaluate the Fitness of an Alogrithm. International Journal of Computer Science and Information Technology Vol 3 No 1 Hal. 98-116.


(2)

MATLAB Second Edition. USA: Gatesmark Publishing.

Guelzim, I., Hammouch, A., Aboutajdine, D. 2011. Corner Detection Using Mutual Information. International Journal of Image Processing Vol 5, Issue 1 Hal. 101-108.

Harris, C., Stephens, M.J. 1988. A combined corner and edge detector. Alvey Vision Conference: hal. 147-154.

Hermawan, Arief. 2006. Jaringan Saraf Tiruan: Teori dan Aplikasi. Yogyakarta: Penerbit Andi.

Jähne, B. 2005. Digital Image Processing 6th Revised and Extended Edition. Jerman: Springer.

Kadir, A. 2009. Dasar Perancangan dan Implementasi Database Relasional. Yogyakarta: Andi Publisher.

Kurniawan, Anselmus Krisma Adi., Suwardi, Iping Supriana. 2012. Estimasi Pandangan Menggunakan Ujung Mata Bagian Dalam Sebagai Titik pada Eye Tracking. Jurnal Sarjana Institut Teknologi Bandung Bidang Teknik Elektro dan Informatika Vol 1, No 2 Hal. 86-90.

Lee, Ming-Chang dan To, Chang. 2010. Comparison of Support Vector Machine and Backpropagation Neural Network in Evaluating The Enterprise Financial


(3)

Distress. International of Artificial Intelligence and Applications Vol 1 No 3 Hal. 31-43.

Li Chunming, Shi Xinna, Xu Yunfeng, Wu Shaoguang. 2011. An LED Assembly Angle Detection System. LNCS 7030: 618-624.

Muis, Saludin. 2009. Identifikasi Pola Sinyal dengan Menggunakan Teknik Neural Network. Yogyakarta: Graha Ilmu.

Panda, S.S., Prasad, M.S.R.S., Prasad, MNM., Naidu, Ch. SKVR. 2012. Image Compression Using Backpropagation Neural Network. International Journal of Engineering Science and Advanced Technology Vol 2, Issue 1 Hal. 74-78.

Phillips, D. 2000. Image Processing in C Second Edition. Kansas: R & D Publication.

Pishchulin, L. 2010. Matching Algorithms for Image Recognition. Thesis. Rheinisch-Westphalia PhysTechs Aachen.

Puspitaningrum, Dyah. 2006. Pengantar Jaringan Saraf Tiruan. Yogyakarta: Penerbit ANDI.

Putra, D. 2010. Pengolahan Citra Digital. Yogyakarta: Penerbit ANDI.

Ramsundaram, S., Victor, S.P. 2010. Text Categorization by Backpropagation Network. International Journal of Computer Application Vol 8 No 6 Hal. 1-5.

Schmid, C., Mohr, R., Bauckage, C. 2000. Evaluation on intereset point detectors. International Journal of Computer Vision, Vol 37 Issue 2 Hal. 151-172.

Schneider, Geri., Winters, Jason. P., Jacobson, Ivar. 2001. Applying Use Cases: A Practical Guide. Pearson Education.


(4)

2010. Predicition of Rainfall Using Backpropagation Neural Network Model. International Journal on Computer Science and Enigneering Vol 2 No 4 Hal. 1119-1121.


(5)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

Bab ini secara garis besar membahas analisis metode Harris Corner Detection (HCD) dan Backpropagation (BP) pada sistem serta tahap-tahap yang akan dilakukan dalam perancangan sistem yang akan dibangun.

3.1. Identifikasi Masalah

Industri pariwisata adalah salah satu bidang yang banyak menggunakan media multimedia, baik berupa citra, animasi, video dan suara dalam memberikan suguhan berupa panaroma alam, objek wisata dan bentuk-bentuk kebudayaan yang biasa digunakan dalam menarik minat para wisatawan. Penggunaan media citra banyak digunakan sebagai salah satu objek dalam memperkenalkan wilayah tersebut.

Ada begitu banyak aplikasi yang digunakan dalam mengenali citra sehingga dapat menyuguhkan seluruh informasi dari sebuah. Hanya saja ada begitu banyak informasi yang terdapat dalam sebuah citra, yang berupa warna, panjang piksel, shape, tekstur dan lainnya. Pada penelitian ini, Penulis akan mencoba menggunakan metode Harris Corner Detection dan Backpropagation dalam melakukan pengenalan citra pada objek dan memberikan informasi yang dibutuhkan pengguna.

3.2. Data yang Digunakan

Citra yang digunakan dalam penelitian ini adalah citra berukukan 200x200 piksel dengan format JPEG, dimana masing-masing citra memiliki perbedaan antara citra yang satu dengan citra lainnya. Spesifikasi citra dapat ditentukan dalam beberapa kategori sebagai berikut:


(6)

3.3. Analisis Sistem

Penelitian ini menggunakan metode HCD dan BP yang akan memberikan hasil berupa persentase keakuratan pengenalan citra uji berdasarkan sumber citra yang sudah dipelajari oleh sistem sesuai dengan citra yang diinginkan. Pertama-tama, sudah disediakan terlebih dahulu objek-objek yang akan diuji beserta dengan banyaknya citra pembelajaran pada masing-masing objek.

Sistem akan menerima masukan berupa citra. Kemudian, citra tersebut akan diproses menggunakan metode HCD untuk menemukan setiap corner yang terdapat dalam citra. Hasil citra corner yang didapatkan akan disimpan dalam database dan diolah kembali dan disebut sebagi citra HCD. Citra HCD yang didapatkan akan diubah kembali ke dalam bentuk matriks dan selanjutnya diproses menggunakan BP. BP akan mempelajari seluruh citra yang yang sudah dimasukkan oleh pengguna sebelumnya sebagai data awal.

Sistem akan berjalan ketika pengguna mencari citra lain menggunakan citra berbeda. Sistem akan mengubah citra tersebut ke dalam bentuk citra HCD. Citra yang sudah diubah tersebut akan diolah kembali menggunakan BP. BP akan mencari bentuk objek yang mirip sesuai dengan pola citra yang sudah dipelajari oleh sistem lalu memberikan hasil dan informasi yang didapatkan dari data yang tersimpan serta besar persentase nilai eror kemiripan citra.

Adapun gambaran algoritma metode sistem pengenalan objek citra menggunakan metode HCD dan BP dapat dilihat pada Gambar 3.1 berikut.


(7)

Gambar 3.1 Algoritma pengenalan pola citra menggunakan HCD dan BP pada Sistem


(8)

3. Melakukan pendeteksian titik pada citra menggunakan corner detection.

a. Dalam skripsi ini menggunakan operator Harris Corner Detection dengan persamaan (2.2). Dengan nilai turunan yang terdapat pada persamaan (2.5) pada citra input dan uji coba.

b. Menghiitung nilai perkalian produk piksel pada citra menggunakan persamaan (2.6), (2.7) dan (2.8).

c. Menentukan nilai window W(x,y), yang bernilai 1 apabila berada dalam window dan bernilai 0 jika berada diluar window. Dapat pula menggunakan fungsi Gaussian, bila berada di luar window menggunakan persamaan (2.10). Hasil citra dapat dilihat dalam bentuk kurva pada Gambar 3.2. Dalam penelitian ini, penulis menggunakan Gaussian.

1. (b)

Gambar 3.2. Fungsi window klasik (a) dan Gaussian (b)

d. Menghitung nilai perubahan window atau eigenvalues dengan persamaan (2.15), dimana nilai trace terdapat pada persamaan (2.14), dengan syarat sebagai berikut:


(9)

i. Bila nilai eigenvalues = 0, maka window “flat”

i. Bila nilai eignvalues < 0, maka window berupa “edge” ii. Bila nilai eigenvalues > 0, maka window berupa “corner”

e. Menentukan banyaknya nilai corner menggunakan persamaan (2.17) sesuai dengan banyaknya nilai threshold yang dimasukkan oleh pengguna.

f. Membuat nilai corner dengan persamaan (2.18) untuk menampung seluruh corner yang telah diseleksi. Lalu hapus seluruh corner yang tidak dibutuhkan.

g. Simpan hasil corner menjadi citra baru dalam bentuk matriks biner.

4. Menentukan nilai banyak unit input, hidden layer, nilai keluaran, angka pembelajaran, epoh maksimal, dan nilai toleransi eror.

5. Menentukan nilai bobot dan bias menggunakan insialisasi faktor skala Nguyen-Widrow (β) dengan definisi persamaan berikut:

= 0.7 ( ) / (3.1)

dimana: n = banyaknya unit input p = banyaknya unit tersembunyi

β = faktor skala

Prosedur penginisialisasian bias dan bobot, baik dari unit masukan ke unit tersembunyi, maupun dari unit tersembunyi ke unit keluaran berada dalam interval -β dan β yang dilakukan secara acak.

6. Melakukan pelatihan data yang telah dimasukkan dengan nilai epoh lebih kecil dari nilai epoh maksimum dan nilai eror lebih besar dari nilai eror toleransi.

a. Tahap pertama yang harus dilakukan adalah mencari nilai lajur yang maju untuk menjumlahkan nilai masukan pada masing-masing layer.


(10)

menggunakan persamaan (2.33).

iii. Menghitung nilai fungsi aktivasi persamaan (2.34) untuk dikirm ke BP eror.

b. Setelah lajur maju selesai, selanjutnya dilakukan tahap laju mundur menggunakan backpropagation eror untuk mengecek eror tiap layer dan mengubah nilai parameter masukan pada layer pertama.

i. Menghitung nilai eror yang masuk ke dalam unit keluaran menggunakan persamaan (2.35).

i. Memperbaiki nilai bobot dan bias menggunakan koreksi bobot persamaan (2.36) untuk di kirim ke lapisan tersembunyi.

ii. Menjumlahkan delta input unit tersembunyi dari lapisan yang ada di atasnya menggunakan persamaan (2.37), yang akan dikalikan dengan fungsi aktivasi untuk mendapatkan nilai eror (2.38)

iii. Memperbaiki nilai bias menggunakan (2.39) dan koreksi bias menggunakan koreksi eror (2.26).

c. Memperbaharui nilai bobot dan bias menggunakan persamaan (2.40) dan (2.41) pada tiap-tiap unit lapisan.


(11)

e. Jika nilai epoh lebih kecil dari nilai maksimal epoh dan nilai eror lebih besar dari nilai batas kesalahan, maka menuju langkah (6.a).

7. Memberikan hasil citra yang telah diuji pada pengguna beserta dengan persentase eror yang telah didapatkan.

3.4. Perancangan Sistem

Pada tahap ini akan dilakukan perancangan bagaimana HCD dan BP melakukan pengolahan data untuk melakukan pengenalan citra sehingga memberikan informasi yang diinginkan. Pada tahap ini dilakukan juga perancangan tentang antarmuka sistem yang akan dibangun untuk memudahkan pengguna dalam melakukan operasi dalam sistem.

3.4.1 Use case diagram

Use case diagram merupakan pemodelan untuk interaksi antara pengguna dan sistem yang akan dibangun (Schneider et al, 2001). Use case mendeskripsikan sebuah interaksi anatara satu atau lebih aktor dengan sistem informasi yang akan dibuat, berikut dengan kebutuhan yang telah dirancang pada sistem tersebut (Shalahuddin, 2011). Gambar 3.3 menggambarkan use case diagram dari sistem yang akan dibuat.


(12)

pada Tabel 3.1, Tabel 3.2, Tabel 3.3, Tabel 3.4, Tabel 3.5 dan Tabel 3.6.

Tabel 3.1 Use Case Spesifikasi untuk Form Utama

Tipe Use Case Penjelasan

Nama use case Form Utama

Aktor Pengguna

Deskripsi Use case ini digunakan oleh pengguna melihat daftar menu sistem.

Pre condition Semua jenis pengguna dapat mengakses use case ini tanpa syarat apapun.

Characteristic of activation Eksekusi dapat dilakukan oleh siapapun.

Basic flow 1. Pengguna menekan tombol Enter tampilan utama yang akan membawa pengguna ke menu Form Utama

2. Tombol Daftar Objek digunakan untuk melihat daftar objek.

3. Tombol Pengujian Image digunakan untuk menguji citra.

4. Tombol Pembelajaran digunakan untuk mengajari sistem.

Alternative flow -

Post condition Pada use case ini pengguna dapat melihat menu sistem yang sudah disediakan.


(13)

Tabel 3.2 Use Case Spesifikasi untuk Use Case Daftar Objek

Tipe Use Case Penjelasan

Nama use case Daftar Objek

Aktor Pengguna

Deskripsi Use case ini digunakan oleh pengguna untuk melihat melihat Daftar Objek.

Pre condition Semua jenis pengguna dapat mengakses use case ini tanpa syarat apapun

Characteristic of activation Eksekusi dapat dilakukan oleh siapapun Basic flow 1. Pengguna menekan tombol Daftar Objek.

2. Sistem menampilkan daftar objek.

3. Use case ini berakhir ketika sistem telah selesai menampilkan tutorial aplikasi.

Alternative flow -

Post condition Pada use case ini pengguna dapat melihat daftar objek.

Limitations -

Tabel 3.3 Use Case Spesifikasi untuk Use Case Tambah Objek

Tipe Use Case Penjelasan

Nama use case Tambah Objek

Aktor Pengguna

Deskripsi Use case ini digunakan oleh pengguna untuk menambah objek

Pre condition Semua jenis pengguna dapat mengakses use case ini tanpa syarat apapun

Characteristic of activation Eksekusi dapat dilakukan oleh siapapun

Basic flow 1. Pengguna menekan tombol Add di Daftar Objek pada Form Daftar Objek.

2. Pengguna memasukkan nama objek dan detail. 3. Use case ini berakhir ketika pengguna menekan

tombol OK. Alternative flow -

Post condition Pada use case ini pengguna dapat menambah objek.


(14)

Characteristic of activation Eksekusi dapat dilakukan oleh siapapun

Basic flow 1. Pengguna menekan salah satu objek yang sudah dimasukkan sebelumnya pada Daftar Objek. 2. Sistem akan membawa pengguna ke form

pengisian citra.

3. Jika pengguna menekan tombol ‘+’ maka sistem akan membawa pengguna ke form Tambah Citra.

4. Cari citra yang akan dimasukkan dan tekan OK. 5. Citra yang akan dimasukkan akan diubah ke

dalam bentuk HCD dengan tombol ubah. 6. Citra yang sudah masuk akan dimunculkan

kembali pada form Daftar Citra.

7. Bila pengguna menekan tombol ‘-’ maka sistem akan menghapus citra yang dimasukkan sebelumnya dari form Daftar Citra.

8. Use case ini berakhir bila pengguna selesai mengisi citra sesuai dengan kebutuhan.

Alternative flow -

Post condition Pada use case ini pengguna dapat menabah citra ke dalam sistem.


(15)

Tabel 3.5 Use Case Spesifikasi untuk Use Case Pembelajaran

Tipe Use Case Penjelasan

Nama use case Pembelajaran

Aktor Pengguna

Deskripsi Use case ini digunakan oleh pengguna untuk melakukan pembelajaran pada citra yang sudah dimasukkan sebelumnya.

Pre condition Semua jenis pengguna dapat mengakses use case ini tanpa syarat apapun.

Characteristic of activation Eksekusi dapat dilakukan oleh siapapun

Basic flow 1. Pengguna menekan menu Pembelajaran pada Form Utama.

2. Sistem menampilkan kotak dialog yang akan diisi oleh pengguna secara lengkap.

3. Tekan tombol inisialisasi H-1: Form belum terisi dengan sempurna.

4. Sistem akan melakukan inisialisasi nilai awal dari BP yang akan diolah sesuai dengan informasi yang dimasukkan oleh pengguna. 5. Pengguna menekan tombol Pembelajaran agar

sistem belajar mengolah citra yang sudah dimasukkan oleh pengguna sebelumnya.

6. Sistem akan memberikan eror minimal yang didapatkan berdasarkan jumlah epoh maksimal. 7. Sistem akan membuka kembali tampilan Daftar

Objek dan pengguna menekan tombol Compare. 8. Muncul tampilan perbandingan eror citra yang

sudah diuji sebelumnya.

9. Use case berakhir bila sistem sudah menemukan eror minimal.

Alternative flow H-1: Form belum terisi dengan sempurna

Sistem memberikan pesan bahwa form pengisian belum terisi dengan sempurna oleh pengguna. Post condition Pada use case ini pengguna dapat melakukan

pembelajaran citra.


(16)

Basic flow 1. Pengguna menekan menu Pengujian Citra pada Form Utama.

2. Pengguna memasukkan citra yang akan dicari atau diuji oleh sistem dengan menekan tombol browse.

3. Pengguna menekan tombol convert ke harris untuk mengubah citra ke dalam bentuk HCD. 4. Sistem akan memunculkan kotak dialog hasil

eksekusi HCD.

5. Pengguna menekan tombol lakukan pengujian. 6. Sistem akan memberikan hasil dari pencarian

citra dan informasi yang didapatkan.

7. Use case berakhir bila sistem sudah menemukan hasil dari pencarian.

Alternative flow

-Post condition Pada use case ini pengguna dapat melakukan pencarian citra.

Limitations -

3.4.3 Diagram aktivitas

Diagram aktivitas (activity diagram) menggambarkan aliran kerja dan aktivitas yang dilakukan oleh sebuah sistem. Diagram aktivitas lebih menekankan pada apa yang dilakukan oleh sebuah sistem tanpa harus memperhatikan fungsi dari aktor. Berikut ini adalah diagram aktivitas untuk sistem yang akan dibangun.


(17)

Gambar 3.4 Diagram Aktivitas untuk Melihat Daftar Objek

Pada Gambar 3.4 jika pengguna ingin melihat seluruh citra yang sudah diuji sebelumnya, pengguna dapat memilih menu lihat daftar objek kemudian sistem akan menampilkan semua objek yang ada di dalam database. Jika pengguna ingin menambah ataupun menghapus objek dan informasi yang terdapat pada salah satu citra, pengguna dapat mengelik salah satu objek dan menekan tombol Add untuk menambah dan Delete untuk menghapus, seperti yang ditunjukkan pada Gambar 3.5.


(18)

Gambar 3.6 Diagram Aktivitas Tambah Galeri

Pada Gambar 3.7 pengguna melakukan pembelajaran terhadap sistem agar sistem dapat mengolah citra yang sebelumnya sudah dimasukkan. Dalam hal ini, pengguna masuk ke dalam menu Pembelajaran dan mengisi form yang diberikan oleh sistem. Setelah pengguna mengisi form dengan lengkap, pengguna menekan tombol Insialisasi terlebih dahulu agar sistem dapat memberikan nilai awal pada saat melakukan pembelajaran. Sistem akan memberikan informasi setelah melakukan insialisasi dan memberikan informasi untuk melakukan proses pembelajaran. Hasil


(19)

Gambar 3.7 Diagram Aktivitas untuk Pembelajaran

Pada Gambar 3.8 pengguna dapat melakukan pencarian citra yang terdapat dalam database secara otomatis. Di sini, pengguna dapat menekan menu pengujian citra otomatis. Sistem akan menampilkan kotak dialog. Pengguna dapat memberikan


(20)

Gambar 3.8 Diagram Aktivitas untuk Pengujian Citra

3.4.4 Diagram aliran data

Diagram Alir Data (DAD) atau Data Flow Diagram adalah representasi grafik yang menggambarkan informasi dan transformasi informasi yang diaplikasikan sebagai data yang mengalir dari input (input) dan keluaran (output).


(21)

DFD dapat digunakan untuk merepresentasikan sebuah sistem atau perangkat lunak pada beberapa level abstraksi. DFD dapat dibagi menjadi beberapa level untuk mrepresentasikan aliran informasi atau fungsi yang lebih detail. DFD menyediakan mekanisme untuk pemodelan fungsional ataupun pemodelan aliran informasi. Oleh karena itu, DFD lebih sesuai digunakan untuk memodelkan fungsi-fungsi perangkat lunak yang akan diimplementasikan menggunakan pemrograman terstruktur karena pemrograman terstruktur membagi-bagi bagiannya dengan fungsi-fungsi dan prosedur-prosedur.

DFD level 0 menggambarkan sistem yang akan dibuat sebagai suatu entitas tunggal yang berintraksi dengan aktor maupun sistem lain. DFD level 0 digunakan untuk menggambarkan ineraksi antara sistem yang akan dikembangkan dengan entitas luar. Gambar DFD level 0 yang akan dibangun dapat dilihat pada Gambar 3.10.

Gambar 3.10 DFD Level 0 Sistem Pengenalan Pola Citra Menggunakan HCD & BP

Pada Gambar 3.10. DFD level 0 hanya memiliki satu aktor yang akan melakukan operasi pada sistem, yaitu pengguna. Aktor pengguna memiliki aktivitas input (input), yaitu citra asli dan parameter pengujian citra pembelajaran dan memiliki aktivitas keluaran (output), yaitu citra hasil HCD, persentase citra dari citra yang telah diuji, nilai eror minimal yang didapat dan informasi dari pencarian citra.


(22)

Gambar 3.11 DFD Level 1 Sistem Pengenalan Pola

3.4.5. Model entity-relationship

Model Entity-Relationship (E-R) adalah suatu model yang digunakan untuk menggambarkan data dalam bentuk entitas, atribut dan hubungan antarentitas yang dapat dinyatakan dalam bentuk diagram. Model E-R tidak mencerminkan bentuk fisik yang disimpan dalam database, melainkan hanya bersifat konseptual karena itu model E-R tidak tergantung pada produk DBMS yang akan digunakan (Kadir, 2009). Model E-R untuk sistem pendeteksian citra menggunakan HCD dan BP dapat dilihat pada Gambar 3.12.


(23)

Gambar 3.12 Model E-R

3.4.6. Perancangan menu sistem

Rancangan menu sistem dapat digunakan untuk melihat struktur menu yang terdapat pada sistem yang akan dibangun. Rancangan menu sistem yang akan dibangun dapat dilihat pada Gambar 3.15.

Gambar 3.13 Struktur Menu Sistem

3.4.7. Perancangan antarmuka

Perancangan antarmuka berisi gambaran umum tentang perancangan setiap tampilan yang terdapat pada aplikasi yang dibangun.

3.4.7.1. Rancangan tampilan awal dan halaman utama

Tampilan awal ini akan membawa pengguna menuju aplikasi saat menekan tombol Enter. Rancangan tampilan awal dapat dilihat pada Gambar 3.14.


(24)

Gambar 3.14 Rancangan Halaman Tampilan Awal

Pada halaman utama terdapat menu-menu utama untuk berpindah ke halaman lainnya. Rancangan tampilan halaman utama dapat dilihat pada Gambar 3.15.

Gambar 3.15 Rancangan Halaman Utama

Keterangan:

a. Menu “Daftar Objek” memungkinkan pengguna untuk melihat daftar objek yang sudah dimasukkan sebelumnya.

b. Menu “Pembelajaran” memungkinkan pengguna untuk melakukan pembelajaran sistem.

c. Menu “Pengujian Image” memungkinkan pengguna untuk melakukan pengujian atau pencarian citra.


(25)

3.4.7.2. Rancangan halaman daftar objek

Pada halaman Daftar Objek, pengguna dapat melihat daftar objek yang sudah disediakan pada aplikasi. Rancangan daftar objek dapat dilihat pada Gambar 3.16.

Gambar 3.16 Rancangan Halaman Daftar Objek

Keterangan:

a. Pengguna dapat melakukan penambahan jumlah citra bila menekan salah satu “Nama Objek” dari daftar objek yang disediakan.

b. Jika pengguna ingin menambah daftar objek, maka pengguna menekan tombol “Add” dan mengisi parameter yang dibutuhkan.

c. Jika pengguna menghapus salah satu daftar objek, maka pengguna menekan tombol “Delete”

d. Tombol “Compare” digunakan untuk membandingkan citra yang sudah dimasukkan sebelumnya oleh pengguna.

3.4.7.3. Rancangan halaman galeri citra

Pada halaman galeri citra, pengguna dapat memasukkan citra, melihat citra yang sudah diuji dan citra yang sudah diubah menjadi HCD. Rancangan tampilan halaman galeri citra dapat dilihat pada Gambar 3.17.


(26)

Gambar 3.17 Rancangan Halaman Galeri Citra

Keterangan:

a. Pengguna dapat melihat hasil citra yang sudah diuji sebelumnya dengan menekan salah satu citra yang tersedia.

b. Pengguna dapat memasukkan citra menggunakan tombol ‘+’. Lalu mengisi parameter yang dibutuhkan. Setelah seluruh parameter terisi, pengguna dapat menekan tombol Corner Detection untuk menghitung banyak titik, setelah itu melakukan compare. Tombol reset digunakan untuk memasukkan kembali citra baru yang akan diuji.

c. Pengguna dapat menghapus citra yang sudah diuji sebelumnya dengan menekan tombol ‘X’.

3.4.7.4. Rancangan halaman pembelajaran

Pada halaman ini pengguna dapat melakukan pembelajaran pada yang telah dimasukkan sebelumnya sehingga dapat diperoleh nilai eror minimal yang dihasilkan. Rancangan tampilan halamannya dapat dilihat pada Gambar 3.18.


(27)

Gambar 3.18 Rancangan Halaman Pembelajaran

Keterangan:

a. Pengguna akan melakukan pembelajaran pada citra yang sudah dimasukkan. Dengan menekan tombol “Inisialisasi”, sistem akan menentukan nilai awal secara acak yang selanjutkan akan diproses.

b. Pengguna akan menekan tombol “Pembelajaran” setelah sistem memberikan pemberitahuan bahwa insisialisasi telah selesai.

c. Menampilkan pemberitahuan pada saat sistem berjalan. Bila sistem belum diinisialisasi, tampilan yang akan diberikan adalah “Start”. Jika sistem sudah diinisialisasi, maka tampilan yang muncul adalah “Inisialisasi berhasil, silakan lanjut ke Epoh” untuk melakukan pembelajaran.

3.4.7.5. Rancangan halaman pengujian image

Setelah pengguna melakukan pembelajaran, pengguna dapat melakukan pengujian image. Bagian ini terdiri dari beberapa langkah, yaitu pemasukkan citra uji, pengubahan citra uji menjadi HCD, lalu melakukan pengujian. Tampilan langkah-langkah tersebut dapat dilihat pada Gambar 3.19, Gambar 3.20 dan Gambar 3.21 berikut.


(28)

Gambar 3.19 Rancangan Halaman Browsing Citra

Keterangan:

a. Pengguna dapat memasukkan citra yang akan diuji dengan menekan tombol “Browse”.

b. Dengan menekan tombol “Convert ke Harris” sistem akan mengubah bentuk citra ke dalam tampilan HCD yang dapat dilihat pada Gambar 3.20.

Gambar 3.20 Rancangan Halaman Detail Galeri

Keterangan:

c. Pengguna dapat melihat citra yang telah dimasukkan.

d. Pengguna dapat melihat hasil dari citra yang sudah diubah ke HCD.

e. Untuk melakukan pencarian citra, pengguna dapat menekan tombol “Lakukan Pengujian” yang akan memberikan hasil seperti pada Gambar 3.21.


(29)

Hasil Pengujian X

OK

--Gambar Citra yang

ditemukan Penjelasan mengenai objek

g Citra ditemukan pada

f

Keterangan

Nama Objek

h

Nilai Eror Kemiripan Citra XX, XX % i

j

Keterangan:

f. Sistem akan menunjukkan nama Objek dari hasil pencarian citra.

g. Pengguna dapat melihat melihat gambar objek dari citra yang sudah ditemukan.

h. Pengguna dapat melihat informasi dari objek yang telah ditemukan.

i. Pengguna dapat melihat persentase nilai eror kemiripan citra dari citra yang dicari.


(30)

Pada bab ini akan dijelaskan tentang proses pengimplementasian metode Harris Corner Detection (HCD) dan Backpropagation (BP) pada sistem dalam pencarian citra pariwisata, sesuai dengan perancangan sistem yang telah dilakukan di Bab 3 serta melakukan pengujian sistem yang telah dibangun.

4.1. Implementasi Sistem

Pada tahap ini, metode pencarian citra menggunakan Harris Corner Detection (HCD) dan Backpropagation (BP) akan diimplementasikan dengan menggunakan bahasa pemrograman Java dan database MySQL sesuai perancangan yang telah dilakukan.

4.1.1 Spesifikasi perangkat keras dan lunak yang digunakan

Spesifikasi perangkat keras dan lunak yang digunakan untuk membangun sistem ini adalah sebagai berikut:

1. Prosesor Intel®CoreTM i3 350M CPU 2.3 GHz. 2. Kapasitas hardisk 320 GB.

3. Memori RAM yang digunakan 2.00 GB.

4. Sistem operasi yang digunakan adalah Microsoft Windows 7. 5. Sistem dirancang menggunakan NetBeans IDE 7.31.

6. Web server yang digunakan adalah XAMPP. 7. Database MySQL


(31)

4.1.2 Implementasi perancangan antarmuka

Adapun implementasi perancangan antarmuka yang telah dilakukan sebelumnya pada sistem ini adalah:

1. Halaman Awal

Halaman menu merupakan halaman yang akan muncul ketika sistem berjalan. Tampilan ini berfungsi untuk mengenalkan pengguna terhadap sistem. Halaman ini dapat dilihat pada Gambar 4.1.

Gambar 4.1 Halaman Awal

2. Halaman Utama

Halaman utama merupakan halaman yang muncul ketika sistem berjalan sesaat setelah pengguna menekan tombol “Enter” pada halaman awal. Halaman ini berfungsi sebagai menu utama sistem. Pada sistem ini terdapat tiga menu pilihan, yaitu Daftar Objek, Pembelajaran dan Pengujian Image. Menu Daftar Objek terdiri dari empat sub menu, yaitu Add, Galeri dan Compare. Menu Pembelajaran terdiri dari sebuah sub menu yaitu Pembelajaran. Menu Pengujian Image terdiri dari sebuah sub menu, yaitu Pencarian Citra. Halaman Utama pada sistem pencarian citra menggunakan metode HCD dan BP dapat dilihat pada Gambar 4.2.


(32)

Gambar 4.2 Halaman Utama

3. Halaman Daftar Objek

Halaman daftar objek adalah halaman untuk melihat daftar objek yang terdapat pada sistem. Pada halaman ini, pengguna dapat menghapus, menambah dan membandingkan citra yang telah dimasukkan sebelumnya. Adapun halaman daftar objek pada sistem dapat dilihat pada Gambar 4.3.


(33)

4. Halaman Galeri

Halaman galeri adalah halaman untuk melihat citra yang disimpan pada salah satu objek, jika salah satu nama objek ditekan. Pada halaman ini, pengguna dapat melihat informasi yang terdapat pada objek, serta menghapus dan menambah citra yang terdapat pada geleri. Halaman galeri pada sistem ini dapat dilihat pada Gambar 4.4.

Gambar 4.4 Halaman Galeri

5. Halaman Tambah Galeri

Halaman tambah galeri adalah halaman yang digunakan untuk menambah citra pada satu objek. Pada halaman ini, pengguna dapat memasukkan citra yang diinginkan lalu mengubah citra tersebut menjadi citra HCD. Halaman galeri pada sistem ini dapat dilihat pada Gambar 4.5.


(34)

Gambar 4.6 Halaman Detail Galeri

7. Halaman Tambah Objek

Halaman tambah objek adalah halaman yang digunakan untuk menambah objek baru pada sistem. Pada halaman ini, pengguna dapat memberikan informasi mengenai objek yang akan ditambah. Adapun halaman tambah objek dapat dilihat pada Gambar 4.7.


(35)

8. Halaman Compare

Halaman compare adalah halaman yang digunakan untuk melihat persentase kemiripan citra yang sudah dimasukkan sebelumnya ke dalam sistem. Halaman ini dapat dilihat pada Gambar 4.8.

Gambar 4.8 Halaman Compare

9. Halaman Pembelajaran

Halaman pembelajaran adalah halaman yang digunakan untuk melakukan pembelajaran backpropagation terhadap citra yang dimasukkan oleh pengguna. Halaman ini akan menginisialisasi, melakukan pembelajaran dan memberikan nilai eror pada pengguna jika berhasil ditemukan. Halaman ini dapat dilihat pada Gambar 4.9 berikut.


(36)

Gambar 4.10 Halaman Hasil Pengujian

4.1.3 Implementasi data

Adapun data yang dimasukkan ke dalam sistem ini adalah data berbentuk citra dengan format JPG dengan ukuran 200x200 piksel. Objek yang disediakan berjumlah 10 (sepuluh) dengan masing-masing objek terdiri dari 15 (lima belas) citra. Objek citra pembelajaran yang diberikan berjumlah 3 (tiga), 10 (sepuluh) citra pembelajaran dan citra uji berjumlah 5 (lima).

4.2. Pengujian Sistem

Pengujian sistem digunakan untuk melihat kinerja dan kualitas yang terdapat sistem yang diimplementasi. Tujian dari pengujian adalah untuk memastikan bahwa sistem bekerja sesuai dengan fungsi yang diharapkan. Metode yang digunakan dalam


(37)

penelitian ini adalah metode pengujian black box. Metode pengujian black box berfokus pada hubungan atara tingkah laku objek-objek program. Metode pengujian ini meliputi kemampuan interpretasi GUI dalam memberikan informasi kepada pengguna.

4.2.1 Rencana pengujian sistem

Adapun rencana pengujian yang akan digunakan dengan teknik pengujian Black Box dapat dilihat pada Tabel 4.1.

Tabel 4.1 Rencana Pengujian

No. Komponen sistem yang diuji Butir uji

1. Halaman Awal Tombol “Enter”

2. Halaman Utama Tombol “Daftar Objek”

Tombol “Pembelajaran” Tombol “Pengujian Image” 3. Halaman Daftar Objek Tombol “Add”

Tombol “Delete” Tombol “Compare”

4. Halaman Galeri Tombol “+” atau “Plus”

Tombol “—” atau “Minus” Tombol “OK”

5. Halaman Tambah Galeri Tombol “Browse”

Tombol “Ubah ke Harris” 6. Halaman Tambah Objek Tombol “Tambah” 7. Halaman Pembelajaran Tombol “Inisialisasi”

Tombol “Pembelajaran”

4.2.2 Kasus dan hasil pengujian sistem

Berikut ini adalah kasus untuk menguji sistem yang dibangun menggunakan metode Black Box yang didasarkan rencana pengujian pada Tabel 4.1. Hasil pengujian sistem pendeteksian citra dalam pencarian objek pariwisata dengan menggunakan metode Harris Corner Detection dan Backpropagation yang menggunakan metode Black Box dapat dilihat pada Tabel 4.2.


(38)

Utama tombol Daftar Objek

melihat daftar objek, sistem akan menampilkan form daftar objek

Mengelik tombol

Pembelajaran

Ketika pengguna ingin sistem melakukan

pembelajaran terhadap citra, sistem akan menampilkan form pembelajaran Berhasil Mengelik tombol Pengujian Image

Ketika pengguna ingin mencari citra dan informasi pariwisata yang telah diuji sebelumnya

Berhasil

3. Halaman Daftar Objek

Mengelik tombol Add

Ketika pengguna ingin menambah citra untuk dimasukkan ke dalam sistem yang akan memunculkan form tambah objek.

Berhasil

Mengelik tombol Delete

Ketika pengguna ingin menghapus objek dari sistem dan database lalu mengelik tombol Delete.

Berhasil

Mengelik tombol Compare

Ketika pengguna ingin mselihat perbandingan dari citra yang sudah

dimasukkan sebelumnya, dengan menekan tombol Compare.

Berhasil

4. Halaman Galeri

Mengelik tombol Plus

Ketika pengguna menambah citra baru dengan menekan salah satu daftar objek dan menekan tombol Plus. Sistem membawa pengguna ke form tambah galeri.


(39)

Tabel 4.2 Hasil Pengujian (Lanjutan)

No.

Komponen sistem yang

diuji

Skenario uji Hasil yang diharapkan Hasil pengujian Mengelik

tombol Minus

Ketika pengguna menghapus citra yang sudah ada

sebelumnya dengan menkan tombol Minus.

Berhasil

Mengelik tombol OK

Ketika pengguna ingin menutup form tambah galeri jika sudah selesai menambah citra

Berhasil

5 Halaman Tambah Galeri

Mengelik tombol Browse

Ketika pengguna ingin menambah citra dan

dimasukkan ke dalam galeri setelah pengguna menekan tombol Add dari form daftar objek. Pengguna menekan tombol Browse, lalu mencari citra yang ingin ditambah dan menekan tombol OK.

Berhasil

Mengelik tombol Ubah ke Harris

Ketika pengguna sudah memasukkan citra, lalu menekan tombol Ubah ke Harris. Hasil dari

pengubahan tersebut akan memunculkan form detail galeri berupa citra asli dan citra HCD

Berhasil

6. Halaman Tambah Objek

Mengelik tombol Tambah

Ketika pengguna hendak menambah objek uji. Pengguna menekan tombol Add dari halaman daftar objek dan sistem membuka form tambah objek.

Pengguna mengisi form, lalu menekan tombol Tambah.

Berhasil

7. Halaman Pembelajaran

Mengelik tombol Insisialisasi

Ketika pengguna ingin melakukan insiasilasi data awal dari tombol Pengujian Image maka pengguna mengelik tombol Inisialisasi. Berhasil Mengelik tombol Pembelajaran

Ketika pengguna ingin melakukan pembelajaran dengan menekan tombol Pembelajaran.


(40)

penelitian ini tersedia 8 (delapan) objek citra yang dinomori menggunakan binari. Mesjid Raya Medan menempati urutan objek pertama dengan nilai keluaran 000. Kantor Pose Medan menempati urutan objek kedua, dengan nilai keluaran 001, begitu seterusnya sampai pada objek ke-8, yang akan memiliki nilai keluaran 111. Beberapa citra pembelajaran penelitian dapat dilihat pada Tabel 4.3.

Tabel 4.3 Tabel Citra Pembelajaran

No Nama

Objek

Keterangan Citra Pembelajaran

Citra Asli Citra HCD

1. Kantor Pos Medan

Kantor_pos_1.JPG out_txKantor_pos_1.JPG

Kantor_pos_3.JPG out_txKantor_pos_3.JPG


(41)

Tabel 4.3 Tabel Citra Pembelajaran (Lanjutan)

No Nama Objek

Keterangan Citra Pembelajaran

Citra Asli Citra HCD

Kantor_pos_10.JPG out_txKantor_pos_10.JPG 2. Mesjid

Raya Medan

Mesjid_Raya_2.JPG out_txMesjid_Raya_2.JPG

Mesjid_Raya_4.JPG out_txMesjid_Raya_4.JPG


(42)

Mesjid_Raya_8.JPG out_txMesjid_Raya_8.JPG

3. Istana Maimun

Istana_Maimun_1.JPG

out_txIstana_Maimun_1.JPG

Istana_Maimun_4.JPG out_txIstana_Maimun_4.JPG


(43)

Skenario pengujian yang digunakan adalah sebagai berikut.

1. Menentukan nilai parameter inisilasiasi awal BP dari seluruh citra yang sudah dimasukkan, yaitu: hidden layer, alpha, epoh maksimal, dan nilai toleransi eror. Nilai parameter yang dilakukan adalah unit masukan = 40.000, hidden layer = 100, nilai keluaran = 3, alpha = 0.1, epoh maksimal = 100 dan nilai toleransi eror = 0.01.

2. Sistem akan menentukan nilai bobot dan bias menggunakan citra HCD yang menghasilkan nilai biner 0 dan 1 sebagai nilai input. Dari persamaan (3.1) sebelumnya, maka nilai p = 100 dan n = 40.000 ditemukanlah nilai – dan ada di antara −0,7 dan 0,7 dimana hasil inisialisasi sebagian nilai bias awal data sebagian yang dapat dilihat sebagai berikut:

-0.15394 0.57355 -0.05144 0.47877 -0.55412

0.24404 -0.05966 0.49379 0.29939 -0.05173

dan nilai bias akan dikalkukasikan menggunakan persamaan (2.31) untuk mendapatkan nilai aktivasi sesuai dengan persamaan (2.32) menuju hidden layer, yang hasil sebagiannya dapat dilihat sebagai berikut.

0.00008 0.98599 0.9875 0.0154 0.0001

0.98189 0.9999 1.80 0.00008 4.5463

Hasil kalkukasi dari hidden layer akan dikirim menuju keluaran sesuai dengan persamaan (2.33) sehingga menghasilkan nilai berikut.

0.73990 0.00369 -0.06997 0.36131 0.74524

-1.45042 0.01449 0.2385 -0.11625 -0.68038

Yang kemudian akan menghasilkan fungsi aktifasi sesuai dengan persamaan (2.34) dan menghasilkan nilai berikut.

3.02619 0.04562 0.00894 0.94701 0.99935


(44)

ditentukan menggunakan persamaan (2.38) dan (2.39). Dari hasil pembelajaran menggunakan epoh 100, sistem memberikan nilai eror sebesar 0,027.

5. Melakukan pencarian citra baru dengan memasukkan citra yang akan dicari.

6. Citra tersebut akan diubah ke dalam HCD dengan parameter yang sudah ditentukan dalam sistem, yaitu: alpha = 1; k = 0,01; threshold = 120 dan sigma = 0,05 yang disimpan dalam bentuk binari ke dalam database kemudian dipanggil lagi untuk melakukan perbandingan nilai bobot.

7. Mengulangi proses ketiga sampai proses ke lima untuk mendapatkan nilai bobot citra. Nilai citra yang dicari akan dibandingkan bobotnya dengan citra yang ada dalam sistem. Bila sistem menemukan citra yang mirip, maka sistem akan memanggil nama objek menggunakan nomor binary objek.

4.2.4 Hasil pengujian

Setelah melakukan pembelajaran pada sistem, maka dilakukanlah pengujian pada 5 (lima) citra uji pada masing-masing objek untuk membuktikan penelitian ini sehingga diperoleh hasil berupa persentase eror kemiripan citra dari citra pembelajaran terhadap citra uji. Beberapa hasil dari pengujian citra terhadap sistem dapat dilihat pada Tabel 4.4.


(45)

Tabel 4.4 Tabel Hasil Pengujian

No Citra Keterangan Eror

(%)

Asli HCD

1.

Kantor_pos_13.JPG out_txKantor_pos_13.JPG

Berhasil Ditemukan

24.09

2.

Kantor_pos_14.JPG out_txKantor_pos_14.JPG

Tidak Berhasil Ditemukan

78.09

3.

Mesjid_Raya_13.JPG out_txMesjid_Raya_13.JPG

Berhasil Ditemukan

12.85

4.

Mesjid_Raya_15.JPG out_txMesjid_Raya_15.JPG

Berhasil Ditemukan

7.84

5.

Istana_Maimun_12.JPG out_txIstana_Maimun_12.JPG

Tidak Berhasil Ditemukan


(46)

5.1 Kesimpulan

Berdasarkan pengujian sistem pendeteksian citra menggunakan metode corner detection dan backpropagation didapat beberapa kesimpulan, yaitu:

1. Dari hasil pelatihan mendapatkan hasil eror terkecil, yaitu 0.02703% dengan menggunakan data uji citra berupa 5 (lima) objek dan 30 (tiga puluh) citra pada saat banyak laju momentum 1 (satu), banyak neuron 100 (seratus), epoh maksimal 100 (seratus) dan kriteria penghentian 0.01.

2. Hasil pendeteksian sangat dipengaruhi oleh hasil pelatihan yang dilakukan sebelum pengujian, jika nilai eror pada saat latihan menghasilkan nilai eror yang besar pada nilai bobot tertentu, maka pada saat pengujian beberapa citra akan menghasilkan nilai eror yang besar, begitu pula sebaliknya.

3. Hasil eror pendeteksian citra menggunakan corner detection mempengaruhi nilai laju pembelajaran pada backpropagation saat melakukan input awal. Semakin kompleks titik citra yang didapat, maka akan menghasilkan nilai eror yang tinggi pada saat pembelajaran.

4. Banyaknya perubahan rotasi citra pembelajaran dan pengujian sangat mempengaruhi nilai pembelajaran dari hasil eror pendeteksian citra menggunakan metode corner detection dan backpropagation karena sistem akan mencoba mengenali tiap titik yang terdapat dalam sebuah citra.


(47)

5.2 Saran

Pada penelitian selanjutnya, dapat diterapkan pendeteksian citra menggunakan objek alam, seperti danau, gunung, atau hutan dengan menggunakan penggabungan dengan metode lain yang lebih akurat. Hasil penggunaan ini dapat digunakan untuk menambah banyak data sehingga sistem mampu mengenali objek lain secara lebih menyeluruh.


(48)

Pada bab ini membahas landasan atas teori-teori yang bersifat ilmiah untuk mendukung penulisan tugas akhir ini, beserta dengan penelitian sebelumnya. Teori-teori yang dibahas dalam bab ini mengenai pengertian citra, algoritma corner detection, Harris Corner Detection, backpropagation dan beberapa subpokok pembahasan lain.

2.1 Pengertian Citra

Citra merupakan sebuah representasi yang mirip dengan sebuah objek dan terdiri dari sebuah array dua dimensi (Phillips, 2000). dapat dibentuk oleh variasi yang menerus dalam shading, warna, bentuk dan tekstur, yang dapat didefinisikan secara geometris dan kompleks (Simarmata, 2006). Citra sebagai output sistem perekam data dapat bersifat optik berupa foto, bersifat analog yang berupa sinyal video seperti layar televisi, dan juga bersifat digital yang dapat langsung disimpan pada suatu media penyimpanan atau pita magnetik (Sutoyo et al. 2009).

2.1.1 Citra Analog

Citra analog adalah citra yang masih dalam bentuk sinyal analog yang bersifat berkesinambungan, seperti citra pada tampilan televisi ataupun monitor yang dapat dilihat pada Gambar 2.1. Gambar-gambar yang terekam pada pita kaset juga termasuk ke dalam citra analog, juga foto yang tercetak pada kertas atupun poster dan lain sebagainya (Gambar 2.2). Citra analog tidak dapat dipresentasikan dalam komputer sehingga tidak bisa diproses oleh komputer secara langsung. Oleh karena itu, agar citra dapat diproses di komputer maka dilakukan proses konversi dari analog ke digital secara langsung.


(49)

Gambar 2.1 Contoh Citra Analog pada Televisi

Gambar 2.2 Contoh Citra Analog hasil Scanner

2.1.2 Citra Digital

Citra yang akan digunakan pada penelitian ini menggunakan format citra digital. Proses digitalisasi pada citra juga merupakan proses pengubahan bentuk citra analog menjadi citra digital, sehingga dapat diolah menggunakan komputer. Pada Gambar 2.3 merupakan gambar elemen sistem pemrosesan citra digital.

Gambar 2.3 Elemen Pemrosesan Citra Digital

Media Penyimpanan

Komputer

Piranti Tampilan Digitizer

Citra Analog


(50)

ke-digital yang berfungsi melakukan pengubahan dak kuantitasi.

Hasil dari digitizer adalah matriks yang elemen-elemennya menyatakan nilai intensitas cahaya pada suatu titik. Contoh digitizer adalah kamera digital dan scanner. Komputer lalu digunakan untuk sistem permorsesan citra dan bervariasi dari komputer mikro sampai kamputer besar yang mampu melakukan bermacam fungsi digital dengan resolusi tinggi. Hasil pengolahan ini kemudian direpresentasikan kepada piranti tampilan yang dapat dilihat oleh manusia, sedangkan media penyimpanan berfungsi untuk menyimpan hasil konversi citra menjadi citra digital sehingga dapat disimpan secara permanen sehingga dapat diproses lagi.

Citra digital tersusun dalam bentuk kisi yang berisi nilai yang dipresentasikan dengan deretan bit. Sebuah citra dapat didefinisikan sebagai fungsi f(x,y), yang menyatakan derajat keabuan (gray level) pada koordinat x dan y. Koordinat x dinyatakan sebagai kolom dan y dinyatakan sebagai baris. Perpotongan antara baris dan kolom disebut dengan piksel (picture element), yaitu elemen terkecil dalam sebuah citra. Gambar 2.4 menunjukan posisi koordinat citra digital.


(51)

Citra digital berbentuk empat persegi panjang dan ukurannya dinyatakan sebagai tinggi x lebar (baris x kolom). Citra digital dengan tinggi N, lebar M dan memiliki derajat keabuan (grey level) L dapat disusun dengan fungsi sebagai berikut:

( , ) =

0 ≤ ≤ 0≤ ≤ 0≤ ≤

(2.1)

Nilai yang terdapat pada koordinat (x.y) adalah besar dari piksel di titik itu yang dinyatakan dengan f(x,y). Oleh karena itu, sebuah citra digital dapat dilihat pada Gambar 2.5 berikut:

Gambar 2.5 Fungsi Matriks pada Citra

Dicontohkan sebuah citra memiliki ukuran sebesar 100 x 100 piksel dengan nilai yang beragam pada setiap pikselnya. Maka matriks yang terdiri dari 100 baris dan 100 kolom dapat dipresentasikan pada Gambar 2.6.

⎣ ⎢ ⎢ ⎢ ⎢

⎡ 00 25524 14389

100 0 1

… … 243

… … 12

… … 89

⋮ ⋮ ⋮

⋮ ⋮ ⋮

105 102 103

⋮ ⋮ ⋮

⋮ ⋮ ⋮

… … 100⎦

⎥ ⎥ ⎥ ⎥ ⎤

Gambar 2.6 Presentasi Matriks pada Citra

Piksel pertama pada koordinat (0,0) memiliki nilai sebesar 0, yang berarti berwarna hitam. Sedangkan piksel yang berada pada koordinat (0,1) memiliki nilai 255, yang berarti berwarna putih, dan koordinat (0,3) memiliki nilai 143 yang artinya warna piksel berada diantara hitam dan putih, begitulah membaca piksel seterusnya.

Untuk mendapatkan citra digital dibutuhkan sebuah alat yang dapat mengubah sinyal analog menjadi digital, seperti scanner, foto digital, dan kamera digital. Dalam tugas akhir ini, penulis akan menggunakan citra digital berformat JPG.


(52)

Warna hitam diwakili dengan 0 dan warna putih diwakili dengan 1. Contoh citra biner dapat dilihat pada Gambar 2.7 di bawah ini.

Gambar 2.7 Contoh Binary Image

2. Citra grayscale (grayscale image) merupakan citra yang memiliki warna hitam, keabuan dan putih dalam setiap pikselnya. Citra ini memiliki kedalaman piksel 8 bit, dengan rentang sebanyak 256 warna (28 = 256). Contoh citra grayscale dapat dilihat pada Gambar 2.8.


(53)

3. Citra warna (true color) merupakan citra yang menggunakan kombinasi dari tiga warna, yaitu: Red, Green dan Blue, sehingga disebut sebagai citra RGB. Setiap komponen warna yang terdapat pada piksel dapat mencapai 8 bit (28 = 256 warna) dengan format warna dapat dilihat pada Gambar 2.9.

Gambar 2.9 Format Warna RGB

Hal ini menyebabkan setiap piksel pada citra RGB membutuhkan media penyimpanan 3 byte. Jumlah kemungkinan kombinasi warna pada citra RGB adalah 224 atau lebih dari 16 juta warna. Contoh citra warna dapat dilihat pada Gambar 2.10.


(54)

lalu menyimpulkan isi suatu citra (Bhatia & Chabbra, 2011). Corner dapat didefinisikan sebagai perpotongan dari dua buah edge atau titik yang menghasilkan dua arah edge dominan yang berbeda pada sebuah local neighbor (Burger, 2008). Untuk mengenali corner dapat dilakukan dengan menggeser window ke segala arah sehingga pada satu waktu tertentu didapatlah sebuah perbedaan yang besar yang kemudian diindentifikasikan sebagai corner, seperti yang dapat dilihat pada Gambar 2.11.

Gambar 2.11 Cuplikan Windowing

Apabila window digeser ke segala arah tetapi menghasilkan simpulan bagian flat dari objek dan tidak mendapat nilai apapun, maka hasilnya akan menjadi Gambar 2.12 bagian A, karena tidak terjadi perubahan dalam arah manapun. Pada Gambar 2.12 bagian B terjadi bila window digeser ke segala arah dan menghasilkan simpulan yang menyatakan bagian tepi dari objek yang disebut edge. Bila terjadi perubahan intensitas yang tertumpu pada satu sudut dari berbagai arah atau edge ketika window digeser maka akan dihasilkan sudut dari objek yang disebut sebagai corner, seperti yang ditujukan pada Gambar 2.12 bagian C.

Window


(55)

A B C Gambar 2.12 Ide Dasar Corner Detection

Corner detection banyak digunakan dalam motion detection (pendeteksi gerak), image registration (pendaftaran citra), video tracking (pelacakan video), image mosaicing, panoroma stitching, 3D modeling dan pengenalan objek. Corner detector yang baik harus memenuhi sejumlah kriteria, termasuk membedakan antara sudut-sudut yang benar dan salah, yang memiliki noise cukup besar, dan secara akurat dapat menentukan lokasi sudut.

Ketentuan dasar yang digunakan dalam menentukan sudut, yaitu: ketika sebuah edge didefiniskan dalam sebuah citra, maka sebuah corner point didefinisikan sebagai sebuah area yang menunjukan nilai gradien dalam arah yang sama. Sebuah detektor akan dapat mendeteksi titik sudut (corner) yang terdapat pada sebuah citra walau citra tersebut berubah arah.

Fungsi corner detector dapat dilihat pada Gambar 2.13. Di bawah terdapat sebuah segitiga yang berdiri tegak. Detektor akan mendeteksi sudut yang terdapat pada segitiga tersebut. Jika posisi segitiga diubah sedikit, maka detektor masih dapat mendeteksi sudut yang terdapat pada segitiga walau ada perubahan baik secara rotasi maupun tidak secara akurat.


(56)

fungsi matematika yang dapat ditemukan pada sebuah citra serta dapat ditekesi maupun terjadi perbedaan rotasi. Operator Harris juga sangat sensitif terhadap noise dalam sebuah citra (Guelzim et al. 2011).

Operator ini banyak digunakan sebagai salah satu proses dalam pengembangan robot vision. Kumpulan citra yang diambil menggunakan operator ini akan digunakan dalam proses interpretasi robot. Sehingga robot dapat mengambil kesimpulan dalam perubahan citra. Harris corner detector didasarkan pada fungsi perubahan autorkorelasi, dimana perubahan sinyalnya dapat diukur dalam arah yang berbeda. Autokorelasi ini memiliki rumus matematis sebagai berikut:

( , ) = [ ( , ) − ( + ∆ + ∆ ) ] (2.2)

dimana:

1. (xi,yi) = titik pada jendela W (fungsi Gaussian) yang berpusat di (x,y) 2. I(.,.) = fungsi citra.

3. (∆ ,∆ ) = pergeseran W

Sementara itu, citra yang digeser dirumuskan dengan ekspansi Taylor, yakni:

+ ∆ + ∆ ≅ ( , ) + [ ( , ) ( , ) ] ∆

∆ (2.3)

dengan substitusi persamaan (2.2) dan (2.3), maka persamaan (2.2) bisa diturunkan sebagai berikut:


(57)

( , ) = [ ( , ) − ( + ∆ + ∆ ) ] = ( , ) − ( , ) − ( , ) ( , ) ∆ ∆ = − ( , ) ( , ) ∆ ∆ = ( , ) ( , ) ∆ ∆ = [∆ ,∆ ] ⎣ ⎢ ⎢ ⎢ ⎡ ( ( , ) ) ( , ) ( , ) ( , ) ( , ) ( ( , ) ) ⎦ ⎥ ⎥ ⎥ ⎤ ∆ ∆ = [∆ ,∆ ] ( , ) ∆ ∆ (2.4)

dimana C(x,y) merupakan matriks auto correlation yang menangkap nilai intensitas dari struktur local neighbour.

Harris Corner Detection (HCD) menghitung nilai rata-rata matriks yang diambil dari perubahan gradien citra, lalu mengombinasikan dengan nilai eigenvalues untuk mendapatkan nilai corner, yang diambil dari nilai maksimum posisi corner yang teridentifikasi. Ada beberapa tahap dalam mencari corner menggunakan operator ini, yaitu dengan mencari nilai local structure matrix, nilai corner response function (CRF), lalu menentukan nilai corner points (Burger & Burge, 2008).

2.2.1.1 Local Structure Matrix (LSM)

Perhitungan dimulai dari turunan parsial pertama (first partial derivative) fungsi citra I(u,v) dalam arah vertikal dan horisontal. Dimana persamaannya dapat dinyatakan sebagai berikut:

Ix(u,v) = ( , ) dan Iy(u,v) = ( , ). (2.5)

Untuk setiap perpindahan tempat dalam citra (u,v), pertama-tama hitung ketiga nilai A(u,v), B(u,v), dan C(u,v), untuk:


(58)

Selanjutnya, tiap-tiap ketiga fungsi A(u,v), B(u,v), dan C(u,v) dihaluskan dari kekusutan (convolution) menggunakan nilai Gaussian filter , . Dimana nilai Gaussian filternya menggunakan fungsi:

,

=

( )

(2.10)

untuk adalah standard derivation (simpangan baku) dari fungsi dan r adalah radius dari nilai tengah citra. Nilai piksel yang terletak pada tengah citra menerima nilai maksimum, sehingga dari nilai Gaussian filter ,

dapat menghasilkan nilai fungsi

matriks sebagai berikut:

= ∗ , ∗ ,

∗ , , =

̅

̅

̅

(2.11)

Karena matriks simetris, matriks dapat didefinisikan sebagai:

′ = 0

0

(2.12)

dimana dan adalah eigenvalues dari matriks yang didefinisikan sebagai:

, =

( )


(59)

= ̅+ ± ̅ − 2 ̅ + + 4 ̅ (2.13) Untuk

trace = ̅+ dan det( ) = ̅ - ̅ (2.14)

Eigenvalues yang bernilai positif dan bilangan ril, memuat informasi penting mengenai local image structure. Nilai hasil dari local image structure akan dipengaruhi oleh eigenvalues. Untuk menyeleksi corner yang baik harus melihat nilai eigenvalues, seperti yang ditunjukkan pada Gambar 2.14 berikut ini.

Gambar 2.14 Kurva Klasifikasi Corner, Flat, dan Edge (Harris-Stephens, 1988)

Dari Gambar 2.14 di atas, dapat kita lihat bahwa pengklasifikasian auto correlation sudah terlihat dengan jelas. Seperti yang sudah dibahas sebelumnya, ada tiga hal yang mempengaruhi nilai eigenvalues dari operator ini, yaitu sebagai berikut:

1. Dalam sebuah citra, jika wilayah yang diambil dalam citra tersebut seragam, atau hanya terdapat perubahan yang konstan, tidak terjadi perubahan apapun dan perubahan yang terjadi sangat kecil sekali, maka wilayah fungsi autokorelasi tersebut dinamakan daerah “flat”. Hal ini disebabkan karena nilai = 0 dimana ≈ ≈ 0. Bentuk ilustrasinya dapat dilihat pada Gambar 2.15 berikut ini.


(60)

Gambar 2.15 Representasi Eigenvalues Flat

2. Jika > 0 atau memiliki nilai positif yang besar dan = 0, atau sebaliknya nilai = 0 dan > 0, maka wilayah autokorelasi itu disebut sebagai edge, yang menyebabkan perubahan cukup besar dalam arah tegak lurus. Bentuk ilustrasinya dapat dilihat pada Gambar 2.16 di bawah ini.

Gambar 2.16 Representasi Eigenvalues Edge

3. Jika > 0 dan > 0 dan berada pada nilai positif yang besar, maka wilayah tersebut dinamakan corner yang terbentuk dari fungsi autokorelasi lokal dengan puncak yang tajam sehingga pergeseran ke semua arah menghasilkan nilai yang besar. Ilustrasinya dapat dilihat pada Gambar 2.17 berikut.


(61)

Gambar 2.17 Representasi Eigenvalues Corner

2.2.1.2 Corner Response Function (FCR)

Dari persamaan (2.12) di atas, maka nilai selisih dari dua eigenvalues adalah

- = 2 . . ( ( ) ) − det ( ) (2.15)

dimana nilai (0,25 . ( ( ) ) ) > det ( ) dalam setiap kasus. Dalam sebuah corner nilai persamaan tersebut harus sekecil mungkin, yang kemudian di definiskan dengan fungsi:

Q(u,v) = ( ) – α . ( ( ) ) = ( ̅ - ̅ ) – α . ̅+

(2.16)

sebagai sebuah nilai ukur dari kekuatan corner (corner strength). Q(u,v) disebut sebagai fungsi corner response (corner response function) dan mengembalikan nilai maksimum. Dalam prakteknya, nilai α berada di antara 0,04 sampai 0,06 dengan nilai maksimal 0,25. Semakin besar nilai α, maka semakin kecil sensitifitas dari detector dan semakin sedikit corner yang terdeteksi.


(62)

corner ci = (ui, vi, qi) yang sudah didapatkan akan diinput ke dalam:

Corners = [c1, c2, … cN] (2.18)

yang kemudian akan diurutkan secara descending (menurun) (qi qi+1) berdasarkan corner strength qi = Q(ui, vi) seperti yang sudah didefenisikan pada Pers. (2.17).

Untuk menekan nilai false corner yang berada di sekitar area true corner maka harus dibuat nilai spesifik untuk mengeliminasi nilai false corner. Memenuhi hal ini maka list Corners diletakan dimulai dari depan sampai belakang (front to back), dan nilai corner yang lemah akan terletak di bagian akhir list dimana bagian ini terdapat dalam daerah corner yang kuat, kemudian dihapus. Proses pengolahan corner detector dapat dilihat pada Gambar 2.18.

Gambar 2.18 Flowchart Corner Detector (Harris-Stephens, 1988)

2.2.2 Algoritma Harris Corner Detection

Berikut ini adalah algoritma Harris Corner Detection yang digunakan untuk mendeteksi corner (Harris-Stephens, 1988):

1. Melakukan perhitungan x dan y dari citra.


(63)

3. Mencari jumlah nilai produk dari tiap piksel yang kemudian dikalikan dengan fungsi Gaussian.

4. Mendefinisikan tiap piksel (x,y) ke dalam matriks M. 5. Menghitung nilai corner response R tiap piksel. 6. Menghitung nilai ambang R.

7. Menghitung nilai nonmax titik yang telah ditentukan. 8. Memasukkan nilai corner yang ditemukan.

2.3 Jaringan Saraf Tiruan (Neural Network)

Ketika manusia berpikir, aktivitas yang terjadi adalah aktivitas untuk mengingat, memahami, menyimpan, dan memanggil kembali apa yang pernah dipelajari oleh otak. Jaringan saraf tiruan hanya menirukan aktivitas tersebut. Hanya saja, manusia memiliki cara kerja yang lebih kompleks dan lebih rumit daripada yang diperkirakan (Pustpitaningrum, 2006).

Jaringan saraf tiruan (JSS) atau Neural Network (NN) merupakan salah satu bidang komputer yang menirukan aktivitas otak manusia, dimana komputer diusahakan agar berpikir seperti manusia. Jaringan Saraf Tiruan direpresentasikan sebagai toplogi graf yang terhubung antara yang satu dengan yang lain. Dimana dalam tiap garis (edge) memiliki titik (node) yang saling menghubungkan antara yang satu dengan yang lain. Titik-titik tersebutlah yang akan memasukkan sekaligus mengeluarkan informasi.

Jaringan saraf tiruan akan mengonfirmasi informasi dalam bentuk bobot dari satu neuron ke neuron yang lainnya. Informasi tersebut diproses oleh sebuah fungsi dan semua input yang datang akan dijumlahkan, lalu dibandingkan dengan nilai ambang tertentu melalui fungsi aktivasi setiap neuron. Bila nilai melampaui nilai ambang maka neuron diaktifkan dan informasi output diteruskan ke neuron yang tersambung dengannya. Struktur jaringan saraf tiruan dapat dilihat dalam Gambar 2.19 berikut.


(64)

Pembagian arsitektur jaringan saraf tiruan bisa dilihat dari kerangka kerja dan skema interkoneksi, yang dapat dilihat dari jumlah lapisan (layer) dan jumlah node pada setiap lapisan. Lapisan-lapisan penyusunnya dapat dibagi menjadi tiga, yaitu:

1. Lapisan input (input layer), yang menerima input dari dari luar dan merupakan penggambaran dari sebuah masalah.

2. Lapisan tersembunyi (hidden layer), yang tidak dapat secara langsung diamatai, di sini dilakukan proses pengolahan informasi.

3. Lapisan keluaran (output layer), yang merupakan hasil dari informasi terhadap sebuah permasalahan.

Berdasarkan lapisan ini, maka Jaringan Saraf Tiruan dapat dibagi ke dalam tiga macam arsitektur, yaitu:

1. Jaringan kompetitif (competitive layer), pada jaringan ini, sekumpulan neuron bersaing untuk mendapatkan hak aktif. Pada lapisan ini terdapat jaringan dengan lapisan kompetitif yang memiliki bobot -ε seperti yang ditunjukkan pada Gambar 2.20.


(65)

2. Jaringan lapisan tunggal (single layer net), dimana aristekturnya hanya memiliki satu buah lapisan. Jaringan ini hanya menerima input, kemudian langsung mengolahnya menjadi output tanpa harus melalui lapisan tersembunyi. Seperti yang ditunjukkan pada Gambar 2.21 terlihat lapisan input memiliki 3 neuron, yaitu X1, X2, dan X3. Lapisan output terdiri dari 2 neuron,

yaitu Y1 dan Y2. Dimana kedua neuron tersebut saling berhubungan, yang

thubungan masing-masing neuron memiliki bobot yang bersesuaian. Semua input akan berhubungan dengan setiap unit output.

Gambar 2.21 Jaringan Lapisan Tunggal (Single Layer Net) (Hermawan, 2006)

3. Jaringan multilapis (multilayer net), memiliki satu atau lebih lapisan tersembunyi pada sebuah arsitektur. Dengan banyaknya lapisan tersembunyi, maka jaringan memiliki kemampuan yang lebih baik memecahkan masalah dibandingkan dengan jaringan lapisan tunggal. Hanya saja, pelatihan yang dilakukan menjadi lebih rumit. Untuk lebih jelasnya, dapat dilihat pada Gambar 2.22.


(66)

Gambar 2.22 Jaringan Saraf Multilapis (Multilayer Net) (Hermawan, 2006)

2.3.2 Paradigma Pembelajaran

Masing-masing hubungan antar-unit pengolah yang terdapat pada jaringan saraf tiruan, berperan sebagai jalur penghubung. Kekuatan hubungan pada tiap sambungan akan disesuaikan selama pelatihan atau pembelajaran sehingga pada akhirnya dihasilkan jaringan saraf tiruan dengan bobot-bobot yang mantap. Sebagian besar jaringan saraf melakukan penyesuaian selama menjalani proses pelatihan atau pembelajaran. Proses ini pada dasarnya menghasilkan suatu nilai yang memengaruhi nilai bobot secara terus-menerus.


(67)

2.3.2.1 Pembelajaran Tak Terawasi (Unsupervised Learning)

Pada pembelajaran ini, tidak terjadi proses penglasifikasian pola, sehingga sistem akan melakukan proses dengan sendirinya. Algoritma ini sehing kali memiliki perhitungan yang kompleks dan akurasinya lebih rendah dibandingkan dengan pembelajaran terawasi. Algoritma ini dirancang untuk belajar dengan cepat dan lebih praktis dalam hal kecepatan.

2.3.2.2 Pembelajaran Terawasi (Supervised Learning)

Pada pembelajaran ini mengasumsikan ketersediaan contoh-contoh penglasifikasian kelas-kelas pembelajaran, yang memanfaatkan keanggotan kelas dari setiap contoh pelatihan. Dengan informasi ini, sistem dapat mendeteksi kesalahan klasifikasi pola sebagai umpan balik ke dalam jaringan, sehingga mampu menghasilkan jawaban yang semirip mungkin dengan jawaban benar yang telah diketahui oleh jaringan.

Pembelajaran ini mengacu pada pencarian kemungkinan kombinasi bobot yang naik ataupun turun derajat kesalahannya. Sistem akan memanfaatkan informasi tersebut untuk mendefinisikan kesalahan numerik yang mencari penurunan kesalahan.

2.3.3 Backpropagation

Backpropagation (BP) merupakan salah satu algoritma yang sering digunakan untuk menyelesaikan masalah-masalah yang rumit. Hal ini disebabkan karena jaringan dengan algoritma ini dilatih dengan menggunakan metode pembelajaran terbimbing. Pada jaringan diberikan pola masukan dan pola keluaran yang diinginkan.

Ketika suatu pola diberikan kepada jaringan, bobot-bobot diubah untuk memperkecil perbedaan pola keluaran dan pola yang diinginkan. Latihan ini dilakukan sehingga semua pola yang dikeluarkan jaringan dapat memenuhi pola yang diinginkan, seperti yang terlihat di arsitektur backpropagation pada Gambar 2.23.

Backpropagation menggunakan nilai eror output untuk mengubah nilai bobot dalam arus mundur dan termasuk ke dalam jaringan yang memiliki banyak lapisan. Di dalam algoritma ini, setiap unit yang berada pada lapisan input terhubung dengan setiap unit yang berada di lapisan tersembunyi. Unit-unit pada lapisan tersembunyi juga terhubung dengan lapisan keluaran.


(68)

Gambar 2.23 Arsitektur Jaringan Backpropagation (Muis, 2009)

Algoritma backpropagation dimulai dengan memberikan pola masukan ke dalam lapisan. Setiap pola merupakan nilai aktivasi unit-unit masukan, yang memiliki bobot dan dihitung jumlahnya dengan menggunakan:

=

(2.19)

dimana: Xj = jumlah bobot unit masukan j

Yi = nilai masukan yang berasal dari unit i Wij = bobot dari unit i sampai ke j

Setelah jumlah bobot dari Xj dihitung dan ditemukan hasilnya, maka diterapkankanlah fungsi sigmoid yang akan menghasilkan nilai antara 0 dan 1. Pada algoritma backpropagation, fungsi sigmod yang dipakai memiliki persamaan:

( ) = 1 1 +

(2.20)

Hasil perhitungan Yj merupakan nilai aktivasi pada unit pengolah j. Nilai ini dikirimkan ke seluruh keluaran j. Setelah umpan maju (feedforward) dikerjakan, maka jaringan siap melakukan umpan mundur (backpropagation). Yang dilakukan di langkah ini adalah menghitung eror dan mengubah bobot-bobot pada semua interkoneksinya.


(69)

Di sini eror dihitung pada semua unit pengolah dan bobotpun diubah pada semua sambungan. Perhitungan dimulai dari lapisan keluaran dan mundur sampai lapisan masukan. Hasil keluaran dari umpan maju dibandingkan dengan hasil keluaran yang diinginkan. Berdasarkan perbedaan ini kemudian dihitung eror untuk tiap-tiap lapisan pada jaringan.

Pertama-tama, dihitung eror untuk lapisan keluaran, kemudian disesuaikan dengan setiap sambungan bobot-bobot yang menuju ke lapisan keluaran. Setelah itu dihitung nilai eror pada lapisan tersembunyi dan dihitung perubahan bobot yang menuju lapisan tersembunyi. Demikian proses dilakukan mundur sampai ke lapisan masukan secara iteratif. Jika j adalah salah satu unit pada lapisan keluaran, maka eror lapisan keluaran dapat ditentukan dengan persamaan:

= ( − ) ′( ) (2.21)

dimana: tj = keluaran yang diinginkan dari unit j aj = keluaran dari unit j

′( ) = turunan dari fungsi sigmoid Xj = hasil penjumlahan berbobot

Jika j adalah suatu lapisan tersembunyi, maka eror lapisan tersembunyi dapat ditentukan dengan menggunakan persamaan:

= ′( )

(2.22)

∆ = ŋ (2.23)

dimana: ∆ = perubahan bobot dari unit i ke unit j

ŋ = laju belajar (konvergensi)

δj = eror lapisan tersembunyi


(70)

kadang mengalami penurunan sampai mencapai suatu kondisi minimum, yang kadang bisa naik kembali. Eror yang paling mimum, merupakan eror yang diinginkan. Eror minimum E dapat dipakai menggunakan persamaan:

= 1

2 ( − )

(2.24)

dimana: E = nilai eror minumum Yj = fungsi sigmoid dari unit j

dj = nilai keluaran yang ditetapkan dari unit j

Dalam backpropagation satu buah lapisan tersembunyi bisa dikatakan cukup memandai untuk menyelesaikan masalah sembarang fungsi sigmoid. Dengan menggunakan lebih dari satu buah lapisan tersembunyi, satu masalah lebih mudah untuk diselesaikan. Meskipun begitu, tidak ada ketentuan khusus mengenai banyaknya jumlah lapisan tersembunyi yang dibutuhkan (Ganatra et al. 2011). Dalam penelitian ini, penulis menggunakan 4 (empat) buah lapisan tersembunyi.

Prosedur pembaharuan bobot (update bobot) dapat dimodifikasi dengan menggunakan momentum. Dengan menambahkan momentum ke dalam rumus pembaharuan bobot, biasanya konversi akan lebih cepat dicapai. Ini disebabkan karena momentum memaksa proses perubahan bobot terus bergerak sehingga tidak terperangkap ke dalam minimum-minimum lokal. Bobot antara lapisan masukan ke lapisan tersembunyi (∆ ) dan dari lapisan tersembunyi ke lapisan keluaran (∆ ) dapat ditentukan dengan persamaan:


(71)

∆ = (2.25)

∆ = (2.26)

Jika eror tidak terjadi, maka menjadi 0 (nol) dan hal ini akan menyebabkan koreksi ∆ = 0, dengan kata lain pembaharuan bobot berlanjut dalam arah yang sama seperti yang sebelumnya. Jika parameter momentum digunakan, maka persamaan pembaharuan bobot dengan pelatihan t, dan t+1 untuk pelatihan selanjutnya, mengalami modifikasi sebagai berikut:

( + 1) = ( ) + + [ ( ) − ( −1) ] (2.27) atau

( + 1) = + ∆ ( ) (2.28)

dan,

( + 1) = ( ) + + [ ( )− ( −1) ] (2.29) atau

( + 1) = + ∆ ( ) (2.30)

dimana: Z1 … Zn = nilai lapisan tersembunyi

Vij = bobot dari lapisan masukan dan lapisan tersembunyi Wij = bobot dari lapisan tersembunyi dan lapisan keluaran

δ = eror informasi

α = konstanta berkelanjutan

µ = momentum

Kecepatan konvergensi juga dapat ditingkatkan dengan memodifikasi laju belajar menjadi adpatif yang berubah selama proses pelatihan. Jika eror yang muncul lebih besar daripada eror sebelumnya, maka nilai bobot-bobot, indeks, keluaran, dan eror yang baru diabaikan, dan nilai laju belajar diturunkan. Jika eror yang muncul lebih kecil daripada eror sebelumnya, maka nilai nilai bobot-bobot, indeks, keluaran, dan eror yang baru disimpan, dan laju belajar ditingkatkan.


(72)

0. Inisialisasi bobot.

Tentukan angka pembelajaran (α).

Tentukan nilai ambang atau set siklus pelatihan (epoch) sebagai kondisi berhenti. 1. While kondisi berhenti tidak terpenuhi.

Do langkah ke-2 (dua) sampai ke-9 (sembilan).

2. Untuk setiap pasangan pelatihan, kerjakan langkah 3 (tiga) sampai langkah ke-8 (delapan).

Tahap umpan maju (feedforward)

3. Tiap unit masukan (xi, i = 1, …, n) menerima masukan xi dan diteruskan ke lapisan

tersembunyi.

4. Tiap unit tersembunyi (zj, j = 1, …, p) menjumlahkan nilai masukan terbobot

_ = +

(2.31)

dengan menerapkan fungsi aktivasi hitung:

= ( _ ) (2.32)

dan dikirim ke unit-unit keluaran.

5. Tiap unit keluaran (yk, k = 1, …, m) menjumlahkan nilai masukan terbobot

_ = +


(73)

dengan menerapkan fungsi aktivasi hitung:

= ( _ ) (2.34)

Tahap backpropagation error

6. Tiap unit keluaran (yk, k = 1, …, m) menerima target pola yang berkaitan dengan pola input pembelajaran, yang kemudian dihitung nilai erornya menggunakan persamaan (2.19) dan dimodifikasi menjadi:

= ( − ) ′( _ ) (2.35)

gunakan koreksi bobot untuk memperbaiki nilai wjk pada persamaan (2.25) dan koreksi bias untuk memperbaiki nilai w0k menggunakan:

= (2.36)

lalu kirim ke lapisan tersembunyi di bawahnya.

7. Tiap unit tersembunyi (zj, j = 1, …, p) menjumlahkan delta inputnya dari unit-unit yang berada di atasnya.

_ =

(2.37)

Nilai ini dikalikan dengan turunan dari fungsi aktivasinya untuk mendapatkan nilai eror, seperti pada persamaan (2.24), sehingga menghasilkan:

= _ ′( _ ) (2.38)

gunakan koreksi eror pada persamaan (2.26) untuk memperbaiki nilai vij dan koreksi bias untuk memperbaiki nilai v0j menggunakan:


(74)

= 0, 1, …, n) menggunakan persamaan (2.30), yang dapat disederhanakan sebagai:

( ) = ( ) + ∆ (2.41)

9. Tes kondisi berhenti.

2.4 Format File JPEG

Pada penelitian ini, citra yang digunakan adalah citra berformat JPEG (Joint Photographic Expert Group) atau JPG. JPEG menggunakan teknik kompresi yang menyebabkan kualitas citra turun (lossy compression). Setiap kali menyimpan file ke tipe JPG dari tipe lain, ukuran gambar akan mengecil, kualitas citra turun dan tidak dapat dikembalikan lagi. Pada gambar-gambar tertentu, penurunan kualitas citra hampir tidak terlihat oleh mata.

File JPEG digunakan untuk citra yang memiliki banyak warna karena format ini memiliki kedalaman warna 24 bit atau sekitar 16 juta warna dan umumnya digunakan untuk menyimpan citra hasil foto. Format file ini mampu menyimpan citra dengan mode warna RGB, CMYK dan grayscale. Karakteristik JPEG memiliki ekstensi .jpg atau .jpeg.

2.5 Penelitian Terdahulu

Pendeteksian citra telah banyak digunakan untuk membantu kebutuhan manusia dalam pencarian informasi yang dapat diolah kembali menjadi informasi lain bagi pengguna yang berbeda. Penelitian mengenai masalah ini telah banyak dilakukan dengan berbagai algoritma untuk mendapatkan hasil yang lebih akurat.


(75)

Pada tahun 2005, Devireddy dan Rao menggunakan metode BP untuk mendeteksi tulisan tangan. Pada penelitian tersebut dibuktikan bahwa sistem memiliki kemampuan untuk mengenali pola tanpa harus terpengaruh dari perubahan posisi dari sebuah nilai input. Citra juga dapat digunakan dalam pengenalan wajah menggunakan algoritma genetic dan BP untuk meningkatkan efisiensi kecocokan wajah (Anam et al. 2009). Selain itu, pendeteksian juga dapat dilakukan dengan mencari perbedaan rotasi perubahan sebuah cita menggunakan LED Angle (light-emitting diode deflection angle) sehingga dapat mengenali objek dari sudut berbeda (Li, 2011). Peneletian juga dapat digunakan dengan menggabungkan beberapa metode untuk meningkatkan hasil pendeteksian yang lebih akurat, dengan menggunakan dua metode pendekatan (Bhatia, 2011).

Adapun beberapa penelitian sebelumnya yang telah dilakukan untuk mendeteksi cita berdasarkan masa lalunya, dapat dilihat pada Tabel 2.1.

Tabel 2.1 Penelitian Sebelumnya

No Judul Pengarang Tahun Kelebihan Kekurangan

1. Hand Written Character Recognition Using Backpropagation Network Srinivasa Kumar Devireddy, Settipalli Appa Rao

2005 Mampu untk mengenali pola tanpa harus terpengaruh dengan perubahan posisi. Belum mampu mengenali pola yang kompleks. 2. Face Recognition

Using Genetic Algorithm and Backpropagation Neural Network Sarawat Anam, Md Shohidul Islam, MA Kashem, MN Islam, MR Islam, MS Islam

2009 Hasil pendeteksian cukup akurat dengan tingkat kecocokan 82.61% menggunakan GA dan 91.30% menggunakan BP

n/a

3. An LED Assembly Angle Detection System Li Chunming, Shi Xinna, Xu Yunfeng, Wu Shaoguang

2011 Dapat mengenali perubahan kecerahan citra serta perubahan sudut yang berbeda dari sebuah citra

n/a

4. Accurate Corner Detection Methods using Two Step Approach

Nitiin Bhatia, Megha Chhabra

2011 Hasil pendeteksian lebih akurat serta lebih mudah dan efisien


(76)

Teknologi merupakan salah satu media yang banyak digunakan untuk membantu pekerjaan manusia dengan memanfaatkan tools, process dan resources dalam pengolahannya. Penggunaan teknologi banyak dipakai pada hampir seluruh aspek kehidupan dan perannya digunakan untuk menjalin pertukaran data ataupun informasi (Simarmata, 2006). Pemakaian komputer dalam era informasi berkembang sangat pesat dan diimplemetasikan untuk menjawab berbagai kebutuhan manusia dalam melakukan proses komputasi, pemrosesan serta analisis data, hiburan dan lainnya.

Penggunaan internet pada saat ini mampu mengembangkan beberapa sektor wisata di Indonesia menjadi lebih maksimal sehingga mampu mendatangkan turis baik dari dalam negeri maupun luar negeri. Untuk menarik pihak wisatawan, banyak sekali materi yang bisa kita gunakan, salah satunya adalah dengan menggunakan media mulitimedia, baik berupa gambar ataupun video.

Gambar adalah media informasi yang sangat efektif karena terbukti handal dalam penyampaian informasi dengan penyajian yang lebih menarik bagi indera manusia. Gambar atau citra adalah sebuah representasi yang mirip dari sebuah objek (Jahne, 2005). Penggunaan citra banyak digunakan sebagai media periklanan untuk wisatawan agar dapat berkunjung ke suatu daerah.

Dengan menunjukan citra dari objek wisata yang akan ditawarkan, pihak pengelola dapat membuat para calon wisatawan tertarik untuk mendatangi lokasi yang ditawarkan. Di Indonesia, ada banyak sekali tempat wisata yang belum dikenal oleh masyarakat, dalam pengembangannya dibutuhkan sebuah alat bantu untuk memperkenalkan daerah tersebut kepada masyarakat.


(1)

PERNYATAAN

PENGENALAN POLA CITRA MENGGUNAKAN METODE CORNER DETECTION DAN BACKPROPAGATION

SKRIPSI

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

Medan, Juli 2014

YENNY AGUSTINA TONDANG 081402063


(2)

UCAPAN TERIMA KASIH

Segala puji dan syukur kepada Tuhan Yang Maha Esa, karena berkat kasih dan karunia-Nya penulis bisa menyelesaikan tugas akhir ini. Rasa syukur yang sangat dalam kepada Tuhan Yesus karena bimbingan dan penyertaanNya selalu kepada saya mulai dari awal hingga penyelesaian tugas akhir ini.

Proses penyusunan skripsi ini tidak lepas dari dukungan dan bantuan dari pihak lain. Oleh karena itu penulis mengucapkan terima kasih banyak kepada:

1. Keluarga penulis, mulai dari kedua orang tua penulis, Ibu, Bunga Uli Sinaga dan Ayah, Dasmen Tondang, adik-adik dan keluarga dekat yang selalu mengingatkan dan mendoakan, serta mendukung penulis melalui bantuan moril dan materi, sehingga penulis mampu menyelesaikan tugas akhir ini.

2. Ibu Dr. Erna Nababan, M.IT dan Ibu Sarah Purnamawati, S.T., M.Sc selaku dosen pembimbing yang telah memberikan saran, masukan, serta bersedia meluangan waktu, tenaga dan pikiran untuk membantu penulis menyelesaikan skripsi ini.

3. Dosen penasehat akademik. 4. Dosen penguji.

5. Seluruh dosen.

6. Teman-teman, senior dan junior Teknologi Informasi.

7. Dan seluruh staf Teknologi Informasi yang sudah membantu penulis dalam penyelesaian kelulusan.

Akhir kata, penulis memohon maaf bila dalam penulisan karya tulis ini terdapat beberapa kesalahan. Oleh karena itu, penulis mengharapkan adanya masukan-masukan yang membangun.

Semoga karya tulis ini dapat memberikan kontribusi bagi terwujudnya perdamaian di Indonesia yang kaya akan keberagaman. Tuhan Yesus memberkati.


(3)

ABSTRAK

Indonesia, sebagai negara yang memiliki banyak sekali pulau dan budaya, memiliki potensi yang sangat besar untuk mengembangkan bidang pariwisata. Banyaknya objek pariwisata yang bisa digunakan untuk menambah devisi negara membutuhkan sebuah sistem dalam membantu pengguna dalam mencari objek yang dimiliki oleh pengguna. Dalam penelitian ini digunakan metode corner detection dan backpropgation (BP) untuk membantu pengguna dalam mengenali objek. Harris Corner Detection (HCD) akan mendapatkan titik-titik citra yang terdapat dalam citra. Hasil dari HCD akan dipelajari menggunakan backpropagation yang memberikan hasil dan informasi dari pencarian citra yang digunakan objek. Hasil dari penelitian ini menunjukkan bahwa metode HCD dan BP mampu mengenali citra dengan sangat baik baik dengan eror terkecil mencapai 0.02703%.


(4)

IMAGE PATTERN RECOGNITION USING CORNER DETECTION AND BACKPROPAGATION

ABSTRACT

Indonesia, a country that has many islands and culture, has a huge potential to develop tourism. Many tourism objects that can be used to increase the division of the country require a system to assist users in finding objects owned by the user. This study used corner detection methods and backpropgation (BP) to assist users in recognizing objects. Harris Corner Detection (HCD) will get the points contained in the image of the image. The results of the HCD will be studied using backpropagation provide search results and information from the imagery used objects. The results of this study indicate that the HCD method and BP were able to identify image very well with the smallest error reached into 0.02703%.


(5)

DAFTAR ISI

Hal.

Persetujuan ii

Pernyataan iii

Ucapan Terima Kasih iv

Abstrak v

Abastract vi

Daftar Isi vii

Daftar Tabel ix

Daftar Gambar x

Bab 1 Pendahuluan 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 4

1.4 Tujuan Penelitian 4

1.5 Manfaat Penelitian 4

1.6 Metodologi Penelitian 5

1.7 Sistematika Penulisan 6

Bab 2 Landasan Teori 8

2.1 Pengertian Citra 8

2.1.1 Citra Analog 8

2.1.2 Citra Digital 9

2.2 Corner Detection 14

2.2.1 Harris Corner Detection (HCD) 16

2.2.1.1 Local Structure Matrix (LSM) 17

2.2.1.2 Corner Response Function (FCR) 21 2.2.1.3 Menentukan Nilai Corner Points 22

2.2.2 Algoritma Harris Corner Detection 22

2.3 Jaringan Saraf Tiruan (Neural Network) 23

2.3.1 Aristektur 24

2.3.2 Paradigma Pembelajaran 26

2.3.2.1 Pembelajaran Tak Terawasi (Unsupervised Learning) 27 2.3.2.2 Pembelajaran Terawasi (Supervised Learning) 27

2.3.3 Backpropagation 27

2.3.4 Algoritma Backpropagation 32


(6)

3.4.2 Use case spesifikasi 43

3.4.3 Diagram aktivitas 47

3.4.4 Diagram aliran data 51

3.4.5. Model entity-relationship 53

3.4.6. Perancangan menu sistem 54

3.4.7. Perancangan antarmuka 54

3.4.7.1. Rancangan tampilan awal dan halaman utama 54 3.4.7.2. Rancangan halaman daftar objek 56 3.4.7.3. Rancangan halaman galeri citra 56 3.4.7.4. Rancangan halaman pembelajaran 57 3.4.7.5. Rancangan halaman pengujian image 58

Bab 4 Implementasi dan Pengujian Sistem 61

4.1. Implementasi Sistem 61

4.1.1 Spesifikasi perangkat keras dan lunak yang digunakan 61

4.1.2 Implementasi perancangan antarmuka 62

4.1.3 Implementasi data 67

4.2. Pengujian Sistem 67

4.2.1 Rencana pengujian sistem 68

4.2.2 Kasus dan hasil pengujian sistem 68

4.2.3 Skenario pengujian 71

4.2.4 Hasil pengujian 75

Bab 5 Kesimpulan dan Saran 77

5.1 Kesimpulan 77

5.2 Saran 78