TESIS
PEMBENTUKAN POLA KHUSUS UNTUK EKSTRAKSI CIRI PADA SISTEM PENGENALAN AKSARA BALI CETAK
NI KADEK AYU WIRDIANI
PROGRAM PASCASARJANA UNIVERSITAS UDAYANA DENPASAR 2011
TESIS
PEMBENTUKAN POLA KHUSUS UNTUK EKSTRAKSI CIRI PADA SISTEM PENGENALAN AKSARA BALI CETAK
NI KADEK AYU WIRDIANI NIM 0991761013
PROGRAM MAGISTER PROGRAM STUDI TEKNIK ELEKTRO PROGRAM PASCASARJANA UNIVERSITAS UDAYANA DENPASAR 2011
PEMBENTUKAN POLA KHUSUS UNTUK EKSTRAKSI CIRI PADA SISTEM PENGENALAN AKSARA BALI CETAK
Tesis untuk Memperoleh Gelar Magister pada Program Magister, Program Studi Teknik Elektro, Program Pascasarjana Universitas Udayana
NI KADEK AYU WIRDIANI NIM 0991761013
PROGRAM MAGISTER PROGRAM STUDI TEKNIK ELEKTRO PROGRAM PASCASARJANA UNIVERSITAS UDAYANA DENPASAR 2011
Tesis Ini Telah Diuji pada Tanggal 1 Juli 2011
Panitia Penguji Tesis Berdasarkan SK Rektor Universitas Udayana, No.: 1175/UN14.4/HK/2011 tanggal 28 Juni 2011
Ketua : Dr. I Ketut Gede Darma Putra, S.Kom.,MT Anggota
:
1.
Ir. Linawati, M.Eng.Sc.,Ph.D
2.
Prof. Ir. Ida Ayu Dwi Giriantari, M.Eng.Sc.,Ph.D
3.
Prof. Ir. Rukmi Sari Hartati, MT.,Ph.D
4.
I Nyoman Satya Kumara, ST., M.Sc.,Ph.D
PERNYATAAN KEASLIAN KARYA TULIS TESIS
Dengan ini saya menyatakan bahwa dalam tesis ini tidak terdapat karya tulis yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu perguruan tinggi, dan sepanjang pengetahuan saya tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan orang lain, kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan dalam daftar pustaka. Apabila kemudian hari terbukti bahwa saya melakukan tindakan menyalin atau meniru tulisan orang lain sebagai hasil pemikiran saya sendiri, maka gelar dan ijasah yang telah diberikan oleh universitas batal saya terima.
Denpasar, 8 Juli 2011 Yang menyatakan
Ni Kadek Ayu Wirdiani
ABSTRAK
PEMBENTUKAN POLA KHUSUS UNTUK EKSTRAKSI CIRI PADA SISTEM PENGENALAN AKSARA BALI CETAK
Salah satu dari pengenalan pola yang umum dikenal orang adalah pengenalan tulisan. Pengenalan tulisan yang dijadikan objek dalam penelitian ini adalah karakter cetak Aksara Bali. Tulisan Bali memiliki keunikan dari bentuknya yang hampir sama satu dengan yang lainnya dan beberapa tulisan hanya dibedakan oleh satu guratan garis. Ekstraksi ciri karakter dilakukan dengan pola khusus yang dibentuk berdasarkan Metode Pola Busur Terlokalisasi. Pemilihan model dilakukan dari implementasi pola yang didapatkan pada basis data citra Aksara Bali, berdasarkan akumulasi frekuensi kemunculan masing-masing model. Ciri citra aksara uji dibandingkan dengan ciri acuan. Pembandingan tersebut menghasilkan nilai beda yang kemudian diurutkan dan nilai beda yang terkecil dipergunakan sebagai dasar untuk menentukan dikenali atau tidak aksara uji yang dimasukkan melalui pembandingan dengan suatu nilai ambang. Hasil pengujian sistem pengenalan ini memberikan prosentase keberhasilan sebesar 96,4%. Kata kunci : pengenalan pola, pengenalan karakter Aksara Bali, Metode Pola Busur Terlokalisasi, pola model khusus Aksara Bali, ekstraksi ciri, nilai beda, nilai ambang.
ABSTRACT SPECIAL PATTERN FORM FOR FEATURE EXTRACTION ON RECOGNIZED BALINESE PRINT CHARACTER SYSTEM
One of pattern recognition that people usually know is character recognition. Object of character recognition in this research is Balinese print character recognition system. Balinese character is unique, the form of one and the other is almost same and some character is differentiated by one line. Feature extraction of character is conducted by special pattern that is formed from Localized Arc Pattern Methods. Model selection based on apparition each model frequency is got from Balinese character database image. The feature of image tester are compared with reference feature. These comparisons yield dissimilarity value. Then this value is sorted and the smallest dissimilarity value is used to define whether the character test is recognized or not, through a critical value comparison. The experiment achieved an success rate of 96.4%. Key words: pattern recognition, Balinese character recognition, Localized Arc Pattern Methods, special model pattern of Aksara Bali, feature extraction, dissimilarity value, critical value.
KATA PENGANTAR
Segenap puja dan puji syukur penulis panjatkan kehadapan Ida Sanghyang Widhi Wasa sebagai sumber dari segala sumber pengetahuan, karena atas asung kertha wara nugrahaNya tesis yang berjudul “PEMBENTUKAN POLA KHUSUS UNTUK EKSTRAKSI CIRI PADA SISTEM PENGENALAN AKSARA BALI CETAK” ini dapat diselesaikan. Dalam penyusunan Tesis ini, penulis banyak memperoleh petunjuk dan bimbingan dari berbagai pihak. Sehubungan dengan hal tersebut, maka pada kesempatan ini penulis menyampaikan ucapan terima kasih dan penghargaan yang sebesar-besarnya kepada : 1.
Ibu Prof. Dr. dr. A.A. Raka Sudewi, Sp.S(K), sebagai Direktur Program Pascasarjana Universitas Udayana.
2.
Ibu Prof. Ir. Ida Ayu Dwi Giriantari, M.Eng.Sc.,Ph.D, sebagai Ketua Program
Magister Program Studi Teknik Elektro Program Pasca Sarjana Universitas Udayana. 3.
Bapak Dr. I Ketut Gede Darma Putra, S.Kom, MT., selaku dosen pembimbing I dan Pembimbing Akademis yang telah banyak membantu dalam memberikan ide, saran, motivasi, bimbingan selama perkuliahan dan pengerjaan Thesis ini.
4.
Ibu Ir. Linawati, M.Eng.Sc., Ph.D, selaku dosen pembimbing II.
5.
A.A.K. Oka Sudana, S.Kom, MT, selaku dosen pembimbing pendamping.
6.
Bapak dan Ibu Dosen di Program Studi Teknik Elektro Program Pascasarjana Universitas Udayana.
7.
Seluruh staf pengelola Program Studi Teknik Elektro Program Pascasarjana Universitas Udayana.
8.
Ibu mertua, suamiku, putraku Agung Acharya Wiwekananda, putriku Agung Ayu Apsari Wikanaswari, Gung Nini Anom, Ibu, Bapak, Bapak & Ibu Tu Indra, Mang Adi, Gung Sayang & Gung Rai, Ibu & Pak Satya, serta saudara dan seluruh keluargaku yang senantiasa memberikan semangat dan motivasi untuk menyelesaikan studi S2.
9.
Teman-teman seperjuangan di S2 Elektro, Gung Aryana, Dwi Rusjayanthi dan teman-teman lainnya yang tidak bisa penulis sebutkan yang telah banyak membantu dalam menjalani perkuliahan di S2 Elektro.
10. Teman-teman di PT. STIN Denpasar serta Bapak-bapak di PT.TELKOM DFWN Denpasar yang telah banyak memberikan bantuan, dukungan, motivasi dan waktu luang untuk mengerjakan tugas-tugas kuliah selama jam kantor.
Salah satu ciri karya manusia adalah tidak akan pernah sempurna karena manusia memiliki kelebihan serta kekurangan masing-masing. Demikian pula halnya dengan tesis ini yang telah diusahakan dibuat dengan segenap kemampuan yang ada, akan tetapi jika masih ada kekurangannya, penulis bertanggung jawab sepenuhnya. Harapan penulis juga, semoga karya ini bermanfaat bagi kita semua.
Juli, 2011 Penulis
DAFTAR ISI Halaman SAMPUL DEPAN ................................................................................... i SAMPUL DALAM ................................................................................ ii PRASYARAT GELAR ........................................................................... iii LEMBAR PENGESAHAN ..................................................................... iv PENETAPAN PANITIA PENGUJI ......................................................... v PERNYATAAN KEASLIAN PENELITIAN .......................................... vi ABSTRAK ............................................................................................. vii ABSTRACT ............................................................................................. viii KATA PENGANTAR ............................................................................. ix DAFTAR ISI ........................................................................................... xi DAFTAR TABEL ................................................................................... xiv DAFTAR GAMBAR ............................................................................... BAB I PENDAHULUAN ..................................................................... 1 1.1. Latar Belakang ....................................................................... 1 1.2. Rumusan Masalah .................................................................. 2 1.3. Tujuan Penelitian ................................................................... 3 1.4. Manfaat Penelitian ................................................................. 3 1.5. Batasan Masalah ..................................................................... 3 1.6. Keaslian Penelitian .................................................................. 4 1.7. Hipotesis ................................................................................. 5 BAB II KAJIAN PUSTAKA ................................................................ 6 2.1. State of Art Review ................................................................. 6 2.2. Ejaan Bahasa Bali ................................................................... 8 2.3. Pengenalan Pola ...................................................................... 17 2.4. Metode Pola Busur Terlokalisasi ............................................ 20 2.5. Nilai Eigen dan Vektor Eigen .................................................. 23 2.5.1. Diagonalisasi Matriks ................................................ 24 2.5.2. Transformasi Jacobi Matriks Simetris ....................... 27 2.6. Unjuk Kerja Sistem ................................................................. 31
xvi
BAB III METODE PENELITIAN ........................................................ 34 3.1. Sumber Data ........................................................................... 34 3.2. Tempat dan Waktu Penelitian ................................................. 34 3.3. Gambaran Umum Sistem Pengenalan Karakter Aksara Bali .... 35 3.3.1. Pembentukan dan Pemilihan Pola Model ........................ 35 3.3.2. Tahapan Pengenalan Karakter Aksara Bali ...................... 36 3.4. Perancangan Sistem ............................................................... 42 3.4.1. Diagram Jackson Sistem Pengenalan ............................. 43 3.4.2. Bagan Alir Proses ........................................................... 47 3.4.3. Struktur Data ................................................................... 50 3.5. Pembuatan Sistem .................................................................. 52 3.5.1. Kebutuhan Sistem ........................................................... 53 3.5.1.1. Kebutuhan Perangkat Keras ........................................ 53 3.5.1.2. Kebutuhan Perangkat Lunak ....................................... 53 3.5.2. Pemrograman ................................................................. 54 3.5.2.1. Konstanta dan Variabel Global ................................ 54 3.5.2.2. Form Utama ............................................................ 55 3.5.2.3. Form Pendaftaran .................................................... 67 3.5.2.4. Form-Form Pendukung ........................................... 71 BAB IV HASIL DAN PEMBAHASAN ............................................... 75 4.1. Pengujian ............................................................................... 75 4.1.1. Pembentukan Pola Model ................................................ 75 4.1.2. Pemilihan Pola Model ...................................................... 78 4.1.3. Penentuan Konstanta ...................................................... 84 4.1.4. Tahap Pengujian .............................................................. 85 4.1.5. Hasil Pengujian ............................................................... 87 4.1.5.1. Ujicoba Antarmuka Sistem ....................................... 87 4.1.5.2. Pendaftaran karakter Aksara Bali acuan .................. 90 4.1.5.3. Pengenalan Karakter Aksara Bali Uji ...................... 95 4.2. Analisis Hasil ......................................................................... 103 4.2.1. Analisis Hasil Pengujian ................................................. 103 4.2.1.1. Analisis Pengujian Pengenalan ................................. 104
4.2.2. Perbandingan Keberhasilan Pengenalan Aksara Bali ....... 110 4.2.3. Analisis Kompleksitas Waktu ......................................... 112 4.2.3. Analisis Kompleksitas Ruang Penyimpanan ................... 118 BAB V SIMPULAN DAN SARAN ...................................................... 121 5.1. Simpulan ................................................................................ 121 5.2. Saran ...................................................................................... 122
DAFTAR PUSTAKA .............................................................................. 123
DAFTAR TABEL Tabel 2.1. Daftar aksara suara .................................................................. 9 Tabel 2.2. Daftar aksara wianjana ............................................................ 10 Tabel 2.3. Daftar pengangge suara ........................................................... 11 Tabel 2.4. Daftar pengangge tengenan ..................................................... 13 Tabel 2.5. Daftar pengangge aksara ......................................................... 13 Tabel 2.6. Daftar angka dalam Aksara Bali .............................................. 15 Tabel 2.7. Daftar tanda baca dan aksara khusus Aksara Bali .................... 16 Tabel 4.1. Frekuensi kemunculan masing-masing pola pada 600 citra biner Aksara Bali ............................................ 80 Tabel 4.2. Frekuensi kemunculan masing-masing pola pada 600 citra Aksara Bali yang sudah diurut .......................... 81 Tabel 4.3. Frekuensi kemunculan masing-masing pola pada 600 citra Aksara Bali yang sudah diurut dengan batasan terkecil 10 kali ........................................................... 82 Tabel 4.4 Frekuensi kemunculan masing-masing pola pada 600 citra Aksara Bali yang sudah diurut berdasarkan nomor model dengan batasan terkecil 10 kali .......................... 82 Tabel 4.5. Nilai threshold pola model Aksara Bali ................................. 90 Tabel 4.6. Nilai threshold pola model tandatangan Indonesia ................. 93 Tabel 4.7. Jumlah kesalahan pada pengenalan dengan q = 1 Pola model Aksara Bali ........................................................ 97 Tabel 4.8. Jumlah kesalahan pada pengenalan dengan q = 2 Pola model Aksara Bali ........................................................ 98 Tabel 4.9. Jumlah kesalahan pada pengenalan dengan q = 3 Pola model Aksara Bali ........................................................ 99 Tabel 4.10. Jumlah kesalahan pada pengenalan dengan q = 1 Pola model tandatangan Indonesia ........................................ 100 Tabel 4.11. Jumlah kesalahan pada pengenalan dengan q = 2 Pola model tandatangan Indonesia ........................................ 101 Tabel 4.12. Jumlah kesalahan pada pengenalan dengan q = 3
Pola model tandatangan Indonesia ......................................... 102 Tabel 4.13. Banyaknya kesalahan yang terjadi pada pengujian .................. 104 Tabel 4.14. Prosentase kesalahan tipe I dan tipe II pada pengujian sistem pengenalan ........................................ 105 Tabel 4.15. Prosentase kesalahan rata-rata pada pengujian sistem pengenalan ........................................ 105 Tabel 4.16. Prosentase keberhasilan pada pengujian sistem pengenalan .. 106 Tabel 4.17. Perbandingan waktu proses pola model Aksara Bali pola model tandatangan Indonesia ....................................... 109 Tabel 4.18. Tipe data dan ruang penyimpan yang diperlukan .................. 118
DAFTAR GAMBAR Gambar 2.1. Struktur umum suatu sistem pengenalan pola ...................... 19 Gambar 2.2. Tahap pengoperasian suatu sistem pengenalan pola ........... 19 Gambar 2.3. Pola busur dalam bentuk asli
............................................ 21
Gambar 2.4. Pola model dalam metode pola Busur Terlokalisasi ........... 22 Gambar 2.5. Pembagian kelompok (asli/palsu) dan evaluasi rata-rata kesalahan nilai beda (a) ideal; (b) kenyataan ...................... 32 Gambar 3.1. Gambaran umum sistem pengenalan Aksara Bali ............... 35 Gambar 3.2. Struktur Diagram Jackson sistem pengenalan ..................... 44 Gambar 3.3. Bagan alir proses pengenalan ............................................. 48 Gambar 3.4. Bagan alir tahap pendaftaran .............................................. 49 Gambar 3.5. Tampilan Form Utama sistem pengenalan .......................... 56 Gambar 3.6. Tampilan Form Pendaftaran ............................................... 67 Gambar 3.7. Tampilan Form Daftar Aksara Bali ..................................... 71 Gambar 3.8. Tampilan Form Lingkungan Sistem .................................... 72 Gambar 3.9. Tampilan Form Pola Model ................................................. 73 Gambar 3.10. Tampilan Form Indikator Proses ....................................... 74 Gambar 3.11. Tampilan Form Informasi Sistem ...................................... 74 Gambar 4.1a. Kemungkinan pola-pola dari Pola Busur Terlokalisasi untuk Pola bujursangkar 5x5 (nomor urut 1 sampai 63) ....... 76 Gambar 4.1b. Kemungkinan pola-pola dari Pola Busur Terlokalisasi untuk Pola bujursangkar 5x5 (nomor urut 64 sampai 125) ... 77 Gambar 4.2. Pola-pola terpilih sebanyak 23 pola...................................... 83 Gambar 4.3. Pola-pola terpilih sebanyak 23 pola yang penomorannya telah disesuaikan ................................ 84 Gambar 4.4. Tampilan awal sistem pengenalan ...................................... 88 Gambar 4.5. Tampilan setting lingkungan pada saat proses pendaftaran . 88 Gambar 4.6. Contoh tampilan pada saat aksara A diuji ........................... 89 Gambar 4.7. Contoh laporan hasil pengenalan ......................................... 89 Gambar 4.8. Tampilan hasil pengenalan untuk satu huruf ....................... 96 Gambar 4.9. Grafik prosentase kesalahan tipe I ....................................... 106
Gambar 4.10. Grafik prosentase kesalahan tipe II .................................... 107 Gambar 4.11. Grafik prosentase kesalahan rata-rata ................................ 107 Gambar 4.12. Grafik prosentase keberhasilan unjuk kerja sistem ............ 108 Gambar 4.13. Grafik waktu proses pengenalan sistem .............................. 110
Hidup adalah sebuah karya seni, kita melukisnya melalui tindakan, pikiran dan kata-kata. (Gede Prama)
BAB I PENDAHULUAN
BAB I PENDAHULUAN
1.1 Latar Belakang Kemajuan teknologi komputer saat ini sangatlah pesat. Sistem komputer dikembangkan agar dapat melakukan proses pengenalan suatu pola sebagaimana kemampuan manusia. Sistem pengenalan pola yang banyak dimanfaatkan saat ini seperti pengenalan sidik jari dan telapak tangan yang berupa citra, pengenalan suara, sampai pengenalan tulisan. Salah satu dari pengenalan pola yang umum yang dikenal orang adalah pengenalan tulisan. Tulisan memiliki sifat yang unik sehingga menghasilkan sebuah permasalahan baru yang menarik untuk diangkat. Kekayaan budaya yang sangat beragam di Indonesia memiliki kelebihan tersendiri dalam hal tulisan dimana dikenal berbagai macam tulisan daerah. Tulisan di masing-masing daerah mempunyai bentuk huruf yang beragam dan memiliki keunikan tersendiri. Pengenalan tulisan yang dijadikan objek dalam penelitian ini adalah Tulisan Daerah Bali atau sering disebut dengan Aksara Bali. Tulisan Bali memiliki keunikan dari bentuknya yang hampir sama satu dengan yang lainnya dan beberapa tulisan hanya dibedakan oleh satu guratan garis (Agung BW dkk, 2009). Tulisan Bali juga memiliki sifat yang berbeda dengan tulisan Latin, Jepang, Korea maupun Cina. Hal ini menjadi suatu permasalahan tersendiri dalam mempelajari/mengenali Tulisan Bali. Berdasarkan permasalahan tersebut maka akan dibangun suatu aplikasi yang bertujuan untuk pengenalan Aksara Bali sehingga mempermudah orang dalam membaca Aksara Bali. Penelitian ini diharapkan dapat menarik minat generasi muda untuk mempelajari
Aksara Bali yang merupakan salah satu dasar Budaya Bali yang muara akhirnya bisa memberikan kontribusi dalam pelestarian budaya bangsa melalui pelestarian budaya daerah. Penelitian untuk pengenalan Aksara Bali ini sudah pernah ada yang melakukan tetapi dengan menggunakan Metode LVQ dan MDF yang dilakukan oleh Tjokorda Agung BW (Agung BW dkk, 2009) selain itu juga ada yang menggunakan Metode Moment Invariant dan LVQ yang dilakukan oleh I Komang Gede Suamba Dharmayasa (Dharmayasa, 2009). Sedangkan penelitian yang dibuat dengan menggunakan pola khusus yang dibentuk dari Pola Busur Terlokalisasi untuk melakukan ekstraksi ciri citra Aksara Bali belum pernah ada yang melakukan dimana metode ini sudah terbukti cukup berhasil dalam hal verifikasi citra tandatangan dan pengenalan tulisan tangan Latin, Jepang, Korea maupun Cina. Berdasarkan hal tersebut maka pada penelitian ini dipergunakan pola khusus untuk pengenalan Aksara Bali.
1.2 Rumusan Masalah Berdasarkan latar belakang diatas maka dirumuskan permasalahan sebagai berikut: 1. Bagaimana pembentukan pola model khusus untuk melakukan ekstraksi ciri pada pengenalan karakter Aksara Bali. 2. Bagaimana unjuk kerja sistem dengan menggunakan metode pola khusus untuk Pengenalan Karakter Bali.
1.3 Tujuan Penelitian Tujuan dari penelitian ini adalah : 1. Untuk mendapatkan pola model khusus yang bisa digunakan untuk melakukan ekstraksi ciri pada Pengenalan Aksara Bali. 2. Untuk mengetahui efektifitas dan tingkat keakuratan metode pola model khusus tersebut dalam hal Pengenalan Karakter Aksara Bali dengan cara menghitung persentase keberhasilan, kesalahan rata-rata sistem serta kompleksitas waktu.
1.4 Manfaat Penelitian Hasil penelitian diharapkan mampu memberikan sumbangan dan dukungan terhadap usaha untuk melestarikan Budaya Bali dengan cara membantu generasi muda untuk mengenal karakter Bali, disamping itu juga memberikan metode alternatif untuk pengenalan citra Aksara Bali terkomputerisasi.
1.5 Batasan Masalah Karena sangat kompleksnya permasalahan yang terkait dengan topik ini, maka ditentukan batasan permasalahan sebagai berikut :
Metode yang digunakan untuk membentuk pola model khusus ekstraksi ciri karakter Bali, adalah dikembangkan dari Metode Pola Busur Terlokalisasi.
Pola Model pembanding yang digunakan adalah Pola Model dari Pola Busur Terlokalisasi untuk pengenalan tandatangan yang dikembangkan pada penelitian A.A. K. Oka Sudana (Sudana, 2007).
Sampel citra Aksara Bali yang digunakan untuk pembentukan pola model dan citra uji berupa aksara bali cetak yang digunakan pada penelitian I Komang Gede Suamba Dharmayasa (Dharmayasa, 2009). Sampel Aksara Bali yang digunakan diperoleh dari hasil scan buku ajar Bahasa Bali yang diambil per blok karakter sebanyak 31 karakter.
Tahapan prapemrosesan jika diperlukan dikerjakan dengan perangkat lunak pengolahan citra yang telah ada misalnya Paint Shop Pro atau perangkat lunak sejenis, untuk mengolah citra bitmap yang didapat dari proses pemayaran sehingga menghasilkan file citra yang siap diproses pada tahap ekstraksi ciri oleh sistem ini.
1.6 Keaslian Penelitian Penelitian dalam bidang pengenalan tulisan tangan (handwriting recognition) telah berkembang dalam kurun waktu yang cukup lama. Penelitian tentang tulisan tangan dengan masukan secara statis (off-line) banyak dilakukan oleh Isao Yoshimura, Mitsu Yoshimura serta peneliti-peneliti lainnya, yang mana lebih banyak difokuskan pada tulisan Jepang. Jurnal “A Zip Code Recognition System using the Localized Arc Pattern Method” oleh Mitsu Yoshimura, Tatsuro Shimizu dan Isao Yoshimura Tahun 1993. Jurnal “Arc Pattern Method for Writer Recognition as an Aid for Person Identification”, Tahun 1990 dan “A Zip Code Recognition System using the Localized Arc Pattern Method.”, Tahun 1993, oleh Isao Yoshimura dan Mitsu Yoshimura, menuliskan hasil penelitian tentang penggunaan Metode Pola Busur Terlokalisasi pada identifikasi seseorang pada jurnal pertama, dan pengenalan angka pada jurnal kedua. Dari penelitian-
penelitian yang dilakukan oleh Isao Yoshimura dan Mitsu Yoshimura, sebagian besar menggunakan serta mengembangkan Metode Pola Busur baik dalam bentuk asli, transformasi maupun melakukan lokalisasi terhadap Pola Busur tersebut. Berdasarkan penjelasan di atas dapat dilihat bahwa penelitian terhadap tulisan tangan dan verifikasi tandatangan sudah banyak dilakukan akan tetapi dari penelitian-penelitian tersebut, belum ada yang menggunakan Metode Pola Busur Terlokalisasi terutama pengembangannya yang disesuaikan dengan pola model khusus Tulisan Bali yang memiliki sifat berbeda dengan Tulisan Latin, Korea ataupun Cina, sedangkan seperti laporan beberapa hasil penelitian tersebut disebutkan bahwa untuk Tulisan Tangan Jepang, Korea dan Cina hasil yang diperoleh cukup baik.
1.7 Hipotesis Metode pola khusus yang dikembangkan untuk pola model Aksara Bali adalah dengan menggunakan metode Pola Busur Terlokalisasi. Pembentukan pola modelnya diperoleh dari semua kombinasi sampel Aksara Bali yang ada. Pola model tersebut digunakan untuk mengekstrasi ciri dari Aksara Bali sehingga unjuk kerja sistem yang dihasilkan akan lebih baik dibandingkan dengan menggunakan pola model umum yang dikembangkan untuk tandatangan.
Forgiveness is something like an end result, or a product, of patience or tolerance. When one is truly patient and tolerant, then forgiveness comes naturally . (Anand Khrisna)
BAB II KAJIan pustaka
BAB II KAJIAN PUSTAKA
2.1 State of Art Review Penelitian tentang pengenalan Karakter Aksara Bali sudah beberapakali dilakukan tetapi dari penelitian-penelitian tersebut, belum ada yang menggunakan Metode Pola Busur Terlokalisasi untuk pengenalan karakter, sedangkan seperti laporan beberapa hasil penelitian metode ini berhasil dengan baik digunakan untuk melakukan verifikasi tandatangan dan pengenalan tulisan tangan. Beberapa referensi yang bisa dijadikan acuan untuk menjelaskan tentang penelitan tersebut adalah sebagai berikut: 1. Penelitian A.A.K.Oka Sudana yang menggunakan Metode Pola Busur Terlokalisasi untuk memverifikasi tanda tangan (Sudana, 2007). Metode ini dikembangkan dari Metode Pola Busur yang merepresentasikan ciri tandatangan ke dalam bentuk frekuensi kemunculan pola model. Sistem ini mempunyai prosentase kesalahan minimum pada kombinasi konstanta pengali nilai ambang Cd bernilai 2,5 dan konstanta pemotongan nilai eigen q bernilai 6, yaitu prosentase kesalahan penolakan sebesar 7,37 % dan kesalahan penerimaan 12,02 %, sehingga kesalahan rata-rata sistem adalah 9,69 % dan akurasi yang dihasilkan sebesar 90,31%.
2. Penelitian dari A.A.K.Oka Sudana yang menggunakan Metode Pola Busur Terlokalisasi untuk pengenalan Huruf Latin (Sudana, 2006). Sistem ini mempunyai prosentase kesalahan minimum pada kombinasi konstanta pengali nilai ambang Cd bernilai 3 dan konstanta pemotongan nilai eigen q bernilai 2, yaitu prosentase kesalahan penolakan sebesar 71,3 % dan kesalahan penerimaan 4,3 %, sehingga kesalahan rata-rata sistem adalah 37,8 % dan keberhasilan pengenalan sebesar 62,2%. Pada pengenalan Huruf Latin ini unjuk kerja yang diperoleh kurang baik karena ciri-ciri yang diperoleh dari Huruf Latin sangat sedikit serta kecilnya konstanta pemotongan nilai eigen q yang menyebabkan hasil pengenalan tidak stabil. 3. Shin-ichi Kikuci, Takehiro Furuta, Takako Akakura yang menggunakan Metode Pola Busur Terlokalisasi untuk mengidentifikasi pelatihan periodik pada sistem e-test (Shin-ichi dkk, 2008). Penelitian ini menghasilkan rata-rata keberhasilan pengidentifikasian Huruf Kanji sebesar 86,64% dengan parameter konstanta pemotongan nilai eigen q sebesar 15. Hasil yang diperoleh dengan Metode Pola Busur Terlokalisasi ini terbukti efektif untuk mengidentifikasi huruf yang ditulis dengan pena tablet. 4. Yoshimura, M. Shimizu,T. Yoshimura,I. yang menggunakan Metode Pola Busur Terlokalisasi untuk mengenali kode zip (Yoshimura dkk, 1993). Penelitian ini memperoleh prosentase kesalahan penolakan sebesar 8,7 % dan kesalahan penerimaan 0,7 %, sehingga kesalahan rata-
rata sistem adalah 9,4 % dan hasil untuk mengenali kode sebesar 90,6% dengan indeks presisi sebesar 0,157. 5. Penelitian I Komang Gede Suamba Dharmayasa yang menggunakan metode moment invariant dan LVQ untuk pengenalan karakter Aksara Bali (Dharmayasa, 2009). Akurasi sistem terbaik pada pengujian adalah 99.41% (T=0.23; FRR=0.24%; FAR=0.35%), pada pengujian metode LVQ dengan karakter cetak Bali simbar, setelah sistem mengalami pelatihan jaringan dengan epoch 50 dan
learning rate 0.01, dan
pengurangan learning rate = 0.1 x learning rate. 6. Penelitian dari Tjokorda Agung BW, I Gede Rudy Hermanto, Retno Novi D ang menggunakan metode MDF dan LVQ untuk pengenalan karakter Aksara Bali (Agung BW dkk, 2009). Penelitian ini menghasilkan akurasi tertinggi sebesar 88,89%. Tingkat akurasi pada sistem pengenalan ini dipengaruhi oleh ukuran normalisasi, jumlah transisi, dan pembagian wilayah. Konfigurasi parameter MDF yang menghasilkan akurasi terbaik adalah: ukuran normalisasi 100x50 pixel, jumlah transisi 4, dan tidak dilakukan pembagian gambar menjadi beberapa bagian.
2.2 Ejaan Bahasa Bali Menurut keputusan Pasamuhan Agung tersebut Ejaan Bahasa Bali dengan Huruf Latin itu disesuaikan dengan ejaan Bahasa Indonesia. maksudnya ialah: -
Ejaan itu dibuat sesederhana mungkin.
-
Ejaan itu harus fonetik, artinya tepat atau mendekati ucapan yang sebenarnya.
Berdasarkan hal- hal tersebut di atas, maka ditetapkan huruf- huruf yang dipakai untuk menuliskan Bahasa Bali dengan huruf Latin sebagai tersebut di bawah ini:
Aksara suara (vokal): a, e, i, u, e. o (enam buah, telah diubah pepet dan taling sama).
Aksara wianjana (konsonan): h, n, c, r, k, g, t, m, ng, b, s, w, l, p, d, j, y, ny, (18 buah).
Kalau huruf-huruf Bali yang ada sekarang dituliskan dengan tulisan Bali Latin adalah sebagai berikut: 1. Aksara Suara Tabel 2.1 Daftar Aksara Suara Nomor
Aksara Bali
Bali Latin
a
ê
i
u
e
o
2. Aksara Wianjana Tabel 2.2 Daftar Aksara Wianjana Nomer Aksara Bali
Bali Latin
Nomer Aksara Bali Bali Latin
h/a
l
n
m
c
g
r
b
k
ng
d
p
t
j
s
y
w
ny
3. Pengangge Pangangge adalah lambang yang tidak dapat berdiri sendiri, ditulis dengan melekati suatu aksara wianjana maupun aksara suara dan mempengaruhi cara membaca dan menulis aksara Bali. Ada berbagai jenis pangangge, antara lain pangangge suara, pangangge tengenan dan pangangge aksara.
a. Pengangge Suara Bila
suatu aksara
wianjana (konsonan)
dibubuhi pangangge
aksara
suara (vokal), maka cara membaca aksara tersebut akan berubah. Contoh:
huruf Na dibubuhi ulu dibaca Ni.
Huruf Ka dibubuhi suku dibaca Ku.
Huruf Ca dibubuhi taling dibaca Cé.
Huruf Ha ada
pengecualian,
kadangkala
bunyi
/h/
diucapkan,
kadangkala tidak. Hal itu tergantung pada kata dan kalimat yang ditulis. Tabel 2.3 Daftar pengangge suara Warga aksara
Kanthya (tenggorokan)
Talawya (langit-langit lembut)
Suara hresua (vokal pendek) Suara dirgha (vokal panjang) Suara hresua (vokal pendek)
Aksara Bali
Huruf Latin
Alfabet Fonetis International
Letak penulisan
Nama
e; ě
[ə]
di atas huruf
pepet
ā
[aː]
di belakang huruf
tedung
i
[i]
di atas huruf
ulu
Suara dirgha (vokal panjang)
Warga aksara
Murdhanya (langit-langit keras)
Dantya (gigi)
Osthya (bibir)
Osthya (bibir)
Kanthyatalawya (tenggorokan & langit-langit lembut) Kanthyaosthya (tenggorokan & bibir)
Suara hresua (vokal pendek) Suara dirgha (vokal panjang) Suara hresua (vokal pendek) Suara dirgha (vokal panjang) Suara hresua (vokal pendek) Suara dirgha (vokal panjang) Suara hresua (vokal pendek) Suara dirgha (vokal panjang) Suara hresua (vokal pendek)
Aksara Bali
ī
[iː]
di atas huruf
ulu sari
Huruf Latin
Alfabet Fonetis International
Letak penulisan
Nama
re; ṛ
[rə]
di bawah huruf
Guwung macelek
[rəː]
kombinasi di belakang dan bawah huruf
Guwung macelek matedung
ṝ
le; ḷ
[lə]
kombinasi di atas dan bawah huruf kombinasi di atas, bawah, dan belakang huruf
Gantungan La mapepet Gantung La mepepet lan matedung
ḹ
[ləː]
u
[u]
di bawah huruf
suku
ū
[uː]
di bawah huruf
Suku ilut
e; é
[e]; [ɛ]
di depan huruf
taling
e; ai
[e]; [aːi]
di depan huruf
Taling detya
o
[o]; [ɔ]
mengapit huruf
Taling tedung
Suara dirgha (vokal panjang)
o; au
mengapit huruf
[o]; [aːu]
Taling detya matedung
b. Pengangge Tengenan Pangangge tengenan (kecuali adeg-adeg) merupakan aksara wianjana yang bunyi vokal /a/-nya tidak ada. Pangangge tengenan terdiri dari: bisah, cecek, surang dan adeg-adeg. Tabel 2.4 Daftar pengangge tengenan
Simbol
Alfabet Fonetis International
Letak penulisan
Nama
[h]
di belakang huruf
bisah
[r]
di atas huruf
Surang
[ŋ]
di atas huruf
Cecek
-
di belakang huruf
Adegadeg
c. Pengangge Aksara Pangangge aksara (kecuali la)
aksara letaknya
di
bawah aksara
merupakan gantungan
aksara terdiri dari: Tabel 2.5
aksara
wianjana. Pangangge ardhasuara. Pangangge
Daftar pengangge aksara
Simbol
Simbol
Alfabet Fonetis International
Nama
[r]
Guwung/cakra
Alfabet Fonetis International
Nama
[w]
Suku kembung
[j]
nania
4. Gantungan Adeg-adeg tidak boleh dipasang di tengah kalimat, maka agar aksara wianjana bisa "mati" (tanpa vokal) di tengah kalimat dipakailah gantungan. Gantungan membuat aksara wianjana yang dilekatinya tidak bisa lagi diucapkan dengan huruf "a", misalnya aksara Na dibaca /n/, huruf Ka dibaca /k/, dan sebagainya. Dengan demikian, tidak ada vokal /a/ pada aksara wianjana seperti semestinya.
Setiap aksara wianjana memiliki gantungan tersendiri.
Untuk
"mematikan" suatu aksara dengan menggunakan gantungan, aksara yang hendak dimatikan harus dilekatkan dengan gantungan. Misalnya jika menulis kata "Nda", huruf Na harus dimatikan. Maka, huruf Na dilekatkan dengan gantungan Da. Karena huruf Na dilekati oleh gantungan Da, maka Na diucapkan /n/. Gantungan dan pangangge diperbolehkan melekat pada satu huruf yang sama, namun bila dua gantungan melekat di bawah huruf yang sama, tidak diperbolehkan. Kondisi dimana ada dua gantungan yang melekat di bawah suatu
huruf yang sama disebut tumpuk telu (tiga tumpukan). Untuk menghindari hal tersebut maka penggunaan adeg-adeg ditengah kalimat dibolehkan.
5. Angka Tabel 2.6 Daftar angka dalam Aksara Bali Aksara Bali
Aksara Latin
Nama (dalam bahasa bali)
0
Bindu/Windu
1
Siki/Besik
2
Kalih/Dua
3
Tiga/Telu
4
Papat
5
Lima
6
Nem
7
Pitu
8
Kutus
9
Sanga/Sia
Menulis angka dengan menggunakan angka Bali sangat sederhana, sama seperti sistem dalam aksara Jawa dan Arab. Bila hendak menulis angka 10, cukup dengan menulis angka 1 dan 0 menurut angka Bali. Demikian pula jika menulis angka 25, cukup menulis angka 2 dan 5. Bila angka ditulis di tengah kalimat, untuk membedakan angka dengan huruf maka diwajibkan untuk menggunakan tanda carik, di awal dan di akhir angka yang ditulis. 6. Tanda Baca dan Aksara Khusus Ada beberapa aksara khusus dalam aksara Bali. Beberapa di antaranya merupakan tanda baca, dan yang lainnya merupakan simbol istimewa karena dianggap keramat. Beberapa di antaranya diuraikan sebagai berikut: Tabel 2.7 Daftar tanda baca dan aksara khusus Aksara Bali Simbol
Nama
Keterangan
Carik atau Carik Siki.
Ditulis pada akhir kata di tengah kalimat. Fungsinya sama dengan koma dalam huruf Latin. Dipakai juga untuk mengapit aksara anceng.
Carik Kalih atau Carik Pareren.
Ditulis pada akhir kalimat. Fungsinya sama dengan titik dalam huruf Latin.
Carik Pamungkah.
Dipakai pada akhir kata. Fungsinya sama dengan tanda titik dua pada huruf Latin.
Pasalinan.
Dipakai pada akhir penulisan karangan, surat dan sebagainya. Pada geguritan bermakna sebagai tanda pergantian tembang.
Panten atau Panti.
Dipakai pada permulaan suatu karangan, surat dan sebagainya.
Simbol
Nama
Keterangan
Pamada.
Dipakai pada awal penulisan. Tujuannya sama dengan pengucapan awighnamastu, yaitu berharap supaya apa yang dikerjakan dapat berhasil tanpa rintangan.
Ongkara.
Simbol suci umat Hindu. Simbol ini dibaca "Ong" atau "Om".
2.3 Pengenalan Pola Sebuah kamus Inggris mendefinisikan sebuah ‘pola’ (pattern) sebagai suatu contoh atau model. Sebuah pola juga merupakan tiruan dari suatu model, tetapi di saat menjelaskan berbagai tipe obyek dalam dunia fisik dan abstrak definisi yang muncul menyatakan bahwa sebuah pola adalah setiap antarhubungan data baik analog maupun digital, kejadian dan/atau konsep yang dapat diperbedakan (Sankar K. Pal, dkk, 1986). Bentuk wajah, meja, urutan nada sebait musik, tema sebuah sajak atau lagu, lintasan yang dibuat partikel pelat fotografik, kesemuanya merupakan tipe yang berlainan dari pola-pola. Jadi pengenalan wajah, sebait
musik, lukisan, suara, tulisan tangan, sasaran militer, diagnosis penyakit dari gejalanya, semuanya merupakan masalah pengenalan pola. Manusia menjalankan tugas pengenalan di setiap saat kehidupannya, misalnya ketika mengenali suara seseorang lewat telepon, rasa suatu makanan, membaca koran dan lain sebagainya. Secara garis besarnya pengenalan pola dibedakan menjadi dua yaitu pengenalan pola langsung (konkret) dan tidak langsung (konseptual). Pengenalan pola langsung mencakup pengenalan visual dan aural spasial (karakter, gambar, sidik jari, tandatangan) dan temporal (muka gelombang, ucapan, ECG) di mana seseorang membutuhkan bantuan alat penginderaan (sensor). Pengenalan akan hal yang abstrak seperti konsep dan gagasan di satu pihak dapat dilakukan tanpa bantuan sensor. Kenyataan tersebut masing-masing diistilahkan sebagi pengenalan sensoris dan pengenalan tak langsung. Selain pengelompokan di atas, pengenalan pola juga dapat dibagi menjadi dua bagian yang didasarkan pada subyek pelaku pengenalan pola tersebut. Bagian pertama adalah yang berhubungan dengan studi mekanisme pengenalan pola-pola oleh manusia atau jasad hidup lainnya. Bagian ini dihubungkan dengan disiplin ilmu misalnya fisiologi, psikologi, biologi dan lain sebagainya. Bagian kedua adalah mengenai pengembangan teori dan teknik untuk merancang sebuah alat yang dapat melakukan tugas pengenalan secara otomatis. Bidang ini berhubungan dengan teknik, komputer serta ilmu informatika. Khusus untuk pengenalan pola komputer dapat dipandang sebagai tugas ganda yang berisikan proses belajar (learning) perilaku-perilaku invarians dan lazim dari sekumpulan sampel yang mencirikan sebuah kelas, dan memutuskan
sebuah sampel baru sebagai anggota kelas yang mungkin dengan catatan bahwa perilakunya lazim terhadap kumpulan sampel tersebut. Struktur umum sebuah sistem pengenalan pola terlihat pada Gambar 2.1 yang terdiri dari sensor (contohnya sensor citra atau kamera), mekanisme ekstraksi ciri, dan algoritma deskripsi atau klasifikasi. Sedangkan langkah pengoperasian yang perlu dalam mengembangkan serta melaksanakan aturan keputusan dalam sistem pengenalan pola praktis terlihat pada Gambar 2.2. Algoritma tentang kemungkinan umpan balik atau interaksi
(Statistik) Algoritma klasifikasi Data pola yang diobservasi
Sensor
Prapemrosesan dan
Klasifikasi
Algoritma ekstraksi ciri (Sintaktik)
Peningkatan
Algoritma deskripsi
Deskripsi
Gambar 2.1 Struktur umum suatu sistem pengenalan pola
SISTEM FISIS
RUANG PENGUKURAN
RUANG CIRI
RUANG KEPUTUSAN
Gambar 2.2 Tahap pengoperasian suatu sistem pengenalan pola
Sebuah sistem fisis untuk tujuan pengenalan pola ditandai oleh beberapa perwujudan fisisnya, yang kembali dinyatakan secara numerik oleh beberapa kumpulan pengukuran yang membentuk ‘ruang pengukuran’. Pemilihan dan ekstraksi ciri dalam bidang pengenalan pola adalah suatu proses pemilihan sebuah
pemetaan bentuk X = f(Y) yang menyebabkan sebuah sampel Y(y1, y2, …, yQ) dalam
ruang y
berdimensi-Q
ditransformasikan
ke dalam
suatu
titik
X(x1, x2, …, xN) dalam sebuah ruang ciri x berdimensi-N. Ruang pola yang kini ditransformasikan menjadi ruang ciri dapat memiliki beberapa ciri yaitu : berdimensi terhingga, biasanya berdimensi relatif rendah (N < Q), dan mengandung cukup informasi secara memuaskan untuk memenuhi tugas klasifikasi. Fungsi f(Y) yang demikian itu akan meminimumkan jarak intraset dan memaksimumkan jarak interset dalam ruang ciri x. Proses penurunan sebuah aturan keputusan berdasarkan sekumpulan sampel hingga yang telah diberi label untuk mengklasifikasikan suatu titik dalam ruang ciri yang bersesuian terhadap sampel yang tidak diberi label serta pelaksanaannya, disebut ‘klasifikasi pola’. Karena itu, pengenalan pola oleh komputer dijelaskan sebagai suatu transformasi dari ruang pengukuran (M), menjadi ruang ciri (F) dan akhirnya ke ruang keputusan (D). M FD
………………………………(2.1)
Hal tersebut menyebabkan di dalam pendekatan teoritik keputusan, sekali sebuah pola ditransformasikan melalui pemilihan dan ekstraksi ciri, menjadi sebuah vektor X dalam ruang ciri x, karakteristiknya hanya dapat dinyatakan oleh sekumpulan nilai-nilai numerik dalam suatu vektor.
2.4
Metode Pola Busur Terlokalisasi Metode Pola Busur Terlokalisasi ini dikembangkan dari Metode Pola
Busur (Arc Pattern Method). Prinsip metode ini adalah sebagai berikut : dua buah titik akhir (end point) masing-masing A dan B dihubungkan oleh busur-busur
(seperti yang tampak pada Gambar 2.3). Pada gambar tersebut juga dapat dilihat lima buah titik yang berjarak sama ditempatkan di atas busur yang disebut dengan titik karakteristik (characterizing points). Titik-titik inilah yang nantinya akan menyusun pola dari model yang dipergunakan sebagai karakteristik Aksara Bali. Titik karakteristik
Titik akhir
B l=3 l=2
B l=0 l= -1 l= -2 l= -3
l=1
Jarak End point Titik akhir
A
A
Jari-jari OA =2AB / l
O
Gambar 2.3 Pola busur dalam bentuk asli
Berdasarkan Metode Pola Busur tersebut disusun model yang terdiri atas satu atau dua buah titik akhir (end point) dan beberapa titik diantara dua titik akhir. Kombinasi itu akan menghasilkan model yang banyak sekali, tetapi untuk sistem aktual, tidak semua pola model (model pattern) yang dipergunakan karena akan sangat memperlambat kerja sistem. Masalah ini ditanggulangi dengan mengurangi sebagian pola model yang ada. Satu ide untuk merealisasikan pengurangan pola model ini dengan melakukan pembatasan pandangan (lokalisasi permasalahan) pada pola model yang didefinisikan di dalam sebuah bujur sangkar kecil berukuran 5 x 5 kotak. Hanya kemungkinan-kemungkinan model yang dibentuk oleh titik karakteristik dalam bujur sangkar inilah yang dipergunakan sebagai pedoman untuk membentuk pola model. Metode Pola Busur dengan pembatasan inilah yang disebut dengan Pola Busur Terlokalisasi. Dari
pembatasan tersebut Isao Yoshimura dan Mitsu Yoshimura mendapatkan 77 buah pola model seperti yang terlihat pada Gambar 2.4 Ada beberapa model yang mirip atau sejenis dikelompokkan menjadi satu model, contohnya seperti Nomor 5 dan 6 yang identik dikelompokkan menjadi satu jenis pola model yaitu Model 5. Berdasarkan pengelompokan yang dilakukan, akhirnya didapatkan sebanyak 67 pola model. Pola model yang terlihat pada Gambar 2.4 tersebut yang akan digunakan untuk mengekstraksi ciri dari citra biner Aksara Bali. Pada gambar tersebut angka di sebelah kiri menunjukkan nomor pola, sedangkan angka yang di sebelah kanan menunjukkan nomor model.
No.1 Model 1
No.2 Model 2
No.3 Model 3
No.4 Model 4
No.5 Model 5
No.6 Model 5
No.7 Model 6
No.8 Model 7
No.10 Model 8
No.11 Model 9
No.17 Model 15
No.25 Model 21
No.26 Model 22 No.27 Model 23
No.41 Model 35
No.38 Model 33 No.39 Model 34
No.40 Model 35
No.32 Model 28
No.36 Model 32 No.37 Model 33
No.33 Model 29 No.34 Model 30 No.35 Model 31
No.30 Model 26 No.31 Model 27
No.24 Model 21
No.28 Model 24 No.29 Model 25
No.22 Model 19 No.23 Model 20
No.20 Model 18 No.21 Model 19
No.18 Model 16 No.19 Model 17
No.12 Model 10 No.13 Model 11 No.14 Model 12 No.15 Model 13 No.16 Model 14
No.9 Model 7
No.42 Model 36 No.43 Model 37
No.44 Model 38 No.45 Model 39
No.46 Model 40 No.47 Model 41
No.48 Model 42
No.49 Model 43
No.50 Model 44 No.51 Model 45
No.57 Model 50
No.58 Model 50 No.59 Model 51
No.65 Model 57
No.52 Model 45 No.53 Model 46
No.60 Model 52 No.61 Model 53
No.56 Model 49
No.62 Model 54 No.63 Model 55
No.54 Model 47 No.55 Model 48
No.64 Model 56
No.66 Model 58 No.67 Model 59
No.68 Model 60 No.69 Model 61
No.70 Model 62 No.71 Model 62 No.72 Model 63
No.73 Model 64
No.74 Model 64 No.75 Model 65 No.76 Model 66
No.77 Model 67
Gambar 2.4 Pola model dalam Metode Pola Busur Terlokalisasi
2.5
Nilai Eigen dan Vektor Eigen Kata “vektor eigen” berasal dari ramuan bahasa Jerman dan Inggris.
Dalam Bahasa Jerman “eigen” dapat diinterpretasikan “karakteristik”. Oleh karena itu nilai eigen dapat juga disebut dengan nilai karakteristik dari suatu
matriks, sedangkan vektor eigen adalah vektor karakteristik dari matriks yang selalu bersesuaian dengan nilai eigen (Howard, 1995, hal.277). Jika A adalah matriks n x n, maka vektor taknol x di dalam Rn dinamakan vektor eigen dari A jika A . x adalah kelipatan skalar dari x, yaitu : A . x = x
…………………………….(2.2)
untuk suatu skalar . Skalar dinamakan nilai eigen dari A dan x dikatakan vektor eigen yang bersesuaian dengan . Untuk mencari nilai eigen Matriks A yang berukuran n x n maka kita menuliskan kembali A . x = x sebagai : A . x = I . x
…………………………….(2.3)
(IA) . x = 0
…………………………….(2.4)
Atau secara ekivalen
Supaya menjadi nilai eigen, maka harus ada pemecahan tak nol dari persamaan ini, yang determinannya adalah : det() = 0
…………………………….(2.5)
Persamaan ini dinamakan persamaan karakteristik A. Skalar yang memenuhi persamaan tersebut adalah nilai eigen dari A. Suatu polinom dalam berderajat n dalam persamaan det() = 0 dinamakan polinom karakteristik dari A. Jadi polinom karakteristik Matriks A (n x n) adalah : n + c1 n-1 + c2 n-2 + … + cn
…………………………….(2.6)
Mencari akar persamaan karakteristik untuk mendapatkan nilai eigen biasanya sangat sulit dikomputasi, karena itu dikembangkan berbagai cara
pemecahannya yang lebih mudah dikomputasi. Cara yang dikembangkan ini disesuaikan dengan jenis matriks, tipe nilai eigen dan vektor eigen yang dibutuhkan (real atau kompleks), serta apakah semua nilai eigen atau vektor eigen yang harus dihitung. Penelitian ini pada proses pengenalannya menggunakan perhitungan yang memanfaatkan semua vektor eigen dan nilai eigen bertipe real yang ada, sedangkan matriks yang diolah berbentuk simetris, maka metode komputasi yang paling sesuai digunakan adalah dengan Transformasi Jacobi (Jacobi Transformations). Sebelumnya akan dipaparkan terlebih dahulu mengenai diagonalisasi matriks yang mendasari Transformasi Jacobi tersebut.
2.5.1 Diagonalisasi Matriks Matriks bujur sangkar A dikatakan dapat didiagonalisasi secara ortogonal jika terdapat Matriks P yang ortogonal sehingga P-1 . A . P ( = Pt . A . P) diagonal, dalam hal ini Matriks P dikatakan mendiagonalisasi A secara ortogonal. Persamaan (2.4) mendapatkan vektor eigen yang berbentuk vektor kolom yang dikalikan dari sebelah kanan dengan Matriks A, biasanya secara eksplisit disebut sebagai vektor eigen kanan. Sedangkan untuk mendapatkan vektor eigen berbentuk vektor baris, maka dikalikan dari sebelah kiri dengan Matriks A, yaitu : x . A = x
…………………………….(2.7)
Vektor baris x disebut dengan vektor eigen kiri. Dengan memperoleh transpos dari Persamaan (2.7), dapat dilihat bahwa setiap vektor eigen kiri adalah transpos dari vektor eigen kanan Matriks A. Jika dilakukan pembandingan terhadap Persamaan (2.5), menggunakan definisi determinan matriks sama dengan
determinan dari transposnya, maka dapat dilihat bahwa nilai eigen kiri dan kanan Matriks A adalah identik satu sama lainnya. Misalkan Matriks XR terbentuk oleh vektor kolom yaitu vektor-vektor eigen kanan, dan Matriks XL terbentuk oleh vektor baris yaitu vektor-vektor eigen kiri, maka Persamaan (2.2) dan (2.7) dapat ditulis dengan bentuk sebagai berikut : A . XR = XR . diag(N ……………………….. XL . A = diag(N XL
………………………
dengan ketentuan bahwa diag(Nadalah matriks diagonal yang diagonal utamanya berturut-turut mempunyai nilai , , N. Dengan mengalikan Persamaan (2.8) di sebelah kiri dengan XL, Persamaan (2.9) dengan XR dari sebelah kanan, dan selanjutnya mengurangkan keduanya, didapatkan : (XL . XR) . diag(N diag(N (XL . XR) …….. (2.10) Dengan mengalikan Persamaan (2.8) dengan XL, dan menggunakan kenyataan bahwa XL dan XR Matriks invers, maka didapat : XR-1 . A . XR = diag(N
………………………
Berikut merupakan transformasi similariti (similarity transform) dari Matriks A, untuk mentransformasikan Matriks Z : A Z-1 . A . Z
…………………….. (2.12)
Transformasi similariti seperti di atas memainkan peranan yang sangat penting dalam komputasi nilai eigen, sebab nilai eigen sebuah matriks tidak akan berubah dengan dilakukannya transformasi ini. Secara mudahnya dapat dilihat dengan bentuk sebagai berikut :
det |Z-1 . A . Z - I|
= det |Z-1 . (A - I) . Z| = det|Z| det|A - I| det| Z-1| = det | A - I |
………………………(2.13)
Persamaan (2.12) memperlihatkan bahwa matriks yang memiliki vektor eigen lengkap dapat didiagonalisasi dengan transformasi similariti, kolom
matriks
transformasi dapat menyebabkan diagonalisasi dari vektor eigen kanan, sedangkan baris dari invers matriks ini adalah vektor eigen kiri. Untuk matriks yang elemen-elemennya adalah bilangan real, matriks simetris, vektor eigennya juga real dan ortonormal, maka matriks transformasi dari matriks tersebut adalah matriks ortogonal. Transformasi similariti dari transformasi ortogonalnya ditunjukkan dengan bentuk sebagai berikut : A Zt . A . Z
………………………(2.14)
Strategi terbaik yang sering dipergunakan untuk mendapatkan sistem eigen adalah mendekatkan Matriks A ke bentuk matriks diagonal dengan melakukan operasi transformasi similariti secara berturut-turut, seperti yang terlihat pada Persamaan (2.15) berikut : A P1-1 . A . P1
P2-1 . P1-1 . A . P1 . P2
P3-1 . P2-1 . P1-1 . A . P1 . P2 . P3 dst. ……………... (2.15) Jika bentuk diagonal semuanya didapat, maka vektor eigennya merupakan kolom dari akumulasi transformasi berikut ini : XR = P1 . P2 . P3 . … 2.5.2 Transformasi Jacobi Matriks Simetris
………………………(2.16)
Metode Jacobi (William H. Press, 1992, hal.463) terdiri dari urutan transformasi similariti ortogonal seperti yang terlihat pada Persamaan (2.15). Setiap transformasi (sebuah rotasi Jacobi) adalah sebuah operasi yang didesain untuk mengenolkan elemen-elemen di luar diagonal utama matriks. Transformasi yang dilakukan tidak langsung menghasilkan nol, akan tetapi jika transformasi berturut-turut dilakukan maka akan menghasilkan nilai di luar diagonal utama yang semakin kecil atau semakin mendekati nol. Transformasi dihentikan sampai batas toleransi yang ditetapkan. Batasan toleransi ditentukan dengan nilai yang sangat kecil, batasan toleransi ini akan berpengaruh pada pendekatan kebenaran nilai eigen yang dihasilkan. Akumulasi hasil dari transformasi ini mendapatkan matriks vektor eigen (Persamaan 2.16). Elemen dari diagonal matriks yang terakhir didapat adalah merupakan nilai eigen. Dasar dari Rotasi Jacobi Ppq adalah sebuah matriks bujur sangkar dengan elemen-elemennya seperti yang terlihat pada matriks berikut :
1 c s Ppq 1 s c 1
………………(2.17)
Matriks di atas menunjukkan, semua elemen diagonal diberikan nilai 1, kecuali dua elemen c dalam baris (dan kolom) p dan q. Semua elemen non-diagonal utama adalah nol kecuali elemen s dan –s. Bilangan c dan s adalah nilai kosinus dan sinus dari sudut rotasi , dengan c2 + s2 = 1.
Rotasi seperti yang terlihat pada Persamaan 2.17, digunakan untuk mentransformasikan Matriks A dengan aturan :
A' Ppqt . A.Ppq
………………………(2.18)
Pada Operasi , yang berubah hanyalah baris p dan q dari Matriks A, sedangkan Ppqt . A pada A.Ppq yang berubah hanya kolom p dan q. Perubahan elemenelemen A dalam Persamaan 2.18, yaitu hanya pada baris p dan q, serta kolom p dan q dinyatakan dalam bentuk matriks sebagai berikut :
a ' p1 A' a ' q1
a '1 p
a '1q
a ' pp a ' pq a ' qp
a ' qq
a ' np
a ' nq
a ' pn a ' qn
……………... (2.19)
Menggunakan hasil perkalian Persamaan 2.18, dengan A adalah matriks simetris, maka didapat : a rp ca rp sa rq
……........................... (2.20)
a rq ca rq sa rp
……........................... (2.21)
r p, r q
a pp c 2 a pp s 2 aqq 2sca pq …............................... (2.22) s 2 a pp c 2 aqq 2sca pq aqq
……........................... (2.23)
apq c 2 s 2 a pq sca pp aqq
……................(2.24)
Metode Jacobi dicoba untuk mengenolkan elemen-elemen non diagonal utama dengan urutan rotasi seperti yang disebutkan di atas. Dengan menentukan nilai a’pq = 0, Persamaan 2.24 menghasilkan ekspresi untuk sudut rotasi :
cot 2
c 2 s 2 a qq a pp 2 sc 2a pq
……............... (2.25)
Jika ditentukan t s/c, definisi dapat ditulis kembali dalam bentuk : t 2 2t 1 0
…….......................... (2.26)
Jika sudut rotasi kurang dari /4 maka akan mendapatkan akar kwadrat kecil yang dicari dengan menggunakan persamaan :
t
sgn
2 1
…….......................... (2.27)
sgn() = -1 jika < 0, selain itu sgn() = 1. Sedangkan jika besar, akan menghasilkan nilai yang bisa menyebabkan kesalahan perhitungan (overflow pada komputer). Hal tersebut diatasi dengan menentukan t = 1/(2), maka didapat :
c
1 2
…….........................(2.28)
t 1
s = tc
…….........................(2.29)
Guna mengurangi kesalahan yang terjadi pada perhitungan dari Persamaan 2.20 – 2.24, maka Persamaan 2.24 diganti dengan : a pq 0
…….........................(2.30)
adalah ide dalam memperbaharui persamaan dengan memberikan nilai yang sama pada nilai lama ditambah dengan sedikit koreksi. Untuk itu Persamaan 2.24 dan 2.30 dapat digunakan untuk mengeliminasi a qq dari Persamaan 2.22, didapat : a pp a pp ta pq
…….........................(2.31)
Begitu juga terhadap persamaan lainnya, yang menghasilkan persamaan berikut : a qq ta pq aqq
…….........................(2.32)
arp arp s arq arp ……..........................(2.33) a rq a rq s a rp a rq …….........................(2.34)
di mana (= tg /2) didefinisikan dengan :
s 1 c
…….........................(2.35)
Konvergensi metode Jacobi didapat dengan menjumlahkan kwadrat dari elemen non diagonal utama, yaitu dengan persamaan :
S ars
2
…….........................(2.36)
r s
Sehingga Persamaan 2.21 – 2.25 dapat diimplementasikan dengan : 2
S S 2 a pq …….........................(2.37) Setelah dilakukan operasi berulang-ulang sampai batasan mesin precision yang diijinkan, maka didapat matriks diagonal D. Elemen-elemen pada diagonal utama Matriks D inilah merupakan nilai eigen Matriks A. Dengan kata lain D didapat melalui persamaan :
D = Vt . A . V
…….........................(2.38)
V = P 1 . P2 . P3 . . .
…….........................(2.39)
Kolom-kolom Matriks V adalah vektor eigen dari Matriks A, yang urutannya bersesuaian dengan nilai eigennya masing-masing.
2.6 Unjuk Kerja Sistem Unjuk kerja suatu sistem pengenalan diukur berdasarkan nilai rata-rata kesalahan. Nilai rata-rata kesalahan ini ada dua macam, yaitu: i.
Rata-rata kesalahan tipe I (FRR : false rejection rate) Kesalahan yang terjadi penolakan mengenali karakter Aksara Bali yang sama, atau tidak dikenalinya aksara yang sudah terdaftar.
ii. Rata-rata kesalahan tipe II (FAR : false acceptance rate) Kesalahan penerimaan yaitu yang terjadi karena mengenali aksara input sebagai Aksara Bali yang berbeda.
Kesalahan (%)
j1
j
Tipe I (FRR)
Tipe II (FAR)
2 Diterima
j1
Ditolak
j2
Cc x Cd
0
Cc x Cd
(a)
Nilai ambang
Kesalahan (%) Tipe I (FRR)
Tipe II (FAR)
j
1 FA FR j2
j1
Diterima
Ditolak
j2
Cc x Cd
0 (b)
Cc x Cd
Nilai Ambang
Gambar 2.5 Pembagian kelompok (dikenali/tidak) dan evaluasi rata-rata kesalahan nilai beda (a) ideal; (b) kenyataan Kedua nilai rata-rata kesalahan itu berubah menurut nilai ambang atau nilai kritis penerimaan yang dipakai. Kondisi ideal masalah ini digambarkan pada Gambar 2.5(a). Kondisi ideal terjadi apabila ciri-ciri karakter Aksara Bali yang signifikan dapat diekstraksi sedemikian rupa sehingga dapat memisahkan antara satu karakter dengan karakter lainnya. Tidak akan terjadi imitasi pada kondisi ideal ini, akan tetapi di dalam kondisi praktis, permasalahan pemilihan ciri tidak dapat diselesaikan dengan baik, maka pengenalan karakter tersebut tidak dapat dipisahkan secara optimal. Kondisi ini digambarkan pada Gambar 2.5(b). Gambar 2.5 tersebut juga menunjukkan kesulitan untuk mengevaluasi beberapa sistem pengenalan yang berbeda karena nilai ambang masing-masing sistem
berbeda dan dicoba pada basisdata Aksara Bali yang berbeda pula, atau hasil evaluasi sangat tergantung pada spesifikasi sistem dan basisdata yang dipakai.
Speech is the expression of the heart together with the mind. Therefore for speech to be right it is necessary for the heart and mind to be right. (Anand Khrisna)
BAB III METODE PENELITIAN
BAB III METODE PENELITIAN
3.1 Sumber Data Sumber data yang dipakai sebagai sampel Aksara Bali yang digunakan untuk melakukan pembentukan pola model dan pengujian sistem pengenalan karakter ini adalah data citra Aksara Bali dalam penelitian I Komang Gede Suamba Dharmayasa (Dharmayasa, 2009). Sampel Aksara Bali yang digunakan diperoleh dari hasil scan buku ajar Bahasa Bali yang diambil menggunakan segmentasi per blok karakter dan juga dari internet. Pola Model dari Pola Busur Terlokalisasi yang digunakan dalam penelitian ini adalah pola model yang dikembangkan dari bentuk pola busur dan dipilih sesuai dengan frekuensi kemunculan terbanyak khusus untuk citra Aksara Bali, serta pola model pembanding pada saat pengujian unjuk kerja sistem dari Prof Isao Yoshimura (Yoshimura, 1993) dan AA. Kompiang Oka Sudana (Sudana, 2007).
3.2 Tempat dan Waktu Penelitian Penelitian dan pengerjaan sistem dilakukan di Br. Buana Agung Padangsambian, Denpasar dari Bulan Januari sampai Juni 2011.
3.3 Gambaran Umum Sistem Pengenalan Karakter Aksara Bali Pengembang sistem
Proses pembuatan pola model
Masukan citra karakter Aksara Bali
Masukan citra karakter Aksara Bali
Basisdata pola model
Proses pendaftaran Proses Pencocokan dengan Semua Basisdata Aksara
Keluaran nilai ketidaksamaan terkecil dan ID Aksara
Basisdata acuan
Proses Pencarian Nilai Terkecil Ketidaksamaan
Proses Pengambilan Keputusan
Nilai threshold Laporan hasil pengenalan
Gambar 3.1 Gambaran Umum Sistem Pengenalan Aksara Bali 3.3.1 Pembentukan dan Pemilihan Pola Model Pembentukan pola model baru yang didasarkan pada batasan-batasan dalam Metode Pola Busur Terlokalisasi untuk Tulisan Jepang dan Tandatangan Latin dengan tujuan untuk mengurangi banyaknya pola model yang digunakan, sehingga waktu proses sistem bisa lebih singkat. Batasan utamanya yaitu lokalisasi permasalahan pada pola model yang didefinisikan di dalam sebuah
bujur sangkar kecil berukuran 5 x 5, tetapi pemilihannya berbasis pada sampel Aksara Bali yang dimiliki.
3.3.2 Tahapan Pengenalan Karakter Aksara Bali Secara umum dalam pengolahan citra, untuk mendapatkan informasi yang terkandung di dalamnya maka biasanya dilakukan proses-proses pendahulu pada citra tersebut. Setelah itu baru dilakukan proses-proses berikutnya yang berkenaan dengan informasi apa yang diinginkan untuk diolah, demikian juga halnya pada pengenalan Tulisan Bali. Adapun tahapan-tahapan yang dilakukan dalam sistem Pengenalan Karakter Aksara Bali, khususnya Metode Pola Busur Terlokalisasi adalah sebagai berikut: i. Akuisisi data (data acquisition) Akuisisi data merupakan proses pengubahan data dari data analog Aksara Bali, menjadi citra dengan scanner. Citra yang disimpan dalam format file bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file bitmap yang dihasilkan pada tahap pengambilan data belum berbentuk dua warna (hitam putih) maka terlebih dahulu dilakukan konversi menjadi data citra dua warna (proses binerisasi), karena citra Aksara Bali yang nantinya diperlukan berupa citra biner. Setelah itu dilakukan eliminasi terhadap data yang tidak diperlukan, guna memastikan bahwa data yang akan diproses pada tahapan berikutnya sudah merupakan data yang sahih.
iii. Ekstraksi ciri (feature extraction) Setelah data tersebut diolah menjadi data jadi pada tahap pra proses, kemudian dilakukan ekstraksi ciri dari citra biner Aksara Bali. Ciri-ciri yang diekstraksi bergantung pada metode yang dipakai dalam proses pembandingan nantinya, yang mana dalam penelitian ini digunakan adalah pola model khusus untuk Aksara Bali dari Metode Pola Busur Terlokalisasi yang mana diantara model pola-polanya terlihat pada Gambar 2.4. Aksara Bali yang telah berbentuk citra biner akan langsung diproses untuk mendapatkan frekuensi kemunculan masingmasing pola. Pola yang memiliki nomor model yang sama tetapi dengan nomor urut berbeda, frekuensi kemunculannya dijumlahkan untuk mendapatkan frekuensi kemunculan dari pola model tersebut. Cara penghitungannya adalah dengan menggerakkan setiap pola model di atas pola biner citra Aksara Bali, sebagai patokan adalah titik yang berbentuk lingkaran penuh. Titik ini digeser secara teratur satu grid ke arah horisontal atau vertikal, sampai semua titik pada citra biner Aksara Bali terlewati. Setiap pergeseran dilakukan pembandingan terhadap ruang yang dilingkupi oleh model tersebut, apakah sama ataukah tidak. Jika
sama
maka
frekuensi
kemunculan
pola model
tersebut
ditambahkan. Misalkan citra Aksara Bali dilambangkan dengan f dan terdapat 23 pola model maka citra Aksara Bali tersebut dapat diekspresikan sebagai vektor kolom x berdimensi p, dengan p adalah 23 yaitu sesuai dengan pola model yang ada. Dalam matriks bentuk tersebut dapat dituliskan sebagai berikut :
x1 x2 x x 23
.......................................(3.1)
Elemen-elemen x yaitu x1, x2,… x23 adalah frekuensi kemunculan dari masing-masing pola model sesuai dengan nomor modelnya. iv. Pendaftaran (enrollment) Tahapan
pendaftaran
Aksara
Bali
acuan
dilakukan
dengan
mengekstraksi ciri dari beberapa Aksara Bali acuan dan hasil yang diperoleh disimpan pada sebuah file basisdata acuan. Misalkan masing-masing Aksara Bali ke i disebut dengan Pi digunakan sebagai Aksara Bali acuan sebanyak m, maka dari m buah Aksara Bali ini diekstraksi ciri menggunakan Metode Pola Busur Terlokalisasi menghasilkan m buah vektor kolom x berdimensi p, hasil ini dijadikan satu matriks vektor berukuran p x m dengan bentuk sebagai berikut :
x11 x12 x1m x 21 x 22 x 2 m Pi xp1 xp 2 xpm
………………………(3.2)
Nilai m yang digunakan pada sistem ini adalah 3 Aksara Bali yang diambil dari beberapa buku cetak, dengan pertimbangan bahwa 3 Aksara Bali tersebut diharapkan mampu untuk mewakili variasi yang ada dari sebuah karakter Aksara Bali, di samping itu sistem nantinya bekerja dengan tidak terlalu lambat. Jadi ukuran matriks vektor acuan
pada sistem pengenalan ini adalah 23 x 3 untuk 23 pola model serta 42 x 3 untuk 42 pola model. Matriks vektor yang didapatkan disimpan pada basisdata acuan dengan kata kunci nomor identitas Aksara Bali. v. Pembandingan (comparison) Tahap pembandingan merupakan inti dari keseluruhan proses pengenalan. Pada tahap pembandingan ini, ciri citra Aksara Bali masukan akan dibandingkan dengan ciri acuan yang ada pada basis data. Pada tahap inilah dilakukan perhitungan-perhitungan dari frekuensi yang didapat pada proses ekstraksi ciri. Berdasarkan proses pembandingan tersebut didapatkan nilai ketidaksamaan (dissimilarity measure) masing-masing acuan dengan citra input. Nilai ketidaksamaan atau nilai beda inilah yang digunakan sebagai dasar untuk pengambilan keputusan hasil pengenalan. Basisdata acuan dibaca satu record data acuan karakter. Acuan yang berbentuk matriks p x m ini selanjutnya dihitung rata-rata kemunculan setiap pola model dengan cara : m
xi k 1
xik
m …………………………………………….(3.3)
Nilai-nilai yang dihasilkan yaitu x1/, x2/, … xp/ , ditempatkan sebagai elemen vektor kolom x/ berdimensi p, yang merupakan rata-rata acuan. Lalu dicari matriks varians V berdimensi p x p dari acuan dengan persamaan: m
V xj x / xj x / / m ……………....(3.4) j 1
t
Mencari frekuensi kemunculan pola model pada citra karakter yang dibandingkan sama halnya dengan mencari frekuensi pola model acuan. Misalkan Aksara Bali yang dibandingkan disebut Q maka vektor kolom hasilnya adalah x q. Varians V, rata-rata acuan x/ dan vektor kolom xq, digunakan menghitung nilai beda (Yoshimura I. dkk, 1994, hal.61) dengan persamaan sebagai berikut: q
D ( Pi, Q )
( Z Qk Z /k ) 2
k 1
k
p
( Z Qk Z /k ) 2
k q1
q
... (3.5)
ZQk lkt xQ ………………………………………. (3.6) Z /k l kt x / ………………………………………...(3.7) dengan ketentuan : D(Pi,Q) : nilai ketidaksamaan antara acuan Pi dengan pembanding Q.
: vektor kolom yang berisi nilai eigen dengan urutan menurun (descending order) yaitu (, , …, p)
lk
: vektor eigen yang berbentuk vektor kolom terurut sesuai dengan nilai eigen yang berhubungan.
xQ
: vektor kolom yang berisi frekuensi munculnya pola model pada citra karakter pembanding.
x/
: vektor kolom rata-rata acuan.
t
: transpose.
p
: dimensi vektor kolom
q
: suatu integer dengan syarat 1q p. Konstanta q merupakan nomor pemotongan dari nilai eigen.
vi. Perancangan Basis Data Acuan Perancangan basisdata acuan adalah merupakan proses pembentukan file basisdata yang akan dijadikan acuan pada saat proses pengenalan. Metode yang dipakai dalam pembuatan data acuan mengacu pada metode Leave-One-Out, yang menyarankan pembentukan basisdata dari sampel Aksara Bali yang dimasukkan, menggunakan sebanyak 3 sampai 10 buah Aksara Bali untuk sebuah karakter. Dalam pengerjaan sistem pengenalan ini digunakan 6 buah sampel Aksara Bali untuk masing-masing karakter, dengan perincian : 3 Aksara Bali untuk acuan serta 3 Aksara Bali sisanya sebagai pembanding untuk menentukan nilai ambang. Tahap perancangan basisdata acuan terdiri dari dua pokok penting yaitu pendaftaran Aksara Bali acuan dan penentuan nilai ambang batas yang akan disimpan dalam satu record dengan kata kunci nomor identitas. Setelah dilakukan proses pendaftaran tersebut dilanjutkan
dengan
membandingkan
Aksara
Bali
yang
akan
dipergunakan untuk menentukan nilai ambang. Berdasarkan hasil pembandingan tiga Aksara Bali ini didapatkan nilai ketidaksamaannya masing-masing. Median dari nilai ketidaksamaan inilah yang disimpan pada basisdata acuan melengkapi frekuensi sampel sebelumnya, dan dipergunakan sebagai nilai ambang (threshold) atau nilai kritis yang dikalikan dengan suatu konstanta Cd. Nilai kritis dilambangkan dengan Cc. Besarnya konstanta pengali nilai kritis untuk keseluruhan sistem ditentukan melalui proses pengujian, yang dipengaruhi oleh prosentase terjadinya kesalahan.
vii. Pengambilan keputusan (decision making) Tahap ini bertugas untuk memberikan keputusan dari proses pembandingan yang telah dilakukan. Nilai-nilai ketidaksamaan yang didapatkan pada proses sebelumnya diurutkan. Identitas acuan dengan nilai ketidaksamaan terkecil dan memenuhi nilai ambang batas (thereshold) diputuskan sebagai jenis karakter Aksara Bali yang sesuai dengan citra Aksara Bali yang diinputkan. Jika nilai ketidaksamaan terkecil yang didapatkan masih diatas nilai ambang batas, maka disimpulkan karakter Aksara Bali masukan tersebut tidak dikenali. Nilai
ambang
sebelumnya.
batas Apabila
didapatkan d(Pj, Qi)
dengan
pengujian-pengujian
didefinisikan
sebagai
nilai
ketidaksamaan antara Aksara Bali acuan yang dimiliki oleh sebuah karakter Aksara Bali Pj dengan Aksara Bali yang diuji Qi, Ccj adalah nilai kritis yang telah didapat sebelumnya dari sebuah karakter Aksara Bali Pj serta Cd adalah konstanta pengali, maka berlaku hubungan : Jika d(Pj, Qi) Ccj x Cd
maka keputusannya ‘DIKENALI’
Selain itu keputusannya ‘TIDAK TERDAFTAR’.
3.4
Perancangan Sistem Perancangan sistem merupakan tahap untuk mentransformasikan berbagai
kebutuhan ke bentuk data dan arsitektur program yang akan diimplementasikan pada tahap pembuatan sistem nantinya. Perancangan tersebut meliputi penjelasan dalam bentuk bagan alir proses, serta perancangan struktur data.
3.4.1 Diagram Jackson Sistem Pengenalan Rancangan sistem pengenalan yang berupa struktur program, ditampilkan dalam Diagram Jackson yang direpresentasikan dalam bentuk struktur diagram dan struktur teks. Adapun struktur diagram sistem pengenalan ini adalah seperti yang terlihat pada Gambar 3.2. Pada struktur diagram sistem pengenalan tersebut terlihat gambaran sistem secara lebih rinci, pendefinisian kebutuhan menu-menu pokok dan modul-modul program yang nantinya diperlukan oleh sistem pengenalan, baik modul-modul yang dijalankan secara iterasi ataupun yang bersifat pilihan. Sistem pengenalan dibagi menjadi dua modul utama yaitu modul PERSIAPAN LINGKUNGAN SISTEM dan modul SISTEM UTAMA. Hal
terpenting yang perlu diperhatikan adalah persiapan lingkungan sistem berupa memasukkan pola model ke file dan setting konstanta mutlak harus ada pada saat sistem untuk pertama kali dijalankan sebelum melakukan pemrosesan terhadap yang lainnya, sedangkan untuk yang kedua kali atau seterusnya file pola model dan konstanta ini bisa diubah melalui menu-menu pada modul sistem utama.
SISTEM PENGENALAN
*
PERSIAPAN LINGKUNGAN SISTEM
o
SISTEM UTAMA
o
MASUKAN SETTING POLA MODEL KONSTANTA KE FILE
o
o
PEMBUATAN
UBAH LINGKUNGAN SISTEM
o
o
PENGENALAN
DATA ACUAN
o
MASUKAN POLA MODEL KE FILE
*
SETTING KONSTANTA
PROSES PENGENALAN
BUAT LAPORAN
* PROSES PEMBUATAN BACA CITRA AKSARA
DATA ACUAN
* MASUKAN IDENTITAS AKSARA
CARI FREKUENSI ACUAN
BACA CITRA AKSARA
EKSTRAKSI CIRI
* CARI NILAI AMBANG
CARI MEDIAN NILAI TULIS KE AMBANG FILE ACUAN
BACA CITRA AKSARA
EKSTRAKSI CIRI
PEMBANDINGAN
PENGAMBILAN KEPUTUSAN
EKSTRAKSI CIRI
Keterangan PEMBANDINGAN
* : iterasi o
Gambar 3.2 Struktur Diagram Jackson Sistem Pengenalan
Struktur Diagram Jackson sistem pengenalan pada Gambar 3.2 selanjutnya ditulis dalam bentuk struktur teks sebagai berikut :
SISTEM_PENGENALAN seq PERSIAPAN_LINGKUNGAN_SISTEM PERSIAPAN_LINGKUNGAN_SISTEM sel (MASUKAN_POLA_MODEL_KE_FILE) MASUKAN_POLA_MODEL_KE_FILE; PERSIAPAN_LINGKUNGAN_SISTEM alt (SETTING_KONSTANTA) SETTING_KONSTANTA; PERSIAPAN_LINGKUNGAN_SISTEM end; SISTEM_UTAMA itr while (UBAH_LINGKUNGAN_SISTEM or PEMBUATAN_DATA_ACUAN or PENGENALAN) SISTEM_UTAMA sel (UBAH_LINGKUNGAN_SISTEM) UBAH_LINGKUNGAN_SISTEM UBAH_LINGKUNGAN_SISTEM sel (MASUKAN_POLA_MODEL_KE_FILE) MASUKAN_POLA_MODEL_KE_FILE; UBAH_LINGKUNGAN_SISTEM alt (SETTING_KONSTANTA) SETTING_KONSTANTA; UBAH_LINGKUNGAN_SISTEM end; SISTEM_UTAMA sel (PEMBUATAN_DATA_ACUAN) PEMBUATAN_DATA_ACUAN c_aksara 1; PROSES_PEMBUATAN_DATA_ACUAN itr while (c_aksara banyak_aksara) MASUKAN_IDENTITAS_AKSARA; c_acuan 1; CARI_FREKUENSI_ACUAN itr while (c_acuan banyak_acuan) BACA_CITRA_AKSARA; EKSTRAKSI_CIRI; CARI_FREKUENSI_ACUAN end; c_banding 1; CARI_NILAI_AMBANG itr while (c_banding banyak_banding)
BACA_CITRA_AKSARA; EKSTRAKSI_CIRI; PEMBANDINGAN; CARI_NILAI_AMBANG end: CARI_MEDIAN_NILAI_AMBANG; TULIS_KE_FILE_ACUAN; PROSES_PEMBUATAN_DATA_ACUAN end; PEMBUATAN_DATA_ACUAN end; SISTEM_UTAMA alt (PENGENALAN) RECOGNATION seq AKTIFKAN_DATAAKSARA; PROSES_PENGENALAN itr while (banyak_uji_coba) BACA_CITRA_AKSARA; EKSTRAKSI_CIRI; PEMBANDINGAN; PENGAMBILAN_KEPUTUSAN; PROSES_PENGENALAN end; BUAT_LAPORAN; PENGENALAN end; SISTEM_UTAMA end; SISTEM_PENGENALAN end.
Variabel pembantu dalam struktur teks di atas (c_aksara, c_acuan dan c_banding) serta konstanta pembantu (banyak_aksara, banyak_acuan dan banyak_banding) digunakan untuk menentukan berapa kali pengulangan proses
(iterasi) pada masing-masing modul, yang pada struktur diagram belum terlihat secara jelas. Banyak_aksara adalah banyak aksara yang akan didaftar, banyak_acuan adalah banyak aksara acuan, banyak_banding adalah banyak
aksara pembanding yang dicari median nilai bedanya sebagai nilai ambang.
3.4.2 Bagan Alir Proses Bagan alir diperlukan untuk memperjelas proses-proses yang dilakukan, terutama pada proses pengenalan dan tahap pendaftaran. Langkah-langkah yang dilakukan sehingga bisa menghasilkan suatu keputusan yang dapat mengenali jenis karakter yang diuji, mencakup tahap ekstraksi ciri, tahap pembandingan dan tahap pengambilan keputusan terlihat pada Gambar 3.3 mengenai bagan alir proses pengenalan Aksara Bali. Bagan alir ini sebagai perincian dari langkahlangkah dan perhitungan yang terjadi pada modul Pengenalan. Sedangkan bagan alir yang merupakan perincian dari langkah-langkah serta perhitungan pada modul PEMBUATAN_DATA_ACUAN
diperlihatkan
dalam
Gambar 3.4
mengenai
bagan alir tahap pendaftaran. Proses pembandingan baik yang ada pada modul Pengenalan maupun pada tahap pendaftaran (modul PEMBUATAN_DATA_ACUAN) adalah bagian yang paling banyak memerlukan proses perhitungan (persamaannya ada pada Sub Bab 3.3.2). Perhitungan-perhitungan yang dilakukan diantaranya perhitungan untuk mendapatkan frekuensi kemunculan rata-rata (mean frequency), varians, nilai eigen, vektor eigen dan perhitungan nilai ketidaksamaan, sehingga tahap pembandingan dapat menghasilkan laporan tentang nilai ketidaksamaan yang akan dipakai sebagai dasar pengambilan keputusan.
Start
Masukkan Aksara Uji Ekstraksi ciri citra Aksara Bali uji Q
Aktifkan data acuan ke i, Pi Hitung frekuensi rata-rata (x/) Hitung varians ( V ) Hitung nilai eigen (), vektor eigen (l) serta urutannya secara menurun
Hitung ketidaksamaan D(P i,Q) Simpan di Array Nilai Ketidaksam aan Aksara uji Q
Tidak
Inc(i)
Ya
Record Terakhir
D(Pi,Q) Cci x Cd
Proses Pencarian Nilai D(Pii,Q) Terkecil
Ya
Hasil uji Q “Dikenali Sebagai aksara ke-i”
Tidak
Hasil uji Q “Tidak Terdaftar”
Ya
Uji lagi ? Tidak
Laporan daftar hasil daftar D(Pi,Q) waktu proses
Stop
Gambar 3.3 Bagan alir proses pengenalan Aksara Bali
Start m=0 t =0 Masukkan Nomor Id
Ya
Id sudah terdaftar ? Tidak
Masukkan nama Aksara Bali Aktifkan citra Aksara Bali Acuan Inc(m) Tidak
m>3
Baca citra
Ya
Ekstraksi ciri, simpan ke array P id [m]
Hitung frekuensi rata-rata (x/) dari Pid Hitung varians ( V ) Hitung nilai eigen (), vektor eigen (l) serta urutannya secara menurun Inc(t) Tidak
t>3
Baca citra
Ya
Ekstraksi ciri Aksara Bali ke-t+3
Cari median dari D(Pid,Qt) sebagai nilai ambang (Ccid) Tulis Pid ke file basis data
Hitung nilai ketidaksamaan D(Pid,Qt)
acuan Ya
Mendaftarkan Aksara Bali baru lagi ?
Tidak
Gambar 3.4 Bagan alir tahap pendaftaran
Stop
3.4.3 Struktur Data Melihat rancangan sistem yang ada maka selanjutnya disiapkan struktur data dari rancangan sistem pengenalan yang nantinya akan dipergunakan pada saat implementasi ke dalam bentuk program berbasis Borland Delphi. Adapun struktur data utama dari program sistem pengenalan ini adalah sebagai berikut :
TModelPattern = record Nomor : byte; //nomor pola Model : byte; //nomor model Pattern : array[0..4,0..4] of byte; //pola model 5x5 end; TArrModelPattern = array [1..DimVector] of TModelPattern;
Struktur “TModelPattern” dipakai sebagai struktur record dari file pola model dan disimpan dalam struktur array “TArrModelPattern”. Besarnya array yang dialokasikan untuk struktur “TArrModelPattern“ adalah sebanyak jumlah maksimum pola model yang ada, dalam hal ini diwakili oleh konstanta “DimVector”.
THuruf = record IdNumber : word; Name : string[35]; Freq :array[1.. DimVector,1..6] of word; RefFileName : string[70]; ADis : array[1..3] of real; Critical : real; end; Person : THuruf; FileReference : file of THuruf;
Struktur “THuruf” dipakai sebagai struktur record dari variabel “Huruf“ yang berisi data masing-masing karakter Aksara Bali, selanjutnya nanti juga akan
dipergunakan sebagai struktur record dari variabel file basisdata acuan. Struktur “THuruf” ini berisi nomor identitas, nama karakter Aksara Bali, frekuensi kemunculan pola model dari 3 Aksara Bali acuan, nama file beserta directory dari lokasi penyimpan file citra acuan, nilai ketidaksamaan yang dihasilkan dari 3 Aksara Bali pembanding yang dipakai untuk mencari nilai ambang, serta nilai ambang terpilih yang dicari dari median ketiga nilai ketidaksamaan Aksara Bali tersebut. TPosGambar = record AwalX, AkhirX, AwalY, AkhirY : integer; end;
Struktur “TPosGambar” merupakan struktur variabel dari posisi koordinat pojok masing-masing citra Aksara Bali. Struktur data pendukung yang diperlukan dalam proses-proses perhitungan maupun penyimpanan data adalah sebagai berikut:
TFrequency = array[1.. DimVector] of word;
Struktur “TFrequency” merupakan struktur variabel penyimpan frekuensi kemunculan masing-masing pola model dari hasil ekstraksi ciri Aksara Bali.
TMeanFrequency = array[1.. DimVector] of real;
Struktur “TMeanFrequency” merupakan struktur variabel penyimpan nilai rata-rata kemunculan setiap pola model dari ekstraksi ciri beberapa Aksara Bali acuan.
TFreqMinMean = array[1.. DimVector,1..Number] of real;
Struktur “TFreqMinMean” merupakan struktur variabel penyimpan nilai frekuensi kemunculan masing-masing pola model dari setiap Aksara Bali acuan yang telah dikurangi dengan frekuensi rata-rata yang bersesuaian, juga merupakan struktur dari variabel yang menyimpan perhitungan nilai eigen. TVariance = array[1.. DimVector,1.. DimVector] of real;
Struktur “TVariance” merupakan struktur dari variabel penyimpan hasil perhitungan varians dan vektor eigen.
TGambar = array[1..SignHeigh,1..SignWidth] of byte;
Struktur “TGambar” merupakan struktur variabel penyimpan nilai pola biner dari setiap piksel citra Aksara Bali, yang dalam hal ini bernilai 0 untuk piksel berwarna putih dan bernilai 1 untuk piksel berwarna hitam. Konstanta “SignHeigh” dan “SignWidth” adalah ukuran ruang pembatas Aksara Bali, yang dalam hal ini nilai konstanta tersebut masing-masingnya adalah 140 piksel dan 165 piksel.
TSort = array[1.. DimVector] of byte;
Struktur “TSort” merupakan struktur variabel penyimpan hasil pengurutan dari frekuensi kemunculan pola model.
3.5
Pembuatan Sistem Pembuatan sistem merupakan tahap pengembangan dan implementasi dari
rancangan sistem yang telah dibuat sebelumnya menjadi suatu sistem pengenalan
Aksara Bali dalam bentuk program komputer. Tahapan ini meliputi penentuan kebutuhan sistem dan pemrograman yang di dalamnya.
3.5.1 Kebutuhan Sistem Pembuatan sistem pengenalan Aksara Bali yang intinya pengembangan rancangan sistem sebelumnya melalui pemrograman komputer, memerlukan perangkat-perangkat pendukung berupa perangkat keras (hardware) dan perangkat lunak (software) yang dibutuhkan agar sistem dapat bekerja dengan baik. Kebutuhan-kebutuhan tersebut dijelaskan sebagai berikut.
3.5.1.1 Kebutuhan Perangkat Keras Spesifikasi komputer yang digunakan untuk mengembangkan maupun pengujian sistem pengenalan ini adalah prosesor Intel Core i5 M 450 @2.40 GHz, dengan memori SDRAM 2 GB dan kapasitas harddisk 500 GB. 3.5.1.2 Kebutuhan Perangkat Lunak Sistem pengenalan ini dikembangkan dalam lingkungan sistem operasi Microsoft Windows 7 ultimate. Pemilihan sistem operasi tersebut didasarkan atas pertimbangan bahwa sistem pengenalan Aksara Bali secara baik hanya dapat diimplementasikan
dalam
modus
grafik.
Microsoft
Windows 7
ultimate
merupakan suatu sistem operasi berbasis grafik yang banyak menjadi pilihan saat ini. Dalam lingkungan Windows, pembuatan antar muka grafis dapat dilakukan dengan lebih mudah. Di samping itu Windows 7 ultimate juga mendukung bahasa pemrograman yang dipakai mengembangkan sistem ini yaitu Borland Delphi 7.0.
Perangkat lunak lain yang diperlukan adalah program paket pengolahan citra, dan dipergunakan pada tahapan prapemrosesan. Dalam pengerjaan penelitian ini perangkat lunak paket pengolahan citra yang dipergunakan adalah Paint Shop Pro.
3.5.2 Pemrograman Aspek pemrograman yang dibuat dalam sistem pengenalan Aksara Bali ini meliputi implementasi struktur program yang telah dirancang ke dalam kode-kode bahasa pemrograman. Implementasi pemrogramannya menggunakan perangkat lunak Borland Delphi 7.0, yaitu perangkat lunak pemrograman visual yang dijalankan di bawah sistem operasi Windows, dengan bahasa pemrograman berbasis Pascal.
3.5.2.1 Konstanta dan Variabel Global Konstanta-konstanta beserta nilainya yang digunakan pada keseluruhan program dari sistem verifikasi ini adalah sebagai berikut : MaxHuruf = 255; DimVector23 = 23; DimVector42 = 42; JumModel23 = 23; JumModel42 = 52; Number = 3; DefaultQi = 3; DefaultReferName = 'R2331.Dat'; PatternName23 = 'Model23.Dat'; PatternName42 = 'Model42.Dat'; DefPartName DefaultCd = SignWidth = SignHeigh =
= 'Aksara1.Dat'; 3; 165; 140;
Variabel global merupakan variabel yang dideklarasikan di luar semua fungsi dan prosedur yang ada, sehingga ia dapat diakses (dibaca, ditulisi atau diubah) oleh fungsi dan prosedur apapun yang ada dalam program itu. Adapun variabel-variabel global yang dipakai dalam sistem pengenalan ini adalah : FileReference : file of THuruf; Person : THuruf; ArrModelPattern : TArrModelPattern; Berubah : Boolean; Cd : Real; Qi : Integer; FParticipantName, FReferName, FPatternName : String; FilePattern : File Of TModelPattern; Error, CountPattern, CounterList, PrevCounterList : byte; PosGambar : Array[1..9] of TPosGambar; awalX,awalY,akhirX,akhirY : Integer; DefDirectory : String; EnrollLoad : Boolean; PrMeanFreq, PrEigenValue: TMeanFrequency; PrVariance,PrEigenVector : TVariance; PrSort : TSort; JumPattern : Byte; //banyaknya keseluruhan pola DimVector : Byte; //banyaknya model ArrHuruf : Array[1..MaxHuruf] of THuruf; BanyakHuruf : Byte; Participant : TParticipant; FileParticipant : File Of TParticipant;
3.5.2.2 Form Utama Window Form adalah tempat di mana semua komponen visual dan komponen non visual diletakkan untuk membentuk sebuah aplikasi. Bagian yang tak terpisahkan dari form adalah unit yang berhubungan langsung dengan form tersebut. Unit berisi deklarasi tipe data, fungsi dan prosedur. Rancangan form utama dari sistem pengenalan ini diberi nama FUtama.frm adalah seperti terlihat pada Gambar 3.5 dengan unit bernama Sign1.pas. Dalam form utama
ini berisi menu dalam bentuk tombol-tombol (push button menu) yang diperlukan oleh pengguna dalam menjalankan sistem pengenalan serta memanggil form-form lainnya, juga sebagai tempat berlangsungnya sebagian besar proses.
1b
1a
Grup 1
Grup 4 1c 1d
1e
Grup 3 3a
Grup 2 2a
2c
2d
2b
Gambar 3.5 Tampilan Form Utama sistem pengenalan Selanjutnya diuraikan mengenai keterangan masing-masing nomor dan tombol-tombol pada tampilan Gambar 3.5 beserta beberapa baris penting dari fungsi atau prosedur pendukungnya.
Grup 1 Grup 1 merupakan panel yang digunakan untuk melakukan proses pengenalan sebuah aksara uji serta menampilkan hasilnya, juga menampilkan citra aksara yang sedang aktif. Nomor 1a adalah panel yang digunakan untuk menampilkan nama file citra aksara aktif. Nomor 1b adalah tempat menampilkan citra aksara aktif. Nomor 1c adalah tempat menampilkan hasil pengenalan, yaitu “Huruf ke-K” untuk aksara yang dikenali atau “Tidak Terdaftar” untuk huruf yang tidak dikenali oleh sistem. Nomor 1d adalah tempat untuk menampilkan nilai beda dari hasil pengenalan. Nomor 1e adalah tempat menampilkan waktu proses. Tombol Proses digunakan untuk menjalankan proses pengenalan terhadap aksara aktif. Adapun program yang dijalankan adalah : procedure TFUtama.SBVerifyClick(Sender: TObject); var Beda : Real; S : String; WaktuMulai, WaktuSelesai : TDateTime; JamMulai, JamSelesai, Menit, Detik, MDetik : Word; MDetikMulai, MDetikSelesai, TotalWaktu : Double; i : byte; ArrayBeda : TArrBeda; Gambar : TGambar; Hurufke : Byte;
begin //FVerificate.Show; FGauge.Height := 134; FGauge.Gauge1.Progress := 0; FGauge.Show; FGauge.Refresh; WaktuMulai := Time; Gambar := BacaHuruf;
for i := 1 to BanyakHuruf do Begin {Mencari Variance, EigenVektor, EigenValue dan MeanFrek} Person := ArrHuruf[i]; PrMeanFreq := CountMeanFrequency(Person); PrVariance := CountVariance(PrMeanFreq,Person); EigenSort(PrVariance,PrEigenVector,PrEigenValue,PrSort; ArrayBeda[i] := Recognice(Gambar) End; Hurufke := Terkecil(ArrayBeda); WaktuSelesai := Time; Fgauge.Close; FGauge.Height := 238;
If ArrayBeda[Hurufke] <= Cd * ArrHuruf[Hurufke].Critical Then Begin ST_Status.Font.Color := clBlue; Str(ArrayBeda[Hurufke],S); ST_Dissimilarity.Caption := S; Str(Hurufke,S); ST_Status.Caption:='(' + S + ')' + ArrHuruf[Hurufke].Name; End Else Begin ST_Status.Font.Color := clRed; Str(ArrayBeda[Hurufke],S); ST_Dissimilarity.Caption := S; Str(Hurufke,S); ST_Status.Caption := '(' + S + ')' + ' Tidak Terdaftar' ; End; //Hitung waktu proses DecodeTime(WaktuMulai,JamMulai,Menit,Detik,MDetik); MDetikMulai :=((JamMulai*60+Menit)*60 + Detik)*1000 + MDetik; DecodeTime(WaktuSelesai,JamSelesai,Menit,Detik,MDetik); If JamSelesai >= JamMulai Then MDetikSelesai:=((JamSelesai*60+Menit)*60+Detik)*1000+MDetik Else //antisipasi melewati jam 12 MDetikSelesai:=(((JamSelesai+12)*60+Menit)*60+Detik)*1000 MDetik; TotalWaktu := MDetikSelesai - MDetikMulai; ST_Time.Caption := ' ' + FloatToStr(TotalWaktu) + ' Milli Second'; end;
Grup 2 Grup 2 adalah panel untuk tempat memilih Aksara Bali yang akan dikenali, baik nama file, filter, drive, maupun directory citra Aksara.
Nomor 2a adalah filter combo box, yang digunakan untuk menyaring filefile yang ditampilkan yaitu file-file citra yang penamaannya disesuaikan khusus untuk citra Aksara Bali pada penelitian ini, filter tersebut adalah : All Bitmap File (*.bmp), adalah filter untuk semua nama file citra bitmap. Nomor 2b adalah file list box yang digunakan untuk tempat menampilkan nama-nama file citra yang telah disaring menurut filter yang telah dipilih, dari nama-nama file ini dipilih Aksara Bali mana saja yang akan dikenali. Nomor 2c adalah drive combo box yang digunakan untuk memilih drive. Nomor 2d adalah directory list box yang digunakan sebagai tempat untuk memilih direktori. Tombol Select digunakan untuk memilih nama file yang akan dikenali.
Grup 3 List of Selected Files Grup 3 adalah panel untuk tempat menampilkan daftar Aksara bali yang telah dipilih dan akan dikenali, beserta tombol-tombol untuk mengurangi pilihan dan melihat hasil pengenalan. Nomor 3a adalah obyek list box, yang digunakan untuk menampung namanama file citra Aksara Bali terpilih yang akan dikenali. Tombol Verify List digunakan untuk menjalankan proses pengenalan terhadap file-file citra Aksara Bali yang ada dalam daftar dan selanjutnya menampilkan hasilnya dalam form FRptGroup.frm. Adapun program yang dijalankan adalah sebagai berikut : procedure TFUtama.SBVerifyListClick(Sender: TObject); var i,j,k, HurufKe : byte; S : String; Beda : Real; WaktuMulai, WaktuSelesai : TDateTime;
JamMulai, JamSelesai, Menit, Detik, MDetik : Word; MDetikMulai, MDetikSelesai, TotalWaktu : Double; Gambar : TGambar; ArrayBeda : TArrBeda; begin FGauge.Gauge1.Progress := 0; FGauge.Gauge2.Progress := 0; FGauge.Label4.Caption := IntToStr(CounterList); FGauge.Show; FGauge.Refresh; For i := 0 To PrevCounterList-1 Do For j := 0 To 3 Do FRptGroup.StringGrid1.Cells[j,i] := ''; WaktuMulai := Time; For i := 1 To CounterList Do Begin Image1.Picture.LoadFromFile(ListBox2.Items[i-1]); Gambar := BacaHuruf; for k := 1 to BanyakHuruf do Begin {Mencari Variance,EigenVektor,EigenValuedan MeanFrek} Person := ArrHuruf[k]; PrMeanFreq := CountMeanFrequency(Person); PrVariance := CountVariance(PrMeanFreq,Person); EigenSort(PrVariance,PrEigenVector,PrEigenValue, PrSort); ArrayBeda[k] := Recognice(Gambar) End; Hurufke := Terkecil(ArrayBeda); FRptGroup.StringGrid1.Cells[0,i-1] := IntToStr(i); FRptGroup.StringGrid1.Cells[1,i-1] := ListBox1.Items[i-1]; Str(ArrayBeda[Hurufke],S); FRptGroup.StringGrid1.Cells[2,i-1] := S; Str(Hurufke,S); If ArrayBeda[Hurufke]<= Cd*ArrHuruf[Hurufke].Critical Then FRptGroup.StringGrid1.Cells[3,i-1] := '(' + S + ')' + ArrHuruf[Hurufke].Name Else FRptGroup.StringGrid1.Cells[3,i-1] := '(' + S + ')' + ' Tidak Terdaftar'; FGauge.Gauge2.Progress := (i*100) div CounterList; End; WaktuSelesai := Time; Fgauge.Close; PrevCounterList := CounterList; //Hitung waktu proses DecodeTime(WaktuMulai,JamMulai,Menit,Detik,MDetik); MDetikMulai :=((JamMulai*60+Menit)*60 + Detik)*1000 + MDetik; DecodeTime(WaktuSelesai,JamSelesai,Menit,Detik,MDetik); If JamSelesai >= JamMulai Then MDetikSelesai := ((JamSelesai*60+Menit)*60+Detik)*1000 +MDetik Else //antisipasi melewati jam 12
MDetikSelesai :=(((JamSelesai+12)*60+Menit)*60+ Detik)*1000 + MDetik; TotalWaktu := MDetikSelesai - MDetikMulai; FRptGroup.STVer.Caption := ' ' + IntToStr(CounterList); FRptGroup.STTime.Caption := ' ' + FloatToStr(TotalWaktu) + ' Milli Second'; SBResult.Enabled := True; FRptGroup.Position := poScreenCenter; FRptGroup.ShowModal; end;
Tombol New List digunakan untuk mengosongkan daftar nama file yang ada pada obyek list box nomor 3a. Tombol Unselect digunakan untuk membuang nama file citra Aksara Bali yang ditunjuk pada obyek list box nomor 3a. Tombol Result digunakan untuk melihat kembali daftar hasil pengenalan yang telah dilakukan sebelumnya dengan memanggil form FRptGroup.frm. Grup 4 Grup 4 merupakan panel tempat tombol-tombol perintah umum yang digunakan dalam sistem pengenalan ini. Adapun tombol-tombolnya adalah : Tombol About digunakan untuk memanggil form FSignAbout.frm yang berisi informasi tentang sistem pengenalan. Tombol Setting digunakan untuk memanggil form FSetEnv.frm yang berisi tempat untuk mengubah nilai variabel lingkungan sistem. Tombol Enrollment digunakan untuk memanggil form FEnrollGroup.frm yang merupakan tempat pendaftaran aksara baru. Tombol Browse digunakan untuk memanggil form FBrowse.frm yang berisi nama-nama aksara yang telah terdaftar pada basisdata acuan. Tombol New Model digunakan untuk memasukkan pola model baru ke file referensi melalui pemanggilan form FModel.frm.
Tombol Show Model digunakan untuk menampilkan pola model referensi yang telah ada melalui pemanggilan form FModel.frm. Tombol Exit digunakan untuk keluar dari sistem pengenalan.
Selain fungsi dan prosedur yang telah dipaparkan di atas, juga ada beberapa fungsi dan prosedur penting lainnya dalam unit Sign1.pas ini. Fungsi dan prosedur tersebut diantaranya : Rutin untuk menghitung nilai eigen serta vektor eigen procedure ROTATE(s, tau : real; var ATemp : TVariance; i,j,k,l : integer); var g, h : real; begin g := ATemp[i,j]; h := ATemp[k,l]; ATemp[i,j] := g-s*(h+g*tau); ATemp[k,l] := h+s*(g-h*tau); end; procedure Jakobi(A :TVariance;var V : TVariance; var D:TMeanFrequency); var B,Z : array[1..DimVector67] of real; ip,iq, i, j : integer; sm,tresh,theta,t,c,s,tau,g,h : double; begin for ip := 1 to DimVector do begin for iq := 1 to DimVector do V[ip,iq] := 0; V[ip,ip] := 1; B[ip] := A[ip,ip]; D[ip] := A[ip,ip]; Z[ip] := 0; end; for i := 1 to 50 do begin sm := 0; for ip := 1 to DimVector-1 do for iq := ip+1 to DimVector do sm := sm + abs(A[ip,iq]); if sm = 0 then exit; if i < 4 then tresh := 0.2*sm/(DimVector*DimVector) else tresh := 0; for ip := 1 to DimVector-1 do begin for iq := ip+1 to DimVector do begin g := 100 * abs(A[ip,iq]);
if ((i>4) and ((abs(d[ip])+g) = abs(d[ip])) and ((abs(d[iq])+g) = abs(d[iq]))) then A[ip,iq] := 0 else if abs(A[ip,iq]) > tresh then begin h := d[iq]-d[ip]; if ((abs(h)+g) = abs(h)) then t := A[ip,iq]/h else begin theta := 0.5*h/A[ip,iq]; t := 1/(abs(theta)+sqrt(1+theta*theta)); if theta < 0 then t := -t; end; c := 1/sqrt(1+t*t); s := t*c; tau := s/(1+c); h := t*A[ip,iq]; Z[ip] := Z[ip] - h; Z[iq] := Z[iq] + h; D[ip] := D[ip] - h; D[iq] := D[iq] + h; A[ip,iq] := 0; for j := 1 to ip-1 do ROTATE(s,tau,A,j,ip,j,iq); for j := ip+1 to iq-1 do ROTATE(s,tau,A,ip,j,j,iq); for j := iq+1 to DimVector do ROTATE(s,tau,A,ip,j,iq,j); for j := 1 to DimVector do ROTATE(s,tau,V,j,ip,j,iq); end; end; end; for ip := 1 to DimVector do begin b[ip] := b[ip] + z[ip]; d[ip] := b[ip]; z[ip] := 0; end; end; ShowMessage('error : terlalu banyak iterasi'); end; procedure Eigensort(A : TVariance; var V : TVariance; var D : TMeanFrequency; var Urut : TSort); var i,j,k,temp : integer; pe : real; TD : TMeanFrequency; begin for i:= 1 to DimVector do begin D[i] := 0; Urut[i] := i; end; Jakobi(A,V,D); TD := D; for i := 1 to DimVector do begin pe := TD[i]; k := i; for j := i+1 to DimVector do if TD[j] >= pe then
begin pe := TD[j]; k := j; end; if k <> i then begin TD[k] := TD[i]; TD[i] := pe; temp := Urut[i]; Urut[i] := Urut[k]; Urut[k] := temp; end; end; end;
Prosedur untuk menghitung frekuensi kemunculan pola model procedure CountFrequency(var Freq:TFrequency; Gambar : TGambar); var i,j,x,y : integer; CountPattern : byte; cocok : boolean; awalX_L, awalY_L,akhirX_L, akhirY_L : byte; begin awalX_L := 1; awalY_L := 1; akhirX_L := SignHeigh; akhirY_L := SignWidth; for i := 1 to DimVector do freq[i] := 0; for CountPattern := 1 to JumPattern do begin ModelPattern := ArrMOdelPattern[CountPattern]; for x := (awalX_L-4) to (akhirX_L - 4) do for y := (awalY_L-4) to (akhirY_L - 4) do begin i := 0; cocok := true; repeat inc(i); j := 0; repeat inc(j); if ((i+x-1)
0 then cocok := false; end else if ModelPattern.Pattern[i-1,j-1] <> gambar[i+x-1,j+y-1] then cocok := false; until (cocok = false) or (j = 5); until (cocok = false) or (i = 5); if (cocok = true) and (i=5) and (j=5) then inc(Freq[ModelPattern.Model]); end; FGauge.Gauge1.Progress := CountPattern; end; end;
Rutin untuk menghitung matriks varians function CountMeanFrequency(sampel: TPersonSign) : TmeanFrequency; var i : integer; bantu : word; Mi : byte; begin for i := 1 to DimVector do begin bantu := 0; for Mi := 1 to Number do bantu := bantu + sampel.freq[i,Mi]; CountMeanFrequency[i] := bantu / number; end; end;
function CountFreqMinMean(Mean : TMeanFrequency; Pr : TPersonSign) : TFreqMinMean; var i,j : integer; begin for i := 1 to Number do for j := 1 to DimVector do CountFreqMinMean[j,i] := Pr.Freq[j,i];//-Mean[j]; end;
function CountVariance(Mean : TMeanFrequency; Pr : TpersonSign): TVariance; var Bantu : TVariance; i,j,k : integer; temp : real; vector : TFreqMinMean; begin Vector := CountFreqMinMean(Mean,Pr); for i := 1 to DimVector do for j := 1 to DimVector do begin Temp := 0; for k := 1 to Number do Temp := Temp + Vector[i,k]*Vector[j,k]; Bantu[i,j] := Temp/Number; end; CountVariance := Bantu; end;
Rutin untuk menghitung nilai ketidaksamaan function CountZ1(L : TVariance; k : integer; X : TFrequency; Urut : TSort) : real; var bantu : real; i : integer; begin bantu := 0; for i := 1 to DimVector do bantu := bantu + L[i,Urut[k]]*X[Urut[i]]; CountZ1 := bantu; end;
function CountZ2(L : TVariance; k : integer; X : TMeanFrequency; Urut : TSort) : real; var bantu : real; i : integer; begin bantu := 0; for i := 1 to DimVector do bantu := bantu + L[i,Urut[k]]*X[Urut[i]]; CountZ2 := bantu; end;
function CountDissimilarity (L : TVariance; Lamda, XMean : TMeanFrequency; X : TFrequency; Urut : TSort) : real; var dis1, dis2 : real; k : integer; begin dis1 := 0; for k := 1 to qi do begin if Lamda[Urut[k]] <> 0 then dis1 := dis1 + (SQR(CountZ1(L,k,X,Urut)countZ2(L,k,XMean,Urut))/Lamda[Urut[k]]) else begin if error <> 2 then Error := 1; exit; end; end; dis2 := 0; for k := qi+1 to DimVector do dis2 := dis2 + (SQR(CountZ1(L,k,X,Urut)countZ2(L,k,XMean,Urut))/Lamda[Urut[qi]]); CountDissimilarity := dis1 + dis2; end;
Rutin pengenalan Function BacaHuruf : TGambar; var i,j : byte; Gambar : TGambar; Begin for i := 1 to SignHeigh do for j := 1 to SignWidth do Gambar[i,j] := 0; for i := 0 to SignHeigh-1 do for j := 0 to SignWidth-1 do Begin if FUtama.Image1.Canvas.Pixels[j,i] (clWhite div 3)) Then Gambar[i+1,j+1] := 0 else Gambar[i+1,j+1] := 1; End; BacaHuruf := Gambar; End;
>=
(clWhite
-
Function Recognice(Gambar : TGambar) : Real; Var FreqCounterSign : TFrequency; Begin CountFrequency(FreqCounterSign,Gambar); Recognice := CountDissimilarity(PrEigenVector, PrEigenValue,PrMeanFreq,FreqCounterSign,PrSort); End;
3.5.2.3 Form Pendaftaran Form pendaftaran diberi nama FEnrollGroup.frm (terlihat pada Gambar 3.6) dengan unit programnya bernama UEnrollGroup.pas. Form ini digunakan sebagai form tempat pendaftaran aksara baru yang datanya akan dimasukkan ke dalam file basisdata acuan. Dalam sekali pemanggilannya bisa digunakan untuk mendaftarkan lebih dari satu aksara baru. Selain itu form ini juga digunakan untuk menampilkan citra Aksara Bali acuan tersebut
2
4
3
1
6
7
5
Gambar 3.6 Tampilan Form Pendaftaran
Nomor 1 adalah tempat untuk menampilkan nomor identitas Aksara Bali yang akan didaftarkan. Nomor 2 adalah tempat memasukkan atau menampilkan nama Aksara Bali. Nomor 3 adalah tempat untuk menampilkan waktu proses. Nomor 4 adalah tempat menampilkan citra Aksara Bali acuan. Nomor 5 adalah tempat menampilkan nilai beda antara aksara acuan dengan aksara pembanding C1. Nomor 6 adalah tempat menampilkan nilai beda antara aksara acuan dengan aksara pembanding C2. Nomor 7 adalah tempat menampilkan nilai beda antara aksara acuan dengan aksara pembanding C3. Tombol Close digunakan untuk keluar dari form pendaftaran. Adapun program yang dijalankan adalah sebagai berikut : procedure TFEnrollGroup.BBProcessClick(Sender: TObject); var Mi,Ms : byte; i,j, Code : integer; TempPerson : THuruf; Freq : TFrequency; EGMeanFreq, EGEigenValue: TMeanFrequency; TempFreq :Array[1..DimVector67,1..3] Of Real; EGVariance,EGEigenVector : TVariance; EGSort : TSort; Temp : Array[1..3] of Real; S : String; IDNumber : word; Dissimilarity, Selisih, selisih2, bantu : real; Gambar : TGambar; WaktuMulai, WaktuSelesai : TDateTime; JamMulai, JamSelesai, Menit, Detik, MDetik : Word; MDetikMulai, MDetikSelesai, TotalWaktu : Double; k : String; begin BBProcess.Enabled := False; error := 0; FGauge.Show; FGauge.Label4.Caption := '6'; FGauge.Refresh; FGauge.Gauge1.Progress := 0; FGauge.Gauge2.Progress := 0;
WaktuMulai := Time; Val(EdIDNumber.Text,IDNumber,Code); TempPerson.IDNumber := IDNumber; TempPerson.Name := EdName.Text; TempPerson.RefFileName := RefFileName; For Mi := 1 to Number do Begin Image1.Picture.LoadFromFile(ListBox2.Items[Mi-1]); AwalX := 1;//PosGambar[1].AwalX; AkhirX := 1;//PosGambar[1].AkhirX; AwalY := 1;//PosGambar[1].AwalY; AkhirY := 1;//PosGambar[1].AkhirY; for i := 1 to SignHeigh do for j := 1 to SignWidth do Gambar[i,j] := 0; for i := AwalX to AkhirX do for j := AwalY to AkhirY do Begin if Image1.Canvas.Pixels[j,i] >= (clWhite (clWhite div 3)) Then Gambar[i-AwalX+1,j-AwalY+1] := 0 else Gambar[i-AwalX+1,j-AwalY+1] := 1; End; CountFrequency(Freq, Gambar); for i := 1 to DimVector do TempPerson.freq[i,Mi] := Freq[i];
-
FGauge.Gauge2.Progress := 10*Mi; End; EGMeanFreq := CountMeanFrequency(TempPerson); EGVariance := CountVariance(EGMeanFreq, TempPerson); EigenSort(EGVariance,EGEigenVector, EGEigenValue, EGSort); FGauge.Gauge2.Progress := 70; For Ms := 1 to 3 do Begin Image1.Picture.LoadFromFile(LstBox2.Items[Number+Ms1]); for i := 1 to SignHeigh do for j := 1 to SignWidth do Gambar[i,j] := 0; for i := AwalX to AkhirX do for j := AwalY to AkhirY do Begin if Image1.Canvas.Pixels[j,i] >= (clWhite (clWhite div 3)) Then Gambar[i-AwalX+1,j-AwalY+1] := 0 else Gambar[i-AwalX+1,j-AwalY+1] := 1; End; CountFrequency(Freq, Gambar);
-
Dissimilarity:=CountDissimilarity(EGEigenVector,EGEige nValue, EGMeanFreq,Freq,EGSort); If error = 1 Then Begin EdDissC1.Text := '';
EdDissC2.Text := ''; EdDissC3.Text := ''; ShowMessage('Divided by zero, next or be smaller Qi !') End else Begin TempPerson.ADis[Ms] := Dissimilarity; Temp[Ms] := Dissimilarity; Str(Temp[Ms], S); Case Ms of 1 : EdDissC1.Text := S; 2 : EdDissC2.Text := S; 3 : EdDissC3.Text := S; End; End; FGauge.Gauge2.Progress := 10*(Ms+7); End; If Error <> 1 Then Begin for i := 1 to 2 do for j := i+1 to 3 do if Temp[i] < Temp[j] Then Begin bantu := Temp[i]; Temp[i] := Temp[j]; Temp[j] := bantu; End; TempPerson.Critical := Temp[2]; Write(FileReference,TempPerson); Inc(BanyakHuruf); ArrHuruf[BanyakHuruf] := TempPerson; FUtama.SBVerify.Enabled := True; FUtama.SBBrowsePerson.Enabled := True; End; WaktuSelesai := Time; FGauge.Close; //Hitung waktu proses DecodeTime(WaktuMulai,JamMulai,Menit,Detik,MDetik); MDetikMulai := ((JamMulai*60+Menit)*60+ Detik)*1000 + MDetik; DecodeTime(WaktuSelesai,JamSelesai,Menit,Detik,MDetik); If JamSelesai >= JamMulai Then MDetikSelesai :=((JamSelesai*60 + Menit)*60 + Detik)*1000 + MDetik Else //antisipasi melewati jam 12 MDetikSelesai := (((JamSelesai+12)*60 + Menit)*60 + Detik) *1000 + MDetik; TotalWaktu := MDetikSelesai - MDetikMulai; STTime.Caption := ' Second'; EdIDNumber.SetFocus; //FCoba1.Show; end;
' + FloatToStr(TotalWaktu) + '
Milli
3.5.2.4 Form-Form Pendukung Form-form pendukung sistem adalah form-form tambahan yang digunakan oleh sistem pengenalan untuk menampilkan informasi atau mengerjakan bagianbagian yang tidak bisa dikerjakan pada form utama karena keterbatasan tempat. Adapun form-form tersebut adalah sebagai berikut :
Gambar 3.7 Tampilan Form Daftar Aksara Bali Form Daftar Aksara Bali Form daftar Aksara Bali dinamakan FBrowse.frm seperti yang terlihat pada Gambar 3.7 dengan unit UBrowse.pas digunakan sebagai tempat untuk menampilkan data aksara yang telah terdaftar pada file basisdata acuan. Data tersebut diantaranya nomor identitas aksara, nama aksara, nilai ambang dan nilai ketidaksamaan aksara acuan dengan aksara pembanding C1, C2 dan C3.
Form Lingkungan Sistem Form lingkungan sistem dinamakan FSetEnv.frm seperti yang terlihat pada Gambar 3.8 dengan unit USetEnv.pas digunakan sebagai tempat untuk mengubah variabel-variabel lingkungan sistem, seperti memilih pola model yang digunakan (memakai obyek radio button), nomor pemotongan nilai eigen (Q) dan koefisien pengali nilai kritis (Cd). Setelah dilakukan perubahan nilai salah satu variabel, maka sistem akan secara otomatis mengaktifkan file-file yang sesuai dengan variabel itu, baik file basisdata acuan maupun file pola model.
b Gambar 3.8 Tampilan Form Lingkungan Sistem Form Pola Model Form pola model dinamakan FModel.frm seperti yang terlihat pada Gambar 3.9 dengan unit UModel.pas digunakan sebagai tempat untuk menampilkan pola model yang sedang aktif dan memasukkan pola model baru yang akan digunakan dalam sistem pengenalan. Form pola model akan menampilkan sebuah pola dalam tabel berukuran 5 x 5 kotak beserta nomor urut
dan nomor modelnya. Form ini juga menyediakan fasilitas untuk menyimpan pola model (melalui tombol Save), untuk melihat pola nomor urut sebelumnya (menggunakan tombol Back), serta pola nomor urut sesudahnya (menggunakan tombol Next). Form Indikator Proses Form indikator proses dinamakan FGauge.frm seperti yang terlihat pada Gambar 3.10 dengan unit UTtdGauge.pas digunakan sebagai tempat indikator proses pengenalan sedang berlangsung, baik pengenalan untuk sebuah Aksara bali maupun pengenalan Aksara Bali secara berkelompok. Indikator ini memanfaatkan fasilitas obyek gauge. Form Informasi Sistem Form informasi sistem dinamakan FSignAbout.frm seperti yang terlihat pada Gambar 3.11 dengan unit USignAbout.pas digunakan sebagai tempat untuk menampilkan informasi tentang sistem pengenalan. Informasi ini berupa judul sistem, gambar, nama pengembang sistem, serta nama instansi program pascasarjana
Gambar 3.9 Tampilan Form Pola Model
Gambar 3.10 Tampilan Form Indikator Proses
Gambar 3.11 Tampilan Form Informasi Sistem
Suka-duka, tangisan-senyuman, sukses-gagal, hanyalah aliran kehidupan yang datang dengan pesannya masing-masing. (Gede Prama)
BAB IV HASIL DAN PEMBAHASAN
BAB IV HASIL DAN PEMBAHASAN
4.1 Pengujian Pembuatan sistem pengenalan Aksara Bali dalam penelitian ini memakai pola-pola model dari Metode Pola Busur Terlokalisasi untuk mengekstraksi ciri Aksara Bali masukan. Di samping menggunakan 52 buah pola (dikelompokkan menjadi 42 pola model) seperti yang terlihat pada Gambar 2.4, juga akan dipakai pola model baru yang pembuatannya tetap mengacu kepada batasan yang ada dalam Metode Pola Busur Terlokalisasi ini, yaitu lokalisasi permasalahan pada pola model yang didefinisikan di dalam sebuah bujur sangkar kecil berukuran 5 x 5, tetapi pemilihannya berbasis pada sampel Aksara Bali yang dimasukkan.
4.1.1
Pembentukan Pola Model Pola-pola yang dibentuk oleh titik karakteristik dalam bujur sangkar 5 x 5
menghasilkan 125 buah kemungkinan pola awal dan bisa dikelompokkan menjadi 103 pola model awal seperti terlihat pada Gambar 4.1(a) dan 4.1(b) berikut ini.
No.1 Model 1
No.2 Model 2
No.3 Model 3
No.4 Model 4
No.5 Model 5
No.6 Model 6
No.7 Model 7
No.8 Model 8
No.9 Model 9
No.10 Model 10
No.11 Model 11
No.13 Model 13
No.14 Model 14
No.12 Model 12
No.18 Model 18
No.19 Model 19
No.15 Model 15
No.16 Model 16
No.17 Model 17
No.20 Model 20
No.21 Model 21
No.22 Model 22
No.23 Model 23
No.24 Model 24
No.25 Model 25
No.26 Model 26
No.27 Model 27
No.28 Model 28
No.30 Model 30
No.31 Model 31
No.32 Model 32
No.33 Model 33
No.29 Model 29
No.34 Model 34
No.35 Model 35
No.36 Model 36
No.37 Model 37
No.38 Model 38
No.39 Model 39
No.40 Model 40
No.41 Model 41
No.42 Model 42
No.43 Model 43
No.44 Model 44
No.45 Model 45
No.46 Model 46
No.47 Model 47
No.48 Model 48
No.49 Model 49
No.50 Model 50
No.51 Model 51
No.52 Model 52
No.53 Model 53
No.54 Model 54
No.55 Model 55
No.58 Model 58
No.59 Model 59
No.60 Model 59
No.61 Model 59
No.62 Model 60
No.57 Model 57
No.56 Model 56
No.63 Model 61
Gambar 4.1 (a) Kemungkinan pola-pola dari Pola Busur Terlokalisasi untuk Pola Bujursangkar 5X5 (nomor urut 1 sampai 63)
No.64 Model 61
No.65 Model 61
No.67 Model 63
No.68 Model 64
No.73 Model 66
No.74 Model 66
No.75 Model 67
No.66 Model 62
No.70 Model 64
No.71 Model 65
No.69 Model 64
No.72 Model 66
No.76 Model 68
No.77 Model 69
No.78 Model 69
No.79 Model 70
No.81 Model 71
No.82 Model 72
No.83 Model 73
No.84 Model 74
No.85 Model 74
No.86 Model 75
No.87 Model 76
No.80 Model 71
No.88 Model 76
No.89 Model 77
No.90 Model 78
No.91 Model 78
No.98 Model 84
No.92 Model 79
No.93 Model 80
No.94 Model 81
No.95 Model 81
No.96 Model 82
No.97 Model 83
No.99 Model 85
No.100 Model 86
No.106 Model 92
No.101 Model 87
No.107 Model 92
No.103 Model 89
No.108 Model 92
No.109 Model 93
No.104 Model 90
No.105 Model 91
No.102 Model 88
No.110 Model 94
No.111 Model 94
No.112 Model 94
No.113 Model 95
No.114 Model 96
No.115 Model 97
No.116 Model 98
No.117 Model 98
No.118 Model 98
No.119 Model 99
No.121 Model 101
No.123 Model 101
No.124 Model 102
No.122 Model 101
No.125 Model 103
No.120 Model 100
Gambar 4.1(b) Kemungkinan pola-pola dari Pola Busur Terlokalisasi untuk Pola Bujursangkar 5X5 (nomor urut 64 sampai 125)
4.1.2
Pemilihan Pola Model Pengurangan waktu proses dilakukan dengan pemilihan pola dari 125 pola
di atas yang memang sering muncul pada Aksara Bali. Pemilihan pola-pola itu dilakukan dengan menggunakan bantuan program untuk menghitung keseringan muncul masing-masing pola tersebut pada sejumlah citra biner Aksara Bali. Sampel data yang dipergunakan untuk membentuk pola model dalam penelitian sebanyak 600 buah citra Aksara Bali yang diambil dari beberapa buku cetak dan internet. Adapun tipe data dan potongan program (berupa fungsi dan prosedur) yang dipergunakan adalah sebagai berikut: SignWidth = 165; SignHeigh = 140; MaxModel = 1500; PatternName125 = 'WModel125.dat'; type TPattern = array[0..4,0..4] of byte; TAGambar = array[1..SignHeigh,1..SignWidth] of byte; TWModelPattern = record Nomor : byte; Model : byte; Pattern : TPattern; Freq : word; end; TWArrModelPattern = array [1..125] of TWModelPattern; var WArrModelPattern TotalSampelSign
: TWArrModelPattern; : word;
function BacaGambar : TAGambar; var i,j : byte; Gambar : TAGambar; begin for i := 1 to SignHeigh do for j := 1 to SignWidth do Gambar[i,j] := 0; for i := 0 to SignHeigh-1 do for j := 0 to SignWidth-1 do begin if FModelDesign.Image1.Canvas.Pixels[j,i] >= (clWhite - (clWhite div 3)) Then Gambar[i+1,j+1] := 0 else Gambar[i+1,j+1] := 1; end;
BacaGambar := Gambar; end;
procedure TFModelDesign.SBCount125Click(Sender: TObject); var NSign : word; Gambar : TAGambar; i,j,x,y : integer; cocok : boolean; NM : byte awalX_L, awalY_L,akhirX_L, akhirY_L : byte; begin awalX_L := 1; akhirX_L := SignHeigh; awalY_L := 1; akhirY_L := SignWidth; for NM := 1 to 125 do WArrModelPattern[NM].Freq := 0; for NSign := 1 to TotalSampelSign do begin Image1.Picture.LoadFromFile(ListBox2.Items[NSign-1]); Gambar := BacaGambar; for NM := 1 to 125 do begin for x := (awalX_L-4) to (akhirX_L - 4) do for y := (awalY_L-4) to (akhirY_L - 4) do begin i := 0; cocok := true; repeat inc(i); j := 0; repeat inc(j); if ((i+x-1) 0 then cocok := false; end else if WArrModelPattern[NM].Pattern[i-1,j-1] <> Gambar[i+x-1,j+y-1] then cocok := false; until (cocok = false) or (j = 5); until (cocok = false) or (i = 5); if (cocok = true) and (i=5) and (j=5) then inc(WArrModelPattern[NM].Freq); end; end; end; end;
Setelah dieksekusi dengan mempergunakan 600 buah sampel citra Aksara Bali, hasil dari potongan program di atas adalah berupa cacah keseringan muncul masing-masing pola model yang tersimpan pada variabel freq dalam variabel
WArrModelPattern. Tabel cacah keseringan muncul dari 125 pola tersebut seperti terlihat pada Tabel 4.1. Tabel 4.1 Frekuensi kemunculan masing-masing pola pada 600 citra biner Aksara Bali No Model Freq 1
1
2
2
489
3
3
4
No Model Freq No Model Freq No Model Freq No Model Freq
36365 26
26
19
51
51
0
76
68
0
101
87
0
27
27
0
52
52
0
77
69
0
102
88
8
223
28
28
9
53
53
0
78
69
0
103
89
0
4
743
29
29
0
54
54
2
79
70
0
104
90
15
5
5
226
30
30
0
55
55
6
80
71
0
105
91
0
6
6
244
31
31
15
56
56
0
81
71
0
106
92
1
7
7
5
32
32
0
57
57
0
82
72
0
107
92
0
8
8
171
33
33
6
58
58
58154 83
73
0
108
92
0
9
9
4
34
34
1
59
59
0
84
74
0
109
93
3
10
10
23
35
35
0
60
59
0
85
74
0
110
94
0
11
11
8
36
36
1
61
59
0
86
75
0
111
94
0
12
12
49
37
37
0
62
60
0
87
76
0
112
94
0
13
13
14
38
38
0
63
61
0
88
76
0
113
95
0
14
14
68
39
39
0
64
61
0
89
77
0
114
96
0
15
15
0
40
40
0
65
61
2
90
78
5
115
97
1
16
16
0
41
41
0
66
62
0
91
78
0
116
98
0
17
17
0
42
42
0
67
63
17262 92
79
6
117
98
1
18
18
0
43
43
0
68
64
2
93
80
2
118
98
0
19
19
30
44
44
0
69
64
0
94
81
0
119
99
0
20
20
0
45
45
0
70
64
0
95
81
0
120
100
0
21
21
0
46
46
11319 71
65
0
96
82
126 121
101
0
22
22
0
47
47
10
72
66
0
97
83
539 122
101
0
23
23
0
48
48
0
73
66
0
98
84
0
123
101
3
24
24
0
49
49
8896 74
66
0
99
85
7
124
102
3
25
25
0
50
50
67
0
100
86
32
125
103
0
2
75
Hasil dari model pola yang didapat, kemudian diurutkan berdasarkan frekuensi kemunculan terbanyak, hasilnya dapat dilihat pada Tabel 4.2.
Tabel 4.2 Frekuensi kemunculan masing-masing pola pada 600 citra Aksara Bali yang sudah diurut No Model Freq
No Model Freq No Model Freq No Model Freq No Model Freq
1
58
58154
26
11
8
51
103
0
76
92
0
101
87
0
2
1
36365
27
85
7
52
98
0
77
94
0
102
69
0
3
63
17262
28
79
6
53
68
0
78
59
0
103
69
0
4
46
11319
29
33
6
54
92
0
79
103
0
104
70
0
5
49
8896
30
55
6
55
78
0
80
17
0
105
71
0
6
4
743
31
78
5
56
64
0
81
38
0
106
71
0
7
83
539
32
7
5
57
84
0
82
44
0
107
72
0
8
2
489
33
9
4
58
81
0
83
66
0
108
56
0
9
6
244
34
102
3
59
101
0
84
62
0
109
74
0
10
5
226
35
93
3
60
66
0
85
53
0
110
75
0
11
3
223
36
101
3
61
101
0
86
57
0
111
76
0
12
8
171
37
64
2
62
73
0
87
66
0
112
76
0
13
82
126
38
50
2
63
94
0
88
41
0
113
95
0
14
14
68
39
61
2
64
81
0
89
35
0
114
77
0
15
12
49
40
54
2
65
24
0
90
100
0
115
59
0
16
86
32
41
80
2
66
52
0
91
27
0
116
37
0
17
19
30
42
34
1
67
95
0
92
30
0
117
45
0
18
10
23
43
92
1
68
51
0
93
29
0
118
64
0
19
26
19
44
98
1
69
22
0
94
25
0
119
60
0
20
90
15
45
97
1
70
59
0
95
16
0
120
65
0
21
31
15
46
36
1
71
15
0
96
48
0
121
61
0
22
13
14
47
94
0
72
40
0
97
21
0
122
23
0
23
47
10
48
48
0
73
99
0
98
42
0
123
66
0
24
28
9
49
98
0
74
32
0
99
91
0
124
61
0
25
88
8
50
43
0
75
94
0
100
18
0
125
75
0
Cacah keseringan muncul dari masing-masing pola seperti yang terlihat pada Tabel 4.2 dipergunakan sebagai bahan pertimbangan untuk memilih pola model sistem yaitu dengan menentukan batas cacah terkecil keseringan muncul, tetapi sebelumnya dilakukan penjumlahan frekuensi kemunculan pola-
pola dengan model yang sama. Batas terkecil yang dipakai adalah 10 kali. Hasilnya adalah 23 pola model terpilih seperti terllihat pada Tabel 4.3. Tabel 4.3 Frekuensi kemunculan masing-masing pola pada 600 citra Aksara Bali yang sudah diurut dengan batasan terkecil 10 kali No Model Freq
No Model Freq
1
58
58154 13
82
126
2
1
36365 14
14
68
3
63
17262 15
12
49
4
46
11319 16
86
32
5
49
8896
17
19
30
6
4
743
18
10
23
7
83
539
19
26
19
8
2
489
20
90
15
9
6
244
21
31
15
10
5
226
22
13
14
11
3
223
23
47
10
12
8
171
Hasil dari ke 23 pola model tersebut akan diurutkan sesuai dengan nomor modelnya, sehingga diperoleh hasil seperti yang terlihat pada Tabel 4.4. Tabel 4.4 Frekuensi kemunculan masing-masing pola pada 600 citra Aksara Bali yang sudah diurut berdasarkan nomor model dengan batasan terkecil 10 No Model Freq 1
1
2
2
489
3
3
4
No Model Freq
36365 13
26
19
14
31
15
223
15
46
11319
4
743
16
47
10
5
5
226
17
49
8896
6
6
244
18
58
58154
7
8
171
19
63
17262
No Model Freq
No Model Freq
8
10
23
20
82
126
9
12
49
21
83
539
10
13
14
22
86
32
11
14
68
23
90
15
12
19
30
Hasil dari model pola yang didapat dari tabel diatas dapat digambarkan pada Gambar 4.2 dan setelah penomorannya disesuaikan maka diperoleh pola model seperti terlihat pada Gambar 4.3. Pola-pola inilah yang dipergunakan sistem untuk mengekstraksi ciri citra aksara.
Gambar 4.2 Pola-pola terpilih sebanyak 23 pola
Gambar 4.3 Pola-pola terpilih sebanyak 23 pola yang penomorannya telah disesuaikan
4.1.3
Penentuan Konstanta Efektifitas dan unjuk kerja metode pengenalan Aksara Bali yang digunakan dipengaruhi oleh nilai-nilai konstanta yang ditetapkan. Konstanta ini sebelum dipergunakan oleh sistem secara permanen, harus dilakukan pengujian terlebih dahulu dengan beberapa variasi yang disesuaikan dengan anjuran dari pustaka. Konstanta yang mempengaruhi sistem pengenalan Aksara Bali dengan menggunakan metode Pola Busur Terlokalisasi ada dua yakni : i.
Konstanta nomor pemotongan nilai eigen (q) Perhitungan nilai ketidaksamaan pada persamaan 3.7 terdapat sebuah konstanta yang nilainya ditentukan menurut hasil pengujian. Konstanta
ini adalah konstanta nomor pemotongan nilai eigen (q), yang mana q adalah bilangan integer positif yang kurang dari dimensi vektor kolom (p). Saat pembuatan basis data acuan, nilai q yang dicoba adalah mulai dari 1 sampai nantinya dihentikan pada nilai q yang memberikan pesan kesalahan bahwa telah terjadi proses pembagian dengan bilangan nol. Hal ini mengingat nilai eigen yang dihasilkan dengan urutan menurun pada nomor urut besar cenderung menghasilkan bilangan yang sangat kecil atau bahkan nol. Hal ini tentunya akan menyebabkan kesalahan sistem akan besar. Dari hasil pengujian terhadap variasi nilai q akan dipilih satu nilai yang mengakibatkan sistem mengalami kesalahan terkecil, dan seterusnya dipergunakan sebagai konstanta nomor pemotongan nilai eigen yang permanen dalam setiap melakukan pengenalan. ii. Konstanta pengali nilai ambang (Cd) Konstanta Cd merupakan koefisien pengali dari median nilai ketidaksamaan yang didapat pada saat pengenalan tiga Aksara Bali pembanding dengan Aksara Bali acuan yang didaftar (C), untuk menghasilkan nilai ambang atau nilai kritis (Cc). Pengujian terhadap Cd dilakukan pada nilai 2,0; 3,0; 4,0 dan 5,0 . Nilai ini dipakai agar nilai ambang yang dihasilkan tidak terlalu jauh menyimpang dari nilai C yang didapatkan. Jika Cd kurang dari 2,0 maka batas penerimaan akan sangat sempit sehingga prosentase kesalahan tidak dikenalinya karakter Aksara Bali tersebut akan besar. Sebaliknya jika Cd lebih besar dari 5,0 maka batas penerimaan akan terlalu lebar sehingga menyebabkan
kesalahan mengenali karakter Aksara Bali. Dari hasil pengujian sistem, nilai Cd yang memberikan prosentase kesalahan terkecil akan ditetapkan seterusnya sebagai konstanta pengali nilai ambang sistem pengenalan ini.
4.1.4
Tahap Pengujian Tahap-tahap pengujian sistem dilakukan sebagai berikut : i.
Pengumpulan karakter Aksara Bali acuan Karakter Aksara Bali acuan diambil dari sample data penelitian I Komang Gede Suamba Dharmayasa dan data yang diperoleh dari internet dengan cara melakukan pemotongan per blok karakter.
ii.
Pengumpulan karakter Aksara Bali uji Banyak dan variasi Aksara Bali yang diuji bervariasi sesuai dengan data yang dimiliki.
iii.
Ujicoba antarmuka sistem Sebelum dilakukan pengujian ke tahapan berikutnya, terlebih dahulu dilakukan dulu uji coba terhadap keseluruhan antarmuka sistem yang telah dibuat. Tujuannya adalah untuk mengetahui kesiapan komponenkomponen antarmuka sistem tersebut untuk mendukung pengujian sistem pengenalan selanjutnya.
iv.
Pendaftaran Aksara Bali acuan Aksara Bali yang telah dikumpulkan sebagai Aksara acuan selanjutnya didaftarkan melalui proses pendaftaran, yang pada intinya data Aksara Bali ini dimasukkan ke dalam file basis data acuan,
dimana setiap karakter bisa didaftarkan lebih dari sekali sesuai dengan variasi model citra karakter yang didapatkan. Setiap nilai konstanta pemotongan nilai eigen (q) terhubung dengan sebuah file basis data acuan, baik yang menggunakan pola model Aksara Bali maupun pola model tandatangan Indonesia. v.
Pengenalan Aksara Bali uji Setelah keseluruhan file basis data acuan selesai dibuat baru dilakukan pengenalan terhadap karakter Aksara Bali uji yang telah terkumpul.
4.1.5
Hasil Pengujian Adapun hasil pengujian yang dilakukan terhadap sistem pengenalan
karakter Aksara Bali dalam penelitian ini, sesuai dengan tahap-tahap yang telah dipaparkan di atas adalah sebagai berikut :
4.1.5.1 Ujicoba Antarmuka Sistem Gambar-gambar berikut ini adalah beberapa contoh tampilan antarmuka sistem pengenalan karakter Aksara Bali, yang mana kegunaan serta rancangannya sesuai dengan apa yang telah dipaparkan sebelumnya pada bab Perancangan dan Pembuatan Sistem Pengenalan sub bab Pemrograman.
Gambar 4.4 Tampilan awal sistem pengenalan
Gambar 4.5 Tampilan Setting Lingkungan untuk proses pendaftaran
Gambar 4.6 Contoh tampilan saat Aksara A diuji
Gambar 4.7 Contoh laporan hasil pengenalan
4.1.5.2 Pendaftaran karakter Aksara Bali Acuan Pada tahap pendaftaran yang bertujuan untuk mendaftarkan masingmasing karakter Aksara pada file basis data acuan, dari dua jenis pola model yang digunakan yaitu pola model Aksara Bali dan pola model tandatangan Indonesia, masing-masing memiliki file basis data acuan sendiri-sendiri untuk setiap konstanta pemotongan nilai eigen (q) yang dicobakan. Hasil pengujian berupa waktu proses dan nilai ambang terpilih Aksara Bali uji diperlihatkan dalam tabeltabel berikut. Tabel 4.5 Nilai ambang terpilih dengan menggunakan 23 pola model Aksara Bali
Threshold (q=1)
Threshold (q=2)
Threshold (q=3)
Threshold (q=4)
A
7,8356 x 10-3
2,6111 x 101
4,1528 x 102
4,1844 x 1014
2
A
3,5359 x 10-2
2,8208 x 101
4,1162 x 103
3,0881 x 1015
3
3
A
5,3718 x 10-2
2,9877 x 101
1,7439 x 1017
6,3372 x 1017
4
4
Adeg-adeg
3,4843 x 10-3
4,1283
3,4868 x 101
1,4751 x 1015
5
5
Adeg-adeg
3,5312 x 10-3
1,0355 x 101
2,9691 x 102
3,8614 x 1015
6
6
Adeg-adeg
1,8635 x 10-2
8,3574 x 101
4,8726 x 1015
8,6688 x 1016
7
7
Ba
6,1542 x 10-3
4,8289 x 101
3,2722 x 102
6,8846 x 1016
8
8
Ba
1,7686 x 10-2
5,4475 x 101
5,5792 x 102
1,3167 x 1017
9
9
Ba
3,8216 x 10-2
1,6810 x 1016
1,5766 x 1017
4,5468 x 1019
10
10
Ca
4,6162 x 10-3
6,6159
1,9444 x 102
9,8612 x 1015
11
11
Ca
2,2540 x 10-3
4,7262 x 1014
8,7554 x 1016
Error
12
12
Carik
4,9926 x 10-4
6,1385
6,1913 x 101
5,8130 x 1015
13
13
Carik
1,8823 x 10-4
4,8888 x 10-1
2,7572 x 101
1,6687 x 1014
14
14
Cecek
8,6293 x 10-4
1,7145
1,6507 x 102
5,1732 x 1014
15
15
Cecek
8,2661 x 10-3
1,4342 x 101
3,0979 x 102
5,7669 x 1015
16
16
Cecek
2,1929 x 10-2
2,1806 x 1016
4,1926 x 1019
Error
17
17
Da
1,8310 x 10-3
3,3838
1,9988 x 101
8,8574 x 1014
18
18
Da
2,6951 x 10-2
6,5725 x 101
7,0882 x 102
1,6984 x 1016
No
Id
1
1
2
Aksara
Threshold (q=1)
Threshold (q=2)
Threshold (q=3)
Threshold (q=4)
Da
5,9961 x 10-2
7,4486 x 1014
2,9995 x 1017
1,9849 x 1019
20
Ga
4,7171 x 10-3
3,3614
2,7621 x 102
2,0612 x 1016
21
21
Ga
8,2606 x 10-2
1,8526 x 1016
1,2328 x 1018
1,1157 x 1020
22
22
Gantungan E
3,7141 x 10-3
6,5534
1,6580 x 102
3,6772 x 1015
23
23
Gantungan E
3,7141 x 10-3
6,5534
1,6580 x 102
3,6772 x 1015
24
24
Gantungan E
2,8754 x 10-4
3,4465 x 1014
1,6950 x 1016
Error
-4
12
14
No
Id
19
19
20
Aksara
25
Gantungan E
2,0424 x 10
2,4722 x 10
26
26
Ha
9,5921 x 10-4
3,1541
8,1163
3,7987 x 1014
27
27
Ja
5,5808 x 10-3
5,0124 x 101
2,2521 x 102
4,6131 x 1014
28
28
Ja
2,7912 x 10-2
8,8293 x 1015
1,9779 x 1018
Error
29
29
Ja
7,0583 x 10-4
3,4664 x 1014
4,2591 x 1015
Error
-3
6,2731 x 10
2,5646 x 1017
25
1
3,8597 x 1015
30
30
Ka
5,1982 x 10
7,7039
3,4347 x 10
31
31
Ka
1,9940 x 10-2
3,9804
4,2883 x 102
4,7399 x 1015
32
32
Ka
9,6744 x 10-2
5,3690 x 1017
1,5202 x 1019
1,9046 x 1020
33
33
Ka
6,4724 x 10-3
8,6226 x 1016
3,6667 x 1018
Error
-3
2
1,3907 x 1016
34
34
La
2,9913 x 10
4,1971
1,9796 x 10
35
35
La
3,0361 x 10-3
5,3548 x 1015
3,1782 x 1016
2,5179 x 1017
36
36
Li
1,3203 x 10-2
6,6306 x 101
6,1675 x 102
2,5259 x 1015
37
37
Li
1,6428 x 10-1
2,5296 x 1016
9,1886 x 1018
2,8250 x 1019
38
38
Ma
8,0646 x 10-3
3,1638
2,1486 x 102
1,2625 x 1016
39
39
Ma
1,9831 x 10-2
1,0118 x 1016
4,0426 x 1018
Error
40
40
Na
0
0
0
Error
41
41
Na
3,1400 x 10-3
5,8828 x 1015
5,3150 x 1017
Error
6,7628
1,5864 x 1015
-4
1
42
42
Nga
4,8930 x 10
1,2132 x 10
43
43
Nga
6,7087 x 10-4
1,3643 x 1014
2,4135 x 1016
2,3653 x 1017
44
44
Ngi
1,1514 x 10-2
6,3709
3,0620 x 102
1,2498 x 1016
45
45
Ngi
7,0567 x 10-3
1,0909 x 101
3,2172 x 101
1,4764 x 1015
46
46
Nya
5,6901 x 10-3
3,0989 x 101
7,4286 x 101
5,1635 x 1019
47
47
Nya
1,2049 x 10-2
2,6756 x 1015
3,9365 x 1016
5,1525 x 1019
48
48
Pa
2,8619 x 10-3
1,0972 x 101
1,7268 x 102
1,3028 x 1016
49
49
Pa
1,3719 x 10-3
1,1490 x 1016
1,7841 x 1018
Error
50
50
Pa
3,2950 x 10-3
1,9820 x 1015
5,2415 x 1017
Error
Threshold (q=1)
Threshold (q=2)
Ra
9,3137 x 10-3
1,3700 x 101
4,0432 x 102
2,9042 x 1015
52
Ra
4,3535 x 10-2
4,6613 x 1015
1,0888 x 1018
3,2739 x 1018
53
Ra
2,4031 x 10-2
1,7941 x 101
5,9910 x 1020
Error
-3
No
Id
51
51
52 53
Aksara
Threshold (q=3)
1
54
54
Ri
3,7696 x 10
2,1059
6,9325 x 10
55
55
Sa
6,3259 x 10-4
8,4236 x 101
5,1131
56
56
Sa
1,5114 x 10-3
2,2430 x 1016
3,4128 x 1018
-4
1
3,2591 x 10
Threshold (q=4)
3,6780 x 1015 6,4470 x 1014
2
Error 4,1940 x 1015
57
57
Su
1,0525 x 10
1,2369 x 10
58
58
Su
3,6213 x 10-1
8,1935 x 1016
1,1557 x 1018
3,0126 x 1020
59
59
Ta
6,3948 x 10-4
5,5588
8,2758
5,7954 x 1014
60
60
Ta
5,9957 x 10-2
2,0063 x 1016
4,5311 x 1018
1,6572 x 1019
61
61
Ta
1,9852 x 10-4
1,2244 x 1014
1,5291 x 1016
2,7858 x 1016
62
62
Tang
9,9590 x 10-3
3,3741 x 101
1,7751 x 102
2,6635 x 1015
63
63
Tur
9,6710 x 10-3
9,9533
2,6410 x 102
2,3916 x 1014
64
64
Tya
4,9552 x 10-3
9,0300
3,2519 x 101
4,0577 x 1015
65
65
Wa
1,0622 x 10-3
2,9249
3,3657 x 101
6,1986 x 1013
66
66
Wa
2,6553 x 10-4
8,7230 x 1013
8,7916 x 1015
Error
-3
15
1,9716 x 1018
67
67
Wa
5,4214 x 10
4,0310
1,8087 x 10
68
68
Ya
8,3370 x 10-4
1,0470
8,3040 x 101
6,6480 x 1013
69
69
Ya
2,2893 x 10-3
2,2455 x 1014
2,0377 x 1016
5,3135 x 1023
70
70
Ya
4,1719 x 10-4
4,2141 x 1014
4,3331 x 1015
Error
Tabel 4.5 diatas menampilkan sudah terjadi kesalahan proses pembagian dengan bilangan nol untuk Q=4 dengan nomor identitas karakter 11, sehingga pendaftaran dengan konstanta pemotongan nilai eigen (q) yang lebih besar dari 4 tidak dilanjutkan lagi dan nantinya pengujian hanya dilakukan sampai pada q=3.
Tabel 4.6 Nilai ambang terpilih dengan menggunakan 42 pola model tandatangan Indonesia Threshold (q=1)
Threshold (q=2)
Threshold (q=3)
Threshold (q=4)
A
7,8191 x 10-3
2,5942 x 101
4,1247 x 102
8,7704 x 1014
2
A
3,5332 x 10-2
2,8234 x 101
6,0409 x 103
1,5768 x 1017
3
3
A
5,3118 x 10-2
2,9843 x 101
1,7419 x 1017
6,3301 x 1017
4
4
Adeg-adeg
3,3834 x 10-3
4,0270
3,3742 x 101
1,2140 x 1015
5
5
Adeg-adeg
3,5312 x 10-3
1,0355 x 101
2,9691 x 102
2,5868 x 1016
6
6
Adeg-adeg
1,8635 x 10-2
8,3574 x 101
4,8726 x 1015
8,6688 x 1016
7
7
Ba
6,1247 x 10-3
4,7952 x 101
3,0434 x 102
4,1610 x 1016
8
8
Ba
1,7686 x 10-2
5,4475 x 101
5,5792 x 102
1,3174 x 1017
9
9
Ba
3,8216 x 10-2
1,6810 x 1016
1,5766 x 1017
4,5468 x 1019
10
10
Ca
4,6099 x 10-3
6,6431
1,9385 x 102
1,6435 x 1016
11
11
Ca
2,8689 x 10-3
3,4555 x 1014
2,9528 x 1016
Error
No
Id
1
1
2
Aksara
-4
1
9,2270 x 1015
12
12
Carik
4,8413 x 10
6,7567
6,2582 x 10
13
13
Carik
1,8823 x 10-4
4,8888 x 10-1
2,7572 x 101
7,7356 x 1014
14
14
Cecek
7,9042 x 10-4
1,5769
1,7100 x 102
1,3435 x 1014
15
15
Cecek
8,1948 x 10-3
1,4219 x 101
3,0712 x 102
1,9769 x 1016
16
16
Cecek
2,1929 x 10-2
2,1806 x 1016
4,1992 x 1019
Error
-3
1
3,1917 x 1014
17
17
Da
1,7347 x 10
3,2803
2,2385 x 10
18
18
Da
2,6951 x 10-2
6,5111 x 101
7,0867 x 102
1,6913 x 1016
19
19
Da
6,0026 x 10-2
7,4923 x 1014
3,0006 x 1017
1,6691 x 1019
20
20
Ga
4,7117 x 10-3
3,3334
3,4316 x 102
2,1261 x 1016
21
21
Ga
8,2606 x 10-2
1,8526 x 1016
1,2328 x 1018
1,1157 x 1020
22
22
Gantungan E
3,7141 x 10-3
6,5528
1,6628 x 102
4,9319 x 1015
23
23
Gantungan E
3,7141 x 10-3
6,5528
1,6628 x 102
4,9319 x 1015
24
24
Gantungan E
3,5942 x 10-4
4,1205 x 1014
2,0450 x 1016
2,4298 x 1015
25
25
Gantungan E
2,0424 x 10-4
2,4724 x 1012
5,7668 x 1014
8,8231 x 1015
26
26
Ha
9,4590 x 10-4
3,1432
8,4637
9,2776 x 1014
27
27
Ja
5,4752 x 10-3
4,9925 x 101
2,5031 x 102
9,3853 x 1014
28
28
Ja
2,7848 x 10-2
8,8293 x 1015
4,8067 x 1016
1,7227 x 1018
29
29
Ja
7,0583 x 10-4
3,5237 x 1014
4,2591 x 1015
Error
30
30
Ka
4,9808 x 10-3
7,9715
3,7108 x 101
1,6986 x 1014
Threshold (q=1)
Threshold (q=3)
Threshold (q=4)
3,9709
5,9000 x 102
4,3264 x 1015
9,6744 x 10-2
3,7242 x 1016
8,8394 x 1017
2,2099 x 1019
Ka
6,4724 x 10-3
2,4058 x 1017
7,2964 x 1017
Error
-3
No
Id
Aksara
31
31
Ka
1,9891 x 10-2
32
32
Ka
33
33
Threshold (q=2)
2
3,9402 x 1017
34
34
La
2,9821 x 10
4,2185
2,0419 x 10
35
35
La
2,9729 x 10-3
2,2070 x 1015
2,3323 x 1018
Error
36
36
Li
1,3164 x 10-2
7,1286 x 101
6,9980 x 102
7,2826 x 1014
37
37
Li
1,6428 x 10-1
2,9621 x 1016
7,0529 x 1018
1,4748 x 1019
38
38
Ma
8,0541 x 10-3
3,1581
2,1370 x 102
6,8360 x 1016
39
39
Ma
1,9953 x 10-2
1,0166 x 1016
4,0516 x 1018
Error
40
40
Na
0
0
0
Error
41
41
Na
3,1400 x 10-3
5,8281 x 1015
5,3150 x 1017
Error
6,7742
1,0693 x 1014
-4
1
42
42
Nga
4,8930 x 10
6,2435 x 10
43
43
Nga
6,7087 x 10-4
4,6754 x 1014
7,9949 x 1015
3,2531 x 1016
44
44
Ngi
1,1492 x 10-2
6,3927
3,5960 x 102
4,1857 x 1016
45
45
Ngi
7,0019 x 10-3
1,1502 x 101
3,5266 x 101
2,9261 x 1014
46
46
Nya
5,6774 x 10-3
3,1847 x 101
7,6438 x 101
4,7632 x 1015
47
47
Nya
1,2048 x 10-2
2,6672 x 1015
3,8268 x 1016
4,5973 x 1019
48
48
Pa
2,8560 x 10-3
1,0951 x 101
2,2490 x 102
9,1179 x 1015
49
49
Pa
7,1731 x 10-2
1,9217 x 1016
4,8439 x 1018
2,1114 x 1019
50
50
Pa
4,8366 x 10-3
1,9820 x 1015
5,2415 x 1017
Error
-3
1
4,4646 x 10
2
1,6233 x 1015
51
51
Ra
9,3072 x 10
1,3734 x 10
52
52
Ra
4,3788 x 10-2
8,8407 x 1015
1,0729 x 1018
2,9851 x 1018
53
53
Ra
2,4104 x 10-2
1,7995 x 101
6,0092 x 1020
Error
-3
1
4,2006 x 1015
54
54
Ri
3,7464 x 10
2,0930
7,4038 x 10
55
55
Sa
5,5117 x 10-4
7,3527 x 101
4,6129
1,7469 x 1013
56
56
Sa
1,5117 x 10-3
2,3784 x 1016
3,3560 x 1018
Error
57
57
Su
1,0513 x 10-4
1,2842 x 101
3,5915 x 102
4,1934 x 1016
58
58
Su
3,6213 x 10-1
8,1932 x 1016
1,1547 x 1018
3,0099 x 1020
59
59
Ta
6,3392 x 10-4
5,6857
8,2600
1,3019 x 1013
60
60
Ta
5,9957 x 10-2
1,1167 x 1016
1,6819 x 1018
6,3496 x 1019
61
61
Ta
1,9852 x 10-4
6,7491 x 1013
2,8912 x 1016
Error
62
62
Tang
9,8836 x 10-3
3,4408 x 101
4,2306 x 102
4,1377 x 1015
Threshold (q=3)
Threshold (q=4)
9,9567
2,5991 x 102
1,7777 x 1014
4,9112 x 10-3
8,9951
3,4263 x 101
1,8784 x 1015
Wa
1,0496 x 10-3
2,9420
3,5527 x 101
3,0626 x 1016
Wa
3,3192 x 10-4
1,0903 x 1014
1,1551 x 1016
Error
-3
Aksara
Threshold (q=1)
No
Id
63
63
Tur
9,6710 x 10-3
64
64
Tya
65
65
66
66
Threshold (q=2)
15
6,2045 x 1019
67
67
Wa
5,5000 x 10
4,0732
1,4505 x 10
68
68
Ya
8,2779 x 10-4
1,0892
8,5665 x 101
4,9609 x 1013
69
69
Ya
2,2893 x 10-3
2,2455 x 1014
2,0377 x 1016
5,3135 x 1023
70
70
Ya
4,1719 x 10-4
4,2141 x 1014
4,3331 x 1015
Error
Pengujian aksara dengan menggunakan 42 model yang diperoleh dari Pola Model tandatangan Indonesia, ditunjukkan pada Tabel 4.6 diatas. Pengujian tersebut dengan variasi nilai q = 1, 2, 3 dan seterusnya. Hasil pengujian yang relative sama juga terjadi seperti pada penggunaan 23 model Aksara Bali, yaitu sudah terjadi kesalahan proses pembagian dengan bilangan nol untuk q=4 dengan nomor identitas karakter 11, sehingga pendaftaran dengan konstanta pemotongan nilai eigen (q) yang lebih besar dari 4 tidak dilanjutkan lagi dan nantinya pengujian hanya dilakukan sampai pada q=3.
4.1.5.3 Pengenalan Karakter Aksara Bali uji Pengujian terhadap karakter Aksara Bali dilakukan dengan mengatur variasi konstanta pengali nilai ambang (Cd) yaitu 2, 3, 4 dan 5. Pada Gambar 4.8 terlihat contoh jenis Aksara Bali yaitu Aksara A diuji dengan pengaturan lingkungan dengan 23 pola model Aksara Bali, nilai q=3 dan Cd=3.
Gambar 4.8 Tampilan hasil pengenalan untuk satu huruf
Selengkapnya hasil pengujian yang berupa banyaknya kesalahan (error) yang terjadi pada pengujian keseluruhan aksara uji dengan masing-masing variasi nilai Cd serta waktu proses untuk 23 pola model Aksara Bali, terlihat dalam tabeltabel berikut ini:
Tabel 4.7 Jumlah kesalahan pada pengenalan dengan q = 1 dengan menggunakan 23 pola model Aksara Bali
No
Jenis Aksara
Waktu Uji (ms)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
A Adeg-adeg Ba Ca Carik Cecek Da Ga Gantungan E Ha Ja Ka La Li Ma Na Nga Ngi Ni Nya Pa Ra Ri Sa Su Ta Tang Tur Tya Wa Ya
11685 15912 15600 8346 13697 15553 14133 11591 16692 6131 10530 13291 6303 10546 8346 7629 8517 7894 8923 13541 9953 9812 8315 7925 11512 10623 8736 10608 10811 8861 9734
TOTAL
Cd = 2 Jml Uji
diken al
6 9 13 7 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 8
6 9 10 2 11 11 11 9 13 3 8 9 6 7 7 7 6 5 1 9 7 8 6 7 7 8 6 6 6 7 7
24 7
22 5 91,1 %
Cd = 3
Tidak terda ftar
Diken al aksar a lain
0 0 3 2 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 7 2,8 %
0 0 0 3 0 1 1 0 0 1 0 3 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 1 15 6,1 %
8,9%
diken al
6 9 10 2 11 11 11 9 13 4 8 9 6 7 7 7 6 5 1 9 7 8 6 7 7 8 6 6 6 7 7 22 6 91, 5%
Cd = 4
Tidak terda ftar
Diken al aksar a lain
0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 4 1,6 %
0 0 0 5 0 1 1 0 0 1 0 3 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 1 17 6,9 %
8,5%
diken al
6 9 10 2 11 11 11 9 13 4 8 9 6 7 7 7 6 5 1 9 7 8 6 7 7 8 6 6 6 7 7 22 6 91, 5%
Cd = 5
Tidak terda ftar
Diken al aksar a lain
0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 4 1,6 %
0 0 0 5 0 1 1 0 0 1 0 3 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 1 17 6,9 %
8,5%
diken al
6 9 10 2 11 11 11 9 13 4 8 9 6 7 7 7 6 5 1 9 7 8 6 7 7 8 6 6 6 7 7 22 6 91, 5%
Tidak terda ftar
Diken al aksar a lain
0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1,2 %
0 0 0 5 0 1 1 0 0 1 0 3 0 0 0 0 0 0 5 0 1 0 0 0 0 0 0 0 0 0 1 18 7,3 %
8,5%
Tabel 4.8 Jumlah kesalahan pada pengenalan dengan q = 2 dengan menggunakan 23 pola model Aksara Bali
No
Jenis Aksara
Waktu Uji (ms)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
A Adeg-adeg Ba Ca Carik Cecek Da Ga Gantungan E Ha Ja Ka La Li Ma Na Nga Ngi Ni Nya Pa Ra Ri Sa Su Ta Tang Tur Tya Wa Ya
11715 16115 15647 8533 13806 15615 14212 11653 16801 6178 10654 13323 6380 10546 8362 7691 8518 7909 9391 14009 10327 10250 8643 8252 11996 11263 9094 11044 11325 9345 10296
TOTAL
Cd = 2 Jml Uji
diken al
6 9 13 7 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 8
3 9 11 2 6 11 8 9 13 3 2 9 3 6 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5
24 7
193 78, 2%
Cd = 3
Tidak terda ftar
Diken al aksar a lain
0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 1,2 %
3 0 2 4 5 1 4 0 0 2 6 3 3 0 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 2 51 20, 6%
21,8%
diken al
3 9 11 2 6 11 8 9 13 3 2 9 3 6 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5 193 78, 2%
Cd = 4
Tidak terda ftar
Diken al aksar a lain
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0,4 %
3 0 2 5 5 1 4 0 0 2 6 3 3 1 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 2 53 21, 4%
21,8%
diken al
3 9 11 2 6 11 8 9 13 3 2 9 3 6 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5 193 78, 2%
Tidak terda ftar
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cd = 5 Diken al aksar a lain
3 0 2 5 5 1 4 0 0 2 6 3 3 1 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 3 54 21, 8%
21,8%
diken al
3 9 11 2 6 11 8 9 13 3 2 9 3 6 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5 193 78, 2%
Tidak terda ftar
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Diken al aksar a lain
3 0 2 5 5 1 4 0 0 2 6 3 3 1 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 3 54 21, 8%
21,8%
Tabel 4.9 Jumlah kesalahan pada pengenalan dengan q = 3 dengan menggunakan 23 pola model Aksara Bali
No
Jenis Aksara
Waktu Uji (ms)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
A Adeg-adeg Ba Ca Carik Cecek Da Ga Gantungan E Ha Ja Ka La Li Ma Na Nga Ngi Ni Nya Pa Ra Ri Sa Su Ta Tang Tur Tya Wa Ya
11248 15256 15116 8112 13120 15022 13728 11201 16630 5912 10187 13229 6115 10093 8081 7488 8175 7520 8923 13478 9906 9797 8252 7878 11466 110624 8674 10592 11029 8783 9672
TOTAL
Cd = 2 Jml Uji
diken al
6 9 13 7 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 8
6 9 12 0 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 7
24 7
23 8 96, 4%
Cd = 3
Tidak terda ftar
Diken al aksar a lain
0 0 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 2,0 %
0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 1,6 %
3,6%
diken al
6 9 12 0 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 7 23 8 96, 4%
Cd = 4
Tidak terda ftar
Diken al aksar a lain
0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 1,2 %
0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 2,4 %
3,6%
diken al
6 9 12 0 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 7 23 8 96, 4%
Cd = 5
Tidak terda ftar
Diken al aksar a lain
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0,4 %
0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 3,2 %
3,6%
diken al
6 9 12 0 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 7 23 8 96, 4%
Tidak terda ftar
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0%
Diken al aksar a lain
0 0 1 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 9 3,6 %
3,6%
Tabel 4.10 Jumlah kesalahan pada pengenalan dengan q = 1 dengan menggunakan 42 pola model tandatangan Indonesia
No
Jenis Aksara
Waktu Uji (ms)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
A Adeg-adeg Ba Ca Carik Cecek Da Ga Gantungan E Ha Ja Ka La Li Ma Na Nga Ngi Ni Nya Pa Ra Ri Sa Su Ta Tang Tur Tya Wa Ya
24227 32978 33540 17987 28860 32682 30061 24289 35100 13057 22011 28470 13806 21684 17581 16333 17581 16708 19297 29546 21699 21419 18018 17706 25303 23072 18767 22869 23213 19047 21154
TOTAL
Cd = 2 Jml Uji
diken al
6 9 13 7 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 8
6 9 10 2 11 11 11 9 13 3 8 9 6 7 7 7 6 5 2 9 8 8 6 7 7 8 6 6 6 7 7
24 7
22 7 91, 9%
Cd = 3
Tidak terda ftar
Diken al aksar a lain
0 0 3 2 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 2,8 %
0 0 0 3 0 1 1 0 0 1 0 3 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 13 5,3 %
8,1%
diken al
6 9 10 2 11 11 11 9 13 3 8 9 6 7 7 7 6 5 2 9 8 8 6 7 7 8 6 6 6 7 7 22 7 91, 9%
Cd = 4
Tidak terda ftar
Diken al aksar a lain
0 0 3 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 2,4 %
0 0 0 4 0 1 1 0 0 1 0 3 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 14 5,7 %
8,1%
diken al
6 9 10 2 11 11 11 9 13 4 8 9 6 7 7 7 6 5 2 9 8 8 6 7 7 8 6 6 6 7 7 22 8 92, 3%
Cd = 5
Tidak terda ftar
Diken al aksar a lain
0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1,2 %
0 0 0 5 0 1 1 0 0 1 0 3 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 1 16 6,5 %
7,7%
diken al
6 9 10 2 11 11 11 9 13 4 8 9 6 7 7 7 6 5 2 9 8 8 6 7 7 8 6 6 6 7 7 22 8 92, 3%
Tidak terda ftar
Diken al aksar a lain
0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1,2 %
0 0 0 5 0 1 1 0 0 1 0 3 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 1 16 6,5 %
7,7%
Tabel 4.11 Jumlah kesalahan pada pengenalan dengan q = 2 dengan menggunakan 42 pola model tandatangan Indonesia
No
Jenis Aksara
1 2 3 4 5 6 7 8 9 10 11
A Adeg-adeg Ba Ca Carik Cecek Da Ga Gantungan E Ha Ja
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Ka La Li Ma Na Nga Ngi Ni Nya Pa Ra Ri Sa Su Ta Tang Tur Tya Wa Ya
TOTAL
Waktu Uji (ms) 23228 31824 33041 17846 29578 33805 30669 25101 35926 13401 22230 8 28688 13759 22090 17940 16474 17722 16271 19344 29546 21684 21512 17987 17597 24960 23182 18970 22901 23447 19110 21169
Cd = 2 Jml Uji
Cd = 3
diken al
Tidak terda ftar
Diken al aksar a lain
6 9 13 7 11 12 12 9 13 5
3 9 11 2 6 11 7 9 13 3
0 0 0 2 0 0 0 0 0 0
8
2
12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 8
9 3 5 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5
24 7
192 77, 8%
Cd = 4
diken al
Tidak terda ftar
Diken al aksar a lain
3 0 2 3 5 1 4 0 0 2
3 9 11 2 6 11 7 9 13 3
0 0 0 2 0 0 0 0 0 0
0
6
2
0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5
3 3 0 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 2 50 20, 2%
9 3 5 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5
2%
22,2%
192 77, 8%
Cd = 5
diken al
Tidak terda ftar
Diken al aksar a lain
diken al
Tidak terda ftar
Diken al aksar a lain
3 0 2 3 5 1 4 0 0 2
3 9 11 2 6 11 7 9 13 3
0 0 0 1 0 0 0 0 0 0
3 0 2 4 5 1 4 0 0 2
3 9 11 2 6 11 7 9 13 3
0 0 0 1 0 0 0 0 0 0
3 0 2 4 5 1 4 0 0 2
0
6
2
0
6
2
0
6
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 1,2 %
3 3 2 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 2 52 21 %
9 3 5 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0,4 %
3 3 2 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 3 54 21, 8%
9 3 5 7 7 6 5 0 9 6 8 6 7 7 6 0 6 6 7 5
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0,4 %
3 3 2 0 0 0 0 6 0 2 0 0 0 0 2 6 0 0 0 3 54 21, 8%
22,2%
192 77, 8%
22,2%
192 77, 8%
22,2%
Tabel 4.12 Jumlah kesalahan pada pengenalan dengan q = 3 dengan menggunakan 42 pola model tandatangan Indonesia
No
Jenis Aksara
Waktu Uji (ms)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
A Adeg-adeg Ba Ca Carik Cecek Da Ga Gantungan E Ha Ja Ka La Li Ma Na Nga Ngi Ni Nya Pa Ra Ri Sa Su Ta Tang Tur Tya Wa Ya
23166 31559 33126 17722 29094 31605 29125 23884 34257 12605 21372 27675 13260 20935 17160 15897 17051 15663 19453 29734 22090 21622 18065 17644 25241 22418 18174 21981 22324 18579 20639
TOTAL
Cd = 2 Jml Uji
diken al
6 9 13 7 11 12 12 9 13 5 8 12 6 7 7 7 6 5 6 9 8 8 6 7 7 8 6 6 6 7 8
6 9 12 0 11 12 12 9 13 5 6 12 6 7 7 7 6 5 6 9 4 8 6 6 7 8 2 6 6 7 7
24 7
22 7 91, 9%
Cd = 3
Tidak terda ftar
Diken al aksar a lain
0 0 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 1 0 0 2 0 0 0 1 12 4,9 %
0 0 0 4 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 8 3,2 %
8,1%
diken al
6 9 12 0 11 12 12 9 13 5 6 12 6 7 7 7 6 5 6 9 4 8 6 7 7 8 2 6 6 7 7 22 8 92, 3%
Cd = 4
Tidak terda ftar
Diken al aksar a lain
0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 2 0 0 0 1 10 4,0 %
0 0 0 5 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 9 3,7 %
7,7%
diken al
6 9 12 0 11 12 12 9 13 5 6 12 6 7 7 7 6 5 6 9 4 8 6 7 7 8 2 6 6 7 7 22 8 92, 3%
Tidak terda ftar
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 5 2%
Cd = 5 Diken al aksar a lain
0 0 0 7 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 1 14 5,7 %
7,7%
diken al
6 9 12 0 11 12 12 9 13 5 6 12 6 7 7 7 6 5 6 9 4 8 6 7 7 8 2 6 6 7 7 22 8 92, 3%
Tidak terda ftar
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 5 2%
Diken al aksar a lain
0 0 0 7 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 1 14 5,7 %
7,7%
4.2 Analisis Hasil Analisis hasil yang dilakukan adalah terhadap
hasil pengujian,
pembandingan dengan metode lain, kompleksitas waktu dan kompleksitas ruang penyimpanan.
4.2.1
Analisis Hasil Pengujian Hasil pengujian yang dilakukan baik dalam hal pembuatan basis data
acuan maupun pengujian pengenalan aksara uji, telah dipresentasikan dalam bentuk tabel. Berdasarkan apa yang terlihat pada tabel-tabel hasil pengujian itulah dilakukan analisis terhadap sistem pengenalan ini. Besarnya masing-masing variabel lingkungan sistem yang masih efektif digunakan pada sistem pengenalan untuk 23 pola model Aksara Bali maupun 42 pola model tandatangan Indonesia adalah : Konstanta pemotongan nilai eigen (q) adalah 1, 2 dan 3. Nilai q yang kecil, akan menyebabkan hasil pengenalan menjadi tidak stabil, karena nilai eigen pada urutan kecil belum bisa menggambarkan karakteristik suatu matriks, sedangkan nilai q yang besar (dalam hal ini lebih dari 3) akan cenderung menyebabkan terjadinya kesalahan sistem yaitu adanya pembagian dengan bilangan nol, karena nilai eigen pada urutan besar cenderung bernilai sangat kecil bahkan terkadang mendekati nol. Konstanta pengali nilai ambang (Cd) adalah 2,0; 3,0; 4,0 dan 5,0. Nilai ini dipakai agar nilai ambang yang dihasilkan tidak terlalu jauh menyimpang dari nilai C yang didapatkan.
4.2.1.1 Analisis Pengujian Pengenalan Hasil pengenalan terhadap karakter Aksara Bali terlihat pada Tabel 4.7 sampai dengan Tabel 4.12 dengan menampilkan banyaknya kesalahan yang terjadi pada masing-masing variasi pengujian. Total kesalahan pada masingmasing variasi lingkungan sistem diperlihatkan kembali dalam Tabel 4.13 yang digunakan untuk mempermudah melakukan analisis. Tabel 4.13 Banyaknya kesalahan yang terjadi pada pengujian sistem pengenalan Cd = 2,0
Cd = 3,0
POLA MODEL
q
diken al
Tidak terdaf tar
Diken al aksar a lain
Aksara Bali (p=23)
1 2 3 1 2 3
225 193 238 227 192 227
7 3 5 7 5 12
15 51 4 13 50 8
Tandatangan Indonesia (p=42)
diken al
226 193 238 227 192 228
Cd = 4,0
Tidak terdaf tar
Diken al aksar a lain
diken al
4 1 3 6 3 10
17 53 6 14 52 9
226 193 238 228 192 228
Cd = 5,0
Tidak terdaf tar
Diken al aksar a lain
diken al
Tidak terdaf tar
Diken al aksar a lain
4 0 1 3 1 5
17 54 8 16 54 14
226 193 238 228 192 228
3 0 0 3 1 5
18 54 9 16 54 14
Angka kesalahan yang terjadi pada pengujian seperti terlihat dari Tabel 4.13 di atas kemudian dihitung prosentase kesalahannya masing-masing, yaitu kesalahan tipe I (kesalahan dimana aksara uji dianggap tidak terdaftar padahal sudah ada), serta kesalahan tipe II (kesalahan sistem yang terjadi akibat kesalahan mengenali aksara uji yang berbeda). Rumusan dari perhitungan masingmasing tipe kesalahan tersebut adalah sebagai berikut : Error Tipe I
ErrorUj N Uj ErrorUj 247
100% 100%
(4.1)
Error Tipe II
ErrorUj N Uj ErrorUj 247
(4.2)
100% 100%
( 4.3)
Error Sistem Error Tipe I Error Tipe II
Hasil perhitungan dari prosentase kesalahan tipe I dan tipe II sistem pengenalan menggunakan rumusan di atas, dengan dasar data yang ada pada Tabel 4.13 diperlihatkan dalam Tabel 4.14, prosentase kesalahan rata-rata dalam Tabel 4.15 dan prosentase keberhasilan yang digunakan sebagai tolok ukur unjuk kerja sistem dalam Tabel 4.16 , sedangkan presentasi dalam bentuk grafik terlihat pada Gambar 4.9, Gambar 4.10, Gambar 4.11 dan Gambar 4.12. Tabel 4.14 Prosentase kesalahan tipe I dan tipe II pada pengujian sistem pengenalan
POLA MODEL Aksara Bali (p=23)
q 1 2 3 1 2
Tandatangan Indonesia (p=42)
3
Cd = 2,0 Tipe I Tipe II (%) (%) 2,8 6,1 1,2 20,6 2,0 1,6 2,8 5,3 2 20,2 4,9
3,2
Cd = 3,0 Tipe I Tipe II (%) (%) 1,6 6,9 0,4 21,4 1,2 2,4 2,4 5,7 1,2 21 4,0
3,7
Cd = 4,0 Tipe I Tipe II (%) (%) 1,6 6,9 0 21,8 0,4 3,2 1,2 6,5 0,4 21,8 2
Cd = 5,0 Tipe I Tipe II (%) (%) 1,2 7,3 0 21,8 0 3,6 1,2 6,5 0,4 21,8
5,7
2
5,7
Tabel 4.15 Prosentase kesalahan rata-rata pada pengujian sistem pengenalan POLA MODEL Aksara Bali (p=23) Tandatangan Indonesia (p=42)
1 2 3 1 2
Cd = 2,0 (%) 8,9 21,8 3,6 8,1 22,2
3
8,1
q
Cd = 3,0 (%) 8,5 21,8 3,6 8,1 22,2 7,7
Cd = 4,0 (%) 8,5 21,8 3,6 7,7 22,2 7,7
Tabel 4.16 Prosentase keberhasilan pada pengujian sistem pengenalan
Cd = 5,0 (%) 8,5 21,8 3,6 7,7 22,2 7,7
POLA MODEL Aksara Bali (p=23) Tandatangan Indonesia (p=42)
1 2 3 1 2
Cd = 2,0 (%) 91,1 78,2 96,4 91,9 77,8
Cd = 3,0 (%) 91,5 78,2 96,4 91,9 77,8
Cd = 4,0 (%) 91,5 78,2 96,4 92,3 77,8
Cd = 5,0 (%) 91,5 78,2 96,4 92,3 77,8
3
91,9
92,3
92,3
92,3
q
Gambar 4.9 Grafik prosentase kesalahan tipe I
Gambar 4.10 Grafik prosentase kesalahan tipe II
Gambar 4.11 Grafik prosentase kesalahan rata-rata
Gambar 4.12 Grafik prosentase keberhasilan unjuk kerja sistem Grafik prosentase kesalahan Tipe I pada Gambar 4.9 menunjukkan bahwa semakin besar konstanta pengali nilai ambang (Cd) maka prosentase kesalahan yang terjadi akan semakin kecil, karena rentang penerimaan semakin besar sehingga sistem akan semakin toleran menerima variasi aksara dengan beda yang lebih besar. Grafik prosentase kesalahan Tipe II pada Gambar 4.10 menunjukkan bahwa semakin besar nilai Cd maka prosentase kesalahan semakin besar pula. Hal ini disebabkan karena aksara yang sebelumnya dianggap tidak terdaftar setelah Cdnya diperbesar maka dikenali sebagai aksara yang berbeda. Kedua hal ini berlaku untuk semua variasi lingkungan sistem baik variasi konstanta q maupun pola model. Grafik pada Gambar 4.11 yang merupakan grafik prosentase kesalahan rata-rata yang terjadi pada sistem pengenalan
menunjukkan bahwa ada titik
minimum prosentase kesalahan yang didapat dari kombinasi lingkungan sistem,
yaitu menggunakan 23 pola model Aksara Bali dengan konstanta pemotongan nilai eigen q (noktah segiempat) bernilai 3 untuk semua nilai Cd. Kombinasi lingkungan sistem ini memberikan prosentase kesalahan terkecil yaitu sebesar 3,6%. Grafik pada Gambar 4.12 menunjukkan prosentase keberhasilan unjuk kerja sistem tidak terlalu dipengaruhi oleh perubahan pengali nilai ambang (Cd) kecuali pada kasus-kasus tertentu yang mana karakter yang sebelumnya dinyatakan tidak terdaftar setelah Cdnya diperbesar maka karakter tersebut dapat dikenali. Variasi nilai q sangat berpengaruh terhadap unjuk kerja sistem baik pada 23 pola model Aksara Bali maupun 42 pola model tandatangan Indonesia, kecuali pada q=2. Hal lain yang bisa diamati dari hasil pengujian adalah waktu proses yang diperlukan untuk melakukan pengenalan pada masing-masing lingkungan sistem seperti terlihat dalam Tabel 4.17. Tabel 4.17 Perbandingan waktu proses untuk 23 pola model Aksara Bali dan 42 pola model Tandatangan Indonesia
No
Jumlah Uji
Pola Model
1 2
247 247
23 42
10 t(ms) 50825 108398
20 t(ms) 101291 196950
Jumlah Basis data Acuan yang terdaftar 30 40 50 60 t(ms) t(ms) t(ms) t(ms) 163925 189431 231442 276043 292626 388721 487423 591428
70 t(ms) 317679 695777
Grafik dari waktu proses dari Tabel 4.17 terlihat seperti pada Gambar 4.12. Grafik tersebut menunjukkan waktu proses pengenalan untuk jumlah basis data acuan yang semakin banyak memerlukan waktu yang lebih lama untuk masingmasing pola model. Waktu proses pengenalan yang diperlukan jika menggunakan 23 pola model Aksara Bali lebih cepat dibandingkan dengan menggunakan 42
pola model Tandatangan Indonesia. Variasi besarnya konstanta pengali nilai ambang Cd relatif tidak berpengaruh pada waktu proses. Pada spesifikasi perangkat keras yang sama, hal yang paling berpengaruh terhadap waktu proses adalah banyaknya perangkat lunak atau program yang aktif secara bersamaan pada saat pengujian.
Gambar 4.13 Grafik waktu proses pengenalan sistem Hasil pengujian dan analisis hasil di atas menjelaskan bahwa prosentase keberhasilan unjuk kerja dalam sistem pengenalan Aksara Bali dengan menggunakan Metode Pola Busur Terlokalisasi sudah sangat tinggi yaitu 96,4%. Hal ini dipengaruhi oleh konstanta pemotongan nilai eigen (q), semakin besar nilai (q) maka kesalahan pengenalan semakin kecil.
4.2.2
Analisa Perbandingan Keberhasilan Pengenalan Aksara Bali Sistem pengenalan Aksara Bali dengan menggunakan metode Pola Busur
Terlokalisasi seperti yang dijelaskan pada sub bab diatas mendapatkan prosentase keberhasilan sebesar 96,4 %. Hasil pengenalan ini sudah sangat tinggi bila dibandingkan dengan menggunakan pola dari tandatangan Indonesia yang sebesar 92,3 % dan apabila dibandingkan dengan hasil penelitian I Komang Gede Suamba Dharmayasa yang menggunakan metode moment invariant dan LVQ untuk pengenalan Aksara Bali yang memperoleh hasil sebesar 99,4, hasil yang diperoleh dengan menggunakan metode Pola Busur memang relative lebih kecil. Hal ini disebabkan pada metode LVQ, citra Aksara Bali dibagi ke dalam 3 kelompok citra yaitu citra golongan persegi, persegi panjang dengan panjang kesamping, atau persegi panjang dengan panjang ke bawah. Nilai setiap pola akan dicari jaraknya dengan bobot dari kelas-kelas yang memiliki golongan sama di dalam basis data selanjutnya kelas di basis data yang memiliki jarak terpendek dan lebih kecil dari nilai ambang yang ditetapkan adalah merupakan hasil dari pengenalan. Hal ini akan berbeda dengan metode Pola Busur Terlokalisasi dimana citra uji akan dicocokkan dengan semua citra acuan yang tersimpan dalam basis data. Kelebihannya pada penelitian ini dapat mengenali aksara dengan ukuran pixel citra yang berbeda sedangkan pada metode LVQ menggunakan ukuran pixel citra yang sama. Hal lain yang dapat dipergunakan untuk menambah unjuk kerja dari sistem pengenalan dengan metode Pola Busur Terlokalisasi ini yaitu dengan membagi citra acuan maupun citra uji ke dalam empat ruang dimana citra pada masingmasing ruang tersebut akan diekstraksi cirinya. Kekurangannya adalah
menyebabkan waktu proses yang sangat lama karena untuk 1 citra aksara, 23 pola model Aksara Bali akan diproses sebanyak 4 kali untuk mengekstraksi citra dimasing-masing ruang. Ukuran vektor untuk menyimpan ciri serta proses berikutnya juga 4 kali lebih banyak yang berdampak pada bertambah tingginya kompleksitas waktu proses pengenalan.
4.2.3
Analisis Kompleksitas Waktu Selain waktu proses yang bisa dicatat langsung pada saat pengujian sistem
(yang dipengaruhi oleh konfigurasi perangkat keras serta program yang aktif saat pengujian), dapat juga dianalisis kompleksitas waktu sistem pengenalan secara umum. Kompleksitas waktu pada suatu sistem ditentukan oleh banyaknya operasi matematis yang terjadi terutama operasi perkalian dan pembagian, serta operasioperasi lain yang diperlukan selama sistem tersebut menjalankan fungsinya. Pada sistem pengenalan ini kebutuhan waktu sistem ada dua bagian, yaitu :
Kebutuhan waktu yang tidak dapat dianalisis secara pasti, yaitu pada tahap pengambilan data dan prapemrosesan. Kebutuhan waktu kedua tahapan ini tidak termasuk dalam analisis kompleksitas waktu yang dilakukan.
Kebutuhan waktu yang dapat dianalisis, yaitu pada tahap ekstraksi ciri, pembandingan dan tahap pembuatan basis data acuan. Jika dimisalkan banyaknya pola dilambangkan dengan N dan
banyaknya pola model yang dikelompokkan dari pola tersebut dilambangkan dengan p, maka dapat dilakukan perhitungan untuk mencari kompleksitas waktu sistem pengenalan ini adalah sebagai berikut :
Kompleksitas waktu tahap ekstraksi ciri Pada tahap ekstraksi ciri terjadi proses pembandingan pola berukuran 5 x 5 pada citra Aksara Bali yang berukuran 140 x 165 piksel. Pola digerakkan di atas citra baik secara horisontal maupun vertikal sehingga keseluruhan piksel citra Aksara Bali terlingkupi. Banyaknya perbandingan maksimum setiap melakukan sekali ekstraksi ciri adalah : 5 x 5 x 140 x 165 x N = 577500N kali perbandingan Dalam kondisi praktis perbandingan yang terjadi biasanya jauh di bawah 577500N kali, karena pola 5 x 5 yang tidak cocok biasanya sudah diketahui sebelum perbandingan ke-25 pada masing-masing pola. Kompleksitas waktu tahap pembandingan. Kompleksitas waktu pada tahap pembandingan dicari sesuai dengan prosedur atau fungsi yang dikerjakan yaitu : -
Menghitung matriks varians function CountMeanFrequency(sampel: TPersonSign) : TmeanFrequency; begin for i := 1 to DimVector do begin bantu := 0; for Mi := 1 to Number do bantu := bantu + sampel.freq[i,Mi]; CountMeanFrequency[i] := bantu / number; end; end;
Operasi yang terjadi : Penjumlahan = 3p kali. Pembagian
= p kali.
function CountFreqMinMean(Mean : TMeanFrequency; Pr : TPersonSign) : TFreqMinMean;
begin for i := 1 to Number do for j := 1 to DimVector do CountFreqMinMean[j,i] := Pr.Freq[j,i]-Mean[j]; end;
Operasi yang terjadi: Pengurangan = 3p kali. function CountVariance(Mean : TMeanFrequency; Pr : TpersonSign): TVariance; begin Vector := CountFreqMinMean(Mean,Pr); for i := 1 to DimVector do for j := 1 to DimVector do begin Temp := 0; for k := 1 to Number do Temp := Temp + Vector[i,k]*Vector[j,k]; Bantu[i,j] := Temp/Number; end; CountVariance := Bantu; end;
Operasi terjadi : Perkalian
= p x p x 3 = 3p2 kali.
Pembagian
= p x p = p2 kali.
Penjumlahan = p x p x 3 = 3p2 kali. Total operasi pada perhitungan matriks varians : Perkalian/pembagian = p + 3p2 + p2 = (4p 2 + p) kali. Penjumlahan/pengurangan = 3p + 3p + 3p2 = (6p + 3p2) kali
-
Menghitung nilai eigen dan vektor eigen. Metode Jacobi yang dipergunakan untuk mencari nilai eigen dan vektor eigen, memerlukan maksimum sebanyak 15n3 operasi matematis perkalian atau pembagian (n adalah orde matriks), dengan rincian : rotasi yang
dilakukan sebanyak 5n3 kali, sedangkan pada setiap rotasi terjadi 3n operasi matematis. Oleh karena matriks varian berukuran p x p maka operasi perkalian atau pembagian maksimum yang dilakukan pada perhitungan nilai eigen dan vektor eigen adalah 15p3 kali operasi.
-
Menghitung nilai ketidaksamaan. function CountZ(L : TVariance; k : integer; X : TFrequency; Urut : TSort) : real; begin bantu := 0; for i := 1 to DimVector do bantu := bantu + L[i,Urut[k]]*X[Urut[i]]; CountZ := bantu; end;
Operasi terjadi : Perkalian
= p kali.
Penjumlahan = p kali. function CountDissimilarity (L : TVariance; Lamda, XMean : TMeanFrequency; X : TFrequency; Urut : TSort) : real; begin dis1 := 0; for k := 1 to qi do begin if Lamda[Urut[k]] <> 0 then dis1 := dis1 + (SQR(CountZ(L,k,X,Urut)countZ(L,k,XMean,Urut))/Lamda[Urut[k]]) else begin if error <> 2 then Error := 1; exit; end; end; dis2 := 0; for k := qi+1 to DimVector do dis2 := dis2 + (SQR(CountZ(L,k,X,Urut)CountZ(L,k,XMean,Urut))/Lamda[Urut[qi]]); CountDissimilarity := dis1 + dis2; end;
Operasi yang terjadi : Penjumlahan
= (p + 1) kali.
Pengurangan
= p kali.
Pembagian
= p kali.
Perpangkatan
= p kali.
Operasi mencari Z
= p x 2 = 2p kali.
Total operasi perhitungan nilai ketidaksamaan : Perkalian/pembagian
= 2p + p + p = 4p kali.
Penjumlahan/pengurangan
= 2p + p + 1 + p = (4p + 1) kali
Jadi total operasi maksimum yang terjadi pada tahap pembandingan adalah : Perkalian/pembagian
= (4p2 + p) + (15p3 ) + (4p) = (15p3 + 4p2 + 5p) kali.
Penjumlahan/pengurangan
= (6p + 3p2) + (4p + 1) = (3p2 + 10p + 1) kali
Setiap tahap pembandingan sebelumnya pasti didahului dengan ekstraksi ciri aksara, maka dari itu secara keseluruhan tahap pembandingan memerlukan maksimum (15p 3 + 4p2 + 5p) kali operasi perkalian atau pembagian, (3p2 + 10p + 1) kali operasi penjumlahan atau pengurangan serta ditambah 577500N
kali
perbandingan pada tahap ekstraksi ciri. Kompleksitas waktu pembuatan basis data acuan. Untuk setiap karakter, memerlukan 6 citra karakter sebagai acuan. Dari 6 citra ini, 3 citra dicari frekuensi kemunculan pola modelnya yang akan disimpan
dalam file acuan, sedangkan 3 sisanya dipergunakan untuk mencari nilai ambang. Kompleksitas waktunya adalah : Tiga citra aksara pertama : Ekstraksi ciri = 3 x 577500N = 1.732.500N kali perbandingan. Perhitungan matriks varians : Perkalian/pembagian
= (4p2 + p) kali.
Penjumlahan/pengurangan
= (6p + 3p2) kali
Perhitungan nilai eigen = 15p3 kali operasi perkalian . Tiga citra aksara sisanya : Ekstraksi ciri = 3 x 577500N = 1.732.500N kali perbandingan. Menghitung ketidaksamaan : Perkalian/pembagian
= 3 x 4p = 12p kali.
Penjumlahan/pengurangan
= 3 x (4p + 1) = (12p + 3) kali
Sorting 3 nilai ketidaksamaan = 6 kali perbandingan. Total perbandingan = 1.732.500N + 1.732.500N + 6 = 3.465.006N kali. Total operasi matematis: Perkalian/pembagian
= (15p3 + 4p2 + 5p) + 12p = (15p 3 + 4p2 + 17p) kali.
Penjumlahan/pengurangan
= (12p + 6p2) + (12p + 3)
= (6p2 + 24p + 3) kali
Jadi kompleksitas waktu maksimum pembuatan basis data acuan untuk satu aksara adalah : (15p3 + 4p2 + 17p) kali operasi perkalian atau pembagian, (6p2 + 24p + 3) kali operasi penjumlahan atau pengurangan, ditambah dengan 3.465.006N kali perbandingan. Melihat demikian tingginya kompleksitas waktu yang diperlukan sistem pengenalan ini, maka diperlukan perangkat keras yang berupa komputer dengan kecepatan proses yang memadai agar pengoperasian sistem tidak terlalu lambat.
4.2.4
Analisis Kompleksitas Ruang Penyimpanan Kompleksitas ruang penyimpanan yang diperlukan oleh suatu sistem
sangat tergantung dari struktur data yang digunakan untuk mengembangkan sistem tersebut, terutama struktur yang nantinya akan berhubungan langsung dengan fasilitas media penyimpan. Masing-masing tipe data yang digunakan memerlukan ruang penyimpan yang berbeda pula. Tipe-tipe data yang digunakan dalam sistem pengenalan ini yang berhubungan dengan keperluan media penyimpan terlihat dalam Tabel 4.18 berikut ini:
Tabel 4.18 Tipe data dan ruang penyimpan yang diperlukan No
Tipe
Ruang Penyimpan
1
Byte
1 byte
2
Integer
4 byte
3
Word
4 byte
4
Real
6 byte
5
String[35]
35 byte + 1 byte
Mengacu pada tabel di atas dan struktur data yang telah dirancang, maka keperluan ruang penyimpan masing-masing file pada sistem pengenalan ini dapat dihitung sebagai berikut:
Pola model TModelPattern = record Nomor : byte; // 1 byte Model : byte; // 1 byte Pattern : array[0..4,0..4] of byte; // 5 x 5 x 1 byte end;
Pola model tandatangan Indonesia sebanyak 52 pola, maka keperluan ruang penyimpannya adalah : (1 + 1 + 25) x 52 = 1.404 byte. Pola model Aksara Bali sebanyak 23 pola, maka keperluan ruang penyimpannya adalah : (1 + 1 + 25) x 23 = 621 byte.
Data sebuah karakter THuruf = record IdNumber : word; // 4 byte Name : string[35]; // 36 byte Freq :array[1.. DimVector,1..6] of word; // 52 x 6 x 4 = 1248 byte RefFileName : string[70]; //71 byte ADis : array[1..3] of real; // 3 x 6 = 18 byte Critical : real; end;
Guna menyederhanakan program, maka dalam sistem pengenalan ini dimensi vektor yang digunakan adalah dimensi vektor terbesar, yaitu sebanyak pola model yang dimiliki oleh Tandatangan Indonesia yaitu 42. Dapat disimpulkan bahwa banyaknya keperluan ruang penyimpan untuk data sebuah aksara adalah : 4 + 36 + 1248 + 71 + 18 + 6 = 1383 byte.
Jika sistem ini dimanfaatkan secara nyata, maka ada beberapa komponen data aksara yang tidak diperlukan. Adapun struktur data yang dipakai jika sistem dimanfaatkan secara nyata dengan menggunakan pola model Aksara Bali adalah : TPersonSign = record IdNumber : word; // 4 byte Name : string[35]; // 36 byte Freq :array[1..23 ,1..6] of word; // 23 x 6 x 4 = 1008 byte Critical : real; // 6 byte end;
Keperluan ruang penyimpannya adalah : (4 + 36 + 1008 + 6) = 552 byte.
Kompleksitas ruang penyimpanan pada sistem pengenalan menggunakan metode masukan statis secara umum cukup besar, hal tersebut dipengaruhi oleh faktor disimpan atau tidaknya aksara sampel. Pada kondisi praktis file citra aksara acuan maupun uji tidak perlu disimpan, karena ciri-ciri yang diperlukan untuk proses pengenalan sudah diekstraksi pada saat pembuatan basis data acuan dan disimpan dalam sebuah file. Sistem pengenalan dalam penelitian ini menggunakan format file citra bitmap dua warna untuk penyimpanan citra aksara, masing-masing citra aksara berukuran 140 x 165 piksel memerlukan ruang penyimpan sebanyak 23.100 byte. Sehingga jika semua file citra aksara acuan maupun uji harus disimpan, maka akan memerlukan ruang penyimpan yang cukup banyak.
arning and knowledge were never meant to be divorced from reality; basically, they are to help reduce mankind’s gasps of anguish and his tears of distress. (Anand Khrisna)
BAB V SIMPULAN DAN SARAN
BAB V SIMPULAN DAN SARAN
5.1 Simpulan Berdasarkan hasil ujicoba yang telah dilakukan dapat disimpulkan hal-hal sebagai berikut: 1.
Ekstraksi ciri karakter dilakukan dengan pola khusus yang dibentuk berdasarkan Metode Pola Busur Terlokalisasi. Pemilihan model dilakukan dari implementasi pola yang didapatkan pada basisdata citra Aksara Bali, berdasarkan akumulasi frekuensi kemunculan masing-masing pola model. Dilihat dari prosentase kesalahan serta waktu proses, metode ini terbukti cukup efektif dan menghasilkan unjuk kerja yang lebih baik untuk pengenalan Aksara Bali, dibandingkan dengan memakai pola model Tandatangan Indonesia.
2.
Unjuk kerja sistem diukur berdasarkan dua macam tipe kesalahan, yaitu : kesalahan penolakan (false rejection) dan kesalahan penerimaan (false acceptance). Sistem yang dikembangkan mempunyai prosentase kesalahan minimum pada semua kombinasi konstanta pengali nilai ambang Cd 2,0; 3,0; 4,0; 5,0 dan konstanta pemotongan nilai eigen q bernilai 3, dengan rata-rata kesalahan sistem adalah 3,6 % sehingga diperoleh tingkat keberhasilan sebesar 96,4%.
5.2 Saran Berikut ini adalah beberapa saran yang dapat diberikan untuk penelitian lebih lanjut: 1. Aplikasi ini dapat dikembangkan dengan mengkombinasikan dengan metode LVQ dan sebelum dilakukan ekstraksi ciri, citra acuan maupun uji dibagi ke dalam empat ruang untuk mendapatkan unjuk kerja yang lebih bagus. 2. Sistem ini menggunakan pola busur 5x5 sehingga pada pengembangan lebih lanjut dapat dicoba digunakan pola busur ukuran 3x3 dengan harapan dapat melakukan ekstraksi citra karakter dengan lebih detail. 3. Pola model yang didapatkan pada penelitian ini bisa diteliti penggunaannya pada pengenalan Tulisan Tangan Aksara Bali atau permasalahan sistem pengenalan obyek lainnya, tidak terbatas hanya pada karakter cetak saja.
DAFTAR PUSTAKA Agung BW, I Gede Rudy Hermanto, Retno Novi D ang. 2009. Pengenalan Huruf Bali dengan Menggunakan metode Modified Direction Feature (MDF) dan Learning Vector Quantization (LVQ). Konferensi Nasional Sistem dan Informatika 2009. Institut Teknologi Telkom, Bandung. yudiagusta.files.wordpress.com/.../007-012-knsi09-002-pengenalan-hurufbali-menggunakan-metode-modified-direction-feature-_mdf Oka Sudana, AA. K. 2006. Rancang Bangun Sistem Verifikasi Tandatangan dan Pengenalan Tulisan Tangan dengan Metode Pola Busur Terlokalisasi. Proceeding of the Research and Studies III. TPSDP – DIKTI 2006. Oka Sudana, AA.K. 2007. Implementasi Pola Model Tandatangan Jepang dan Tandatangan Indonesia untuk Verifikasi Tandatangan Latin. Jurnal Pakar, Vol 7, No 4, Yogyakarta. Shin-ichi Kikuchi, Takehiro Furuta, Takako Akakura. 2008. Periodical Examinees Identification in e-Test Systems Using the Localized Arc Pattern Method. Distance Learning and the Internet Conference 2008. p.213-220. Waseda University, Japan. Suamba Dharmayasa, I Komang Gede. 2009. Pengenalan Karakter Bali Cetak Menggunakan Metode Moment dan Jaringan Syaraf Tiruan Learning Vector Quantization. Teknik Elektro udayana, Jimbaran. Yoshimura, I., Shimizu, T. dan Yoshimura, M.. 1993. A Zip Code Recognition System using the Localized Arc Pattern Method. Proceedings of the 2nd International Conference on Document Analysis and Recognition. IEEE Computer Society. p183-186. Yoshimura, M. dan Yoshimura, I., 1988, “Writer Identification Based on the Arc Pattern Transformation”, Proceedings of the 9th International Conference on Pattern Recognition, November 14-17, 1993, IEEE Computer Society, Washington, p.183-186. Yoshimura, I. dan Yoshimura, M., 1990, “Arc Pattern Method for Writer Recognition as an Aid for Person Identification”, Nagoya University p.71-82. ___.___. 2010. Aksara Bali. tanggal 09 Oktober 2010.
http://wapedia.mobi/id/Aksara_Bali . Diakses
BIODATA PRIBADI Nama NIM
: Ni Kadek Ayu Wirdiani : 0991761013
Bidang Studi
: Teknik Elektro
Konsentrasi
:Manajemen
Teknologi
Informatika Tempat, Tgl. Lahir
: Denpasar, 27 Maret 1981
Alamat
: Jl. Gunung Guntur Gg. II/2, Padangsambian
Telepon
:(0361)411895/ 081338273148
Email
: [email protected]
Nama Orang Tua
: I Nyoman Wirtha
Agama
: Hindu
Jenis Kelamin
: Perempuan
Status Pernikahan
: Menikah
Kewarganegaraan
: Indonesia
Tgl Lulus
: 01 Juli 2011
RIWAYAT PENDIDIKAN 1987 – 1993
: Sekolah Dasar di SD no.29 Pemecutan Barat
1993 – 1996
: Sekolah Menengah Pertama di SLTPN 2 Denpasar
1996 – 1999 1999 – 2004 Udayana
: Sekolah Menengah Umum di SMUN 2 Denpasar : Program Studi Teknik Elektro Jurusan Elektronika Komunikasi Fakultas Teknik Universitas
2009 – 2011 : Program Pascasarjana Program Studi Teknik Elektro Konsentrasi Manajemen Teknologi Informatika Universitas Udayana