• Tidak ada hasil yang ditemukan

Pengenalan Pola Nomor Kenderaan dengan Menggunakan Jaringan Syaraf Tiruan Algoritma Pembelajaran Backpropagation

N/A
N/A
Protected

Academic year: 2016

Membagikan "Pengenalan Pola Nomor Kenderaan dengan Menggunakan Jaringan Syaraf Tiruan Algoritma Pembelajaran Backpropagation"

Copied!
82
0
0

Teks penuh

(1)

BACKPROPAGATION

SKRIPSI

BAYU ANDHIKA 100803073

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKADAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(2)

BACKPROPAGATION

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains

BAYU ANDHIKA 100803073

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKADAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(3)

JUDUL : PENGENALAN POLA PLAT KENDARAAN DENGAN JARINGAN SYARAF TIRUAN ALGORITMA

PEMBELAJARAN BACKPROPAGATION KATEGORI :SKRIPSI

NAMA :BAYU ANDHIKA

NIM :100803073

PROGRAM STUDI :MATEMATIKA

FAKULTAS :MATEMATIKA DAN ILMU PENGETAHUAN ALAM

Diluluskan di Medan, Juli 2014

Komisi Pembimbing :

Pembimbing I Pembimbing II

Drs. Marihat Situmorang,M.Kom. Drs. Suyanto, M.Kom. NIP. 196312141989031001 NIP. 195908131986011002

Diketahui / disetujui oleh Departemen Matematika Ketua

(4)

PENGENALAN POLA PLAT KENDARAAN DENGAN JARINGAN SYARAF TIRUAN ALGORITMA PEMBELAJARAN BACKPROPAGATION

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya

Medan, Juli 2014

(5)

Alhamdulillah, puji dan syukur penulis panjatkan kehadirat Allah SWT, serta shalawat dan salam kepada junjungan kita nabi Muhammad SAW, karena atas berkah, rahmat dan hidayahnya penulis dapat menyelesaikan penyusunan skripsi ini. Ucapan terima kasih yang tidak terhingga kepada Allah SWT yang selalu membimbing dan mengajarkan saya pentingnya kesabaran dan tanggung jawab selama penyusunan skripsi ini.

Dalam menyelesaikan skripsi ini penulis menyadari banyak mendapatkan bantuan dari berbagai pihak baik bantuan secara materi maupun moril. Pada kesempatan ini dengan segala kerendahan hati, penulis ingin mengucapkan terima kasih yang sedalam-dalamnya kepada:

1. Drs. Marihat Situmorang,M.Kom. selaku pembimbing I dan Drs.Suyanto,M.Kom. selaku pembimbing II yang telah banyak memberi masukan terhadap penulisan ini.

2. Drs. James P. Marbun,M.Kom. dan Dra.Normalina Napitupulu,M.Sc. selaku pembanding.

3. Prof.Dr.Tulus,M.Si. selaku Ketua Departemen Matematika dan Dr.Mardiningsih,M.Si. selaku Sekretaris Departemen Matematika.

4. Dr.Sutarman,M.Sc. selaku Dekan FMIPA USU

5. Kedua orang tua penulis, Aditya Dharma dan Dewiana,S.Pd. yang telah memberikan dukung moril dan materil.

6. Teman-teman sejawat angkatan 2010.

(6)

ABSTRAK

Tulisan ini akan membahas tentang bagaimana cara sistem membaca pola data yang berupa citra plat nomor kendaraan dengan menggunakan Jaringan Syaraf Tiruan Algoritma Backpropagation. Ada beberapa parameter yang akan menjadi acuan dalam proses. Yaitu banyaknya node pada lapisan tersembunyi, laju pembelajaran dan momentum.

(7)

ABSTRACT

This paper will discuss how the system reads the data pattern in from of license plate image by using backpropagation neural network algorithm. There are several

parameters that will be a benchmark in process. That is number of hidden layer, learning rate, dan momentum.

(8)

Halaman

Halaman Judul ii

Persetujuan iii

Pernyataan iv

Penghargaan v

Abstrak vi

Abstrack vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xii

Bab I Pendahuluan

1.1 Latar Belakang 1

1.2 Identiikasi Masalah 1

1.3 Tujuan dan Manfaat Penelitian 2

1.3.1 Tujuan Penelitian 2

1.3.2 Manfaat Penelitian 2

1.4 Pembatasan Masalah 2

1.5 Sitematika Penulisan 3

Bab II Landasan Teori

2.1 Pengertian Citra 4

2.2 Pengenalan Pola 5

2.3 Pengolahan Citra Digital 7

2.3.1 Binarization (Thresholding) 8 2.3.2 Penghilangan Noise (Noise Reduction) 9

(9)

2.3.6 Segmentasi 17 2.4 Jaringan Saraf Tiruan (JST) 19 2.4.1 Konsep dasar jaringan syaraf tiruan 20

2.4.2 Model syaraf (neuron) 21

2.4.3 Fungsi Aktivasi dan Error 22

2.4.4 Proses Belajar 24

2.4.5 Propagasi Balik 25

2.4.5.1 Arsitektur Propagasi Balik 25 2.4.5.2 Jumlah Lapisan Tersembunyi 26 2.4.5.3 Jumlah Neuron di Lapisan Tersembunyi 26

2.4.5.4 Algoritma 27

2.4.6 Optimalitas Arsitektur Backpropagation 31

2.5 DFD 32

2.6 Plat Nomor Kendaraan 34

Bab III Analisis dan Perancangan Sistem

3.1 Analisis Data Sistem 35

3.1.1 Prapengolahan Citra 36

3.1.1.1 Pembentukan Matriks Biner (Binarization) 36 3.1.1.2 Penghilangan Noise (Noise Reduction) 37

3.1.1.3 Cropping 37

3.1.1.4 Scalling 38

3.1.1.5 Ekstraksi Ciri (Feature Extraction) 38

3.1.1.6 Segmentasi 39

3.1.2 Fase Pelatihan Jaringan Saraf Tiruan Propagasi Balik 40 3.1.3 Fase Pengujian Jaringan Saraf Tiruan Propagasi Balik 41

(10)

3.2.3 Proses Pengujian 46 Bab IV Hasil dan Pengujian

4.1 Pembuatan Sistem 48

4.1.1 Proses Pembelajaran 48

4.1.2 Proses Pengenalan 55

Bab V

5.1 Kesimpulan 60

5.2 Saran 60

Daftar Pustaka 61

(11)

No Tabel

Judul Halaman

3.1 Vektor output dan taget keluar jaringan 43

4.1 Hasil Laju Paameter 54

4.2 Pola Karakter 57

(12)

No Judul Halaman 2.1 Representasi sistem koordinat citra 7 2.2 Representasi piksel citra dan ketetanggaannya 9

2.3 Representasi citra derau 10

2.4 (a) Pola awal 12

2.4 (b) Pola hasil thinning 12

2.5 Contoh feature extraction dengan pixel mapping 15 2.6 Citra berukuran 32x32 yang terbagi menjadi daerah 8x8 16 2.7 Citra berukuran 32x32 piksel setelah dikompresi menjadi

8x8

16

2.8 (a) Citra asli 18

2.8(b) Histogram horizontal 18

2.8(c) Histogram vertikal 18

2.9 Model Nonlinear neuron 22

2.10 Komponen DFD 33

3.1 Tahapan Pengolan citra 36

3.2 Citra hasil binerization 36

3.3 Citra hasil proses penghilangan noise 37

3.4 Citra plat kendaraan bermotor 40

3.5 Arsitektur Jaringan Syaraf tiruan propagasi balik 42 3.6 Flowchart pelatihan JST Propagasi balik 45 3.7 Flowchart pengenalan JST Propagasi balik 46

4.1 Listing Fungsi deteksi batas baris 49

4.2 Listing fungsi deteksi batas kolom 50

(13)

ABSTRAK

Tulisan ini akan membahas tentang bagaimana cara sistem membaca pola data yang berupa citra plat nomor kendaraan dengan menggunakan Jaringan Syaraf Tiruan Algoritma Backpropagation. Ada beberapa parameter yang akan menjadi acuan dalam proses. Yaitu banyaknya node pada lapisan tersembunyi, laju pembelajaran dan momentum.

(14)

ABSTRACT

This paper will discuss how the system reads the data pattern in from of license plate image by using backpropagation neural network algorithm. There are several

parameters that will be a benchmark in process. That is number of hidden layer, learning rate, dan momentum.

(15)

BAB I

PENDAHULUAN

1.1 LATAR BELAKANG

Nomor polisi kendaraan bermotor merupakan cirri atau tanda pengenal dari suatu

kendaraan yang diberikan oleh kepolisian. Setiap kendaraan bermotor (semuajenis)

memiliki nomor yang berbeda-beda. Bahkan setiap daerah memiliki kode nomor polisi yang

berbeda-beda. Nomor polisi setiap kendaraan biasanya dicantumkan pada sebuah plat.

Pengenalan nomor polisi yang tercantum pada plat setiap kendaraan biasanya dilakukan

secara manual (dilihat dan dicatat). Salah satu praktiknya adalah pencatatan nomor

kendaran di area parkir. Hal ini melibatkan petugas (manusia), yang memungkinkan

terjadinya kesalahan dalam hal pencatatan.

Pengenalan plat nomor kendaraan adalah salah satu solusi untuk mengatasi

kesalahan-kesalahan. Salah satu cara yaitu mengenali pola plat nomor kendaraan yaitu

menggunakan Jaringan Syaraf Tiruan dengan merepresentasikan plat nomor kendaraan

dalam bentuk citra digital.

Algoritma pelatihan Backpropagation adalah salah satu algoritma pada Jaringan Syaraf Tiruan yang cukup popular. Beberapa keunggulan Algoritma Backpropagation yaitu:

1. Memiliki sifat pembelajaran, sehingga dapat mengurangi tingkat kesalahan.

2. Mampu melakukan pengadapsian terhadap pengenalan suatu objek

