Preprocessing HASIL DAN ANALISA

sempurna dengan aksara lainnya. Sebagai contoh kita dapat melihat citra data uji Jalan Langensari dan hasil segmentasinya sebagai berikut: B = imread..Citra nama jalantestinglangensari.jpg; im_gray = rgb2grayB; im_bw = im2bwim_gray; imshowim_bw; Gambar 4.6 Citra Biner Jalan Langensari Gambar 4.6 merupakan representasi citra hitam-putih Jalan Langensari yang berukuran 482 x 2354 pixels. Proses selanjutnya adalah melakukan segmentasi untuk memperoleh tiap aksara yang menyusun citra tersebut dengan menggunakan fungsi syllable_recognizer . B = imread..Citra nama jalantestinglangensari.jpg; im_gray = rgb2grayB; im_bw = im2bwim_gray; t = syllable_recognizerim_bw; Gambar 4.7 Projection Profile dari Citra Jalan Langensari Berdasarkan Gambar 4.7 dapat disimpulkan bahwa pada bagian dua aksara terakhir, yaitu pasangan sa dan aksara ri tidak terpisahkan dengan baik. Hal tersebut bisa terjadi karena penulisan aksara tersebut tidak terpisah dengan baik atau saling berdekatan sehingga ada bagian yang tumpang tindih. Jika kita lihat secara visual, berdasarkan Gambar 4.6 citra Jalan Langensari terdiri dari 8 suku kata, tetapi hasil segmentasi pada Gambar 4.7 menghasilkan hanya 7 suku kata saja. Hal tersebut terjadi karena ada dua suku kata yang menyatu. Keterbatasan segmentasi menggunakan projection profile adalah objek-objek yang ada pada citra harus terpisah secara sempurna, setidaknya memiliki jarak yang cukup antar objeknya sehingga tidak ada yang tumpang tindih atau menyatu. 4.2.5 Resizing Berdasarkan hasil dari proses projection profile terhadap citra pada Gambar 4.5 dan Gambar 4.7 dapat kita lihat bahwa hasil segmentasi terhadap citra memiliki ukuran yang berbeda-beda. Hal tersebut bisa terjadi karena terdapat variasi aksara antara aksara asli legena, aksara legena yang diberi sandhangan, aksara legena yang memiliki pasangan maupun gabungan keduanya. Untuk mempermudah proses ekstraksi ciri dan klasifikasi maka semua aksara, baik pada data training maupun testing akan ditentukan ukurannya sehingga setiap aksara mempunyai ukuran yang sama. Untuk melakukan proses pengubahan ukuran aksara resizing dapat dikerjakan dengan menggunakan fungsi imresize pada Matlab. Ukuran setiap citra kita tentukan sendiri, sehingga untuk penelitian kali ini ditetapkan 100 x 110 pixel. function [ transliteration ] = syllable_recognizer im_bw ... aksara = imresizeim_hline, [100 110]; imshowaksara; ... Pemilihan ukuran tersebut dipilih karena untuk mempermudah dalam proses pembagian zona yang akan dikerjakan dalam proses ekstraksi ciri yang akan dibagi ke dalam 4 zona secara horizontal dan 4 zona secara vertikal-horizontal. Secara visual, hasil dari proses resizing dapat dinyatakan sebagai berikut: B = imread..Citra nama jalantestinglangensari.jpg; im_gray = rgb2grayB; im_bw = im2bwim_gray; t = syllable_recognizerim_bw; Gambar 4.8 Citra Jalan Pajeksan Hasil Resizing Gambar 4.8 merupakan citra yang sama dengan Gambar 4.5, yaitu citra hasil segmentasi dari Gambar 4.4, hanya saja yang membedakan adalah hasil segmentasi citra diatas sudah dikenai proses resizing sehingga setiap aksara yang diperoleh mempunyai ukuran yang sama. Proses resizing diperlukan untuk mempermudah dalam membagi zona citra dan menghitung nilai feature dari masing-masing citra.

4.3 Feature Extraction and Selection

