Pemanfaatan Teknologi Optical Character Recognition (OCR) Untuk Mengenali Alfabet Yunani Berbasis Android Artikel Ilmiah Peneliti : Fajar Aprilianto Susanto (672009105) Yos Richard Beeh, S.T., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen SatyaWacana Salatiga Oktober 2015 Pemanfaatan Teknologi Optical Character Recognition (OCR) Untuk Mengenali Alfabet Yunani Berbasis Android 1) Fajar Aprilianto Susanto, 2) Yos Richard Beeh, S.T., M.Cs. Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50771, Indonesia 1) Email: [email protected], 2) [email protected] Abstract Greek is the mother language in writing of Bible New Tastement. There are many obstacles in learning Greek language, this causes frequent misinterpretation. To understand the meaning of other language, we need a translator. Now there’s a lot of translator application but they still need an manual input, this thesis will make a translator application Greek – Indonesia image based at mobile Android OS. The text that have been captured will be process with image processing with OCR method. The text result will delivered with translator tools to translate the desired text. This application can translate the text just with the captured smartphone camera image without manual input. This application can be used as a supporting media in learning Greek languages character from Greek-language books. Keywords : Translator, Greek, Indonesia, Optical Character Recognition, Android. Abstrak Bahasa Yunani merupakan bahasa ibu dalam penulisan Alkitab Perjanjian Baru. Terdapat banyak kendala dalam mempelajari bahasa Yunani, hal ini menyebabkan sering terjadinya salah tafsir. Untuk dapat mengerti arti tulisan dari bahasa lain, kita memerlukan suatu alat bantu / penerjemah. Sekarang ini sudah banyak aplikasi penerjemah tetapi masih memerlukan masukan manual, untuk itu penelitian kali ini menghasilkan aplikasi penerjemah Yunani – Indonesia berbasis citra atau gambar pada mobile Android OS. Teks yang akan diterjemahkan tidak lagi dimasukkan secara manual melainkan ditangkap menggunakan kamera. Gambar teks yang telah ditangkap diproses menggunakan pengolahan citra dengan OCR. Hasil pengenalan teks kemudian dikirim ke tools penerjemah untuk menerjemahkan teks yang diinginkan. Aplikasi ini dapat menerjemahkan teks dengan hanya menangkap gambar menggunakan kamera smartphone tanpa harus memberikan masukan kata. Aplikasi ini dapat digunakan sebagai media penunjang dalam mengenali karakter Yunani dari buku atau literatur fisik. Kata Kunci : Translator, Yunani, Indonesia, Optical Character Recognition, Android. 1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya Wacana Salatiga. 2) Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga. 1 1. Pendahuluan Bahasa Yunani adalah bahasa asli dalam penulisan Alkitab Perjanjian Baru [1]. Salah satu aspek penting dalam pembelajaran Alkitab adalah penggalian menggunakan bahasa asli, karena apabila proses pembelajaran tersebut digunakan menggunakan bahasa terjemahan maka proses tersebut akan menghadapi kendala yaitu bahwa tidak ada satupun terjemahan yang memiliki hasil terjemahan yang persis dengan sumbernya [2]. Terdapat banyak perbedaan antara bahasa Yunani dan bahasa Indonesia, mulai dari bentuk penulisan karakter / abjad, jumlah karakter, tanda baca hingga peraturan penting dalam bahasa Yunani [3]. Selain karakter tulisannya yang asing dan tata cara penulisan yang begitu rumit, bahasa Yunani juga tidak digunakan dalam kehidupan sehari-hari sehingga orang akan kesulitan dalam membaca apalagi memahami aksara Yunani. Kesulitan dalam membaca aksara Yunani membuat pembaca sering kali salah dalam mengartikannya. Hal ini menjadi masalah karena meski bahasa merupakan faktor penting dalam berkomunikasi, namun dengan bahasa pula seseorang bisa salah paham atau salah tafsir [4]. Hal ini turut dialami oleh pendeta maupun akademisi (dosen dan mahasiswa teologi) yang mempelajari bahasa Yunani. Khususnya bagi mahasiswa dimana mereka masih sangat awam dengan bahasa Yunani, hal ini mengakibatkan sering terjadinya salah tafsir. Oleh sebab itu, diperlukan aplikasi penerjemah sebagai alat bantu dalam membaca aksara Yunani. Sudah terdapat berbagai usaha yang dilakukan untuk memudahkan proses pembelajaran aksara Yunani. Misalnya dengan menggunakan Alkitab YunaniIndonesia. Akan tetapi dalam proses tersebut masih terdapat perbedaan makna dari Alkitab bahasa Indonesia bila dibandingkan dengan bahasa aslinya sehingga membuat maknanya menjadi ambigu [5]. Padahal bila hanya menggunakan Alkitab bahasa Indonesia, pembaca tidak dapat mengetahui maksud sebenarnya. Sedangkan bila menggunakan Alkitab bahasa Yunani, pembaca justru tidak mengetahui arti dari kata aksara Yunani. Usaha berikutnya adalah penerjemahan menggunakan kamus. Kamus merupakan media alternatif yang dapat digunakan untuk menerjemahkan kata dari bahasa Yunani ke bahasa Indonesia. Namun dalam penerjemahannya, pengguna masih kesulitan mencari satu demi satu kata dalam bahasa Yunani karena memiliki sistem penulisan yang berbeda dengan bahasa Indonesia. Usaha lainnya adalah penggunaan translator. Translator dapat digunakan sebagai pengganti kamus yang lebih optimal. Dengan menggunakan translator, pengguna dapat dengan mudah mengetahui arti dari kata yang ingin diketahui tanpa harus mencari kata satu demi satu. Saat ini sudah terdapat berbagai translator, namun translator yang ada merupakan aplikasi stand alone dan aplikasi berbasis web yang masih membutuhkan masukan kata secara manual. Pemberian masukan kata dalam bentuk teks sulit dilakukan jika perangkat atau aplikasi yang digunakan tidak dilengkapi dengan keyboard berkarakter Yunani atau virtual keyboard. Cara lain masukan kata dapat berupa gambar kata yang ditangkap oleh kamera. Dengan demikian pengguna akan terbantu dalam mempelajari aksara 2 dan litelatur berbahasa Yunani dibandingkan menggunakan kamus atau alat bantu translasi lain yang membutuhkan masukan dalam bentuk teks sehingga dapat mengurangi kesalahan penerjemahan akibat kelalaian manusia. Berdasarkan latar belakang di atas dapat dirumuskan masalah bagaimana membangun sebuah media penerjemah bahasa Yunani ke bahasa Indonesia tanpa masukan kata dalam bentuk teks. Tujuan penelitian ini adalah untuk membangun sebuah media penerjemah bahasa Yunani ke bahasa Indonesia dengan masukan kata dalam bentuk citra. Dalam penerapan media penerjemah ini perlu dibuat batasan-batasan agar tidak menyimpang dari tujuan awal. Batasan tersebut antara lain aplikasi diterapkan pada smartphone dengan Android OS. Proses konversi OCR memanfaatkan engine Tesseract. Proses penerjemahan memanfaatkan Bing Translator API. Proses pelafalan memanfaatkan Google Translate API. Hasil terjemahan dan pelafalan sebatas yang bisa dilakukan oleh Bing Translator dan Google Translate. 2. Kajian Pustaka Dalam sistem operasi Android terdapat berbagai macam teknologi yang dapat digunakan untuk pembuatan translator dengan masukan gambar, salah satunya adalah teknologi yang bernama OCR. Dengan menggunakan OCR, pengguna tidak perlu lagi member input secara manual, cukup menangkap gambar teks yang diinginkan dan OCR akan mengkonversi dan mendapatkan computer based text dari gambar tersebut. Akan tetapi penggunaan OCR akan menjadi kurang efektif bila teks yang ingin dikonversi tidak memenuhi persyaratan dari engine OCR yang digunakan, misal teks pada file gambar yang akan diinterpretasikan harus dalam posisi mendatar dan terpisah antar karakternya, serta bukan dalam format italic, underline, ataupun strikethrough. Dalam Implementasinya, sistem OCR tidak menggunakan blok postprocessing (autospell dan pengembalian format). Sistem OCR hanya dapat membaca jenis tulisan tangan yang sesuai dengan ketentuan, seperti jenis font, ukuran, jarak antar karakter. Selain itu kemiringan juga mempengaruhi keberhasilan OCR dalam proses pengkonversian. Pada penelitian yang berjudul “Sistem Penerjemah Mobile Berbasis Citra Digital dengan Teknologi Web Service” menyatakan bahwa proses translasi menggunakan aplikasi stand alone dan aplikasi berbasis web harus memberi masukan manual kata yang akan diterjemahkan. Hal ini menimbulkan permasalahan bagi pengguna bila perangkat atau aplikasi yang digunakan tidak di lengkapi dengan keyboard berkarakter bahasa yang ingin diterjemahkan atau keyboard virtual [6]. Dalam penelitian ini dapat diketahui bahwa sistem tersebut dapat melakukan penerjemahan teks dengan akurasi mencapai 100%. Penelitian ini menggunakan Microsoft Translator API dan Google Translate API. Dengan menggunakan Google Translate API, aplikasi jadi lebih cepat dalam mengakses layanan Google daripada menggunakan browser bawaan yang ada pada telepon genggam. Dalam penerjemahannya, kumpulan arti kata diperoleh dari server kosakata yang telah tersedia pada Google Translate API. 3 Pada penelitian lain yang berjudul “Pengembangan Aplikasi Android Realtime Translation Untuk Menerjemahkan Bahasa Jepang ke Bahasa Indonesia” menyatakan bahwa penerjemahan menggunakan kamus tidak efisien dan mobilitasnya kurang. Memang sudah ada aplikasi kamus baik offline ataupun online namun pengetikannya cenderung sulit dilakukan bila harus memberi masukan secara manual. Penelitian ini menggunakan Tesseract sebagai engine dari OCR untuk pengenalan karakter. Penelitian lain dengan judul “Pengembangan Aplikasi Translator SundaIndonesia-Inggris Menggunakan Capture Camera Pada Smartphone Android” mendapatkan tingkat keberhasilan 70% dalam pengenalan karakter dengan menerapkan library Tesseract sebagai engine OCR. Penelitian ini menggunakan Microsoft translator API untuk penerjemahan teks dari hasil pengenalan OCR. Penelitian kali ini menghasilkan aplikasi penerjemah Yunani – Indonesia yang memiliki keluaran teks dan atau suara. Aplikasi ini menggabungkan OCR dengan Microsoft (Bing) translator API dan Google Translate (text to speech) API untuk menjadi media penerjemah tanpa masukan kata. Google Translate API yang ada sekarang tidak dapat digunakan untuk menerjemahkan secara free, oleh sebab itu dalam proses penerjemahan digunakanlah Bing Translator API yang dapat digunakan secara cuma-cuma. OCR digunakan untuk membaca karakter dari suatu gambar teks dan mendapatkan computer based text dari gambar tersebut. Gambar tersebut juga dapat dipotong untuk memfokuskan dan mempercepat proses recognition yang nantinya akan dilanjutkan dengan proses translasi. Teks yang sudah diperoleh tersebut akan diterjemahkan menggunakan Bing translator untuk mendapat teks hasil terjemahan serta Google translate untuk mendapatkan pelafalannya. Dengan demikian pengguna tidak perlu lagi memberikan masukan secara manual dengan mengetikkan kata yang ingin diterjemahkan. Engine OCR yang digunakan pada aplikasi ini adalah Tesseract. Tesseract merupakan free engine OCR yang dirilis dibawah lisensi Apache dan pengembangannya disponsori oleh Google. Tesseract saat ini merupakan salah satu engine OCR open souece yang paling akurat dibanding dengan engine yang lain. Tesseract dapat membaca berbagai format gambar dan mengkonversinya ke teks. Selain gambar, Tesseract juga dapat membaca file PDF. 3. Metode dan Perancangan Sistem Metode Penelitian Hazibuan, Zainal A. menyatakan tahapan peneilian pada umumnya terdiri dari 7 tahap yaitu : Identifikasi masalah, Perumusan masalah, Penelusuran pustaka, Rancangan penelitian, Pengumpulan data, Pengolahan data, dan Penyimpulan hasil [7]. Tahapan penelitian tersebut dapat dilihat pada Gambar 1. 4 Gambar 1 Tahapan Penelitian Tahapan penelitian pada Gambar 1, dapat dijelaskan sebagai berikut. Tahap pertama, analisis permasalahan. Pada tahap ini dilakukan penetapan permasalahan yaitu pernyataan yang bersifat umum terhadap permasalahan yang diamati seperti masalah apa saja dan bagaimana cara teolog mengatasi kesulitan dalam mempelajari Alkitab ataupun literatur berbahasa Yunani. Tahap kedua, melakukan pencarian dan pengumpulan literatur yang terkait seperti penelitian sebelumnya, latar belakang bahasa Yunani, tekonologi dan juga teori teori terkait seperti OCR, Bing Translator, dan Google Translate API. Tahap ketiga, perumusan masalah. Menguraikan permasalahan beserta solusi yang dapat membantu mengatasi permasalahan yaitu bagaimana membangun media penerjemah tanpa masukan kata dalam bentuk teks. Tahap keempat, rancangan penelitian. Setelah mengetahui permasalahan dan solusi yang ditawarkan, dilakukan perancangan dalam membangun sistem. Perancangan sistem yang dilakukan dalam membangun media penerjemah Yunani – Indonesia meliputi metode pengembangan sistem menggunakan metode prototype, model perancangan sistem menggunakan diagram Unified Modelling Language (UML), perancangan arsitektur / alur kerja sistem, dan perancangan tampilan antarmuka aplikasi penerjemah ini. Tahap kelima, pengumpulan data. Setelah sistem selesai dibangun dan aplikasi sudah selesai dibuat, dilakukan diuji fungsionalitas dari aplikasi media penerjemah Yunani – Indonesia sebelum diujicobakan ke user (pengujian alfa). Setelah itu dilakukan pengujian kepada user (pengujian beta) untuk mendapatkan hasil apakah aplikasi sudah sesuai dengan harapan pengguna. Data-data yang sudah didapat dikumpulkan dalam bentuk table hasil pengujian. Tahap keenam, pengolahan data. Pada hasil pengujian alfa dilakukan analisis apakah aplikasi media penerjemah sudah sesuai dengan yang 5 diharapkan atau tidak dan didapatkan hasil yaitu aplikasi sudah sesuai dengan yang diharapkan oleh developer. Sedangkan data hasil pengujian beta dianalisa dan didapatkan hasil yaitu aplikasi penerjemah dapat menjawab kebutuhan user. Tahap ketujuh, penyimpulan hasil. Setelah semua laporan hasil penelitian didapat, maka disimpulkan bahwa aplikasi media penerjemah bahasa Yunani – Indonesia dapat digunakan untuk mengenali dan menerjemahkan alfabet Yunani dari literatur fisik dengan memanfaatkan teknologi OCR, Bing Translator API dan Google Translate API. Metode Perancangan Sistem Metode perancangan sistem yang digunakan adalah system prototyping. Prototype model merupakan sebuah proses untuk membangun sebuah model dari sebuah sistem berdasarkan dari kebutuhan user, dengan kondisi user tidak memberikan detail input, proses dan detail output [8]. Metode ini dipilih karena prototype yang dibuat dapat digunakan untuk mengelola kembali kebutuhan dari perangkat lunak yang akan dikembangkan, sehingga pengembang perangkat lunak tidak harus merancang lagi semua dari awal. Model metode ini diilustrasikan pada Gambar 2. Gambar 2 Bagan Prototype Model [8] Kelebihan dari metode prototype adalah kemampuan metode dalam membangun suatu sistem berdasarkan kebutuhan user yang kurang jelas dalam mengidentifikasikan input, proses, maupun output. Metode prototype membangun komunikasi yang baik antara pengguna dan pengembang, sehingga pengguna berperan aktif dalam proses pengembangan perangkat lunak. Hasil akhir dari pengembangan sistem atau perangkat lunakpun dapat memenuhi kebutuhan user, karena user melakukan evaluasi pada model prototype. Selain itu, waktu yang dibutuhkan dalam proses pembuatan juga cenderung lebih singkat karena pada proses ini pengguna berperan aktif. Tahap-tahap yang dilakukan pada Pembuatan Aplikasi Penerjemah Yunani – Indonesia Menggunakan Teknologi OCR pada Mobile Android OS ini adalah : 1. Pengumpulan kebutuhan Tahap pengumpulan kebutuhan merupakan tahap awal yang dilakukan dalam pemodelan prototype. Pada tahap ini peneliti melakukan pengumpulan 6 data yang bisa dijadikan reverensi untuk bahan penerjemah Yunani – Indonesia. Bahan data yang diperlukan awalnya bersumber dari wawancara dengan pendeta, dosen, dan mahasiswa teologi mengenai perbedaan bahasa Yunani dan bahasa Indonesia, kesulitan – kesulitan yang dihadapi dalam mempelajarinya, dan menentukan tujuan umum serta kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya. Selain itu buku literatur, jurnal, dan situs internet juga menjadi sumber data untuk membuat aplikasi penerjemah Yunani – Indonesia. Pembahasan difokuskan pada penerjemahan bahasa Yunani ke bahasa Indonesia. 2. Perancangan Perancangan perangkat lunak merupakan tahap dimana akan melakukan perancangan dan implementasi terhadap pembuatan aplikasi penerjemah Yunani – Indoneisa pada mobile android OS menggunakan teknologi OCR. Pembuatan prototype ini didasarkan pada kebutuhan dari target pengguna sistem, yaitu pendeta maupun akademisi (dosen dan mahasiswa teologi). Berdasarkan hasil wawancara didapati bahwa kebutuhan user adalah alat bantu penerjemah tanpa masukan teks. Dengan memanfaatkan OCR, literatur yang ditangkap dan dikonversi menjadi computer based text yang akan diterjemahkan menggunakan Bing Translator dan dilafalkan menggunakan Google Translate API. 3. Evaluasi prototype Tahap evaluasi protoype merupakan tahap pengevaluasian atau pengujian terhadap sistem software yang telah dibangun. Pengujian ini berfungsi untuk memperjelas kebutuhan software dimana software ini bertujuan untuk meningkatkan kemampuan menerjemahkan dan pengetahuan pengguna tentang arti tulisan bahasa Yunani dari literatur fisik. Apabila software yang dihasilkan belum memenuhi kebutuhan user maka penambahan maupun perombakan akan dilakukan kembali terhadap prototyping. a. Prototype Pertama Pada prototype pertama yang dibuat untuk aplikasi penerjemah Yunani – Indoneisa menggunakan OCR, yaitu terdapat halaman utama yang berisi menu Menangkap Gambar, Memotong Gambar, Memilih Gambar, Mengganti Bahasa, Menerjemahkan, dan melafalkan Teks. Hasil prototype pertama untuk halaman utama adalah : tampilan masih sangat sederhana sehingga terlihat kurang menarik. Pada menu Menangkap Gambar, setelah selesai melakukan penangkapan gambar, pengguna langsung masuk ke cropping gambar tanpa ada pilihan apakah pengguna ingin memotong gambar atau tidak. Dalam pemindahan bahasa pengguna menggunakan tombol Mengganti Bahasa dan hanya diberi pemberitauan / output berupa Toast sehingga masih membingungkan bahasa apa yang sedang terpilih saat itu. b. Prototype Kedua Pada prototype kedua, halaman utama pada aplikasi ada perubahan pada tombol Mengganti Bahasa menjadi Memilih Bahasa, serta pemberitahuan 7 bahasa yang dipilih pada spinner. Pada menu menangkap Gambar setelah penangkapan gambar, pengguna diberi pilihan apakah ingin melakukan cropping atau langsung translating. Terdapat berbagai penyesuaian posisi text view maupun tombol tombol menu untuk mempercantik tampilan sehingga terlihat menarik. Perancangan Sistem Sistem aplikasi dirancang dengan menggunakan UML (Unified Modelling Language). Use Case Diagram digunakan untuk mendeskripsikan cara kerja sistem dari sudut pandang user, sebagai deskripsi fungsional dari sebuah sistem dan proses yang dilakukannya, serta menjelaskan secara visual siapa saja yang berperan sebagai aktor dalam penggunaan sistem dan bagaimana interaksinya. Use Case Diagram pada perancangan Aplikasi Penerjemah Yunani – Indonesia Menggunakan Teknologi OCR pada Mobile Android OS dapat dilihat pada Gambar 3. Gambar 3 Use Case Diagram Pada aplikasi Penerjemah Yunani – Indoneisa ini yang berperan sebagai aktor adalah pengguna. Pengguna dapat memilih fungsi Menangkap Gambar, Memotong Gambar, Memilih Gambar, Memilih Bahasa, Menerjemahkan, Melihat Hasil, atau Melafalkan Teks. Pada fungsi Menangkap Gambar pengguna dapat menangkap gambar baru yang nantinya akan dikonversi menggunakan OCR kemudian diterjemahkan. Fungsi Memotong Gambar untuk memilih kemudian memotong gambar yang sudah dimiliki untuk dikonversi dan diterjemahkan. Fungsi Memilih Gambar untuk memilih gambar yang sudah dimiliki untuk dikonversi dan diterjemahkan. Fungsi Menerjemahkan untuk menerjemahkan hasil OCR. Fungsi Melafalkan Teks untuk mendengarkan pelafalan kata hasil OCR. Fungsi Memilih Bahasa untuk memilih hasil output terjemahan. Fungsi Melihat Hasil untuk melihat hasil OCR dan terjemahan. Activity Diagram atau yang dikenal dengan diagram aktifitas berguna untuk mendeskripsikan alur cara kerja dari sebuah sistem, percabangan alur yang dapat terjadi pada sistem, bagaimana setiap kondisi alur berakhir dan 8 seperti apa keputusan akhir yang dapat terjadi. Activity diagram pada perancangan Aplikasi Penerjemah Yunani – Indoneisa Menggunakan Teknologi OCR pada mobile android OS dapat dilihat dapat dilihat pada Gambar 4. Gambar 4 Activity Diagram Sequence Diagram berfungsi untuk mendeskripsikan interaksi antara setiap komponen baik di dalam maupun disekitar sistem dalam bentuk pesan yang digambarkan terhadap waktu. Sequence Diagram juga mendeskripsikan alur yang dilakukan sebagai respon dari sebuah input untuk menghasilkan suatu output tertentu. Sequence Diagram pada perancangan Aplikasi Penerjemah Yunani – Indoneisa Menggunakan Teknologi OCR pada Mobile Android OS dapat dilihat pada Gambar 5. Gambar 5 Sequence Diagram 9 Class diagram menggambarkan struktur obyek, deskripsi obyek, class, package, dan relasi satu sama lain. Class diagram media Aplikasi Penerjemah Yunani – Indoneisa dapat dilihat pada Gambar 6. Gambar 6 Class Diagram Rancang arsitektur sistem terdiri dari dua bagian, yaitu user yang berada pada platform Android dan translator. Pada bagian user, pengguna memberi masukan berupa gambar kemudian akan diproses oleh engine OCR untuk menghasilkan keluaran berupa teks. Teks yang sudah didapat ini nantinya akan diterjemahkan dengan menggunakan translator. User dan translator dihubungkan dengan internet sehingga teks yang dikirim dapat diterjemahkan oleh Bing translator dan dikembalikan dengan teks hasil terjemahan sesuai dengan bahasa yang dipilih sedangkan teks yang dikirim ke Google translate akan dikembalikan berupa pelafalan teks tersebut. Gambar 6 Rancang Arsitektur Sistem 4. Hasil dan Pembahasan Halaman Menu Utama Halaman Utama merupakan halaman yang berfungsi sebagai user interface utama aplikasi. Berdasarkan dari hasil rancangan antarmuka prototype kedua, terdapat lima tombol dan satu spinner pada halaman utama. Terdiri dari tombol Ambil Gambar, Potong Gambar, Pilih Gambar, Translasi, dan Lafalkan Kata serta spinner Pilih Bahasa. Tampilan antarmuka Halaman 10 Utama aplikasi Penerjemah Yunani - Indoneisa Menggunakan Teknologi OCR pada Mobile Android OS dapat dilihat pada Gambar 7. Gambar 7 Halaman Utama Aplikasi Halaman menu utama ini dibentuk dari satu kelas activity dan satu XML (Extensible Markup Language) file yang digunakan untuk mengatur template halaman utama. Kelas activity sendiri yang akan berperan memanggil dan menjalankan item – item antarmuka yang ada pada file XML. Implementasi Menu Tahapan-tahapan dalam aplikasi media penerjemah ini diawali dengan penangkapan atau pemilihan gambar yang ingin dikonversi, pemilihan output bahasa yang diinginkan, penerjemahan, dan mendengarkan pelafalan dari hasil OCR. Ketika pengguna menekan tombol Menangkap Gambar pada halaman utama maka sistem akan mengaktifkan kamera dan gambar hasil sorot dari kamera akan ditampilkan pada halaman layar kamera secara real time. Gambar 8 merupakan Antarmuka dari halaman layar kamera. ` Gambar 8 Antarmuka Halaman Layar Kamera 11 Kode Program 1 Capture Image 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); File newdir = new File(dir); newdir.mkdirs(); photoFile = "Picture_" + date + ".jpg"; fileDir = dir + photoFile; newFile = new File(fileDir) newFile.createNewFile(); outputFileUri = Uri.fromFile(newFile); cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); startActivityForResult(cameraIntent, TAKE_PHOTO_CODE); Kode Program 1 adalah kode program untuk menangkap gambar baru. Kode program pada baris pertama adalah membuka layar untuk menangkap gambar pada kamera. Kode program pada baris ke – 2 dan 3 adalah membuat objek dan file direktori. Baris ke – 4 sampai 6 adalah kode program untuk menentukan nama file yang akan disimpan. Baris ke – 7 adalah kode program untuk membuat file baru. Baris ke – 8 sampai 10 adalah kode program untuk mendapatkan Uri dari file baru dan menambahkan data tersebut pada cameraIntent kemudian menjalankan activity yang memiliki request code TAKE_PHOTO_CODE. Ketika kamera berhasil menangkap gambar maka sistem akan menampilkan pilihan apakah pengguna ingin memotong gambar atau tidak. Jika pengguna memilih untuk tidak memotong gambar, maka sistem akan langsung mengkonversi gambar dengan OCR tetapi jika mengguna memilih untuk memotong gambar, maka sistem akan menampilkan halaman layar cropping. Di sini pengguna dapat menentukan bagian dari gambar yang ingin konversi. Apabila pengguna memilih menu Memotong Gambar di halaman utama, maka pengguna akan diminta untuk memilih gambar mana yang akan dipotong. Bila pengguna memilih menu Memilih Gambar, pengguna akan diminta memilih gambar yang akan di konversi seperti yang dapat kita lihat pada Gambar 9. Gambar 9 Antarmuka Halaman Browse File 12 Kode Program 2 Select Image 1. 2. 3. Intent pickImageIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); pickImageIntent.setType("image/*"); startActivityForResult(pickImageIntent, IMAGE_PICKER_REQUEST); Kode Program 2 adalah kode program untuk memilih gambar yang nantinya akan dikonversi. Kode program pada baris pertama adalah menampilkan file gambar yang terdapat pada media penyimpanan dan mengambil Uri dari file yang dipilih. Baris ke – 2 adalah kode program untuk mengatur tipe data file yaitu gambar. Baris ke – 3 adalah kode program untuk mengirim data yang terdapat pada pickImageIntent dan menjalankan activity yang memiliki request code IMAGE_PICKER_REQUEST. Gambar yang dipilih akan dikonversi oleh OCR lalu hasilnya dikirim ke Bing translator untuk diterjemahkan dan dikembalikan dengan output teks sesuai dengan bahasa yang kita pilih dan juga ke Google translate untuk diproses dan dikembalikan dengan output pelafalan. Aplikasi penerjemah ini memiliki dua jenis keluaran yaitu teks dan suara. Kita dapat melihatnya pada Gambar 10. A B C Gambar 10 (A) Pilih Bahasa. (B) Hasil OCR. (C) Hasil Terjemahan Kode Program 3 Perform OCR 1. public void performOCR() { 2. TessBaseAPI baseApi = new TessBaseAPI(); 3. String DATA_PATH = Environment.getExternalStorageDirectory().getPath() 4. + "/tesseract"; 5. baseApi.init(DATA_PATH, OCRlang); 6. baseApi.setImage(selectedImage); 7. recognizedText = baseApi.getUTF8Text(); 8. baseApi.end(); 9. greek.setText(recognizedText); 10. } Kode Program 3 adalah proses pengenalan karakter pada aplikasi untuk mengenali karakter yang ada dalam gambar yang dipilih. Kode program pada baris ke – 3 dan 4 adalah penentuan letak folder penyimpanan data Tesseract. Baris ke – 5 adalah kode program untuk menginisialisasi dan menentuan 13 library bahasa sumber yang akan digunakan oleh Tesseract. Baris ke – 6 adalah kode program untuk menentukan gambar yang akan dikonversi. Gambar tersebut disimpan dalam objek selectedImage. Baris ke – 7 sampai 9 adalah kode program untuk mendapatkan text hasil terjemahan dan mendapatkan format text UTF8, mengakhiri engine Tesseract, dan menggunakan text yang sudah didapat untuk ditampilkan. Kode Program 4 Translating 1. 2. 3. 4. 5. 6. 7. String InputString = greek.getText().toString(); com.memetix.mst.translate.Translate.setClientId("myGreekIndonesianTrans lator"); com.memetix.mst.translate.Translate.setClientSecret("wisa/zwOCgDCQmVewB 90E1tdfmqMRl3Y/2/+ivTyK2M="); Request r = new Request(langSelected, InputString); r.setLanguage(langSelected); r.setText(InputString); translatedText = Translate.execute(req.getText(),req.getLanguage()); Kode Program 4 adalah proses penerjamahan pada aplikasi untuk menerjemahkan karakter Yunani yang sudah didapat dari hasil OCR ke karakter Latin dengan menggunakan Bing Translator API. Kode program pada baris ke – 1 adalah mengambil teks yang ada dalam text view greek. Baris ke – 2 adalah kode program untuk menentukan Client ID pengguna atau pemilik akun Bing Translator. Baris ke – 3 adalah kode program untuk menentukan API key Bing Translator. Baris ke – 4 sampai 6 adalah kode program untuk menentukan bahasa sasaran dan masukan teks yang akan diterjemahkan. Baris ke – 7 adalah kode program untuk memanggil menjalankan proses translasi. Kode Program 5 Text to Speech 2. 3. 4. 5. 6. 7. 8. 9. toSpeak = greek.getText().toString(); String url1 = "http://www.translate.google.com/translate_tts?ie=UTF8&q="+ toSpeak.replace(' ', '+').replace('\n', '.') + "%0A&tl=" + language + "&prev=input"; mediaPlayer = new MediaPlayer(); mediaPlayer.reset(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setDataSource(url1); mediaPlayer.prepare(); // might take long! (for buffering, etc) mediaPlayer.start(); Kode Program 5 adalah proses pengiriman teks Yunani ke Google Translate pada aplikasi untuk mendengarkan pelafalan teks hasil OCR dengan memanfaatkan Google Translate API. Kode program pada baris pertama berfungsi untuk mengambil teks yang ada pada text view greek. Kemudian baris kedua adalah kode program untuk menentukan URL yang akan diakses, kata yang akan didengar, dan bahasa yang digunakan. Sedangkan dari baris ke – 3 hingga ke – 8 merupakan kode program untuk menjalankan media player. Diawali dengan pembuatan objek mediaPlayer, kemudian mediaPlayer diatur ulang dan ditentukan tipe audio stream dan sumber datanya. Berikutnya mediaPlayer dipersiapkan untuk dijalankan. 14 Pengujian Sistem Pengujian sistem bertujuan untuk melihat sejauh mana sistem dalam aplikasi dapat berjalan dan menemukan kesalahan yang dapat terjadi pada aplikasi. Pengujian ini dilakukan dengan pengujian alfa dan pengujian beta. Pengujian alfa sistem dilakukan dengan cara menguji tiap – tiap fungsi yang ada pada aplikasi apakah sudah berjalan dengan baik. Proses dinyatakan berhasil jika perintah yang dikerjakan oleh user sesuai dengan output yang diharapkan. Pengujian aplikasi menggunakan metode Black Box Testing. Black box testing adalah sebuah metode pengujian perangkat lunak yang berfocus pada persyaratan fungsionalitas [8]. Melalui pengujian ini, dapat diketahui apakah aplikasi sudah berjalan dan memberikan output sesuai yang diinginkan atau tidak. Pengujian alfa meliputi pengujian Integrasi Antarmuka dan pengujian fungsi menu - menu. Pengujian integrasi antarmuka bertujuan untuk mengecek apakah halaman antarmuka satu dengan halaman antarmuka lainnya pada aplikasi telah saling berhubungan dengan benar. Pengujian kinerja OCR bertujuan untuk mengetahui perbandingan waktu yang diperlukan dalam proses konversi OCR terhadap jumlah karakter yang ada pada gambar teks. Pengujian ini dilakukan dengan menggunakan smartphone Xiaomi Redmi Note. Hasil dari pengujian konversi OCR dapat dilihat pada Tabel 1. Pengujian fungsi-fungsi menu bertujuan untuk mengecek apakah fungsifungsi menu pada halaman utama dan layar kamera sudah berjalan dengan baik atau tidak. Hasil dari pengujian Alfa dapat dilihat pada Tabel 2. Pengujian Beta pada sistem aplikasi dilakukan pada salah satu sasaran dari pembuatan aplikasi yaitu mahasiswa teologi. Pada pengujian beta ini dipilih mahasiswa secara random sebagai sampel pengujian aplikasi dimana hasil dari kuesioner yang dibagikan sebelum pengujian beta mahasiswa tersebut belum memiliki aplikasi penerjemah. Pengujian hanya dilakukan kepada mahasiswa karena memiliki tingkat kesalahan yang tinggi dalam menerjemahkan bahasa Yunani. Jumlah responden adalah 30 orang yang mengikuti proses pengujian. Setelah mencoba aplikasi, responden pengujian diberikan kuisioner untuk melihat tingkat tanggapan persetujuan responden terhadap aplikasi. Data dari setiap butir kemudian dihitung dengan skala likert. Hasil dari butir nomer 1 sampai 3 dapat dilihat pada Tabel 3. Tabel 1. Hasil Pengujian Konversi OCR No 1 2 3 4 5 Jumlah Karakter 1 2 3 4 5 Waktu yang Dibutuhkan (millisecond) 981 956 1363 992 1496 15 Tabel 2. Hasil Pengujian Alfa Pengujian Aksi Integrasi antarmuka Menangkap Gambar Memotong Gambar Memilih Gambar Menangkap Gambar Memotong Gambar Fungsi menu Memilih Gambar Mengganti Bahasa Menerjema hkan Melafalkan Teks Hasil Yang Hasil Yang Status Diharapkan Muncul Pengujian Layar sorot kamera Tapil layar sorot Valid tampil kamera Muncul halaman Tampil halaman Valid browse file gallery Muncul halaman Tampil halaman Valid browse file gallery Gambar ditangkap dan disimpan, Gambar dilanjutkan dengan tersimpan, cropping kemudian terpotong, dan Valid konversi dan didapatkan hasil penampilan hasil konversinya OCR Muncul gambar yang Gambar yang akan dipilih untuk dipilih muncul, dipotong kemudian terpotong, dan Valid mengkonversi dan mendapatkan menampilkan hasil hasil OCR konversinya Muncul gambar Gambar terpilih untuk dikonversi dan dan Valid menampilkan hasil mendapatkan OCR hasil OCR Muncul pilihan Tampil bahasa output bahasa Indonesia dan Valid terjemahan bahasa Inggris Hasil OCR Tampil teks hasil Valid diterjemahkan terjemahan Terdengar pelafalan Pelafal teks hasil Valid teks hasil OCR OCR terdengar Tabel 3. Hasil Kuisioner No Pernyataan 1 Teks hasil OCR sesuai gambar Hasil terjemahan teks benar 2 3 Pelafalan teks benar Sangat Tidak Setuju Sangat Setuju Setuju Tidak Setuju 9 19 2 0 80.8% 7 20 3 0 78.3% 8 18 4 0 78.3% 16 Skor Berdasarkan data persentase hasil jawaban kuesioner pada Tabel 3 maka didapatkan persentase dari setiap butir. Butir pertama sebanyak 80.8%, butir kedua sebanyak 78.3%, dan butir ketiga sebanyak 78.3%. Berdasarkan persentase untuk tiap butir tersebut diperoleh informasi bahwa sebagian besar hasil OCR sudah sesuai dengan teks yang ada pada gambar, demikian pula pada hasil terjemahan dan pelafalan teks yang sudah tepat. Dengan demikian, dapat disimpulkan bahwa aplikasi penerjemah dapat digunakan sebagai media penunjang dalam mengenali dan mempelajari materi / literatur berbahasa Yunani. Kesimpulan Dari penelitian yang sudah dilakukan, dapat ditarik beberapa kesimpulan antara lain pengenalan karakter Yunani dapat dilakukan dengan memanfaatkan teknologi OCR dalam membangun media penerjemah dengan masukan gambar pada perangkat android mobile. Media penerjemah Yunani – Indonesia dapat diwujudkan dengan memanfaatkan Bing Translator API dalam proses penerjemahan dan Google Translate API dalam proses pelafalan teks. Berdasarkan hasil uji coba melalui kuisioner dapat diketahui pendapat responden bahwa aplikasi media penerjemah dapat digunakan untuk mengenali karakter Yunani dari literatur fisik. 5. Daftar Pustaka Pappas, John Peter, 2008, Bible Greek : Basic Grammar of the Greek New Testament, California : Scofield Seminary Press. [2] Michael Keene, 2006, Alkitab : Sejarah, Proses Terbentuk, dan Pengaruhnya; Diterjemahkan oleh Y. Dwi Koratno, Yogyarkarta : Kanisius. [3] Wallace, Daniel B., 2000, The Basics of New Testament Syntax : an intermediate Greek grammar, Michigan : Zondervan. [4] Yasin, Rizqi Fauzi, 2013, Ranah Hermeneutika Dan Korelasinya Dengan Linguistik, Ponorogo: Universitas Darussalam Gontor. [5] Lewis, C. S., 2010, The Four Loves (Empat Macam Kasih), Bandung : Pionir Jaya (cetakan 1). [6] Habibi, Baso, 2013, Sistem Penerjemah Mobile Berbasis Citra Digital dengan Teknologi Web Service, Makassar : Universitas Hasanuddin. [7] Hasibuan, Zainal A., 2007, Metodologi Penelitian Pada Bidang Ilmu Komputer Dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi, Jakarta : Ilmu Komputer Universitas Indonesia. [8] Pressman, Roger S., 2002, Rekayasa Perangkat Lunak : Pendekatan Praktisi (Buku I) / Roger S, Pressman; Diterjemahkan oleh : L. N. Harmaningrum – Edisi II -, Yogyakarta : Andi. 6. [1] 17