3. Perangkat yang mempunyai toleransi terhadap suatu objek

(16)

Yang menjadi permasalahan dalam skripsi ini adalah bagaimana proses pengenalan nomor

kendaraan dengan menggunakan Jaringan Syaraf Tiruan Algoritma Backpropagation. Secara umum, Algoritma Backpropagation merupakan salah satu model JST yang memiliki sifat pelatihan. Yaitu dengan mempelajari perhitungan-perhitungan sebelumnya dalam memperkecil nilai kesalahan selama proses.

1.3 Tujuan dan Manfaat Penelitian

1.3.1 Tujuan Penelitian

Adapun tujuan penelitian ini adalah menunjukkan bagaimanacara Algoritma

Backpropagation ini dalam mengenali pola data yang diproses.

1.3.2 Manfaat Penelitian

Hasil penelitian diharap kan memiliki manfaat,diantaranya:

1. Memberi tambahan untuk melengkapi sistem pengamanan parkir yang sudah menggunakan sistem otomatis

2. Memperbanyak literature tentang Jaringan Syaraf Tiruan Algoritma

Backpropagation

1.4 Pembatasan Masalah

Dalam penelitiaini, penulis membatasi masalah sebagai berikut :

1. Data yang diolah berasal dari citradengan format file bmp dan jpg

2. Citra dibatasi pada plat yang berwarna dasar hitam dan tulisan berwarna putih.

3. Karakter yang dikenali adalah huruf Alphabet (A sampai Z) huruf besar semua, serta angka (0 sampai 9)

(17)

1.5 Sistematika Penulisan

Untuk pembahasan mengenai realisasi tugas akhir ini dijelaskan berdasarkan sistematika sebagai berikut :

• BAB I Pendahuluan

Bab pendahuluan yang berisi tentang latar belakang, permasalahan dan batasan masalah, tujuan, metodologi sertas istematika pembahasan penulisan skripsi ini.

• BAB II Landasan Teori

Membahas mengenai teori penunjang yang akan digunakan dalam penyelesaian tugas akhirini yang sesuai dengan perencanaan dan pembuatan system pembacaan plat nomor kendaraan.

• BAB III Metodologi Penelitian

Membahas mengenai perencanaan penelitian dan tahap-tahap penelitian.

• BAB IV Hasil dan Pembahasan

Berisi data hasil pembuatan system dan proses pengujian. Kemudian melakukan analisa dari hasil pengujian.

• BAB V Penutup

(18)

BAB II

LANDASAN TEORI

Pada bab ini akan membahas landasan atas teori-teori yang bersifat ilmiah untuk mendukung penulisan skripsi ini. Teori-teori yang dibahas mengenai pengenalan pola, pengolahan citra, jaringan saraf tiruan propagasi balik, dan beberapa subpokok pembahasan lainnya yang menjadi landasan dalam penulisan skripsi ini.

2.1 Pengertian Citra

Citra merupakan informasi yang secara umum tersimpan dalam bentuk pemetaan bit-bit atau sering dikenal dengan bitmap. Setiap bit-bit membentuk satu titik informasi yang dikenal dengan piksel. Satu piksel merupakan satu titik citra yang terdiri dari satu atau beberapa bit informasi. Satuan dari piksel biasanya dinyatakan dengan posisi x, posisi y dan nilai dari piksel (warna atau gray). Dalam satu bidang gambar, sepenuhnya terdiri dari piksel-piksel. Karena itu, file yang menyimpan citra biasa disimpan dengan nama BMP. Untuk mengurangi ukuran dari file, biasanya file citra dimampatkan dengan menggunakan teknik tertentu, misal yang terkenal yaitu JPEG atau GIF.

(19)

Proses transformasi dari bentuk tiga dimensi ke bentuk dua dimensi untuk menghasilkan citra akan dipengaruhi oleh bermacam-macam faktor yang mengkibatkan penampilan citra suatu benda tidak sama persis dengan bentuk fisik nyatanya. Faktor-faktor tersebut merupakan efek degredasi atau penurunan kualitas yang dapat berupa rentang kontras benda yang terlalu sempit atau terlalu lebar, distorsi kekaburan (blur), kekaburan akibat objek citra yang bergerak (motion blur), noise atau gangguan yang disebabkan oleh interferensi peralatan pembuat citra berupa peralatan elektronik. Karena pengolahan citra digital dilakukan dengan komputer digital maka citra yang akan diolah terlebih dahulu ditransformasikan ke dalam bentuk besaran-besaran diskrit dari nilai tingkat keabuan pada titik-titik elemen citra.

Dalam image processing terdapat proses akuisisi citra digital yaitu proses yang sangat menentukan kualitas hasil dari proses pencitraan digital yang akan diperoleh. Agar proses akuisisi citra digital dapat terjadi diperlukan tiga komponen utama yang harus dipenuhi yaitu sumber cahaya, objek atau benda yang akan diamati, dan sensor berupa kamera itu sendiri. Prosesnya yaitu cahaya yang mengenai permukaan benda dipantulkan ke segala arah. Pantulan cahaya ini sebagian ditangkap oleh sensor peka cahaya pada kamera. Intensitas cahaya yang diterima oleh sensor representasikan kondisi objek. Sehingga citra digital yang diperoleh merupakan informasi tentang objek yang terbentuk dari pantulan cahaya atau refleksi pada permukaan objek.

2.2 Pengenalan Pola

(20)

Suatu sistem pengenalan pola melakukan:

1. Proses akuisisi data melalui sejumlah alat pengindraan atau sensor, 2. Mengatur bentuk representasi data,

3. Melakukan proses analisis dan klasifikasi data.

Tiga pendekatan pembuatan sistem pengenalan pola adalah Statistik (statistical), Sintaksis (syntactic) dan Jaringan Saraf Tiruan (neural network) (Schalkoff, 1992).

1. Statistik

Semakin banyak pola yang disimpan, maka sistem akan semakin cerdas. Salah satu contoh penerapannya banyak pada pola pengenalan iris scan. Kelemahannya: hanya bergantung pada data yang disimpan saja, tidak memiliki sesuatu struktur yang unik yang dapat menjadi kunci pengenalan pola.

2. Sintaksis (rule)

Dengan rule/aturan maka sistem yang lebih terstruktur sehingga memiliki sesuatu ciri yang unik. Salah satu contoh penerapannya pada pola pengenalan sidik jari (fingerprint).

3. Jaringan Saraf Tiruan (JST)

Merupakan gabungan dari pendekatan statistik dan pendekatan sintaks. Dengan gabungan dari dua metode maka JST merupakan pengenalan pola yang lebih akurat. Salah satu contoh penerapannya pada pola pengenalan suatu citra JST merupakan suatu sistem yang dapat memproses informasi dengan meniru cara kerja jaringan saraf otak manusia.

(21)

diasumsikan telah tersedia untuk melatih sistem.

Prapengolahan adalah transformasi input (masukan) data mentah untuk membantu kemampuan komputasional dan pencarian ciri serta untuk Mengurangi noise (derau). Pada prapengolahan citra (sinyal) yang ditangkap oleh sensor akan dinormalisasi agar citra menjadi lebih siap untuk diolah pada tahap pemisahan ciri. Kualitas ciri yang dihasilkan pada proses pemisahan ciri sangat bergantung pada hasil prapengolahan.

Klasifikasi merupakan tahap untuk mengelompokkan input data pada satu atau beberapa kelas berdasarkan hasil pencarian beberapa ciri yang signifikan dan pemrosesan atau analisis terhadap ciri itu. Setiap kelas terdiri dari sekumpulan objek yang memiliki kedekatan (kemiripan) ciri. (Munir, 2004; Putra, 2009).

2.3 Pengolahan Citra Digital

Citra atau gambar atau image merupakan suatu yang menggambarkan objek dan biasanya dalam bentuk dua dimensi. Citra merupakan suatu representasi kemiripan dari suatu objek atau benda. Citra digital didefinisikan sebagai representasi diskrit dari data spasial (tata letak) dan intensitas (warna) informasi (Solomon & reckon, 2011).

Citra digital merupakan citra yang telah disimpan dalam bentuk file sehingga dapat diolah dengan menggunakan komputer. Pengolahan citra digital adalah istilah umum untuk berbagai macam teknik yang ada untuk memanipulasi dan memodifikasi citra dalam berbagai cara. Gambar 2.1 merupakan representasi koordinat pada citra digital.

Widht (x)

height

( y )

(22)

Selanjutnya berdasarkan representasi sistem koordinat citra pada gambar 2.1 citra dapat direpresentasikan dalam bentuk matriks dua dimensi dimana kolom pada matriks merepresentasikan lebar (width) pada citra, dan baris pada matriks merepresentasikan tinggi (height) pada citra.

Selanjutnya berdasarkan representasi sistem koordinat citra pada gambar 2.1 citra dapat direpresentasikan dalam bentuk matriks dua dimensi dimana kolom pada matriks merepresentasikan lebar (width) pada citra, dan baris pada matriks merepresentasikan tinggi (height) pada citra.

�(�,�) =�

Untuk mempermudah proses pengolahan citra biasanya digunakan citra biner. Citra biner (binary image) merupakan citra dimana piksel-pikselnya hanya memiliki dua buah nilai intensitas, biasanya 0 dan 1, dimana 0 menyatakan warna latar belakang (backgraound) dan 1 menyatakan warna tinta/objek (foreground) atau dalam bentuk angka 0 untuk warna hitam dan angka 255 untuk warna putih.

2.3.1 Binarization (Thresholding)

Binarization digunakan untuk membedakan gambar text dengan latar belakang pada gambar huruf atau angka tersebut. Proses ini akan menghasilkan citra hitam putih yang bersih dari tingkat keabun (grayscale), atau dengan kata lain metode ini mengkonversi citra gray-level ke citra bilevel (binary image). Untuk mendapatkan citra grayscale digunakan persamaan (2.2) berikut:

(23)

dimana:

Igrayscale = citra grayscale

Icolour = citra RGB

(x,y) = koordinat citra

(x,y,c) = channel piksel pada kordinat (x,y), r Untuk merah, b untuk biru dan g untuk hijau

α, β, γ = koefisien

Pembobotan nilai koefisien (α, β dan γ) berdasarkan nilai dari respon mata manusia, biasanya ketiga nilai yang digunakan adalan 0.333 (Solomon & Breckon, 2011).

Setelah mendapatkan citra grayscale, citra biner dapat dibentuk dengan teknik thresholding. Jika g(x, y) adalah sebuah nilai ambang (threshold) batas dari f(x, y) yang terdapat pada gambar 2.2 dengan nilai threshold T. Nilai T digunakan untuk memisahkan antara object dengan background-nya, maka hasil threshold dapat ditulis sebagai berikut (Gonzales et al, 2004):

�(�,�) =�1 ; 0 ; � ≥ �< 2.2

2.3.2 Penghilangan Derau (Noise Reduction)

Penghilangan derau bertujuan untuk menghindari distorsi pada saat segmentasi. Metode yang digunakan untuk penghilangan derau adalah median filter (Efford, 2000). Metode ini menggantikan piksel (x,y) dengan nilai tengah piksel disekitarnya. Pada gambar 2.3 terdapat representasi dari piksel citra dan ketetanggaannya yang akan digunakan untuk proses penghilangan derau, dimana p1

(24)

P9 P8 P7 P5 P1 P3 P2 P4 P6

Gambar 2.2 Representasi piksel citra dan ketetangaannya

Median filter merupakan metode rank filtering yang umum digunakan, metode ini memilih nilai peringkat tengah (middle-ranked) dari sebuah ketetanggaan (neighbourhood) sebagai nilai keluaran. Untuk ketetanggaan 3x3, nilai tengahnya adalah nilai kelima dari daftar terurut nilai tingkat abu-abu. Untuk sebuah ketetanggaan , dengan bilangan ganjil, maka nilai tengah terdapat pada posisi.

Median filter sangat baik untuk meghilangkan beberapa jenis derau.

Gambar 2.4(a) menunjukkan citra dengan impulse noise acak mempengaruhi 5 persen dari piksel. Gambar 2.4(b) menunjukkan hasil penghalusan derau gambar dengan menggunakan median filter 3x3 .

( a ) (b)

Gambar 2.3 Representasi citra derau

Median filter dapat menghilangkan impulse noise dengan memeriksa perhitungan yang dilakukan pada ketetanggaan 3x3 secara tunggal dari suatu citra. Pada gambar 2.5 merupakan contoh nilai-nilai piksel citra yang akan dihilangkan deraunya dengan menggunakan ketetanggan 3x3 (didalam kotak).

Langkah-langkah median filter:

1. Misalkan matriks input m x n citra � = �

2 5 4 4 5 7 3 7 8

(25)

2. Kemudian tambahkan nilai 0 ke sekeliling matriks, sehingga didapatkan matris dengan ukuran 5x5 atau m+2 x n+2

3. Tambahkan window dengan ukuran 3x3. Mulai dari matriks A(1,1) letakkan

4. Nilai yang akan diganti adalah element tengah

5. Ulangi prosedur ini untuk semua nilai matriks input dengan menggeser

2.3.3 Cropping

Cropping pada pengolahan citra berarti memotong satu bagian dari citra

sehingga diperoleh citra yang diharapkan. Ukuran pemotongan citra tersebut berubah sesuai dengan ukuran citra yang diambil. Cropping dilakukan pada koordinat (x,y) sampaipada koordinat (m,n). Oleh karena itu, pertama kali yang harus lakukan adalah menentukan koordinat-koordinat tersebut. Penulis menyebutnya koordinat XL, YT, XR dan YB dimana x memiliki koordinat XL sampai

XR (XL < x < XR) dengan selang [XL, XR] dan y memiliki koordinat YT sampai YB

(YT < y < YB) dengan selang [YT, YB] didapat (XL, YT) adalah koordinat titik sudut

kiri atas dan (XR, YB) adalah koordinat titik sudut kanan bawah maka ukuran

pemotongan citra dapat dirumuskan sebagai berikut (Arief, 2010):

w’ = ( XR – XL ) – 1 2.3

h’ = ( YB –YC ) -1 2.4

dimana:

w’ = ukuran lebar citra hasil cropping h’ = ukuran tinggi citra hasil cropping

2.3.4 Thinning

(26)

mencari tulang dari sebuah objek (skeletonization). Thinning bertujuan untuk mengurangi ukuran dari suatu image (image size) dengan tetap mempertahankan informasi dan karakteristik penting dari image tersebut (Pardede, 2010).

Terdapat cukup banyak algoritma untuk image thinning dengan tingkat kompleksitas, efisiensi dan akurasi yang berbeda-beda. Citra yang digunakan untuk proses thinning adalah citra biner, jika data masukannya berupa citra RGB maka haruslah citra tersebut dimanipulasi menjadi citra grayscale, citra grayscale merupakan syarat guna menghasilkan suatu citra biner. Namun untuk mengubah citra grayscale menjadi citra biner dilakukan proses thresholding dahulu. Sehingga diperoleh citra threshold, jika citra threshold sudah diperoleh maka citra biner dapat dicari. Citra biner ini yang kemudian akan diproses dalam proses thinning. Citra hasil dari algoritma thinning biasanya disebut dengan skeleton (kerangka).

Umumnya suatu algoritma thinning yang dilakukan terhadap citra biner seharusnya memenuhi kriteria-kriteria sebagai berikut:

1. Skeleton dari citra kira-kira berada di bagian tengah dari citra awal sebelum dilakukan thinning.

2. Citra hasil dari algoritma thinning harus tetap menjaga struktur keterhubungan yang sama dengan citra awal.

3. Suatu skeleton seharusnya memiliki bentuk yang hampir mirip dengan citra awal.

(27)

( a) (b)

Gambar 2.4 (a) Pola awal (b) Pola hasil Thinning

Sebagian besar algoritma thinning merupakan algoritma yang besifat iteratif. Dalam sebuah penelusuran piksel sisi diperiksa berdasarkan beberapa kriteria untuk menentukan apakah suatu piksel sisi dihapus atau tidak. Banyaknya jumlah penelusuran yang terjadi dihitung berdasarkan jumlah loop (perulangan) yang terjadi. Ada beberapa jenis algoritma thinning yaitu sequential dan paralel. Jenis sequential menggunakan hasil dari penelusuran sebelumnya dan hasil yang didapatkan sejauh ini dalam penelusuran yang sekarang untuk memproses piksel yang sekarang. Jadi pada setiap ujung penelusuran sejumlah piksel telah diproses terlebih dahulu. Hasil ini dapat digunakan secepatnya untuk memproses piksel selanjutnya. Sedangkan jenis parallel, hanya hasil dari penelusuran sebelumnya yang mempengaruhi keputusan untuk menghapus suatu titik pada penelusuran yang sekarang.

Algoritma ZhangSuen adalah algoritma thinning untuk citra biner, dimana piksel background citra bernilai 0, dan piksel foreground (region) bernilai 1. Algoritma ini cocok digunakan untuk bentuk yang diperpanjang (elongated) dan dalam aplikasi OCR (Optical Character Recognition). Algoritma ini terdiri dari beberapa penelusuran, dimana setiap penelusurannya terdiri dari 2 langkah dasar yang diaplikasikan terhadap titik objek (titik batas) region. Titik objek ini dapat didefinisikan sebagai sembarang titik yang pikselnya bernilai 1, dan memiliki paling sedikit 1 piksel dari 8-ketetanggaannya yang bernilai 0.

(28)

p untuk dihapus jika semua kondisi ini dipenuhi:

pada langkah kedua, kondisi (a) dan (b) sama dengan langkah pertama, sedangkan kondisi (c) dan (d) diubah menjadi:

(c‟) p2 . p4 . p8 = 0;

(d‟) p2 . p6 . p8 = 0;

Langkah pertama dilakukan terhadap semua border pixel di citra. Jika salah satu dari keempat kondisi di atas tidak dipenuhi atau dilanggar maka nilai piksel yang bersangkutan tidak diubah. Sebaliknya jika semua kondisi tersebut dipenuhi maka piksel tersebut ditandai untuk penghapusan.

Piksel yang telah ditandai tidak akan dihapus sebelum semua border points selesai diproses. Hal ini berguna untuk mencegah perubahan struktur data. Setelah langkah 1 selesai dilakukan untuk semua border points maka dilakukan penghapusan untuk titik yang telah ditandai (diubah menjadi 0). Setelah itu dilakukan langkah 2 pada data hasil dari langkah 1 dengan cara yang sama dengan langkah 1 sehingga, dalam satu kali iterasi urutan algoritmanya terdiri dari:

1. Menjalankan langkah 1 untuk menandai border points yang akan dihapus,

2. hapus titik-titik yang ditandai dengan menggantinya menjadi angka 0, 3. menjalankan langkah 2 pada sisa border points yang pada langkah 1

(29)

Prosedur ini dilakukan secara iteratif sampai tidak ada lagi titik yang dapat dihapus, pada saat algoritma ini selesai maka akan dihasilkan skeleton dari citra awal (Zhang & Suen, 1984).

2.3.5 E kstraksi C iri (F eature E xtraction)

F eature extraction merupakan suatu metode untuk mendapatkan karateristik dari suatu citra (dalam hal ini citra tersebut merupakan suatu karakter berupa huruf dan angka). Dengan feature exktraction maka citra yang satu dengan yang lain dapat dibedakan dengan memperhatikan ciri yang terdapat pada citra itu sendiri. Beberapa metode feature extraction yang ada adalah sebagai berikut (Mulyo et al., 2004):

1.Pixel Mapping