Kemampuan sistem untuk mengkasifikasikan objek akan lebih efektif dan cepat ketika kita bisa mendapatkan ciri yang bisa membedakan objek satu dengan objek lainnya dibandingkan dengan menggunakan seluruh informasi dari objek yang ada. Dengan memilih ekstraksi ciri yang tepat maka secara langsung akan mengurangi dimensi data yang akan diolah sehingga akan meringankan beban memory, running time relatif cepat dan mengurangi kompleksitas algortima untuk proses klasifikasi. Proses ektraksi ciri dilakukan untuk semua data yang akan diolah, yaitu untuk data training template dan data testing. Ektraksi yang dipakai pada penelitian ini adalah ICZ-ZCZ Image Centroid and Zone-Zone Centroid and Zone. Pada dasarnya, ekstraksi ciri ini terdiri dari 2 jenis yang digabungkan menjadi satu, yaitu ekstraksi ciri ICZ dan ekstraksi ciri ZCZ. Untuk memperoleh fitur dari objek kita perlu mencari terlebih dahulu pusat massa centroid dari objek tersebut. Persamaan untuk mencari centroid dapat dilihat pada persamaan 2.5 dan persamaan 2.6. function [ xc, yc ] = imcentroid inimage ... for i = 1 : x for j = 1 : y if inimagei, j == 1 xc = xc + j; yc = yc + i; totalPixel = totalPixel + 1; ... xc = xc totalPixel; yc = yc totalPixel; ... Pada fungsi diatas, titik centroid atau titik pusat massa sumbu x dan y pada suatu citra dapat diperoleh dengan mengalikan nilai pixel yang bernilai 1 dengan posisi pixel pada sumbu x dan y. Setelah diperoleh hasil perkaliannya kemudian dijumlahkan untuk setiap sumbunya. Oleh karena jika suatu bilangan dikalikan dengan 1 adalah bilangan itu sendiri maka persamaan 2.5 dan 2.6 dapat disederhanakan menjadi cukup menjumlahkan posisi koordinat pixel yang bernilai 1 untuk masing-masing sumbu x dan y. Hasil total dari penjumlahan posisi pixel objek pada sumbu x dan y kemudian dibagi dengan total pixel pada objek citra tersebut sehingga diperoleh titik � dan � yang merupakan titik centroid untuk sumbu x dan y. Citra yang digunakan pada penelitian ini berukuran 100 x 110 pixel sehingga dapat dibagi menjadi 4 bagian zona sama besar secara horizontal masing-masing 25x110 pixels dan 4 zona secara vertikal-horizontal yang masing-masing berukuran 50x55 pixels. function [ z1, z2, z3, z4 ] = icz inimage [cx, cy] = imcentroidimnew; ... for i = 1 : row for j = 1 : col if imnewi, j == 1 if i = 25 dist = sqrtj-cx2 + i-cy2; sumdistz1 = sumdistz1 + dist; totalpixz1 = totalpixz1 + 1; elseif i 25 i = 50 ... elseif i 50 i = 75 ... els ... z1 = sumdistz1 totalpixz1; ... Fungsi icz mempunyai input sebuah citra biner dan memiliki 4 output sesuai dengan jumlah zona yang akan membagi citra. Cara kerja fungsi ini yaitu mencari nilai rata-rata jarak antara nilai pixel objek citra terhadap titik centroid-nya. Pertama dengan memanggil fungsi imcentroid untuk memperoleh titik centroid citra tersebut. Kedua, menghitung jarak antara objek nilai pixel yang bernilai 1 terhadap centroid-nya menggunakan rumus euclidean distance, seperti pada persamaan 2.7. Nilai jarak tersebut akan di total untuk setiap zonanya kemudian dibagi dengan jumlah pixel yang ada di tiap zona. Hal tersebut dilakukan sebanyak zona yang ada. Hasil dari rata-rata nilai jarak pixel objek terhadap centroid pada masing-masing zona itulah yang menjadi feature dari objek citra. function [ z1, z2, z3, z4 ] = zcz inimage ... I1=imnew1:25,:; [ cx, cy ] = imcentroidI1; for i = 1 : row for j = 1 : col if I1i, j == 1 dist = sqrtj-cx2 + i-cy2; sumdistz1 = sumdistz1 + dist; totalpixz1 = totalpixz1 + 1; ... I2=imnew26:50,:; [ cx, cy ] = imcentroidI2; ... I3=imnew51:75,:; [ cx, cy ] = imcentroidI3; ... I4=imnew76:100,:; [ cx, cy ] = imcentroidI4; ... z1 = sumdistz1 totalpixz1; ... Fungsi zcz mempunyai input sebuah citra biner dan memiliki 4 output sesuai dengan jumlah zona yang akan membagi citra. Cara kerja fungsi ini yaitu membagi objek menjadi 4 zona kemudian mencari titik centroid di masing-masing zona menggunakan fungsi imcentroid. Setelah titik centroid ditemukan lalu menghitung nilai jarak pixel objek terhadap titik centroid-nya di setiap zona. Untuk menghitung jarak menggunakan euclidean distance, seperti pada persamaan 2.7. Nilai jarak yang diperoleh kemudian di total lalu di bagi dengan nilai total pixel di masing-masing zona. Nilai rata- rata jarak objek citra tehadap centroid di masing-masing zona inilah yang menjadi feature objek. function [ feature ] = feature_extraction inImage [z1 z2 z3 z4] = iczinImage; [z5 z6 z7 z8] = zczinImage; feature = [z1 z2 z3 z4 z5 z6 z7 z8]; end Setelah diperoleh nilai feature menggunakan fungsi icz dan zcz lalu nilai-nilai feature tersebut digabungkan sehingga menjadi 8 feature yang merepresentasikan objek tersebut menggunakan fungsi feature_extractionyang memiliki parameter sebuah citra biner. Sebagai contoh, untuk citra Jalan Pajeksan pada Gambar 4.8 yang diekstrak cirinya menggunakan metode ICZ-ZCZ diperoleh nilai features sebagai berikut: Gambar 4.9 Nilai Features dari Citra Jalan Pajeksan Gambar 4.9 adalah nilai fitur dari hasil ekstraksi ciri citra nama Jalan Pajeksan pada Gambar 4.8 menggunakan ICZ-ZCZ yang dibagi menjadi 4 zona secara horizontal. Terdapat 8 baris dengan setiap barisnya memiliki 8 nilai features yang mewakili nilai ciri dari 8 objek aksara pada Gambar 4.8. Hal yang dapat disimpulkan dalam proses ekstraksi ciri ini adalah ICZ bekerja dengan mencari titik centroid-nya terlebih dahulu kemudian citra dibagi kedalam n zona yang sama sehingga akan didapatkan satu titik centroid sedangkan ZCZ membagi n zona citra kemudian masing-masing zona dicari titik centroid-nya sehingga didapatkan centroid sebanyak jumlah zona yang ada. ICZ-ZCZ merupakan gabungan dari kedua ekstraksi ciri tersebut sehingga hasil dari ekstraksi cirinya akan diperoleh sebanyak 2n fitur.

