ANALISIS DAN PERANCANGAN APLIKASI PENGENAL DAN PENGHITUNG POLIGON MENGGUNAKAN ARTIFICIAL NEURAL NETWORKS METODE BACKPROPAGATION
UNIVERSITAS BINA NUSANTARA
Jurusan Teknik Informatika Skripsi Sarjana Komputer
Semester Ganjil tahun 2003/2004
ANALISIS DAN PERANCANGAN
APLIKASI PENGENAL DAN PENGHITUNG POLIGON
MENGGUNAKAN ARTIFICIAL NEURAL NETWORKS
METODE BACKPROPAGATION
Dwirani Novianti 0400486433 Ferry 0400499745 Eka Kurniadi 0400528442
Abstrak Poligon sebagai satuan terkecil ketiga dari bangun ruang setelah titik dan garis.
Pengenalan bangun ruang menggunakan komputer merupakan masalah yang kompleks, sama halnya dengan pengenalan objek lainnya seperti pengenalan sidik jari, suara, retina, tulisan tangan, tanda tangan, karakter, dan sebagainya. Untuk itu diperlukan suatu algoritma untuk melakukan pengenalan dan perhitungan jumlah poligon. Proses pengenalan objek secara umum terdiri atas tiga tahap, yaitu image processing,
feature extraction, dan recognition. Image processing menggunakan algoritma
SUSAN (Smallest Univalue Segment Assimilating Nucleus) Corner Detection, dan SUSAN Edge Detection. Feature extraction dengan mengambil besar sudut dalam poligon menggunakan perhitungan matematis dan algoritma Graham Scan juga perbandingan sisi dari poligon. Recognition menggunakan ANN (Artificial Neural
Networks/Jaringan Saraf Tiruan) dengan metode backpropagation (propagasi balik).
Aplikasi yang dibuat dapat mengenali bentuk-bentuk poligon dan menghitung jumlah masing-masingnya dengan kecepatan dan keakuratan tinggi. Penggunaan ANN dengan metode backpropagation memberikan kecepatan dan keakuratan tinggi pada proses pengenalan poligon walaupun memerlukan waktu yang relatif lama pada proses training–nya (pembelajarannya). Algoritma SUSAN memberikan keakuratan tinggi pada proses pendeteksian sudut dan pendeteksian sisi dari poligon. Feature extraction dengan mengambil besar sudut dalam dan perbandingan sisi dari poligon sudah mewakili keunikan dari setiap poligon.
Kata Kunci
pengenalan poligon, penghitung poligon, artificial neural networks, jaringan saraf Abstrak tiruan, backpropagation, propagasi balik
Prakata PRAKATA
Puji syukur kepada Tuhan Yang Maha Esa atas berkat dan bimbingan-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul “ANALISIS DAN
PERANCANGAN APLIKASI PENGENAL DAN PENGHITUNG POLIGON
BACKPROPAGATION” dengan baik. Skripsi ini merupakan salah satu syarat untuk
menyelesaikan jenjang pendidikan Strata-1 di Universitas Bina Nusantara, Jakarta dan ditujukan bagi pengembangan Ilmu Pengetahuan dan Teknologi Indonesia.
Penulis mengucapkan terima kasih kepada pihak-pihak yang telah berperan dalam penyelesaian skripsi ini:
1. Orang tua dan wali, yang telah memberikan dukungan moril maupun materiil dalam proses perkuliahan sampai tersusunnya skripsi ini.
2. Bapak Januar Wahjudi, S.Kom., M.Sc. selaku dosen pembimbing, yang telah membantu dalam memberikan bimbingan, ide-ide, dan solusi dari masalah- masalah yang ditemukan selama proses penyusunan skripsi ini.
3. Ibu Anny Tandyo, S.Kom., M.Sc., yang telah meluangkan waktunya untuk memberikan penjelasan tentang materi yang diperlukan dalam penyusunan skripsi ini.
4. Rekan-rekan di UPTPL Universitas Bina Nusantara khususnya Fredy Muliono, Chandra Adi Mulya, Joko Sunarya, Andoko, Robert Fransetya Purba, Robert, Samuel Heriyanto, Mulyanto, Ricky, Andreanes Yosef Vanderlee yang telah membantu dalam pemecahan masalah yang dihadapi selama perancangan aplikasi yang dibuat, juga rekan-rekan lain yang memberikan dukungan dan semangat.
5. Ibu Dyah Budiastuti, Ir., MM dan Heriawan yang telah memberikan bantuan sarana dalam penyusunan skripsi ini.
6. Marsella Triwahyuni dan Erwin Susanto yang telah memberikan dukungan dan semangat selama proses penyusunan skripsi.
7. Ibu DR Th. Widia S. selaku rektor Universitas Bina Nusantara.
8. Bapak Ir. Harjanto Prabowo, MM selaku dekan Fakultas Ilmu Komputer.
9. Bapak Ir. Sablin Yusuf, M.Sc., M.CompSc. selaku kepala jurusan Teknik Informatika dan koordinator bidang ilmu Intelligent Systems.
10. Dan pihak-pihak lain yang tidak dapat disebutkan satu per satu yang telah memberikan bantuan secara langsung maupun tidak langsung dalam proses penyusunan skripsi ini. Penulis menyadari akan keterbatasan kemampuan dan pengetahuan yang dimiliki. Oleh karena itu, saran dan kritik yang membangun sangat diharapkan untuk penyempurnaan skripsi ini.
Akhir kata, semoga skripsi ini dapat memberikan manfaat kepada semua pihak yang memerlukannya, juga memberikan sumbangsih kepada kemajuan Ilmu Pengetahuan dan Teknologi Indonesia.
Jakarta, Juni 2004 Penulis
Daftar Isi
DAFTAR ISI
Halaman Judul Luar ........................................................................................................i
Halaman Judul Dalam.................................................................................................... ii
Halaman Persetujuan Hardcover................................................................................. iii
Halaman Pernyataan Dewan Penguji ...........................................................................iv
Abstrak..............................................................................................................................v
Prakata .............................................................................................................................vi
Daftar Isi ....................................................................................................................... viii
Daftar Tabel.................................................................................................................. xiii
Daftar Gambar ...............................................................................................................xv
Daftar Lampiran ........................................................................................................ xviii
BAB 1 PENDAHULUAN ................................................................................................1
1.1 Latar Belakang .........................................................................................................1
1.2 Ruang Lingkup.........................................................................................................2
1.3 Tujuan dan Manfaat .................................................................................................3
1.4 Metodologi Penelitian ..............................................................................................3
1.5 Sistematika Penulisan ..............................................................................................4
BAB 2 LANDASAN TEORI ...........................................................................................5
2.1 Teori Pengenalan Objek...........................................................................................5
2.1.1 Teori Pengenalan Objek pada Manusia.............................................................5
2.1.2 Batasan Pengenalan Objek................................................................................6
2.2 Model Warna RGB ..................................................................................................8
2.3 Image........................................................................................................................9
2.3.1 Pengertian Image...............................................................................................9
2.3.2 Pengertian Pixel ................................................................................................9
2.3.3 Image Bitmap ..................................................................................................10
2.3.4 Format Pixel 24-Bit .........................................................................................10
2.4 Image Processing ...................................................................................................11
2.4.1 Grayscaling .....................................................................................................11
2.4.2 Corner Detection.............................................................................................12
2.4.3 Edge Detection ................................................................................................12
2.5 Prinsip SUSAN ......................................................................................................13
2.6 Feature Extraction .................................................................................................15
2.7 Poligon ...................................................................................................................16
2.8 Convex Hull............................................................................................................17
2.9 Graham’s Scan .......................................................................................................17
2.10 Algoritma Midpoint..............................................................................................18
2.11 Artificial Neural Networks ...................................................................................21
2.11.1 Cara Kerja Neural Network...........................................................................24
2.11.2 Arsitektur Neural Network............................................................................24
2.11.3 Training.........................................................................................................26
2.11.4 Activation Function.......................................................................................26
2.11.5 Backpropagation ...........................................................................................27
2.11.5.1 Arsitektur Neural Network Metode Backpropagation...........................28
2.11.5.2 Tahapan Training Backpropagation ......................................................29
2.11.5.3 Algoritma Training Backpropagation ...................................................30
2.11.6 Inisialisasi Nguyen–Widrow.........................................................................32
BAB 3 ANALISIS DAN PERANCANGAN.................................................................33
3.1 Gambaran Permasalahan Secara Umum ................................................................33
3.2 Kebutuhan Sistem dan Pemenuhan Kebutuhan Sistem .........................................35
3.3 Alur Program Secara Umum..................................................................................35
3.4 Image Processing ...................................................................................................38
3.4.1 Grayscaling .....................................................................................................38
3.4.2 Corner Detection.............................................................................................40
3.4.3 Edge Detection ................................................................................................41
3.5 Polygon Extraction.................................................................................................42
3.6 Menentukan Arah Poligon .....................................................................................46
3.7 Feature Extraction .................................................................................................48
3.7.1 Pengambilan Besar Sudut Dalam dari Poligon ...............................................48
3.7.2 Pengambilan Perbandingan Sisi Poligon ........................................................57
3.8 Insert Pola Poligon.................................................................................................59
3.9 Training Pola Poligon ............................................................................................60
3.10 Recognition and Counting Poligon ......................................................................60
3.11 Perancangan Interface Aplikasi ...........................................................................62
BAB 4 IMPLEMENTASI DAN EVALUASI ..............................................................65
4.1 Implementasi ..........................................................................................................65
4.1.1 Spesifikasi Sistem ...........................................................................................65
4.1.1.1 Spesifikasi Perangkat Keras.....................................................................65
4.1.1.2 Spesifikasi Perangkat Lunak ....................................................................65
4.1.2 Prosedur Operasional ......................................................................................66
4.1.2.1 Cara Menjalankan Aplikasi......................................................................66
4.1.2.2 Cara Insert Pola........................................................................................67
4.1.2.3 Cara Training Pola ...................................................................................72
4.1.2.4 Cara Recognizing and Counting Poligon .................................................74
4.2 Evaluasi ..................................................................................................................75
4.2.1 Evaluasi Kecepatan Training ..........................................................................75
4.2.1.1 Pengaruh Jenis Activation Function.........................................................76
4.2.1.1.1 Penggunaan Binary Sigmoid .............................................................76
4.2.1.1.2 Penggunaan Bipolar Sigmoid............................................................78
4.2.1.2 Pengaruh Inisialisasi Nguyen-Widrow ....................................................81
4.2.1.2.1 Penggunaan Bipolar Sigmoid dengan Target -1 dan 1......................82
4.2.1.2.2 Penggunaan Bipolar Sigmoid dengan Target -0.8 dan 0.8................83
4.2.1.3 Pengaruh Banyaknya Unit pada Suatu Hidden Units ..............................85
4.2.2 Evaluasi Kecepatan Recognition and Counting..............................................88
4.2.2.1 Evaluasi Kecepatan Recognition and Counting dengan Data Training...89
4.2.2.2 Evaluasi Kecepatan Recognition and Counting dengan Data Non
Training................................................................................................................90
4.2.3 Evaluasi Keakuratan Recognition and Counting ............................................91
4.2.3.1 Evaluasi Tingkat Keakuratan Recognition and Counting dengan Data
Training................................................................................................................92
4.2.3.2 Evaluasi Tingkat Keakuratan Recognition and Counting dengan Data
Non Training ........................................................................................................94
4.2.4 Hasil Evaluasi .................................................................................................95
BAB 5 SIMPULAN DAN SARAN................................................................................97
5.1 Simpulan ................................................................................................................97
5.2 Saran.......................................................................................................................98
Daftar Pustaka................................................................................................................99
Riwayat Hidup..............................................................................................................101
Lampiran ....................................................................................................................... L1
Daftar Tabel
DAFTAR TABEL
Tabel 3.1 Struktur Tabel yang Digunakan sebagai Data Store........................................59Tabel 4.1 Parameter Training untuk Percobaan Pengaruh Jenis Activation FunctionTerhadap Kecepatan Training..................................................................................76
Tabel 4.2 Kecepatan Training Menggunakan Binary Sigmoid........................................78Tabel 4.3 Kecepatan Training Menggunakan Bipolar Sigmoid.......................................80Tabel 4.4 Perbandingan Kecepatan Training Antara Bipolar Sigmoid dan BinarySigmoid.....................................................................................................................81
Tabel 4.5 Parameter Training untuk Percobaan Pengaruh Inisialisasi Nguyen-WidrowTerhadap Kecepatan Training..................................................................................81
Tabel 4.6 Hasil Percobaan Pengaruh Penggunaan Inisialisasi Nguyen-Widrow TerhadapKecepatan Training dengan Target -1 dan 1............................................................82
Tabel 4.7 Hasil Percobaan Pengaruh Penggunaan Inisialisasi Nguyen-Widrow TerhadapKecepatan Training dengan Target -0.8 dan 0.8......................................................84
Tabel 4.8 Parameter Training untuk Percobaan Pengaruh Banyaknya Unit pada SuatuHidden Units Terhadap Kecepatan Training ...........................................................86
Tabel 4.9 Hasil Percobaan Pengaruh Banyaknya Unit pada Suatu Hidden UnitsTerhadap Kecepatan Training..................................................................................87
Tabel 4.10 Parameter Training untuk Percobaan Tingkat Kecepatan dan KeakuratanRecognition and Counting........................................................................................89
Tabel 4.11 Hasil Percobaan Kecepatan Recognition and Counting untuk Data Training..................................................................................................................................89
Tabel 4.12 Hasil Percobaan Kecepatan Recognition and Counting untuk Data NonTraining....................................................................................................................90
Tabel 4.13 Hasil Percobaan Tingkat Keakuratan Recognition and Counting untuk DataTraining....................................................................................................................92
Tabel 4.14 Hasil Percobaan Tingkat Keakuratan Recognition and Counting untuk DataNon Training ............................................................................................................94
Daftar Gambar
DAFTAR GAMBAR
Gambar 2.1 Rotational Invariance.....................................................................................6Gambar 2.2 Size Invariance ...............................................................................................7Gambar 2.3 Translational Invariance................................................................................7Gambar 2.4 Model Warna RGB.........................................................................................8Gambar 2.5 Nilai Grayscale pada Adobe Photoshop ......................................................11Gambar 2.6 Posisi Circular Mask pada Image Sederhana...............................................14Gambar 2.7 Posisi Pixel Penyusun Circular Mask pada Image.......................................15Gambar 2.8 Convex Hull..................................................................................................17Gambar 2.9 Neural Network Sederhana ..........................................................................23Gambar 2.10 Struktur Sebuah Neuron .............................................................................23Gambar 2.11 Single Neural Net .......................................................................................25Gambar 2.12 Multilayer Neural Net ................................................................................25Gambar 2.13 Arsitektur Neural Network Metode Backpropagation ...............................28Gambar 3.1 Contoh Poligon Sejenis ................................................................................33Gambar 3.2 Contoh Poligon Tak Sejenis.........................................................................34Gambar 3.3 Flowchart Proses Insert Pola Poligon dan Proses Recognition and CountingPoligon .....................................................................................................................36
Gambar 3.4 Flowchart Proses Training Pola Poligon .....................................................37Gambar 3.5 Flowchart Proses Grayscaling .....................................................................40Gambar 3.6 Flowchart Proses Polygon Extraction..........................................................45Gambar 3.7 Rancangan Interface Aplikasi ......................................................................62Gambar 4.1 Tampilan Awal DEF Polygon Recognizer and Counter (70%)...................67Gambar 4.2 Tampilan Setelah Input Bentuk Poligon (70%) ...........................................68Gambar 4.3 Tampilan Setelah Grayscaling (70%) ..........................................................69Gambar 4.4 Tampilan Setelah Edge Detection (70%) .....................................................70Gambar 4.5 Tampilan Window Insert to Pattern (70%) ..................................................71Gambar 4.6 Hasil Penyimpanan Pola ..............................................................................72Gambar 4.7 Tampilan Window Settings...........................................................................73Gambar 4.8 Tampilan Window Training .........................................................................74Gambar 4.9 Tampilan Hasil Recognizing and Counting .................................................75Gambar 4.10 Grafik Hasil Percobaan Kecepatan Training Menggunakan Binary Sigmoid dengan Target Error 0.05.........................................................................................77Gambar 4.11 Grafik Hasil Percobaan Kecepatan Training Menggunakan Binary Sigmoid dengan Target Error 0.025.......................................................................................77Gambar 4.12 Grafik Hasil Percobaan Kecepatan Training Menggunakan Binary Sigmoid dengan Target Error 0.01.........................................................................................78Gambar 4.13 Grafik Hasil Percobaan Kecepatan Training Menggunakan BipolarSigmoid dengan Target Error 0.05 ..........................................................................79
Gambar 4.14 Grafik Hasil Percobaan Kecepatan Training Menggunakan BipolarSigmoid dengan Target Error 0.025 ........................................................................79
Gambar 4.15 Grafik Hasil Percobaan Kecepatan Training Menggunakan BipolarSigmoid dengan Target Error 0.01 ..........................................................................80
Gambar 4.16 Grafik Perbandingan Kecepatan Training Tanpa dan MenggunakanInisialisasi Nguyen-Widrow dengan Target -1 dan 1 ..............................................83
Gambar 4.17 Grafik Perbandingan Kecepatan Training Tanpa dan MenggunakanInisialisasi Nguyen-Widrow dengan Target -0.8 dan 0.8 ........................................85
Gambar 4.18 Grafik Perbandingan Banyaknya Unit pada Suatu Hidden Units TerhadapKecepatan Training..................................................................................................88