Pemrosesan Data Kesimpulan dan Saran

nilai threshold maka pixel akan dibuat menjadi putih. Hasil citra yang telah di threshold dapat dilihat pada gambar 3.8. Gambar 3.8. Hasil proses thresholding

3.4 Pemrosesan Data

Setelah didapatkannya binary image dari praproses, maka binary image ini akan dilanjutakan pada tahap pengenalan karakter. Di tesseract sendiri proses pengenalan menggunakan kor.trainedata yang telah tersedia. Kor.trainedata ini merupakan sebuah box file yang berisi data-data dengan kode-kode unicode UTF-8 hasil pelatihan karakter-karakter. Proses pengenalan karakter itu ditunjukkan pada Gambar 3.8. Analisis Komponen Terhubung Page layout analysis Pencarian Baris Teks dan Kata Find text lines and words Pengenalan Karakter Pass 1 Recognize word pass 1 Pengenalan karakter Pass 2 Recognize word pass 2 INPUT Binary Image OUTPUT Unicode UTF-8 Outline Karakter Outline Karakter disusun menjadi kata Gambar 3.9 Proses pengenalan karakter Adapun penjelasan dari proses pengenalan karakter pada Gambar 3.9 adalah sebagai berikut. 3.4.1 Page layout analysis Pada page layout analysis , akan dilakukan analisa pada komponen terhubung Connected Component untuk menemukan dimana komponen outline disimpan. Analisis komponen terhubung ini dilakukan berdasarkan stroke penulisan pada umumnya. Lalu pixel terluar dari komponen-komponen ini akan ditandai sebagai outline , sampai semua pixel terluar ditandai. Kumpulan dari semua outline yang telah ditandai ini akan membentuk sebuah blob . Proses pencarian outline karakter ini dapat dilihat pada Gambar 3.10. Gambar 3.10 a Karakter yang akan dicari outline nya b Pelabelan karakter c blob membentuk outline d Outline karakter terbentuk 3.4.2 Find text lines and words Pada proses ini terdapat tiga hal utama yang akan dilakukan, yaitu : a. Line Finding Pencarian Baris Proses ini dibuat untuk dapat mengenali baris yang miring tanpa harus memiringkan ulang gambar sehingga tidak mengurangi kualitas dari gambar. Kunci dari proses ini adalah filterisasi blob dan line constructing Smith, 2007. Mengasumsikan bahwa analisis layout telah menyediakan region teks dan ukuran teks yang seragam, kemudian sebuah filter ketinggian persenti akan menghapus drop cap dari karakter-karakter yang bersentuhan secara vertical . Tinggi median akan mendekati ukuran teks pada region sehingga dapat digunakan sebagai filter blob yang lebih kecil dari beberapa bagian ketinngian titik tengah seperti tanda baca, diakritik dan noise . Filtered blobs akan berbentuk seperti sebuah model yang pas seperti tidak tumpang tindih, pararel, tetapi bergaris miring. Penyortiran dan pemrosesan blob dari kordinat x, memungkinkan untuk menetapkan blob pada text line yang unik, saat mengikuti kemiringan kata pada setiap halaman, dan mengurangi keslahan dalam menempatkan teks yang tidak tepat pada kemiringan yang ada. Setelah filtered blobs sudah ditetapkan pada garisnya, median dari model yang telah dibuat akan digunakan untuk memperkirakan baselines , dan blob yang telah disaring akan dipasangkan kembali pada garis yang tepat. b. Baseline Fitting Setelah baris teks ditemukan, baseline akan dicocokkan dengan lebih tepat menggunakan quadratic spline. Quadratic spline merupakan sebuah fungsi kuadrat sepenggal yang dapat diturunkan Chen, Madsen, Zhang 2002, p l. Fungsi ini digunakan untuk mengatasi gambar dengan baseline yang mirio atau berbentuk kurva. Baseline ini akan dicocokkan partisi blob kedalam kelompok- kelompok. Contoh fitted baseline yang berbentuk miring dapat dilihat pada Gambar 3.11. Gambar 3.11 F itted baseline yang berbentuk miring c. Fixed Pitch Detection dan Chopping Tesseract menguji text lines untuk menentukan apakah mereka text lines telah mendapatkan pitch yang tetap. Pitch tetap yang telah ditemukan, tesseract akan memotong kata-kata kedalam karakter menggunakan pitch tersebut, dan menghentikan pemotongan dan mengasosiasi kata-kata ini untuk dilanjutkan pada langkah pengenalan kata. Pemotongan kata pada pitch dapat dilihat pada Gambar 3.12. Gambar 3.12 Pemotongan karakter sesuai dengan F ixed Pitch 3.4.3 Recognize word pass 1 dan 2 Setelah segmentasi berhasil dilakukan, blob akan digunakan word recognizer sebagai feature dan mengklasifikasikan setiap blok dan menyajikan hasil klasifikasi tersebut pada kamus untuk mencari sebuah kata dengan kombinasi pilihan classifier untuk setiap blob. Jika hasil pengenalan masih buruk, maka karakter itu akan dipisah. Apabila kapasitas pemisahan sudah tidak memungkinkan, pencarian best first search BST dari graf segmentasi akan menyusun kembali potongan-potongan karakter yang sudah dipasang. Dalam setiap langkah BST, setiap kombinasi blob baru yang salah akan diklasifikasikan dan hasil classifier dari proses tersebut akan kembali di masukkan ke kamus. Output yang dihasilkan nantinya merupakan string karakter UTF-8 yang memiliki rating terbaik, sesuai dengan pembobotan berdasarkan ada atau tidaknya kata dalam sebuah kamus. Selanjutnya dengan menggunakan fungsi getUTF8 yang terdapat pada class TessBaseApi akan mengembalikan string yang berisi unicode dan karakter yang dikenali, kemudian akan dipresentasikan unicode tersebut dalam bentuk karakter tertentu.

3.5 Perancangan Sistem