repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan...

80

Transcript of repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan...

Page 1: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file
Page 2: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file
Page 3: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file
Page 4: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

1

3.1. Tempat dan Waktu Penelitian

Penelitian mengenai Pengembangan Pola Khusus berbasis Metode Pola

Busur Terlokalisasi ini dilakukan di Bali, khususnya di Denpasar, Badung, Tabanan,

Gianyar, Klungkung dan Bangli. Waktu pengambilan data tersebut dilaksanakan

selama Bulan Juli sampai dengan Agustus 2012 melalui penelitian langsung

dilapangan dengan mengambil foto aksara dari sumber buku-buku bacaan Aksara

Bali dan Lontar. Pengembangan dan implementasi sistem dilakukan di

Laboratorium Komputasi, Jurusan Teknologi Informasi, Fakultas Teknik Uiversitas

Udayana Denpasar.

3.2. Data

3.2.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 sebagian diambil dari 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.2. Metode Pengumpulan Data

1. Metode Observasi, yaitu pengumpulan data dengan mengadakan penelitian

secara langsung pada instansi-instansi yang terkait.

2. Metode Interview, yaitu pengumpulan data dengan mengadakan wawancara

dan tanya jawab secara langsung pada pihak-pihak yang terkait.

DOKUMENTASI SISTEM

TAHAP PERANCANGAN DAN PEMBUATAN

SISTEM PENGENALAN AKSARA BALI

Page 5: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

2

3. Metode Studi Literatur, yaitu mengumpulkan data dari buku-buku referensi,

modul-modul yang relevan dengan objek permasalahan.

3.3. Bahasa Pemrograman

Bahasa pemrograman yang digunakan pada Penelitian Pengembangan Pola

Khusus berbasis Metode Pola Busur Terlokalisasi ini adalah Borland Delphi 7.2.

Perangkat lunak lain yang diperlukan adalah program paket pengolahan citra, dan

dipergunakan pada tahapan prapemrosesan seperti Paint Shop Pro.

3.4. Metode Penyelesaian Masalah

Langkah-langkah yang dilakukan dalam penelitian ini adalah:

1. Pengumpulan literatur yang berhubungan dengan perancangan dan pembuatan

perangkat lunak pengenalan karakter.

2. Mempelajari dan memahami proses yang terjadi dalam perancangan dan

pembuatan perangkat lunak pengenalan karakter.

3. Penyusunan perangkat lunak (software).

4. Pengujian perangkat lunak (software).

5. Analisis hasil dan pengambilan kesimpulan.

3.5. Perangkat Pemodelan Sistem

3.5.1 Gambaran Umum Sistem Pengenalan Karakter Aksara Bali

Gambaran Umum Sistem yang dirancang pada sistem ini adalah seperti terlihat pada

Gambar 3.1 berikut:

Page 6: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

3

Gambar 3.1

Gambaran Umum Sistem Pengenalan Aksara Bali

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

Laporan hasil pengenalan

Keluaran nilai ketidaksamaan terkecil dan ID

Aksara

Proses

pendaftaran

Masukan citra karakter

Aksara Bali

Masukan citra karakter

Aksara Bali

Pengembang sistem

Basisdata pola model

Basisdata acuan

Proses pembuatan

pola model

Proses Pengambilan Keputusan

Nilai threshold

Proses Pencarian Nilai

Terkecil Ketidaksamaan

Proses Pencocokan dengan Semua

Basisdata Aksara

Page 7: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

4

3.5.3 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 masing-masing pola.

Pola yang memiliki nomor model yang sama tetapi dengan nomor urut

Page 8: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

5

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 :

