TUGAS AKHIR
Disusun Untuk Memenuhi Syarat Kelulusan Pada
Program Studi Strata Satu Sistem Komputer di Jurusan Teknik Komputer
Oleh
Irman Nurmulya Malik
10207042
Pembimbing
Dr. Wendi Zarman, M.Si
JURUSAN SISTEM KOMPUTER
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
DAFTAR RIWAYAT HIDUP
Data Pribadi
Nama : Irman Nurmulya Malik
Jenis Kelamin : Laki-laki
Tempat & Tgl. Lahir : Kuningan, 18 Agustus 1989
Alamat : Jl. Depok V No. 15 Antapani, Bandung
Telepon : 085720503218
Status : Belum Menikah
Agama : Islam
E-mail : irman.n.m@gmail.com
Pendidikan Formal
2007-2014 : Program Studi S1 Jurusan Sistem Komputer Fakultas Teknik & Ilmu Komputer
Universitas Komputer Indonesia Bandung
2004-2007 : SMA Negeri 16 Bandung
2001-2004 : SMP Negeri 14 Bandung
1995-2001 : SD Negeri Griya Bumi Antapani 27/I Bandung
Pengalaman Organisasi
2004-2006 : Wakil ketua Forum Islamic Students SMAN 16 Bandung
2004-2005 : Anggota Kelompok Ilmiah Remaja SMAN 16 Bandung
2002-2003 : Anggota Karawitan Sunda SMP 16 Bandung
2001-2002 : Palang Merah Remaja SMPN 14 Bandung
Pengalaman Kerja
2010-2012 : Manager Produksi & Asisten Produser CV. Kreavisi
Irman Nurmulya Malik
ABSTRAK ... iv
ABSTRACT ... v
KATA PENGANTAR ... vi
DAFTAR ISI ... viii
DAFTAR TABEL... x
DAFTAR GAMBAR ... xi
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Maksud dan Tujuan ... 2
1.3 Batasan Masalah... 2
1.4 Metode Penelitian... 2
1.5 Sistematika Penulisan... 3
BAB II DASAR TEORI ... 5
2.1 Sistem Operasi Android ... 5
2.1.1 Arsitektur Sistem Operasi Android ... 5
2.1.2 Struktur Aplikasi Sistem Operasi Android ... 7
2.2 Pengolahan Citra Digital ... 7
2.2.1 Jenis-jenis dari Pengolahan Citra ... 8
2.2.1.1 Pengolahan Citra Warna ... 8
2.2.1.2 Pengolahan Citra Grayscale ... 9
2.2.1.3 Pengolahan Citra Biner ... 9
2.2.2 OCR... 10
2.2.3 Segmentasi Pengolahan Citra ... 10
2.2.4 Pengambangan (Thresholding) ... 11
2.2.5 Pengambangan dengan Metode Otsu ... 12
2.3 OCR SDK... 12
2.4 Microsoft Translator... 12
2.5 Pemrograman Berorientasi Objek ... 12
2.6 Bahasa Inggris (English) ... 14
2.6.1 Huruf Inggris dan Penulisannya ... 14
2.7 Bahasa Indonesia (Indonesian) ... 15
2.7.1 Huruf Indonesia dan Penulisannya... 16
BAB III PERANCANGAN SISTEM ... 17
3.1 Analisis Masalah ... 17
ix
3.2.2 Analisis Kebutuhan Perangkat Lunak ... 18
3.2.3 Analisis Pengguna ... 18
3.3 Perancangan Sistem ... 18
3.3.1 Perancangan Sistem Aplikasi Android... 19
3.3.2 Perancangan Struktur Pengolahan Citra... 20
3.3.2.1 Teknik Cropping pada Pengolahan Citra ... 20
3.3.2.2 Teknik Grayscaling pada Pengolahan Citra ... 23
3.3.2.3 Teknik Otsu Thresholding pada Pengolahan Citra ... 24
3.3.3 Perancangan Antarmuka ... 25
BAB IV PENGUJIAN DAN ANALISA ... 27
4.1 Cara Kerja dan Penggunaan Aplikasi ... 27
4.2 Pengujian dan Hasil Pengujiannya ... 30
4.2.1 Pengujian Gambar Teks pada Pengkondisian Warna ... 31
4.2.2 Pengujian pada Teks Miring ... 32
4.2.3 Pengujian Posisi Pengambilan Gambar Teks ... 34
4.2.4 Pengujian pada Gambar Teks dari Koran dan Majalah ... 35
4.2.5 Pengujian pada Cropping Lebih dari Satu Kata ... 36
4.2.6 Rekapitulasi Data Hasil Pengujian ... 38
4.3 Analisa... 42
KESIMPULAN DAN SARAN ... 44
5.1 Kesimpulan ... 44
5.2 Saran ... 45
Penerjemahannya ke Dalam Bahasa Indonesia Menggunakan Smartphone
Android. Universitas Komputer Indonesia, Bandung.
[2] Aplikasi OCR Tesseract untuk sistem operasi windows: http://code.google.com/p/tesseract-ocr/ diakses pada 13 Desember 2013. http://code.google.com/p/tesseract-ocr/downloads/detail?name=tesseract-ocr-3.02-win32-portable.zip&can=2&q
[3] Lee, Wei-Meng. (2012). Beginning Android 4 Application Development. Idianapolis: John Wiley & Sons, inc.
[4] Jackson, Wallace. (2013). Learning Android App Development. New York: Springer Science + Business Media.
[5] Mulyadi, ST. (2010). Membuat Aplikasi Untuk ANDROID, Yogyakarta: Multimedia Center Publishing.
vi
KATA PENGANTAR
Segala puji bagi Allah SWT., Pencipta dan Pemelihara alam semesta, dan shalawat serta salam terlimpah bagi Muhammad SAW., keluarga dan para pengikutnya yang setia hingga akhir masa.
Atas rahmat Allah SWT., akhirnya Penulis dapat menyelesaikan Tugas Akhir ini, meskipun proses belajar sesungguhnya tak akan pernah berhenti. Tugas Akhir ini sesungguhnya bukanlah sebuah kerja individual dan akan sulit terlaksana tanpa bantuan banyak pihak yang tak mungkin Penulis sebutkan satu persatu, namun dengan segala kerendahan hati, Penulis mengucapkan terima kasih kepada
1. Kedua Orang Tua, kakak, adik dan keluarga besar tercinta yang senantiasa tiada henti-hentinya mencurahkan doa, cinta, kasih sayang, perhatian, nasihat, serta motivasi kepada penulis selama studi.
2. Bapak Dr. Wendi Zarman, M.Si., selaku Ketua Jurusan Teknik Komputer, Universitas Komputer Indonesia.
3. Bapak Dr. Wendi Zarman, M.Si., selaku Dosen Pembimbing yang telah banyak memberikan arahan, saran, nasihat, motivasi dan bimbingan kepada penulis selama menempuh studi.
4. Ibu Selvia Lorena Br. Ginting, M,Si., selaku wali dosen yang telah banyak memberikan arahan, saran, nasihat, motivasi dan bimbingan kepada Penulis selama menempuh studi.
5. Bapak dan Ibu seluruh staff dosen Jurusan Teknik Komputer dan yang pernah mengajar penulis serta seluruh Staff Administrasi Universitas Komputer Indonesia, yang telah banyak memberikan ilmu, motivasi dan bantuan kepada penulis.
Skripsi ini.
Akhirnya, Penulis berharap semoga penelitian ini menjadi sumbangsih yang bermanfaat bagi dunia sains dan teknologi di Indonesia, khususnya disiplin keilmuan yang Penulis dalami.
Bandung, Agustus 2014
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Seseorang yang sedang membaca koran, majalah, ataupun buku teks berbahasa asing, terkadang mengalami kendala ketika menemukan teks berbahasa asing yang tidak diketahui arti terjemahannya. Hal ini menyebabkan seorang pembaca menjadi malas dan tidak tertarik untuk membaca koran, majalah, dan buku berbahasa asing, karena memerlukan waktu yang tidak singkat dalam mempelajari dan memahami suatu bahasa asing. Maka dari itu diperlukan alat penerjemah seperti kamus dan alat penerjemah lainnya. Namun hal tersebut masih tetap menjadi kendala, karena masih dirasa kurang praktis, cepat, dan efisien.
Bahasa Inggris merupakan Bahasa resmi di dunia Internasional yang sering ditemukan dalam kehidupan sehari-hari. Masyarakat di Indonesia saat ini dituntut untuk bisa berbahasa Inggris, karena Bahasa Inggris merupakan salah satu bahasa yang diakui di dunia Internasional. Namun ini menjadi kendala karena masyarakat Indonesia pada umumnya menggunakan Bahasa Indonesia dalam kehidupan sehari-hari. Kondisi ini menyebabkan sulitnya dalam mengetahui arti terjemahan dari teks berbahasa Inggris.
Perangkat telekomunikasi seperti smartphone telah berkembang pesat saat ini. Perangkat ini memiliki banyak fungsi yang bisa dijalankan dalam satu perangkat, seperti fungsi kamera, kamus, internet, permainan, dan lain-lain. Hal ini memudahkan seseorang dalam beraktifitas sehari-hari. Smartphone yang saat ini sedang terkenal adalah smartphone berbasis sistem operasi android. Perangkat ini mampu menjalankan berbagai macam fungsi dari aplikasi-aplikasi yang diantaranya adalah kamera, kamus, internet, dan lain-lain.
yang sedang membaca koran, majalah, atau buku berbahasa Inggris mengetahui arti terjemahan dari teks berbahasa Inggris dengan hanya menjalankan aplikasi yang akan dibuat, dengan memfoto teks tersebut, kemudian aplikasi mengenali teks hasil dari foto tersebut dan menerjemahkannya ke dalam Bahasa Indonesia.
1.2 Maksud dan Tujuan
Maksud dari penelitian ini adalah untuk membuat aplikasi di smartphone
android yang fungsinya untuk mengenali teks Inggris dari hasil foto teks, lalu diterjemahkan ke dalam Bahasa Indonesia. Tujuan dari penelitian ini adalah untuk menganalisis foto teks di aplikasi Optical Character Recognition (OCR), dan hasil analisis tersebut akan dijadikan kesimpulan untuk aplikasi yang dibuat apakah bisa dengan baik mengenali foto teks berbahasa Inggris.
1.3 Batasan Masalah
Adapun batasan masalah dalam pembuatan aplikasi pengolahan citra penerjemahan teks adalah sebagai berikut:
1. Aplikasi android yang akan dibuat, pengenalan teks Inggris hasil dari gambar teks dilakukan di aplikasi OCR yang ada di dalam fitur
smartphone Android.
2. Aplikasi program dibuat dengan menggunakan program Eclipse.
3. Proses penerjemahan teks Inggris ke teks Indonesia menggunakan layanan penerjemah seperti microsoft translator.
4. Sistem operasi smartphone minimal menggunakan sistem operasi android versi 4.0.
5. Kamera smartphone android minimal memiliki resolusi 5 Mega Pixels dan memiliki fitur autofokus pada kamera.
1.4 Metodologi Penelitian
3
1. Studi literatur
Metode ini adalah mencari dan mengumpulkan berbagai macam referensi yang berkaitan dengan topik yang akan dibahas, meliputi referensi materi-materi seperti materi pengolahan citra dan penerapannnya pada
smartphone Android. 2. Perancangan Aplikasi
Merancang aplikasi yang akan dibuat dengan standar perancangan sistem aplikasi berbasis pemrograman berorientasi objek.
3. Pengujian Aplikasi
Menguji aplikasi yang telah dibuat dengan menguji aplikasi secara bertahap.
4. Analisis Aplikasi
Menganalisis aplikasi yang telah dibuat, untuk mengetahui sejauh mana tingkat keberhasilan aplikasi yang telah dibuat.
5. Kesimpulan
Menyimpulkan hasil dari aplikasi yang telah dibuat berdasarkan atas hasil rancangan, pengujian, dan analisis yang telah dilakukan.
1.5 Sistematika Penulisan
Berikut ini adalah sistematika penulisan dalam penyelesaian tugas akhir, diantaranya sebagai berikut:
BAB I PENDAHULUAN
Bab ini mencakup latar belakang masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB II TEORI PENUNJANG
BAB III PERANCANGAN SISTEM
Bab ini menjelaskan tentang sistem dalam perancangan aplikasi, seperti cara kerja sistem aplikasi dan metode yang akan digunakan.
BAB IV PENGUJIAN DAN ANALISA
Bab ini membahas cara kerja aplikasi, serta menguji dan menganalisis aplikasi yang dibuat.
BAB V KESIMPULAN DAN SARAN
5
BAB II
TEORI PENUNJANG
2.1 Sistem Operasi Android
Sistem Operasi Android merupakan salah satu sistem operasi open source
berbasis linux yang digunakan untuk perangkat seluler smartphone. Android dikembangkan dalam bahasa pemrograman java, sehingga memungkinkan para
programmer untuk membuat berbagai macam aplikasi, seperti aplikasi permainan, aplikasi edukasi, dan aplikasi lainnya. Android memiliki beberapa fitur, diantaranya:
1. Kamera, GPS, dan perangkat keras lainnya merupakan salah satu fitur perangkat keras yang dapat digunakan di android.
2. Application Framework yang memudahkan programmer untuk menggunakan beberapa fungsi yang telah disediakan di sistem operasi android.
3. Browser yang terintegrasi merupakan web browser yang terdapat pada
defaultbrowser di Android yang dapat juga diintegrasikan dengan aplikasi lainnya.
4. Tools developer yang lengkap yang memudahkan programmer dalam membuat aplikasi-aplikasi di android, seperti program Eclipse.
5. Mendukung berbagai format audio, video dan gambar, contoh seperti gambar berekstensi JPEG, BMP, PNG, dan lain-lain.
6. Mendukung jaringan komunikasi seperti bluetooth, EDGE, 3G, 4G/LTE dan WiFi.
2.1.1 Arsitektur Sistem Operasi Android
Gambar 2.1. Arsitektur Sistem Operasi Android.
Berikut ini penjelasan dari setiap lapisan yang ada dalam arsitektur sistem operasi android:
1. Applications: Merupakan lapisan teratas dari arsitektur sistem operasi android. Semua aplikasi yang dibuat akan ditempatkan pada lapisan ini. 2. Application Framework: Merupakan lapisan kedua yang memperlihatkan
keunggulan dari sistem operasi android. Lapisan ini disediakan untuk pengembangan aplikasi, sehingga memudahkan dalam membuat dan mengembangkan sebuah aplikasi.
3. Libraries: Merupakan lapisan ketiga dalam arsitektur sistem operasi android yang meliputi keseluruhan kode yang merupakan bagian fitur utama dari sistem operasi android.
7
5. Linux Kernel: Merupakan lapisan terbawah dari arsitektur sistem operasi android, dan merupakan inti utama dari sistem operasi android.
2.1.2 Struktur Aplikasi Sistem Operasi Android
Struktur aplikasi pada sistem operasi android mengadopsi konsep
component reuse yang memungkinkan aplikasi dapat berbagi aktifitas, layanan dan data dengan aplikasi lain, dengan akses kelola yang terbatas. Berikut ini beberapa struktur dari aplikasi sistem operasi android:
1. Resource Manager: Mendukung sumber-sumber non-code seperti kode
string dan grafis sebagai tools eksternal.
2. Content Providers: Aplikasi dapat saling berbagi data.
3. Notification Manager: Menyediakan mekanisme noninstrusive dan konsisten dalam member peringatan kepada pengguna atau user.
4. Views: Digunakan untuk melihat antarmuka pada aplikasi dan digunakan untuk dapat melihat aktivitas yang dibuat.
5. Activity Manager: Mengontrol siklus suatu aktifitas yang aktif, termasuk mengelola aktifitas-aktifitas yang sedang aktif.
2.2 Pengolahan Citra Digital
Suatu citra adalah fungsi intesitas 2 dimensi f(x,y), dimana x dan y adalah koordinat spasial dan f pada titik (x,y) merupakan tingkat kecerahan (brightness) suatu citra pada suatu titik.
Gambar 2.2. Gambar aturan koordinat representasi citra digital.
2.2.1 Jenis-jenis dari Pengolahan Citra
Suatu pixel memiliki nilai dalam nilai rentang tertentu, dari rentang nilai minimum hingga rentang nilai maksimum. Jangkauan rentang tiap piksel berbeda-beda tergantung dari jenis warnanya. Secara umum jangkauan dari nilai rentangnya adalah 0-255. Pengolahan citra dengan penggambaran seperti ini digolongkan ke dalam pengolahan citra integer. Berikut adalah jenis-jenis pengolahan citra berdasarkan nilai pixelnya.
2.2.1.1Pengolahan Citra Warna
9
Gambar 2.3. Pengolahan Citra Warna.
2.2.1.2Pengolahan Citra Grayscale
Pengolahan Citra Grayscale memiliki tingkatan warna hitam, abu-abu dan putih. Tingkatan warna abu-abu merupakan warna abu dengan berbagai tingkatan dari warna hitam yang mendekati hingga warna putih. Berikut gambar 2.4 pengolahan citra grayscale:
Gambar 2.4. Pengolahn Citra Grayscale.
2.2.1.3Pengolahan Citra Biner
Gambar 2.5. Pengolahan Citra Biner.
2.2.2 OCR
Dalam pengolahan citra ada beberapa aplikasi yang dapat mengenali objek yaitu aplikasi pengenalan objek. Salah satu dari aplikasi pengenal objek adalah OCR (Optical Character Recognition). Aplikasi OCR ini sering digunakan dalam mengidentifikasi citra teks yang kemudian diubah ke dalam bentuk file tulisan. Berikut ini contoh-contoh program aplikasiOCR:
1. FreeOCR
2. ABBYY FineReader 3. OmniPage
4. Readiris
5. ExperVision TypeReader & OpenRTK 6. CuneiForm
7. AnyDoc Software OCR for AnyDoc 8. GOCR
9. Microsoft Office OneNote 2007 10.Microsoft Office Document Imaging
2.2.3 Segmentasi Pengolahan Citra
11
Segmentasi citra (image segmentation) mempunyai arti membagi suatu citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel dengan tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses identifikasi objek.
2.2.4 Pengambangan (Thresholding)
Metode thresholding adalah proses mengubah citra berderajat keabuan menjadi citra biner atau hitam putih sehingga dapat diketahui daerah mana yang termasuk objek dan background dari citra secara jelas. Citra hasil thresholding
biasanya digunakan lebih lanjut untuk proses pengenalan obyek serta ekstraksi fitur. Berikut gambar 2.6 contoh partisi histogram untuk memperoleh threshold:
Gambar 2.6. Contoh Partisi Histogram untuk Memperoleh Threshold.
Partisi histogram yang berada pada Gambar 2.6 mewakili citra f(x,y) yang tersusun atas objek terang di atas background gelap. Piksel-piksel objek dan
background dikelompokkan menjadi dua mode yang dominan. Cara untuk mengekstraks objek dari background adalah dengan memilih nilai threshold T yang memisahkan dua mode tersebut. Kemudian untuk sembarang titik (x,y) yang memenuhi f(x,y) > T disebut titik objek, selain itu disebut titik background. Kesuksesan metode ini bergantung pada seberapa bagus teknik partisi histogram. Citra hasil thresholding dapat didefinisikan seperti persamaan 2.1 berikut ini:
2.2.5 Pengambangan dengan Metode Otsu
Tujuan dari thresholding denganmetode otsu adalah membagi histogram citra tingkat grayscale ke dalam dua daerah yang berbeda secara otomatis tanpa membutuhkan bantuan user untuk memasukkan nilai ambang. Pendekatan yang dilakukan dengan metode otsu adalah dengan melakukan analisis diskriminan yaitu menentukan suatu variabel yang dapat membedakan antara dua atau lebih kelompok yang muncul secara alami. Analisis Diskriminan akan memaksimumkan variable tersebut agar dapat membagi objek foreground dan
background.
2.3 OCR SDK
OCR SDK (Software Development Kit) atau optical character recognition
SDK adalah salah satu aplikasi yang digunakan untuk mengenali objek atau gambar teks, yang dimana setelah OCR mengenali gambar teks, selanjutnya OCR akan merubah objek teks menjadi sebuah teks atau tulisan.
2.4 Microsoft Translator
Microsoft translator merupakan layanan mesin penerjemah bahasa, menerjemahkan secara otomatis dari satu bahasa ke bahasa lainnya yang digunakan di aplikasi web. Cara kerja aplikasi ini sama halnya dengan cara kerja mesin penerjemah lainnya seperti Microsoft Translator. Aplikasi ini sendiri terdapat di Windows Azure Marketplace.
2.5 Pemrograman Berorientasi Objek
13
objek-objek yang lain. Beberapa konsep dasar dari pemrograman berorientasi objek diantaranya:
1. Kelas (Class)
Konsep dasar yang berisi kumpulan dari atribut dan metode dalam satu kelas yang bertujuan untuk suatu tujuan tertentu, contoh seperti kelas manusia dalam mengklasifikasikan kelas dari tinggi dan berat badan manusia.
2. Atribut (Attribute)
Atribut merupakan variabel dari sebuah kelas yang memiliki hak privasi, perlindungan, dan lain-lain.
3. Metode (Method)
Metode merupakan prosedur yang dibuat di dalam suatu kelas oleh seorang programmer.
4. Objek (Object)
Objek merupakan perwujudan dari konsep dasar kelas, yang dimana setiap objek memiliki atribut dan metode kelasnya masing-masing.
5. Abstraksi (Abstraction)
Abstraksi adalah suatu cara untuk melihat suatu object dalam bentuk yang lebih sederhana. Dengan abstraksi, suatu sistem yang kompleks dapat dipandang sebagai kumpulan subsistem-subsistem yang lebih sederhana, seperti halnya mobil merupakan suatu sistem yang terdiri atas berbagai subsistem, seperti subsistem kemudi, subsistem pengereman dan sebagainya.
6. Enkapsulasi (Encapsulation)
menyebutkan bagaimana object lainnya dapat berinteraksi dengannya. Object lainnya tidak akan mengetahui dan tergantung kepada representasi dalam object tersebut.
7. Polimorfisme (Polymorphism)
Polimorfisme merupakan konsep yang memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu object agar melakukan suatu tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda. 8. Pewarisan (Inheritance)
Pewarisan merupakan konsep mewariskan attribute dan method yang dimiliki oleh sebuah class kepada class turunannya. Dengan konsep ini, class yang dibuat cukup mendefinisikan attribute dan method yang spesifik di dalamnya, sedangkan attribute dan method yang lebih umum akan didapatkan dari class yang menjadi induknya.
2.6 Bahasa Inggris (English)
Bahasa Inggris adalah bahasa Jermanik yang pertama kali dgunakan di Inggris pada Abad Pertengahan Awal dan saat ini merupakan bahasa yang paling umum digunakan di seluruh dunia. Bahasa Inggris digunakan sebagai bahasa pertama oleh mayoritas penduduk di berbagai negara, termasuk Britania Raya, Irlandia, Amerika Serikat, Kanada, Australia, Selandia Baru, dan sejumlah negara-negara Karibia, serta menjadi bahasa resmi di 60 negara berdaulat. Bahasa Inggris adalah bahasa ketiga yang paling banyak dituturkan di seluruh dunia, setelah bahasa Mandarin dan bahasa Spanyol. Bahasa Inggris juga digunakan sebagai bahasa kedua dan bahasa resmi oleh Uni Eropa, Negara Persemakmuran, dan Perserikatan Bangsa-Bangsa, serta beragam organisasi lainnya.
2.6.1. Huruf Inggris dan Penulisannya
15
Gambar 2.7. Huruf Inggris dan penulisannya.
2.7 Bahasa Indonesia (Indonesian)
menghasilkan kata-kata baru, baik melalui penciptaan maupun penyerapan dari bahasa daerah dan bahasa asing. Meskipun dipahami dan digunakan oleh lebih dari 90% warga Indonesia, Bahasa Indonesia bukanlah bahasa bagi kebanyakan penggunanya. Sebagian besar warga Indonesia menggunakan salah satu dari 748 bahasa yang ada di Indonesia sebagai bahasa sehari-hari. Penutur Bahasa Indonesia kerap kali menggunakan versi sehari-hari (kolokial) dan mencampuradukkan dengan dialek Melayu lainnya atau bahasa daerah lainnya. Meskipun demikian, Bahasa Indonesia digunakan sangat luas di perguruan-perguruan, di media massa, sastra, perangkat lunak, surat-menyurat resmi, dan berbagai forum publik lainnya, sehingga dapat dikatakan bahwa bahasa Indonesia digunakan oleh semua warga Indonesia.
2.7.1. Huruf Indonesia dan Penulisannya
Seperti halnya Bahasa Inggris, Bahasa Indonesia juga mempunyai 26 fonem yaitu 21 huruf mati dan 5 huruf hidup. Seperti yang dapat dilihat pada gambar 2.8.
44
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Dari hasil pengujian yang telah dilakukan, maka diperoleh kesimpulan bahwa program aplikasi yang dibuat telah berhasil dalam mengolah citra teks Inggris menjadi hanya teks Inggris saja yang kemudian teks Inggris diterjemahkan ke dalam teks Bahasa Indonesia. Dengan syarat dalam keadaan kondisi-kondisi sebagai berikut ini:
1. Gambar teks yang akan dikenali harus memiliki perbedaan warna yang jelas antara warna teks dengan warna latar belakang pada gambar teks.
2. Posisi pengambilan gambar teks dilakukan dengan pengambilan posisi dan kemiringan yang tegak lurus agar OCR dapat mengali teks dengan baik, jika tidak maka OCR tidak dapat mengenali gambar teks.
3. Cara pemotongan atau seleksi teks harus dilakukan dengan serapih mungkin agar teks dapat dikenali oleh OCR dengan optimal, sehingga menghasilkan teks yang jelas untuk diterjemahkan.
4. Teks yang akan diterjemahkan diusahakan memiliki ukuran font 12, dan line spacing minimal 1.5 spasi.
5.2. Saran
Berdasarkan hasil pengujian dan kesimpulan, berikut ini beberapa saran untuk pengembangan aplikasi ini selanjutnya, diantaranya:
1. Membuat sistem penerjemahan teks sendiri yang sudah terintegrasi dengan program aplikasi.
2. Program aplikasi dapat menerjemahkan minimal 1 kalimat atau lebih.
1
PEMBUATAN APLIKASI PENGOLAHAN CITRA TEKS INGGRIS DAN PENERJEMAHANNYA KE DALAM BAHASA INDONESIA BERBASIS
SISTEM OPERASI ANDROID
Irman Nurmulya Malik, Wendi Zarman Jurusan Teknik Komputer Unikom, Bandung irman.n.m@gmail.com, wendizar@gmail.com
ABSTRAK
Bahasa Inggris merupakan bahasa resmi di dunia Internasional yang sering ditemukan dalam kehidupan sehari-hari. Masyarakat di Indonesia saat ini dituntut untuk bisa berbahasa Inggris, karena Bahasa Inggris merupakan salah satu bahasa yang diakui di dunia Internasional. Namun ini menjadi kendala karena masyarakat Indonesia pada umumnya mengunakan Bahasa Indonesia dalam kehidupan sehari-hari. Kondisi ini menyebabkan sulitnya dalam mengetahui arti terjemahan dari teks berbahasa Inggris. Aplikasi ini dibuat untuk dapat memudahkan masyarakat Indonesia mengetahui arti terjemahan teks Bahasa Indonesia pada saat membaca koran, majalah, atau buku teks berbahasa Inggris, dengan cara memfoto teks yang ingin diketahui arti terjemahannya, kemudian aplikasi mengenali teks hasil foto tersebut dan penerjemahannya ke dalam teks Bahasa Indonesia.
Kata kunci: Bahasa Inggris, Aplikasi Android, Gambar teks, Kamus.
1. PENDAHULUAN
Kamus terjemahan merupakan sebuah buku yang berisi tentang terjemahan dari satu bahasa ke bahasa lainnya. Kenyataan dalam kehidupan sehari-hari kamus dirasa kurang efisien selain karena tebal dan berat, juga lama dalam mencari kata yang ingin diterjemahkan, sehingga ini menjadi salah satu kendala yang terjadi. Masalah lain muncul ketika masyarakat Indonesia dalam kehidupan sehari-hari selalu menggunakan Bahasa Indonesia, yang menyebabkan semakin sulit untuk terbiasa berbahasa asing khususnya Bahasa Inggris, sehingga dibutuhkan suatu aplikasi yang dapat membantu proses dalam menerjemahkan suatu bahasa ke bahasa yang lainnya dengan proses yang cukup efesien.
2. TEORI PENUNJANG
2.1 Sistem Operasi Android
Sistem Operasi Android merupakan salah satu sistem operasi open source berbasis linux yang digunakan untuk perangkat seluler
smartphone. Android dikembangkan dalam
bahasa pemrograman java, sehingga memungkinkan para programmer untuk membuat berbagai macam aplikasi, seperti aplikasi permainan, aplikasi edukasi, dan aplikasi lainnya.
2.1.1 Struktur Aplikasi Sistem Operasi Android
Struktur aplikasi pada sistem operasi android mengadopsi konsep component reuse yang memungkinkan aplikasi dapat berbagi aktifitas,layanandan data dengan aplikasi lain, dengan akses kelola yang terbatas.
2.2 Pengolahan Citra
Suatu citra adalah fungsi intesitas 2 dimensi f(x,y), dimana x dan y adalah koordinat spasial dan f pada titik (x,y) merupakan tingkat kecerahan (brightness) suatu citra pada suatu titik. Citra digital ialah representasi dari sebuah citra 2 dimensi yang dimana kumpulan nilai digital disebut piksel atau elemen gambar. Piksel adalah satuan terkecil dari citra yang mengandung nilai yang mewakili kecerahan dari sebuah warna pada sebuah titik tertentu.
warna yang terdiri atas warna merah, hijau, dan biru, yang digabungkan dalam membentuk suatu susunan warna yang luas. Citra warna sendiri memiliki 8 bit yang mewakili setiap piksel dengan jumlah warna maksimal berjumlah 256 warna.
2.2.1.2 Pengolahan Citra Grayscale
Pengolahan Citra Grayscale memiliki tingkatan warna hitam, abu-abu dan putih. Tingkatan warna abu-abu merupakan warna abu dengan berbagai tingkatan dari warna hitam yang mendekati hingga warna putih.
2.2.1.3 Pengolahan Citra Biner
Pengolahan citra biner adalah warna-warna piksel yang berada dalam rentang gradasi warna hitam dan putih.
2.2.2 OCR
Dalam pengolahan citra ada beberapa aplikasi yang dapat mengenali objek yaitu aplikasi pengenalan objek. Salah satu dari aplikasi pengenal objek adalah OCR (Optical
Character Recognition). Aplikasi OCR ini
sering digunakan dalam mengidentifikasi citra teks yang kemudian diubah ke dalam bentuk file tulisan.
2.2.3 Segmentasi Pengolahan Citra
Segmentasi citra merupakan bagian dari proses pengolahan citra. Proses segmentasi citra ini merupakan suatu proses sebelum pengolahan pada sistem pengenalan objek dalam citra. Segmentasi citra (image
segmentation) mempunyai arti membagi suatu
citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel dengan tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses identifikasi objek.
2.2.4 Pengambangan
2.2.5 Pengambangan dengan Metode Otsu Tujuan dari thresholding dengan metode otsu adalah membagi histogram citra tingkat grayscale ke dalam dua daerah yang berbeda secara otomatis tanpa membutuhkan bantuan user untuk memasukkan nilai ambang. Pendekatan yang dilakukan dengan metode otsu adalah dengan melakukan analisis diskriminan yaitu menentukan suatu variabel yang dapat membedakan antara dua atau lebih kelompok yang muncul secara alami. Analisis Diskriminan akan memaksimumkan variable tersebut agar dapat membagi objek foreground
dan background.
2.3 OCR SDK
OCR SDK (Software Development Kit) atau optical character recognition SDK adalah salah satu aplikasi yang digunakan untuk mengenali objek atau gambar teks, yang dimana setelah OCR mengenali gambar teks, selanjutnya OCR akan merubah objek teks menjadi sebuah teks atau tulisan.
2.4 Microsoft Translator
Microsoft translator merupakan layanan mesin penerjemah bahasa, menerjemahkan secara otomatis dari satu bahasa ke bahasa lainnya yang digunakan di aplikasi web. Cara kerja aplikasi ini sama halnya dengan cara kerja mesin penerjemah lainnya seperti Microsoft Translator. Aplikasi ini sendiri terdapat di Windows Azure Marketplace.
2.5 Pemrograman Berorientasi Objek Pemrograman berorientasi objek atau
object-oriented programming (OOP) adalah
3 2.6 Bahasa Inggris (English)
Bahasa Inggris adalah bahasa Jermanik yang pertama kali dgunakan di Inggris pada Abad Pertengahan Awal dan saat ini merupakan bahasa yang paling umum digunakan di seluruh dunia. Bahasa Inggris digunakan sebagai bahasa pertama oleh mayoritas penduduk di berbagai negara, termasuk Britania Raya, Irlandia, Amerika Serikat, Kanada, Australia, Selandia Baru, dan sejumlah negara-negara Karibia, serta menjadi bahasa resmi di 60 negara berdaulat. Bahasa Inggris adalah bahasa ketiga yang paling banyak dituturkan di seluruh dunia, setelah bahasa Mandarin dan bahasa Spanyol. Bahasa Inggris juga digunakan sebagai bahasa kedua dan bahasa resmi oleh Uni Eropa, Negara Persemakmuran, dan Perserikatan Bangsa-Bangsa, serta beragam organisasi lainnya.
2.6.1. Huruf Inggris dan Penulisannya Bahasa Inggris mempunyai 26 fonem yaitu 21 huruf mati dan 5 huruf hidup. Seperti yang dapat dilihat pada gambar 1.
Gambar 1. Huruf Inggris dan penulisannya.
2.7 Bahasa Indonesia (Indonesian)
Bahasa Indonesia adalah bahasa Melayu yang dijadikan sebagai bahasa resmi Republik Indonesia dan bahasa persatuan bangsa Indonesia. Bahasa Indonesia
diresmikan penggunaannya setelah Proklamasi Kemerdekaan Indonesia, tepatnya sehari sesudahnya, bersamaan dengan mulai berlakunya konstitusi. Dari sudut pandang linguistik, bahasa Indonesia adalah salah satu dari banyak ragam bahasa Melayu. Dasar yang dipakai adalah bahasa Melayu Riau (wilayah Kepulauan Riau). Dalam perkembangannya Bahasa Indonesia mengalami perubahan akibat penggunaanya sebagai bahasa kerja di lingkungan administrasi kolonial dan berbagai proses pembakuan sejak awal abad ke-20. Penamaan Bahasa Indonesia diawali sejak dicanangkannya Sumpah Pemuda, 28 Oktober 1928, untuk menghindari kesan imperialisme bahasa apabila nama bahasa Melayu tetap digunakan. Proses ini menyebabkan berbedanya Bahasa Indonesia saat ini dari varian bahasa Melayu yang digunakan di Riau maupun Semenanjung Malaya. Hingga saat ini, Bahasa Indonesia merupakan bahasa yang hidup, yang terus menghasilkan kata-kata baru, baik melalui penciptaan maupun penyerapan dari bahasa daerah dan bahasa asing. Meskipun dipahami dan digunakan oleh lebih dari 90% warga Indonesia, Bahasa Indonesia bukanlah bahasa bagi kebanyakan penggunanya. Sebagian besar warga Indonesia menggunakan salah satu dari 748 bahasa yang ada di Indonesia sebagai bahasa sehari-hari. Penutur Bahasa Indonesia kerap kali menggunakan versi sehari-hari (kolokial) dan mencampuradukkan dengan dialek Melayu lainnya atau bahasa daerah lainnya. Meskipun demikian, Bahasa Indonesia digunakan sangat luas di perguruan-perguruan, di media massa, sastra, perangkat lunak, surat-menyurat resmi, dan berbagai forum publik lainnya, sehingga dapat dikatakan bahwa bahasa Indonesia digunakan oleh semua warga Indonesia.
Gambar 2. Huruf Indonesia dan penulisannya.
3. PERANCANGAN SISTEM
3.1 Analisis Masalah
Permasalahan yang diangkat dalam penelitian pembuatan aplikasi ini adalah menganalisis kondisi suatu gambar teks berbahasa Inggris yang diproses oleh program aplikasi sehingga dapat menghasilkan sebuah teks Inggris yang dikenali secara optimal dan dapat menghasilkan hasil terjemahan teks yang baik setelah diproses oleh mesin penerjemah.
3.2 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional meliputi dari perangkat keras, perangkat lunak, dan user (pengguna).
3.2.1 Analisis Kebutuhan Perangkat
Keras
Kebutuhan perangkat keras yang diperlukan untuk membuat aplikasi ini adalah
smartphone Android dengan spesifikasi
sebagai berikut:
1. Smartphone Android dengan sistem
operasi android minimal versi 4.0 (Ice
Cream Sandwich), untuk aplikasi
program di perangkat keras.
2. Kamera 5 MP dengan fitur autofokus, untuk pengambilan gambar teks secara
antara aplikasi program dengan layanan penerjemah microsoft translator.
3.2.2 Analisis Kebutuhan Perangkat
Lunak
Perangkat lunak yang perlu dipakai dalam pembuatan program aplikasi, diantaranya sebagai berikut:
1. Sistem operasi Windows 7 ultimate 32 bit, untuk menjalankan aplikasi Eclipse.
2. Eclipse Ide 3.7 sebagai perangkat lunak untuk membuat program aplikasi android.
3. Android SDK untuk perancangan, pembuatan, dan pengembangan aplikasi program.
4. Android Development Tool sebagai
plugin untuk mengintegrasikan
Android SDK dengan program eclipse. 5. Tesseract OCR untuk android sebagai
aplikasi pengenalan gambar teks menjadi teks.
6. Microsoft translator sebagai mesin penerjemah teks berbahasa Inggris ke teks berbahasa Indonesia.
3.2.3 Analisis Pengguna
Aplikasi yang akan dibuat adalah aplikasi untuk para pengguna smartphone android yang ada di Indonesia, khususnya untuk para pembaca koran, majalah, atau buku teks berbahasa Inggris, karena aplikasi ini merupakan aplikasi yang berfungsi sebagai penerjemah gambar teks berbahasa Inggris yang diterjemahkan ke dalam Bahasa Indonesia.
3.3 Perancangan Sistem
5 mengubah citra teks tersebut menjadi hanya teks Inggris saja yang selanjutnya teks tersebut diterjemahkan ke dalam bahasa Indonesia.
3.3.1 Perancangan Sistem Aplikasi Android
Gambar 3.Diagram blok perancangan sistem aplikasi android
Berikut ini penjelasan rancangan sistem aplikasi android:
1. Citra masukkan merupakan citra teks Inggris yang akan diproses oleh aplikasi OCR. Citra ini dapat dari pengambilan foto secara langsung ataupun dapat dari menu di galeri
4. Teks yang telah diolah di aplikasi OCR selanjutnya dikirmkan ke layanan penerjemah microsoft translator untuk diterjemahkan ke dalam teks Bahasa Indonesia.
5. Hasil terjemahan dikirim kembali ke aplikasi program yang selanjutnya menampilkan hasil terjemahan tersebut di aplikasi program.
3.3.2 Perancangan Struktur Pengolahan Citra
Rancangan struktur pengolahan citra menggunakan tiga teknik, Tujuan menggunakan tiga teknik ini untuk dapat menghasilkan citra teks yang dapat dikenali oleh aplikasi program OCR. Ketiga teknik yang akan digunakan, yaitu cropping,
grayscaling, dan otsu thresholding.
3.3.3 Perancangan Antarmuka
Rancangan antarmuka untuk sistem aplikasi yang akan dibuat memiliki dua tampilan utama, yaitu menu utama dan menu tampilan gambar, yang di mana menu utama merupakan tampilan sumber foto yang akan diolah, sedangkanmenu tampilan gambar untuk menampilkan foto tersebut
berhasil dalam mengolah citra teks Inggris menjadi hanya teks Inggris saja yang kemudian teks Inggris diterjemahkan ke dalam teks Bahasa Indonesia. Dengan syarat dalam keadaan kondisi-kondisi sebagai berikut ini:
1. Gambar teks yang akan dikenali harus memiliki perbedaan warna yang jelas antara warna teks dengan warna latar belakang pada gambar teks.
2. Posisi pengambilan gambar teks dilakukan dengan pengambilan posisi dan kemiringan yang tegak lurus agar OCR dapat mengali teks dengan baik, jika tidak maka OCR tidak dapat mengenali gambar teks. 3. Cara pemotongan atau seleksi teks
harus dilakukan dengan serapih mungkin agar teks dapat dikenali oleh OCR dengan optimal, sehingga menghasilkan teks yang jelas untuk diterjemahkan.
4. Teks yang akan diterjemahkan diusahakan memiliki ukuran font
12, dan line spacing minimal 1.5 spasi.
5. Penerjemahan teks hanya dapat menerjemahkan teks sebanyak satu kata, jika melebihi satu kata maka OCR tidak dapat mengenali teks dengan optimal.
4.2.1 Saran
Berdasarkan hasil pengujian dan kesimpulan , berikut ini beberapa saran untuk pengembangan aplikasi ini selanjutnya, diantaranya:
1. Membuat sistem penerjemahan teks sendiri yang sudah terintegrasi dengan program aplikasi.
2. Program aplikasi dapat menerjemahkan minimal 1 kalimat atau lebih.
[1] Heriyanto. (2012). Perancangan Aplikasi Pengolahan Citra Teks Arab dan Penerjemahannya ke Dalam
Bahasa Indonesia Menggunakan
Smartphone Android. Universitas
Komputer Indonesia, Bandung.
Android 4 Application Development.
Idianapolis: John Wiley & Sons, inc. [4] Jackson, Wallace. (2013). Learning
Android App Development. New
York: Springer Science + Business Media.
[5] Mulyadi, ST. (2010). Membuat
Aplikasi Untuk ANDROID,
Yogyakarta: Multimedia Center Publishing.