18 BAB III PERANCANGAN PERANGKAT LUNAK Perancangan perangkat lunak pada skripsi ini bertujuan untuk mengenali aksara Jawa dasar tulisan tangan dengan menerapkan metode Shape Context Descriptor sebagai klasifikatornya. Pada sistem ini data latih berupa aksara Jawa cetak, dan data uji berupa aksara Jawa tulisan tangan yang ditulis oleh 30 orang. Untuk perancangan perangkat lunak digunakan perangkat lunak MATLAB. Alur kerja sistem meliputi memasukkan citra ke MATLAB, pengolahan gambar, edge detection, bipartite and hungarian method, menghitung matching-cost matrix, menghitung tingkat akurasi metode Shape Context Descriptor, dan menghitung waktu pemrosesan sistem. Gambar 3.1 di bawah ini merupakan perancangan sistem secara keseluruhan dari membaca citra hingga menghitung tingkat akurasi.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
18
BAB III
PERANCANGAN PERANGKAT LUNAK
Perancangan perangkat lunak pada skripsi ini bertujuan untuk mengenali aksara Jawa
dasar tulisan tangan dengan menerapkan metode Shape Context Descriptor sebagai
klasifikatornya.
Pada sistem ini data latih berupa aksara Jawa cetak, dan data uji berupa aksara Jawa
tulisan tangan yang ditulis oleh 30 orang. Untuk perancangan perangkat lunak digunakan
perangkat lunak MATLAB.
Alur kerja sistem meliputi memasukkan citra ke MATLAB, pengolahan gambar, edge
detection, bipartite and hungarian method, menghitung matching-cost matrix, menghitung
tingkat akurasi metode Shape Context Descriptor, dan menghitung waktu pemrosesan sistem.
Gambar 3.1 di bawah ini merupakan perancangan sistem secara keseluruhan dari
membaca citra hingga menghitung tingkat akurasi.
19
Gambar 3.1 Perancangan Sistem
3.1. Memasukkan Citra ke MATLAB
Memasukkan citra aksara Jawa ke dalam program dan melakukan perulangan
perbandingkan data uji dengan himpunan data latih 20 aksara Jawa: ha, na, ca, ra, ka, da, ta,
sa, wa, la, pa, dha, ja, ya, nya, ma, ga, ba, tha, nga, yang programnya adalah sebagai berikut.
Langkah ketiga adalah menggunakan histogram log-polar untuk pengelompokan tiap
pasangan berdasarkan jarak antara satu dengan yang lain.
Proses Hungarian Method menggunakan fungsi berikut.
function [C,T]=hungarian(A) %HUNGARIAN Solve the Assignment problem using the
Hungarian method. Adapted from the FORTRAN IV code in
Carpaneto and Toth, Algorithm 548 %[C,T]=hungarian(A) %A - a square cost matrix. %C - the optimal assignment. %T - the cost of the optimal assignment.
Hungarian Method memiliki 4 fungsi utama,sebagai berikut
function A=hminired(A)
function [A,C,U]=hminiass(A)
function [A,C,U]=hmflip(A,C,LC,LR,U,l,r)
function [A,CH,RH]=hmreduce(A,CH,RH,LC,LR,SLC,SLR)
27
fungsi hminired(A) : fungsi ini digunakan untuk mengurangi nilai setiap baris dan
kolom hingga terdapat nilai 0, dan mencatat letak nilai 0.
fungsi hminiass(A): fungsi ini digunakan untuk mengenali letak nilai 0 setiap baris dan
kolom, lalu melakukan eliminasi terhadap nilai 0.
fungsi hmflip(A, CH, RH, LC, LR, SLC, SLR ): fungsi ini digunakan untuk
mengembalikan nilai yang terpengaruh karena terdeteksi 2 kali sebagai nilai 0 antara
bagian baris dan kolom.
fungsi hmreduce(A, CH, RH, LC, LR, SLC, SLR): fungsi ini digunakan untuk
memperbarui matriks .
Gambar 3.6 Hasil Proses Bipartite and Hungarian Method untuk
Mendeteksi 140 Pasangan Titik yang Cocok.
28
3.5. Menghitung Matching-cost Matrix
Menghitung perolehan nilai cost menggunakan fungsi sebagai berikut.
function HC=hist_cost_2(BH1,BH2); % HC=hist_cost_2(BH1,BH2); % Adapted from the Serge Belongie ([email protected])[10 % same as hist_cost.m but BH1 and BH2 can be of different