.......................................(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 :

23

2

1

x

x

x

x

pmpp

m

m

i

xxx

xxx

xxx

P

21

22221

11211

………………………(3.2)

Page 9: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

6

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

k

iki m

xx

1…………………………………………….(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

j

tjj mxxxxV

1

// /……………....(3.4)

Mencari frekuensi kemunculan pola model pada citra karakter yang

dibandingkan sama halnya dengan mencari frekuensi pola model acuan.

Page 10: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

7

Misalkan Aksara Bali yang dibandingkan disebut Q maka vektor kolom

hasilnya adalah xq. Varians V, rata-rata acuan x/ dan vektor kolom xq,

digunakan menghitung nilai beda (Yoshimura I. dkk, 1994, hal.61) dengan

persamaan sebagai berikut:

p

qk q

kk

Qq

k k

kk

Q ZZZZQPiD

1

2

/

1

2

/ )()(),(

... (3.5)

Q

t

k

k

Q xlZ ………………………………………. (3.6)

// xlZ t

k

k ………………………………………...(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

Page 11: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

8

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 batas didapatkan dengan pengujian-pengujian sebelumnya.

Apabila d(Pj, Qi) 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’.

Page 12: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

9

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

Page 13: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

10

Gambar 3.2

Struktur Diagram Jackson Sistem Pengenalan

PERSIAPAN LINGKUNGAN

SISTEM

o

MASUKAN POLA MODEL

KE FILE

o

SETTING KONSTANTA

SISTEM PENGENALAN

*

SISTEM UTAMA

Keterangan

* : iterasi o : pilihan

o

UBAH LINGKUNGAN SISTEM

o

MASUKAN POLA MODEL

KE FILE

o

SETTING

KONSTANTA

o

PEMBUATAN

DATA ACUAN

o

PENGENALAN

*

PROSES PENGENALAN

BUAT LAPORAN

BACA CITRA AKSARA

EKSTRAKSI CIRI

PEMBANDINGAN

PENGAMBILAN KEPUTUSAN

*

PROSES PEMBUATAN

DATA ACUAN

*

CARI FREKUENSI ACUAN

*

CARI NILAI

AMBANG

CARI MEDIAN NILAI AMBANG

TULIS KE FILE ACUAN

BACA CITRA AKSARA

MASUKAN IDENTITAS AKSARA

BACA CITRA AKSARA

EKSTRAKSI CIRI

EKSTRAKSI CIRI

PEMBANDINGAN

Page 14: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

11

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;

Page 15: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

12

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

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.

Page 16: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

13

Gambar 3.3

Gambar 3.3.

Bagan alir proses pengenalan Aksara Bali

Ya

Tidak Ya

Start

Aktifkan data acuan ke i, Pi

Hitung varians ( V )

Hitung nilai eigen (), vektor eigen (l) serta

urutannya secara menurun

Simpan di Array Nilai Ketidaksamaan Aksara uji Q

Ekstraksi ciri citra Aksara Bali uji Q

Hitung ketidaksamaan D(Pi,Q)

Uji lagi ?

Stop

D(Pi,Q) Cci x Cd

Hasil uji Q

“Tidak Terdaftar”

Hasil uji Q “Dikenali Sebagai

aksara ke-i”

Laporan

- daftar hasil - daftar D(Pi,Q)

- waktu proses

Tidak

Tidak

Ya

Masukkan Aksara Uji

Record Terakhir

?

Hitung frekuensi

rata-rata (x/)

Proses Pencarian Nilai D(Pii,Q) Terkecil

Inc(i)

Page 17: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

14

Gambar 3.4

Bagan alir tahap pendaftaran

Tidak

Tidak Ya

Ya

Aktifkan citra Aksara Bali Acuan

Stop

Id sudah terdaftar ?

Hitung frekuensi

rata-rata (x/) dari Pid

Hitung varians ( V )

Hitung nilai eigen (), vektor eigen (l) serta

urutannya secara menurun

Mendaftarkan Aksara Bali baru lagi?

Baca citra

Ekstraksi ciri, simpan ke array Pid[m]

Masukkan Nomor Id

Masukkan nama Aksara Bali

m = 0 t = 0

Ya

m > 3 Tidak

Inc(m)

Ya

t > 3 Tidak

Inc(t)

Hitung nilai ketidaksamaan D(Pid,Qt)

Baca citra

Ekstraksi ciri Aksara Bali ke-t+3

Cari median dari D(Pid,Qt) sebagai

nilai ambang (Ccid)

Tulis Pid ke file

basis data acuan

Start

Page 18: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

15

3.6.3. Struktur Data

Melihat rancangan sistem yang ada maka selanjutnya disiapkan struktur data

dari rancangan sistem pengenalan yang nantinya 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;

Page 19: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

16

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.

Page 20: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

17

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

Page 21: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

18

3.7.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.7.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 = 'Aksara1.Dat';

DefaultCd = 3;

SignWidth = 165;

SignHeigh = 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;

Page 22: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

19

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

Page 23: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

20

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.

1. Nomor 1a adalah panel yang digunakan untuk menampilkan nama file

citra aksara aktif.

2. Nomor 1b adalah tempat menampilkan citra aksara aktif.

Grup 1

Grup 2

Grup 3

Grup 4 1a

2b

2a

1b

1e

1d

1c

3a

2d

2c

Page 24: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

21

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

4. Nomor 1d adalah tempat untuk menampilkan nilai beda dari hasil

pengenalan.

5. Nomor 1e adalah tempat menampilkan waktu proses.

6. 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;

Page 25: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

22

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.

1. Nomor 2a adalah filter combo box, yang digunakan untuk menyaring

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

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

3. Nomor 2c adalah drive combo box yang digunakan untuk memilih drive.

4. Nomor 2d adalah directory list box yang digunakan sebagai tempat

untuk memilih direktori.

5. Tombol Select digunakan untuk memilih nama file yang akan dikenali.

Page 26: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

23

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.

1. Nomor 3a adalah obyek list box, yang digunakan untuk menampung

nama-nama file citra Aksara Bali terpilih yang akan dikenali.

2. 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;

Page 27: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

24

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;

1. Tombol New List digunakan untuk mengosongkan daftar nama file

yang ada pada obyek list box nomor 3a.

2. Tombol Unselect digunakan untuk membuang nama file citra Aksara

Bali yang ditunjuk pada obyek list box nomor 3a.

3. 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 :

1. Tombol About digunakan untuk memanggil form FSignAbout.frm yang

berisi informasi tentang sistem pengenalan.

Page 28: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

25

2. Tombol Setting digunakan untuk memanggil form FSetEnv.frm yang

berisi tempat untuk mengubah nilai variabel lingkungan sistem.

3. Tombol Enrollment digunakan untuk memanggil form

FEnrollGroup.frm yang merupakan tempat pendaftaran aksara baru.

4. Tombol Browse digunakan untuk memanggil form FBrowse.frm yang

berisi nama-nama aksara yang telah terdaftar pada basisdata acuan.

5. Tombol New Model digunakan untuk memasukkan pola model baru ke

file referensi melalui pemanggilan form FModel.frm.

6. Tombol Show Model digunakan untuk menampilkan pola model

referensi yang telah ada melalui pemanggilan form FModel.frm.

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

Page 29: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

26

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

Page 30: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

27

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)<awalX_L) or ((j+y-1)<awalY_L) then

begin

if ModelPattern.Pattern[i-1,j-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;

Page 31: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

28

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;

Page 32: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

29

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 -

(clWhite div 3)) Then

Gambar[i+1,j+1] := 0

else Gambar[i+1,j+1] := 1;

End;

BacaHuruf := Gambar;

End;

Function Recognice(Gambar : TGambar) : Real;

Var FreqCounterSign : TFrequency;

Page 33: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

30

Begin

CountFrequency(FreqCounterSign,Gambar);

Recognice := CountDissimilarity(PrEigenVector,

PrEigenValue,PrMeanFreq,FreqCounterSign,PrSort);

End;

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

Gambar 3.6

Tampilan Form Pendaftaran

1. Nomor 1 adalah tempat untuk menampilkan nomor identitas Aksara Bali

yang akan didaftarkan.

2. Nomor 2 adalah tempat memasukkan atau menampilkan nama Aksara

Bali.

3. Nomor 3 adalah tempat untuk menampilkan waktu proses.

4. Nomor 4 adalah tempat menampilkan citra Aksara Bali acuan.

1

7 6

5

4 3

2

Page 34: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

31

5. Nomor 5 adalah tempat menampilkan nilai beda antara aksara acuan

dengan aksara pembanding C1.

6. Nomor 6 adalah tempat menampilkan nilai beda antara aksara acuan

dengan aksara pembanding C2.

7. Nomor 7 adalah tempat menampilkan nilai beda antara aksara acuan

dengan aksara pembanding C3.

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

Page 35: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

32

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,EGEigen

Value, 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

Page 36: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

33

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 := ' ' + FloatToStr(TotalWaktu) + ' Milli

Second';

EdIDNumber.SetFocus;

//FCoba1.Show;

end;

3.7.2.4 Form-Form Pendukung

Form-form pendukung sistem adalah form-form tambahan yang digunakan

oleh sistem pengenalan untuk menampilkan informasi atau mengerjakan bagian-

bagian yang tidak bisa dikerjakan pada form utama karena keterbatasan tempat.

Adapun form-form tersebut adalah sebagai berikut :

Page 37: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

34

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.

Page 38: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

35

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

Page 39: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

36

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

Page 40: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

37

BAB IV. HASIL DAN PEMBAHASAN

Bab Pengujian dan Analisis Hasil ini diawali dengan pembahasan mengenai

implementasi sistem, dilanjutkan dengan pengujian sistem serta analisis dari hasil

pengujian tersebut. Sebelum itu terlebih dahulu dijelaskan faktor-faktor yang

berpengaruh terhadap proses pengujian. Kemudian dibahas mengenai hasil

pengujian beserta analisisnya. Selain itu juga dilengkapi dengan analisis terhadap

kompleksitas waktu eksekusi dan ruang penyimpanan.

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.

DOKUMENTASI SISTEM UJI COBA DAN ANALISA

HASIL APLIKASI PENGENALAN AKSARA BALI

Page 41: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

38

Gambar 4.1 (a) Kemungkinan pola-pola dari Pola Busur Terlokalisasi untuk

Pola Bujursangkar 5X5 (nomor urut 1 sampai 63)

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.12 Model 12

No.13 Model 13

No.14 Model 14

No.15 Model 15

No.16 Model 16

No.17 Model 17

No.18 Model 18

No.19 Model 19

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.29 Model 29

No.30 Model 30

No.31 Model 31

No.32 Model 32

No.33 Model 33

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.56 Model 56

No.57 Model 57

No.58 Model 58

No.59 Model 59

No.60 Model 59

No.61 Model 59

No.62 Model 60

No.63 Model 61

Page 42: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

39

Gambar 4.1(b)

Kemungkinan pola-pola dari Pola Busur Terlokalisasi untuk

Pola Bujursangkar 5X5 (nomor urut 64 sampai 125)

No.64 Model 61

No.65 Model 61

No.66 Model 62

No.67 Model 63

No.68 Model 64

No.69 Model 64

No.70 Model 64

No.71 Model 65

No.72 Model 66

No.73 Model 66

No.74 Model 66

No.75 Model 67

No.76 Model 68

No.77 Model 69

No.78 Model 69

No.79 Model 70

No.80 Model 71

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.88 Model 76

No.89 Model 77

No.90 Model 78

No.91 Model 78

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.98 Model 84

No.99 Model 85

No.100 Model 86

No.101 Model 87

No.102 Model 88

No.103 Model 89

No.104 Model 90

No.105 Model 91

No.106 Model 92

No.107 Model 92

No.108 Model 92

No.109 Model 93

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.120 Model 100

No.121 Model 101

No.122 Model 101

No.123 Model 101

No.124 Model 102

No.125 Model 103

Page 43: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

40

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 : TWArrModelPattern;

TotalSampelSign : 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;

Page 44: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

41

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)<awalX_L) or ((j+y-1)<awalY_L) then