Pixel mapping merupakan metode feature extraction yang sederhana. Metode ini merupakan kelanjutan proses thresholding, dimana suatu citra telah berubah warnanya menjadi hitam atau putih. Pixel mapping merupakan suatu pemetaan dari citra yang disimpan ke dalam array, dimana piksel yang berwana hitam mempunyai nilai 1 sedangkan piksel yang berwarna putih mempunyai nilai 0. Contoh dari penerapan pixel mapping dapat dilihat pada gambar 2.5.

{ 0 0 0 1 1 1 1 0 0 0; 0 0 1 1 0 0 1 1 0 0; 0 0 1 1 0 0 1 1 0 0; 0 0 1 1 0 0 1 1 0 0; 0 0 1 1 1 1 1 1 0 0; 0 1 1 0 0 0 0 1 1 0; 0 1 1 0 0 0 0 1 1 0; 1 1 0 0 0 0 0 0 1 1}

(30)

2. Image Compression

Pada metode ini citra dibagi menjadi nxn daerah. Misalkan input citra berukuran 32x32 piksel dan citra dibagi menjadi 8x8 daerah, dimana masing-masing daerah terdiri dari 4x4 piksel (gambar 2.8).

G ambar 2.6 C itr a ber ukur an 32 x 32 piksel yang ter bangi menjadi 8 x 8 daer ah

Pada gambar 2.6 terlihat bahwa citra asli yang berukuran piksel menjadi citra berukuran piksel, dimana setiap 1 pikselnya mewakili piksel citra asli. Dengan kata lain bahwa setiap daerah piksel dikompresi menjadi 1 nilai pixel.

G ambar 2.7 C itr a ber ukur an 32 x 32 piksel setelah dikompr esi menjadi 8 x 8

piksel

Pada gambar 2.7 terlihat bahwa setiap pixel mempunyai nilai feature extraction yang berbeda. Daerah-daerah tersebut mempunyai nilai antara 0 dan 1, hal tersebut dapat dilihat pada tingkat keabu-abuan warna tiap pikselnya. Untuk mencari nilai image compression dari tiap piksel, digunakan persamaan berikut:

(31)

dimana:

v = nilai image compression

M = jumlah piksel daerah dalam satu baris N = jumlah piksel daerah dalam satu kolom f(x,y) = jumlah binary pixel pada suatu posisi (x,y)

2.3.6 Segmentasi

Segmentasi digunakan untuk mendapatkan karakter dari suatu citra kata. Adapun metode segmentasi yang dipakai dengan menggunakan algoritma Heuristic (Lecolinet & Baret, 1994; Rodrigues & Gay Thome 2000). Metode dari algoritma segmentasi Heuristic berdasarkan terhadap sebuah konstruksi pengambilan keputusan dengan sistem tree dan berdasarkan pada penggunaan profil histogram yang telah tercipta dan diproporsikan oleh suatu kata.

Profil proyeksi merupakan sebuah struktur data yang digunakan untuk menyimpan sejumlah piksel yang bukan merupakan background ketika suatu citra diproyeksikan melalui sumbu X dan Y pada persamaan (2.6). Setiap sel dari vektor proyeksi dikaitan dengan jumlah piksel yang terletak di atas posisi threshold yang telah ditentukan, biasanya warna latar belakang (background) (persamaan (2.7)) dan (2.8)) sebuah proyeksi histogram alternatif mengambil rata-rata dari intensitas piksel yang terkait (Rodrigues & Gay Thome 2000).

�,� → �(�,�) 2.6

��= ∑ℎ=0,� ∈[0,�] 2.7

�� = ∑��=0�� ,� ∈[0,ℎ] 2.8

(32)

merepresentasikan ketinggian gambar (ukuran vertikal) untuk X atau lebar (ukuran horizontal) bagi Y dan v merepresentasikan ukuran dari gambar. Ide utama dari metode yang termasuk dalam konstruksi tree dengan proses pengulangan, terletak dari data pada histogram yang telah mencapai performa yang ditentukan. Tingkat kesuksesan ditentukan dari kriteria heuristic tersebut.

Algoritma Heuristic merupakan metode dimana proses segmentasi dimulai dengan pencarian titik-titik segmentasi yang valid melalui metode ekstraksi sebuah kata. Proses segmentasi ini dapat lebih dipahami proses kerjanya dengan memperhatikan kondisi histogram dari tiap-tiap karakter yang masih dalam 1 kelompok kata. Untuk membantu proses segmentasi, maka pada saat prosess pemotongan kata dilakukan juga pengecekan terhadap ketentuan tipografi. Pada dasarnya ada tiga jenis tipografi dari kata yang terbentuk. Dari ketiga pola di atas sangat membantu dalam proses segmentasi. Hal ini dapat dilihat ketika dilakukannya proses histogram vertikal.

(a)

(b)

(c)

G ambar 2.8(a ) C itr a asli (b) H istogr am hor izontal

(33)

Dari pola histogram (gambar 2.8(b) dan gambar 2.8(c)) yang dilakukan pada citra asli (gambar 2.8(a)) , maka dapat telihat bahwa titik pemotongan karakter dilakukan saat tinggi kurva mendekati nilai X atau Y minimum.

2.4 J ar ingan Sar af T iruan (J ST )

Kecerdasan buatan atau Artificial Intelligence (AI) adalah bagian dari Computer

Science yang mencoba memberikan kemampuan manusia (seperti manusia)

kepada komputer. Salah satu cara untuk memberikan computer kemampuan manusia adalah dengan menggunakan jaringan saraf tiruan. Otak manusia merupakan contoh dari jaringan saraf tiruan. Otak manusia terdiri dari jaringan yang terdiri dari miliaran neuron yang saling terhubung. Neuron adalah sel individual yang dapat memproses informasi dan kemudian mengaktifkan neuron yang lain untuk melanjutkan proses (Heaton, 2005).

Jaringan saraf tiruan adalah merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba untuk mensimulasikan proses pembelajaran pada otak manusia tersebut. Istilah buatan digunakan karena jaringan saraf ini diimplementasikan dengan menggunakan program computer yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran. Sistem pemrosesan informasi yang memiliki karakteristik kinerja tertentu yang sama dengan jaringan saraf biologis. Jaringan saraf tiruan telah dikembangkan sebagai generalisasi model matematika dari kognisi manusia atau saraf biologis, berdasarkan asumsi bahwa:

1. Pengolahan informasi terjadi pada elemen-elemen sederhana yang disebut neuron.

2. Sinyal dilewatkan di antara neuron melalui link koneksi. 3. Sambungan setiap link memiliki bobot terkait, dalam

(34)

4. Setiap neuron menerapkan fungsi aktivasi (biasanya nonliniear) untuk input (jumlah bobot sinyal input) untuk menentukan sinyal output (Fausett, 1994)

2.4.1 K onsep dasar jar ingan syaraf tiruan

Jaringan saraf tiruan adalah prosesor tersebar paralel yang sangat besar yang memiliki kecenderungan untuk menyimpan pengetahuan yang bersifat pengalaman dan membuatnya siap untuk digunakan. JST menyerupai otak manusia dalam dua hal, yaitu:

1. Pengetahuan diperoleh jaringan melalui proses belajar.

2. Kekuatan hubungan antar sel syaraf (neuron) yang dikenal sebagai bobot-bobot sinaptik digunakan untuk menyimpan pengetahuan.

Pembagian arsitektur jaringan saraf tiruan bias dilihat dari kerangka kerja dan skema interkoneksi. Kerangka kerja jaringan saraf tiruan bisa dilihat jumlah lapisan (layer) dan jumlah node pada setia lapisan. Lapisan-lapisan penyusun jaringan saraf tiruan dapat dibagi menjadi tiga, yaitu

1. Lapisan input

Node-node di dalam lapisan input disebut unit-unit input. Unit-unit input menerima input dari dunia luar. Input yang dimasukkan merupakan penggambaran dari suatu masalah.

2. Lapisan Tersembunyi

Node-node di dalam lapisan terembunyi disebut unit-unit tersembunyi. output dari lapisan ini tidak secara langsung dapat diamati.

3. Lapisan Output

Node-node pada lapisan output disebut unit-unit output. Keluaran atau output dari lapisan ini merupakan output jaringan saraf tiruan terhadap suatu permasalahan

(35)

ke dalam dua kelompok, yaitu jaringan saraf tiruan umpan maju (feed-forward networks) dan jaringan saraf tiruan berulang/umpan balik (recurrent/feedback networks).

Jaringan saraf tiruan umpan maju adalah graf yang tidak mempunyai loop, sedangkan jaringan saraf tiruan berulang/umpan balik dirincikan dengan adanya loop-loop koneksi balik.

Pendapat lain mengenai arsitektur jaringan saraf tiruan adalah sebagai berikut :

1.Jaringan lapis tunggal (single layer net)

Jaringan yang memiliki arsitektur jenis ini hanya memiliki satu buah lapisan bobot koneksi. Jaringan lapisan-tunggal terdiri dari unir-unir input yang menerima sinyal dari dunia luar, dan unit-unit output dimana nilainya dapat dilihat sebagai respon dari jaringan saraf tiruan tersebut.

2.Jaringan multilapis (multilayer net)

Merupakan jaringan dengan satu atau lenih lapisan tersembunyi. Jaringan multilapis memiliki kemampuan lebih dalam memecahkan masalah bila dibandingkan dengen single layer net, namun pelatihannya mungkin lebih rumit.

3.Jaringan kompetitif

Pada jaringan ini sekumpulan neuron bersaing untuk menapatkan hak menjadi aktif.

2.4.2 M odel syar af (neuron)

(36)

merancang jaringan saraf tiruan. Satu neuron terdiri dari tiga bagian dasar yaitu (Siang, 2009):

1. Himpunan unit-unit yang dihubungkan dengan jalur koneksi. Jalur-jalur tesebut memiliki bobot/keluaran yang berbeda-beda. Bobot yang bernilai positif akan memperkuat sinyal dan yang bernilai negatif akan memperlemah sinyal yang dibawanya. Jumlah, struktur dan pola hubungan antar unit-unit tersebut akan menentukan arsitektur jaringan (dan juga model yang terbentuk).

