BAB II LANDASAN TEORI 2.1 Pengenalan Teori Proses utama dari pengenalan arater adalah menerima arater input dan memerisa apaah hasil input tersebut sesuai dengan salah satu arater yang ada. Bagian yang paling penting dari seluruh proses adalah mengenali arater dengan ciri-ciri tertentu. Ciri-ciri dari sebuah arater harus mengandung informasi yang diperluan untu membedaan arater tersebut dan harus membedaan penyimpanan variabel etian input, untu membatasi umlah dari pembelaaran data yang diberian. 2.2 Pengenalan Karater Huruf Arab Huruf Arab adalah huruf-huruf yang digunaan dalam Al-Quran. Huruf Arab umlahnya ada 29, yaitu : Tabel 2.1 Daftar Huruf Arab Huruf Latin Huruf Arab Huruf Latin Huruf Arab Huruf Latin Huruf Arab Qaf(Qof) Kaf Lam ق Zai ز Alif ا ك Sin س Ba ب ل Syin ش Ta ت Mim م Shad(Shod) ص Tsa ث Nun ن Dhad(Dhod) ض Jim ج
Wau و Tha(Tho) ط H a(tipis) ح Ha(tebal) ه Zha(Zho) ظ Kha(Kho) خ Ham zah ء Ain ع Dal د Ya ي Ghain غ Dzal ذ Fa ف Ra(Ro) ر 2.3 Teori Dasar Pengolahan Citra 2.3.1 Citra Definisi citra menurut amus Webster adalah suatu representasi, emiripan, atau imitasi dari suatu obye atau benda. Citra dapat dielompoan menadi citra tampa dan citra ta tampa. Contoh citra tampa adalah foto diri ita sendiri, sedangan contoh citra ta tampa adalah data gambar dalam file (citra digital) dan citra yang direpresentasian dalam sebuah fungsi matematis. Diantara enis-enis citra tersebut, hanya citra digital yang dapat diolah menggunaan omputer. Citra merupaan suatu fungsi ontinyu dari intensitas cahaya dalam bidang dua dimensi, dengan (x,y) menyataan oodinat citra dan nilai f pada oodinat (x,y) menyataan tingat ecerahan atau deraat eabuan. Citra digital merupaan array dua dimensi dengan nilai f(x,y) nya telah dionversi e dalam bentu disrit bai pada oordinat citra maupun ecerahannya. Pengolahan citra secara umum dapat didefinisian sebagai
pemrosesan sebuah gambar dua dimensi secara digital. Pengolahan citra merupaan proses pengolahan dan analisis citra yang banya melibatan presepsi visual. Proses ini mempunyai data masuan dan informasi eluaran yang berbentu citra. Operasi pengolahan citra digital umumnya dilauan dengan tuuan memperbaii ualitas suatu gambar sehingga dapat dengan mudah diinterpretasian oleh mata manusia dan untu mengolah informasi yang terdapat pada suatu gambar untu eperluan pengenalan obe secara otomatis. 2.3.1.1 Operasi Pengolahan Citra Pengolahan citra pada dasarnya dilauan dengan cara memodifasi setiap titi dalam citra tersebut sesuai dengan eperluan. Secara garis besar, modifiasi tersebut dielompoan menadi: 1. Operasi titi, dimana setiap titi diolah secara tida gayut terhadap titi yang lain. 2. Operasi global, dimana arateristi global dari citra digunaan untu memodifiasi nilai setiap titi. 3. Operasi berbasis bingai, dimana setiap citra diolah dengan diombinasian dengan citra lain. 4. Operasi Geometri, dimana bentu uuran, atau orientasi citra dimodifiasi secara geometris. 5. Operasi banya titi bertetangga, dimana data dari titi-titi yang bersebelahan dengan titi yang ditinau iut berperan dalam mngubah nilai.
6. Operasi morfologi, yaitu operasi yang berdasaran segmen atau bagian dalam citra yang menadi perhatian. 2.3.1.2 Komponen Citra Digital Secara umum setiap citra digital memilii beberapa arateristi atau omponen, atara lain 1. Uuran citra 2. Resolusi 3. Format citra 2.3.1.3 Representasi Citra Digital Komputer dapat mengolah isyarat-isyarat eletroni digital yang merupaan umpulan sinyal biner. Untu itu, citra digital harus mempunyai format tertentu yang sesuai sehingga dapat merepresentasian obye pencitraan dalam bentu ombinasi data biner. Format citra digital yang masih banya dipaai adalah 1. Citra biner 2. Sala Keabuan 3. Warna 4. Warna berindes
2.3.1.4 Citra Biner Pada citra biner, setiap nilai bernilai 0 atau 1, maing-masing merepresentasian warna tertentu. Contoh yang paling lazim adalah hitam bernilai 0, dan putih bernilai 1. 2.3.1.5 Citra Sala Keabuan Disebut sala eabuan arena pada umumnya warna yang dipaai adalah antara hitam sebagai warna minimal dan putih sebagai warna masimal, sehingga warna diatara eduannya adalah abu-abu. Namun dalam pratenya warna yang dipaai tida terbatas pada warna abu-abu, sebagai contoh dipilih warna minimalnya adalah putih dan warna maimalnya adalah merah, maa semain besar nilainya semain besar pula intensitas warna merahnya. 2.3.1.6 Citra Warna Pada citra warna, setiap titi mempunyai warna yang spesifi yang merupaan ombinasi dari tiga warna dasar, yaitu merah, hiau dan biru. Format citra ini sering disebut citra RGB. Setiap warna dasar mempunyai intensitas sendiri dengan nilai masimum 255 (8 bit). Jumlah ombnasi warna yang mungin untu format citra ini adalah 2 24 atau lebih dari 16 uta warna, dengan demiian bisa dianggap mencaup semua warna yang ada, hal inilah format ini dinamaan true color.
2.3.1.7 Citra Warna Berindes Jumlah memori yang dibutuhan untu format citra warna true color adalah tiga ali umlah titi yang ada dalam citra yang ditinau. Di lain piha, umlah warna yang ada dalam suatu citra teradang sangat terbatas, arena banyanya warna dalam sebuah citra tida mungin melebihi banyanya titi dalam citra itu sendiri. Dengan asus seperti ini, disediaan format citra warna berindes. Pada format ini, informasi setiap titi merupaan indes dari suatu tabel yang berisi informasi warna yang tersedia, yang disebut palet warna atau color map. 2.3.2 Histogram Jumlah dan Selisih Testur, dalam citra digital, dinyataan sebagai hubungan spasial atau penyusunan spasial dari pisel-pisel citra. Secara visual hubungan spasial atau penyusunan spasial pisel-pisel citra tersebut dapat dilihat sebagai perubahan pola intensitas (gray tones). Testur dapat digunaan untu mendejurnalan array secara dua dimensi yang merupaan variasi-variasi dari e lemen-elemen testur. T estur uga mendejurnalan aturan aturan penempatan maupun pengaturan ara antar elemen testur tersebut yang dapat aca maupun mempunyai pola berulang. Salah satu aspe yang harus diperhatian dari sebuah testur adalah distribusi spasial dan etergantungan secara spasial antar deraat eabuan pada suatu daerah loal. Distribusi dan etergantungan secara spasial tersebut dapat ditinau dengan pendeatan secara statisti, yaitu dengan menggunaan
pendeatan co-occurrence Pendeatan co-occurrence berdasaran pada distribusi probabilitas hubungan antar pisel bertetangga. Pendeatan co-occurance ini dapat diimplementasian dengan membentu matris oouransi deraat eabua yang emudian diembangan menadi histogram umlah dan selisih oleh Unser pada tahun 1986. Histogram umlah S dibentu sebagai hasil umlah deraat eabuan dua pisel yang terpisah pada ara dx dan dy. Histogram umlah menyataan banyanya emunculan (freuensi) hasil umlah tingat eabuan dua pisel bertetangga pada ara dan sudut tertentu. Histogram selisih D dibentu sebagai hasil selisih deraat eabuan antara pisel yang terpisah pada ara dx dan dy. Histogram selisih menyataan banyanya emunculan (freuensi) hasil selisih tingat eabuan dua pisel bertetangga pada ara dan sudut tertentu, sehingga histogram yang dihasilan aan memilii selang nilai antara -255 sampai +255 untu citra 8 bit. Kedua histogram tersebut emudian dinormalisasi dengan cara membagi setiap elemen dengan total umlah semua elemen array pada maingmasing histogram sehingga dihasilan suatu probabilitas Ps dan Pd. Ps adalah histogram umlah yang ternormalisai, sedangan Pd adalah histogram selisih yang sudah ternormalisasi. Dari edua histogram ini emudian dapat diturunan 8 macam descriptor fitur yang dapat merepresentasian citra digital 2 dimensi edalam bentu vector.
2.4 Jaringan Syaraf Tiruan Jaringan syaraf tiruan (artificial neural networ) atau disingat JST adalah sistem omputasi dimana arsitetur dan operasi diilhami dari pengetahuan tentang sel syaraf biologi didalam ota. JST dapat digambaran sebagai model matematis dan omputasi untu fungsi aprosimasi nonlinear, lasifiasi data, cluster dan regresi non parametric atau sebagai sebuah simulasi dari olesi model syaraf biologi. JST menyerupai ota manusia dalam 2 (dua) hal, yaitu : a) Pengetahuan diperoleh aringan melalui proses belaar. b) Keuatan hubungan antar sel syaraf (neuron) yang dienal sebagai bobotbobot sinapti digunaan untu menyimpan pengetahuan. 2.4.1 Arsitetur (Model) JST Dalam JST ada beberapa model yang digunaan, antara lain : 2.4.1.1 Jaringan dengan lapisan tunggal (Single Layer Net) Jaringan dengan lapisan tunggal hanya memilii satu lapisan dengan bobot-bobot terhubung. Jaringan ini hanya menerima input emudian secara langsung aan mengolahnya menadi output tanpa harus melalui lapisan tersembunyi. 2.4.1.2 Jaringan dengan banya lapisan (Multilayer Net) Dalam model ini sebenarnya merupaan model JST satu lapisan yang umlahnya banya dan prinsip era dari model JST ini sama dengan JST satu
lapisan. Output dari tiap lapisan sebelumnya dalam model ini merupaan input dari lapisan sebelumnya. 2.4.1.3 Jaringan dua lapisan dengan umpan bali Dengan umlah neuron yang sangat besar, JST memilii sifat yaitu fault tolerance. Sifat ini mengandung masud erusaan sediit atau sebagian pada selsel dalam aringan tida aan mempengaruhi output yang aan dieluaran. Jaringan dua lapisan ini mempunyai sifat umpan bali, sehingga output yang dihasilan aan mempengaruhi input yang aan masu lagi edalam aringan syaraf tersebut. 2.5 Komponen JST Dengan mengambil ide dari aringan syaraf manusia, omponen-omponen pada JST adalah : a) Neuron Tiruan (Artificial Neuron) JST disusun oleh unit dasar yang disebut neuron tiruan yang merupaan elemen pemrosesan dalam aringan, dimana semua proses perhitungan dilauan disini. b) Lapisan (layer) JST disusun oleh umpulan neuron yang berhubungan dan diielompoan pada lapisan-lapisan (layer). Terdapat tiga lapisan, yaitu : lapisan masuan (input layer), lapisan tersembunyi (hidden layer), dan lapisan eluaran (output layer).
c) Masuan (Input) JST hanya dapat memroses data masuan berupa data numeri. Sehingga apabila masalah melibatan data ualitatif seperti grafi, image, sinyal atau suara, data harus ditransformasian dulu edalam data numeri yang euivalen sebelum dapat diproses oleh JST. d) Keluaran (Output) Keluaran dari JST adalah pemecahan terhadap masalah. Data eluaran merupaan data numeri. e) Bobot (Weight) Bobot pada JST menyataan tingat epintaran sistem. Walaupun sebenarnya bobot tersebut hanya sebuah deretan anga-anga saa. Bobot sangat penting untu JST, dimana bobot yang optimal aan memunginan sistem meneremahan data masuan secara benar dan 2.6 Fungsi Ativasi JST 1. Fungsi Unda Biner Jaringan dengan lapisan tunggal sering menggunaan fungi unda biner untu mengonversian input dari suatu variable yang bernilai ontinu e suatu output biner (0 atau 1). Fungsi unda biner dirumusan sebagai beriut : 0, iax < 0 y = (2.1) 1, iax 1
Gambar 2.1 Fungsi atifasi Unda Biner 2. Fungsi Bipolar Fungsi bipolar sebenarnya hampir sama dengan fungsi unda biner, hanya saa output yang dihsailan berupa 1 atau -1 Fungsi bipolar dirumusan sebagai beriut : 1, iax 0 y = (2.2) 1, iax < 0 3. Fungsi Linear Gambar 2.2 Fungsi atifasi Bipolar Fungsi linear mempunyai output yang sama dengan nilai inputnya. Fungsi linear dirumusan sebagai beriut : y = x (2.3)
Gambar 2.3 Fungsi atifasi Linear 4. Fungsi Sigmoid Biner Fungsi ini digunaan untu JST yang dilatih dengan menggunaan metode bacpropagation. Fungsi sigmoid biner mempunyai nilai antara 0 sampai 1. Oleh arena itu, fungsi ini sering digunaan untu JST yang membutuhan nilai output yang terleta pada interval 0 sampai 1. Fungsi sigmoid biner dirumusan sebagai beriut: y = 1 f ( x) = (2.4) σx 1+ e dengan : f '( x) = ω f ( x)[1 f ( x)] (2.5) Gambar 2.4 Fungsi atifasi Sigmoid Biner
5. Fungsi Sigmoid Bipolar Fungsi sigmoid bipolar hampir sama dengan fungsi sigmoid biner, hanya saa output dari fungsi ini memilii range antara 1 sampai -1. Fungsi sigmoid bipolar dirumusan sebagai beriut : y x 1 e f ( x) = (2.6) x 1+ e dengan: f '( x) = σ [1 + f ( x)][1 f ( x)] (2.7) 2 Gambar 2.5 Fungsi atifasi Sigmoid Bipolar 2.7 Lau Pembelaaran (Learning rate) Lau pembelaaran berfungsi untu memperecil perubahan bobot. Jia nilai lau pembelaaran dimulai dengan nilai yang besar maa banya perhitungan terhadap nilai bobot dan error aan besar. Jia perubahan-perubahan dilauan secara terus-menerus nilai lau pembelaaran yang besar emunginan membuat sistem menadi lambat, tetapi ia perubahan lau pembelaaran dilauan dengan perubahan yang ecil maa ecepatan dari sistem memunginan lebih cepat.
2.8 Bacpropagation Bacpropagatin merupaan algoritma pembelaaran yang terawasi dan biasanya digunaan oleh perceptron dengan banya lapisan untu mengubah bobot-bobot yang terhubung dengan neuron-neuron yang ada pada lapisan tersembunyinya. Pelatihan sebuah aringan yang menggunaan bacpropagation terdiri dari 3 langah, yaitu : pelatihan pola input secara feedforward, perhitungan dan bacpropagation dari umpulan esalahan dan penyesuaian bobot. Sesudah pelatihan, apliasi dari aringan hanya terdiri dari fase feedforward. Bahan, ia pelatihan menadi lambat, sebuah aringan yang dilatih dapat menghasilan outputnya sendiri secara cepat. Arsitetur aringan bacpropagation seperti terlihat dalam gambar 2.6. Pada gambar 2.6 aringan terdiri atas unit(neuron) pada lapisan input yaitu x 1, x 2, x 3, satu lapisan tersembunyi dengan dengan 2 neuron, yaitu z 1 dan z 2, serta 1 lapisan output yaitu y. Bobot yang menghubungan antara lapisan input dan lapisan tersembunyi adalah v 11, v 21, v 31 (v i bobot yang mengandung input e-i e neuron e- pada lapisan tersembunyi).
Gambar 2.6 Arsitetur aringan bacpropagation Algoritma bacpropagation : 1. Inisialisasian bobot (ambil bobot awal dengan nilai random yang ecil) 2. Keraan langah-langah beriut selama ondisi berhenti bernilai FALSE : a. Untu tiap-tiap pasang elemen yang aan dilauan pembelaaran, eraan : Feedfoward : 1. Tiap-tiap unit input (X, i i = 1,2,3,..., n ) menerima sinyal x dan i menerusan sinyal tersebut e semua unit pada lapisan yang ada di atasnya (lapisan tersembunyi) 2. Tiap-tiap unit tersembunyi (Z, = 1,2,3,..., p ) menumlahan sinyalsinyal input terbobot : z _ in = v o + n i= 1 x v i i gunaan fungsi ativasi untu menghitung sinyal outputnya :
z = f ( z _ in ) dan iriman sinyal tersebut e semua unit di lapisan atasnya (unit-unit output). 3. Tiap-tiap unit output (Y, = 1,2,3,..., m ) menumlahan sinyal-sinyal input terbobot. y _ in = w 0 + p i= 1 z w i gunaan fungsi ativasi untu menghitung sinyal outputnya : y = f ( y _ in ) dan iriman sinyal tersebut e semua unit di lapisan atasnya (unit-unit output) Bacpropagation 4. Tiap-tiap unit output (Y, = 1,2,3,..., m ) menerima target pola yang berhubungan dengan pola input pembelaaran, hitung informasi errornya : δ = ( t y ) f ( y _ in ) emudian hitung oresi bobot (yang nantinya aan digunaan untu memperbaiinya nilai w ) : w = αδ z hitung uga oresi bias (yang nantinya aan digunaan untu memperbaii nilai w ) : 0 w 0 = αδ iriman δ ini e unit-unit yang ada di lapisan bawahnya.
5. Tiap-tiap unit tersembunyi (Z, = 1,2,3,..., p ) menumlahan delta inputnya (dari unit-unit yang berada pada lapisan di atasnya) : m δ _ in = δ w = 1 alian nilai ini dengan turunan dari fungsi ativasinya untu menghitung informasi error : δ = δ _ in f '( z _ in ) emudian hitung oresi bobot (yang nantinya aan digunaan untu memperbaii nilai v i ) : v = αδ x i hitung uga oresi bias (yang nantinya aan digunaan untu memperbaii nilai v 0 ) : v 0 = αδ 6. Tiap-tiap unit output (Y, =1,2,3,,m) memperbaii bias dan bobotnya (=0,1,2,,p) : w ( baru) = w ( lama) + w Tiap-tiap unit tersembunyi (Z bobotnya (i=0,1,2,,n) :, =1,2,3,,p) memperbaii bias dan v ( baru) = v ( lama) + v i i i b. Tes ondisi berhenti.
2.9 UML (Unified Modeling Language) Merupaan notasi-notasi bau untu melauan pemodelan visual. Pemodelan visual merupaan proses penggambaran informasi-informasi secara grafis. Notasi-notasi UML terbentu atas erasama dan upaya Graddy Booch, DR. James Rumbaugh, serta Ivar Jacobson. Gambar 2.7 Beberapa notasi UML Beberapa notasi UML yang sering digunaan antara lain ditunuan pada Gambar 2.7. Ator merupaan entitas yang berada di luar sistem; bersifat esternal. Salah satu ator sistem adalah pengguna (user). Use case berfous pada perilau sistem, misalnya use case Pengatifan Sistem. Kelas merupaan prototipe suatu obe sehingga memilii atribut (variabel) dan operasi (fungsi atau prosedur). Dalam UML terdapat beberapa enis diagram yang dapat digunaan dalam pemodelan sistem, diantaranya adalah: 1. Activity Diagram. Bersifat dinamis, memodelan fungsi-fungsi dalam suatu sistem dan meneanan pada aliran endali antar obe. 2. Use Case Diagram. Bersifat statis, menggambaran hubungan (relation) antara ator dan use case.
3. Sequence Diagram. Bersifat dinamis, merupaan diagram interasi yang meneanan pada pengiriman pesan (message) secara berurutan berdasaran watu. 4. Class Diagram. Bersifat statis, menggambaran himpunan elas-elas, antarmua dan relasi antar elas.