SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Program Studi Informatika
Oleh:
Bagus Tri Gularso 185314051
PROGRAM STUDI INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
2022
METHOD THESIS
Presented as Partial Fulfillment of The Requirements To Obtain the Sarjana Komputer Degree
In Informatic Study Program
By:
Bagus Tri Gularso 185314051
INFORMATICS STUDY PROGRAM FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
2022
Abstrak
Aksara Bali adalah salah satu warisan budaya Indonesia yang harus kita jaga kelestariannya secara terus menerus. Salah satu upaya pelestarian Aksara Bali adalah dengan membuat sebuah sistem yang dapat melakukan klasifikasi terhadap aksara tersebut.
Proses klasifikasi dapat dilakukan dengan menggunakan metode klasifikasi Support Vector Machine dan didukung dengan ekstraksi ciri Moment Invariant. 7 nilai Moment Invariant serta panjang dan lebar citra akan digunakan sebagai input untuk klasifikasi Support Vector Machine yang akan memisahkan 2 buah kelas yang berbeda dengan menggunakan hyperplane.
Hasil dari proses klasifikasi ialah akurasi dan hasil prediksi label untuk input data testing. Akurasi yang didapatkan mencapai 83,72% untuk mengklasifikasikan 18 kelas dengan citra aksara yang melalui proses thinning, reduksi derau, dengan ukuran asli citra serta menggunakan model SVM one vs one, kernel SVM Linear dan validasi 5-fold validation.
Kata kunci : Aksara Bali, Moment Invariant, Support Vector Machine, K-Fold Cross Validation.
Abstract
Balinese script is one the Indonesia’s cultural heritage that we must maintain continuously. One of the efforts to preserve Balinese script is to create a system that can classify the script.
The classification process can be done using Support Vector Machine (SVM) classification method and supported by the feature extraction of moment invariant. SevenMoment Invariant’s values as well as the length and width of the image will be used as input for the Classification of Support Vector Machine which will separate 2 different classes using a hyperplane.
The result of the classification process is the accuracy and prediction results of labels for data testing input. The accuracy reached 83.72% to classify 18 classes with script images that go through the thinning process, noise reduction, original size of the image and use SVM one vs one models, Polynomial SVM kernel and 5-fold cross validation.
Keywords: Balinese Script, Moment Invariant, Support Vector Machine, K-Fold Cross Validation.
Kata Pengantar
Puji syukur penulis haturkan kepada Tuhan Yang Maha Esa atas segala berkat yang telah diberikan kepada penulis sehingga dapat menyelesaikan tugas akhir yang berjudul “Klasifikasi Aksara Bali dengan Ciri Moment Invariant dan Metode Klasifikasi Support Vector Machine” ini dengan baik. Tugas akhir merupakan salah satu persyaratan wajib untuk ditempuh sebagai syarat akademik untuk memperoleh gelar sarjana computer program studi Informatika Universitas Sanata Dharma Yogyakarta.
Dalam menyelesaikan tugas akhir, penulis tak lepas dari doa, dukungan, motivasi, bimbingan dari berbagai pihak. Pada kesempatan ini, penulis ingin mengucapkan terimakasih kepada:
1. Tuhan Yesus Kristus, atas berkat dan anugerah yang diberikan kepada penulis dalam menyelesaikan tugas akhir tanpa kendala yang berarti.
2. Papa, Mama, dan kakak yang selalu ada untuk mendoakan, memberi semangat kepada penulis dalam menyelesaikan tugas akhir ini.
3. Ibu Dr. Ir.Anastasia Rita Widiarti selaku dosen pembimbing tugas akhir yang telah bersedia memberikan arahan, masukan, waktu serta motivasi kepada penulis selama menyelesaikan tugas akhir.
4. Seluruh dosen Informatika Universitas Sanata Dharma yang telah mendidik dan memberikan ilmu pengetahuan kepada penulis selama proses perkuliahan.
5. Teman-teman dari grup WA “Bekas Gerup er pe el” yang senantiasa menjadi lahan diskusi selama penyelesaian tugas akhir dan dalam melepaskan penat pengerjaan tugas akhir.
6. Saudara Stephanus Felix Suryanto dan Resky Novaliandy sebagai rekan tugas akhir citra aksara yang senantiasa menjadi motivasi penulis dalam pengerjaan tugas akhir dan membantu memberikan saran kepada penulis saat mengalami kebuntuan dalam pengerjaan tugas akhir.
DAFTAR ISI
HALAMANPERSETUJUAN ... iii
HALAMANPENGESHAN ... iv
HALAMANPERSEMBAHAN ... v
PERNYATAANKEASLIANKARYA ... vi
LEMBARPERNYATAANPERSETUJUANPUBLIKASIKARYAILMIAH . vii ABSTRAK ... viii
ABSTRACT ... ix
KATAPENGANTAR ... X DAFTAR ISI ... xii
DAFTAR ISI TABEL ... xv
DAFTAR ISI GAMBAR ... xvii
BAB I.PENDAHULUAN ... 1
1.1LATAR BELAKANG ... 1
1.2RUMUSAN MASALAH ... 2
1.3TUJUAN ... 2
1.4MANFAAT PENELITIAN ... 3
1.5BATASAN MASALAH ... 3
1.6SISTEMATIKA PENULISAN ... 3
BAB II.LANDASAN TEORI ... 5
2.1AKSARA BALI... 5
2.1.1Aksara Wyanjana (Huruf Konsonan) ... 5
2.1.2Aksara Swara (Huruf Vokal) ... 6
2.2PENGENALAN POLA ... 6
2.3PENGERTIAN CITRA ... 7
2.4PEMROSESAN CITRA ... 7
2.4.1Binerisasi ... 7
2.4.2Cropping ... 8
2.4.3Resize ... 8
2.4.4Reduksi Derau ... 8
2.4.4Thinning ... 8
2.5EKSTRAKSI CIRI ... 8
2.6SUPPORT VECTOR MACHINE ... 10
2.7K-FOLD CROSS VALIDATION... 15
2.8CONFUSION MATRIX ... 15
BAB III.METODE PENELITIAN ... 17
3.1DATA... 17
3.1.1Kebutuhan Perangkat Hardware dan Software ... 18
3.2IMPLEMENTASI MOMENT INVARIANT DAN SUPPORT VECTOR MACHINE DENGAN DATA DUMMY ... 189
3.3CARA MENGOLAH DATA ... 26
3.3.1Desain Alat Uji ... 26
3.3.2Preprocessing ... 27
3.3.3Ekstraksi Ciri ... 28
3.3.4Klasifikasi ... 29
3.4SKENARIO PENGUJIAN ... 30
3.5DESAIN USER INTERFACE ... 31
BAB IV.HASIL PENELITIAN DAN ANALISIS ... 33
4.1DATA... 33
4.2PEMBAGIAN DATA LATIH DAN DATA UJI ... 33
4.3IMPLEMENTASI PREPROCESSING ... 34
4.3.1Binerisasi ... 34
4.3.2Cropping ... 35
4.3.3Resize ... 36
4.3.4Invers ... 36
4.3.5 Reduksi Derau ... 36
4.3.6Thinning ... 37
4.4IMPLEMENTASI EKSTRAKSI CIRI MOMENT INVARIANT ... 38
4.5IMPLEMENTASI KLASIFIKASI SVM ... 39
4.6PENGUJIAN DAN EVALUASI ... 40
4.6.1Pengujian dengan model One vs One ... 41
4.6.2Pengujian dengan model One vs All ... 47
BAB V.KESIMPULAN DAN SARAN ... 65
5.1KESIMPULAN ... 65
5.2SARAN ... 65
DAFTAR PUSTAKA ... 67
DAFTAR ISI TABEL
Tabel 2.1 Aksara Wyanjana (Huruf Konsonan) ... 5
Tabel 2.2 Aksara Swara (Huruf Vokal) ... 6
Tabel 2.3 Contoh 3 SVM Biner dengan metode One vs One ... 14
Tabel 2.4 Contoh 3 SVM Biner dengan metode One vs all ... 15
Tabel 2.5 Confusion Matrix ... 16
Tabel 3.1 Rincian Data Citra Aksara Bali ... 17
Tabel 3.2 Hasil Nilai perhitungan moment citra ... 19
Tabel 3.3 hasil perhitungan nilai moment pusat ... 20
Tabel 3.4 Hasil perhitungan nilai normalisasi moment pusat ... 20
Tabel 3.5 Hasil perhitungan nilai moment invariant ... 21
Tabel 3.6 Nilai Moment Invariant data dummy pertama ... 21
Tabel 3.7 Nilai Moment Invariant ketiga data citra dummy lainnya ... 22
Tabel 3.8 Contoh Data Sampel ... 22
Tabel 3.9 Plot Hyperplane... 24
Tabel 3.10 Contoh sample data uji ... 25
Tabel 3.11 Hasil klasifikasi ... 26
Tabel 3.12 Contoh pembagian data dengan 3-fold cross validation ... 30
Tabel 3.13 Rincian Skenario Pengujian ... 31
Tabel 4.1 Hasil Akurasi pengujian non thinning dan ukuran asli 3 fold ... 41
Tabel 4.2 Hasil Akurasi pengujian non thinning dan ukuran asli 5 fold ... 41
Tabel 4.3 Hasil Akurasi pengujian thinning dan ukuran asli 3 fold ... 42
Tabel 4.4 Hasil Akurasi pengujian thinning dan ukuran asli 5 fold ... 42
Tabel 4.5 Hasil Akurasi pengujian non thinning dan resize 50x50 3 fold ... 43
Tabel 4.6 Hasil Akurasi pengujian non thinning dan resize 50x50 5 fold ... 43
Tabel 4.7 Hasil Akurasi pengujian thinning dan resize 50x50 3 fold ... 44
Tabel 4.8 Hasil Akurasi pengujian thinning dan resize 50x50 5 fold ... 44
Tabel 4.9 Hasil Akurasi pengujian non thinning dan resize 70x70 3 fold ... 45
Tabel 4.10 Hasil Akurasi pengujian non thinning dan resize 70x70 5 fold ... 45
Tabel 4.11 Hasil Akurasi pengujian thinning dan resize 70x70 3 fold ... 46
Tabel 4.12 Hasil Akurasi pengujian thinning dan resize 70x70 5 fold ... 46
Tabel 4.13 Hasil Akurasi pengujian non thinning dan ukuran asli 3 fold ... 47
Tabel 4.14 Hasil Akurasi pengujian non thinning dan ukuran asli 5 fold ... 47
Tabel 4.15 Hasil Akurasi pengujian thinning dan ukuran asli 3 fold ... 48
Tabel 4.16 Hasil Akurasi pengujian thinning dan ukuran asli 5 fold ... 48
Tabel 4.17 Hasil Akurasi pengujian non thinning dan resize 50x50 3 fold ... 49
Tabel 4.18 Hasil Akurasi pengujian non thinning dan resize 50x50 5 fold ... 49
Tabel 4.19 Hasil Akurasi pengujian thinning dan resize 50x50 3 fold ... 50
Tabel 4.20 Hasil Akurasi pengujian thinning dan resize 50x50 5 fold ... 50
Tabel 4.21 Hasil Akurasi pengujian non thinning dan resize 70x70 3 fold ... 51
Tabel 4.22 Hasil Akurasi pengujian non thinning dan resize 70x70 5 fold ... 51
Tabel 4.23 Hasil Akurasi pengujian thinning dan resize 70x70 3 fold ... 52
Tabel 4.24 Hasil Akurasi pengujian thinning dan resize 70x70 5 fold ... 52
Tabel 4.25 Hasil Pengujian Keseluruhan ... 53
Tabel 4.26 Confusion Matrix hasil klasifikasi pemodelan One Vs One dengan kernel Linear 5 Fold data uji ke-4 ... 59
Tabel 4.27 Confusion Matrix hasil klasifikasi pemodelan One Vs All dengan kernel Polynomial 5 Fold data uji ke-3 ... 60
Tabel 4.28 Hasil Uji Data Tunggal ... 62
DAFTAR ISI GAMBAR
Gambar 2.1 ilustrasi SVM saat menentukan Hyperplane terbaik yang mungkin
untuk set data (Nugroho, Witarto, dan Handoko, 2003) ... 11
Gambar 2.2 ilustrasi SVM pada pemetaan ruang vektor yang berdimensi tinggi (Nugroho, Witarto, dan Handoko, 2003) ... 13
Gambar 3.1 Data Citra Aksara Bali ... 17
Gambar 3.2 Visualisasi Hyperplane data uji... 25
Gambar 3.3 Diagram desain alat uji ... 26
Gambar 3.4 Diagram Preprocessing ... 27
Gambar 3.5 Desain User Interface ... 32
Gambar 4.1 Folder data citra aksara bali ... 33
Gambar 4.2 Implementasi imbinarize() ... 34
Gambar 4.3 Contoh hasil implementasi fungsi imbinarize() ... 34
Gambar 4.4 Implementasi cropping ... 35
Gambar 4.5 Contoh hasil implementasi cropping... 35
Gambar 4.6 Implementasi resize ... 36
Gambar 4.7 Contoh hasil implementasi resize ... 36
Gambar 4.8 Implementasi invers ... 36
Gambar 4.9 Contoh hasil implementasi invers ... 37
Gambar 4.10 Implementasi Reduksi Derau ... 37
Gambar 4.11 Contoh hasil implementasi reduksi derau ... 37
Gambar 4.12 Implementasi thinning ... 37
Gambar 4.13 Contoh hasil implementasi thinning ... 38
Gambar 4.14 Implementasi ekstraksi ciri... 38
Gambar 4.15 Contoh hasil implementasi ekstraksi ciri ... 39
Gambar 4.16 Contoh penggunaan fungsi fitcecoc() ... 39
Gambar 4.17 Contoh label hasil prediksi ... 40
Gambar 4.18 Grafik Akurasi pengujian dengan reduksi derau ... 56
Gambar 4.19 Grafik Akurasi pengujian dengan 7 ciri dan model SVM one vs all ... 57
Gambar 4.20 Hasil uji klasifikasi dengan data tunggal... 61
BAB I.
PENDAHULUAN
1.1 Latar Belakang
Indonesia dikenal sebagai salah satu bangsa yang sangat memiliki beragam jenis budayanya. Diantara beragam jenis budaya tersebut, salah satu budaya yang sangat berpengaruh adalah bahasa daerah. Dalam bahasa daerah juga memiliki aksara yang berfungsi sebagai bentuk penulisan atau merepresentasikan bahasa daerah tersebut (Lorentius, Adipranata, Tjondrowiguno, 2019). Salah satu aksara yang masih dapat ditemukan yaitu aksara bali yang biasa ditemukan pada daun lontar.
Namun, Aksara Bali pada umumnya digunakan pada zaman kerajaan dan dewasa ini, pakar yang dapat membaca aksara sudah sulit untuk ditemukan karena literasi terhadap aksara bali yang sudah menurun. Sehingga terciptalah sebuah ide agar aksara dapat dibaca dan dilakukan proses identifikasi secara otomatis dalam sebuah sistem. Hal ini bertujuan agar aksara dapat dilestarikan dan isi dari aksara dapat menjadi sebuah pembelajaran bagi kehidupan yang akan datang.
Ada beberapa Metode klasifikasi yang dapat digunakan untuk melakukan klasifikasi citra aksara seperti K-Support Vector Nearest Neighbor (K-SVNN), Support Vector Machine (SVM), Jaringan Saraf Tiruan (JST), dll. Berdasarkan penelitian yang dilakukan oleh Wijaya, Chamidah, Santoni (2019), Metode K- SVNN dapat digunakan dalam pengenalan karakter tulisan tangan dengan akurasi mencapai 85,81%. Selanjutnya berdasarkan penelitian Yulianti, Wijaya, dan Bimantoro (2019), metode moment invariant dan SVM dapat digunakan dalam pengenalan pola tulisan tangan suku kata aksara sasak dengan akurasi mencapai 92.52%. Lalu berdasarkan penelitian yang dilakukan oleh Safrizal, Arnia, dan Muharar (2019), dengan metode SVM dan ekstraksi ciri Freemen Chain Code (FCC) dapat digunakan untuk pengenalan aksara jawi dengan akurasi mencapai 80%. Oleh karena itu, untuk penelitian ini metode klasifikasi yang akan digunakan adalah Support Vector Machine. SVM merupakan supervised learning algorithm
yang bekerja dengan Structural Risk Minimization yang bertujuan untuk menemukan hyperplane terbaik yang memisahkan 2 buah class pada ruang input.
Dalam pengolahan klasifikasi citra, diperlukan juga sebuah metode yang bernama ekstraksi ciri. Untuk penelitian ini metode ekstraksi ciri yang akan digunakan adalah moment invariant. Moment invariant merupakan sebuah metode ekstraksi ciri yang dapat menangani skala, translasi dan rotasi. Selain itu, Berdasarkan Penelitian Susetya, Rachmat, Nugraha (2017), dengan metode moment invariant dapat digunakan untuk pengenalan label buku perpustakaan dengan akurasi sebesar 85.39%.
Berdasarkan penelitian-penelitian tersebut penulis memutuskan untuk menggunakan metode SVM sebagai metode klasifikasi dan ekstraksi ciri Moment Invariant untuk digunakan dalam menangani klasifikasi citra aksara Bali karena kedua metode tersebut mampu untuk memberikan akurasi pada proses klasifikasi aksara dengan baik.
1.2 Rumusan Masalah
Rumusan Masalah pada penelitian ini adalah sebagai berikut :
1. Bagaimana kombinasi model dan kernel function SVM yang baik untuk klasifikasi dengan Support Vector Machine?
2. Berapa akurasi yang didapat dari penerapan validasi K-Fold Cross Validation dengan nilai K yang digunakan 3 dan 5?
1.3 Tujuan
Tujuan dari penelitian ini adalah sebagai berikut :
1. Menemukan kombinasi proses klasifikasi terbaik dengan model dan kernel function SVM yang digunakan dengan ekstraksi ciri moment invariant.
2. Menemukan akurasi terbaik dari penerapan validasi K-Fold Cross Validation dengan nilai K yang digunakan 3 dan 5.
1.4 Manfaat Penelitian
Manfaat dari penelitian ini adalah sebagai berikut:
1. Memperkaya ilmu pengetahuan mengenai algoritma dan penerapan dari ekstraksi ciri moment invariant dan metode klasifikasi Support Vector Machine pada data citra aksara.
2. Membantu berbagai pihak yang terkait dengan penelitian citra aksara.
1.5 Batasan Masalah
Batasan-batasan masalah dari penelitian ini adalah:
1. Data citra yang digunakan adalah data citra aksara Bali sebanyak 1001 dalam bentuk data digital.
2. Validasi menggunakan K-Fold Cross Validation dengan nilai k yang digunakan adalah 3 dan 5.
1.6 Sistematika Penulisan BAB 1: PENDAHULUAN
Bab ini berisikan tentang latar belakang masalah, rumusan masalah, tujuan, manfaat, batasan masalah dan sistemarika penulisan dari penelitian yang akan dilakukan.
BAB 2: LANDASAN TEORI
Bab ini berisikan tentang teori-teori dasar yang akan digunakan dalam penelitian yang dilakukan oleh penulis. Teori tersebut meliputi teori mengenai ohjek yang akan digunakan, metode preprocessing yang digunakan, metode ekstraksi ciri yang digunakan, metode klasifikasi yang digunakan dan metode pengujian yang digunakan.
BAB 3: METODOLOGI PENELITIAN
Bab ini berisikan tentang langkah-langkah yang akan digunakan oleh penulis dalam melakukan penelitian. Meliputi sumber data yang digunakan hingga proses yang dilakukan agar data siap digunakan pada
proses klasifikasi.
BAB 4: HASIL PENELITIAN DAN ANALISIS
Bab ini berisikan tentang penerapan sistem yang digunakan dalam penelitian serta hasil dari penelitian yang sudah dilakukan berserta analisis dari hasil penelitian tersebut.
BAB 5: KESIMPULAN DAN SARAN
Bab ini berisikan tentang kesimpulan yang didapatkan dari penelitian dan saran yang diberikan penulis agar penelitian yang sudah dilakukan ini dapat dikembangkan lagi.
BAB II.
LANDASAN TEORI
2.1 Aksara Bali
Merupakan turunan dari aksara Brahmi India yang berkembang menjadi aksara Pallawa. Kemudian aksara Pallawa berkembang menjadi aksara Kawi lalu kemudian berkembang menjadi aksara-aksara tradisional bangsa Indonesia salah satunya aksara Bali. Aksara Bali memiliki 33 huruf konsonan dan 18 aksara dasar.
2.1.1 Aksara Wyanjana (Huruf Konsonan)
Tabel 2.1 Aksara Wyanjana (Huruf Konsonan)
https://www.pinterpandai.com/aksara-bahasa-bali-hanacaraka/
Warga Pancawalimukha Semivokal Sibilan Celah Nirsuara Bersuara Sengau
Kanthya
Ka Kha Ga Gha Nga Ha
Talawya
Ca Cha Ja Jha Nya Ya Sa
Murdhanya
Ta Tha Da Dha Na Ra Sa
Dantya
Ta Tha Da Dha Na La Sa
Osthya
Pa Pha Ba
Bha Ma Wa
2.1.2 Aksara Swara (Huruf Vokal)
Tabel 2.2 Aksara Swara (Huruf Vokal)
https://www.pinterpandai.com/aksara-bahasa-bali-hanacaraka/
Warga Vokal Pendek Vokal Panjang
Kantya
A kara A kara
Talawya
I kara I kara
Murdhanya
Ra repa Ra repa
Dantya
La lenga La lenga
Osthya
U kara U kara
Kanthya-Talawya
E kara
Airsanya
Kanthya-Osthya
O Au kara
2.2 Pengenalan Pola
Pengenalan pola merupakan salah satu bidang dalam pembelajaran mesin yang menitik beratkan pada metode klasifikasi objek ke dalam kelas- kelas tertentu untuk dapat menyelesaikan masalah. Pengenalan pola bertujuan
untuk mengklasifikasikan dan mendeskripsikan pola melalui ciri-ciri dari obyek yang ingin dikenali.
Pengenalan pola memiliki 3 langkah utama, yaitu preprocessing, ekstraksi ciri, klasifikasi. Preprocessing merupakan langkah awal dimana dilakukan dengan tujuan untuk mempersiapkan data/objek yang ingin diteliti agar dapat menghasilkan ciri yang lebih baik pada proses selanjutnya. Langkah berikutnya merupakan ekstraksi ciri yang berfungsi untuk menemukan karakteristik atau ciri utama dari suatu objek. Langkah terakhir ialah klasifikasi, tahap ini bertujuan untuk mengelompokkan data menjadi kelas yang sesuai (Wibowo, 2018).
2.3 Pengertian Citra
Citra merupakan kombinasi antara titik, garis, bidang, dan warna untuk menciptakan suatu objek, biasanya objek fisik atau manusia. Citra didefinisikan sebagai fungsi dua dimensi, f(x,y), di mana x dan y adalah koordinat bidang (spasial), dan amplitudo f pada setiap pasang koordinat (x,y), disebut intensitas atau tingkat abu-abu gambar pada saat itu (Gonzalez & Woods, 2002).
Citra digital dapat direpresentasikan dalam bentuk matrik berukuran m x n, dimana m menunjukan jumlah elemen baris dan n menunjukan jumlah kolom pada matriks citra tersebut (Bahri, 2015).
2.4 Pemrosesan Citra
Pengolahan atau pemrosesan citra merupakan suatu metode atau Teknik yang dapat digunakan untuk memproses citra dengan cara memanipulasinya menjadi data citra yang diinginkan untuk mendapatkan informasi tertentu (Indarto & Murinto, 2017). Proses manipulasi terjadi pada setiap elemen atau piksel pada citra untuk mendapatkan hasil yang optimal.
2.4.1 Binerisasi
Binerisasi berarti mengubah citra yang semula adalah citra warna atau citra gray menjadi citra hitam dan putih dan nilai elemen atau piksel dalam matriks sebuah citra menjadi 0 yang berarti berwarna hitam dan 1
yang berarti berwarna putih. Thresholding merupakan Teknik utama dalam analisis similaritas yang dapat menentukan ambang batas yang tepat untuk setiap pemrosesan citra sehingga suatu citra keabuan dapat diubah menjadi citra biner (Safrizal, Arnia, dan Muharar, 2019).
2.4.2 Cropping
Pemotongan citra (cropping citra) merupakan cara pengambilan area tertentu yang akan diamati (area of interest) dalam citra, yang bertujuan untuk mempermudah penganalisaan citra dan memperkecil ukuran penyimpanan citra (Trisnani, 2020). Pemotongan citra dilakukan berdasar pada titik koordinat citra atau jumlah piksel dari citra tersebut.
2.4.3 Resize
Proses resize diperlukan untuk menseragamkan ukuran-ukuran citra yang berdasarkan hasil cropping memiliki ukuran dimensi yang berbeda- beda (Sari, Hidayat, dan Sunarya. 2015).
2.4.4 Reduksi Derau
Derau merupakan bagian dalam citra berupa piksel yang dapat mengganggu atau merusak kualitas dari citra tersebut (Sholihin dan Purwoto, 2014). Seperti terdapat bitnik hitam atau putih dalam citra yang tidak diinginkan berada dalam citra tersebut. Derau tersebut biasa disebut sebagai derau Salt & Paper.
2.4.5 Thinning
Proses morfologi pada citra yang merupakan bentuk asli citra biner menjadi citra yang menampilkan batas-batas objek atau foreground hanya setebal satu piksel (Yulianti, Wijaya, dan Bimantoro, 2019).
2.5 Ekstraksi Ciri
Ekstraksi ciri merupakan tahapan untuk mengekstrak ciri/informasi dari suatu objek dalam citra yang ingin dibedakan dengan objek-objek lainnya.
Salah satu metode yang sudah cukup dikenal dalam melakukan tahap ini adalah Moment Invariant.
Moment adalah proyeksi fungsi gambar, f(x,y) ke dasar polynomial : 𝑚𝑝𝑞 = ∑𝐻−1𝑥=0∑𝑊−1𝑦=0 𝑥𝑝𝑦𝑞𝑓(𝑥, 𝑦) (2.1) keterangan :
m = moment citra p,q = orde moment x,y = koordinat piksel
f(x,y) = nilai intensitas citra pada piksel x,y H = Tinggi citra
W = Lebar citra
Berikutnya, moment pusat (𝜇) adalah moment yang bersesuaian dengan pusat area. Moment Pusat didefinisikan pada rumus (2.2) sampai (2.6):
𝜇𝑝𝑞= ∑𝐻−1𝑥=0∑𝑊−1𝑦=0(𝑥 − 𝑥̅)𝑝(𝑦 − 𝑦̅)𝑞𝑓(𝑥, 𝑦) (2.2) 𝑥̅ = 𝑚10
𝑚00 𝑑𝑎𝑛 𝑦̅ = 𝑚01
𝑚00 (2.3) 𝑚00= ∑𝐻−1𝑥=0∑𝑊−1𝑦=0 𝑓(𝑥, 𝑦) (2.4) 𝑚10 = ∑𝐻−1𝑥=0∑𝑊−1𝑦=0 𝑥. 𝑓(𝑥, 𝑦) (2.5) 𝑚01= ∑𝐻−1𝑥=0∑𝑊−1𝑦=0 𝑦. 𝑓(𝑥, 𝑦) (2.6) Keterangan:
𝜇𝑝𝑞 = momen pusat 𝑥̅ dan 𝑦̅ = Pusat Citra
Melalui moment pusat yang terbentuk, maka selanjutnya akan dilakukan normalisasi terhadap moment pusat melalui rumus (2.7)
𝜂𝑝𝑞 = 𝜇𝑝𝑞
𝜇00𝛾 (2.7) Dimana nilai 𝛾 diperoleh melalui rumus (2.8)
𝛾 = (𝑝+𝑞
2 ) + 1 (2.8)
Keterangan:
𝜂𝑝𝑞 = moment pusat ternormalisasi 𝛾 = gamma
Setelah kita mendapatkan normalisasi moment pusat, maka sekarang kita
dapat menghitung 7 nilai vector moment invariant (Gornale, Patravali, dan Hiremath, 2020):
𝜑1= 𝜂20+ 𝜂02 (2.9) 𝜑2 = (𝜂20− 𝜂02)2+ 4𝜂112 (2.10) 𝜑3 = (𝜂30− 3𝜂12)2+ (3𝜂21− 𝜂03)2 (2.11) 𝜑4 = (𝜂30+ 𝜂12)2+ (𝜂21+ 𝜂03)2 (2.12) 𝜑5 = (𝜂30− 3𝜂12)(𝜂30+ 𝜂12)[(𝜂30+ 𝜂12)2− 3(3𝜂21− 𝜂03)2] + (3𝜂21+ 𝜂03)(𝜂21+ 𝜂03)[3(𝜂30+ 𝜂12)2 − (𝜂21+ 𝜂03)2] (2.13) 𝜑6 = (𝜂20− 𝜂02)[(𝜂30+ 𝜂12)2− (𝜂21+ 𝜂03)2] + 4𝜂11(𝜂30+
𝜂12)(𝜂21+ 𝜂03) (2.14) 𝜑7 = (3𝜂21− 𝜂03)(𝜂30+ 𝜂12)[(𝜂30+ 𝜂12)2− 3(3𝜂21− 𝜂03)2] + (3𝜂21− 𝜂03)(𝜂21+ 𝜂03)[3(𝜂30+ 𝜂12)2 − (𝜂21+ 𝜂03)2] (2.15) Keterangan:
𝜑𝑛 = moment invariant
Tujuh nilai moment invariant yang sudah didefinisikan dengan rumus (2.9) hingga rumus (2.15) berguna untuk merepresentasikan sebuah objek.
Empat moment pertama memiliki daya tahan terhadap skala, translasi, dan rotasi.
Sedangkan moment ke-5 hingga moment ke-7 merupakan deviasi relatif dari moment ke-2 dan moment ke-3 (Kurniawan, Soemarto, Yahya, 2020).
2.6 Support Vector Machine
Support Vector Machine (SVM) merupakan Supervised learning model untuk analisis klasifkasi dan regresi. SVM merupakan salah satu metode dalam machine learning yang bertujuan untuk menemukan hyperplane terbaik yang memisahkan dua buah kelas pada ruang input, SVM adalah sistem pembelajaran yang menggunakan ruang hipotesa berupa fungsi-fungsi linear dalam sebuah ruang fitur berdimensi tinggi (Yulianti, Wijaya, dan Bimantoro, 2019).
Gambar 2.1 ilustrasi SVM saat menentukan Hyperplane terbaik yang mungkin untuk set data (Nugroho, Witarto, dan Handoko, 2003)
Teknik pada SVM sangat berkaitan dengan deep learning dan machine learning karena mampu untuk memprediksi kelas suatu data baru. Fungsi model yang akan digunakan adalah fungsi linear yang didefinisikan dengan :
𝑓(𝑥) = 𝑤. 𝑥 + 𝑏 (2.16) Setiap data latih dinyatakan oleh (𝑥𝑖, 𝑦𝑖) dimana i = 1,2,…,N dan 𝑥𝑖 = {𝑥𝑖1, 𝑥𝑖2, … , 𝑥𝑖1}𝑇 merupakan fitur set bagi data training ke-i. Sedangkan 𝑦𝑖 ∈ {−1,1} menyatakan label kelas. Hyperplane untuk klasfikasi linear SVM dapat dinyatakan dengan rumus (2.17)
𝑤. 𝑥𝑖 + 𝑏 (2.17) W dan b adalah parameter model. 𝑤. 𝑥𝑖 merupakan inner-product dalam antara 𝑤 dan 𝑥𝑖. Data 𝑥𝑖 yang termasuk ke dalam class -1 adalah data yang memenuhi pertidaksamaan:
𝑤. 𝑥𝑖 + 𝑏 ≤ −1 (2.18) Sementara Data 𝑥𝑖 yang termasuk ke dalam class +1 adalah data yang memenuhi pertidaksamaan:
𝑤. 𝑥𝑖 + 𝑏 ≥ +1 (2.19) Keterangan:
w = bobot, 𝑥𝑖 = nilai fitur ke-I, 𝑏 = bias
Maksimum margin ditemukan dengan memaksimalkan nilai jarak dari hyperplane dengan titik terdekatnya, yaitu 1
‖𝑤‖. Hal ini pada umumnya dirumuskan sebagai permasalahan dari Quadratic Programming (QP), yaitu mencari titik minimal dari persamaan (2.20) dengan memperhatikan constraint pertidaksamaan (2.21)
𝑚𝑖𝑛 → 𝜏(𝑤) = 𝑤 1
2 ‖𝑤‖2 (2.20) 𝑦𝑖(𝑤𝑥𝑖 + 𝑏) − 1 ≥ 0, ∀𝑖 (2.21) Permasalah tersebut dapat dipecahkan dengan menggunakan berbagai teknik komputasi, salah satu di antaranya adalah Lagrange Multiplier.
𝐿(𝑤, 𝑏, 𝛼) =1
2‖𝑤‖2− ∑𝑙𝑖=1𝛼𝑖(𝑦𝑖((𝑥𝑖. 𝑤 + 𝑏) − 1)) (𝑖 = 1,2, … , 𝑙) (2.22) 𝛼𝑖 adalah Lagrange Multiplier, yang bernilai 0 atau positif (𝛼𝑖 ≥ 0).
Nilai yang optimal dari perhitungan pada persamaan (2.22) dapat dihitung dengan meminimalkan nilai L terhadap w dan b, serta memaksimalkan nilai L terhadap 𝛼𝑖 (Nugroho, Witarto, dan Handoko, 2003). Mengingat bahwa pada titik optimal gradient L=0, Persamaan (2.22) dapat dimodifikasi untuk memaksimalkan permasalahan yang hanya mengandung 𝛼𝑖, seperti persamaan (2.23) dan pertidaksamaan (2.24) berikut:
∑𝑙𝑖=1𝛼𝑖−1
2 ∑𝑙𝑖,𝑗=0𝛼𝑖𝛼𝑗𝑦𝑖𝑦𝑗𝑥⃗𝑖𝑥⃗𝑗 (2.23) 𝛼𝑖 ≥ 0 (𝑖 = 0,1,2, … , 𝑙) ∑𝑙𝑖=1𝛼𝑖𝑦𝑖 = 0 (2.24) Hasil yang diperoleh dari perhitungan ini yaitu 𝛼𝑖 yang pada umumnya bernilai positif. Data yang berhubungan dengan 𝛼𝑖 yang positif disebut dengan support vector. Fungsi pemisah juga dapat didefinisikan dengan:
𝑔(𝑥) ≔ 𝑠𝑖𝑔𝑛(𝑓(𝑥)) (2.25) 𝑑𝑒𝑛𝑔𝑎𝑛 𝑓(𝑥) = 𝑤𝑇𝑥 + 𝑏 (2.26) Namun, permasalahan yang ada di dunia nyata sangat jarang yang bersifat linear seperable. Kebanyakan masalah yang ada bersifat non-linear.
Oleh karena itu, SVM dimodifikasi dengan memasukkan fungsi kernel.
Pada non-linear SVM, data 𝑥⃗ dipetakan oleh fungsi Φ(𝑤⃗⃗⃗) menuju ruang vektor dengan dimensi yang lebih tinggi. Dengan ruang vektor yang baru ini,
hyperplane yang akan memisahkan 2 buah kelas dapat dibangun.
Gambar 2.2 ilustrasi SVM pada pemetaan ruang vektor yang berdimensi tinggi (Nugroho, Witarto, dan Handoko, 2003) Secara umum, terdapat 3 jenis kernel yang dapat digunakan yaitu:
i. Kernel Linear
𝐾(𝑥𝑖𝑥𝑗) = 𝑥𝑖𝑥𝑗 (2.27) ii. Kernel Polynomial
𝐾(𝑥𝑖, 𝑥𝑗) = (𝑥𝑖𝑥𝑗+ 1)𝑑 (2.28) iii. Kernel Gaussian (Radial Basis Function (RBF))
𝐾(𝑥𝑖, 𝑥𝑗) = exp (‖𝑥𝑖𝑥𝑗‖
2
2𝜎2 ) (2.29)
𝜎, 𝑐, 𝑑 > 0, merupakan konstanta.
Pada dasarnya, SVM merupakan sebuah pengklasifikasi biner sehingga hanya dapat mengklasifikasi sebuah data ke dalam 2 kelas saja. Oleh karena itu, perlu digunakan sebuah pendekatan baru jika ingin melakukan klasifikasi terhadap lebih dari 2 kelas atau multi kelas(multiclass). Dalam implementasi multi kelas, terdapat 2 metode yang dapat digunakan, yakni One Vs One dan One Vs All.
a. One Vs One
Dalam metode one vs one atau satu lawan satu ini akan dilakukan pembandingan antara 1 kelas dengan kelas lainnya.
Jumlah model klasifikasi biner yang dibangun ditentukan melalui rumus (2.30).
𝑘(𝑘−1)
2 (2.30) Keterangan:
k = Jumlah kelas
Sehingga, jika akan dilakukan klasifikasi menggunakan SVM untuk mengklasifikasikan data dengan 3 kelas, maka model klasifikasi biner yang perlu dibangun adalah sebanyak 3(3-1)/2 = 3 buah model. Kemudian setiap kelas harus dibandingkan dengan kelas yang lain seperti pada tabel 2.3.
Tabel 2.3 Contoh 3 SVM Biner dengan metode One vs One
𝒚𝒊 = 𝟏 𝒚𝒊= −𝟏 Hipotesis
Kelas 1 Kelas 2 𝑓12(𝑥) = (𝑤12)𝑥 + 𝑏12 Kelas 1 Kelas 3 𝑓13(𝑥) = (𝑤13)𝑥 + 𝑏13 Kelas 2 Kelas 3 𝑓23(𝑥) = (𝑤23)𝑥 + 𝑏23
b. One Vs All
Dalam metode one vs all atau satu lawan banyak ini akan dilakukan pembandingan antaara 1 kelas dengan semua kelas sisanya. Jumlah model klasidikasi biner yang akan dibangun adalah sebanyak k model. Sehingga, jika dilakukan klasifikasi menggunakan SVM untuk mengklasifikasikan data dengan 3 kelas, maka model klasifikasi biner yang perlu dibangun adalah sebanyak 3 buah model.
Kemudian setiap kelas akan dibandingkan seluruh kelas lainnya seperti pada tabel 2.4.
Tabel 2.4 Contoh 3 SVM Biner dengan metode One vs all
𝒚𝒊 = 𝟏 𝒚𝒊= −𝟏 Hipotesis
Kelas 1 Bukan Kelas 1 𝑓1(𝑥) = (𝑤1)𝑥 + 𝑏1 Kelas 2 Bukan Kelas 2 𝑓2(𝑥) = (𝑤2)𝑥 + 𝑏2 Kelas 3 Bukan Kelas 3 𝑓3(𝑥) = (𝑤3)𝑥 + 𝑏3
2.7 K-Fold Cross Validation
Cross-validasi adalah sebuah Teknik validasi model untuk menilai bagaimana hasil statistik analisis akan mengeneralisasi kumpulan data independen dan digunakan untuk melakukan prediksi model dan memperkirakan seberapa akurat sebuah model prediktif jika dijalankan pada praktiknya (Tempola, Muhammad, dan Khairan, 2018).
Salah satu teknik untuk melakukan cross validasi adalah K-Fold Cross Validation, dimana metode tersebut akan melakukan pemecahan data hingga menjadi k bagian. Misalnya terdapat 1000 data dan K bernilai 10 maka data akan dipecah menjadi 10 bagian dengan masing-masing bagian memiliki 100 data.
Tujuan pemecahan data ini untuk melakukan pengujian secara silang dari keseluruhan data yang digunakan untuk melihat nilai akurasi dari sebuah model klasifikasi yang dibangun.
2.8 Confusion Matrix
Confusion Matrix merupakan sebuah metode yang biasanya digunakan untuk menghitung akurasi pada konsep data mining (Mutawalli, Zaen, Bagye, 2019). Confusion Matrix memiliki 4 istilah untuk merepresentasikan hasil klasifikasi. Keempat istilah itu adalah True Positive (TP), True Negative (TN), False Positive (FP), False Negative (FN). TP merupakan data positif yang terdeteksi benar. TN merupakan data negatif yang terdeteksi benar. FP merupakan data negatif namun terdeteksi sebagai data positif. Sedangkan FN merupakan data positif yang terdeteksi sebagai data negatif.
Tabel 2.5 Confusion Matrix TRUE VALUES
TRUE FALSE
PREDICTION TRUE TP FP
FALSE FN TN
Melalui Tabel 2.5, nilai akurasi yang menggambarkan seberapa akurat dan efektifitas sistem secara keseluruhan dalam melakukan klasifikasi pada data secara benar (Hadianto, Novitasari, Rahmawati, 2019). Perhitungan akurasi dihitung melalui rumus (2.30):
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 𝑇𝑃+𝑇𝑁
𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁 𝑥 100% (2.31)
BAB III.
METODE PENELITIAN
3.1 Data
Data yang digunakan pada penelitian ini merupakan data citra tulisan tangan aksara Bali sejumlah 1001 citra dalam bentuk citra digital yang terbagi menjadi 18 label. Gambar 3.1 merupakan contoh dari data citra digital aksara bali yang akan digunakan dalam penelitian ini.
Gambar 3.1 Data Citra Aksara Bali
Tabel 3.1 merupakan rincian total data yang dimiliki oleh masing-masing 18 label tersebut:
Tabel 3.1 Rincian Data Citra Aksara Bali
Nomor Label Kelas Aksara Banyak Citra
1 C2 1 Ha 30
2 C3 2 Ta 52
3 C4 3 Ba 45
4 C6 4 Sa 64
5 C7 5 Ma 76
6 C8 6 Ka 36
7 C10 7 Nga 28
Nomor Label Kelas Aksara Banyak Citra
8 C12 8 Koma 81
9 C13 9 Ulu 121
10 C15 10 Tedong 49
11 C19 11 Na 108
12 C20 12 Da 20
13 C23 13 Wa 42
14 C27 14 Taleng 92
15 C34 15 Ra 69
16 C40 16 Ya 35
17 C42 17 Suku 33
18 C53 18 Mangkan 20
Data citra yang sudah dimiliki, memiliki ukuran dimensi yang kurang dari 45x50 piksel untuk citra yang sudah terpotong secara sempurna. Namun untuk citra yang belum terpotong secara sempurna memiliki ukuran dimensi sekitar 50x150 piksel.
3.1.1 Kebutuhan Perangkat Hardware dan Software
Adapun perangkat hardware dan software yang akan digunakan untuk mengolah data dalam penelitian ini adalah sebagai berikut:
a) Spesifikasi Hardware
1. Prosesor Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz 2. RAM 16 GB
3. HDD 1TB+SSD 256GB b) Spesifikasi Software
1. Sistem Operasi Windows 11 2. MATLAB R2019A
3.2 Implementasi Moment Invariant dan Support Vector Machine dengan data dummy
Berikut merupakan contoh perhitungan dari proses ekstraksi ciri dengan moment invariant dan klasifikasi dengan support vector machine secara manualnya.
1. Moment Invariant
Proses untuk menghitung nilai moment invariant dimulai dengan mencari nilai moment dari citra, kemudian mencari nilai moment pusat.
Setelah itu, mencari nilai moment pusat ternormalisasi sebelum akhirnya menemukan nilai moment invariant didapatkan.
a. Ilustrasi citra dummy 10x10
Ilustrasi citra dummy direpresentasikan dalam bentuk matriks seperti pada matriks di bawah ini:
[
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 0 0 0
0 0 0 0 0 1 1 1 0 0
0 0 1 1 1 1 1 1 0 0
1 1 1 1 1 1 1 1 0 0
1 1 0 0 0 1 1 1 0 0
0 0 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0]
b. Perhitungan nilai moment citra
Menghitung nilai moment pada m00, m01, m10 dengan rumus (2.4), (2.5), dan (2.6). Tabel 3.2 merupakan hasil perhitungan dari nilai moment citra.
Tabel 3.2 Hasil Nilai perhitungan moment citra Moment Nilai
m10 204
m01 156
m00 35
c. Perhitungan nilai moment pusat
Untuk mencari nilai dari moment pusat, menggunakan rumus (2.2) dengan kombinasi nilai p dan q yang akan dihitung adalah 0 2, 2 0, 1 1, 2 1, 1 2, 3 0, 0 3. Tabel 3.3 merupakan hasil perhitungan dari nilai moment pusat citra.
Tabel 3.3 hasil perhitungan nilai moment pusat Moment Pusat (𝜇𝑝𝑞) Nilai
𝜇02 178.391
𝜇20 136.9706
𝜇11 3.278367
𝜇21 -12.46
𝜇12 -337.246
𝜇30 -290.465
𝜇03 -88.5583
d. Perhitungan nilai normalisasi moment pusat
Melakukan normalisasi pada moment pusat dengan rumus (2.7) dan (2.8) dengan kombinasi nilai p dan q yang akan dihitung adalah 0 2, 2 0, 1 1, 2 1, 1 2, 3 0, 0 3.
Hasil perhitungan moment pusat ternormalisasi terdapat pada Tabel 3.4:
Tabel 3.4 Hasil perhitungan nilai normalisasi moment pusat Moment Pusat Ternormalisasi (𝜂𝑝𝑞) Nilai
𝜂02 0.1456
𝜂20 0.1118
𝜂11 0.0027
𝜂21 -0.0017
𝜂12 -0.0465
𝜂30 -0.0401
Moment Pusat Ternormalisasi (𝜂𝑝𝑞) Nilai
𝜂03 -0.0122
e. Perhitungan nilai moment invariant
Perhitungan dilakukan dengan rumus 7 nilai moment invariant dengan rumus (2.9) sampai (2.16) Tabel 3.5 merupakan hasil perhitungan nilai moment invariant:
Tabel 3.5 Hasil perhitungan nilai moment invariant Moment Invariant nilai
1 0.257
2 0.001
3 0.00995495
4 0.00769631
5 -0.00006184
6 -0.00023417
7 0.0000267202
2. Support Vector Machine
Contoh data yang akan digunakan berasal dari perhitungan 4 ekstraksi ciri dari citra dummy. Ilustrasi untuk citra dummy untuk data pertama direpresentasikan dalam bentuk matriks seperti di bawah ini:
[
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 0 0 0
0 0 0 0 0 1 1 1 0 0
0 0 1 1 1 1 1 1 0 0
1 1 1 1 1 1 1 1 0 0
1 1 0 0 0 1 1 1 0 0
0 0 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0]
Kemudian didapatkan hasil perhitungan dari ekstrasi ciri dengan moment invariant seperti pada Tabel 3.6.
Tabel 3.6 Nilai Moment Invariant data citra dummy pertama Moment Invariant nilai
1 0,2574
2 0,0012
Moment Invariant nilai
3 0,00995495
4 0,00769631
5 -0,00006184
6 -0,00023417
7 0,0000267202
Hal yang sama juga dilakukan untuk ketiga data citra dummy lainnya. Tabel 3.7 merupakan hasil perhitungan dari ekstraksi ciri dengan moment invariant untuk ketiga data citra lainnya.
Tabel 3.7 Nilai Moment Invariant ketiga data citra dummy lainnya Moment
Invariant (𝜑)
Data Citra
kedua ketiga keempat
𝜑1 0,2243 0,2946 0,2388
𝜑2 0,0209 0,0134 0,0234
𝜑3 0,00603735 0,02478835 0,00627281
𝜑4 0,00230750 0,01056328 0,00228826
𝜑5 -0,00000685 -0,00005646 -0,00000784
𝜑6 -0,00029271 -0,00055969 -0,00033088
𝜑7 0,000005226 0,000161338 -0,000003701
Berdasarkan hasil perhitungan ekstraksi ciri dari 4 citra dummy tersebut, diambil 2 dari 7 nilai moment invariant untuk setiap citranya sehingga didapatkan contoh dataset seperti pada Tabel 3.8:
Tabel 3.8 Contoh data sampel
𝑥1 𝑥2 𝑦𝑖
0.257 0.001 1
0.224 0.021 -1
0.295 0.013 1
0.239 0.023 -1
Data pada tabel 3.8 memiliki 2 atribut sehingga menghasilkan 2 bobot yaitu w1 dan w2. Kemudian margin diminimalkan dengan syarat
sebagai berikut:
𝑦𝑖(𝑊. 𝑋𝑖 + 𝑏) ≥ 1, 𝑖 = 1,2,3, … , 𝑁 𝑦𝑖(𝑤1𝑥1+ 𝑤2𝑥2+ 𝑏) ≥ 1
Sehingga diperoleh persamaan sebagai berikut:
1. 1(0.257 𝑤1+ 0.001 𝑤2+ 𝑏) ≥ 1 → 0.257 𝑤1+ 0.001 𝑤2+ 𝑏 ≥ 1 2. −1(0.224𝑤1+ 0.021𝑤2+ 𝑏) ≥ 1 → −0.224𝑤1− 0.021𝑤2− 𝑏 ≥
1
3. 1(0.295 𝑤1+ 0.013 𝑤2+ 𝑏) ≥ 1 → 0.295 𝑤1+ 0.013 𝑤2+ 𝑏 ≥ 1 4. −1(0.239 𝑤1+ 0.023 𝑤2+ 𝑏) ≥ 1 → −0.239 𝑤1− 0.023 𝑤2−
𝑏 ≥ 1
Kemudian menjumlahkan persamaan (3) dengan persamaan (4) unuk mencari nilai w2
0.295 𝑤1+ 0.013 𝑤2+ 𝑏 ≥ 1 | x 0.239
−0.239 𝑤1− 0.023 𝑤2− 𝑏 ≥ 1 | x 0.295
0.070505 𝑤1 + 0.003107 𝑤2+ 0.239𝑏 ≥ 0.239
−0.070505 𝑤1− 0.006785 𝑤2− 0.295 𝑏 ≥ 0.295 0.003678 𝑤2− 0.056 𝑏 = 0.534 | ÷ 0.003678 𝑤2 − 15.2256661 𝑏 = 145.187602
𝑤2 = 145.187602 + 15.2256661 𝑏
Kemudian menjumlahkan persamaan (1) dengan persamaan (2) unuk mencari nilai w1
0.257 𝑤1+ 0.001 𝑤2+ 𝑏 ≥ 1 |x 21
−0.224 𝑤1− 0.021 𝑤2− 𝑏 ≥ 1 |x 1 5.397 𝑤1+ 0.021 𝑤2+ 21 𝑏 ≥ 21
−0.224 𝑤1− 0.021 𝑤2− 𝑏 ≥ 1 5.173 𝑤1+ 20𝑏 = 22 | ÷ 5.173 1𝑤1+ 3.86622849 𝑏 = 4.25285134 𝑤1= 4.25285134 − 3.86622849 𝑏
+
+
Kemudian menjumlahkan persamaan (1) dengan persamaan (3) unuk mencari nilai b
0.257 𝑤1+ 0.001 𝑤2+ 𝑏 ≥ 1 0.295 𝑤1+ 0.013 𝑤2+ 𝑏 ≥ 1 0.552 𝑤1+ 0.014 𝑤2+ 2𝑏 ≥ 2
0.552 (4.25285134 − 3.86622849 𝑏) + 0.014 (145.187602 + 15.2256661 𝑏) + 2𝑏 = 2
2.34757394 − 2.13415813 𝑏 + 2.03262643 + 0.213159325 𝑏 + 2𝑏 = 2
0.213159325 𝑏 + 2𝑏 − 2.13415813 𝑏 = 2 − 2.34757394 − 2.03262643
0.079001195 𝑏 = −2.38020037 𝑏 =−2.38020037
0.079001195 = −30.1286629
Setelah mendapatkan nilai b, selanjutnya akan melakukan substitusi untuk mendapatkan nilai w1 dan w2
𝑤1 = 4.25285134 − 3.86622849 𝑏 = 4.25285134 − 3.86622849(−30.1286629) = 120.737146
𝑤2 = 145.187602 + 15.2256661 𝑏 = 145.187602 + 15.2256661 (−30.1286629) = −313.541359
Setelah nilai 𝑤1, 𝑤2, dan 𝑏 didapatkan, kemudian akan didapatkan persamaan hyperplane sebagai berikut:
120.737146 𝑋1− 313.541359 𝑋2− 30.1286629 = 0
Selanjutnya plot hyperplane dapat ditentukan menggunakan persamaan hyperplane yang telah ditemukan dengan nilai 𝑥2 dari -0.1 dan nilai 𝑥1 yang akan didapatkan melalui persamaan hyperplane.
120.737146 𝑋1− 313.541359 𝑋2− 30.1286629 = 0 313.541359 𝑋2 + 30.1286629 = 120.737146 𝑋1 𝑋1 =313.541359 𝑋2+30.1286629
120.737146
+
Sehingga didapatkan plot hyperplane seperti pada Tabel 3.9 di bawah ini:
Tabel 3.9 Plot Hyperplane 𝑥1 =313.541359 𝑋2+30.1286629
120.737146 𝑥2
0.010149925 -0.1
0.04178792 -0.08
0.093725765 -0.06
0.14566361 -0.04
0.197601455 -0.02
0.2495393 0
0.301477145 0.02
0.35341499 0.04
0.405352835 0.06
0.45729068 0.08
0.509228525 0.1
0.56116637 0.12
Tabel 3.10 merupakan contoh sampel data uji yang akan digunakan.
Tabel 3.10 Contoh sample data uji
𝑥1 𝑥2 𝑦𝑖
0.345 0.007 1
0.189 0.031 -1
0.467 0.014 1
0.229 0.054 -1
Gambar 3.2 Visualisasi hyperplane data uji
Setelah garis hyperplane ditentukan seperti pada Gambar 3.2.
maka selanjutnya kita akan melakukan klasifikasi pada data uji melalui hyperplane dengan menggunakan fungsi f(x) = 120.737146 𝑥1− 313.541359 𝑥2− 30.1286629 dengan g(x)=sign(f(x)).
Tabel 3.11 Hasil klasifikasi
3.3 Cara Mengolah Data 3.3.1 Desain Alat Uji
Desain alat uji yang akan digunakan pada penelitian ini dapat dilihat pada gambar 3.3.
-0.15 -0.1 -0.05 0 0.05 0.1 0.15
-0.2X2 0 0.2 0.4 0.6
X1
Visualisasi Hyperplane
Hyperplane class +1 Class -1
no 𝑥1 𝑥2 hasil klasifikasi
sign(f(x))
1 0.345 0.007 -1
2 0.189 0.031 1
3 0.467 0.014 -1
4 0.229 0.054 1
Gambar 3.3 Diagram Desain Alat Uji 3.3.2 Preprocessing
Data input berupa citra Aksara Bali akan dilakukan preprocessing terlebih dahulu sebelum nantinya digunakan pada tahap ekstraksi ciri.
Proses preprocessing akan dilakukan seperti Gambar 3.4.
Gambar 3.4 Diagram Preprocessing
Preprocessing yang dilakukan mencakup sebagai berikut : 1) Binerisasi Citra
Merubah citra input yang berupa citra gray/RGB menjadi citra biner yang bernilai 0 dan 1. Proses binarisasi menggunakan fungsi bawaan dari MATLAB yaitu imbinarize.
2) Cropping
Citra yang telah diolah menjadi citra biner akan dicek apakah masih ada bagian-bagian dari citra yang tidak perlu seperti background kosong, dan sebagainya. Sehingga dengan proses cropping citra yang didapatkan berupa citra utuh yang hanya berisi aksara. Proses cropping dengan mencari batas atas, bawah, kiri, dan kanan dari citra agar tidak ada lagi background kosong pada citra.
3) Resize
Menseragamkan ukuran-ukuran dari citra yang akan diproses ke tahap selanjutnya dalam sistem. Proses resize menggunakan fungsi bawaan dari MATLAB yaitu imresize.
4) Invers
Mengubah latar citra berwarna putih dan objek berwarna hitam menjadi latari citra berwarna hitam dan objek berwarna putih. Proses invers menggunakan fungsi bawaan dari MATLAB yaitu imcomplement.
5) Reduksi Derau
Reduksi derau dilakukan untuk mencegah adanya bintik-bintik hitam dalam citra yang dapat merusak kualitas citra. Proses reduksi derau menggunakan fungsi bawaan dari MATLAB yaitu medfilt2.
6) Thinning
Thinning dilakukan agar citra yang sebelumnya sudah diinverskan dapat diproses untuk mengambil kerangka dari citra aksara input. Proses thinning menggunakan fungsi bawaan dari MATLAB yaitu bwskel.
3.3.3 Ekstraksi Ciri
Ekstraksi ciri dengan metode moment invariant akan didapatkan sebanyak 7 ciri moment invariant dengan melakukan perhitungan terhadap nilai moment(𝑚), moment pusat(𝜇), dan nilai eta(𝜂) setelah itu, mencari nilai 7 moment invariant dengan menggunakan data dari perhitungan nilai eta yang telah dilakukan sebelumnya. Algoritma Moment Invariant adalah sebagai berikut:
1. Panggil fungsi moment_pusat dengan inputan citra, p, dan q
2. Get panjang dan lebar dari citra
3. Menghitung intensitas dari citra dan masukkan dalam variabel m00
4. Untuk x=0 hingga panjang-1 lakukan langkah 5 hingga 7 5. Untuk y=0 hingga lebar-1 lakukan langkah 6 hingga 7 6. Hitung nilai m10 dengan rumus
m10=m10_(x)*Citra(x+1,y+1) 7. Hitung nilai m01 dengan rumus
m01=m01_(y)*Citra(x+1,y+1)
8. Hitung nilai x’ dengan rumus x’=m10/m00 9. Hitung nilai y’ dengan rumus y’=m01/m00
10. Untuk x=0 hingga panjang-1 lakukan langkah 11 hingga 14
11. Hitung nilai i dengan rumus i = x-x’
12. Untuk y=0 hingga lebar-1 lakukan langkah 13 hingga 14 13. Hitung nilai j dengan rumus j =y-y’
14. Hitung nilai mu_pq dengan rumus
mu_pq=mu_pq+(i)^p*(j)^q*Citra(x+1,y+1) 15. Hitung nilai gamma(𝛾) dengan rumus gamma =
0.5*(p+q)+1
16. Hitung nilai eta(𝜂) dengan rumus eta_pq = mu_pq/m00^gamma
17. Lakukan Langkah 1- 16 untuk menghitung semua nilai eta pada orde moment : 0 2, 2 0, 1 1, 3 1, 1 3, 1 2, 2 1
18. Hitung 7 nilai moment invariant dengan menggunakan nilai-nilai eta yang telah dihitung sebelumnya
3.3.4 Klasifikasi
Data citra aksara bali memiliki 18 kelas yang nantinya akan diklasifikasikan. Input pada proses klasifikasi SVM adalah output dari ekstraksi ciri yang telat dilakukan pada proses sebelumnya.
SVM model yang digunakan pada penelitian ini merupakan pemodelan SVM berupa multiclass SVM yaitu one vs one dan one vs all.
Setelah SVM Model didapatkan maka akan dilakukan proses pengujian dengan menggunakan 3 fungsi kernel SVM yaitu Linear, RBF, dan Polynomial.
Output pada dari proses klasifikasi merupakan prediksi label data uji yang kemudian akan dihitung akurasi yang didapatkan.
3.4 Skenario Pengujian
Pada penelitian ini, akan dilakukan berbagai skenario pengujian untuk melihat dengan skenario yang dapat menghasilkan nilai akurasi terbaik. Dataset yang digunakan merupakan hasil dari k-fold cross validation dengan k yang sudah ditentukan sebelumnya yaitu 3 dan 5. Contoh pembagian dari 3-fold cross validation terdapat pada tabel 3.12.
Tabel 3.12 Contoh pembagian data dengan 3-fold cross validation
Percobaan Data Training Data Testing
1 1,2 3
2 2,3 1
3 1,3 2
Skenario pengujian dimulai dari mengkombinasikan proses preprocessing yaitu merubah ukuran citra, penipisan dan tanpa reduksi derau. Hasil preprocessing itulah yang akan digunakan untuk melakukan proses ekstraksi ciri.
Hasil dari ekstraksi ciri yang digunakan akan memiliki 9 ciri yaitu 7 nilai ciri moment invariant kemudian panjang dan lebar asli citra. Pemodelan SVM yang digunakan adalah one vs one dan one vs all. Serta menggunakan 3 kernel SVM pada tahap pengujian yaitu Linear, RBF, dan Polynomial.
Hasil dari skenario pengujian yang memberikan rata-rata akurasi terbaik untuk model SVM one vs one dan one vs all akan diujikan kembali dengan melakukan reduksi derau terhadap citra. Kemudian, jika hasil pengujian menyatakan bahwa dengan melakukan proses reduksi derau memiliki akurasi tertinggi, maka akan diujikan kembali dengan skenario paling baik saja antara 2 model SVM tersebut untuk diujikan dengan ekstraksi ciri dengan moment invariant saja.
Kemudian semua skenario pengujian yang memberikan hasil akurasi tertinggi akan digunakan untuk melakukan uji data tunggal. Skenario pengujian pada penelitian ini dapat dilihat pada Tabel 3.13:
Tabel 3.13 Rincian Skenario Pengujian
No Preprocessing Kernel SVM Model SVM
1 Non-thining dan ukuran asli
Linear One vs one One vs all Polynomial One vs one One vs all Gaussian/RBF One vs one One vs all
2 Thinning dan ukuran asli
Linear One vs one One vs all Polynomial One vs one One vs all Gaussian/RBF One vs one One vs all 3 Non-thinning dan resize Linear One vs one One vs all
No Preprocessing Kernel SVM Model SVM
50x50 Polynomial One vs one One vs all
Gaussian/RBF One vs one One vs all
4 Thinning dan resize 50x50
Linear One vs one One vs all Polynomial One vs one One vs all Gaussian/RBF One vs one One vs all
5 Non thinning dan resize 70x70
Linear One vs one One vs all Polynomial One vs one One vs all Gaussian/RBF One vs one One vs all
6 Thinning dan resize 70x70
Linear One vs one One vs all Polynomial One vs one One vs all Gaussian/RBF One vs one One vs all
3.5 Desain User Interface
Desain User Interface digunakan untuk melakukan pengujian dengan data tunggal dari skenario pengujian yang memberikan akurasi terbaik. Desain dapat dilihat pada Gambar 3.5.
Gambar 3.5 Desain User Interface
Input dari GUI merupakan citra aksara Bali yang akan diujikan dengan sistem. Tombol Open Image berfungsi untuk memilih citra aksara Bali yang akan diujikan, kemudian sistem akan menampilkan citra mentah yang telah dipilih.
Selanjutnya tombol Preprocessing berfungsi untuk melakukan proses processing dan sistem akan menampilkan hasil citra preprocessing yang siap untuk diolah.
Tombol Klasifikasi berguna untuk memulai proses klasifikasi, dimulai dari melakukan ekstraksi ciri pada citra yang telah di preprocessing pada langkah sebelumnya. Kemudian sistem akan melakukan proses klasifikasi dengan metode SVM menggunakan kombinasi pemodelan dan kernel SVM terbaik berdasarkan hasil skenario pengujian. Setelah itu, sistem akan mendapatkan label prediksi dari citra yang diujikan dan akan menampilkan huruf dari citra yang diujikan tersebut.
Time merupakan banyaknya waktu yang dibutuhkan oleh sistem dalam melakukan proses klasifikasi mulai dari membuat SVM Model hingga mendapatkan label prediksi dari citra yang diujikan.
BAB IV.
HASIL PENELITIAN DAN ANALISIS
4.1. Data
Pada penelitian ini, data citra aksara bali yang akan digunakan sebanyak 1001 data yang terdiri dari 18 label. Jumlah citra dalam 18 label tersebut cukup bervariasi. Data citra tersimpan dalam folder dan sudah dikelompokkan berdasarkan labelnya. Setiap folder seperti pada Gambar 4.1 berisikan citra dari 18 label yang sudah diubah menjadi bentuk grayscale.
Rincian jumlah data dalam setiap label dapat dilihat pada Tabel 3.1.
Gambar 4.1 Folder data citra aksara bali 4.2. Pembagian Data Latih dan Data Uji
Pembagian data latih dan data uji dilakukan sebelum melakukan proses preprocessing dan ekstraksi ciri. Pembagian data latih dan data uji berdasarkan nilai fold yang digunakan. Jika 3 fold digunakan maka data akan dibagi menjadi 1/3 untuk setiap fold-nya, dimana 1 fold akan digunakan sebagai data uji dan 2 fold akan digunakan sebagai data latih. Data akan dibagi secara merata sehingga setiap fold memiliki 1/3 dari total data untuk label citra yang sama. Sama halnya dengan 3 fold, jika 5 fold maka data akan dibagi menjadi 1/5 untuk setiap fold-nya, dimana 1 fold akan digunakan sebagai data uji dan 4 fold akan digunakan sebagai data latih. Setiap fold akan menyimpan 1/5 dari total data masing-masing label citra.