ABSTRACT
Digital image processing is not just application of filter effects to an image. It is also recognition of image digital pattern itself. One of the technologies in recognition character pattern is OCR (Optical Character Recognition) technology. This technology has developed on today’s scanner machine and handwriting recognition technology on PDA (Personal Digital Assistant). In this document, writer has made a simple OCR application. This application is an implementation of the existing pattern recognition algorithm. Pattern recognition algorithm that writer implemented in this case is Neural Network Back Propagationalgorithm.
The main part of Neural Network Back Propagation algorithm is that when the system is training or learning out of the image samples which were assigned to recognize the pattern of the image itself. When training is under process, system needs specific length of time. The duration needed for training process, depends on that application’s configuration. This duration straight equivalent with the accuracy of the system to recognize characters. The longer the duration needed in training, the more accurate the system is in recognizing alphanumeric characters.
Neural Network Back Propagation algorithm is basically an algorithm for recognizing pattern, either alphanumeric character pattern of an image or other patterns. For that reason, the pattern that is used is limited. In this application the pattern that is used is for recognizing alphanumeric characters. Alphanumeric consists of Latin letters and numbers. Meanwhile three configuration layers are provided for the system configuration. These configuration layers are useful for determining the system’s accuracy in recognizing alphanumeric characters from user.
ABSTRAK
Pengolahan citra digital tidak sekedar pemberian filterfilter efek saja pada suatu citra. Pengolahan citra digital juga termasuk di dalamnya pengenalan pola citra digital itu sendiri. Salah satu teknologi dalam pengenalan pola karakter yaitu teknologi OCR (Optical Character Recognition). Teknologi ini sudah berkembang pada mesin mesin scanner masa kini dan teknologi pengenalan tulisan tangan pada PDA (Personal Digital Assistant). Dalam tugas akhir ini, penulis membuat suatu aplikasi OCR sederhana. Aplikasi ini merupakan implementasi dari algoritma pengenalan pola yang sudah ada sebelumnya. Algoritma pengenalan pola yang penulis implementasikan dalam tugas akhir ini yaitu algoritma Neural Network Back Propagation.
Yang utama dari algoritma Neural Network Back Propagation adalah pada saat sistem melakukan training atau melakukan pembelajaran dari samplesample gambar yang telah ditentukan untuk diketahui pola karakter gambar itu sendiri. Pada saat melakukan training, sistem memerlukan waktu tertentu. Lamanya sistem melakukan training, tergantung dari konfigurasi aplikasi tersebut. Waktu ini berbanding lurus dengan tingkat keakurasian sistem dalam mengenali karakter. Semakin lama waktu yang dibutuhkan pada saat melakukan training, maka akan semakin akurat pula sistem dalam mengenali karakter alfanumerik.
Algoritma Neural Network Back Propagation pada dasarnya merupakan algoritma untuk pengenalan pola. Baik itu pola karakter alfanumerik dari suatu gambar, ataupun polapola yang lain. Oleh karena itu perlu dibatasi pola yang ingin dipakai. Pada aplikasi ini pola yang dipakai yaitu untuk mengenali karakter alfanumerik. Alfanumerik yaitu berupa tulisan Latin huruf dan angka. Sedangkan untuk konfigurasi sistem, disediakan tiga layer konfigurasi. Layer konfigurasi ini berguna untuk menentukan tingkat keakuratan hasil sistem dalam mengenali karakter alfanumerik masukan dari pengguna.
BAB 1 Persyaratan Produk
Teknologi pengolahan citra digital sudah berkembang sangat pesat pada saat ini. Hal ini dapat dilihat dari banyaknya produk pengolahan citra digital yang ditawarkan di pasaran. Teknologi pengolahan citra digital yang umum ditawarkan di pasaran pada saat ini, kebanyakan hanya berupa pengeditan citra dengan penambahan filterfilter efek saja. Salah satu contoh produk yang ditawarkan di pasaran pada saat ini yaitu Corel Draw X3, Macromedia Flash 8.0, Adobe Photoshop CS2, dan perangkat lunak lainnya yang mendukung pemrosesan citra. Selain teknologi pengolahan citra dengan menambahkan filterfilter efek di atas, ada juga teknologi pengolahan citra digital untuk pengenalan karakter seperti pengenalan karakter alfanumerik pada suatu citra digital.
Produk yang digunakan dalam menghasilkan aplikasi pengolahan citra yaitu Visual Studio .Net 2005 dengan bahasa pemrograman C#. Produk dari Microsoft ini sangat kompleks dengan canggihnya fitur yang diberikan, sehingga dapat menghasilkan aplikasi dengan baik. Aplikasi yang dibuat berguna untuk pengenalan karakter alfanumerik dari suatu citra digital. Tentu untuk dapat mengimplementasikan teknik pengenalan karakter tersebut diperlukan suatu algoritma pengenalan pola suatu karakter. Diharapkan dengan adanya aplikasi ini dapat membantu untuk pengenalan karakter alfanumerik walaupun masih bersifat sederhana.
1.1
Pendahuluan
Universitas Kristen Maranatha 2
Pengolahan citra digital tidak hanya berkisar antara pengeditan citra digital dengan menggunakan filterfilter efek yang ada. Pengolahan citra digital juga meliputi teknik pengenalan karakter seperti karakter alfanumerik, karakter tulisan tangan, karakter huruf arab, karakter huruf kanji, dan lain lain. Teknik pengenalan karakter ini sering disebut secara umum sebagai teknologi OCR (Optical Character Recognition). Teknologi ini bukanlah hal baru dalam ruang lingkup teknologi informasi. Teknologi OCR ini banyak ditawarkan dalam produkproduk scanner pada masa terkini. Selain pada produk scanner, teknologi OCR juga terdapat pada Handphone, Smart Phone, dan PDA (Personal Digital Assistant) yang sudah mengimplementasikan teknologi layar sentuh dan memiliki fitur handwriting recognition.
Pada laporan ini dibahas teknik pengenalan karakter alfanumerik dengan menggunakan suatu algoritma. Penekanan algoritma pada pengenalan pola karakter dari suatu objek di dalam citra. Algoritma yang digunakan dapat mengenali karakter tulisan alfanumerik pada suatu citra digital / gambar dan juga mengenali pola tulisan tangan alfanumerik.
1.1.1 Tujuan
Pembuatan aplikasi ini memiliki beberapa tujuan yang berguna untuk pengenalan pola alfanumerik pada citra diantaranya :
1. Mengenali karakter tulisan tangan alfanumerik. 2. Mengenali karakter alfanumerik dari suatu gambar
3. Membandingkan karakter alfanumerik inputan dengan karakter alfanumerik yang sudah ditentukan untuk mencari tingkat presentase kecocokan.
1.1.2 Ruang Lingkup
Secara garis besar aplikasi lebih menekankan perbandingan pola karakter inputan dengan pola karakter yang sudah ditentukan. Tingkat perbandingan dapat dilihat dari tingkat tingginya presentase kecocokan pola karakter. Aplikasi ini lebih cocok dikategorikan pengembangan dari implementasi algoritma Neural Network Back Propagation karena penekanannya lebih ke arah algoritma.
1.1.3 Definisi, Akronim, dan Singkatan
1. alfanumerik = tulisan alfabet dan numerik.
2. algoritma = urutan suatu kejadian atau metode tertentu.
3. BMP = Bitmap.
4. citra = gambar pada bidang dua dimensi.
5. file = berkas.
6. handwriting = tulisan tangan.
7. neural network = jaringan syaraf tiruan. 8. pattern = pola.
9. recognition = pengenalan suatu objek terhadap citra. 10.tab control = label kontrol pengelompokan.
11.user friendly = penggunaan secara mudah/nyaman.
1.1.4Overview Laporan
Universitas Kristen Maranatha 4
fungsionalitas modul dan test case yang berupa black box dan white box. Bab enam berisi kesimpulan, saran dan rencana perbaikan terhadap saran yang diberikan.
1.2
Gambaran Keseluruhan
Aplikasi ini menggunakan Visual Studio .Net 2005 dengan bahasa pemrograman C# dalam mengimplementasikan aplikasi pengolahan citra. Aplikasi ini menggunakan model Tab Control dan tomboltombol yang ergonomis sehingga memudahkan pengguna dalam menggunakannya. Aplikasi ini tidak menggunakan database untuk menyimpan citra yang akan diproses. Pengguna dapat menggunakan citra bitmap untuk mengaplikasikannya. Aplikasi dapat mengenali pola karakter dengan menggunakan algoritma Neural Network untuk membandingkan pola karakter inputan dengan pola karakter yang sudah ditentukan.
Aplikasi pengenalan karakter memerlukan perangkat keras yang dapat mendukung kinerja perangkat lunaknya. Dalam tahap pengembangan digunakan processor P IV 1,7 Ghz, RAM 256 Mb, Hard Disk 40 Gb, dan VGA 64 Mb sebagai minimum requirement untuk membuat aplikasi ini. Pengolahan citra untuk pengenalan tulisan tangan membutuhkan gambar dengan ukuran 140 x 210, dalam satuan pixel, sehingga pengguna tidak terlalu kecil dalam menggambar tulisan tangan. Selain itu polapola karakter tulisan alfanumerik yang dijadikan sample untuk pengenalan karakter menggunakan ukuran ratarata 33 x 33 pixel. Hal ini dikarenakan ukuran ratarata 33 x 33 pixel masih dapat terlihat dan untuk proses training tidak memakan waktu yang lama dibandingkan dengan ukuran pixel yang lebih besar.
1.2.1 Perspektif Produk
Tampilan form secara user friendly sehingga pengguna dapat mudah menggunakannya. Aplikasi ini dibuat dengan bahasa pemrograman C# yang berorientasi objek sehingga source code dapat lebih mudah dipahami.
1.2.1.1 Antarmuka Sistem
Aplikasi ini menggunakan Visual Studio .Net 2005 dengan .Net Framework 2.0, sehingga diperlukan sistem operasi Windows XP SP2 agar dapat menjalankan produk dari Microsoft ini. Aplikasi ini dapat digunakan pada sistem operasi Windows versi 9x ke atas. Hal ini memudahkan pengguna untuk dapat menjalankan aplikasi pada sistem Windows. Dalam studi kali ini tidak dibuat suatu aplikasi untuk dapat dijalankan pada sistem Linux dikarenakan terbatasnya kemampuan pembuat aplikasi untuk membuat perangkat lunak di setiap sistem operasi. Aplikasi ini tidak akan menimbulkancrash dan dapat digunakan bersamaan dengan aplikasi lainnya.
1.2.1.2 Antarmuka dengan Pengguna
Aplikasi pengenalan karakter alfanumerik dengan pendekatan algoritma ini memerlukan adanya interaksi dengan pengguna dalam menggunakan algoritma yang ada. Pengguna dapat menggunakan tabtab menu pada aplikasi ini dengan nyaman. Aplikasi ini menggunakan Tab Control sehingga pengguna dapat melihat tampilan dengan rapih, tidak memusingkan, dan juga mudah untuk digunakan karena pengguna tidak perlu berpindahpindah form. Aplikasi ini menggunakan form welcome pada saat pertama kali program dijalankan.
1.2.1.3 Antarmuka Perangkat Keras
Universitas Kristen Maranatha 6
citra sehingga memerlukan adanya perangkat keras yang mendukung. Kemampuan monitor yang baik juga mendukung citra agar terlihat lebih jelas. Dalam pembuatan aplikasi ini digunakan perangkat keras dengan spesifikasi processor Pentium IV 1,7 Ghz, RAM 256 Mb, Hard Disk 40 Gb, dan VGA 64 Mb.
1.2.1.4 Antarmuka Perangkat Lunak
Perangkat lunak yang digunakan dalam pengolahan aplikasi ini yaitu Visual Studio .Net 2005 dengan .Net Framework 2.0. Aplikasi ini menggunakan bahasa pemrograman C# dikarenakan pemahaman pembuat aplikasi dalam pemrograman berorientasi objek C#. Aplikasi dibuat berorientasi objek sehingga source code dapat lebih dimengerti apabila terdapat pengembangan program lebih lanjut. Aplikasi ini tidak mengganggu perangkat lunak lainnya dalam melakukan kinerjanya.
1.2.1.5 Antarmuka Komunikasi
Aplikasi pengenalan karakter ini tidak berbasiskan client server dan database, sehingga tidak ada komunikasi data baik menggunakan protokol maupundataset pada saat aplikasi dijalankan.
1.2.1.6 Batasan Memori
Aplikasi besar seperti Visual Studio .Net 2005 memerlukan penggunaan memori yang cukup banyak, baik untuk menyimpan data maupun pemakaian RAM. Aplikasi ini direkomendasikan menggunakan Hard Disk 40 Gb dan RAM 256 Mb sebagai batasan memori sehingga dapat menyimpan data serta menjalankan aplikasi ini.
1.2.2 Fungsi Produk
1. Melakukan pengenalan karakter alfanumerik dari inputan tulisan tangan.
2. Melakukan pengenalan karakter alfanumerik dari inputan suatu tulisan berupa citra digital / gambar.
3. Melihat tingkat presentase kecocokan dari inputan dengan pola pola karakter yang sudah ditentukan terlebih dahulu.
1.2.3 Karakteristik Pengguna
Aplikasi ini memerlukan adanya pengguna yang dapat menggunakan komputer, mengerti dalam mengoperasikan menumenu dalam aplikasi, memiliki pengalaman melakukan input gambar, dapat melakukan tulisan tangan dengan rapih dan benar, dan mengerti dalam melakukan browse gambar.
Pengguna tidak memerlukan login / logout untuk masuk ke dalam aplikasi ini, sehingga pengguna tidak perlu memahami adanya perbedaan tingkatan hak akses. Karakteristik pengguna lainya yaitu diperlukannya pengguna yang memahami pengenalan karakter alfanumerik untuk suatu implementasi citra digital.
1.2.4 Batasan
Pada tugas akhir ini akan dirancang dan dibuat aplikasi Pengenalan Karakter Alfanumerik dengan Algoritma Neural Network Back Propagation. Batasan masalah dalam aplikasi ini adalah :
· Ketelitian perbandingan pengenalan pola karakter dilihat dari tingkat toleransi yang dapat dilihat dari tingkatnya nilai presentase kecocokan pola karakter.
Universitas Kristen Maranatha 8
· Hardware yang direkomendasikan yaitu PC dengan Pentium IV 1,7 Ghz, RAM 256 Mb, Hard Disk 40 Gb, VGA 64 Mb, sistem operasi Windows XP SP2.
· Aplikasi tidak berbasiskanclient server.
· Aplikasi dapat digunakan oleh setiap pengguna.
· Aplikasi tidak menggunakandatabase untuk menyimpan citra. · Aplikasi tidak membahas tentang filterfilter efek untuk
pengolahan citra, dan lebih terfokus pada pengenalan karakter pada citra digital.
· Citra digital yang dapat dikenali hanya citra dengan format .BMP.
1.2.5 Asumsi dan Ketergantungan
Dalam aplikasi pengenalan karakter alfanumerik, diperlukan adanya citra yang jelas agar mendukung kinerja aplikasi ini. Citra yang digunakan berformat .BMP. Sedangkanfile network hanya dapat disimpan dalam format network .NET.
1.2.6 Penundaan persyaratan
BAB 6 Kesimpulan dan Saran
Setelah melakukan pengetesan terhadap aplikasi pengenalan karakter alfanumeik, maka didapat suatu kesimpulan dan juga saransaran untuk pengembangan ke arah yang lebih lanjut. Berikut akan dijabarkan kesimpulan yang didapat dari hasil percobaan dan juga saran untuk pengembngan aplikasi.
6.1
Keterkaitan antara Kesimpulan dengan Hasil Evaluasi
Dari hasil penelitian dan evaluasi menggunakan aplikasi pengenalan
karakter alfanumerik ini dapat ditarik kesimpulan yaitu :
1. Aplikasi pengenalan karakter alfanumerik ini dapat mengenali
karakter tulisan tangan yang digambar oleh pengguna pada area gambar.
2. Aplikasi pengenalan karakter alfanumerik ini dapat mengenali
karakter alfanumerik dari gambar yang di input melalui file gambar.
3. Aplikasi pengenalan karakter alfanumerik ini dapat memberikan
gambar hasil yang sesuai dengan karakter gambar yang dimasukan
oleh pengguna beserta dengan tingkat presentase kecocokannya. 4. Pada pengaturan layer satu, waktu yang dibutuhkan sistem untuk
melakukan training terbilang cepat. Tetapi memiliki kelemahan
dalam tingkat keakurasian dalam mengenali pola karakter.
5. Pada pengaturan layer dua dan layer tiga, waktu yang dibutuhkan sistem untuk melakukan training terbilang relatif lama. Tetapi memiliki keunggulan dalam tingkat keakurasian dalam mengenali pola karakter.
6. Gambar dari hasil tulisan tangan yang buruk atau file gambar yang kurang baik akan berpengaruh pada hasil yang tidak diinginkan atau memiliki tingkat presentase kemiripan yang rendah.
Universitas Kristen Maranatha merupakan pengaturan yang paling mendekati baik. Hal ini dapat dilihat dengan penuhnya tabel test case atau dengan kata lain semua gambar masukan masih dapat dikenali dengan baik.
9. Pengaturan layer 2 dan layer 3 yang dikurangi jumlah input dan hiddennya dari nilai semula, ratarata tingkat keakurasiannya akan berkurang dibandingkan dengan pengaturan awal maupun pengaturan yang jumlah input dan hiddennya ditambah.
10. Pengaturan layer 2 dan layer 3 yang jumlah input dan hiddennya ditambah dari pengaturan awal, maka akan memiliki efek yaitu tingkat keabuabuan yang semakin besar.
6.2
Keterkaitan antara Saran dengan Hasil Evaluasi
Saran yang dapat diberikan mengenai aplikasi pengenalan karakter
alfanumerik ini untuk pengembangan selanjutnya yaitu :
1. Aplikasi pengenalan karakter alfanumerik pada saat ini hanya dapat
mengenali huruf baku, diharapkan untuk pengembangan dapat dibuat untuk dapat mengenali kata atau kalimat.
2. Aplikasi pengenalan karakter alfanumerik pada saat ini hanya dapat
mengenali format gambar dengan format .Bmp. Diharapkan untuk pengembangan dapat dibuat agar dapat mengenali format selain .Bmp.
Daftar Pustaka
1. Barber, S. (2006). AI_Neural Network for beginners, Prentice Hall. 2. Deitel. (2002). C# How To Program, Prentice Hall.
3. Haidar, A. (2005). Studi Kasus Mengenai Aplikasi Multilayer Perceptron Neural Netwok Pada Sistem Pendeteksi Gangguan (IDS) Berdasarkan Anomali Suatu Jaringan. Diakses 25 Oktober 2007.
http://www.ilmukomputer.com/andryreport
4. ___.(2007). ION528 Image Processing Algorithms. Retrieved April 4,
2007, from
http://www.ii.metu.edu.tr/~ion528/demo/lectures/6/1/index.html
5. Lukman. (2007). Studi Sistem Adaptif dan Contoh Aplikasinya. Diakses 25 Oktober 2007.http://www.ilmukomputer.com/sistemadaptif
6. Madhusudanan, A. (2006). Brainnet A Neural Netwok Project With Illustration, http://amazedsaint.blogspot.com
7. Matthew, M. (2002). .Net User Interface with C#: Windows Forms and Custom Controls, Apress.
8. Nugroho, S. (2003). Pengantar Softkomputing. Diakses 25 Oktober 2007.
http://asnugroho.net/pengantarsoftkomputing
9. Rinaldi, M. (2004). Pengolahan Citra Digital dengan Pendekatan Algoritmik, Informatika.
10. ___.(2007).