2. Suatu unit penjumlahan yang akan menjumlahkan input-input sinyal yang sudah dikalikan dengan bobotnya.

3. Fungsi aktivasi yang akan menentukan apakah sinyal dari input neuron akan diteruskan ke neuron lain ataukan tidak

����������� �

Fungsi aktivasi merupakan bagian penting dalam tahap perhitungan JST karena dipakai untuk menentukan keluaran dari suatu neuron. Beberapa fungsi aktivasi yang dipakai dalam JST adalah:

1. Fungsi sigmoid biner (logsig)

Fungsi ini pada umumnya digunakan untuk jaringan syaraf yang dilatih dengan menggunakan metode backpropagation. Fungsi sigmoid biner memiliki nilai antara 0 sampai 1. Oleh karena itu, fungsi ini sering digunakan untuk jaringan syaraf yang membutuhkan nilai output yang terletak pada interval 0 sampai 1. Fungsi sigmoid biner dirumuskan sebagai:

(37)

�(�) = 1

1+ �−� 2.9

2.Fungsi sigmoid bipolar (tansig)

Fungsi sigmoid bipolar hampir sama dengan fungsi sigmoid biner, hanya saja fungsi ini memiliki range antara 1 sampai -1. Fungsi sigmoid bipolar dirumuskan sebagai:

(

) =

1−�−�

1+ �−� 2.10

Pada tahap pembelajaran di dalam algoritma propagasi balik, diperlukan suatu kondisi untuk menghentikan proses pembelajaran. Berbagai kondisi seperti squared error, total squared error, dan mean squared error dapat digunakan untuk menghentikan proses pembelajaran. Definisi dari masing-masing kondisi tersebut diatas adalah sebagai berikut:

1. Squared error, adalah jumlah dari masing-masing kuadrat dari perbedaan antara target yang telah ditentukan dengan keluaran yang dihasilkan oleh jaringan setiap neuron pada lapisan keluaran.

2. sum squared error (SSE), adalah jumlah squared error untuk setiap pasangan pelatihan.

3. mean squared error (MSE), bisa berarti squared error dibagi dengan jumlah neuron pada lapisan keluaran atau sum squared error dibagi dengan jumlah pasangan pelatihan.

(38)

error yang dihitung pada tahap pembelajaran lebih kecil dari harga error yang telah didefinisikan maka proses pembelajaran dihentikan. Harga dari error yang didefinisikan untuk menghentikan proses pembelajaran akan menentukan ketepatan jaringan pada saat pengenalan pola dan lamanya proses pembelajaran. Semakin kecil harga error yang didefinisikan akan menyebabkan semakin tinggi tingkat ketepatan jaringan pada saat pengenalan pola nanti, tetapi proses pembelajaran menjadi semakin lama dan sebaliknya.

��� = 1

Belajar merupakan suatu proses dimana parameter-parameter bebas JST diadaptasikan melalui suatu proses perangsangan berkelanjutan oleh lingkungan dimana jaringan berada. Berdasarkan algoritma pelatihannya, maka JST terbagi menjadi dua yaitu:

1. Supervised Learning (Pembelajaran Terawasi)

(39)

digunakan sebagai dasar untuk mengubah matriks koneksi sedemikian rupa sehingga galat semakin mengecil pada siklus berikutnya.

2. Unsupervised Learning (Pembelajaran tak Terawasi)

Metode pembelajaran ini jaringan saraf tiruan mengorganisasi dirinya sendiri untuk membentuk vektor-vektor input yang serupa, tanpa menggunakan data atau contoh-contoh pelatihan. Struktur menggunakan dasar data atau kolerasi antara pola-pola data yang dieksplorasi. Paradigma pembelajaran ini mengorganisasi pola-pola ke dalam kategori-kategori berdasarkan kolerasi yang ada.

2.4.5 Pr opagasi B alik

Metode propagasi balik merupakan metode yang sangat baik dalam menagani masalah pengenalan pola-pola kompleks. Metode ini merupakan metode jaringan saraf tiruan yang popluler. Beberapa contoh aplikasi yang melibatkan metode ini adalah pengompresian data, pendeteksian virus computer, pengidentifikasian objek, sintesis suara dari teks, dan lain-lain.

Istilah “propagasi baik” (atau “perambatan kembali”) diambil dari cara kerja jaringan ini, yaitu bahwa gradient error unit-unit tersembunyi diturunkan dari penyiaran kembali error-error yang diasosiasikan dengan unit-unit output. Hal ini karena nilai target untuk unit-unit trersembunyi tidak diberikan.

Metode ini menurunkan gradien untuk meminimalkan penjumlahan error kuadrat output jaringan. Nama lain dari propagasi balik adalah aturan delta yang digeneralisasi.

2.4.5.1A r sitektur

(40)

layer tersembunyi (Fausett, 1994).

Jaringan saraf tiruan propagasi balik terdiri dari banyak lapisan (multilayer neural networks):

1. Lapisan input (1 buah). Lapisan input terdiri dari neuron-neuron atau unit-unit input, mulai dari unit input 1 sampai unit input n.

2. Lapisan tesembunyi (minimal 1). Lapisan tersembunyi terdiri dari unit-unit tersembunyi mulai dari unit tersembunyi 1 sampai unit tersembunyi p.

3. Lapisan output (1 buah). Lapisan output terdiri dari unit-unit outut mulai dari unit output 1 sampai unit output m. n, p, m masing-masing adalah bialangan integer sembarang menurut arsitektur jaringan saraf tiruan yang dirancang. v0j dan w0k masing-masing adalah bias untuk

unit tersembunyi ke-j dan unit output ke-k. Bias vj0 dan wk0 berprilaku

sepertu bobot di mana output bias ini selalu sama dengan 1. vji adalah

bobot koneksi antara unit ke-i lapisan input dengan unit ke-j lapisan tersembunyi, sedangkan wkj adalah bobot koneksi antara unit ke-j

lapisan tersembunyi dengan unit ke-k lapisan output.

2.4.5.2 J umlah L apisan T er sembunyi yang Digunakan

Satu buah lapisan tersembunyi bisa dikatakan cukup memadai untuk menyelesaikan masalah sembarang fungsi pendekatan. Dengan menggunakan lebih dari satu buah lapisan tersembunyi, kadang-kadang suatu masalah lebih mudah untuk diselesaikan. Mengenai banyaknya jumlah lapisam tersembunyi yang dibutuhkan, tidak terdapat ketentuan khusus (Puspitaningrum, 2006).

2.4.5.3 J umlah Neur on di L apisan T er sembunyi

(41)

akhir jaringan. Jumlah lapis tersembunyi dan jumlah neuron pada masing-masing lapis tersembunyi harus dipertimbangkan dengan cermat.

Menggunakan terlalu sedikit neuron di lapisan tersembunyi akan menghasilkan sesuatu yang disebut underfitting. Underfitting terjadi ketika terlalu sedikit neuron di lapisan tersembunyi untuk dapat mendeteksi sinyal dalam satu set data yang rumit. Sebaliknya mennggunakan terlalu banyak neuron di lapisan tersembunyi akan menghasilkan sesuatu yang disebut overfitting. Overfitting terjadi ketika jaringan saraf memiliki banyak kapasitas pengolahan informasi sehingga sedikitnya jumlah informasi yang terdapat pada data pelatihan tidak cukup untuk melatih semua neuron di lapisan tersembunyi.

Ada banyak aturan yang digunakan untuk menentukan jumlah neuron di lapis an tersembunyi. Berikut adalah beberapa diantaranya adalah (Heaton, 2005):

1. Jumlah neuron lapisan tersembunyi harus diantara ukuran lapisan input dan lapisan output.

2. Jumlah neuron lapisan tersembunyi harus 2/3 dari ukuran neuron input, ditambah ukuran lapisan output.

3. Jumlah neuron lapis tersembunyi tidak pernah lebih dari dua kali ukuran lapisan input.

2.4.5.4A lgor itma

Cara kerja jaringan propagasi balik adalah sebagai berikut, mula-mula jaringan diinisialisasi dengan bobot yang diset dengan bilangan acak. Lalu contoh-contoh pelatihan dimasukkan ke dalam jaringan. Contoh pelatihan terdiri dari pasangan vektor input dan vektor target. Keluaran dari jaringan berupa sebuah vektor output aktual. Selanjutnya vektor output aktual jaringan dibandingkan dengan vektor output target untuk mengetahui apakah output jaringan sudah sesuai dengan yang diharapkan (output aktual sudah sama dengan output target).

(42)

yang relevan dengan jalan mempropagasikan kembali error. Setiap perubahan bobot yang terjadi diharapkan dapat mengurangi besar error. Epoch (siklus setiap pola pelatihan) seperti ini dilakukan pada semua set pelatihan sampai unjuk kerja jaringan mencapai tingkat yang diinginkan atau sampai kondisi berhenti terpenuhi. Setelah proses sele

sai, barulah diterapkan algoritma aplikasi.

Algoritma propagasi balik dapat dibagi ke dalam 2 bagian: 1. Algoritma pelatihan

Terdiri dari 3 tahap: tahap umpan maju pola pelatihan input, tahap pemprogasibalikan error, dan tahap pengaturan bobot.

2. Algoritma aplikasi

Yang digunakan hanyalah tahap umpan maju saja.

Berdasarkan gambar 2.9 berikut adalah proses pelatihan JST propagasi balik dengan sebuah lapis tersembunyi (Fausett, 1994):

a. A lgor itma Pelatihan

Salah satu dari fungsi aktivasi yang djelaskan pada sub bab 2.3.3 dapat digunakan pada algoritma standar propagasi balik. Bentuk data (terutama nilai-nilai target) merupakan faktor penting dalam memilih fungsi yang sesuai. Berikut ini adalah algoritma pelatihan propagasi balik.

