Karya Ilmiah
PENERAPAN FUZZY SET DALAM MEMUTUSKAN HASIL PERBANDINGAN KARAKTER
Oleh :
Fahmi Kurniawan, S.Kom., M.Kom.
SEKOLAH TINGGI MANAJEMEN ILMU KOMPUTER TRIGUNADARMA MEDAN 2012
BAB I PENDAHULUAN
1.1. Latar Belakang Pengolahan citra digital dewasa ini tidak hanya berkisar antara pengeditan citra digital dengan menggunakan filter-filter efek yang ada, banyak penelitian dilakukan terhadap objek berupa citra, yang mana informasi atau knowledege yang di dapat dari citra tersebut dapat memberikan kontribusi dan manfaat bagi dunia pendidikan, inovasi teknologi dan pengeloaan informasi. Perkembangannya bahkan mungkin sudah banyak digunakan baik langsung maupun tidak langsung, mulai permainan hingga sampai aspek keamaman seperti : jigsaw, face recognition, hand recognation, fingerprint dan lain sebagainya. Selain itu, pengolahan citra dapat 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 Optical Character Recognition (Odeyemi Olajumoke Janet, 2010). Teknologi ini bukanlah hal baru dalam ruang lingkup teknologi informasi. Teknologi Optical Character Recognition (OCR) ini banyak ditawarkan dalam produk-produk 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.
1
Penelitian mengenai handwriting recognition sudah pernah dilakukan sebelumnya, salah satunya dalam hal penanganan masalah banjir di kabupaten kudus (Arif Setiawan, 2007). Penelitian mengenai handwriting recognition ini dilakukan dengan tujuan agar dokumen penting yang rusak karena banjir dapat dibaca dengan menggunakan proses scaning. Masalah yang sering terjadi dalam teknologi OCR hasil tulisan tangan adalah ketidakpastian dalam pola untuk membuat suatu karakter tersebut. Ketidakpastian ini bisa disebabkan oleh berbagai macam hal, diantaranya kebiasaan, asal, cara dan kepribadian dari orang yang menuliskan karakter tersebut. Model dari ketidak pastian ini dapat diselesaikan melalui pendekatan Fuzzy dengan menentukan (membership function) dari masing-masing variabelnya (Sudrajat, 2008) . 1.2. Perumusan Masalah Perumusan masalah yang dapat disimpulkan dari latar belakang di atas adalah: 1.
Bagaimana merancang aplikasi untuk mengenali pola karakter tulisan tangan yang diinputkan langsung oleh user.
2.
Bagaimana merancang sistem perangkat lunak yang dapat membandingkan pola karakter input dengan pola karakter yang ada pada sistem.
3.
Bagaimana memetakan hasil perbandingan pola input karakter dengan sampel pola yang ada pada sistem kedalam himpunan fuzzy.
1.3. Batasan Masalah Dalam karya ilmiah ini permasalahan hanya difokuskan pada pembahasan metode yang digunakan dan model karakter yang menjadi input:
2
a. Pengenalan dilakukan per-karakter b. Pada sekali proses peng-input-an hanya ada satu jenis karakter c. Hanya karakter hasil tulis tangan yang langsung di-input secara digital melalui fasilitas tablet. d. Karakter yang di-input mencakup alphabet latin (uppercase dan lowercase), dan angka (0-9). e. Karakter alphabet uppercase dan lowercase yang tidak memiliki perbedaan mencolok akan diabaikan salah satunya (C dengan c, O dengan o, P dengan p, S dengan s, U dengan u, V dengan v, W dengan w, X dengan x, Z dengan z) f. Karakter yang di-input merupakan karakter tulisan cetak. g. Perbandingan pola karakter direpresentasikan dalam bentuk matrik pixel 10 x 10. h. Sampel pola karakter yang menjadi pembamding didalam sistem adalah pola karakter hasil tulisan tangan penulis. i. Output dari sistem merupakan karakter yang paling mendekati melalui perbandingan pola karakter input dengan pola karakter yang ada dalam sistem yang telah dipetakan kedalam Fuzzy Set. 1.4. Tujuan dan Manfaat Penulisan Tujuan dari penulisan karya ilmiah ini adalah : 1. Merancang aplikasi untuk mengenali pola karakter tulisan tangan yang diinputkan langsung oleh user. 2.
Merancang sistem perangkat lunak yang dapat membandingkan pola karakter input dengan pola karakter yang ada dalam sistem
3
3.
Menerapkan Fuzzy Set untuk memutuskan hasil perbandingan karakter sehingga menghasilkan suatu output kesamaan pola karakter berdasarkan perbandingan tersebut.
Manfaat yang dapat diperoleh dari karya ilmiah ini, dapat menjadi kontribusi untuk pengembangan selanjutnya ke tingkat yang lebih luas, misalkan untuk pengenalan kalimat atau teks yang lebih panjang.
4
BAB II LANDASAN TEORI 2.1. Tulisan Tangan Tulisan tangan terdiri dari urutan waktu dari stroke, yaitu gerakan mulai pena ke bawah menyentuh permukaan alat menulis (contohnya kertas) sampai pena ke atas meninggalkan permukaan. Pada pengenalan karakter secar tablet, karakter yang dituliskan pada screen akan otomatis menjadi sebuah image. Abjad bahasa latin mempunyai 26 karakter huruf dan setiap karakter huruf mempunyai dua bentuk, yaitu karakter huruf kapital dan karakter huruf kecil. Bahasa Inggris mempunyai dua gaya menulis dasar yaitu cetak dan sambung. Karakter huruf kapital biasanya terdiri lebih dari satu stroke per karakter huruf, sedangkan huruf kecil terdiri dari satu stroke per karakter huruf. Tulisan sambung hanya memiliki satu stroke per karakter hurufnya (Tappert C.,Suen C., and Wakahara T.,1990). 2.2. Citra Digital Citra atau image merupakan istilah lain dari gambar, yang merupakan informasi berbentuk visual. Citra mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu citra kaya dengan informasi. Ada sebuah peribahasa yang berbunyi sebuah gambar bermakna lebih dari seribu kata ”a picture is more than a thousand words”. Maksudnya tentu sebuah gambar dapat memberikan informasi yang lebih banyak daripada informasi tersebut disajikan dalam bentuk kata-kata (tekstual).
5
Secara harafiah, citra atau image adalah gambar pada bidang dwimatra (dua dimensi). Gambar 2.1 adalah citra seorang anak yang bernama Gideon, dan gambar di sebelah kanannya adalah citra batu Malin Kundang. Ditinjau dari sudut pandang matematis, citra merupakan fungsi continue dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh oleh alat-alat optik, misalnya mata pada manusia, kamera, scanner dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam. Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat : optik berupa foto a. analog berupa sinyal video seperti gambar pada monitor televisi b. digital yang dapat langsung disimpan pada media penyimpan magnetik
(a). Citra Gideon
(b). Citra Batu Malin Kundang
Gambar 2. 1. Citra Gideon dan Citra Batu Malin Kundan Citra digital merupakan citra yang disimpan dalam format digital (bentuk file). Hanya citra digital yang dapat diolah menggunakan komputer. Jenis citra lain jika akan diolah dengan komputer harus diubah dulu menjadi citra digital. Citra juga dapat dikelompokkan menjadi 2 yaitu :
6
1.
Citra Tampak seperti foto, gambar, lukisan, apa yang nampak di layar monitor/televisi , dan hologram.
2.
Citra Tidak Tampak seperti data foto, gambar dalam file, citra yang direpresentasikan dalam fungsi matematis. Citra didefenisikan sebagai fungsi intensitas cahaya dua dimensi f (x, y) di mana x dan y menunjukkan koordinat spasial dan nilai f pada suatu titik (x, y) sebanding dengan kecerahan(brightness) yang biasanya dinyatakan dalam tingkatan gray level dari citra di titik tersebut. Di dalam bidang komputer, ada tiga bidang studi yang berkaitan dengan data
citra, namun tujuan ketiganya berbeda, yaitu: 1. Grafika Komputer (computer graphics). 2. Pengolahan Citra (image processing). 3. Pengenalan Pola (pattern recognition/image interpretation). Hubungan antara ketiga bidang dapat ditunjukkan pada gambar 2.2
Gambar 2.2. Tiga Bidang Studi yang Berkaitan dengan Citra
7
Dalam pendeteksian tepi gambar berkaitan dengan bidang yang ke tiga dari bidang komputer tersebut yaitu pengenalan pola. Citra digital adalah citra dengan f (x, y) di mana nilainya dilakukan diskritisasi koordinat spasial (sampling) dan diskritisasi tingkat kecemerlangannya / keabuan (kwantisasi). Citra digital merupakan suatu matriks di mana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya (yang disebut sebagai elemen gambar / piksel / pixel / picture element pels) menyatakan tingkat keabuan pada titik tersebut. Citra digital berukuran N x M, di mana N adalah baris atau tinggi sedangkan M adalah kolom atau lebar M Citra digital yang tingginya N dan lebarnya M memiliki L derajat keabuan dapat dianggap sebagai fungsi : 0 x M f (x, y) 0 y N ...............................................................................
(2.1)
0 f L Citra digital yang berukuran N x M dinyatakan dengan matriks yang berukuran N baris dan M kolom yang dituliskan dengan fungsi :
f (x, y)=
f (0,0)
f (0,1)
.....
f (0, M )
f (1,0) .
f (1,1) .
..... .
f (1, M ) .
.
.
.
.
f (N 1,0)
f (N 1,1) .....
f (N 1, M
8
................. (2.2)
1)
Indeks baris (i) dan indeks kolom (j) menyatakan suatu koordinat titik pada citra, sedangkan f (i, j) merupakan intensitas (derajat keabuan) pada titk (i, j). Sebagai contoh, misalkan sebuah citra digital berukuran 256 x 256 pixel dan dipresentasikan secara numerik dengan matriks yang terdiri dari 256 baris (indeks 0255) dan 256 buah kolom (indeks 0-255) seperti contoh berikut : 0 0 220 :
134
145 ..... .....
167 201 187 189 :
:
221 219 210
231 ........................................... ..... ..... 197 (2.3) ..... ..... 120 ..... ..... : ..... ..... 156
Pixel pertama pada koordinat (0,0) mempunyai nilai intensitas 0 yang berarti warna pixel tersebut hitam, pixel kedua pada koordinat (0,1) mempunyai intensitas 134 yang berarti warnanya antara hitam dan putih dan seterusnya.
2.3. Pengenalan Pola Pengenala pola merupakan pengelompokan data numerik dan simbolik (termasuk citra) secara otomatis oleh mesin (dalam hal ini komputer). Tujuan pengelompokan adalah untuk mengenali suatu objek di dalam citra. Manusia bisa mengenali objek yang dilihatnya karena otak manusia telah belajar mengklasifikasi objek-objek di dalam sehingga mampu membedakan suatu objek dengan objek lainnya. Kemampuan sistem visual manusia inilah yang dicoba ditiru oleh mesin.
9
Komputer menerima masukan berupa citra objek yang akan diidentifikasi, memproses citra tersebut, dan memberikan output berupa deskripsi objek di dalam citra. Untuk melakukan pengenalan pola terhadap citra gambar digital, maka dilakukan terhadap pixels dari citra seperti pada gambar 2.3
Citra
Pengenalan Pola
Informasi/ Deskripsi Objek
Gambar 2. 3 Pengenalan Pola Citra Digital Terdapat dua pendekatan yang dilakukan dalam pengenalan pola yaitu pendekatan secara statistik dan pendekatan secara sintaktik atau struktural. 2.3.1. Pengenalan Pola secara Statistik Pendekatan ini menggunakan teori-teori ilmu peluang dan statistik. Ciri-ciri yang dimiliki oleh suatu pola ditentukan distribusi statistiknya. Pola yang berbeda memiliki distribusi yang berbeda pula. Dengan menggunakan teori keputusan di dalam statistik, kita menggunakan distribusi ciri untuk mengklasifikasikan pola. Pola Preprocessing
Feature Extraction
classification
Feature Selection
Learning
Pengenalan(Recognition) Pelatihan(training)
Pola terokan
Gambar 2. 4 Sistem Pengenalan Pola dengan Pendekatan Statistik
10
Sistem pengenalan pola dengan pendekatan statistik ditunjukkkan oleh diagram di bawah ini. Ada dua fase dalam sistem pengenalan pola: 1. Fase pelatihan Pada fase pelatihan, beberapa contoh citra dipelajari untuk menentukan ciri yang akan digunakan dalam proses pengenalan serta prosedur klasifikasinya. 2. fase pengenalan. Pada fase pengenalan, citra diambil cirinya kemudian ditentukan kelas kelompoknya. Ada beberapa fase yang dapat dilakukan dalam pengenalan pola a. Preprocessing Proses awal yang dilakukan untuk memperbaiki kualitas citra (edge enhancement) dengan menggunakan teknik-teknik pengolahan citra yang sudah diejelaskan pada bab-bab sebelum ini. b. Feature Extraction Proses mengambil ciri-ciri yang terdapat pada objek di dalam citra. Pada proses ini objek di dalam citra mungkin perlu dideteksi seluruh tepinya, lalu menghitung properti-properti objek yang berkaitan sebagai ciri. Beberapa proses ekstraksi ciri mungkin perlu mengubah citra masukan sebagai citra biner, melakukan penipisan pola, dan sebagainya. c. Classification Proses mengelompokkan objek ke dalam kelas yang sesuai. d. Feature Selection
11
Proses memilih ciri pada suatu objek agar diperoleh ciri yang optimum, yaitu cirri yang dapat digunakan untuk membedakan suatu objek dengan objek lainnya. e. Learning Proses belajar membuat aturan klasifikasi sehingga jumlah kelas yang tumpang tindih dibuat sekecil mungkin. Kumpulan ciri dari suatu pola dinyatakan sebagai vektor ciri dalam ruang bahumatra (multi dimensi). Jadi, setiap pola dinyatakan sebagai sebuah titik dalam ruang bahumatra. Ruang bahumatra dibagi menjadi sejumlah uparuang (sub-ruang). Tiap ruang dibentuk berdasarkan pola–pola yang sudah dikenali kategori dan ciricirinya (melalui fase pelatihan). Hal ini dapat dilihat pada Gambar 2.5
Gambar 2. 5. Contoh Pembagian Kelas Pola
12
2.3.2. Pengenalan Pola secara Sintaktik Pendekatan ini menggunakan teori bahasa formal. Ciri-ciri yang terdapat pada suatu pola ditentukan primitif dan hubungan struktural antara primitif kemudian menyusun tata bahasanya. Dari aturan produksi pada tata bahasa tersebut kita dapat menentukan kelompok pola. Gambar 2. 6 memperlihatkan sistem pengenalan pola dengan pendekatan sintaktik. Pengenalan pola secara sintaktik lebih dekat ke strategi pengenalan pola yang dilakukan manusia, namun secara praktek penerapannya relatif sulit dibandingkan pengenalan pola secara statistik.
Pola Preprocessing
Primitive Extraction
classification
Pengenalan(Recognition) Pelatihan(training)
Pola terokan
Primitive Selection
Learning
Gambar 2. 6 Sistem pengenalan pola dengan pendekatan sintaktik
2.4. Elemen –Elemen Dasar Citra Citra digital mengandung elemen-elemen dasar. Citra tersebut dimanipulasi dalam pengolahan citra dan eksploitasi lebih lanjut dalam Computer Vision. Elemenelemen dasar citra di antaranya adalah
13
1. Brightness (Kecerahan) Intensitas cahaya yang terjadi pada citra. 2. Contrast (Kontras) Menyatakan sebaran terang dan gelap pada citra. 3. Acuity (Ketajaman) Kemampuan mata manusia untuk merinci secara detail bagian-bagian pada suatu citra. 4. Countour (Kontur) Keadaan pada citra di mana terjadi perubahan intensitas dari suatu titik ke titik tetangganya 5. Color (Warna) Reaksi yang dirasakan oleh visual mata manusia terhadap perubahan panjang gelombang cahaya yang dipantulkan oleh objek 6. Shape (Bentuk) Citra yang dibentuk oleh mata merupakan citra dua dimensi (2D), sedangkan objek yang diamati adalah tiga dimensi (3D) 7. Texture (Tekstur) Sistem visual manusia untuk tidak menerima citra secara terpisah pada setiap titik tetapi suatu citra dianggap sebagai satu kesatuan.
14
2. 5. Operasi Pengolahan Citra Secara umum operasi pengolahan citra dapat diklasifikasi dalam beberapa jenis yaitu : 1. Perbaikan kualitas citra Operasi ini bertujuan untuk memperbaiki kualitas citra dengan teknik memanipulasi parameter-parameter yang ada pada citra. Ada beberapa operasi yang dapat dilakukan untuk perbaikan citra antara lain: a. Perbaikan kontras citra(gelap / terang) b. Perbaikan tepian objek citra c. Penajaman d. Pemberian warna semu e. Peapisan derau 2. Pemugaran citra Operasi ini bertujuan untuk menghilangkan atau meminimumkan kecatatan pada citra, contoh operasi-operasi pemugaran pada citra a. Menghilangkan kesamaran b. Menghilangkan derau 3. Pemampatan Citra Operasi ini dilakukan untuk memampatkan citra dengan tujuan memperkecil ukuran memory yang digunakan, tanpa mengurangi kualitas citra
15
4. Segmentasi Citra Berkaitan dengan pengenalan pola, di mana operasi ini bertujuan untuk memecah suatu citra ke dalam beberapa segmen dengan satu kriteria tertentu. 5. Pergorakan Citra Operasi ini bertujuan untuk menghitung besaran kuantitatif dari citra untuk menghasilkan deskripsinya. Teknik ini digunakan untuk mengekstraksi ciri-ciri tertentu yang membantu dalam identifikasi objek. Contoh beberapa operasi pergorakan citra a. Pendeteksian tepi objek b. Ekstraksi batas c. Representasi daerah 6. Rekontruksi Citra Operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi rekontruksi citra banyak digunakan dalam bidang medis misalnya beberapa foto rontgen dengan sinar X digunakan untuk membentuk ulang gambar organ tubuh. 2.6. Pemrosesan Citra Pemrosesan citra adalah ilmu untuk memanipulasi gambar, yang melingkupi teknik-teknik untuk memperbaiki atau mengurangi kualitas gambar, menampilkan bagian tertentu dari gambar, membuat sebuah gambar yang baru dari beberapa bagian gambar yang sudah ada, mengembalikan gambar yang rusak pada saat pengambilan, dan beberapa teknik manipulasi gambar lainnya.
16
2.6.1. Representasi Warna Karena persepsi manusia akan warna berdasarkan respon dari tiga cones yang berada pada bola mata manusia, maka representasi warna didasarkan pada hal tersebut, yang biasanya disebut sebagai tristimulus value. Salah satu model representasi warna berdasarkan tristimulus value adalah representasi warna RGB yang nantinya dapat dijadikan representasi grayscale untuk memudahkan pemrosesan citra. a. Reperesentasi Warna RGB Representasi warna ini terdiri dari tiga unsur utama yaitu Red, Green dan Blue. Gabungan ke tiga warna ini membentuk warna-warna lainnya berdasarkan intensitas dari masing-masing warna tersebut, misalnya warna putih adalah gabungan dari ke tiga warna tersebut dengan intensitas maksimal(1) dan warna hitam merupakan gabungan dari ke tiga warna tersebut dengan intensitas minimal(0). b. Reperesentasi Grayscale Dengan menggunakan representasi warna RGB gambar yang berwarna dapat diubah menjadi gambar yang terdiri dari warna putih dan gradiasi warna hitam yang biasanya disebut gambar grayscale. Untuk mengubah warna RGB menjadi grayscale dapat digunakan rumus sebagai berikut: Grayscale = 0.299R + 0.587G + 0.114B ................................ (2.4) atau Grayscale = 0.333R + 0.333G + 0.333B ................................ (2.5)
17
2.6.2. Metode Pemrosesan Citra Data citra(image) umumnya disimpan dalam bentuk array 2 dimensi yang berisi angka yang mengacu pada salah satu representasi warna. Berdasarkan kedalaman warna, maka penyimpanan data pada citra umumnya terbagi atas 4 yaitu: 24 bit (true color), 8 bit color, 8 bit grayscale dan 2 bit(white/black). Pada 24 bit, data citra disimpan pada setiap titik(pixel) pada citra menjadi 3 byte pada saat penyimpanan dalam array yang berisi nilai R, G, B. Pada 8 bit color data disimpan pada 1 byte yang mengacu pada intensitas warna grayscale. Dan pada 1 bit setiap 8 pixel disimpan pada 1 byte data.
Gambar 2. 7 Mode Penyimpanan Citra
2.6.3. Konvolusi Operasi yang mendasar dalam pengelolaan citra adalah operasi konvolusi. Konvolusi terdapat pada operasi pengolahan citra untuk mengalikan nilai matrik sebuah citra dengan sebuah mask atau kernel. Konvolusi terdiri dari 2 buah fungsi yang didefenisikan sebagai berikut:
18
a. Fungsi Malar h(x, y)
f (x, y) * g(x, y)
f (a,b)g(x
a, y b)dadb .......... (2. 6)
b. Fungsi Diskrit h(x, y)
f (x, y) * g(x, y)
f (a,b)g(x a
a, y b) ........... (2. 7)
b
Fungsi penapis g(x,y) disebut juga convolution filter, Convolution mask, convolution kernel, atau template. Kernel konvolusi dinyatakan dalam bentuk matriks, di mana ukuran matriks ini biasanya lebih kecil dari ukuran matriks citra. Umumnya kernel konvolusi berukuran 3x3, 2x2, 2x1 atau 1x2, dan setiap elemen matriks disebut koefisien konvolusi. Untuk lebih jelasnya, ilustrasi konvolusi ditunjukkan pada gambar 2. 8
f(i,j)
A
B
C
D
E
F
G
H
I
P1
P2
P3
P4 P7
P5 P8
P6 P9
kernel f (i, j)
A.
P B. P 1
2
C.
P
3
D.
P
4
E.
P
5
F.
P
5
G.
P
Gambar 2. 8. Ilustrasi Konvolusi
19
6
H.
P
7 I.
P8
Operasi konvolusi dilakukan dengan menggeser kernel konvolusi pixel per pixel dan hasil konvolusi disimpan di dalam matriks yang baru. 2.7. Pengenalan Karakter Hasil Tulisan Tangan Secara umum, proses pengenalan karakter secara sederhana dilakukan dengan mengubah pola karakter masukan kedalam matrik piksel dan matrik bit yang kemudian akan diambil nilai nilainya untuk dibandingkan dengan pola yang sudah ada dalam sistem. Masukan Karakter 20
Penentuan Matrik Pixel
Penentuan Matrik Bit
Pengambilan nilai biner
Perbandinga n oleh sistem
Hasil Perbandinga Gambar 2.9 Tahapan Perbandingan Pola Karakter Dalam program pengenalan karakter ini, huruf yang akan di testing harus di trainng terlebih dahulu secara berulang-ulang, dalam proses training area buffer akan menunjukkan area yang bernilai 0 dan daerah yang bernilai 1, area inilah yang digunakan sebagai input untuk menentukan bobot sesuai dengan algoritma yang digunakan.
20
Gambar 2.10 Proses Training program dengan input huruf “A” Dalam proses training input program merupakan vektor dengan 100 komponen yang merepresentasikan pola karakter 2 dimensi (10x10). Misalkan ketika user menggambar huruf A maka akan diproleh matrik Bit dari proses training input yang dapat dilihat pada gambar 2. 11.
Gambar 2.11. Huruf A sebagai matrik bit 10 x 10 Komponen vektor bernilai 1, menandakan bahwa kotak yang diwakilinya berwarna hitam, sedangkan vektor bernilai 0, menandakan bahwa kotak yang diwakilinya bewarna putih. Sehingga vektor (Input Vektor) yang bersesuaian yang terbentuk adalah : 00001100000001111000000111100000011111000011001100001100111001111111 1011111111001100000110110000011 (Arif Setiawan, Diana Laily Fitri, Nanik Susanti, 2007).
21
2.8. Fuzzy Logic Profesor Lotfi A. Zadeh adalah guru besar pada University of California yang merupakan pencetus sekaligus yang memasarkan ide tentang cara mekanisme pengolahan atau manajemen ketidakpastian yang kemudian dikenal dengan logika fuzzy. Dalam penyajiannya vaiabel-variabel yang akan digunakan harus cukup menggambarkan ke-fuzzy-an tetapi di lain pihak persamaan-persamaan yang dihasilkan dari variable-variabel itu haruslah cukup sederhana sehingga komputasinya menjadi cukup mudah. Karena itu Profesor Lotfi A Zadeh kemudian memperoleh ide untuk menyajikannya dengan menentukan “derajat keanggotaan” (membership function) dari masing-masing variabelnya. Fungsi keanggotaan (membership function), Sudradjat adalah suatu kurva yang menunjukkan pemetaan titik input data ke dalam nilai keanggotaanya (sering juga disebut dengan derajat keanggotaan) yang memiliki interval antara 0 sampai 1. 1.
Derajat Keanggotaan (membership function) adalah : derajat di mana nilai crisp dengan fungsi keanggotaan ( dari 0 sampai 1 ), juga mengacu sebagai tingkat keanggotaan, nilai kebenaran, atau masukan fuzzy.
2.
Label adalah nama deskriptif yang digunakan untuk mengidentifikasikan sebuah fungsi keanggotaan.
3.
Fungsi Keanggotaan adalah mendefinisikan fuzzy set dengan memetakkan masukan crisp dari domainnya ke derajat keanggotaan.
4.
Masukan Crisp adalah masukan yang tegas dan tertentu.
22
5.
Lingkup/Domain adalah lebar fungsi keanggotaan. Jangkauan konsep, biasanya bilangan, tempat di mana fungsi keanggotaan dipetakkan.
6.
Daerah Batasan Crisp adalah jangkauan seluruh nilai yang dapat diaplikasikan pada variabel sistem. Pada teknik digital, Dubois dan Prade [5], dikenal dua macam logika yaitu 0
dan 1 serta tiga operasi dasar yaitu NOT, AND dan OR. Logika semacam ini disebut dengan crisp logic. Logika ini sering dipergunakan untuk mengelompokan sesuatu himpunan. Sebagai contoh, akan dikelompokkan beberapa macam hewan, yaitu ‘hiu’, ‘kakap’, ‘pari’, ‘kucing’, ‘kambing’, ‘ayam’ ke dalam himpunan ikan. Sangat jelas bahwa hiu, kakap dan pari adalah anggota himpunan ikan sedangkan kucing, kambing, ayam adalah bukan anggotanya. Namun kadang kala ditemui pengelompokan yang tidak mudah. Misalkan variabel umur dibagi menjadi tiga kategori, yaitu : Muda : umur < 35 tahun Parobaya : 35 ≤ umur ≤ 55 tahun
Tua : umur > 55 tahun 1.
Apabila seseorang berusia 34 tahun, maka ia dikatakan muda (μmuda [34] = 1)
2.
Apabila seseorang berusia 35 tahun, maka ia dikatakan tidak muda (μmuda [35]= 0)
3.
Apabila seseorang berusia 35 tahun kurang 1 hari, maka ia dikatakan tidak muda th
(μmuda [35 – 1 hr] = 0)
23
4.
Apabila seseorang berusia 35 tahun, maka ia dikatakan parobaya (μparobaya [35] = 0)
5.
Apabila seseorang berusia 34 tahun, maka ia dikatakan tidak parobaya (μparobaya [34] = 0)
6.
Apabila seseorang berusia 35 tahun kurang 1 hari, maka ia dikatakan tidak parobaya (μparobaya [35th – 1 hr] = 0) Dari sini bisa dikatakan bahwa pemakaian himpunan crisp untuk menyatakan
umur sangat tidak adil, adanya perubahan kecil saja pada suatu nilai mengakibatkan perbedaan kategori yang cukup signifikan. Himpunan fuzzy digunakan untuk mengantisipasi hal tersebut. 2.8.1. Crisp set vs. Fuzzy set
Gambar 2. 12 Perbedaan antara Himpunan Fuzzy dan Himpunan Crisp Contoh variabel dalam suatu sistem fuzzy misalkan berat suhu dan tinggi badan. Kemudian variable tersebut dibagi menjadi beberapa himpunan fuzzy dimisalkan : Variabel suhu terbagi menjadi 3 himpunan fuzzy, yaitu : panas, hangat, dingin, Variabel Tinggi Badan terbagi menjadi : tinggi, sedang, rendah.
24
Himpunan Fuzzy memiliki 2 attribut : Linguistik, yaitu penamaan suatu group yang mewakili suatu kondisi, misalnya
1.
panas, hangat, dingin . Numeris, yaitu ukuran dari suatu variabel seperti : 17,19, 21, 33, dst
2.
Selain itu suatu himpunan fuzzy juga harus memiliki himpunan semesta, yaitu merupakan keseluruhan nilai yang boleh dioperasikan dalam suatu variable fuzzy. Contoh: 1.
Semesta untuk variabel berat badan : [1, 150]
2.
Semesta untuk variabel suhu : [0,100]. Sedangkan Domain himpunan Fuzzy merupakan keseluruhan nilai yang
diijinkan dalam Semesta dan boleh dioperasikan dalam suatu himpunan fuzzy. 1. Contoh : DINGIN
=
[0,60]
2. HANGAT
=
[50,80]
3. PANAS
=
[70, + )
1
0
50
100
Gambar 2. 13 Fuzzyfication
25
Jika diketahui suhu = 65 maka jika dipetakan ke dalam derajat keanggotaan di atas maka akan diproleh : 1 0.8
0.3
0
50
100
Gambar 2. 14 Pemetaan Fuzzy
2.9. Algoritma Kata algoritma berasal dari kata-kata di bawah ini : Al Khuwarizmi algorism algorithm (diserap dalam bahasa Indonesia menjadi algoritma). Penjelasan dari transformasi kata tersebut adalah: 1. Abu Ja’far Muhammad Ibnu Musa Al Khuwarizmi adalah seorang penulis buku Arabyang berjudul Kitab Al Jabar Wal Muqabala (Buku Pemugaran dan Pengurangan). 2. Kata Al Khuwarizmi dibaca orang Barat menjadi algorism. Kata algorism berarti proses menghitung dengan angka Arab. Seseorang dikatakan algorist jika orang tersebut menggunakan angka Arab. 3. Kata algorism lambat laun menjadi algorithm disebabkan kata algorism sering dikelirukan dengan kata arithmetic sehingga akhiran –sm berubah menjadi –thm. Kata algorithm diserap ke dalam bahasa Indonesia menjadi algoritma.
26
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kata logis disini berarti benar sesuai dengan logika manusia. Untuk menjadi sebuah algoritma, urutan langkah yang ditempuh untuk menyelesaikan masalah harus memberikan hasil yang benar. Contoh Algoritma : Algoritma MEMBUAT_MINUMAN_KOPI-1 1. Masukkan satu sendok makan gula ke dalam cangkir. 2. Masukkan satu sendok teh kopi ke dalam cangkir. 3. Tuangkan air panas ke dalam cangkir hingga penuh. 4. Aduk isi cangkir selama 30 detik. Algoritma MEMBUAT_MINUMAN_KOPI-2 1. Masukkan satu sendok teh kopi ke dalam cangkir. 2. Tuangkan air panas ke dalam cangkir hingga penuh. 3. Aduk isi cangkir selama 30 detik. 4. Jika ingin berasa manis maka masukkan satu sendok makan gula ke dalam cangkir kemudian aduk isi cangkir selama 30 detik. Dari dua contoh di atas, tampak bahwa untuk menyelesaikan suatu masalah yang sama, masing-masing orang dapat membuat algoritma yang berbeda. 2.10. Kajian Pustaka Dalam pemilihan judul, penulis banyak mendapatkn masukan yang berhubungan dengan judul. Kajian pustaka yang menjadi masukan bagi penulis diantaranya adalah sebagai berikut :
27
2.9.1 Pengenalan karakter untuk Pembacaan Dokumen yang Rusak Karena Banjir Tujuan dari paper yang ditulis oleh Arif Setiyawan (Universitas Muria Kudus) ini adalah untuk menghasilkan analisa sistem pengenalan karakter menggunakan jaringan Syaraf Tiruan Untuk Pembacaan Dokumen Yang Rusak Karena Banjir pada instansi di Kabupaten Kudus. Dengan dirancangnya sistem ini diharapkan dapat dikembangkan menjadi suatu system character recognition dan text recognition yang dapat digunakan untuk membaca hasil scaning dokumen yang rusak karena terkena hujan dan banjir. 2.9.2
Pengenalan Karakter Alfabet menggunakan JST Paper yang ditulis oleh Andi Prasojo (Universitas Diponegoro) ini membahas
mengenai pengenalan pola secara automatis adalah masalah yang banyak menyita perhatian sekarang ini, baik pengenalan pola wajah, sidik jari, tulisan tangan maupun pola karakter hasil cetakan. Yang menjadi alasan penulisan adalah kemampuan untuk mengenali secara efektif dengan menggunakan pola contoh yang sedikit. Satu pendekatan yang menunjukkan hasil yang menjanjikan dalam pengenalan pola adalah dengan menggunakan jaringan saraf tiruan. Jaringan saraf tiruan telah dikembangkan sebagai generalisasi model matematik dari pembelajaran otak manusia.
28
BAB III PEMBAHASAN
3.1. Mengidentifikasi Ruang Lingkup Masalah. Ruang lingkup masalah yang utama dalam karya ilmiah ini, yaitu bagaimana cara merancang aplikasi untuk mengenali pola karakter, kemudian bagaimana cara membandingkannya dengan pola karakter yang menjadi pola rujukan dari sistem, lalu memetakannya kedalam himpunan fuzzy sehingga diperoleh hasil pencocokan karakter tersebut. 3.2. Analisa Masalah yang Dirumuskan Untuk Membandingkan pola input dengan pola karakter yang menjadi rujukan, maka sebelumnya perlu terlebih dahulu dilakukan penyimpanan pola karakter yang menjadi rujukan pola perbandingan, sehingga setiap pola yang di inputkan selalu bisa untuk dibandingkan. Hasil perbandingan tersebut akan dipetakan kedalam domain dari himpunan fuzzy, yang sudah ditentukan terlebih dahulu sehingga menghasilkan output yang berisi persentase kecocokan pola karakter dan asumsi karakter yang paling cocok dengan pola yang sudah diinputkan. 3.3. Analisa Tujuan utama dari pembahasan ini adalah merancang suatu aplikasi yang bisa membandingkan pola karakter input dengan pola karakter yang ada dalam sitem dan memetakannya kedalam fuzzy set sehingga didapatkan kecocokan karakter hasil perbandingan tersebut.
29
3.4. Analisa Literatur yang digunakan Pada pelaksanaan kerangka kerja keempat ini, penulis melakukan kajian dan analisa terhadap teori-teori pendukung yang dianggap penulis bisa membantu penulis dalam menyelesaikan karya ilmiah ini, sehingga hasil kajian yang diselesaikan nantinya tidak bertentangan denga kaedah-kaedah ilmu pengetahuan yang telah dirumuskan sebelumnya. 3.5. Analisa Pengumpulan data Pengumpulan data yang secara langsung dilakukan oleh penulis adalah pengumpulkan pola karkter yang akan menjadi rujukan perbandingan nantinya di dalam sistem. Pola karakter yang dikumpulkan adalah pola karakter 26 huruf alphabet beserta kesepuluh angka decimal. Hasil dari pengumpulan pola tersebut akan disatukan kedalam satu file txt yang berisi nilai matrik bit dari setiap pola karakter yang dikumpulkan. 3.6. Analisa Sistem Tulisan tangan yang direpresentasikan dalam bentuk matrik memiliki dimensi yang besar dengan baris dan kolom pada citra serta kesesuaian nilai elemen matrik tersebut. Proses komputasi dimensi matrik yang besar membutuhkan waktu proses yang lama sehingga diperlukan reduksi dimensi matrik untuk meminimalisir waktu proses. Identifikasi tulisan tangan didasari pada pengenalan pola yang sudah ada dan disimpan sebelumnya yang representasikan dalam bentuk himpunan.
30
3.6.1. Proses Pengolahan Tulisan Tangan Data yang digunakan dalam karya ilmiah ini adalah beberapa pola dari huruf dan angka untuk pengujian dimana tulisan tangan yang digunakan merupakan hasil input langsung pada picture box yang dilakukan dengan menggunakan fasilitas tablet pada note book atau laptop, selanjutnya tulisan tangan tersebut akan mengalami proses perubahan menjadi citra berbentuk matrik pixel 10 x 10 untuk memempermudah pembentukan pola dan menyesuaikannya dengan sampel pola yang sudah ada sebelumnya. Adapun flow process diagram pengolahan data citra yang akan digunakan dalam karya ilmiah ini ditunjukkan pada gambar 4.1 Tulisan Tangan
Proses pencocokan pola
Asumsi Kesamaan pola
Gambar 3.1 Flow Process Pengenalan Karakter
3.6.2. Pola Input
Pola input merupakan tulisan tangan yang dikonversi menjadi matrik pixel 10 x 10 untuk masing-masing karakter yang di-input-kan. Adapun algoritma yang digunakan untuk mengkonversi citra ke dalam bentuk matrik adalah sebagai berikut: 1. Tuliskan sebuah pola karakter 2. Inisialisasikan Larik matrik dari citra Lebar citra/pola karakter=10 Panjang citra/pola karakter=10 For i=1 to Lebar_Citra For j= 1 to Panjang_Citra Matrik Pixel[Xi,Yj]= GetPixel(i, j)) Next panjang Next lebar 3. Selesai
31
Contoh pola dari huruf A yang dikonversi
ke dalam bentuk matrik pixel
sebagai berikut: Tulisan Tangan
Matik Pixel
Matrik Bit 000001100 000001110 000011110 000110011 001110011 001100001 011111011 011111111 110000000 110000000
0 0 0 0 0 1 1 1 1 1
Gambar 3. 2. Matrik Pixel untuk A
3.6.3. Proses Pencocokan Pola karakter dengan Fuzzy Set Proses Pencocokan Pola Karakter dengan Fuzzy Set merupakan suatu pemrosesan terhadap input (karakter tulisan tangan) untuk membandingkan nilai dari matrik bit yang ada pada pola karakter yang tersimpan dalam sistem dengan marik bit citra input yang dituliskan. Adapun langkah kerja sistem Pengenalan Karakter tulisan tangan yang akan dirancang oleh penulis adalah sebagai berikut: 1. Masukkan contoh pola karakter satu persatu kedalam sistem kemudian jika karakter belum terdeteksi dalam sistem, simpan pola tersebut ke dalam sistem. Langkah-langkah penginputan pola karakter kedalam sistem adalah sebagai berikut: Langkah I : Gambarkan suatu pola karakter hasil tulisan tangan, misalkan huruf A
32
Gambar 3.3. Contoh Pola Tulisan Tangan Karakter A Langkah II : Mampatkan pola karakter yang diinput kedalam bentuk matrik pixel 10 x 10
Gambar 3.4. Hasil Pemampatan Pola Tulisan Tangan Kedalam Matrik Pixel 10 x 10 Langkah III : Untuk Mempermudah proses perbandingan pola nantinya maka matrik pixel tersebut di ubah kedalam bentuk matrik bit 10 x 10 dengan cara jika isi dari matrik pixel = hitam, maka isi dari matrik bit = 1. Jika matrik pixel = putih, maka matrik bit = 0. 000001100 000001110 000011110 000110011 001110011 001100001 011111011 011111111 110000000 110000000
0 0 0 0 0 1 1 1 1 1
Gambar 3.5. Hasil Perubahan Matrik Pixel menjadi Matrik Bit
33
Langkah IV : Selanjutnya Matrik bit tersebut akan membentuk suatu deret bilangan seperti berikut : 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0000111100000110011000111001100011 0 0 0 0 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1. Langkah V : Simpan hasil inputan pola karakter tersebut kedalam tempat penyimpanan pola yang berbentuk file txt dengan nama DATA.famy. 2. Untuk melakukan pendeteksian pola karakter, dilakukan perbandingan terhadap pola input karakter dengan pola karakter yang sudah tersimpan dalam system. Hasil dari perbandingan di masukkan kedalam himpunan fuzzy. Untuk itu perlu ditentukan terlebih dahulu a. Variabel Fuzzy Yang menjadi variabel dari Himpunan Fuzzy ini adalah Derajat kesamaan Pola b. Fuzzy Set Derajat kesamaan Pola di bagi menjadi 3 himpunan yaitu A, B, dan C, yang akan diuraikan lebih lanjut pada derajat keanggotan Domain Fuzzy. c. Himpunan Semesta Dalam hal ini, yang menjadi semesta pembicaraan untuk variable Derajat Kesamaan Pola adalah : [0,100]
34
d. Domain Domain himpunan fuzzy dibagi 3 yaitu himpunan A yaitu hasil yang dianggap tidak memiliki kesamaan antara pola input dengan pola yang ada dalam system, dinotasikan sebagai Berikut : A=[0,60] Nilai Crisp 0 diambil dari awal atau batas bawah dari himpunan semesta dan nilai 60 di asumsikan sebagai batas atas dari rentang ketidak miripan pola karakter yang diinput. Himpunan yang kedua adalah Himpunan B, yaitu himpunan yang memiliki kemiripan antara pola input dengan pola yang ada di dalam sistemnya, tetapi masih perlu ditinjau kembali keputusan akan kesamaan yang telah diidentifikasi. Nilai Crisp dari himpunan ini ditentukan sendiri oleh penulis dari rentang 50 sampai 70,dinotasikan sebagai berikut : B=[50,70] Himpunan yang terakhir adalah himpunan yang memiliki banyak kemiripan atau bahkan sama dengan pola yang sudah ada dalam system, sehingga bisa dianggap perbandingannya bisa dipastikan kesamaan antara pola input dan pola yang sudah ada dalam system, nilai Crisp dari kemiripan ini ditentukan oleh penulis mulai dari rentang 60 sampai dengan batas akhir himpunan semesta, yaitu 100 yang dinotasikan dengan C=[60,100] Sehingga Fuzzy berasosiasi dengan derajat keanggotaan pada himpunan di atas dapat digambarkan sebagai berikut :
35
Gambar 3.6. Derajat Keanggotaan Himpunan Fuzzy untuk Pengenalan Pola Karakter Derajat keanggotaan inilah yang akan digunakan nantinya untuk pemetaan dari hsil perbandingan untuk menghasilkan output dari setiap pola karakter yang diinput. 3.
Pada tahap akhir dilakukan Pemetaan Hasil perbandingan kedalam derajat keanggotaan fuzzy. Dari grafik derajat keanggotaan himpuan fuzzy di atas, disesuaikan dengan aturan domain himpunan fuzzy yang sudah ditetapkan diatas maka diperoleh bahwa grafik berwarna kuning termasuk pada kategori himpunan fuzzy A yang berarti diasumsikan bahwa anggota himpunan terssebut tidak sama dengan himpunan dari pola input. Himpunan B (warna merah) diasumsikan himpunan bahwa himpunan tersebut memiliki kesamaan dengan pola karakter hasil input, tetapi masih memiliki banyak ketidakcocokannya, sedangkan Anggota himpunan C dianggap memiliki kecocokan yang paling identik, sehingga diasumsikan memiliki pola yang sama.
36
Contoh kasus, misalkan diinputkan sebuah pola karakter hasil tulisan tangan seperti berikut :
Gambar 3.7. Contoh Pola Tulisan Tangan yang dimasukkan Dari pola tulisan tangan tersebut didapat matrik pixel seperti gambar 4.7 :
Gambar 3.8. Matrik Pixel dari contoh pola Setelah didapat marik pixelnya maka akan diproleh juga matrik bitnya, kemudian matrik bit tersebut akan dibandingkan dengan matrik bit yang telah disimpan sebelumnya pada system.
37
0000011000 0000011100 0000111100 0001100110 0011100110 0011000011 0111110111 0111111111 1100000001 1100000001
0000001100 0000011110 0000010110 0000110110 0001100110 0011000110 0011111111 0111111111 0100000010 1100000010
A
B
Gambar 3.9. Perbandingan Matrik Bit Pola Tulisan Tangan yang sudah Tersimpan Sebelumnya (A) dengan Pola Tulisan Tangan Input (B)
Dari pola tulisan tangan yang sudah tersimpan sebelumnya (A), diketahui ada 44 pixel hidup (berinilai 0), sedangkan pada pola karakter hasil input (B) diproleh 43 pixel hidup. Dari perbandingan pixel hidup tersebut, dapat dilihat hanya ada 35 pixel yang cocok, sehingga persentase kecocokan yang diperoleh adalah (35 / 44) * 100 % = 79,5 % Proses pemetaan hasil perbandingan ke dalam domain fuzzy: Peranan fuzzy set dalam perancangan sistem pengenalan karakter ini adalah untuk memetakan hasil perbandingan pola karakter ke dalam domain himpunan fuzzy sehingga bisa disimpulkan derajat kecocokan pola untuk memutuskan apakah pola karakter tersebut dapat dikenali ataupun dicocokkan terhadap salah satu pola karakter yang ada di dalam sistem. Berikut merupakan langkah-langkah pemetaan hasil perbandingan ke dalam domain himpunan fuzzy:
38
Hasil dari perbandingan tersebut akan dipetakan kedalam domain dari himpunan fuzzy, yaitu himpunan A[0,60], himpunan B[50,70], dan himpunan C[60,100]. Hasil perbandingan tersebut menempatkan himpunan C[60,100] sebagai domain dari hasil perbandingan pola tersebut. Sehingga jika dimasukkan ke dalam derajat keanggotaan himpunan fuzzy diperoleh seperti gambar 3.9. Berikut :
79,5 Gambar 3.9. Derajat Kecocokan pada Himpunan Fuzzy Sehingga diasumsikan bahwa pola yang diinputkan adalah pola tulisan tanga untuk karakter A.
3.7. Analisa Perancangan dan Pembangunan Sistem Pada bagian ini, dilakukan analisa terhadap perancangan dan desain sistem yang akan dibangun yang melingkupi arsitektur dan desain sistem pengenalan karakter beserta desain interface dari sistem. a. Arsitektur Sistem Pengenalan Karakter Arsitektur sistem pengenalan karakter merupakan gambaran umum ataupun kerangka kerja dari sistem pengenalan karakter yang dibangun. Pada gambar 4.7 digambarkan skema desain arsitektur pengenalan karakter yang menjelaskan
39
kerangka kerja sistem pengenalan karakter mulai dari proses awal
sampai proses
akhir. User Input pola karakter
Simpan Pola
Kenali pola Karakter
Bandingkan Simpan pola pola karakter Hasil Perbandingan Output kecocokan pola berdasarkan set
defuzzyfication fuzzy
Gambar 3.10. Skema Desain Arsitektur Sistem Pengenalan Karaker
Pada skema desain arsitektur sistem pengenalan karakter di atas dapat dilihat skema kerja sistem mulai dari input sampai pada output akhir dari sistem. Proses defuzzyfication pada gambar 4. 10 menjelaskan bahwa fuzzy set
yang digunakan
hanya untuk pemetaan hasil perbandingan kedalam fuzzy domain yang telah dirancang sebelumnya.
40
b. Desain Sistem Desain Sistem merupakan gambaran bagaimana dan seperti apa rancangan sistem yang akan dibangun untuk dijadikan sebagai antarmuka sistem (intreface) Pengenalan Karakter. Adapun desain sistem yang dirancang ditunjukkan pada Gambar 3.11. berikut :
Gambar 3.11. Desain Interface Form Splash Form Splash berguna sebagai Form pembuka pada aplikasi pengenalan karakter tulisan tangan. Form inilah akan terbuka pertama sekali pada saat user menjalankan aplikasi pengenalan karakter ini. Form splash pada umumnya berguna sebagai welcome screen pada setiap aplikasi.
41
Gambar 3.11. Desain Interface Main Form Pengenalan Karakter
Fungsi dari setiap masing-masing objek yang didesain dalam desain sistem Pengenalan Karakter adalah sebagai berikut: Area Input
:
Area Buffer Data
: Tempat Buffer Matrik Pixel dari pola citra pada Area Input
Area Database
: Tempat Matrik Pixel hasil pencocokan pola yang paling
Tempat memasukkan / menuliskan karakter tulisan tangan
sesuai dengan area input Buka
: Untuk melihat contoh pola yang ada dalam system
42
Input Pola Baru
: Untuk memasukkan pola karakter baru kedalam system
Kenali
: Untuk mengenali pola yang ada pada Area Input
Bersihkan Area
: Untuk membersihkan area kerja kebentuk default
Keluar
: Untuk Keluar dari Program
Gambar 3. 12. Desain Inter face Input Form Pengenalan Karakter Form ini sebenarnya satu form dengan main form, tetapi tampilan form ini keluar hanya jika user akan memasukkan pola karakter baru. Komponen tambahan pada form ini antara lain : Konfirmasi
: Untuk memasukkan karakter dalam system.
Batal
: Untuk membatalkan penginputan pola karakter.
43
Gambar 4. 13. Desain Interface Main Form Confirmation Pengenalan Karakter Form Confirmation merupakan form yang digunakan pada saat kita akan keluar dari program. Fungsi dari bagian-bagian yang ada pada form ini adalah : Yes
: Untuk keluar dari program
No
: Untuk Kembali pada main program
44
BAB IV PENUTUP 1. Dimensi matrik piksel memiliki pengaruh yang cukup besar pada proses input pola karakter. 2. Penggunaat teknik lain yang dapat digabungkan dengan sistem pengenalan karakter ini, seperti jaringan saraf tiruan. 3. Untuk mengembangkan sistem dan menghasilkan pola yang lebih beragam hendaknya digunakan dimensi matrik yang lebih besar. 4. Proses fuzzyfication yang digunakan lebih mendalam, misalkan fuzzy Tsukimoto. 5. Pengenalan Karakter tidak hanya tulisan cetak tetapi juga tulisan sambung. 6. Tidak hanya karakter yang dikenali tetapi tulisan tangan yang lebih kompleks.
45
DAFTAR PUSTAKA Andi Prasajo., “Pengenalan Karakter Alphabet menggunakan JST”, Jurnal Informatika Universitas Diponegoro Arif Setiawan, Diana, Nanik, “Pengenalan karakter Untuk Pembacaan Dokumen Rusak Karena Banjir”, Jurnal Informatika Universitas Muria Kudus Awcock. G.J., and Thomas. R., “Applied Image Processing”, McGraw-Hill, New York, 1996. Chui, C. K., 1997 “Wavelets: A Mathematical Tool forSignal Analysis”, SIAM Daubechies. I., 1995, “Ten Lectures on Wavelets”, Capital City Press, Montpelier, Vermont. Fausett. L., 1994, “Fundamentals of Neural Networks: Architectures, Algorithms, and Applications”, Prentice-Hall, New Jersey. Firebaugh. M.W., 1988, Artificial Intelligence A Knowledge Based Approach,PWS Kent Publishing Company, Boston Gopinath. R. A., Burrus. C. S., dan Guo. H., 1998, “Introduction to Wavelets and Wavelets Transform”, Prentice-Hall International Inc. Kusworo. A., 2002, “ Ekstraksi Ciri Berbasis Filter Gabor sebagai Sistem Verifikasi Maltoni. D., Maio. A.K., Jain. S, 2003, “Handbook of Fingerprint Recognition”, Springer, New York Nurliani, Lulu, Sarifuddin, Michel,”Pengkodean entuk Segmen Menggunakan Kode Rantai Sebagai Dasar Pengenalan Bentuk Karakter Tulisan Tangan Secara OnLine”, Jurusan Teknik Mesin dan Industri FT UGM, 2009. Resmana Lim., “Pengenalan Karakter Tulisan Tangan Menggunakan Ekstraksi Fitur PCA & LDA”,Jurnal Teknik Elektro Universitas Kristen Petra. Rinaldi Munir, “Algoritma dan Pemrograman dalam Bahasa Pascal dan C”, Informatika Bandung. Sudrajat, 2008, Dasar-dasar Fuzzy Logic, Universitas Padjajaran.
46