4.4 Pembuatan Template Database

Model atau metode pengenalan pola pada penelitian ini menggunakan pendekatan template matching. Pendekatan template matching dipilih karena paling mudah untuk diterapkan. Prinsip pendekatan template matching untuk klasifikasi adalah mengukur kedekatan kesamaan similarity antar objek atau entities yang diperbandingkan. Objek yang diperbandingkan adalah data uji yang akan dikenali dengan template yang sudah disimpan. Data yang akan digunakan untuk membuat template database adalah citra nama jalan namun data yang dipakai berbeda dengan data yang digunakan untuk data uji testing. Jumlah citra yang digunakan untuk pembuatan template database sekitar 100 buah. Dari jumlah citra tersebut dapat dibuat 100 aksara untuk database template. Langkah-langkah dalam pembuatan template database seperti pada blok diagram pada Gambar 3.1 dan blok diagram pada Gambar 3.2. Gambar 4.10 Citra Jalan Menteri Supeno Gambar 4.10 adalah citra nama Jalan Menteri Supeno. Citra diambil menggunakan kamera smarthpone dengan resolusi sebesar 4096 x 2304 pixels. Citra tersebut diambil pada tanggal 22 Januari 2017 pada pukul 06:39 WIB. Jarak pengambilan gambar kurang lebih 50 cm dari tiang nama jalan. Proses selanjutnya adalah cropping untuk mengambil objek tulisan dengan aksara Jawa. Untuk data template, proses cropping yang dilakukan sedikit berbeda dengan data uji, yaitu citra aksara dipotong per aksara. Sebagai contoh, kita akan menyimpan aksara su pada citra Jalan Menteri Supeno, maka kita hanya melakukan cropping pada suku kata su yang terdapat pada citra. inImage = imread..Citra nama jalantrainingsu.jpg; Gambar 4.11 Hasil Cropping Citra Jalan Menteri Supeno Gambar 4.11 merupakan citra hasil cropping pada Gambar 4.10 untuk mendapatkan suku kata su yang akan disimpan sebagai database template. Setelah di-crop maka ukuran citra aksara su adalah 330 x 223 pixels. Setelah proses cropping, maka dari citra berwarna akan diubah menjadi citra abu-abu. Fungsi untuk mengubah citra berwarna menjadi citra abu-abu atau grayscale menggunakan fungsi rgb2gray pada Matlab. inImage = imread..Citra nama jalantrainingsu.jpg; im_gray = rgb2grayinImage; imshowim_gray; Gambar 4.12 Citra Abu-Abu Aksara Su Gambar 4.12 merupakan representasi dari citra keabuan yang diperoleh dengan mengubah Gambar 4.1. Hal tersebut dapat dibuktikan dengan nilai variabel im_gray yang sebelumnya nilai variabel B adalah 330x223x3 uint8 menjadi 330x223 uint8 yang menandakan citra tersebut terdiri dari 1 komponen warna. Tahap selanjutnya adalah mengubah citra abu-abu menjadi citra biner. Fungsi untuk mengubah citra abu-abu menjadi citra biner atau citra hitam- putih menggunakan fungsi im2bw pada Matlab.