PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PENIPISAN CITRA AKSARA BALI MENGGUNAKAN A FAST AND FLEXIBLE THINNING ALGORITHM SKRIPSI Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika
Oleh : Elizabeth Febrina Cornelia 125314064
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA 2016
i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Abstrak Dalam proses pengenalan pola, terdapat banyak proses sebelum akhirnya melalui proses mengenali pola, yaitu preprosesing. Preprosesing adalah proses mengolah data agar data dapat siap dipakai dan diolah menjadi informasi yang bermakna. Salah satu cara mengolah data agar siap pakai adalah thinning. Thinning merupakan teknik menipiskan citra sampai ketebalan satu piksel. Tujuannya agar hasil pengenalan pola lebih akurat dan data juga waktu yang digunakan lebih ringkas. Pada penelitian ini, penulis akan menguji metode A Fast and Flexible Thinning Algorithm pada citra aksara Bali. Aksara Bali yang akan ditipiskan adalah Aksara Wianjana dan Aksara angka, totalnya semua mencapai 28 karakter. Tujuan menggunakan Aksara Bali sebagai data adalah memudahkan penelitian selanjutnya tentang pengenalan pola terkait Aksara Bali. Hasil penipisan terhadap citra Aksara Bali menggunakan A Fast and Flexible Thinning Algorithm terbukti baik dengan memenuhi berberapa syarat, yaitu One pixel thickness, time consuming, dan Thinning rate yang baik. Dengan rata – rata One pixel thickness sebesar 95%, time consuming rata – ratanya 0,04 detik, dan thinning ratenya 0,7. Maka A Fast and Flexible Thinning Algoritm dapat dikatakan baik digunakan pada Aksara Bali.
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Abstract In Pattern Recognition process, there are many processes before we finally recognize the pattern, one of all is preprocessing. Preprocessing is to process data so it can be used and be a meaningful information . One of the way to process data is thinning. Thinning is the way to thin image until it’s thickness is one pixel. The purpose is for more accurate and faster pattern recognition process. To this research, writer will test A Fast and Flexible Thinning Algorithm on Aksara Bali image. The Aksara that will be thinned are Wianjana and number, its total is 28 characters. The aim use Aksara Bali as data is to make next research related to pattern recognition using Aksara Bali easier. Thinning result of Aksara Bali using A Fast and Flexible Thinning Algoritm prove has a good testing with some conditions, that is One pixel thickness, time consuming, and thinning rate. With average of one pixel thickness is 95%, then average of time consuming is 0,04 second and the average of thinning rate in the amount of 0,7. So, A Fast and Flexible Thinning Algorithm can be told as a good method for Aksara Bali.
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa, atas segala rahmat dan karuniaNya yang telah diberikan, sehingga penulis dapat menyelesaikan Tugas Akhir “Penipisan Citra Aksara Bali Menggunakan A Fast and Flexible Thinning Algorithm” ini dengan baik. Dalam penyelesaian tugas akhir ini, penulis tidak lepas dari dukungan dan bantuan dari sejumlah pihak, oleh sebab itu penulis ingin mengucapkan terima kasih kepada : 1. Tuhan Yesus Kristus, atas kasih-Nya yang melimpah, penyertaan, dan segala perkenanan yang diberikan sehingga penulis dapat menyelesaikan tugas akhir ini. 2. Ibu Anastasia Rita Widiarti, S.Si. M.Kom., selaku pembimbing skripsi dan ketua prodi atas saran, waktu, dan kesabaran beliau membimbing penulis menyelesaikan tugas akhirnya. 3. Kedua orang tua penulis, Mama dan Papa, serta adik – adik (Oki dan Fani) untuk dukungan dan kasih sayang yang selalu ada, terlebih doa yang mengiringi. 4. Kak Vanda yang selalu mendukung, membimbing, dan menginspirasi. Terima kasih sudah berbagi berbagai hal. Semoga segera ketemu laki – laki bule ganteng brewokan yang cinta Tuhan dan sayang kak Vanda. 5. Anak – anak Miracle 11, Revival Generation, Real Army, Ce Icha Alviana, serta seluruh keluarga Gereja Mawar Sharon Miracle Yogyakarta sebagai keluarga kedua di Yogyakarta. 6. Paguyuban Trio Majalengka (Eva, Okta, plus mba April), Paguyuban Skripsi Mamih Rita, serta seluruh TI angkatan 2012 dan keluarga besar USD yang sudah membantu dan mendukung baik jasa maupun moril.
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7. Petra Tiblola, selaku pacar penulis, inspirasi bermusik, partner dikala senang dan sedih yang sudah meluangkan waktu, hati, dan telinga untuk menunjang curhatan – curhatan. 8. MSCS, yang membuat saya lebih semangat dalam menyelesaikan tugas akhir ini. 9. Israel and New Breed, Echa Soemantri, JPCC worship, GMS Live, NDC worship, Isyana Sarasvati, Raisa, Tulus, Yura, Zayn, dan Bruno Mars atas lagu – lagu yang menemani pembuatan skripsi. 10. Serta seluruh pihak yang membantu secara langsung maupun tidak langsung dalam penyelesaian Tugas Akhir ini yang tidak bisa penulis sebutkan satu persatu. Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada laporan tugas akhir ini. Saran dan kritik sangat penulis harapkan untuk perbaikan – perbaikan dimasa yang akan datang. Akhir kata, penulis berharap tulisan ini bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan serta berbagai pengguna pada umumnya.
Yogyakarta,
Juni 2016
Penulis
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
MOTTO You are stronger than you know Tundalah penundaan
It always seems impossible until it’s done
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI LEMBAR JUDUL..........................................................................................................i LEMBAR PERSETUJUAN PEMBIMBING...............................................................ii HALAMAN PENGESAHAN ...................................................................................... ii PERNYATAAN KEASLIAN HASIL KARYA ......... Error! Bookmark not defined. PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH ................. Error! Bookmark not defined. Abstrak ..........................................................................................................................v Abstract....................................................................................................................... vii KATA PENGANTAR ............................................................................................... viii MOTTO .........................................................................................................................x DAFTAR ISI ............................................................................................................... xi Daftar Gambar ........................................................................................................... xiv Daftar Tabel ............................................................................................................... xvi PENDAHULUAN .........................................................................................................1 1.1.
Latar Belakang ................................................................................................1
1.2.
Tujuan Penelitian ............................................................................................2
1.3.
Batasan Masalah .............................................................................................2
1.4.
Manfaat Penelitian ..........................................................................................3
1.5.
Metode Penelitian ...........................................................................................3
1.6.
Sistematika Penulisan .....................................................................................4
LANDASAN TEORI ....................................................................................................5 2.1. Citra ....................................................................................................................5 2.1.1. Citra Biner ....................................................................................................5 2.1.2. Citra Grayscale .............................................................................................6 2.1.3. Citra RGB.....................................................................................................6 2.2. Binarisasi.............................................................................................................7 2.3. Thinning ..............................................................................................................7 2.4. Metode Thinning A Fast and Flexible Thinning.................................................8 2.5. One Pixel- Thickness ........................................................................................10 2.6. Kompleksitas Waktu .........................................................................................11 2.6.1. Kompleksitas Waktu Asimptotik ...............................................................12
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.7. Thinning Rate....................................................................................................14 METODE PENELITIAN ............................................................................................16 3.1. Gambaran Umum Penelitian .............................................................................16 3.2. Data ...................................................................................................................16 3.2.1. Sumber Data ...............................................................................................16 3.2.2. Data yang digunakan ..................................................................................16 3.3. Hardware dan Software.....................................................................................17 3.4. Tahapan – Tahapan Rinci Penelitian ................................................................18 3.4.1. Studi Kasus.................................................................................................18 3.4.2. Penelitian Pustaka ......................................................................................18 3.4.3. Perancangan dan Pembuatan Alat Uji ........................................................19 3.4.4. Pengujian ....................................................................................................19 3.4.5. Analisis dan Pembuatan Laporan ...............................................................19 3.5. Perancangan Sistem ..........................................................................................19 3.6. Algoritma A Fast and Flexible Thinning ..........................................................20 IMPLEMENTASI SISTEM ........................................................................................24 4.1.
Implementasi Algoritma ...............................................................................24
4.1.1.
Implementasi Algoritma readFile..............................................................24
4.1.2.
Implementasi Algoritma Search_prev .......................................................24
4.1.3.
Implementasi Algoritma Successor...........................................................25
4.1.4. Implementasi Algoritma A Fast and Flexible Thinning Algorithm (WangZhang) 31 4.1.5.
Implementasi Algoritma OnePixelThickness............................................32
4.1.6.
Implementasi Algoritma Time Consuming ...............................................32
4.1.7.
Implementasi Algoritma Not Critical Point ..............................................32
4.1.8.
Implementasi Algoritma Critical Point .....................................................33
4.1.9.
Implementasi Algoritma Thinning Rate....................................................33
4.1.10. 4.2.
Implementasi Algoritma Contour Loop ................................................34 Implementasi User Interface .........................................................................37
HASIL DAN ANALISA .............................................................................................41 5.1.
Analisa Hasil penipisan ................................................................................41
5.2.
Analisa Waktu Penipisan ..............................................................................49
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5.3.
Analisa Pengamatan Citra .............................................................................51
KESIMPULAN DAN SARAN ...................................................................................55 6.1.
Kesimpulan ...................................................................................................55
6.2.
Saran .............................................................................................................55
Daftar Pustaka .......................................................................................................... xvii LAMPIRAN
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar Gambar Gambar 2. 1 Representasi citra biner berupa matriks (Wang, 1989) ...........................5 Gambar 2. 2 Representasi Citra Grayscale (Putra, D., 2004) ......................................6 Gambar 2. 3 Representasi Citra RGB ..........................................................................7 Gambar 2. 4 Pixel dan Neighbours ..............................................................................8 Gambar 2. 5 Digit pattern huruf ‘Y’ menurut Wang-Zhang (1988) ............................8 Gambar 2. 6 Pseudocode A Fast and Flexible Thinning Algorithm (Wang dan Zhang, 1988) .............................................................................................10 Gambar 2. 7 Struktur Template A (Jang dan Chin, 1990) .........................................11 Gambar 2. 8 Struktur Template B dan C (Jang dan Chin, 1990) ..............................11 Gambar 2. 9 Format triangle (segitiga) .....................................................................15
Gambar 3. 1 Citra asli (kiri) dan citra hasil penipisan (kanan) ..................................16 Gambar 3. 2 Gambar Aksara Bali Wianjana Wreasta (Sudiarta, 2014) ....................17 Gambar 3. 3 Gambar Aksara Bali Wianjana Wilangan (Sudiarta, 2014) .................17 Gambar 3. 4 DFD level 1 proses Thinning ...............................................................20
Gambar 4. 1 Halaman Utama .....................................................................................37 Gambar 4. 2 Halaman utama setelah meng-klik tombol Thinning .............................38 Gambar 4. 3 Halaman Open File ...............................................................................38 Gambar 4. 4 Halaman Save Image.............................................................................39 Gambar 4. 5 Halaman Utama setelah meng-klik tombol THINNING ......................40
Gambar 5. 1 Representasi hasil penipisan huruf Ja dalam bentuk biner untuk membuktikan bahwa piksel yang tidak dapat dikategorikan One pixel thickness adalah critical point .....................................................................................................49 Gambar 5. 2 Citra Asli ...............................................................................................51 Gambar 5. 3 Hasil penipisan dengan sistem ..............................................................52
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 5. 4 Hasil dari penghitungan iterasi pertama ................................................53 Gambar 5. 5 Hasil dari penghitungan iterasi kedua ...................................................53 Gambar 5. 6 Hasil dari penghitungan iterasi ketiga ...................................................54
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar Tabel Tabel 2. 1 Pengelompokkan Algoritma bedasarkan notasi Big-O nya .......................14
Tabel 5. 1 Tabel citra sebelum dan setelah penipisan .................................................41 Tabel 5. 2 Tabel data jumlah piksel sebelum dan setelah penipisan ..........................44 Tabel 5. 3 Tabel One Pixel Thickness ........................................................................45 Tabel 5. 4 Tabel Thinning Rate ..................................................................................47 Tabel 5. 5 Tabel Time consuming ..............................................................................50
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN 1.1.
Latar Belakang Aksara Bali adalah salah satu kearifan lokal yang dimiliki oleh Provinsi Bali.
Aksara Bali masih berkerabat dekat dengan Aksara Jawa dan memiliki banyak kemiripan bentuk. Perbedaan terdapat dalam aksara dasar keduanya, yakni jumlah aksara Bali berjumlah 18 karakter, sedangkan aksara Jawa berjumlah 20 karakter. Pemanfaatan dan pelestarian aksara Bali masih sangat sempit, sedangkan Bali memilki potensi wisata yang bertaraf internasional, sangat disayangkan apabila potensi budaya kurang dipromosikan. Aksara Bali yang memiliki nilai sejarah tersebut ditulis pada permukaan daun lontar dan kertas, dan cara mendokumentasikan dokumen manuscript tersebut adalah dengan cara menyalin atau difoto. Tindak lanjut pendokumentasian setelah proses foto adalah digitalisasi, yakni untuk mengubah citra aksara menjadi suatu karakter terpsisah non-citra. Dalam proses digitalisasi citra atau yang sering disebut Pemrosesan Citra, proses penipisan citra (Thinning) sangat diperlukan untuk memperingan proses komputasi dan memudahkan proses pengenalan pola. Proses penipisan secara komputasi adalah mengganti representasi citra terluar yang ketebalannya melebihi 1 pixel dari bernilai 1 ke representasi bernilai 0, sehingga ketebalan citra mencapai 1 pixel. Berbagai metode Thinning hasil penelitian sudah diterapkan pada berbagai tujuan yang berbeda – beda. Dengan kata lain, metode tertentu belum tentu cocok diterapkan pada berbagai kasus. Contoh penerapan metode thinning : menganalisis sel yang abnormal dengan metode Izzo-Coles dan Preston, mengklasifikasi sidik jari dengan metode Moayer-Fu, dan prosesing circuit board dengan metode YeDanielsson (Wang dan Zhang, 1989). Selain penerapannya yang hanya cocok pada kasus tertentu, metode Thinning yang sudah ada cenderung memiliki time consuming yang lama. Menurut penelitian Y. Y.
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
Zhang dan P. S. P. Wang (1989) proses Thinning dengan metode Holt yang dikenakan pada citra daun dengan menggunakan personal computer IBM dan pemrograman menggunakan Turbo Pascal memakan waktu sebanyak 19,39 detik. Hasil ini adalah yang paling tinggi dibandingkan dengan metode Zhang-Suen, Rotovitz, dan A Fast and Flexible Thinning. Dari ke- 4 metode A Fast and Flexible Thinning yang memiliki time consuming dan consuming yang paling rendah. Maka dari itu, penulis ingin menguji apakah dengan time consuming dan consuming yang rendah metode ini adalah juga metode yang handal, efektif, dan efisien.
1.2.
Tujuan Penelitian
Maksud dan tujuan dari penelitian ini adalah : 1. Mengetahui persentase akurasi metode A Fast and Flexible Thinning. 2. Mengetahui persentase one-pixel-thickness metode A Fast and Flexible Thinning. 3. Mengetahui persentase konsumsi waktu metode A Fast and Flexible Thinning. 4. Mengetahui persentase thinning rate metode A Fast and Flexible Thinning.
1.3.
Batasan Masalah
Untuk membahas topik yang lebih terarah dan terfokus pada tujuan yang ingin dicapai, maka batasan masalahnya sebagai berikut : 1. Aksara yang dipakai adalah Aksara Bali Wianjana Wreasta dan Wilangan 2. Input adalah citra Aksara Bali dengan format .jpg atau .png 3. Citra Aksara Bali yang dipakai adalah citra hasil scan dari huruf cetak 4. Citra Input adalah citra yang sudah mengalami proses preprosesing untuk menghilangkan derau (noise)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
1.4.
Manfaat Penelitian
Manfaat dari penelitian ini adalah : 1.
Untuk menguji apakah algoritma A Fast and Flexible Thinning cukup baik diterapkan pada aksara Bali.
1.5. 1.
Metode Penelitian Studi Kasus Pada pemrosesan citra, yang terpenting adalah menghasilkan citra yang terolah
sehingga menjadi citra baru. Tetapi penerapan pemrosesan citra sangatlah luas, citra dipakai untuk image retrieval, medical data mining, Jaringan syaraf tiruan dan sebagainya. Tentu citra yang baik akan menghasilkan analisa yang akurat, maka dari itu sebelum diolah akan sangat baik jika citra mengalami pemrosesan sehingga hasilnya akan lebih efektif dan efisien. Thinning adalah salah satu langkah untuk memproses citra, selain fungsinya untuk mengkompresi ukuran citra, tentu saja membuat pengolahan citra menjadi lebih cepat karena hasil citra lebih kecil dan banyak membuang elemen pixel yang tidak perlu. Maka akan sangat penting sebelum melakukan pengolahan citra untuk terlebih dulu melakukan thinning. 2.
Penelitian Pustaka Pada penelitian pustaka, akan dicantumkan teori – teori terkait dengan judul
tugas akhir, diantaranya teori thinning, cara menguji one pixel thickness, cara menguji konsumsi waktu dalam algoritma. Selain itu akan sedikit dibahas tentang latar belakang aksara Bali yang digunakan, yakni aksara Bali Wreasta dan Wilangan, dimana terdiri dari 18 karakter dasar dan 10 angka. 3.
Perancangan dan Pembuatan Alat Uji Untuk mengetes keberhasilan metode yang akan dijadikan tugas akhir, maka
akan diiplementasikan lewat aplikasi yang dibangun oleh penulis. 4.
Pengujian Untuk prosedur pengujian, akan dibuat sistem untuk menguji konektivitas, one
pixel thickness, dan konsumsi waktu. Sistem akan diimplementasikan setelah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
menjalankan implementasi dari tujuan utama penulisan tugas akhir ini, yaitu penipisan citra menggunakan algoritma A Fast and Flexible Thinning. 5.
Analisa dan Pembuatan Laporan Analisa dan pembuatan laporan adalah tahap akhir setelah semua proses
dijalankan, kemudian akan membuat analisa dari hasil pengujian yang muncul. Dari analisa tersebut dapat ditarik kesimpulan serta laporan. 1.6.
Sistematika Penulisan
Sistematika penulisan Tugas Akhir ini dibagi menjadi berberapa bab dengan susunan sebagai berikut : BAB I : PENDAHULUAN Bab ini membahas latar belakang, rumusan masalah, tujuan, batasan masalah, dan sistematika penulisan. BAB II : LANDASAN TEORI Bab ini membahas teori – teori dasar yang berkenaan dengan penelitian, yang meliputi metode dan objek penelitian, seperti : teori tentang penggunaan Aksara Bali, teori algoritma A Fast and Flexible Thinning, dan teori dasar tentang Thinning Citra. BAB III : ANALISIS DAN PERANCANGAN SISTEM Bab ini membahas mengenai analisa komponen – komponen yang akan digunakan utnuk melakukan penelitian, sertaperancagan sistem secara lengkap. BAB IV : IMPLEMENTASI SISTEM Bab ini menjelaskan pengaplikasian dari rancangan yang sudah dituliskan pada Bab III, kemudian diimplementasikan melalui program. BAB V : KESIMPULAN Bab ini menjelaskan tentang hasil yang sudah didapat dan konklusi hasil dari aplikasi metode pada data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Bab II LANDASAN TEORI 2.1. Citra Citra adalah informasi yang direpresentasikan secara visual, datanya lebih kaya daripada teks. Citra dapat melukiskan sebuah maksud lebih baik dari kata – kata. Informasi citra bisa kita dapatkan melalui proses pengambilan gambar secara digital. Citra terdiri dari 2 macam, yaitu citra diam dan citra bergerak. Citra diam adalah citra tunggal yang tidak memiliki pergerakan, contoh citra diam misalnya foto. Sedangkan citra bergerak adalah serangkaian citra diam yang dijalankan kemudian menghasilkan pergerakan. 2.1.1. Citra Biner Citra Biner adalah citra dwi nilai, yakni 0 dan 1. Citra hanya memiliki 2 representasi berwarna hitam (0) dan putih (1). Yang harus dilakukan untuk membuat citra biner adalah menetapkan titik berat, kemudian bedasarkan titik berat tersebut representasi warna citra akan dikelompokkan ke dalam warna hitam dan putih. Penggunaan warna biner biasanya digunakan pada penerapan barcode, dan citra logo.
Gambar 2. 1 Representasi citra biner berupa matriks (Wang, 1989)
5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 6
2.1.2. Citra Grayscale Citra grayscale memiliki warna yang lebih kaya daripada citra biner. Angka minimal dari grayscale adalah 0 dan maksimalnya adalah 255. Citra keabuan terdiri dari 8 bit, kemudian 2 dipangkatkan 8 (dari 8 bit), hasilnya adalah 256, tetapi karena 0 dihitung sebagai nilai minimal, maka interval grayscale adalah dari 0-255.
Gambar 2. 2 Representasi Citra Grayscale (Putra, 2004)
2.1.3. Citra RGB Citra RGB adalah citra yang paling sering kita jumpai didalam kehidupan sehari – hari. Citra RGB yang sering kita sebut citra True color memiliki 3 keping warna, yaitu Red, Green, dan Blue yang kemudian digabungkan untuk menghasilkan warna yang lebih luas. Untuk citra RGB, rentang color encoding-nya mencapai 224 yang artinya terdapat 16.777.216 warna, tetapi untuk setiap keping warna (red, green, blue) memiliki rentang maksimum 255.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 7
Gambar 2. 3 Representasi Citra RGB 2.2. Binarisasi Binarisasi adalah proses untuk membuat warna citra menjadi hitam dan putih. Binarisasi yang baik adalah proses binarisasi yang mampu membedakan antara background dengan foreground. Pemisahan background dan foreground tersebut didapatkan dari hasil pencarian nilai ambang (thresholding). Ada 3 kemungkinan ketika mengenakan proses threshold kepada citra, yaitu : a. Nilai Threshold terlalu tinggi, akibatnya citra yang terpisah menjadi tergabung. b. Nilai Threshold terlalu rendah, akibatnya sebuah citra menjadi terpotong – potong. c. Nilai Threshold sesuai dengan kebutuhan. 2.3. Thinning Thinning adalah proses menghapus titik hitam dan mentransformasikannya menjadi garis tipis yang disebut sebagai skeleton (Wang dan Zhang, 1988). Seperti yang sudah dibahas dalam bab I, bahwa proses thinning merupakan salah satu proses yang penting dalam pemrosesan citra. Thinning berperan dalam membantu mengenali
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8
inti dari pattern dan
mengurangi memori yang tidak perlu sehingga dalam
pemrosesan citra menjadi lebih ringan. Dimulai pada tahun 1950-an keinginan untuk meminimumkan informasi yang penting untuk diproses, sehingga muncullah ide untuk membuat algoritma thinning. Dan sampai sekarang sudah banyak berkembang algoritma yang serial maupun parallel. 2.4. Metode Thinning A Fast and Flexible Thinning Sebelum menggunakan A Fast and Flexible Thinning, berikut adalah istilah dan peraturan dalam algoritma A Fast and Flexible Thinning : 1) Neighbours Untuk setiap pixel yang memenuhi syarat, memiliki masing – masing 8 tetangga. Syarat urutan untuk setiap tetangga adalah mulai dari pixel yang akan dihapus tersebut, kemudian ke pixel yang berada diatasnya lalu mengikuti arah jarum jam. Pixel yang akan dihapus dilambangkan dengan q(i,j), citra yang akan menjadi input adalah citra biner. Dengan kata lain, q(i,j) hanya akan bernilai 0 atau 1.
Gambar 2. 4 Pixel dan Neighbours
Gambar 2. 5 Digit pattern huruf ‘Y’ menurut Wang-Zhang (1988)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
2) Contour Point Contour point adalah pixel yang memiliki paling sedikit 1 pixel tetangga yang berwarna putih, dengan kata lain pixel yang berada di pinggir dari pattern tersebut. Bedasarkan Gambar 2.5. yang menjadi contour point adalah a, b, c, d, dan seterusnya. 3) Contour Loop Contour loop adalah serangkaian contour point yang berkesinambungan membentuk sebuah pola. Dalam Gambar 2.5. terlihat bahwa jumlah contour loop pada pola ‘Y’ adalah 1, sedangkan pada kasus – kasus tertentu jumlah contour loop bisa lebih dari satu. 4) Sucessor dan Previous point Dalam Gambar 2.5. misalkan kita mengambil contoh point k, maka sucessor-nya adalah j, dan k. Sebaliknya, maka previous point-nya adalah l jika menghitung dari pixel n. Sucessor adalah pixel yang ada setelah pixel yang sudah ditentukan untuk dihapus, sedangkan previous adalah pixel sebelum mengenai pixel target. 5) Sucessor function Misalkan saja p menjadi pixel yang diproses, maka x adalah previous point, dan z menjadi sucessor point dari p. Kemudian sucessor function-nya menjadi z = s(x,p). 6) Syarat – syarat penghapusan a) 1 < B(p) <7, dimana B(p) adalah jumlah pixel yang nilainya taknol b) A(p) = 1, A(p) adalah jumlah transisi dari 1 ke 0 mulai dari p sampai p7. c) (p[2] + p[4])*p[0]*p[6] =0 atau (p[0] + p[6])*p[2]*p[4] =0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
Gambar 2. 6 Pseudocode A Fast and Flexible Thinning Algorithm (Wang dan Zhang, 1988) 2.5. One Pixel- Thickness One pixel thickness adalah keadaan dimana sebuah citra memiliki ketebalan satu pixel atau menjadi sebuah skeleton. Menurut Jang dan Ching (1990), suatu rangka hasil penipisan dikatakan memiliki ketebalan 1 pixel bila tidak memuat salah satu atau semua template A, dimana A adalah suatu bentuk citra yang berukuran 2x2. Tetapi ada kalanya suatu citra dikatakan one pixel thickness padahal memuat template A, yang disebut critical point (Widiarti dan Himamunanto, 2013). Jika critical point dihapus, maka image yang ditipiskan akan terputus atau berlubang. Adapun syarat untuk mengetahui bahwa pixel tersebut adalah critical point, yaitu dengan membandingkan dengan template B dan C, jika salah satu terpenuhi, maka pixel tersebut adalah sebuah critical point. Template B dan C adalah sebuah bentuk citra dengan ukuran 3x3. Berikut Gambar 2.7 dan Gambar 2.8 adalah template A, B, dan C :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
Gambar 2. 7 Struktur Template A (Jang dan Chin, 1990)
Gambar 2. 8 Struktur Template B dan C (Jang dan Chin, 1990) 2.6. Kompleksitas Waktu Menurut Wang dan Zhang (1989), running time dari algoritma A Fast and Flexible Thinning relatif lebih singkat daripada algoritma Zhang-Suen, sehingga algoritma ini lebih efisien digunakan untuk thinning. Kompleksitas waktu merupakan faktor yang penting untuk diperhatikan, karena algoritma yang baik bukan hanya dilihat dari hasil thinning yang sesuai dengan citra asli, tetapi waktu yang singkat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
juga membuat algoritma tersebut handal digunakan. Kompleksitas waktu diwakili oleh T(n), laju waktu dapat dihitung sesuai dengan besar masukan n.
2.6.1. Kompleksitas Waktu Asimptotik Jika nilai n tersebut terlalu besar atau mungkin tak hingga nilainya, maka perlu untuk mengetahui kompleksitas waktunya berdasarkan waktu tempuh dari algoritma tersebut. Notasi yang digunakan untuk mengetahui kompleksitas waktu adalah notasi asimptotik (Azizah, 2013). Terdapat 3 macam Kompleksitas waktu, yaitu best case, average case, dan worst case. Best case dilambangkan dengan Ω(𝑔(𝑛)) (Big Omega), average case dilambangkan dengan Θ(𝑔(𝑛)) (Big Theta, sedangkan worst case dilambangkan dengan O(g(n)) (Big O). Kompleksitas waktu asimptotik memiliki berberapa teorema dan definisi sebagai berikut : 1. Definisi 1 : T(n) = O(f(n)) Dibaca “T(n) adalah O(f(n))” yang artinya T(n) berorde paling besar f(n). Bila terdapat konstanta C dan n0 sedemikian hingga T(n) ≤ O(f(n)) untuk 𝑛 > 𝑛0 dimana f(n) adalah batas dari T(n) untuk n yang besar 2. Teorema 1 : Bila T(n)
= 𝑎𝑚 𝑛𝑚 + 𝑎𝑚−1 𝑛𝑚−1 + ⋯ + 𝑎1 𝑛 + 𝑎0 adalah
polinom derajat m maka T(n) = O(nm) 3. Teorema 2 : Bila 𝑇1 (𝑛) = 𝑂(𝑓(𝑛)) dan 𝑇2 (𝑛) = 𝑂(𝑔(𝑛)), maka
𝑇1 (𝑛) + 𝑇2 (𝑛) = 𝑂(𝑓(𝑛)) + 𝑂(𝑔(𝑛)) = 𝑂(max(𝑓(𝑛), 𝑔(𝑛)))
𝑇1 (𝑛) 𝑇2 (𝑛) = 𝑂(𝑓(𝑛)) 𝑂(𝑔(𝑛)) = 𝑂(𝑓(𝑛), 𝑔(𝑛))
𝑂(𝑐𝑓(𝑛) = 𝑂(𝑓(𝑛)), 𝑐 adalah konstanta
𝑓(𝑛) = 𝑂(𝑓(𝑛))
Untuk menghitung big O dalam setiap algoritma dan menerapkan teorema – teorema seperti yang telah disebutkan sebelumnya sebagai berikut :
Operasi
pengisian
nilai,
operasi
membutuhkan waktu sebesar O(1)
perbandingan,
operasi
baca
tulis,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
Operasi pengaksesan elemen larik dan memilih field tertentu membutuhkan waktu sebesar O(1) Contoh :
read x ;
O(1)
x : = x + a[k];
O(1)+ O(1)+ O(1)= O(1)
writln(x);
O(1)
Operasi if – else, misalnya if C then S1 else S2 ; membutuhkan waktu Tc + Max(TS1, TS2) Contoh : read x;
O(1)
if x mod 2 = 0 then
O(1)
begin x :=x+1 writln(x);
O(1)
end else writln(x);
O(1)
Operasi perulangan for. Kompleksitas waktunya adalah jumlah pengulangan dikali dengan kompleksitas waktu badan perulangan Contoh : For i:=1 to n do Jumlah:=jumlah + a[i];
O(1)
Operasi perulangan while-do dan repeat-until, utuk kedua perulangan tersebut, kompleksitas waktunya adalah jumlah perulangan dikali dengan kompleksitas waktu C dan S. i:=2
O(1)
while i <= n do
O(1)
begin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
jumlah :=jumlah + a[i]; O(1) i:=i+1;
O(1)
end;
Untuk operasi pemanggilan fungsi, waktu yang dibutuhkan adalah sebesar O(1)
Berikut tabel pengelompokkan algoritma bedasarkan notasi Big O nya :
Tabel 2. 1 Pengelompokkan Algoritma bedasarkan notasi Big-O nya Kelompok Algoritma
Nama
O(1)
konstan
O(log n)
logaritmik
O(n)
lanjar
O(n log n)
n log n
O(n2)
kuadratik
O(n3)
kubik
O(2n)
eksponensial
O(n!)
faktorial
2.7. Thinning Rate Derajat apakah citra dapat ditipiskan atau sudah ditipiskan dapat diukur selama proses mencari Thinning rate (Luthra dan Goyal, 2015). Thinning rate dapat dihitung dengan menghitung terlebih dahulu jumlah segitiga yang berpusat pada hotspot piksel.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 15
Gambar 2. 9 Format triangle (segitiga) Nilai triangle akan dihitung dengan seberapa banyaknya jumlah pola yang terpenuhi oleh sebuah piksel. Jika sebuah piksel memenuhi semua pola maka nilai TTCnya (Total Triangle Count) adalah 4. Penghitungan TTC dilakukan sebelum proses penipisan dan setelah proses penipisan. Setelah mendapatkan kedua nilai TTC maka nilai TTC setelah penipisan (TTCt) akan dibagi nilai TTC sebelum proses penipisan (TTCo). Semakin hasilnya mendekati 1, maka hasil dari thinning rate semakin baik. Rumusnya adalah sebagai berikut :
TR = 1-
𝑇𝑇𝐶𝑡 𝑇𝑇𝐶𝑜
(1)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Bab III METODE PENELITIAN 3.1. Gambaran Umum Penelitian Sistem yang penulis bangun adalah sistem untuk menipiskan aksara Bali (Skeletonization), dan mengetahui informasi meliputi hasil penipisan tersebut (akurasi, kompleksitas, runtime). Inputnya adalah citra aksara yang sudah dalam posisi sudut yang benar, kemudian proses yang dikenakan adalah proses untuk membinarisasikan citra aksara tersebut, kemudian sesudah menjadi biner maka akan dikenakan penipisan. Setelah penipisan, maka akan terdapat citra baru, yakni hasil penipisan serta analisa hasil penipisan. Gambar 3.1 adalah hasil penipisan citra aksara Bali huruf Ja dengan algoritma A Fast and Flexible Thinning :
Gambar 3. 1 Citra asli (kiri) dan citra hasil penipisan (kanan) 3.2. Data 3.2.1. Sumber Data Data bersumber dari Buku Cetak Bahasa Bali Pangkaja Sari untuk kelas VII SMP dengan penerbit Dwi Jaya Mandiri pada halaman 23 dan 25. Data yang kemudian di-scan kemudian di-crop agar siap diolah menjadi data baru. 3.2.2. Data yang digunakan Data yang akan digunakan adalah citra Aksara Bali Wianjana dengan total aksara Wreasta berisi 18 karakter, yakni Ha, Na, Ca, Ra, Ka, Da, Ta, Sa, Wa, La, Ma, Ga, Ba, Nga, Pa, Ja, Ya, dan Nya, kemudian aksara Wilangan yang dimulai dari 0-9.
16
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
Data Aksara Bali adalah citra hasil scan dari Buku Aksara Bali yang sudah di-crop dan siap diproses.
Gambar 3. 2 Gambar Aksara Bali Wianjana Wreasta (Sudiarta, 2014)
Gambar 3. 3 Gambar Aksara Bali Wianjana Wilangan (Sudiarta, 2014) 3.3. Hardware dan Software Perangkat keras yang digunakan adalah Laptop Lenovo Seri IdeaPad Z410 dengan spesifikasi sebagai berikut : Processor
: Intel(R) Core(TM) i5-4200M
RAM
: 4096MB
Operating system
: Windows 7 Ultimate
Graphic Interface
: NVIDIA GEFORCE
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
Perangkat lunak yang digunakan adalah Matlab R2012b. Matlab R2012b adalah perangkat untuk membantu komputasi numerik dengan bahasa pemrograman high-level. Dalam perangkat tersebut tersedia fungsi – fungsi yang sudah bisa langsung digunakan yang berkaitan dengan proses komputasi, contohnya : Penambangan Data, image processing, dan perhitungan matematis sederhana lainnya. Hasil dari fungsi di Matlab R2012b dapat direpresentasikan secara teks maupun visual.
3.4. Tahapan – Tahapan Rinci Penelitian 3.4.1. Studi Kasus Dewasa ini, kemajuan teknologi sudah merambah ranah citra. Berbagai pengaplikasian teknologi pada citra telah diterapkan, misalnya pengenalan pola, pemrosesan citra dan medical data mining. Citra menjadi data yang sangat penting untuk diolah ketika ciri dari suatu keadaan dilihat dari segi visualnya. Tetapi sebelum diproses dalam tahap lebih lanjut ada baiknya citra merupakan citra yang efektif dan efisien untuk diolah. Dalam pengenalan pola pada citra tentu pola citra yang dikenali tidak sedikit, jika ukuran citra besar atau kurang jelas maka akan lebih sulit untuk dikenali. Thinning adalah salah satu langkah awal untuk mengkompresi citra dan membuang data citra yang tidak perlu sehingga pengenalan pola akan lebih cepat dan efektif. Tanpa proses thinning tentu pemrosesan citra akan sangat lama dan berat, maka dalam penelitian ini diharapkan penerapan thinning dari algoritma A Fast and Flexible Thinning dapat memberikan sumbangsih dalam hal referensi apakah metode ini baik untuk digunakan pada penelitian selanjutnya. 3.4.2. Penelitian Pustaka Dalam bab ini, penelitian pustaka dilakukan untuk memperoleh informasi tentang teori – teori yang berkaitan dengan pembuatan tugas akhir. Teori –teori yang berkaitan berikut yaitu teori tentang Thinning dan pengujiannya. Pengujian thinning adalah seputar pengujian one pixel thickness dan pengujian kompleksitas waktu.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19
3.4.3. Perancangan dan Pembuatan Alat Uji Pada tahap ini perancangan alat uji akan dilakukan dengan perancangan interface dan perancangan alat uji yang diimplementasikan dengan cara pembuatan sistem. Setelah perancangan, akan dibuat alat uji untuk menguji one pixel thickness dan kompleksitas waktu. 3.4.4. Pengujian Pada tahap pengujian, data harus terlebih dahulu dikenai proses thinning, kemudian akan diuji dari aspek one pixel thickness dan konsumsi waktu. Berikut prosedur pengujiannya : 1. Data yang didapatkan dari sumber data kemudian dimasukkan dalam sistem 2. Data yang sudah dimasukkan dalam sistem kemudian dikenai proses thinning 3. Citra yang sudah di-thinning kemudian dicek apakah setiap pixel yang bukan critical point masuk dalam kriteria template A, jika terdapat termasuk dalam template A, maka dihitung jumlah persentase pixel yang sudah mencapai one pixel thickness 4. Sambil mengecek one pixel thickness, dapat juga dihitung konsumsi waktunya dengan cara yang sudah dibahas dalam pembahasan subbab 2.6.. 3.4.5. Analisis dan Pembuatan Laporan Setelah proses dari pengujian, maka akan ada suatu citra untuk dianalisa. Yang menjadi tolak ukur pada algoritma A Fast and Flexible Thinning adalah konektivitas, one pixel thickness, dan konsumsi waktu. Ketiga hal ini dapat dianalisa dengan membuat alat uji yang berupa sebuah aplikasi. Aplikasi ini sangat penting dan harus bebas dari error agar setiap analisa yang diberikan adalah analisa yang benar. 3.5. Perancangan Sistem Citra Aksara Bali yang sudah di-scan dan di-crop masuk ke sistem, kemudian dikenakan proses binarisasi, setelah dikenakan proses tersebut kemudian citra ditipiskan dengan menggunakan algoritma Wang – Zhang, lalu citra yang sudah ditipiskan tersebut akan diuji dan dianalisa.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
Binerisasi 1.0
Citra Aksara Bali
One Pixel Thickness
Thinning Rate
Hitung Performa Thinning 3.0
Time Consuming
Citra Biner
Citra hasil thinning
Critical and not Critical point
Gambar 3. 4 DFD level 1 proses Thinning 3.6. Algoritma A Fast and Flexible Thinning Proses Thinning pada penelitian menggunakan metode thinning paralel A Fast and Flexible Thinning yang disertai hasil pengujian one pixel thickness, pixel yang dihapus, dan konsumsi waktu. Masukan dari proses thinning ini adalah citra yang sudah berbentuk citra biner, kemudian melalui proses thinning, kemudian akan keluar output gambar hasil thinning dan analisa. Gambar 3.5 yang akan menjelaskan alur metode A Fast and Flexible Thinning.
Thinning 2.0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
B
A
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
B
A
Gambar 3. 5 Flowchart Metode A Fast and Flexible Thinning
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
Secara konsep, citra yang melalui proses algoritma ini akan melalui berberapa tahap, yaitu mencari countour loop, mencari first dan prev, mencari successor, mencocokkan piksel dengan kondisi penipisan, dan kemudian menghapus piksel. Proses penghapusan piksel akan terjadi berkali – kali sesuai banyaknya countour loop, kemudian citra akan dikenai persyaratan penghapusan pertama secara keseluruhan sampai syarat tidak bisa dikenakan pada citra, kemudian algoritma menjalankan penghapusan syarat kedua.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Bab IV IMPLEMENTASI SISTEM Rancangan yang sudah dituliskan dalam Bab III akan diimplementasikan menjadi sistem yang digunakan untuk otomatisasi proses penipisan citra. Proses implementasi adalah sebagai berikut : 4.1. Implementasi Algoritma 4.1.1. Implementasi Algoritma readFile Algoritma readFile berfungsi untuk mendeteksi citra yang belum biner dan mengubah citra tersebut menjadi biner agar mudah dalam proses penipisan. Dalam algoritma ini, perintah binarisasi yang digunakan adalah perintah bawaan matlab, yaitu im2bw, sedangkan untuk thresholding menggunakan perintah graythresh. 1. Mulai 2. Baca citra 3. Jika citra tidak biner maka lakukan thresholding menggunakan perintah graythresh 4. Kemudian lakukan binarisasi menggunakan perintah im2bw 5. Selesai
4.1.2. Implementasi Algoritma Search_prev Ketika proses looping berjalan, maka piksel yang diproses akan terus berganti. Begitu juga dengan first dan prev, tugas search_prev adalah mencari pengganti prev setelah piksel sebelumnya diproses.
24
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
1. Mulai 2. Jika titik tetangga sebelah diagonal kanan atas adalah daerah maka titik tersebut menjadi prev 3. Jika titik tetangga sebelah kanan adalah daerah maka titik tersebut menjadi prev 4. Jika titik tetangga sebelah diagonal kanan bawah adalah daerah maka titik tersebut menjadi prev 5. Jika titik tetangga sebelah bawah adalah daerah maka titik tersebut menjadi prev 6. Jika titik tetangga sebelah diagonal kiri bawah adalah daerah maka titik tersebut menjadi prev 7. Jika titik tetangga sebelah kiri adalah daerah maka titik tersebut menjadi prev 8. Jika titik tetangga sebelah diagonal kiri atas adalah daerah maka titik tersebut menjadi prev 9. Jika bukan semuanya maka prevnya adalah sebelah atas 10. Selesai
4.1.3. Implementasi Algoritma Successor Sama seperti halnya search_prev, algoritma successor berfungsi untuk mencari pengganti piksel yang akan diproses. Jika search_prev adalah untuk mencari prev, maka successor adalah untuk mencari piksel penerus terproses. 1. Mulai 2. Jika pixel terproses dan pixel terdekat yang on sejajar, maka lakukan : 2.1. Jika Pixel terproses ada disebelah kiri pixel on terdekat maka lakukan : 2.1.1. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.1.2. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 26
on, jika iya maka pixel tersebut adalah successor 2.1.3. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.1.4. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.1.5. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.1.6. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.1.7. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.1.8. Jika bukan semuanya maka successornya adalah tetangga atas 2.2. Jika pixel terproses ada di sebelah kanan pixel on maka lakukan 2.2.1. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.2. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.3. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.4. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.5. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.6. Cek apakah tetangga atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.7. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 2.2.8. Jika bukan semuanya maka successornya adalah tetangga atas
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
3. Jika pixel on terdekat ada diatas pixel terproses maka lakukan 3.1. Jika pixel on terdekat ada di sebelah kanan atas pixel terproses maka lakukan : 3.1.1. Cek apakah tetangga atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.2. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.3. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.4. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.5. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.6. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.7. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.1.8. Jika bukan semuanya, maka tetangga kiri atas adalah successornya 3.2. Jika pixel on terdekat berada diatas pixel terproses maka lakukan : 3.2.1. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.2.2. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.2.3. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.2.4. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
3.2.5. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.2.6. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.2.7. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.2.8. Jika bukan semuanya maka tetangga atas adalah successornya 3.3. Jika pixel terdekat yang on berada di kiri atas dari pixel terproses maka lakukan : 3.3.1. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.2. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.3. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.4. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.5. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.6. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.7. Cek apakah tetangga atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 3.3.8. Jika bukan semuanya maka tetangga kanan atas adalah successornya 4. Jika pixel terdekat yang on berada dibawah pixel terproses maka lakukan : 4.1. Jika pixel terdekat yang on berada di sebelah kiri bawah dari pixel terproses, maka lakukan :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
4.1.1. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.2. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.3. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.4. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.5. Cek apakah tetangga atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.6. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.7. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.1.8. Jika bukan semuanya maka tetangga kanan bawah adalah successornya 4.2. Jika pixel terdekat yang on berada tepat dibawah pixel terproses maka lakukan : 4.2.1. Cek apakah tetangga kiri bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.2.2. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.2.3. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.2.4. Cek apakah tetangga atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.2.5. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
4.2.6. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.2.7. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.2.8. Jika bukan semuanya maka tetangga bawah adalah successornya 4.3. Jika pixel terdekat yang on berada di sebelah kanan bawah pixel terproses, maka lakukan : 4.3.1. Cek apakah tetangga kiri dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.2. Cek apakah tetangga kiri atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.3. Cek apakah tetangga atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.4. Cek apakah tetangga kanan atas dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.5. Cek apakah tetangga kanan dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.6. Cek apakah tetangga kanan bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.7. Cek apakah tetangga bawah dari pixel on tersebut adalah pixel on, jika iya maka pixel tersebut adalah successor 4.3.8. Jika bukan semuanya maka tetangga sebelah kiri bawah adalah successornya 5. Selesai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
4.1.4. Implementasi Algoritma A Fast and Flexible Thinning Algorithm (Wang-Zhang) 1. Mulai 2. Lakukan inisialisasi nilai g =1 3. Lakukan perintah dibawah sampai h[k]=0 (sampai proses looping tidak memenuhi syarat penghapusan 3.1. Inisialisasikan Q=Q1 (melakukan penyalinan matriks citra asli) 3.2. Jika g=1, maka g=0, jika tidak, maka g=1 3.3. Untuk k=1 sampai dengan nilai m, lakukan : 3.3.1. Jika h[k]=1 maka lakukan : 3.3.1.1. Cari first (p), cari prev(x), set h[k]=0 3.3.1.2. Selama syarat loop-end test terpenuhi (pixel terproses adalah pixel on), maka lakukan : 3.3.1.2.1. Cari successor 3.3.1.2.2. Pixel terproses menjadi prev 3.3.1.2.3. Jika g=0, maka lakukan : 3.3.1.2.3.1. Jika 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
4.1.5. Implementasi Algoritma OnePixelThickness 1. Mulai 2. Buat matriks sesuai dengan isi template A, B, dan C (sudah dibahas dalam bab III) 3. Input gambar yang akan diuji 4. Lakukan looping sebanyak jumlah pixel tinggi dan lebar citra, selama itu, lakukan : 4.1. Jika pixel tersebut pixel on, maka lakukan : 4.1.1. Cocokkan pixel on tersebut pada template A, B, dan C 4.2. Hitung pixel yang bukan critical 4.3. Kurangi jumlah pixel (citra setelah di thinning – pixel bukan critical) /pixel thinning kemudian kalikan 100% 5. Selesai
4.1.6. Implementasi Algoritma Time Consuming Algoritma Time consuming menghitung berapa time consuming dari proses thinning tersebut. Perintah untuk memuat time consuming menggunakan bawaan matlab, yaitu tic toc. 1. Mulai 2. Tuliskan perinntah tic 3. Lakukan penipisan 4. Tuliskan perintah toc 5. Selesai
4.1.7. Implementasi Algoritma Not Critical Point Not critical point didapat dalam proses penghitungan one pixel thickness. Dimana not critical point adalah hasil dari jumlah skeleton yang tidak memenuhi template A, B, dan C.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
1. Mulai 2. Membuat matriks menurut template A, B, dan C 3. Masukkan gambar 4. Cocokkan pixel on terproses dengan template 5. Jika pixel on terproses tidak cocok dengan template manapun maka akan dihitung sebagai Not Critical Point. 6. Selesai
4.1.8. Implementasi Algoritma Critical Point Algoritma critical point berfungsi untuk mencari jumlah critical point dalam piksel hasil skeleton citra. Semakin banyak critical point dalam citra, semakin baik hasil penipisan tersebut, karena algoritma menipiskan hanya citra yang memiliki piksel berlebih dan bukan piksel dari citra yang memiliki persimpangan sehingga tidak mengubah pola asli citra tersebut. 1. Mulai 2. Membuat matriks menurut template A, B, dan C 3. Masukkan gambar 4. Cocokkan pixel on terproses dengan template 5. Jika pixel on terproses cocok dengan template A,B, atau C maka akan dihitung sebagai Critical Point. 6. Selesai
4.1.9. Implementasi Algoritma Thinning Rate Pengujian Thinning Rate berfungsi untuk membuktikan bahwa algoritma thinning benar – benar menipiskan dengan cara menghitung pola triangle dari setiap piksel yang sudah ditipiskan dibagi dengan jumlah pola triangle dari citra yang belum ditipiskan. Semakin kecil jumlah dari thinning rate, hasil thinning semakin tipis. 1. Mulai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 34
2. Buat masking 3x3 3. Hitung jumlah (i-1,j-1) * (i,j-1) * (i,j) + (i-1,j-1) *(i-1,j)*(i,j)+(i-1,j)*(i1,j+1)*(i,j)+ (i,j)*(i,j+1)*(i-1,j+1) pada pixel tersebut 4. Lakukan proses thinning 5. Buat masking baru 3x3 6. Hitung jumlah (i-1,j-1) * (i,j-1) * (i,j) + (i-1,j-1) *(i-1,j)*(i,j)+(i-1,j)*(i1,j+1)*(i,j)+ (i,j)*(i,j+1)*(i-1,j+1) pada pixel tersebut 7. Thinning rate adalah jumlah perhitungan setelah thinning dibagi sebelum thinning
4.1.10. Implementasi Algoritma Contour Loop Penghitungan countour loop berfungsi untuk jumlah looping yang dijalankan oleh algoritma. Singkatnya, algoritma ini menghitung dan mengolah jumlah garis pinggir dari citra tersebut. 1. Mulai 2. Membuat matriks salinan dari citra asli (tempku1 dan tempku3) 3. Mencari pixel pertama dari citra yang representasi hitam 4. Mencari jumlah pixel hitam pada citra 5. Inisialisasikan : tempku_no_daerah =0, iterasi=0, no_daerah=0 6. Selama jumlah piksel hitam lebih dari 0, maka lakukan : 6.1. Jika iterasi=1, maka lakukan : 6.1.1. Iterasi =0, cek =0 6.1.2. Looping sebanyak tinggi dan lebar citra (tempku1), lakukan : 6.1.2.1. Jika cek =0, maka lakukan 6.1.2.1.1. Jika pixel tersebut on(tempku1), jadikan pixel itu daerah (nilai awal :-1) 6.1.2.1.2. Cek =1 6.2. Cek apakah pixel tersebut hitam, jika iya maka lakukan :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
6.2.1. Periksa apakah pixel tetangga dari pixel on tersebut terdapat yang bernilai daerah (daerah bernilai awal -1) 6.2.2. Jika tidak ada lagi tetangga yang memiliki nilai daerah, maka nilai no_daerah ditambah satu 6.3. Jika no_daerah = tempku_no_daerah, maka lakukan : 6.3.1. Daerah = daerah -1 6.3.2. Iterasi = iterasi +1 6.4. Tempkku_no_daerah = no_daerah 6.5. No_daerah =0 6.6. Hitung jumlah pixel hitam dalam citra 7. Jumlah karakter = jumlah angka terkecil dalam tempku1 * -1 8. Inisialisasi cek=0, daerah=-1 9. Looping selama panjang dan lebar dari citra, lakukan : 9.1. Jika cek =0 9.1.1. Jika pixel terproses == daerah, maka lakukan : 9.1.1.1. Titik tersebut akan menjadi first 9.1.1.2. Cari prevnya 9.1.1.3. Cek =1 9.1.2. Cari jumlah pixel yang bernilai daerah 9.1.3. Cek =0 9.1.4. Mencari border citra yang on, kemudian dijadikan sebagai nilai daerah 9.1.5. Mencari jumlah pixel hitam dalam citra (tempku1) 9.1.6. Inisialisasi tempku_no_daerah =0, daerah=-1, no_daerah=0, iterasi=0 9.1.7. Selama jumlah pixel putih >0, maka lakukan : 9.2. Jika iterasi=1, maka lakukan : 9.2.1. Iterasi =0, cek =0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
9.2.2. Looping sebanyak tinggi dan lebar citra (tempku3), lakukan : 9.2.2.1. Jika cek =0, maka lakukan 9.2.2.1.1. Jika pixel tersebut putih(tempku1), jadikan pixel itu daerah (nilai awal :-1) 9.2.2.1.2. Cek =1 9.3. Cek apakah pixel tersebut putih, jika iya maka lakukan : 9.3.1. Periksa apakah pixel tetangga dari pixel on tersebut terdapat yang bernilai daerah (daerah bernilai awal -1) 9.3.2. Jika tidak ada lagi tetangga yang memiliki nilai daerah, maka nilai no_daerah ditambah satu 9.4. Jika no_daerah = tempku_no_daerah, maka lakukan : 9.4.1. Daerah = daerah -1 9.4.2. Iterasi = iterasi +1 9.5. Tempku_no_daerah = no_daerah 9.6. No_daerah =0 9.7. Hitung jumlah pixel putih dalam citra 10. Countour_loop = bilangan terkecil(representasi citra) *-1 11. Jika countour_loop >1, maka lakukan : 11.1.
Cek=0, daerah = -2, counter=jumlahkarakter+1;
11.2.
Looping sebanyak jumlah countour loop
11.2.1. Looping sejumlah tinggi dan lebar citra 11.2.1.1.
Jika cek =0, maka lakukan :
11.2.1.1.1. Jika pixel terproses (tempku3) adalah daerah, maka lakukan : 11.2.1.1.1.1. Jadikan tetangga sebelah kiri adalah first 11.2.1.1.1.2. Jadikan tetangga atas prev 11.2.1.1.1.3. Cek =1, counter=+1 11.2.2. Hitung jumlah counter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
11.2.3. Daerah =-1, cek =0 12. M=countour_loop+(jumlah_karakter-1) 13. Selesai
4.2. Implementasi User Interface Terdapat 3 halaman yang ada dalam Sistem Penipisan Citra Aksara Bali, yaitu halaman utama, halaman save image dan halaman open file. Halaman utama terdiri dari 4 tombol, untuk me-load gambar, untuk melakukan proses thinning, melakukan proses simpan dan untuk membersihkan area axes.
Gambar 4. 1 Halaman Utama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
Gambar 4. 2 Halaman utama setelah meng-klik tombol Thinning
Gambar 4. 3 Halaman Open File
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
Gambar 4. 4 Halaman Save Image
Pada Gambar 4.1 tampak bahwa ada berberapa kolom yang dalam keadaan default maka akan bernilai 0 (kolom ukuran piksel, time consuming, one pixel thickness, critical point, not critical point, sum of deleted pixel, sum of original pixel, sum of skeleton pixel, thinning rate, triangle before, dan triangle after), dan tombol selain open tidak akan bisa di-klik. Tetapi setelah gambar di-load, maka selain axes kolom ukuran piksel terisi angka (lihat gambar 4. 2), dan user dapat meng-klik tombol lainnya. Pada gambar 4.3 adalah tampilan dari halaman Open File. Open File bertujuan untuk me-load gambar yang akan ditipiskan. File yang dapat di-load adalah file citra berbentuk .png, .bmp, dan .jpg. Sedangkan pada gambar 4.4 setelah hasil penipisan tampil maka untuk menyimpan gambar, klik tombol Save. Kemudian akan muncul halaman untuk menyimpan gambar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
Gambar 4. 5 Halaman Utama setelah meng-klik tombol THINNING Gambar 4.5 adalah halaman utama setelah menyelesaikan proses thinning. Terlihat semua kolom sudah terisi dengan nilai pengujian thinning, dan axes hasil terisi dengan citra hasil penipisan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Bab V HASIL DAN ANALISA 5.1. Analisa Hasil penipisan Dari proses penipisan yang telah dilakukan, penulis mendapatkan 28 hasil dari 18 aksara Wianjana dan 10 angka aksara Bali. Tabel 5. 1 Tabel citra sebelum dan setelah penipisan NO
Karakter
1
ha
2
na
3
ca
4
ra
5
ka
6
da
Gambar Asli
41
Gambar Hasil Penipisan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
7
ta
8
sa
9
wa
10
la
11
ma
12
ga
13
ba
14
nga
15
pa
16
ja
17
ya
18
nya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
19
0
20
1
21
2
22
3
23
4
24
5
25
6
26
7
27
8
28
9
Setelah membandingkan hasil penipisan, maka diketahui bahwa hasil penipisan menjadi lebih tipis. Tetapi dalam pengujian hasil penipisan, terdapat uji One Pixel Thickness, yaitu menguji apakah hasil penipisan benar – benar setebal satu piksel.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
Tabel 5. 2 Tabel data jumlah piksel sebelum dan setelah penipisan
NO Karakter
Original
Skeleton
pixel
Pixel
(pixel)
(pixel)
Deleted Pixel(%)
1 ha
2988
205
93,1392
2 na
3284
236
92,8136
3 ca
2599
212
91,8430
4 ra
2020
150
92,5743
5 ka
4096
270
93,4082
6 da
3058
178
94,1792
7 ta
3731
216
94,2107
8 sa
2692
162
93,9822
9 wa
2474
133
94,6241
10 la
3382
204
93,9681
11 ma
3089
207
93,2988
12 ga
3321
189
94,3089
13 ba
3528
189
94,6429
14 nga
2210
170
93,2432
15 pa
2084
126
94,2986
16 ja
2482
174
92,9895
17 ya
3005
181
93,9767
18 nya
4371
276
93,6857
19
0
318
31
90,2516
20
1
1062
92
91,3371
21
2
1529
194
87,3120
22
3
1609
204
87,3213
23
4
414
41
90,0966
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 45
24
5
973
118
87,8726
25
6
504
61
87,8968
26
7
836
84
89,9522
27
8
719
67
90,6815
28
9
933
97
89,6034
4095
276
94,6429
287
31
87,3120
2.117 159,5357
92,0540
Tabel 5. 3 Tabel One Pixel Thickness
NO
Kar
One pixel
akte
thickness
r
(%)
Not Critical point
Critical Point (pixel)
(pixel)
1 ha
94,1463
12
30
2 na
87,2881
30
86
3 ca
90,0943
21
50
4 ra
97,3333
4
6
5 ka
95,5556
12
18
6 da
98,3146
3
7
7 ta
95,8333
9
18
8 sa
96,2963
6
10
9 wa
97,7444
3
3
10 la
97,0588
6
13
11 ma
96,6184
7
7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
12 ga
98,4127
3
18
13 ba
98,4127
3
13
14 nga
97,0588
5
5
15 pa
98,4127
2
2
16 ja
97,7011
4
15
17 ya
98,8950
2
6
18 nya
99,6377
1
6
19
0
90,3226
3
3
20
1
92,3913
7
22
21
2
96,3918
7
7
22
3
99,0196
2
2
23
4
90,2439
4
7
24
5
83,8983
19
62
25
6
98,3607
1
1
26
7
97,6190
2
2
27
8
97,0149
2
2
28
9
95,8763
4
4
Pada Tabel 5.2 persentase piksel yang terhapus terbilang cukup tinggi, dengan rata – rata 92,0540%. Pengujian berikutnya adalah apakah piksel skeleton yang tersisa adalah memang piksel inti dari citra. Terdapat piksel yang tebalnya lebih dari satu piksel karena jika piksel tersebut dihapus akan mengubah bentuk asli dari citra tersebut. Dari Tabel 5.3 dapat dilihat hasil penipisan memiliki persentase one pixel thickness yang tinggi, dan rata – ratanya sebesar 95,5697%. Dapat dikatakan bahwa memang citra sangat tipis. Kemudian contoh dari citra huruf ha, not critical point-nya sebanyak 12 dan critical point-nya sebanyak 30 piksel. Yang artinya dari 205 piksel (lihat pada Tabel 5.2) terdapat 42 piksel yang tidak one pixel thickness, dari 42 piksel tersebut terdapat 12 yang bukan critical point dan 30 piksel merupakan critical point.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
One pixel thickness didapatkan dari pembagian jumlah critical point dan jumlah piksel. Jadi bisa dikatakan jika semakin banyak jumlah critical point dalam suatu citra maka proses penipisan semakin berhasil. Pada citra huruf Na jumlah critical point-nya mencapai 86 piksel, sedangkan not critical point-nya mencapai 30 piksel. Berarti algoritma ini berhasil mereduksi sebagian besar piksel yang bukan critical point.
Tabel 5. 4 Tabel Thinning Rate
NO Karakter
Triangle
Triangel
before
after
Thinning
thinning
Thinning rate
1
ha
5320
1296
0,756391
2
na
6229
2103
0,662386
3
ca
5126
1672
0,67382
4
ra
3767
1193
0,683302
5
ka
7897
2562
0,675573
6
da
5189
1298
0,749855
7
ta
6817
1854
0,728033
8
sa
5044
1399
0,722641
9
wa
4296
936
0,782123
10
la
6288
1588
0,747455
11
ma
5429
1125
0,79278
12
ga
6528
2155
0,669884
13
ba
6490
1773
0,72681
14
nga
4365
1101
0,747766
15
pa
3809
734
0,807299
16
ja
5039
1950
0,613018
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
17
ya
5158
988
0,808453
18
nya
8204
2577
0,685885
19
0
482
82
0,829876
20
1
2060
719
0,650971
21
2
2469
716
0,710004
22
3
2613
692
0,73517
23
4
663
134
0,797888
24
5
1905
714
0,625197
25
6
851
296
0,652174
26
7
1449
403
0,721877
27
8
1195
227
0,810042
28
9
1649
397
0,759248
8204
2577
482
82
4.154,679
1.167,29
Triangle terbanyak Triangle tersedikit Triangle rata rata
Dari Tabel 5.4 bisa disimpulkan bahwa Algoritma A Fast and Flexible Thinning mereduksi cukup banyak triangle setelah penipisan. Dibuktikan banyaknya selisih antara triangle setelah dan sebelum penipisan dan besarnya nilai Thinning rate. Contoh dari huruf Ja yang nilai thinning rate-nya paling kecil, algoritma menghapus sekitar 3000 triangle setelah penghapusan. Dari Tabel 5.4 juga dapat disimpulkan bahwa hasil thinning rate tidak lebih kecil dari 0,5. Yang artinya algoritma ini berhasil menghapus lebih dari setengah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
piksel yang memenuhi pola triangle. Dengan demikian dari segi ketipisan, algoritma A Fast and Flexible Thinning merupakan algoritma yang bagus.
Gambar 5. 1 Representasi hasil penipisan huruf Ja dalam bentuk biner untuk membuktikan bahwa piksel yang tidak dapat dikategorikan One pixel thickness adalah critical point
5.2.Analisa Waktu Penipisan Selain faktor keampuhan sebuah algoritma menipiskan citra, parameter lainnya yang membuat algoritma tersebut adalah algoritma yang baik adalah time consuming-nya. Semakin singkat time consuming tentu semakin baik algoritma tersebut. Menurut penelitian dan artikel (Wang dan Zhang, 1989) Algoritma A Fast and Flexible Thinning relatif cepat, bahkan lebih cepat dari algoritma Zhang Suen dan Rutovitz.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 50
Tabel 5. 5 Tabel Time consuming NO
Karakter
Time Consuming (sec)
1
ha
0.0163852
2
na
0.0499635
3
ca
0.0481805
4
ra
0.021216
5
ka
0.0462357
6
da
0.0622284
7
ta
0.0758006
8
sa
0.0250275
9
wa
0.0305756
10
la
0.0515133
11
ma
0.040645
12
ga
0.0340356
13
ba
0.0412341
14
nga
0.0606946
15
pa
0.0276624
16
ja
0.0359159
17
ya
0.0273068
18
nya
0.043651
19
0 0.00794811
20
1 0.0183722
21
2 0.0326841
22
3 0.0430249
23
4 0.00576279
24
5 0.00347032
25
6 0.01145
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
26
7 0.0148686
27
8 0.0183656
28
9 0.0202159
Rata Rata
0,0488608 detik
Dari data diatas dapat dikatakan bila time consuming untuk aksara Bali tidak mencapai 1 detik. Dapat disimpulkan untuk sekali proses penipisan tidak memakan waktu yang lama. Dari segi time consuming, algoritma ini bisa dikatakan bagus.
5.3. Analisa Pengamatan Citra Setelah mengamati bentuk fisik citra hasil secara subyektif, terlihat bahwa terdapat piksel yang terhapus sehingga mengurangi kemiripan dengan citra asli. Mengutip dari paper Wang dan Zhang terkait A Fast and Flexible Thinning Algorithm bahwa terkadang citra akan mengalami perubahan bentuk setelah mengalami pemrosesan citra. Gambar 5.2 dibawah akan dikenakan algoritma A Fast and Flexible Thinning Algorithm dan akan dikerjakan secara manual dan sistematis.
Gambar 5. 2 Citra Asli
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
Gambar 5. 3 Hasil penipisan dengan sistem
Citra Asli pada Gambar 5.2 berdimensi 20 x 10 piksel kemudian pada Gambar 5.3 adalah citra hasil penipisan. Terlihat bahwa citra tersebut sedikit mengalami perubahan bentuk. Salah satu faktor perubahan bentuk adalah besar citra, semakin kecil citra maka hasil semakin mengalami perubahan. Maka dilakukan penipisan secara manual dan didapatkan 3 kali iterasi. Berikut Gambar 5.4, Gambar 5.5, dan Gambar 5.6 yang menjelaskan iterasi pertama, kedua, dan ketiga. Dari hasil tersebut terlihat bahwa sisi sebelah kiri sesuai bentuk asli sedangkan sebelah kanan kehilangan bentuk aslinya. Penulis menemukan bahwa setelah menghapus sisi kiri, syarat penghapusan menjadi kurang tepat dikenakan di sisi
kanan
karena
akan
mengurangi
kemiripan
dengan
bentuk
asli.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
Gambar 5. 4 Hasil dari penghitungan iterasi pertama
Gambar 5. 5 Hasil dari penghitungan iterasi kedua
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 54
Gambar 5. 6 Hasil dari penghitungan iterasi ketiga
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Bab VI KESIMPULAN DAN SARAN 6.1. Kesimpulan Dari hasil dan analisa diatas, maka dapat disimpulkan bahwa algoritma A Fast and Flexible Thinning ditinjau dari ketipisan citra hasilnya merupakan algoritma yang baik dengan rata – rata One pixel thickness sebanyak 95,5697% dan dengan jumlah critical point lebih banyak daripada jumlah not critical point dalam satu citra skeleton. Didukung dengan pengujian Thinning Rate dengan rata – rata 0,7259258, yang artinya tujuh persepuluh dari keseluruhan hasil akhir penipisan mengalami reduksi jumlah pola triangle. Dan ditinjau dari segi time consuming, algoritma ini memiliki rata – rata 0,0488608 detik. Dibandingkan dengan penelitian sebelumnya (Kurnianita, 2009) dengan rata – rata time consuming 0,02 detik menggunakan algoritma Zhang-Suen, maka dapat disimpulkan dalam menjalankan algoritma ini sedikit lebih lama daripada algoritma Zhang-Suen tetapi tetap memiliki time consuming yang baik.
6.2. Saran Algoritma A Fast and Flexible Thinning memiliki hasil – hasil yang baik dari syarat pengujian yang berupa One pixel thickness, Thinning rate, dan Time consuming. Maka dapat dikatakan algoritma ini dapat melakukan penipisan aksara Bali dengan baik. Namun memang masih ada berberapa piksel yang bukan critical point yang tidak terhapus dengan baik. Sangat disarankan untuk menggunakan citra dengan kualitas baik dan ukuran besar, karena semakin besar citra maka hasil penipisan akan semakin mirip dengan citra asli.
55
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar Pustaka Azizah, U.N., (2013). “Perbandingan Detektor Tepi Prewitt dan Detector Tepi Laplacian Bedasarkan Kompleksitas Citra Hasil”. Repository.upi.edu : Universitas Pendidikan Indonesia. Jang, B., dan Chin, R.T. (1990). “Analysis of Thinning Algorithms Using Mathematical Morphology”. IEEE Transaction on Pattern Analysis and Machine Intelligence, vol 12 no. 6, hal. 541-551. Luthra, R., dan Goyal, G. (2015). “Performance Comparison of ZS and GH Skeletonization Algorithms”. International Journal of Computer Applications vol. 121 no. 24. Mawardi, A(2010). “Penipisan Citra Aksara Jawa Menggunakan Algoritma Wang Zhang”. Yogyakarta : Universitas Sanata Dharma. Putra, D(2004). “Binerisasi Citra Tangan dengan Metode Otsu”. Binerisasi Citra Tangan dengan Metode Otsu, vol 3 no.2. Sudiarta, I. Md. Dkk (2014)., “Bahasa Bali Pangkaja Sari” . Denpasar : Dwi Jaya Mandiri. Wang dan Zhang. (1989). “A Fast and Flexible Thinning Algorithm”.IEEE Transaction on Computers, vol 38 no. 5. Widiarti dan Himamunanto (2013). “Teori dan Apllikasi Pengolahan Citra Digital”.Yogyakarta : Lintang Pustaka Utama.
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Zhou, R.W. dkk. (1995). “A Novel Single-pass Thinning Algorithm and An Effective Set of Performance Criteria”. Pattern Recognation Letter 16,
hal.
1267
xviii
–
1275.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Lampiran
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Coding Algoritma A Fast and Flexible Thinning
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9