1. Inisialisasi bobot-bobot (dengan menggunakan nilai acak yang kecil). 2. W hile kondisi berhenti tidak terpenuhi do langkah ke-2 sampai langkah ke-9 3. Untuk setiap pasangan pola pelatihan, lakukan langkah ke-3 sampai

langkah Ke-8.

4. Setiap unit input xi (dari unit ke-1 sampai unit ke-n pada lapisan input) mengirimkan sinyal input ke semua unit yang ada dilapisan atasnya (ke lapisan tersembunyi).

(43)

menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input berbobot zi:

�� =�(��0∑�=0�����) 2.12

kemudian dikirim ke semua unit di lapisan atasnya.

6. Setiap unit di lapisan output yk (dari unit ke-1 sampai unit ke-m; i=1,...,n; k=1,...,m) dihtung sinyal outputnya dengan menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input bebobot zj bagi lapisan ini:

�� =�(��0∑�=1�����) 2.13

Tahap propagasi (perambatan) balik error:

7. Setiap unit output yk (dari unit ke-1 sampai unit ke-m; j=1,...,p; k=1,...,m) menerima pola target tk lalu informasi kesalahan lapisan output (δk)dihitung. δk dikirim ke lapisan bawahnya dan digunakan untuk menghitung besar koreksi bobot dan bias (∆wkj dan ∆wk0) antara lapisan tersembunyi dengan lapisan output:

�� = ( �� − ��)�′(��0+�����) 2.14

∆��� = ∝ ��� 2.15

∆��0 = ��� 2.16

8. Pada setiap unit di lapisan tersembunyi (dari unit 1 sampai unit ke-p; i=1,...,n; j=1,...,p; k=1,...,m) dilakukan perhiutngan informasi kesalahan lapisan tersembunyi (δj). δjkemudian digunakan untuk menghitung besar koreksi bobot dan bias (∆vji dan ∆vj0) antara lapisan input dan lapisan tersembunyi.

(44)

∆��� = ����� 2.18

∆��0 = ��� 2.19

9. Pada setiap unit output yk(dari unit ke-1 sampai unit ke-m) dilakukan peng-update-an bias dan bobot (j=0,...,p; k=1,...,m) sehingga bias dan bobot baru Menjadi:

���(����) = ���(����) + ∆��� 2.20

Dari unit ke-1 sampai unit ke-p di lapisan tersembunyi juga dilakukan pengupdate-an pada bias dan bobotnya ( i=0,...,n; j=1,...,p):

���(����) = ��� + ∆��� 2.21

10.Tes kondisi berhenti

b. A lgor itma A plikasi

Setelah dilakukan pelatihan, jaringan sarar tiruan propagasi balik dapat diterapkan dengan hanya menggunakan tahap umpan maju (feedforward) pada fase pelatihan. Berikut merupakan algoritma dari aplikasi propagasi balik.

1. Inisialisasi bobot. Bobot ini diambil dari bobot-bobot terakhir yang diperoleh dari algoritma pelatihan.

2. Untuk setiap vektor input, lakukan langkah ke-2 sampai ke-4.

3. Setiap unit input xi(dari unit ke-1 sampai unit ke-n pada lapisan input; i=1,...,n) menerima sinyal input pengujian xi dan menyiarkan sinyal xike semua unit pada lapisan di atasnya (unit-unit tersembunyi)

4. Setiap unit di lapisan tersembunyi zj (unit ke-1 sampai unit ke-p; i=1,...,n; j=1,...,p) menghitung sinyal outputnya dengan menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input xi. Sinyal output dari lapisan tersembunyi kemudian dikirim ke

(45)

�� =�(��0∑�=1�����)

5. Setiap unit output yk (ke-1 sampai unit ke-m; j=1,...,p; k=1,...,m) menghitung sinyal outputnya dengan menerapakan fungsi aktivasi terhadap sinyal-sinyal input bagi lapisan ini, yaitu sinyal-sinyal input zj dari lapisan tersembunyi, dengan menggunakan persamaan (2.16) pada proses pelatihan :

�� =� (��0� �����) �

�=1

2.4.6 Optimalitas A r sitektur B ackpropagation

Masalah utama yang terdapat dalam backpropagation ialah lamanya proses iterasi yang dilakukan. Backpropagation tidak dapat memastikan berapa epoch yang harus dilalui sampai pola yang diinginkan terpenuhi. Oleh karena itu terdapat

beberapa cara yang digunakan untuk mengoptimalkan proses iterasi (Puspitaningrum, 2006),

yaitu:

1.Pemilihan bobot dan bias awal

Bobot awal merupakan unsur yang terpenting dalam pembentukan jaringan yang baik, karena bobot awal mempengaruhi kecepatan iterasi jaringan dalam mengenali pola. Bobot awal standar yang biasa dipakai dalam melakukan proses komputasi dinilai memberikan waktu yang lama. Inisialisasi Nguyen Widrow merupakan modifikasi sederhana bobot-bobot dan bias ke unit tersembunyi yang mampu meningkatkan kecepatan jaringan dalam proses pelatihan jaringan. Inisialisasi Nguyen Widrow didefinisikan dengan persamaan:

(46)

Dimana:

n = jumlah neuron pada lapisan input

p = jumlah neuron pada lapisan tersembunyi β = faktor skala

Prosedur inisialisasi Nguyen Widrow ialah:

a. Inisialisasi bobot-bobot (vji) lama dengan bilangan acak dalam interval [-0.5, 0.5]

b. Hitung

�����= ���12+��22… +���2 2.23 c. Bobot baru yang dipakai sebagai inisialisasi

��� = ������(����)

�� 2.24

d. Bias baru yang dipakai sebagai inisialisasi vj0 = bilangan acak dalam interval

[−�,�] 2.25

2.Momentum

Penambahan parameter momentum dalam tahap pengoreksian nilai bobotdapat mempercepat proses pelatihan yaitu dengan memodifikasi nilai bobot pada iterasi (t+1) yang nilainya ditentukan oleh nilai bobot pada iterasi ke-t dan (t-1). μ adalah konsanta yang menyatakan parameter momentum yang nilainya 0 ≤μ≤1.

2.5 Data F low Diagram (DF D)

(47)

yang keluar dari sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut. DFD menunjukan hubungan antar data pada sistem dan proses pada sistem. Dengan kata lain DFD merupakan suatu cara untuk menggambarkan bangaimana data dip roses dalam sebuah sistem (Sommerville, 2007).

DFD dapat digunakan untuk mewakili sistem atau perangkat lunak pada setiap level abstraksi. DFD dapat dibagi menjadi beberapa level yang mewakili tingkatan aliran informasi dan detail fungsional. Oleh karena itu DFD menyediakan mekanisme untuk pemodelan fungsional serta pemodelan arus informasi. Menurut Yourdan dan DeMarco (1987) komponen DFD terdiri dari:

1. Terminator mewakili entitas eksternal yang berkomunikasi dengan sistem yang sedang dikembangkan. Biasanya terminator dikenal external entity.

2. Komponen proses menggambarkan bagian dari sistem yang mentransformasikan input menjadi output.

3. Komponen data store digunakan untuk membuat model sekumpulan paket data dan diberi nama dengan kata benda jamak yang biasanya database.

4. Alur data merupakan komponen yang menunjukan arah menuju ke dan keluar dari suatu proses.

Adapun lambang DFD yang digunakan terdapat pada gambar 2.10.

Terminator Proses Storage alur Data G ambar 2.10 K omponen Data F low Diagram

(48)

sebagai satu gelembung (proses) tunggal dengan data input atau output yang ditunjukkan dengan panah keluar dan panah masuk (Pressman, 2001).

Notasi dasar yang digunakan untuk mengembangkan sebuah DFD tidak dengan sendirinya cukup menjelaskan persyaratan untuk perangkar lunak. Notasi grafid harus ditambah dengan teks deskriptif. Spesifikasi proses (PSPEC) dapat digunakan untuk menentukan rinciaan pengolahan tersirat oleh gelembung dalam DFD. Spesifikasi proses menggambarkan masukan ke fungsi algoritma yang diterapkan untuk mengubah input dan output yang dihasilkan. Selain itu PSPEC menunjukkan pembatasan dan keterbatasan yang ditetapkan pada proses (fungsi), karakteristik kinerja yang dapat mempengaruhi cara dimana proses tersebut dilaksanakan.

2.5 Plat nomor K endar aan

Tanda Nomor Kendaraan Bermotor (TNKB), atau sering kali disebut plat nomor atau nomor polisi (nopol), adalah plat aluminium tanda

Spesifikasi teknis dari Tanda Nomor Kendaraan Bermotor : 1.Panjang plat nomor kendaraan buat mobil 39,5 cm

2.Lebar plat nomor kendaraan buat mobil 13,5 cm 3.Panjang plat nomor kendaraan buat motor 27,5 cm 4.Lebar plat nomor kendaraan buat motor 11 cm

(49)

BAB III

METODOLOGI PENELITIAN

Bab ini menjelaskan proses sistem jaringan saraf tiruan metode propagasi balik untuk pengenalan karakter pada plat nomor kendaraan dan analisis kebutuhan sistem yang akan dibangun serta perancangannya. Tindakan yang akan dilakukan pada tahap perancangan adalah mentransformasikan model analisi ke model perancangan.

3.1 Analisis Data Sistem

Data yang digunakan pada sistem ini berupa citra plat kendaraan bermotor yang telah di capture melalui kamera. Citra tersebut selanjutnya akan melalui tahapan

image processing pengolahan citra. Citra plat nomor kendaraan di simpan dalam

format jpeg. Pada tahap pengolahan citra, citra dari hasil plat kendaraan bermotor yang di capture, di simpan dalam hard disk atau lokasi yang diperlukan, untuk selanjutnya data tersebut di ambil dan diproses untuk menghasilkan output berupa matriks biner yang dibutuhkan pada proses pengenalan karakter plat kendaraan bermotor.