begin

if WArrModelPattern[NM].Pattern[i-1,j-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.

Page 45: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

42

Tabel 4.1

Frekuensi kemunculan masing-masing pola pada 600 citra biner Aksara Bali

No Model Freq No Model Freq No Model Freq No Model Fr

eq No Model

Freq

1 1 36365 26 26 19 51 51 0 76 68 0 101 87 0

2 2 489 27 27 0 52 52 0 77 69 0 102 88 8

3 3 223 28 28 9 53 53 0 78 69 0 103 89 0

4 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 2 75 67 0 100 86 32 125 103 0

Hasil dari model pola yang didapat, kemudian diurutkan berdasarkan frekuensi

kemunculan terbanyak, hasilnya dapat dilihat pada Tabel 4.2.

Page 46: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

43

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.

Page 47: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

44

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 No Model Freq

1 1 36365 13 26 19

2 2 489 14 31 15

3 3 223 15 46 11319

4 4 743 16 47 10

5 5 226 17 49 8896

6 6 244 18 58 58154

7 8 171 19 63 17262

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

Page 48: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

45

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.

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. 8 Model 8

No. 10 Model 10

No. 12 Model 12

No. 13 Model 13

No. 14 Model 14

.

No. 19 Model 19

No. 26 Model 26

No. 31 Model 31

No. 46 Model 46

No. 47 Model 47

No. 49 Model 49

No. 58 Model 58

No. 67 Model 63

No. 96 Model 82

No. 97 Model 83

No. 100 Model 86

No. 104 Model 90

Gambar 4.2

Pola-pola terpilih sebanyak 23 pola

Page 49: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

46

14

21

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. 12 Model 12

No. 13 Model 13

No. 14 Model

No. 15 Model 15

No. 16 Model 16

No. 17 Model 17

No. 18 Model 18

No. 19 Model 19

No. 20 Model 20

No. 21 Model

No. 22 Model 22

No. 23 Model 23

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

Page 50: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

47

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. Berdasarkan hasil

pengujian terhadap variasi nilai q dipilih satu nilai yang mengakibatkan

sistem mengalami kesalahan terkecil, dan seterusnya dipergunakan sebagai

konstanta nomor pemotongan nilai eigen dalam setiap proses 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. 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

Sumber data yang dipakai sebagai sampel Aksara Bali yang digunakan untuk

melakukan pembentukan pola model dan pengujian sistem pengenalan

karakter ini adalah sebagian diambil dari 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.

Page 51: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

48

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 komponen-komponen

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

Page 52: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

49

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

Page 53: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

50

Gambar 4.6

Contoh tampilan saat Aksara A diuji

Gambar 4.7

Contoh laporan hasil pengenalan

Page 54: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

51

4.1.5.2 Pendaftaran karakter Aksara Bali Acuan

Tahap pendaftaran yang bertujuan untuk mendaftarkan masing-masing

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 tabel-tabel berikut.

Tabel 4.5

Nilai ambang terpilih dengan menggunakan 23 pola model Aksara Bali

No Id Aksara Threshold

(q=1)

Threshold

(q=2)

Threshold

(q=3)

Threshold

(q=4)

1 1 A 7,8356 x 10-3 2,6111 x 101 4,1528 x 102 4,1844 x 1014

2 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

19 19 Da 5,9961 x 10-2 7,4486 x 1014 2,9995 x 1017 1,9849 x 1019

20 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

Page 55: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

52

No Id Aksara Threshold

(q=1)

Threshold

(q=2)

Threshold

(q=3)

Threshold

(q=4)

24 24 Gantungan E 2,8754 x 10-4 3,4465 x 1014 1,6950 x 1016 Error

25 25 Gantungan E 2,0424 x 10-4 2,4722 x 1012 6,2731 x 1014 2,5646 x 1017

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

30 30 Ka 5,1982 x 10-3 7,7039 3,4347 x 101 3,8597 x 1015

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

34 34 La 2,9913 x 10-3 4,1971 1,9796 x 102 1,3907 x 1016

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

42 42 Nga 4,8930 x 10-4 1,2132 x 101 6,7628 1,5864 x 1015

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

51 51 Ra 9,3137 x 10-3 1,3700 x 101 4,0432 x 102 2,9042 x 1015

52 52 Ra 4,3535 x 10-2 4,6613 x 1015 1,0888 x 1018 3,2739 x 1018

53 53 Ra 2,4031 x 10-2 1,7941 x 101 5,9910 x 1020 Error

54 54 Ri 3,7696 x 10-3 2,1059 6,9325 x 101 3,6780 x 1015

55 55 Sa 6,3259 x 10-4 8,4236 x 101 5,1131 6,4470 x 1014

56 56 Sa 1,5114 x 10-3 2,2430 x 1016 3,4128 x 1018 Error

Page 56: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

53

No Id Aksara Threshold

(q=1)

Threshold

(q=2)

Threshold

(q=3)

Threshold

(q=4)

57 57 Su 1,0525 x 10-4 1,2369 x 101 3,2591 x 102 4,1940 x 1015

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

67 67 Wa 5,4214 x 10-3 4,0310 1,8087 x 1015 1,9716 x 1018

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

No Id Aksara Threshold

(q=1)

Threshold

(q=2)

Threshold

(q=3)

Threshold

(q=4)

1 1 A 7,8191 x 10-3 2,5942 x 101 4,1247 x 102 8,7704 x 1014

2 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

Page 57: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

54

No Id Aksara Threshold

(q=1)

Threshold

(q=2)

Threshold

(q=3)

Threshold

(q=4)

11 11 Ca 2,8689 x 10-3 3,4555 x 1014 2,9528 x 1016 Error

12 12 Carik 4,8413 x 10-4 6,7567 6,2582 x 101 9,2270 x 1015

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

17 17 Da 1,7347 x 10-3 3,2803 2,2385 x 101 3,1917 x 1014

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

31 31 Ka 1,9891 x 10-2 3,9709 5,9000 x 102 4,3264 x 1015

32 32 Ka 9,6744 x 10-2 3,7242 x 1016 8,8394 x 1017 2,2099 x 1019

33 33 Ka 6,4724 x 10-3 2,4058 x 1017 7,2964 x 1017 Error

34 34 La 2,9821 x 10-3 4,2185 2,0419 x 102 3,9402 x 1017

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

42 42 Nga 4,8930 x 10-4 6,2435 x 101 6,7742 1,0693 x 1014

43 43 Nga 6,7087 x 10-4 4,6754 x 1014 7,9949 x 1015 3,2531 x 1016

Page 58: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

55

No Id Aksara Threshold

(q=1)

Threshold

(q=2)

Threshold

(q=3)

Threshold

(q=4)

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

51 51 Ra 9,3072 x 10-3 1,3734 x 101 4,4646 x 102 1,6233 x 1015

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

54 54 Ri 3,7464 x 10-3 2,0930 7,4038 x 101 4,2006 x 1015

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

63 63 Tur 9,6710 x 10-3 9,9567 2,5991 x 102 1,7777 x 1014

64 64 Tya 4,9112 x 10-3 8,9951 3,4263 x 101 1,8784 x 1015

65 65 Wa 1,0496 x 10-3 2,9420 3,5527 x 101 3,0626 x 1016

66 66 Wa 3,3192 x 10-4 1,0903 x 1014 1,1551 x 1016 Error

67 67 Wa 5,5000 x 10-3 4,0732 1,4505 x 1015 6,2045 x 1019

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

Page 59: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

56

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 tabel-

tabel berikut ini:

Page 60: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

57

Tabel 4.7

Jumlah kesalahan pada pengenalan dengan q = 1

dengan menggunakan 23 pola model Aksara Bali

No Jenis Aksara Waktu

Uji

(ms)

Jml

Uji

Cd = 2 Cd = 3 Cd = 4 Cd = 5

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

1 A 11685 6 6 0 0 6 0 0 6 0 0 6 0 0 2 Adeg-adeg 15912 9 9 0 0 9 0 0 9 0 0 9 0 0 3 Ba 15600 13 10 3 0 10 3 0 10 3 0 10 3 0 4 Ca 8346 7 2 2 3 2 0 5 2 0 5 2 0 5 5 Carik 13697 11 11 0 0 11 0 0 11 0 0 11 0 0 6 Cecek 15553 12 11 0 1 11 0 1 11 0 1 11 0 1 7 Da 14133 12 11 0 1 11 0 1 11 0 1 11 0 1 8 Ga 11591 9 9 0 0 9 0 0 9 0 0 9 0 0 9 Gantungan E 16692 13 13 0 0 13 0 0 13 0 0 13 0 0 10 Ha 6131 5 3 1 1 4 0 1 4 0 1 4 0 1 11 Ja 10530 8 8 0 0 8 0 0 8 0 0 8 0 0 12 Ka 13291 12 9 0 3 9 0 3 9 0 3 9 0 3 13 La 6303 6 6 0 0 6 0 0 6 0 0 6 0 0 14 Li 10546 7 7 0 0 7 0 0 7 0 0 7 0 0 15 Ma 8346 7 7 0 0 7 0 0 7 0 0 7 0 0 16 Na 7629 7 7 0 0 7 0 0 7 0 0 7 0 0 17 Nga 8517 6 6 0 0 6 0 0 6 0 0 6 0 0 18 Ngi 7894 5 5 0 0 5 0 0 5 0 0 5 0 0 19 Ni 8923 6 1 0 5 1 0 5 1 0 5 1 0 5 20 Nya 13541 9 9 0 0 9 0 0 9 0 0 9 0 0 21 Pa 9953 8 7 1 0 7 1 0 7 1 0 7 0 1 22 Ra 9812 8 8 0 0 8 0 0 8 0 0 8 0 0 23 Ri 8315 6 6 0 0 6 0 0 6 0 0 6 0 0 24 Sa 7925 7 7 0 0 7 0 0 7 0 0 7 0 0 25 Su 11512 7 7 0 0 7 0 0 7 0 0 7 0 0 26 Ta 10623 8 8 0 0 8 0 0 8 0 0 8 0 0 27 Tang 8736 6 6 0 0 6 0 0 6 0 0 6 0 0 28 Tur 10608 6 6 0 0 6 0 0 6 0 0 6 0 0 29 Tya 10811 6 6 0 0 6 0 0 6 0 0 6 0 0 30 Wa 8861 7 7 0 0 7 0 0 7 0 0 7 0 0 31 Ya 9734 8 7 0 1 7 0 1 7 0 1 7 0 1

T O T A L 24

7

22

5

7 15 22

6

4 17 22

6

4 17 22

6

3 18 2,8

% 6,1

% 1,6

% 6,9

% 1,6

% 6,9

% 1,2

% 7,3

% 91,1

% 8,9%

91,

5% 8,5%

91,

5% 8,5%

91,

5% 8,5%

Page 61: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

58

Tabel 4.8

Jumlah kesalahan pada pengenalan dengan q = 2

dengan menggunakan 23 pola model Aksara Bali

No Jenis Aksara Waktu

Uji

(ms)

Jml Uji

Cd = 2 Cd = 3 Cd = 4 Cd = 5

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

1 A 11715 6 3 0 3 3 0 3 3 0 3 3 0 3 2 Adeg-adeg 16115 9 9 0 0 9 0 0 9 0 0 9 0 0 3 Ba 15647 13 11 0 2 11 0 2 11 0 2 11 0 2 4 Ca 8533 7 2 1 4 2 0 5 2 0 5 2 0 5 5 Carik 13806 11 6 0 5 6 0 5 6 0 5 6 0 5 6 Cecek 15615 12 11 0 1 11 0 1 11 0 1 11 0 1 7 Da 14212 12 8 0 4 8 0 4 8 0 4 8 0 4 8 Ga 11653 9 9 0 0 9 0 0 9 0 0 9 0 0 9 Gantungan E 16801 13 13 0 0 13 0 0 13 0 0 13 0 0 10 Ha 6178 5 3 0 2 3 0 2 3 0 2 3 0 2 11 Ja 10654 8 2 0 6 2 0 6 2 0 6 2 0 6 12 Ka 13323 12 9 0 3 9 0 3 9 0 3 9 0 3 13 La 6380 6 3 0 3 3 0 3 3 0 3 3 0 3 14 Li 10546 7 6 1 0 6 0 1 6 0 1 6 0 1 15 Ma 8362 7 7 0 0 7 0 0 7 0 0 7 0 0 16 Na 7691 7 7 0 0 7 0 0 7 0 0 7 0 0 17 Nga 8518 6 6 0 0 6 0 0 6 0 0 6 0 0 18 Ngi 7909 5 5 0 0 5 0 0 5 0 0 5 0 0 19 Ni 9391 6 0 0 6 0 0 6 0 0 6 0 0 6 20 Nya 14009 9 9 0 0 9 0 0 9 0 0 9 0 0 21 Pa 10327 8 6 0 2 6 0 2 6 0 2 6 0 2 22 Ra 10250 8 8 0 0 8 0 0 8 0 0 8 0 0 23 Ri 8643 6 6 0 0 6 0 0 6 0 0 6 0 0 24 Sa 8252 7 7 0 0 7 0 0 7 0 0 7 0 0 25 Su 11996 7 7 0 0 7 0 0 7 0 0 7 0 0 26 Ta 11263 8 6 0 2 6 0 2 6 0 2 6 0 2 27 Tang 9094 6 0 0 6 0 0 6 0 0 6 0 0 6 28 Tur 11044 6 6 0 0 6 0 0 6 0 0 6 0 0 29 Tya 11325 6 6 0 0 6 0 0 6 0 0 6 0 0 30 Wa 9345 7 7 0 0 7 0 0 7 0 0 7 0 0 31 Ya 10296 8 5 1 2 5 1 2 5 0 3 5 0 3

T O T A L 24

7

193 3 51

193 1 53

193 0 54

193 0 54

1,2

% 20,

6% 0,4

% 21,

4% 0

21,

8% 0

21,

8% 78,

2% 21,8%

78,

2% 21,8%

78,

2% 21,8%

78,

2% 21,8%

Page 62: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

59

Tabel 4.9

Jumlah kesalahan pada pengenalan dengan q = 3

dengan menggunakan 23 pola model Aksara Bali

No Jenis Aksara Waktu

Uji

(ms)

Jml

Uji

Cd = 2 Cd = 3 Cd = 4 Cd = 5

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

1 A 11248 6 6 0 0 6 0 0 6 0 0 6 0 0 2 Adeg-adeg 15256 9 9 0 0 9 0 0 9 0 0 9 0 0 3 Ba 15116 13 12 1 0 12 1 0 12 1 0 12 0 1 4 Ca 8112 7 0 3 4 0 1 6 0 0 7 0 0 7 5 Carik 13120 11 11 0 0 11 0 0 11 0 0 11 0 0 6 Cecek 15022 12 12 0 0 12 0 0 12 0 0 12 0 0 7 Da 13728 12 12 0 0 12 0 0 12 0 0 12 0 0 8 Ga 11201 9 9 0 0 9 0 0 9 0 0 9 0 0 9 Gantungan E 16630 13 13 0 0 13 0 0 13 0 0 13 0 0 10 Ha 5912 5 5 0 0 5 0 0 5 0 0 5 0 0 11 Ja 10187 8 8 0 0 8 0 0 8 0 0 8 0 0 12 Ka 13229 12 12 0 0 12 0 0 12 0 0 12 0 0 13 La 6115 6 6 0 0 6 0 0 6 0 0 6 0 0 14 Li 10093 7 7 0 0 7 0 0 7 0 0 7 0 0 15 Ma 8081 7 7 0 0 7 0 0 7 0 0 7 0 0 16 Na 7488 7 7 0 0 7 0 0 7 0 0 7 0 0 17 Nga 8175 6 6 0 0 6 0 0 6 0 0 6 0 0 18 Ngi 7520 5 5 0 0 5 0 0 5 0 0 5 0 0 19 Ni 8923 6 6 0 0 6 0 0 6 0 0 6 0 0 20 Nya 13478 9 9 0 0 9 0 0 9 0 0 9 0 0 21 Pa 9906 8 8 0 0 8 0 0 8 0 0 8 0 0 22 Ra 9797 8 8 0 0 8 0 0 8 0 0 8 0 0 23 Ri 8252 6 6 0 0 6 0 0 6 0 0 6 0 0 24 Sa 7878 7 7 0 0 7 0 0 7 0 0 7 0 0 25 Su 11466 7 7 0 0 7 0 0 7 0 0 7 0 0 26 Ta 110624 8 8 0 0 8 0 0 8 0 0 8 0 0 27 Tang 8674 6 6 0 0 6 0 0 6 0 0 6 0 0 28 Tur 10592 6 6 0 0 6 0 0 6 0 0 6 0 0 29 Tya 11029 6 6 0 0 6 0 0 6 0 0 6 0 0 30 Wa 8783 7 7 0 0 7 0 0 7 0 0 7 0 0 31 Ya 9672 8 7 1 0 7 1 0 7 0 1 7 0 1

T O T A L 24

7

23

8

5 4 23

8

3 6 23

8

1 8 23

8

0 9 2,0

% 1,6

% 1,2

% 2,4

% 0,4

% 3,2

% 0%

3,6

% 92,

7% 7,3%

92,

7% 7,3%

92,

7% 7,3%

92,

7% 7,3%

Page 63: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

60

Tabel 4.10

Jumlah kesalahan pada pengenalan dengan q = 1

dengan menggunakan 42 pola model tandatangan Indonesia

No Jenis Aksara Waktu

Uji (ms)

Jml Uji

Cd = 2 Cd = 3 Cd = 4 Cd = 5

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

1 A 24227 6 6 0 0 6 0 0 6 0 0 6 0 0 2 Adeg-adeg 32978 9 9 0 0 9 0 0 9 0 0 9 0 0 3 Ba 33540 13 10 3 0 10 3 0 10 3 0 10 3 0 4 Ca 17987 7 2 2 3 2 1 4 2 0 5 2 0 5 5 Carik 28860 11 11 0 0 11 0 0 11 0 0 11 0 0 6 Cecek 32682 12 11 0 1 11 0 1 11 0 1 11 0 1 7 Da 30061 12 11 0 1 11 0 1 11 0 1 11 0 1 8 Ga 24289 9 9 0 0 9 0 0 9 0 0 9 0 0 9 Gantungan E 35100 13 13 0 0 13 0 0 13 0 0 13 0 0 10 Ha 13057 5 3 1 1 3 1 1 4 0 1 4 0 1 11 Ja 22011 8 8 0 0 8 0 0 8 0 0 8 0 0 12 Ka 28470 12 9 0 3 9 0 3 9 0 3 9 0 3 13 La 13806 6 6 0 0 6 0 0 6 0 0 6 0 0 14 Li 21684 7 7 0 0 7 0 0 7 0 0 7 0 0 15 Ma 17581 7 7 0 0 7 0 0 7 0 0 7 0 0 16 Na 16333 7 7 0 0 7 0 0 7 0 0 7 0 0 17 Nga 17581 6 6 0 0 6 0 0 6 0 0 6 0 0 18 Ngi 16708 5 5 0 0 5 0 0 5 0 0 5 0 0 19 Ni 19297 6 2 0 4 2 0 4 2 0 4 2 0 4 20 Nya 29546 9 9 0 0 9 0 0 9 0 0 9 0 0 21 Pa 21699 8 8 0 0 8 0 0 8 0 0 8 0 0 22 Ra 21419 8 8 0 0 8 0 0 8 0 0 8 0 0 23 Ri 18018 6 6 0 0 6 0 0 6 0 0 6 0 0 24 Sa 17706 7 7 0 0 7 0 0 7 0 0 7 0 0 25 Su 25303 7 7 0 0 7 0 0 7 0 0 7 0 0 26 Ta 23072 8 8 0 0 8 0 0 8 0 0 8 0 0 27 Tang 18767 6 6 0 0 6 0 0 6 0 0 6 0 0 28 Tur 22869 6 6 0 0 6 0 0 6 0 0 6 0 0 29 Tya 23213 6 6 0 0 6 0 0 6 0 0 6 0 0 30 Wa 19047 7 7 0 0 7 0 0 7 0 0 7 0 0 31 Ya 21154 8 7 1 0 7 1 0 7 0 1 7 0 1

T O T A L 24

7

22

7

7 13 22

7

6 14 22

8

3 16 22

8

3 16 2,8

% 5,3

% 2,4

% 5,7

% 1,2

% 6,5

% 1,2

% 6,5

% 91,

9% 8,1%

91,

9% 8,1%

92,

3% 7,7%

92,

3% 7,7%

Page 64: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

61

Tabel 4.11

Jumlah kesalahan pada pengenalan dengan q = 2

dengan menggunakan 42 pola model tandatangan Indonesia

No Jenis Aksara Waktu

Uji

(ms)

Jml Uji

Cd = 2 Cd = 3 Cd = 4 Cd = 5

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

1 A 23228 6 3 0 3 3 0 3 3 0 3 3 0 3 2 Adeg-adeg 31824 9 9 0 0 9 0 0 9 0 0 9 0 0 3 Ba 33041 13 11 0 2 11 0 2 11 0 2 11 0 2 4 Ca 17846 7 2 2 3 2 2 3 2 1 4 2 1 4 5 Carik 29578 11 6 0 5 6 0 5 6 0 5 6 0 5 6 Cecek 33805 12 11 0 1 11 0 1 11 0 1 11 0 1 7 Da 30669 12 7 0 4 7 0 4 7 0 4 7 0 4 8 Ga 25101 9 9 0 0 9 0 0 9 0 0 9 0 0 9 Gantungan E 35926 13 13 0 0 13 0 0 13 0 0 13 0 0 10 Ha 13401 5 3 0 2 3 0 2 3 0 2 3 0 2 11 Ja 22230

8 8 2 0 6 2 0 6 2 0 6 2 0 6

12 Ka 28688 12 9 0 3 9 0 3 9 0 3 9 0 3 13 La 13759 6 3 0 3 3 0 3 3 0 3 3 0 3 14 Li 22090 7 5 2 0 5 0 2 5 0 2 5 0 2 15 Ma 17940 7 7 0 0 7 0 0 7 0 0 7 0 0 16 Na 16474 7 7 0 0 7 0 0 7 0 0 7 0 0 17 Nga 17722 6 6 0 0 6 0 0 6 0 0 6 0 0 18 Ngi 16271 5 5 0 0 5 0 0 5 0 0 5 0 0 19 Ni 19344 6 0 0 6 0 0 6 0 0 6 0 0 6 20 Nya 29546 9 9 0 0 9 0 0 9 0 0 9 0 0 21 Pa 21684 8 6 0 2 6 0 2 6 0 2 6 0 2 22 Ra 21512 8 8 0 0 8 0 0 8 0 0 8 0 0 23 Ri 17987 6 6 0 0 6 0 0 6 0 0 6 0 0 24 Sa 17597 7 7 0 0 7 0 0 7 0 0 7 0 0 25 Su 24960 7 7 0 0 7 0 0 7 0 0 7 0 0 26 Ta 23182 8 6 0 2 6 0 2 6 0 2 6 0 2 27 Tang 18970 6 0 0 6 0 0 6 0 0 6 0 0 6 28 Tur 22901 6 6 0 0 6 0 0 6 0 0 6 0 0 29 Tya 23447 6 6 0 0 6 0 0 6 0 0 6 0 0 30 Wa 19110 7 7 0 0 7 0 0 7 0 0 7 0 0 31 Ya 21169 8 5 1 2 5 1 2 5 0 3 5 0 3

T O T A L 24

7

192 5 50

192 3 52

192 1 54

192 1 54

2% 20,

2% 1,2

% 21

% 0,4

% 21,

8% 0,4

% 21,

8% 77,

8% 22,2%

77,

8% 22,2%

77,

8% 22,2%

77,

8% 22,2%

Page 65: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

62

Tabel 4.12

Jumlah kesalahan pada pengenalan dengan q = 3

dengan menggunakan 42 pola model tandatangan Indonesia

No Jenis Aksara Waktu

Uji

(ms)

Jml

Uji

Cd = 2 Cd = 3 Cd = 4 Cd = 5

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

dikenal

Tidak terdaftar

Dikenal

aksara lain

1 A 23166 6 6 0 0 6 0 0 6 0 0 6 0 0 2 Adeg-adeg 31559 9 9 0 0 9 0 0 9 0 0 9 0 0 3 Ba 33126 13 12 1 0 12 1 0 12 1 0 12 1 0 4 Ca 17722 7 0 3 4 0 2 5 0 0 7 0 0 7 5 Carik 29094 11 11 0 0 11 0 0 11 0 0 11 0 0 6 Cecek 31605 12 12 0 0 12 0 0 12 0 0 12 0 0 7 Da 29125 12 12 0 0 12 0 0 12 0 0 12 0 0 8 Ga 23884 9 9 0 0 9 0 0 9 0 0 9 0 0 9 Gantungan E 34257 13 13 0 0 13 0 0 13 0 0 13 0 0 10 Ha 12605 5 5 0 0 5 0 0 5 0 0 5 0 0 11 Ja 21372 8 6 0 2 6 0 2 6 0 2 6 0 2 12 Ka 27675 12 12 0 0 12 0 0 12 0 0 12 0 0 13 La 13260 6 6 0 0 6 0 0 6 0 0 6 0 0 14 Li 20935 7 7 0 0 7 0 0 7 0 0 7 0 0 15 Ma 17160 7 7 0 0 7 0 0 7 0 0 7 0 0 16 Na 15897 7 7 0 0 7 0 0 7 0 0 7 0 0 17 Nga 17051 6 6 0 0 6 0 0 6 0 0 6 0 0 18 Ngi 15663 5 5 0 0 5 0 0 5 0 0 5 0 0 19 Ni 19453 6 6 0 0 6 0 0 6 0 0 6 0 0 20 Nya 29734 9 9 0 0 9 0 0 9 0 0 9 0 0 21 Pa 22090 8 4 4 0 4 4 0 4 4 0 4 4 0 22 Ra 21622 8 8 0 0 8 0 0 8 0 0 8 0 0 23 Ri 18065 6 6 0 0 6 0 0 6 0 0 6 0 0 24 Sa 17644 7 6 1 0 7 0 0 7 0 0 7 0 0 25 Su 25241 7 7 0 0 7 0 0 7 0 0 7 0 0 26 Ta 22418 8 8 0 0 8 0 0 8 0 0 8 0 0 27 Tang 18174 6 2 2 2 2 2 2 2 0 4 2 0 4 28 Tur 21981 6 6 0 0 6 0 0 6 0 0 6 0 0 29 Tya 22324 6 6 0 0 6 0 0 6 0 0 6 0 0 30 Wa 18579 7 7 0 0 7 0 0 7 0 0 7 0 0 31 Ya 20639 8 7 1 0 7 1 0 7 0 1 7 0 1

T O T A L 24

7

22

7

12 8 22

8

10 9 22

8

5 14 22

8

5 14 4,9

% 3,2

% 4,0

% 3,7

% 2%

5,7

% 2%

5,7

% 91,

9% 8,1%

92,

3% 7,7%

92,

3% 7,7%

92,

3% 7,7%

Page 66: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

63

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 masing-masing variasi

lingkungan sistem diperlihatkan kembali dalam Tabel 4.13 yang digunakan untuk

mempermudah melakukan analisis.

Page 67: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

64

Tabel 4.13

Banyaknya kesalahan yang terjadi pada pengujian sistem pengenalan

POLA MODEL q

Cd = 2,0 Cd = 3,0 Cd = 4,0 Cd = 5,0

diken

al

Tidak

terdaf

tar

Dikenal

aksar

a lain

diken

al

Tidak

terdaf

tar

Dikenal

aksar

a lain

diken

al

Tidak

terdaf

tar

Dikenal

aksar

a lain

diken

al

Tidak

terdaf

tar

Dikenal

aksar

a lain

Aksara Bali (p=23)

1 225 7 15 226 4 17 226 4 17 226 3 18 2 193 3 51 193 1 53 193 0 54 193 0 54 3 238 5 4 238 3 6 238 1 8 238 0 9

Tandatangan

Indonesia

(p=42)

1 227 7 13 227 6 14 228 3 16 228 3 16 2 192 5 50 192 3 52 192 1 54 192 1 54 3 227 12 8 228 10 9 228 5 14 228 5 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 masing-masing tipe kesalahan

tersebut adalah sebagai berikut :

%100247

)1.4(%100

Uj

Uj

Uj

Error

N

ErrorITipeError

%100247

)2.4(%100

Uj

Uj

Uj

Error

N

ErrorIITipeError

)3.4(IITipeErrorITipeErrorSistemError

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.

Page 68: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

65

Tabel 4.14 Prosentase kesalahan tipe I dan tipe II pada pengujian sistem pengenalan

POLA MODEL q

Cd = 2,0 Cd = 3,0 Cd = 4,0 Cd = 5,0

Tipe I

(%)

Tipe II

(%)

Tipe I

(%)

Tipe II

(%)

Tipe I

(%)

Tipe II

(%)

Tipe I

(%)

Tipe II

(%)

Aksara Bali

(p=23) 1 2,8 6,1 1,6 6,9 1,6 6,9 1,2 7,3

2 1,2 20,6 0,4 21,4 0 21,8 0 21,8

3 2,0 1,6 1,2 2,4 0,4 3,2 0 3,6

Tandatangan

Indonesia

(p=42)

1 2,8 5,3 2,4 5,7 1,2 6,5 1,2 6,5

2 2 20,2 1,2 21 0,4 21,8 0,4 21,8

3 4,9 3,2 4,0 3,7 2 5,7 2 5,7

Tabel 4.15 Prosentase kesalahan rata-rata pada pengujian sistem pengenalan

POLA MODEL q Cd = 2,0

(%)

Cd = 3,0

(%)

Cd = 4,0

(%)

Cd = 5,0

(%)

Aksara Bali

(p=23) 1 8,9 8,5 8,5 8,5

2 21,8 21,8 21,8 21,8

3 7,3 7,3 7,3 7,3

Tandatangan

Indonesia

(p=42)

1 8,1 8,1 7,7 7,7

2 22,2 22,2 22,2 22,2

3 8,1 7,7 7,7 7,7

Tabel 4.16 Prosentase keberhasilan pada pengujian sistem pengenalan

POLA MODEL q Cd = 2,0

(%)

Cd = 3,0

(%)

Cd = 4,0

(%)

Cd = 5,0

(%)

Aksara Bali

(p=23) 1 91,1 91,5 91,5 91,5

2 78,2 78,2 78,2 78,2

3 92,7 92,7 92,7 92,7

Tandatangan

Indonesia

(p=42)

1 91,9 91,9 92,3 92,3

2 77,8 77,8 77,8 77,8

3 91,9 92,3 92,3 92,3

Page 69: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

66

Gambar 4.9

Grafik prosentase kesalahan Tipe I

Gambar 4.10

Grafik prosentase kesalahan Tipe II

Page 70: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

67

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

Page 71: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

68

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 7,3%.

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

Jumlah Basis data Acuan yang terdaftar 10 20 30 40 50 60 70

t(ms) t(ms) t(ms) t(ms) t(ms) t(ms) t(ms)

1 247 23 50825 101291 163925 189431 231442 276043 317679 2 247 42 108398 196950 292626 388721 487423 591428 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 masing-

masing pola model. Waktu proses pengenalan yang diperlukan jika menggunakan

Page 72: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

69

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 92,7%. Hasil pengenalan ini sudah lebih 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

Page 73: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

70

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 masing-masing

ruang tersebut akan diekstraksi cirinya. Kekurangannya adalah menyebabkan waktu

proses yang 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 operasi-

operasi lain yang diperlukan selama sistem tersebut menjalankan fungsinya.

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.

Page 74: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

71

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

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.

Page 75: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

72

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 = (4p2 + 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.

Page 76: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

73

- 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

Page 77: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

74

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 (15p3 + 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.

Page 78: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

75

Total operasi matematis:

Perkalian/pembagian = (15p3 + 4p2 + 5p) + 12p

= (15p3 + 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

Page 79: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

76

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:

Page 80: repositori.unud.ac.id · bitmap berupa data kasar dan selanjutnya akan diproses pada tahapan selanjutnya. ii. Pra pemrosesan (preprocessing) Tahap awal pra pemrosesan ini, jika file

77

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.