BAB IV : IMPLEMENTASI
4.3 Implementasi Pengujian
Implementasi pengujian dilakukan terhadap proses penipisan serta hasil dari proses penipisan citra aksara Jawa. Implementasi ini meliputi pengamatan ukuran citra, sum of template A, sum of not critical point, sum of removal pixel, sum of pixel
object, one point thickness, running time, connectivity, kompleksitas waktu
4.3.1 Implementasi Pengamatan Ukuran Citra
Implementasi pengamatan ukuran citra dilakukan dengan mengamati ukuran citra hasil penipisan dan ukuran citra sebelum dilakukan penipisan. setelah melakukan pengamatan, data yang dihasilkan dilakukan penghitungan nilai rata-rata penurunan ukuran dari file citra asli menjadi file citra rangka. Hasil dari pengujian ini akan ditunjukkan pada bab berikutnya.
4.3.2 Implementasi Sum of Template A dan Sum of Not Critical Point
Implementasi sum of template A dilakukan dengan membandingkan tiap piksel, apakah ada yang mengandung template A1, jika ada maka piksel tersebut akan dibandingkan lagi, apa mengandung template B1 atau template C. Jika ya, nilai not critical point bertambah 1, jika tidak maka nilai sum of template A akan bertambah 1 dan melakukan perbandingan dengan template A2. Selanjutnya dilakukan pembandingan dengan template A3 dan A4. Pseudocode pengujian ini :
1 inisial variable contain_A = 0
2 cek setiap piksel rangka dengan melakukan langkah 3
3 uji apakah mengandung template A1, jika ya lakukan langkah 3a, jika tidak lakukan langkah 4
a. uji, apakah mengandung template B1 atau C
jika ya, not critical point tambah 1, dan lakukan langkah 4
jika tidak, contain_A tambah 1, dan lakukan langkah 4 4 uji apakah mengandung template A2, jika ya lakukan langkah 4a,
jika tidak lakukan langkah 5
a. uji, apakah mengandung template B2 atau C
jika ya, not critical point tambah 1, dan lakukan langkah 5
5 uji apakah mengandung template A3, jika ya lakukan langkah 5a, jika tidak lakukan langkah 6
a. uji, apakah mengandung template B3 atau C
jika ya, not critical point tambah 1, dan lakukan langkah 6
jika tidak, contain_A tambah 1, dan lakukan langkah 6 6 uji apakah mengandung template A4, jika ya lakukan langkah 6a,
a uji, apakah mengandung template B4 atau C jika ya, not critical point tambah 1
jika tidak, contain_A tambah 1
4.3.3 Implementasi One Point Thickness
One point thickness digunakan untuk mengetahui ketebalan citra rangka apakah memenuhi syarat ketebalan 1 piksel. Implementasi one point thickness ditunjukkan pada pseudocode :
1 hitung jumlah piksel rangka(sum of pixel skeleton )
2 hitung jumlah piksel not critical point (seperti pada perhitungan sum of template A dan sum of not critical point)
3 hitung one point thickness dengan cara mengurangi piksel rangka dengan piksel not critical point
4 hitung persentase one point thickness dengan cara One point thickness dibagi piksel rangka dikali 100%
4.3.4 Implementasi Sum of Pixel Object
Implementasi sum of pixel object akan melakukan penghitungan jumlah piksel “on” pada citra, hal ini dilakukan dengan mengecek seluruh piksel pada citra, dan melakukan penghitungan piksel “on”. Implementasi ini ditunjukkan dengan pseudocode :
1 inisialisasi temp aray citra biner 2 inisialisasi dimensi citra
3 inisialisasi count = 0
4 uji tiap piksel pada aray citra biner, jika nilai piksel(p) =0 maka nilai count bertambah 1
4.3.5 Implementasi Sum of Removal Pixel
Implementasi sum of removal pixel adalah penghitungan jumlah piksel yang berhasil dihapus dari citra masukan. Penghitungan ini dilakukan dengan cara mengurangi sum of pixel object (jumlah piksel obyek pada citra asli) dengan jumlah piksel rangka yang dihasilkan. Implementasi ini ditunjukkan dengan pseudocode :
1 hitung sum of pixel object 2 hitung sum of skeleton pixel
3 melakukan penghitungan sum of removal pixel dengan cara mengurangi sum of pixel object dengan sum of skeleton pixel
4.3.6 Implementasi Running Time
Implementasi running time dilakukan dengan memanggil perintah di matlab tic dan toc. Perintah tic digunakan untuk memulai penghitungan waktu, sedangkan perintah toc digunakan untuk menghentikan perhitungan waktu. Implementasi running time ditunjukkan dengan pseudocode ini :
1.Inisialisasi runningTime=0
2.Inisialisasi fungsi “tic” sebelum dimulainya algoritma Wang-Zhang 3.Inisialisasi fungsi “toc” setelah algoritma Wang-Zhang
4.3.7 Implementasi Connectivity
Implementasi dilakukan dengan cara melakukan pengamatan terhadap masing-masing citra masukan dan citra rangka. Pengamatan dilakukan dengan
membandingkan citra masukan dan citra rangka hasil penipisan. pengamatan juga dilakukan terhadap piksel yang memiliki template A dan bukan merupakan critical point, hal ini dilakukan karena ada kemungkinan citra yang mengandung template A dan merupakan critical point termasuk berada di luar jalur bentuk asli dari citra masukan.
Selain itu dilakukan juga pengamatan terhadap citra yang terpisah dan citra lubang, hal ini dilakukan apakah citra asli memang putus atau terdapat lubang yang disebabkan oleh data yang telah putus atau berlubang sebelum melakukan proses penipisan, misalkan terdapat noise yang menyebabkan data menjadi putus atau berlubang.
4.3.8 Implementasi Kompleksitas Waktu Asimptotik
Implementasi kompleksitas waktu asimptotik dilakukan dengan cara menghitung tiap-tiap bagian pada algoritma Wang-Zhang untuk melakukan penipisan. Penghitungan ini dilakukan berdasarkan ketentuan yang sudah dijelaskan pada Subbab 2.6.1.
4.3.9 Implementasi Pengamatan Visual
Implementasi pengamatan visual dilakukan dengan cara membagikan kuisioner kepada 50 orang responden yang akan menilai hasil dari penipisan citra aksara Jawa. Kuisioner berisikan citra asli dan citra hasil penipisan dari penipisan menggunakan algoritma Wang-Zhang dan Zhang-Suen. Penilaian dilakukan dengan
cara membandingkan kemiripan dari citra asli dan citra hasil penipisan dari kedua algoritma tersebut. Kriteria penilaian adalah kemiripan citra asli dengan citra hasil penipisan dengan nilai: mirip, lumayan, atau tidak mirip.
Setelah didapatkan hasil penilaian dari responden, maka dilakukan penghitungan rata-rata terhadap hasil dari penilaian mirip, lumayan, dan tidak mirip dari tiap-tiap algoritma. Setelah itu dilakukan perbandingan terhadap hasil dari kedua rata-rata algoritma tersebut, sehingga nantinya dapat ditentukan algoritma mana yang lebih baik dari segi pengamatan visual.
4.4 Implementasi User Interface