(50)

3.1.1 Prapengolahan Citra

Citra nomor plat kendaraan bermotor yang diperoleh dari kamera akan diproses sehingga menghasilkan data yang sesuai sebagai masukan pada jaringan saraf tiruan. Adapun tahapan yang dilalui pada pengolahan citra ini dapat dilihat pada diagram berikut:

Gambar 3.1 Tahapan Pengolahan Citra

3.1.1.1 Pembentukan Matriks Biner (Binarization)

Proses ini akan menghasilkan citra hitam putih yang bersih dari tingkat keabuan (grayscale), atau dengan kata lain metode ini mengonversi cita gray-level ke citra bilevel (binary image). Pada tahap ini setiap nilai pixel RGB akan diambil nilai rata-ratanya untuk kemudian dicek, jika nilai yang dihasilkan kurang dari nilai

thresholdT yang dihasilkan maka nilai pixel tersebut diubah menjadi 255 (warna putih), sebaliknya jika lebih besar dari T maka nilai pixel diubah menjadi 0 (warna hitam).

Matriks biner dari citra ini dibentuk berdasarkan nilai hitam putih pada citra yang telah didapatkan (persamaan (2.2)), jika pixel citra pada koordinat (x,y) berwarna hitam maka nilai matriks biner pada baris I dan kolom j adalah 1, sebaliknya 0 (persamaan (2.3)). Citra yang diperoleh dari proses ini dapat dilihat pada gambar 3.2. Dapat dilihat bahwa citra yang keabuan menjadi citra hitam putih yang bebas dari keabuan. Matriks biner ini yang selanjutnya akan digunakan untuk pengolahan selanjutnya.

Gambar 3.2 Citra hasil proses binarization

binerization Noise reduction

(51)

3.1.1.2 Penghilangan Derau (Noise Reduction)

Untuk meningkatkan kualitas citra dari hasil thresholding maka dilakukan proses penghilangan noise. Adapun tahapan penghilangan noise dengan metode median filter 3x3 (Efford, 2000) adalah sebagai berikut:

1. Input gambar (m x n) pixel.

2. Alokasikan sebuah matriks dengan ukuran (m+2 x n+2) dengan nilai 0 disekelilingnya.

3. Salin matriks input ke matriks pra-alokasi.

4. Bentuk matriks window (3 x 3) dengan element dari matriks input. 5. Salin matriks window (3 x 3) ke dalam array dan urutkan.

6. Cari median dari elemen array tersebut. (Total dari elemen array adalah 9 jadi median adalah elemen ke 5).

7. Letakkan elemen ke 5 ke matriks output. 8. Ulangi prosedur untuk seluruh matriks input. 9. Tampilan citra tanpa noise.

Citra yang dihasilkan dari proses ini dapat dilihat pada gambar 3.3. Dapat dilihat bahwa objek citra yang dihasilkan menjadi lebih halus.

Gambar 3.3 Citra hasil proses penghilangan noise.

3.1.1.3 Cropping

Proses prapengolahan selanjutnya setelah prose noise reduction adalah cropping.

(52)

3.1.1.4 Penskalaan (Scalling)

Setelah didapat batasan pada tiap karakter, maka karakter tersebut dilanjutkan dengan proses scalling. Proses ini berguna untuk mengubah ukuran citra hasil

cropping ke ukuran standar pengenalan. Adapun pada tahap ini, semua hasil

karakter yang diperoleh dirubah ukurannya menjadi 35 x 40. Dalam perubahan dari ukuran asli citra menjadi ukuran 35 x 40 dilakukan perbandingan rasio tinggi dan lebarnya. Berikut adalah contoh perhitungan penskalaan citra:

Ukuran asli:

Tinggi = 50 pixel Lebar = 40 pixel

Rasio untuk tinggi 50 : 40 = 1.25 Rasio untuk lebar 40 : 35 = 1.14

Untuk langkah selanjutnya proses scalling citra atau gambar dilakukan dengan menggunakan rasio yang telah didapat.

Tinggi setelah scalling 50 : 1.25 = 40 Lebar setelah scalling 40 : 1.33 = 35

3.1.1.5 Ekstraksi Fitur Citra (Feature Extraction)

Feature extraction merupakan proses untuk mendapatkan nilai-nilai unil dari

(53)

target yang sama akan dihasilkan suatu generalisasi atau pencirian secara umu terhadap suatu target yang sejenis. Oleh karena itu pada penelitian ini digunakan gabungan antara image compression dan pixel mapping (Mulyo etal., 2004) untuk mendapat nilai feature extraction.

Pada tahap ini citra yang berukuran 35 x 40 pixel dibagi menjadi 7 kolom dan 8 baris.Setiap kotak dilakukan scanning pixel dan seluruh pixel dalam kotak dijumlahkan.Kotak yang jumlah pixelnya kurang dari nilai yang ditentukan diberi nilai 0, jika tidak diberi nilai 1, sehingga dihasilkan sejumlah 56 data biner yang diharapkan dapat mewakili ciri dari data. Jika pada kotak ukuran 5 x 5 tidak terdapat pixel yang bernilai 1 (hitam) maka nilai feature extraction yang dihasilan bernilai 0, dan sebaliknya maka nilai feature extraction yang dihasilkan bernilai 1 (Sihotang, 2010).

3.1.1.6 Segmentasi (Segmentation)

Proses segmentasi dilakukan pada input citra berupa kata yang dilakukan pada tahap pengujian kemampuan segmentasi dan pengenalan sistem. Pada proses ini dilakukan untuk mendapatkan setiap karakter yang terdapat pada citra input. Adapun proses segmentasi yang dipakai menggunakan algoritma Heuristic

(Lecolinet & Baret, 1994; Rodrigues & Gay Thome 2000).

Pada proses segmentasi ini, citra hasil cropping di-thinning terlebih dahulu untuk mendapatkan struktur kerangka citra dengan menggunakan algoritma ZhangSuen yang belum dimodifikasi (Zhang & Suen, 1984), sama seperti proses

thinning pada input berupa citra huruf dan angka. Kemudian dilakukan profil

projeksi horizontal (persamaan (2.8)) untuk mendapatkan nilai-nilai histogram horizontalnya yang kemudian akan digunakan untuk mencari titik potong huruf dan angka pada citra.

(54)

Gambar 3.4 Citra plat kendaraan bermotor

Selanjutnya untuk melakukan segmentasi karakter, citra di-thinning untuk mendapatkan struktur citra. Kemudian citra thinning dibentuk histogram horizontalnya dengan menggunakan profil projeksi horizontal.

3.1.2 Fase Pelatihan Jaringan Saraf Tiruan Propagasi Balik

Pelatihan dilakukan secara terbimbing (supervised learning), artinya untuk melatih jaringan saraf tiruan digunakan pasangan data (masukan–target keluaran).Tujuan pelatihan jaringan ini adalah untuk mendapatkan keseimbangan antara kemampuan tanggapan yang benar terhadap masukan yang dipakai untuk pelatih jaringan (memorisasi).

Pada pelatihan ini, pelatihan jaringan saraf tiruan menggunakan algoritma propagasi balik. Dimana kode lapisan input yang digunakan sebanyak 48 node, node lapisan output sebanyak 36 node, dan node pada lapisan tersembunyi yang digunakan adalah sebanyak 28, 56, 64, 92, 112 atau 148 node. Pelatihan jaringan propagasi balik melibatkan tiga fase.Fase pertama adalah fase umpan-maju

(feedforward) yang dipakai untuk mencari nilai lapisan tersembunyi dan nilai

(55)

3.1.3 Fase Pengujian Jaringan Saraf Tiruan Propagasi Balik

Fase pengujian dilakukan melalui dua tahap, yaitu pengujian terhadapa data yang dilatihkan dan pengujian terhadap data baru yang belum pernah dilatihkan.Ketika jaringan diuji dengan menggunakan data pelatihan, yang diuji adalah kemampuan memorisasi jaringan (ingatan jaringan), sebab kasus-kasus yang dimasukkan telah dipelajari sebelumnya.Fase pengujian hanya menggunakan tahap umpan maju yang dipakai untuk mencari nilai keluaran lapisan tersembunyi dan lapisan keluaran. Hasil dari proses pengujian ini juga akan berbentuk matriks dengan ukuran yang sama dengan matriks target yang pernah dilatihkan. Pada sistem jaringan saraf tiruan ini, hasil pengujian telah dipolakan pada suatu kondisi tertentu. Jika hasil keluaran kurang dari 0,5 maka dianggap memiliki keluaran 0 dan jika hasil keluaran lebih besar atau sama dengan 0,5 dianggap memiliki output 1.

3.2 Perancang Sistem

Perancangan memiliki tujuan untuk menentukan kondisi akhir yang diharapkan dari perangkat lunak yang akan dibangun dan merumuskan cara yang harus dilakukan untuk memperoleh hasil tersebut. Pada perangkat lunak pengenalan karakter pada plat nomor kendaraan bermotor dengan menggunakan sistem saraf tiruan metode propagasi balik, tahap perancangan yang dilakukan mencakup perancangan arsitektur jaringan, perancangan dat flow diagram, kamus data, perancangan antarmuka dan perancangan procedural.

3.2.1 Perancangan Arsitektur Jaringan

Jaringan yang akan dirancang dalam penelitian ini adalah jaringan propagasi balik (backpropagation). Arsitektur jaringan saraf tiruan terdiri dari lapisan input (input layer), lapisan tersembunyi (hidden layer) dan lapisan output (output layer).

(56)

\

Gambar 3.5 Arsitektur jaringan saraf tiruan propagasi balik

Berdasarkan gambar 3.5 tersebut maka rincian rancangan arsitektur jaringan saraf tiruan yang digunakan adalah:

1. Lapisan input (1 buah). Lapisan input terdiri dari neuron-neuron atau unit-unit input, mulai dari input 1 sampai unit-unit input n di mana n = 26.

2. Lapisan tersembunyi (2 buah). Lapisan tersembunyi terdiri dari unit-unit tersembunyi mulai dari unit tersembunyi 1 sampai unit tersembunyi p di mana p = 36, 56,dan 64.

3. Lapisan output (1 buah). Lapisan output terdiri dari unit-unit output mulai dari unit output 1 sampai unit output m di mana m = 36.

4. x1hingga x56 merupakan unit-unit lapisan input, y1 hingga y36 merupakan

unit-unit lapisan output dari z1sampai zp merupakan unit-unit lapisan

tersembunyi.

5. b1merupakan bias ke layer tersembunyi dan b2 merupakan bias ke lapis

keluaran.

6. V0j dan wok masing-masing adalah bobot bias untuk unit tersembunyi ke-j

dan unit output ke-k, vij adalah bobot koneksi antara unit ke-I lapisan input dengan unit ke-j lapisan tersembunyi dengan unit ke-k lapisan output.

Z1 Z2 Zp

X2

X1 X36

Y1 Y2 Y36

Z2

(57)

Fungsi aktivasi yang akan digunakan dalam penelitian ini yaitu fungsi sigmoid biner (logsig) dan nilai minimal error (SSE) yang ingin dicapai yaitu 0,001. Laju pembelajaran yang digunakan 0,01 sampai 0,9 dan nilai momentum yang digunakan 0,95 . Maksimum iterasi yang diberikan kepada sistem sebesar 50000 epoch. Vektor output dan target keluaran jaringan yang dirancang dapat dilihat pada table 3.1.

Tabel 3.1 Vektor Output dan Target Keluaran Jaringan

Vektor Output Target

(58)

Tabel 3.1 Vektor Output dan Target Keluaran Jaringan (lanjutan)

3.2.5.2 Proses Pelatihan Jaringan Saraf Tiruan propagasi Balik

Pelatihan dilakukan dengan menggunakan data pelatihan yang diperoleh dari hasil pengolahan citra yang disimpan di dalam database. Pada database data pelatihan terdapat pola input dan target keluaran yang diharapkan untuk jaringan. Adapun

flowchart dari pelatihan JST propagasi balik dapat dilihat pada gambar 3.21. Mula-mula dilakukan inisialisasi bobot jaringan dengan menggunakan inisialisasi

Nguyen Widrow (persamaan (2.25)-(2.28)). Tentukan berapa nilai laju

pembelajaran dan momentum yang akan digunakan.

Setelah dilakukan inisialisasi maka proses selanjutnya adalah menghitung setiap nilai keluaran yang dihasilkan di setiap unit lapis tersembunyi dan unit lapis keluaran (persamaan (2.15)(2.16)). Kemudian hitung nilai factor kesalahan yang terdapat pada unit keluaran (ᵟk) dan unit tersembunyi (ᵟj). Dengan menggunakan

(59)

lapisan tersembunyi dengan lapisan output dari koreksi bobot dan bias (Δvji dan

ΔVj0) antara lapisan input dan lapisan tersembunyi (persamaan (2.16)-(2.21)).

Selanjutnya dilakukan pembaharuan bobot dengan menggunakan nilai koreksi bobot tersebut (persamaan (2.23) dan(2.24)). Langkah ini terus dilakukan selama nilai error yang dihasilkan masih lebih besar dari batasan error yang diberikan dan iterasi yang dilakukan sistem belum mencapai nilai dari maksimum iterasi yang diberikan.

Gambar 3.6 Flowchart pelatihan JST Propagasi Balik

mulai

Inisialisasi bobot,learning rate, target, momentum dan

epoch

Hitung nilai keluaran di Zi

Hitung nilai keluaran di Yk

Hitung nilai kesalahan di unit keluaran dan perubahan

bobot W

Hitung nilai kesalahan diunit tersembunyi dan perubahan

bobot V

Perubahan bobot

Hitung nilai error

Error > toleransi and iterasi < epoch

Output bobot pelatihan

(60)

3.2.5.3 Proses pengujian Jaringan Saraf Tiruan Propagasi Balik

Pada pengujian JST propagasi balik hanya digunakan tahap umpan maju.Adapun

flowchart pengujian yang dilakukan dapat dilihat pada gambar 3.22. Pengujian

kemampuan jaringan untuk mengenali pola dilakukan dengan memberikan input nilai numerik hasil pengolahan citra. Bobot yang digunakan merupakan bobot hasil pelatihan.Kemudian dihitung setiap nilai keluaran yang ada di unit tersembunyi dan dilanjutkan dengan menghitung nilai keluaran di unit keluaran (persamaan (2.15) dan (2.16)).

Hasil dari unit keluaran dibandingkan akan lebih besar dari 0,5, jika ia maka

nilai unit tersebut di ubah menjadi 1, dan sebaliknya diubah menjadi 0. Selanjutnya nilai-nilai dari keluaran tersebut dibandingkan dengan nilai karakter

yang ada. Selanjutnya sistem akan menampilkan karakter yang berhasil dikenali.

N Y

Y

Gambar 3.7 flowchart pengujian JST propagasi balik Mulai

Input Nilai Numerik, bobot pelatihan

Hitung Nilai Keluaran di Unit Tersembunyi Zj

Hitung Nilai Keluaran di Unit Keluaran Yk

Nilai Keluaran Yk

(61)

Keterangan Gambar 3.7:

1. Mula – mula konversi citra uji kedalam data numerik.

2. Data numerik mengirim signal ke lapisan tersembunyi untuk menghitung nilai keluaran di unit tersembunyi Zi.

3. Nilai keluaran tersebut mengirim signal ke unit keluaran dan menghitung nilai keluaran pada Yk.

4. Karena bobot yang digunakan bilangan acak antara 0 sampai 1, kemungkinan nilai keluaran adalah bilangan pecahan. Maka kita lakukan konversi ke vektor biner dengan menetapkan angka batas. Yaitu 0,5. Jika nilai keluaran di Yk > 0,5 maka nilai akan diubah menjadi 1. Jika angka pada keluaran Yk < 0,5 maka angka diubah menjadi 0.

5. Vektor keluaran yang dihasilkan akan menghasilkan pola karakter yang akan dibandingkan dengan pola data yang dijadikan input.

(62)

BAB IV

HASIL DAN PENGUJIAN

Setelah memalui proses perancangan, selanjutnya akan dikembangkan ketahap implementasi dan pengujian sistem. Untuk mengetahui apakah implementasi apakah sistem berhasil melakukan pembacaan pola atau tidak.

4.1 Pembuatan Sistem

Proses pembacaan karakter dilakukan secara 2 tahap, yaitu proses pembelajaran karakter (learning) dan proses pengenalan karakter (mapping).

4.1.1 Proses Pembelajaran Karakter

Proses yang harus dilakukan untuk pembelajaran 36 karakter yaitu antara lain : 1. Pengambilan gambar

Untuk proses pembelajaran, pengambilan gambarnya hanya load gambar dari file yang sudah ada.

2. Proses thresholding

Agar dapat dilakukan segmentasi karakter, maka harus dilakukan thresholding. Sehingga nilai dari gambar menjadi 0 (hitam) dan 1(putih)

3. Segmentasi karakter

(63)

Gambar 4.1 listing fungsi deteksi batas baris

Selanjutnya mendeteksi warna putih pada setiap kolom untuk pengambilan perkarakternya. Jika terdeteksi warna putih maka ditentukan sebagai batas awal pemotongan karakter pertama, dan jika sudah terdeteksi warna hitam maka ditentukan sebagai batas akhir pemotongan karakter pertama. Apabila terdeteksi warna putih lagi maka akan ditentukan sebagai batas awal pemotongan karakterkedua, dan jika sudah terdeteksi warna hitam lagi maka ditentukan segabai batas akhir pemotongan karakter kedua, begitu seterusnya sampai batas akhir kolom.Selanjutnya akan ditampilkan listing program untuk mendeteksi batas pada kolom.

%Pendeteksian Baris

p=1; sx=size(bw);

for row=1:sx(1)

detek=0;

for col=1:sx(2)

if(bw(row,col)==1) baris(p,col)=bw(row,col);

detek=1;

end

end if(detek==1) p=p+1;

end

Gambar

Tabel 3.1
Gambar 2.1 Representasi sistem koordinat citra
Gambar 2.3 Representasi citra derau
Gambar 2.4 (a) Pola awal (b) Pola hasil Thinning
+7

Referensi

Dokumen terkait

Tidak sampai pada masa Presiden Nixon yang melakuka pemecahan masalah narkotik menjadi prioritas pada agenda politik Presiden Nixon adalah orang pertama yang menyatakan

Untuk itu perusahaan properti harus dapat mempertimbangkan masalah-masalah yang dihadapi seperti konsep perumahan dengan fasilitas dan lokasi yang strategis untuk mempengaruhi

Pada tahap ini penulis menyusun semua data yang telah terkumpul secara sistematis dan terperinci sehingga data tersebut mudah di fahami dan temuanya dapat di

Mata Pelajaran Nilai Rata-rata Rapor1. Nilai

Berdasarkan uraian latar belakang di atas, maka peneliti menyusun penelitian dengan judul “ Analisis Penilaian pengunjung terhadap atribut pengelolaan pariwisata

7.1.7 Selepas mendapat pengesahan dari Kumpulan Tuntutan Potongan, disket tuntutan sedia untuk di hantar kepada jabatan ( Prosedur 8 dan fail di e- mail kepada Jabatan Bendahari

Sensor ultrasonic merupakan sensor yang bekerja dengan memanfaatkan gelombang ultrasonic dengan cara memancarkan gelombang ultrasonik pada frekuensi 40 KHz dan

Metode penelitian yang dilakukan untuk klasifikasi penyakit gigi dan mulut menggunakan metode Binary Decision Tree Support Vector Machine (BDTSVM) secara