• Tidak ada hasil yang ditemukan

Perangkat Lunak Capture Plat Nomor Polisi Mobil dengan Algoritma Jaringan Syaraf Tiruan Learning Vector Quantization dan Back Propagation Berbasis IP Camera

N/A
N/A
Protected

Academic year: 2016

Membagikan "Perangkat Lunak Capture Plat Nomor Polisi Mobil dengan Algoritma Jaringan Syaraf Tiruan Learning Vector Quantization dan Back Propagation Berbasis IP Camera"

Copied!
99
0
0

Teks penuh

(1)

DAN BACK PROPAGATION BERBASIS IP CAMERA

SKRIPSI

RAYMOND P.H. SIRAIT 071401040

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(2)
(3)

DAN BACK PROPAGATION BERBASIS IP CAMERA

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar

Sarjana Komputer

RAYMOND P.H. SIRAIT 071401040

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(4)

ii

PERSETUJUAN

Judul : PERANGKAT LUNAK CAPTURE PLAT NOMOR

POLISI MOBIL DENGAN ALGORITMA JARINGAN SYARAF TIRUAN LEARNING VECTOR QUANTIZATION DAN BACK PROPAGATION BERBASIS IP CAMERA

Kategori : SKRIPSI

Nama : RAYMOND P.H. SIRAIT

Nomor Induk Mahasiswa : 071401040

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI

Diluluskan di

Medan, 31 Agustus 2015

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Drs.Marihat Situmorang, M.Kom Dr. Poltak Sihombing, M.Kom NIP. 1963 1214 1989 03 1 001 NIP. 1962 0317 1991 02 1 001

Diketahui/Disetujui oleh,

Program Studi S1 Ilmu Komputer Ketua,

(5)

PERNYATAAN

PERANGKAT LUNAK CAPTURE PLAT NOMOR POLISI MOBIL DENGAN ALGORITMA JARINGAN SYARAF TIRUAN LEARNING VECTOR QUANTIZATION DAN BACK

PROPAGATION BERBASIS IP CAMERA

SKRIPSI

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

Medan,31 Agustus 2015

(6)

iv

PENGHARGAAN

Puji syukur penulis ucapkan kepada Tuhan Yang Maha Pengasih untuk berkat dan pengasihanNya, sehingga penulis dapat menyelesaikan penyusunan skripsi ini sebagai salah satu syarat untuk mendapatkan gelar Sarjana Komputer di Fakultas Ilmu Komputer dan teknologi Informasi Universitas Sumatera Utara. Adapun skripsi ini berjudul “Perangkat Lunak Capture Plat Nomor Polisi Mobil dengan Algoritma Jaringan Syaraf Tiruan Learning Vector

Quantization dan Back Propagation berbasis IP Camera”.

Dalam proses penulisan skripsi ini, penulis menghadapi banyak kendala yang disebabkan keterbatasan kemampuan dari penulis dan hal lain. Oleh karena itu, pada kesempatan ini dengan segala kerendahan hati saya sangat berterimakasih kepada yang terhormat:

1. Dr. Poltak Sihombing,M.Kom selaku Ketua Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara dan selaku pembimbing I dan narasumber penulis.

2. Drs. Marihat Situmorang M.Kom selaku pembimbing II dan narasumber penulis.

3. Maya Silvi Lydia BSc, MSc selaku Sekretaris Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.

4. Amer Sharif S.Si, M.Kom,Alm Dian Wirdasari S.Si, M.Kom,dan Drs.Dahlan Sitompul,M.Eng selaku narasumber dan pembanding bagi penulis.

5. Seluruh dosen beserta staf dan pegawai di lingkungan Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.

6. Orangtua terkasih, ayahanda Alm. M.Sirait dan Ibunda J.Simanungkalit S.Pd untuk doa, motivasi, dukungan dan semangat serta kasih yang tak terhingga yang diberikan selama ini. 7. Emma Sirait dan Tanteku Rita Simanungkalit

Akhir kata, semoga skripsi ini memberi kontribusi yang bermanfaat bagi pendidikan sekarang dan yang akan datang.

Medan, 31 Agustus 2015

(7)

ABSTRAK

Pengenalan nomor polisi yang tercantum pada plat setiap kendaraan biasanya

dilakukan secara manual. Hal ini melibatkan petugas (manusia), yang memungkinkan

terjadinya kesalahan dalam hal pencatatan. Pada penelitian ini dilakukan pengenalan

plat nomor polisi mobil dengan menggunakan algoritma Learning Vector

Quantization dan Back Propagation. Hasil pengujian menunjukkan tingkat

keberhasilan deteksi dengan algoritma backpropagation lebih baik dibandingkan

denganLearning Vector Quantization.

Kata Kunci : Jaringan Syaraf Tiruan Backpropagation,LearningVector Quantization.

(8)

vi

SOFTWARE CAPTURE LICENSE PLATE NUMBER OF THE CAR WIYH A NEURAL NETWORK LEARNING ALGORITHM VECTOR QUANTIZATION

AND BACKPROPAGATION BASED IP CAMERA

ABSTRACT

The introduction of police numbers listed on the plate of any vehicle is usually done

manually. This involves personnel (human), which allow for errors in record-keeping.

In this research, the police car number plate recognition algorithms using Learning

Vector Quantization and Back Propagation.The test results show a success rate of

detection with back propagation algorithm is better than the Learning Vector

Quantization.

Keyword : Neural Network Backpropagation, Learning Vector Quantization. Object

(9)

DAFTAR ISI

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Metode Penelitian 3

1.7 Sistematika Penulisan 4

Bab 2 Tinjauan Pustaka 5

2.1 Proses Pengolahan Citra Plat Nomor Polisi 6

2.2 Citra Digital 8

2.3 Pengolahan Citra Warna 8

2.3.1 Citra RGB 9

2.3.2 Citra YcBc 9

2.3.3 Citra Biner 9

2.3.4 Citra Intensitas Digital 9

2.3.5 Format Citra Digital 10

2.4 Jaringan Syaraf Tiruan (JST) 12

2.5 Aloritma Learning Vector Quantization (LVQ) 13

2.6 Algoritma Backpropagation 15

2.6.1 Pelatihan Standar Backpropagation 17

2.6.2 Inisialisasi Bobot Awal 19

2.7 IP Camera (Internet Protocol Camera) 19

Bab 3 Analisis dan Perancangan

3.1 Analisis 24

3.1.1 Flow Chart Umum 24

3.1.2 Bahan Penelitian 26

3.1.3 Pembacaan File Citra 27

3.1.4 Menghitung Nilai Grayscale Citra 29

(10)

viii

3.1.6 Flowchart Training dengan Algoritma LVQ 31 3.1.7 Flowchart Pengenalan dengan Algoritma LVQ 33 3.1.8 Flowchart Training dengan Algoritma Back Propagation 33 3.1.9 Flowchart Pengenalan dengan Algoritma Back Propagation 35

3.1.10 Perhitungan dengan Algoritma LVQ 35

3.1.11 Perhitungan dengan Back Propagation 42

3.2 Perancangan 50

3.2.1 Perancangan Aplikasi 50

3.2.2 Perancangan Menu Utama 50

3.2.3 Perancangan Pengenalan Algoritma Backpropagation 51 3.2.4 Perancangan Pengenalan Algoritma LVQ 52

3.2.5 Rancangan Help 53

3.2.6 Rancangan About 53

3.2.7 Rancangan Hasil Pengujian Sistem 54

Bab 4 Implementasi dan Pengujian

4.1 Implementasi 55

4.1.1 Tampilan Menu Utama 55

4.1.2 Tampilan Pengenalan Algoritma Backpropagation 56

4.1.3 Tampilan Pengenalan Algoritma LVQ 56

4.1.4 Tampilan Help 57

4.1.5 Tampilan About 58

4.2 Pengujian Sistem 58

Bab 5 Kesimpulan dan Saran

5.1 Kesimpulan 61

5.2 Saran 61

Daftar Pustaka 62

(11)

DAFTAR TABEL

No. Keterangan Hal.

2.1 Jenis Mode Warna 7

2.2 Bitmap Info Header 11

2.3 Bitmap Core Header 11

3.1 Data Matrik Input Gambar 36

3.2 Bobot dari layer input (Xi) ke layer tersembunyi (Z)i 36

(12)

x

DAFTAR GAMBAR

No. Keterangan Hal.

2.1 Proses Sampling dan Kuantisasi 6

2.2 Nilai warna RGB dalam hexadecimal 8

2.3 Citra RGB 8

2.4 Dekomposisi citra RGB ke dalam komponen luminance dan chrominance 9

2.5 Citra grayscale 10

2.6 Arsitektur Jaringan Learning Vector Quantization 14

2.7 Arsitektur jaringan Backpropagation 16

2.8 Blok Diagram IP Camera 20

2.9 Blok Diagram I/O 20

3.1 Flowchart Umum Proses Training 24

3.2 Flowchart Umum Proses Pengenalan 25

3.3 Citra Plat Nomor Polisi 27

3.4 Contoh Nilai Piksel Citra Warna 27

3.5 Matriks Nilai RGB Citra Warna 29

3.6 Matriks Nilai Grayscale 29

3.7 Matriks Citra Biner 30

3.8 Citra Plat Biner 31

3.9 Flow Chart Training dengan algoritma metode LVQ 31

3.10 Flow Chart Training dengan algoritma LVQ (Lanjutan) 32

3.11 Flow Chart Pengenalan dengan algoritma LVQ 33

3.12 Flow ChartTrainingdengan Algoritma Backpropagation 34 3.13 Flow Chart Pengenalan dengan algoritma Backpropagation 35

3.14 Jaringan dengan 3 unit hidden layer 42

3.15 Rancangan Menu Utama 50

3.16 Rancangan Pengenalan Algoritma Backpropagation 51

3.17 Rancangan Pengenalan Algoritma LVQ 52

3.18 Rancangan Help 53

3.19 Rancangan About 54

(13)

ABSTRAK

Pengenalan nomor polisi yang tercantum pada plat setiap kendaraan biasanya

dilakukan secara manual. Hal ini melibatkan petugas (manusia), yang memungkinkan

terjadinya kesalahan dalam hal pencatatan. Pada penelitian ini dilakukan pengenalan

plat nomor polisi mobil dengan menggunakan algoritma Learning Vector

Quantization dan Back Propagation. Hasil pengujian menunjukkan tingkat

keberhasilan deteksi dengan algoritma backpropagation lebih baik dibandingkan

denganLearning Vector Quantization.

Kata Kunci : Jaringan Syaraf Tiruan Backpropagation,LearningVector Quantization.

(14)

vi

SOFTWARE CAPTURE LICENSE PLATE NUMBER OF THE CAR WIYH A NEURAL NETWORK LEARNING ALGORITHM VECTOR QUANTIZATION

AND BACKPROPAGATION BASED IP CAMERA

ABSTRACT

The introduction of police numbers listed on the plate of any vehicle is usually done

manually. This involves personnel (human), which allow for errors in record-keeping.

In this research, the police car number plate recognition algorithms using Learning

Vector Quantization and Back Propagation.The test results show a success rate of

detection with back propagation algorithm is better than the Learning Vector

Quantization.

Keyword : Neural Network Backpropagation, Learning Vector Quantization. Object

(15)

1.1 Latar Belakang

Nomor polisi kendaraan bermotor merupakan ciri atau tanda pengenal dari suatu kendaraan yang diberikan oleh kepolisian. Setiap kendaraan bermotor (semua jenis) 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). Hal ini melibatkan petugas (manusia), yang memungkinkan terjadinya kesalahan dalam hal pencatatan.

Banyak penelitian yang dilakukan pengenalan nomor plat suatu kendaraan, antara lain menggunakan gabungan fitur tepi dan morfologi matematika. Pada metode tersebut daerah plat nomor dideteksi sebagai daerah dengan perubahan tingkat kecerahan yang besar dibandingkan dengan daerah-daerah lainnya. Metode lain adalah metode berbasis pemrosesan warna atau derajat keabuan. Metode ini menggunakan segmentasi warna dan memiliki kelemahan yang sangat tergantung pada pencahayaan. Penelitian ini mengusulkan metode Sliding Concentric Window (SCW) yang diikuti dengan metode Sauvola dan analisis komponen terhubung. Metode tersebut masih menghasilkan beberapa region yang bukan area plat nomor. Pada penelitian ini diusulkan untuk menambahkan satu langkah lagi yaitu dengan melakukan proyeksi horizontal dan vertikal untuk mendapatkan posisi plat yang sebenarnya. Hasil pengenalan plat dengan akurasi 60% dan masih harus ditingkatkan dengan mempertimbangkan kondisi gambar input, misalnya dengan memberi batasan gambar diambil dari jarak yang sama (Yuniarti, 2011).

(16)

2

pelatihan serta memberikan respon yang benar terhadap pola masukan yang serupa dengan pola yang dipakai selama pelatihan. Keberhasilan sistem dalam mengenali setiap karakter pada plat nomor polisi bergantung pada pola yang telah dipelajari oleh sistem.

Backpropagation adalah metode penurunan gradien untuk meminimalkan kuadrat error keluaran dengan tiga tahap yang harus dilakukan dalam pelatihan jaringan yaitu tahap perambatan maju (forward propagation), tahap perambatan balik, dan tahap perubahan bobot dan bias. Arsitektur jaringan ini terdiri dari input layer, hidden layerdanoutput layer.

1.2 Rumusan Masalah

Yang menjadi rumusan masalah pada penelitian ini adalah bagaimana membangun perangkat lunak yang dapat melakukan pengenalan plat nomor polisi mobil dengan menggunakan algoritmaLearning Vector QuantizationdanBack Propagation.

1.3 Batasan Masalah

Dalam penelitian ini, penulis membatasi masalah sebagai berikut :

a. Data yang diolah berasal dari citra dengan format file bmp hasil capture IP Camera.

b. Citra dibatasi pada plat yang berwarna dasar hitam dan tulisan berwarna putih. c. Karakter yang dikenali adalah huruf kapital alphabet (A sampai Z), serta angka (0

sampai 9).

d. Algoritma yang digunakan adalah Jaringan Syaraf Tiruan adalahLearning Vector Quantization(LVQ) danBack Propagation(BP).

(17)

1.4 Manfaat Penelitian

Manfaat yang diharapkan dari penelitian ini adalah:

1. Menghasilkan sebuah perangkat lunak yang dapat melakukan perbandingan hasil pengenalan plat nomor polisi mobil dengan menggunakan algoritma Learning Vector QuantizationdanBack Propagation.

2. Sebagai bahan referensi pengembangan algoritma Learning Vector Quantization danBack Propagationpada pengenalan plat nomor polisi mobil.

1.5 Tujuan Penelitian

Adapun tujuan penelitian adalah untuk mendapatkan algoritma yang terbaik dalam pengenalan plat nomor polisi mobil menggunakan algoritma Learning Vector QuantizationdanBack Propagation.

1.6 Metode Penelitian

Dalam penelitian ini, tahapan-tahapan yang akan dilalui adalah sebagai berikut: a. Studi Literatur

Metode ini diawali dengan terlebih dahulu melakukan pembelajaran literatur pada sejumlah buku, artikel, paper, jurnal, makalah, maupun situs internet mengenai pembahasan pengenalan objek, citra, algoritma LVQ dan BP.

b. Analisis

Pada tahap ini dilakukan analisis terhadap pengenalan citra plat nomor polisi. c. Perancangan Perangkat Lunak

Pada tahap ini, digunakan seluruh hasil analisa terhadap studi literatur yang dilakukan untuk merancang perangkat lunak yang akan dihasilkan. Dalam tahapan ini juga dilakukan perancangan model antarmuka serta proses kerja sistem untuk memudahkan dalam proses implementasi.

d. Implementasi dan Pengujian Sistem

(18)

4

1.7 Sistematika Penulisan

Dalam penulisan skripsi ini penulis membuat sistematika sebagai berikut:

BAB 1 PENDAHULUAN membahas Latar Belakang, Perumusan Masalah, Batasan Masalah, Tujuan penelitian, Manfaat Penelitian, Metode Penelitian yang dilakukan serta Sistematika penulisan.

BAB 2 LANDASAN TEORI membahas tentang citra, nomor polisi kendaraan bermotor, jaringan syaraf tiruan serta algoritma Learning Vector Quantization(LVQ) danBack Propagation.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM membahas mengenai cara kerja jaringan syaraf tiruan dalam pengenalan citra nomor plat kendaraan bermotor,flow chartsistem dan perancangan antar muka pengguna.

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM membahas tentang implementasi dan pengujian sistem.

(19)

2.1 Proses Pengolahan Citra Plat Nomor Polisi

Pada tahap pengolahan citra, sampel data citra plat nomor kendaraan mengalami beberapa tahap operasi pengolahan citra, yaitu operasi binerisasi, open-close morphology, median filtering, slicing dan resizing. Operasi binerisasi pertama sekali dilakukan pada citra plat nomor kendaraan. Di tahap ini sebuah citraberwarna atau abu-abu diubah menjadi suatu citra biner. Citra biner diwakili oleh matriks dua dimensi yang hanya mempunyai dua nilai intensitas (“0” dan“1”), yaitu hitam dan putih saja. Pada operasi ini, nilai intensitas warna setiap piksel pada suatu citra akan diubah berdasarkan nilai ambang (threshold) yang telah ditentukan. Apabila nilai intensitasnya lebih besar dari nilai threshold maka nilai tersebut akan diubah menjadi bit 1 (warna putih). Sebaliknya, jika nilainya lebih kecil dari nilai threshold maka nilainya akan diubah menjadi bit 0 (warna hitam).

Proses selanjutnya, citra plat nomor kendaraan yang sudah bersifat biner akan mengalami proses filtering menggunakan opening-closing dan median filter. Proses filtering ini dilakukan dengan tujuan untuk menghilangkan noise dan memperhalus citra. Dengan melakukan operasi opening-closing terlebih dahulu pada citra, maka akan didapatkan citra dengan noise yang berkurang, dan memperkecil noise yang besar yang tidak bisa dihilangkan dengan median filtering secara langsung. Dengan dilakukanya dua operasifilteringini, akan didapatkan citra yang jauh lebih bersih dari noise.

Setelah citra plat nomor kendaraan sudah relatif bersih dari noise, langkah selanjutnya adalah prosesslicing. Proses ini akan memisahkan karakter-karakter pada citra plat nomor kendaraan menjadi satu citra dengan satu karakter tunggal yang utuh.

(20)

Sampling

(21)

(menunjukkan jumlah bit pada gambar digital, misal b/w dengan dua bit, grayscale dengan delapan bit,true colordengan 24 bit).

Citra atau umumnya dikenal gambar merupakan kumpulan titik-titik penyusun citra itu sendiri. Titik-titik tersebut dikenal dengan pixel. Banyaknya titik-titik penyusun citra tersebut disebut resolusi. Jadi resolusi merupkan MxN pixel. Masing-masing pixel yang menyusun suatu citra dapat memiliki warna yang berbeda-beda, yang disebut denganbit depth.Bit depthdinyatakan dengan angka yang bersatuan bit. Sebagai contoh bit depth = 3, artinya terdapat 23 = 8 variasi yang mungkin untuk setiap pixel-nya. Semakin besar nilai bit depth, maka semakin besar pula ukuran fungsi citra tersebut. Ada beberapa jenis mode warna, antara lain:

Tabel 2.1Jenis Mode Warna Jenis Mode

Grayscale Warna keabuan, disusun oleh warna dasar Red, Green, Blue yang masing– masing memiliki nilai dasar yang sama. Misal = Red = 67, Green = 67, dan Blue = 67. Dari suatu nilai yang sama akan membentuk satu warna kebuan yang berbeda pada rentang gradasi hitam dan putih

8bit depth 28= 256 variasi warna

Monokrom Warna yang hanya terdiri dari hitam dan putih

1 bit 21= 2 variasi warna

RGB Warna yang disusun oleh 3channel, yaitu Red, Green, Blue yang masing– masin memiliki 8bit depth

8 x 3 =24 224= 16.777.216 variasi warna CMYK Warna yang terdiri dari 4 channel,

yaitu Cyan, Magenta, Yellow, Black yang masing–masing memiliki 8bit depth

8 x 4 = 32 232=

(22)

0x00 xx xx xx

(23)
(24)
(25)

Tabel 2.2Bitmap Info Header

Nama Field Size in Bytes Keterangan

bfType 2 Mengandung karakter “BM” yang

mengidentifikasikan tipe file

bfSize 4 Memori file

bfReserved1 2 Tidak dipergunakan bfReserved1 2 Tidak dipergunakan

bfOffBits 4 Offset untuk memulai datapixel

Tabel 2.3Bitmap Core Header

Field Name Size in Bytes Keterangan

bcSize 4 MemoriHeader

bcWidth 2 Lebar Gambar

bcHeight 2 Tinggi Gambar

bcPlanes 2 Harus 1

bcBitCount 2 Bits per pixels–1,4,8 atau 24

2. Joint Photographic Expert Group(JPEG/JPG)

Format JPEG merupakan format yang paling terkenal sampai sekarang ini. Hal ini karena sifatnya yang berukuran kecil (hanya puluhan/ratusan KB saja), dan bersifat portable. Formatfileini sering digunakan pada bidang fotografi untuk menyimpan file foto hasil perekaman analog to digital converter (ADC). Karena ukurannya kecil makafileini banyak digunakan diweb(internet).

3. GIF (Graphics Interchange Format)

(26)

12

yang lebih baik, seperti Adobe Photoshop, color table bisa diatur otomatis atau manual sehingga gambar tidak berubah warna atau rusak.

File GIF cocok digunakan untuk:

a. Gambar dengan jumlah warna sedikit (dibawah 256).

b. Gambar yang memerlukan perbedaan warna yang tegas seperti logo tanpa gradien.

c. Gambar animasi sederhana sepertibanner-banneriklan,header, dan sebagainya. d. Print shoot (hasil dari print screen) dari program-program sederhana dengan

jumlah warna sedikit.

File GIF tidak cocok digunakan untuk:

a. Gambar yang memiliki banyak warna seperti pemandangan.

b. Gambar yang didalamnya terdapat warna gradien atau semburat (spot light).

4. PNG (Portable Network Graphics)

Citra berformat PNG dikembangkan sebagai alternatif lain untuk GIF, yang menggunakan paten dari LZW algoritma kompresi. PNG adalah format citra yang sangat baik untuk grafis internet, karena mendukung transparansi didalam perambah (browser) dan memiliki keindahan tersendiri yang tidak bisa diberikan GIF atau bahkan JPG. Format PNG menggunakan teknik kompresi Loseless dan mendukung kedalaman warna 48 bit dengan tingkat ketelitian sampling: 1,2,4,8, dan 16 bit. Format ini memiliki alpha channel untuk mengkontrol transparency (Sutoyo, 2009).

2.4 Jaringan Syaraf Tiruan (JST)

(27)

JST menyerupai otak manusia dalam 2 (dua) hal, yaitu: a) Pengetahuan diperoleh jaringan melalui proses belajar.

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

Jaringan Syaraf Tiruan (JST) adalah suatu metode pembelajaran yang diinspirasi dari jaringan sistem pembelajaran biologis yang terjadi dari jaringan selsyaraf (neuron) yang terhubung satu dengan yang lainnya (Silvia, 2007).

Berikut adalah beberapa definisi JST:

1. JST adalah suatu teknik pemrosesan informasi berbasis komputer yang mensimulasikan dan memodelkan sistem syaraf biologis.

2. Suatu model matematik yang mengandung sejumlah besar elemen pemroses yang diorganisasikan dalam lapisan-lapisan.

3. Suatu sistem komputasi yang dibuat dari sejumlah elemen pemroses yang sederhana dan saling diinterkoneksikan untuk memproses informasi melalui masukan dari luar dan mampu inresponsi keadaan yang dinamis.

4. JST adalah suatu teknologi komputasi yang berbasis hanya pada model syaraf biologis dan mencoba mensimulasikan tingkah laku dan kerja model syaraf.

5. JST adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi.

JST dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi, dengan asumsi bahwa :

Pemrosesan informasi terjadi pada banyak elemen sederhana (neuron).

1. Sinyal dikirirnkan diantara neuron-neuron melalui penghubung-penghubung. 2. Penghubung antar neuron memiliki bobot yang akan memperkuat atau

memperlemah sinyal.

(28)

14

2.5 AlgoritmaLearning Vector Quantization(LVQ)

LVQ merupakan metode klasifikasi data adaptif berdasarkan pada data pelatihan dengan informasi kelas yang diinginkan. Walaupun merupakan suatu metoda pelatihan supervised tetapi LVQ menggunakan teknik data clustering unsupervised untuk pra prosesset data dan penentuan cluster center-nya. Arsitektur jaringan LVQ hampir menyerupai suatu jaringan pelatihan kompetitif kecuali pada masing-masing unit outputnya yang dihubungkan dengan suatu kelas tertentu. Kusumadewi dan Hartai (2006) menyatakan LVQ merupakan metoda untuk melakukan pelatihan terhadap lapisan-lapisan kompetitifsupervised. Lapisan kompetitif akan belajar secara otomatis untuk melakukan klasifikasi terhadap vektor input yang diberikan. Apabila beberapa vektor input memiliki jarak yang sangat berdekatan, maka vektor-vektor input tersebut akan dikelompokkan dalam kelas yang sama. Pemrosesan yang terjadi pada setiap neuron adalah mencari jarak antara suatu vektor input ke bobot yang

bersangkutan (W1 dan W2). W1 adalah vektor bobot yang menghubungkan setiap

neuron pada lapisan input ke neuron pertama pada lapisan output, sedangkan W2

adalah vektor bobot yang menghubungkan setiap neuron pada lapisan input ke neuron

yang kedua pada lapisan output. Fungsi aktivasi F1 akan memetakan Y_in1ke y1 = 1

apabila:

|X–W1| < |X–W2|, dan Y1= 0 jika sebaliknya.

Demikian pula dengan yang terjadi pada fungsi aktivasi F2, akan memetakan

Y_in1ke Y1= 1 apabila |X–W2| < |X–W1|, dan Y1= 0 jika sebaliknya.

Gambar 2.6 menunjukan jaringan LVQ dengan unit pada lapisan input, dan 2 unit

(neuron) pada lapisanoutput.

Gambar 2.6 Arsitektur JaringanLearning Vector Quantization(Kusumadewi,2006) X1

X2

X3

X4

X5

X6

X-W1

X-W2

F1

F2

Y_in

Y_in

Y1

(29)

Algoritma untuk LVQ adalah sebagai berikut:

Notasi x :training vector(X1, X2, ..., Xn)

T : kategori daritraining vectoryang benar

Wj : Vektor bobot untuk kategori j

Cj : Kategori j (hasil training)

||X–Wj|| : jarak Euclidian.

Step 0 Inisialisasi

Step 1 Jika kondisi stop salah, lakukan step 2 s.d. step 6

Step 2 Untuk setiap vector training, lakukan step 3 s.d. step 4

Step 3 dapatkan j sehingga ||X–Wj|| minimum

Step 4 Update Wj

Wj(baru) = Wj(lama) + α (X –Wj(lama)) ; Jika T = Ci

Wj(baru) = Wj(lama)– α (X –Wj(lama)) ; Jika T ≠Ci

Step 5 UpdateLearning rate

Step 6 Uji kondisi stop

Setelah dilakukan pelatihan, akan diperoleh bobot akhir (W). Bobot-bobot ini nantinya

akan digunakan untuk melakukan simulasi atau pengujian data yang lain.

2.6 AlgoritmaBackpropagation

Backpropagatin merupakan algoritma pembelajaran yang terawasi dan biasanya digunakan oleh perceptron dengan banyak lapisan untuk mengubah bobot-bobot yang terhubung dengan neuron-neuron yang ada pada lapisan tersembunyinya. Pelatihan sebuah jaringan yang menggunakan backpropagation terdiri dari 3 langkah, yaitu : pelatihan pola input secara feedforward, perhitungan dan backpropagation dari kumpulan kesalahan dan penyesuaian bobot. Sesudah pelatihan, aplikasi dari jaringan hanya terdiri dari fase feedforward. Bahkan, jika pelatihan menjadi lambat, sebuah jaringan yang dilatih dapat menghasilkan outputnya sendiri secara cepat.

(30)

16

Arsitektur jaringanbackpropagationseperti terlihat dalam Gambar 2.7.

Y1 Yk Ym

w01 w11 wj1 wp1 w0k w1k wjk wpk w0m w1m wjm wpm

Z1 Zj Zp

X1 Xi Xn

v01 v11 vi1 vn1 v0j v1j vij vnj v0p v1p vip vnp

1

1

Gambar 2.7 Arsitektur jaringanBackpropagation(Andrijasa, 2010). Keterangan :

X = Masukan (input)

V = Bobot lapisan tersembunyi W = Bobot lapisan keluaran

n = Jumlah unit pengolah lapisan tersembunyi Z = Lapisan tersembunyi (hidden layer)

Y = Keluaran (output)

Backpropagationmemiliki beberapa unit yang ada dalam satu atau lebih layar tersembunyi. Gambar 2.12 adalah arsitekturbackpropagationdengan n buah masukan (ditambah sebuah bias), sebuah layar tersembunyi yang terdiri dari p unit (ditambah sebuah bias), serta m buah unit keluaran.

Vji merupakan bobot garis dari unit masukan Xi ke unit layar tersembunyi Zj

(Vjo merupakan bobot garis yang menghubungkan bias di unit masukan ke unit layar

tersembunyi Zj). Wkjmerupakan bobot dari unit layar tersembunyi Zjke unit keluaran

(31)

2.6.1 Pelatihan StandarBackpropagation

Pelatihan Backpropagation meliputi 3 fase. Fase pertama adalah fase maju. Pola masukkan dihitung maju mulai dari layar masukkan hingga layar keluaran menggunakan fungsi aktivasi yang ditentukan. Fase kedua adalah fase mundur dimana selisih antara keluaran jaringan dengan target yang diinginkan merupakan kesalahan yang terjadi. Kesalahan tersebut dipropagasikan mundur dimulai dari garis yang berhubungan langsung dengan unit-unit keluaran. Fase ketiga adalah modifikasi bobot untuk menurunkan kesalahan yang terjadi.

Fase I : Propagasi maju Fase II : Propagasi mundur Fase III : Perubahan bobot

Ketiga fase tersebut diulang-ulang terus hingga kondisi penghentian dipenuhi. Iterasi akan dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan yang terjadi sudah lebih kecil dari batas toleransi yang diijinkan (Andrijasa, 2010).

Algoritma pelatihan untuk jaringanbackpropagation a) Inisialisasi bobot (set bilangan acak kecil) b) Step 1

Selama kondisi salah, lakukan steps 2–9 Step 2

Untuk setiap pasangan data training lakukan step 3–8

FaseFeedforward

Step 3

Setiap neuroninputXimenerimainputsignalXidan meneruskannya ke semua neuron hiddenpadalayerdiatasnya.

Step 4

Setiap neuron hidden Zj menjumlahkan semua signal inputnya.

……… (2-1)

Menjalankan fungsi aktifasinya untuk menghitung signaloutput-nya

(32)

18

Setiap neuronoutputYkmenjumlah signal input berbobotnya.

………. (2-2)

Menjalankan fungsi aktifasinya untuk menghitung signaloutput-nya. yk= f(y_ink).

Backpropagationdarierror

Step 6

Setiap neuron output Yk menerima pola target yang terkait dengan input pola

training, menghitung komponenerror

dan menghitung komponen perubahan bobot (untuk mengubah wjknanti)

……….. (2-3)

Menghitung komponen bias (untuk mengubah Woknanti)

………...…. (2-4)

Dan mengirimδkke neuron padalayerdi bawahnya

Step 7

Setiap neuronhiddenZjmenjumlahkaninputdelta-nya (dari neuron di atasnya)

...……… (2-5)

Mengalikan dengan turunan dari fungsi aktifasi untuk menentukan komponen koreksierror-nya

Menghitung komponen koreksi errornya (untuk mengubah vijnanti)

………....……...…. (2-6)

Menghitung komponen koreksierror-nya (untuk mengubah v0jnanti)

………...… (2-7)

Step 8

Setiap neuron output Ykmengubah bobot dan biasnya:

wjk(baru) = wjk(lama) +Δ wjk.

Setiap neuronhiddenZjmengubah bobot dan biasnya:

(33)

Test stopping condition

f1(y_ink) dan f’(z_inj) dapat dinyatakan dalam bentuk yk dan zk tergantung

fungsi aktifasi yang digunakan.

2.6.2 Inisialisasi Bobot Awal

Pemilihan bobot awal sangat mempengaruhi jaringan saraf dalam mencapai minimum global terhadap nilai error, serta cepat tidaknya proses pelatihan menuju kekonvergenan. Apabila nilai bobot awal terlalu besar, maka input ke setiap lapisan sembunyi atau lapisan output akan jatuh pada daerah dimana turunan fungsi sigmoidnya sangat kecil dan apabila nilai bobot awal terlalu kecil makainputke setiap lapisan tersembunyi atau lapisan output akan sangat kecil yang akan menyebabkan proses pelatihan akan berjalan sangat lambat (Puspitaningrum, 2006).

Inisialisasi bobot awal terdiri dari 2 yaitu : 1. Inisialisasi Bobot Awal Secara Random

Inisialisasi bobot awal secara random biasanya bobot awal diinisialisasi secara random dengan nilai antara -0.5 sampai 0.5 (atau -1 sampai 1, atau interval yang lainnya).

2. Inisialisasi Bobot Awal Dengan Metode Nguyen-Widrow

Metode Nguyen-Widrow akan menginisalisasi bobot-bobot lapisan dengan nilai antara -0.5 sampai 0.5. Sedangkan bobot-bobot dari lapisan input ke lapisan tersembunyi dirancang sedemikian rupa sehingga dapat meningkatkan kemampuan lapisan tersembunyi dalam melakukan proses pembelajaran.

2.7 IP Camera (Internet Protocol Camera)

(34)

20

Gambar 2.8 Blok Diagram IP Camera

Blok I/O (input/output) merupakan bagian yang menangani hubungan dengan peripheralnetwork dan gatewayuntuk koneksi dengan LAN atau internet. Bagian ini dapat dengan mudah dikenali dengan adanya konektorfemaleRJ45 dan beberapa jack input untukmicrophonesertaspeaker yang merupakan penghubung dengan komputer seprti pada Gambar 2.9.

Gambar 2.9 Blok Diagram I/O Keterangan:

a. I/OOptional

Bagian input dan output berupa jack yang berfungsi sebagai penghubung antara peripheral networkingdengan IPcamera.

b. Power supply

Bagian yang mendistribusikan power supplyatau catu daya dariadaptorke seluruh bagian agar perangkat dapat beroperasi. Selain menggunakan adaptor, IP camera dapat juga menggunakan PoE (power Over Ethernet) yang diinjeksikan via RJ45. c. Microphone

Bagian yang berfungsi mengubah sinyal akustik menjadi sinyal listrik. d. Speaker

Bagian yang berfungsi mengubah sinyal listrik menjadi sinyal akustik yang dapat didengar manusia.

I/O

CPU

Camera

Power Supply

CPU dan Camera I/O Optional

Microphone Speaker

Rj45 Rj45

PCM

(35)

e. RJ45

Bagian yang berfungsi sebagaigatewayIPcamerauntuk koneksi dengan komputer atau LAN/Internet.

f. PCM Codec (Pulse Code Modulation Coder and Decoder)

Bagian yang berfungsi mengubah sinyal analog menjadi sinyal digital (microphone to IP camera) dan mengubah sinyal digital menjadi sinyal analog (IP camera to

Speaker) menggunakan teknik modulasi PCM.

g. LAN Buffer

Bagian yang berfungsi sebagai penyangga traffic data dari dan ke CPU IP camera yang melewaticonnectorRJ4.

Blok CPU dapat dikenali dengan adanya IC prosesor yang memiliki bentuk paling besar diantara komponen IC yang ada. Bagian ini memiliki fungsi utama sebagai pengendali atas segala aktivitas yang dilakukan oleh IP camera dengan bantuan beberapa komponen IC pendukung. Blok camera mirip dengan kamera atau tustel yang memiliki lensa CCD yang bertugas mengambil atau meng-capturegambar. Sebuah IP camera biasanya dilengkapi dengan software, software ini mengambil gambar dari kamera digital secara terus menerus ataupun dalam interval waktu tertentu dan menyiarkannya melalui koneksi internet. Ada beberapa metode penyiaran dan yang paling umum adalah software merubah gambar ke dalam bentuk file JPEG dan meng-upload-nya keweb server menggunakanFile Transfer Protocol (FTP) (Azikin, 2005).

Frame rate mengindikasikan jumlah gambar sebuah software dapat ambil dan transfer dalam satu detik. Untuk streaming video, dibutuhkan minimal 15 frame per second (fps) atau idealnya 30 fps. Untuk mendapatkan frame rate yang tinggi, dibutuhkan koneksi internet yang tinggi kecepatannya. Sebuah webcam tidak harus selalu terhubung dengan komputer, ada webcam yang memilikisoftware webcam dan web server bulit-in, sehingga yang diperlukan hanyalah koneksi internet, webcam ini dinamakan “network camera”.

Penggunaan webcam mencakup video conferencing, internet dating, video messaging, home monitoring, images sharing, video interview, video phone-call, dan

(36)

22

digunakan, kamera ini terhubung dengan video capture card dan tersambung dengan internet (baik langsung maupun tidak langsung). Saat ini kamera untuk video conference sudah makin maju, sudah ada webcam yang di dalamnya terdapat microphone maupun noise cancellation untuk memfokuskan audio ke speaker yang terletak di depan kamera sehingga noise yang ada tidak mengganggu jalannya konferensi.

Pada awalnya, bentuk webcamterbatas pada bentuk-bentuk standar yang hanya terdiri dari lensa dan papan sirkuit serta casing yang biasa. Namun seiring dengan perkembangan teknologi, bentuk webcam pun sudah makin bervariasi dengan fitur-fitur yang makin canggih.

Webcam memiliki fitur-fitur dan setting yang bermacam-macam, diantaranya adalah:

1. Motion sensing, webcam akan mengambil gambar ketika kamera mendeteksi gerakan.

2. Image archiving, pengguna dapat membuat sebuah archive yang menyimpan semua gambar dari webcam atau hanya gambar-gambar tertentu saat interval pre-set.

3. Video messaging, beberapa programmessagingmendukung fitur ini.

4. Advanced connections, menyambungkan perangkat home theater ke webcam dengan kabel maupun nirkabel.

5. Automotion, kamera robotik yang memungkinkan pengambilan gambar secara pan atau tilt dan setting program pengambilan frame berdasarkan posisi kamera.

6. Streaming media, aplikasi profesional, setup webcam dapat menggunakan kompresi MPEG4 untuk mendapatkan streaming audio dan video yang sesungguhnya.

7. Custom coding, mengimpor kode komputer pengguna untuk memberitahu webcam apa yang harus dilakukan (misalnyaautomatically refresh).

(37)

ANALISIS DAN PERANCANGAN

3.1Analisis

Pada penelitian ini dilakukan pengenalan plat nomor polisi kendaraan bermotor dengan menggunakan metode jaringan syaraf tiruan algoritma Learning Vector Quantization dan Back Propagation. Nomor polisi kendaraan bermotor merupakan ciri atau tanda pengenal dari suatu kendaraan yang diberikan oleh kepolisian. Setiap kendaraan bermotor (semua jenis) memiliki nomor yang berbeda-beda. Bahkan setiap daerah memiliki kode nomor polisi yang berbeda-beda. Nomor polisi setiap kendaraan biasanya dicantumkan pada sebuah plat.

Plat nomor polisi kendaraan terdiri dari huruf kapital alphabet A sampai Z serta angka mulai dari 0 sampai 9. Warna dasar plat biasanya adalah hitam untuk kendaraan pribadi dan merah untuk kendaraan pemerintahan. Pengenalan nomor polisi yang tercantum pada plat setiap kendaraan biasanya dilakukan secara manual yaitu dilihat dan dicatat. Hal ini melibatkan petugas (manusia), yang memungkinkan terjadinya kesalahan dalam hal pencatatan.

Untuk mengidentifikasi citra plat nomor tersebut, terlebih dahulu citra plat nomor harus melewati beberapa proses agar dapat teridentifikasi dengan baik. Proses-proses tersebut adalah Proses-proses prapengolahan, Proses-proses segmentasi karakter, Proses-proses pengurusan citra (thinning) dan proses ekstraksi ciri.

(38)

24

3.1.1 Flow Chart Umum

Flow Chart Umum adalah bagan yang menggambarkan proses-proses yang secara

garis besar dilakukan sistem dalam melakukan training dan pengenalan citra plat nomor polisi. Gambar 3.1 dibawah menggambarkan flowchart umum dari proses training nomor polisi kendaraan bermotor.

Gambar 3.1 Flowchart Umum Proses Training Selesai

Start

Citra nomor polisi dan simbol

Normalisasi ukuran citra

Ekstraksi Ciri

Training JST

Bobot & Bias Simpan ke database

(39)

Pada Gambar 3.1 di atas, proses awal adalah normalisasi ukuran citra agar sesuai dengan input jaringan, selanjutnya dilakukan proses thinning yaitu pengurusan karakter sebesar 1 piksel untuk diambil cirinya dan disimpan ke database. Proses selanjutnya dilakukan training dengan algoritma LVQ dan BP untuk memperoleh bobot akhir dan bias.

Pada Proses pengenalan adalah prosedur yang menjelaskan tentang tahapan pengenalan terhadap citra plat nomor kendaraan bermotor yang diinput pengguna seperti pada Gambar 3.2.

Gambar 3.2 Flowchart Umum Proses Pengenalan Start

Citra nomor polisi

Segmentasi

Baca Bobot & Bias Pelatihan Ekstraksi Ciri

Hasil Pengenalan

Selesai Proses Pengenalan

Pengolahan Citra

(40)

26

Untuk proses Pengenalan dengan jaringan syaraf tiruan, matriks ciri yang semula berukuran 7x5 akan di-transpose menjadi berukuran 5x7 agar sesuai dengan jaringan yang telah dibuat. Matriks ciri ini akan dimasukkan ke tiap jaringan. Jadi keluaran dari tiap jaringan ini adalah matriks berukuran 1x7. Selanjutnya matriks keluaran tiap jaringan ini akan diubah menjadi desimal. Maka keluaran dari 9 jaringan akan menghasilkan matriks berukuran 1x9. Selanjutnya matriks keluaran dari 9 jaringan ini akan dicocokkan dengan matriks basis data karakter. Dalam pengenalan karakter dilakukan dengan membandingkan selisih nilai hasil keluaran jaringan ini terhadap nilai basis data karakter. Pemilihan karakter yang sesuai ditentukan dengan selisih nilai terkecil pada setiap perbandingan masing-masing karakter yang terdapat pada basis data karakter.

Algoritma Learning Vector Quantization dan Back Propagation adalah suatu algoritma yang melakukan pembelajaran pada lapisan kompetitif yang terawasi (dengan supervisi) dimana jaringan akan secara otomatis belajar untuk mengklasifikasikan vektor-vektor input. Kelas-kelas yang didapatkan sebagai hasil dari lapisan kompetitif ini hanya tergantung pada jarak antara vektor-vektor input. Jika dua vektor input mendekati sama, maka lapisan kompetitif akan meletakkan kedua vektor input tersebut ke dalam kelas yang sama.

3.1.2 Bahan Penelitian

Bahan yang digunakan pada penelitian ini adalah berupa citra digital plat nomor polisi kendaraan bermoror hasil akusisi dengan kamera digital yang akan digunakan untuk pembelajaran (learning data set) dan sekumpulan citra untuk pengujian (testing data set). Proses pengolahancitra merupakan kumpulan proses – proses yang digunakan untuk menyiapkan citra input untuk dijadikan masukan ke dalam jaringan. Proses pengolahan citra pada penelitian ini terbagi menjadi beberapa tahap yaitu:

1. Proses normalisasi. 2. Proses thinning 3. Proses ekstraksi ciri

(41)

dimana untuk setiap pixel dengan nilai intensitas warna ≤ 128 diberi nilai 0, sedangkan untuk nilai intensitas warna > 128 diberi nilai 1, sehingga akan diperoleh barisan nilai yang terdiri dari 0 dan 1 sepanjang total piksel.

Sebagai contoh citra plat nomor polisi seperti pada Gambar 3.3.

Gambar 3.3 Citra Plat Nomor Polisi

3.1.3 Pembacaan File Citra

Pada citra warna 24-bit (true color) tidak terdapat palet RGB, karena nilai RGB langsung diuraikan dalam data bitmap berbentuk biner. Untuk membaca nilai RGB-nya, dilakukan mencari header-header serta data bitmap yang berisi informasi dimensi, format dan nilai piksel citra. Setiap elemen data bitmap panjangnya 3 byte, masing-masing byte menyatakan komponen R, G, dan B. Setiap byte data merepresentasikan 8 bit, jadi pada citra warna ada 3 byte x 8 bit = 24 bit kandungan warna.

Pada citra warna, tiap pixel-nya mengandung 24-bit kandungan warna atau 8-bit untuk masing-masing warna dasar (R, G, dan B), dengan kisaran nilai kandungan antara 0 (00000000) sampai 255 (11111111) untuk tiap warna. Sebagai contoh suatu nilai pixel sebuah citra warna sepertipada Gambar 3.4.

Gambar 3.4 Contoh Nilai Piksel Citra Warna <Header>

<data bitmap>

100001111011010010100001100100001011010010010111101101 101011010010000001100100111010011000011001

11111110001011111110001

100100001001111001000000110010011101100101111110111110 0000011010110110001

Piksel 1 Piksel 2

(42)

28

Pada contoh citra Gambar 3.2 di atas, data pertama adalah header yang berisi informasi nama file, jenis format dan dimensi citra. Di bawah data bitmap terdapat pixel pertama mempunyai nilai =100001111011010010100001.

Untuk mendapatkan nilai RGB setiap piksel dengan menggunakan rumus sebagai berikut:

Nilai R = c and 255 ... (3.1) Nilai G = (c and 65,280)/256 ...(3.2)

Nilai B = ((c and 16,711,680)/256)/256 ... (3.3) Dimana c adalah nilai piksel citra

Pada Gambar 3.2 di atas, nilai piksel (0,0) adalah 111100001011010010111001 (24 bit). Nilai R dihitung dengan persamaan 3.1 sebagai berikut:

Nilai R = 100001111011010010100001 and 11111111 = 10100001 (Biner) = 161 Desimal

Nilai komponen G dihitung dengan persamaan (3.2):

Nilai G = (100001111011010010100001 and 1111111100000000)/100000000 = 10110100= 180 (desimal)

Nilai komponen B dihitung dengan persamaan (3.3): Nilai B= (100001111011010010100001 and

111111110000000000000000) / 100000000/100000000 = 10000111 = 135 (desimal)

Sehingga diperoleh nilai piksel (0,0) 11110000 11110000 11111111: R = 11110001 = 161 (desimal)

G = 10110100 = 180 (desimal) B = 10010000 = 135 (desimal)

(43)

161,180,135 152,140,110 182,166,210 166,112,178 170,177,166 202,189,134 201,180,111 140,173,110 192,120,200 112,167,162 133,200,152 165,100,155 124,110,167 140,180,126 200,160,200 141,204,104 134, 80,144 140,110,115 150,180,150 160,210,220 56,100,110 147,140,165 143,230,173 140,212,210 150,212,150

Gambar 3.5 Matriks Nilai RGB Citra Warna

3.1.4 Menghitung Nilai Grayscale Citra

Matriks citra warna pada Gambar 3.5 di atas ditransformasikan menjadi citra grayscale dengan menghitung rata-rata warna Red, Green dan Blue. Secara matematis

penghitungannya adalah sebagai berikut.

f0 (x,y) = f

R , + fG , + fB ,

3 ……… (3.4)

Sebagai contoh menghitung nilai grayscale citra pada Gambar 3.3 di atas menggunakan persamaan (3.6) adalah sebagai berikut:

f(0,0) = 161+ 180+135

3 = 158 f(0,1) = 152+140+110

3 = 134 f(0,2) = 182+166+210

3 = 186 f(0,3) = 166+112+178

3 = 152 f(0,4) = 170+177+166

3 = 171

Untuk menghitung nilai grayscale piksel selanjutnya dilakukan sama seperti cara di atas, selanjutnya hasil nilai grayscale matriks citra warna dimasukkan ke dalam matriks nilai grayscale seperti pada Gambar 3.6.

(44)

30

3.1.5 Binerisasi

Pemisahan citra grayscale diatas berfungsi untuk mengambil bagian citra yang merupakan titik gelap (0) dan putih (1). Binerisasi dilakukan dengan membagi citra menjadi 8x8 bagian sub citra, nilai intensitas rata-rata dari sub citra yang paling rendah digunakan menjadi nilai threshold T. Setelah itu dilakukan proses binarisasi citra menggunakan nilai threshold T. Persamaan yang digunakan untuk melakukan binarisasi citra adalah sebagai berikut.

...(3.5)

Dari matriks Gambar 3.4 dilakukan perhitungan Threshold untuk proses binerisasi dimana jika nilai grayscale < 128 maka akan dimasukkan ke nilai 0, sedangkan jika nilai grayscale>T akan dimasukkan ke nilai 1.

Nilai piksel (0,0) = 158, nilai piksel 158 >128, maka nilai biner = 1 Nilai piksel (0,1) = 134, nilai piksel 134 >128, maka nilai biner = 1 Nilai piksel (0,2) = 186, nilai piksel 186>128, maka nilai biner = 1 Nilai piksel (0,3) = 152, nilai piksel 152>128, maka nilai biner = 1 Nilai piksel (1,0) = 171, nilai piksel 171>128, maka nilai biner = 1

Dari hasil perhitungan nilai threshold diatas dimasukkan ke dalam matriks citra biner seperti pada Gambar 3.7.

1 1 1 1 1

0 1 0 1 0

1 0 1 0 1

0 1 1 1 1

1 0 0 0 1

Gambar 3.7 Matriks Citra Biner , = , , >�

(45)

Dengan g(x,y) adalah citra biner hasil proses binarisasi dari citra plat nomor polisi dengan skala keabuan f(x,y), dengan nilai threshold T. Citra hasil threshold ini menghasilkan citra plat nomor polisi biner seperti pada Gambar 3.8.

Citra grayscalePlat Citra binerPlat

Gambar 3.8 Citra Plat Biner

Dengan diperolehnya citra nomor polisi biner, maka tahap preprocessing citra sudah selesai dan selanjutnya citra biner pada Gambar 3.11 dilakukan proses training dan pengenalan dengan metode jaringan syaraf tiruan.

3.1.6 Flow ChartTraining dengan algoritma LVQ

Adapun flow chartproses training dengan algoritma LVQ dapat dilihat seperti pada Gambar 3.9.

Gambar 3.9 Flow ChartTraining dengan algoritma metode LVQ Start

Citra plat nomorPelatihan

Pendefinisi Input, Output dan Target

Penetapan JmlKlas, JmlNeuron, MaksError

(46)

32

Gambar 3.10 Flow Chart Training dengan algoritma LVQ (Lanjutan) Pembentukan Jaringan LVQ

NET = Bobot,JmlNeuron,(1/JmlKlas)* MinErr (Jumkls))

Penetapan Parameter Pelatihan 1.MaksEpoch = 100

2.MinError = 0.001 3.DecError=0.1

Training Epoch=Epoch+1

Bobot Akhir Wj Error <MinError atau

Epoch > MaksEpoch Penetapan Bobot Awal (Wij)

i=1,2,...,K. j=1,2,...,m Wij= 0-1

Inisialisasi Bobot AwalWijAwal= n13

Perbaikan Bobot Wj

Jika T = Cj maka Wj=Wj+ MinError(Nilai Piksel) Jika T <> Cj maka Wj=Wj- MinError (Nilai Piksel)

Error=MinError*DecError B

No

Yes

(47)

3.1.7 Flow ChartPengenalan dengan algoritma LVQ

Adapun flow chartproses pengenalan dengan algoritma LVQ dapat dilihat seperti pada Gambar 3.11.

Gambar 3.11 Flow Chart Pengenalan dengan algoritma LVQ

3.1.8 Flow Chart Proses Training dengan Algoritma Back Propagation

Adapun flow chart proses training dengan Algoritma Back Propagation dapat dilihat seperti pada Gambar 3.12.

Start

Citra plat nomorPengujian + bobot Akhir Wj

Baca bobot Wj dari database

Hitung Jarak antar bobot input dengan bobot database

Jarak terpendek  Hasil pengenalan

Hasil pengenalan

(48)

34

Gambar 3.12 Flow ChartTrainingdengan Algoritma Backpropagation

3.1.9 Flow Chart Pengenalan dengan algoritma Backpropagation

Adapun flow chartproses pengenalan dengan algoritma Backpropagation dapat dilihat seperti pada Gambar 3.13.

Start

Data Pelatihan

Pendefinisi Input, Output

Evaluasi Kesalahan Setiap VektorMasukan x Epoch=Epoch+1

Inisialisasi Semua Bobot Dengan Nilai Random

Normalisasi SemuaBobot dan Vektor Masukan (Nilai Piksel) Set Parameter Learning Rate ( Epoch,MinError, DecError)

Simpan bobot dengan kesalahan paling minimal

Neuron keluaran yang tidak pernah firing /Aktif? Yes

(49)

Gambar 3.13 Flow Chart Pengenalan dengan algoritma Backpropagation

3.1.10 Perhitungan Dengan Algoritma LVQ

Pada perhitungan ini tidak menggunakan data (nilai piksel) yang sebenarnya, namun memakai nilai yang sederhana sehingga mudah untuk dipahami maksud dari sistem kerja perangkat lunak ini. Misalkan diketahui 10 input vektor dalam 2 kelas sebagai berikut:

Start

Citra plat nomorPengujian + bobot Akhir Wj

Baca bobot Wj dari database

Hitung Jarak antar bobot input dengan bobot database

Jarak terpendek  Hasil pengenalan

Hasil pengenalan

(50)

36

Dua inputan yang pertama akan diinisialisasi sebagia bobot:

Tabel 3.2 Data Bobot No Matriks Bobot Target 1 1, 0, 0, 0, 1, 0 1 2 0, 1, 1, 1, 1, 0 2

Sedangkan 8 inputan sisanya akan digunakan sebagai data yang akan dilatih :

Tabel 3.3 Data Latih No Matriks Latih Target 1 0, 0, 1, 0, 0, 1 1 2 0, 0, 1, 0, 1, 0 1 3 0, 1, 0, 0, 0, 1 1 4 1, 0, 1, 0, 1, 1 1 5 0, 0, 1, 1, 0, 0 2 6 0, 1, 0, 1, 0, 0 2 7 1, 0, 0, 1, 0, 1 2 8 0, 1, 1, 1, 1, 1 2

Sebagai Nilai awal dipilih Learning Rate (α) = 0.05, dengan pengurangan sebesar

(51)

Data Ke-1 : (0, 0, 1, 0, 0, 1) Jarak pada bobot ke – 1

= (0 − 1)2 + (0 – 0)2 + (1 – 0)2 + (0 – 0)2 + (0 – 1)2 + (1 – 0)2

= 2

Jarak Pada bobot ke – 2

(0 − 0 )2 + (0 – 1 )2 + (1 – 1 )2 + (0 – 1 )2 + (0 – 1 )2 + (1 – 0 )2

= 2

Jarak terkecil adalah pada w ke-1 Target data ke-1 adalah 1

Karena target data ke-1 = w ke-1, maka w ke-1 baru adalah: Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

= 1 + 0.05*(0-1) = 0.95 = 0 + 0.05*(0-0) = 0 = 0 + 0.05*(1-0) = 0.05 = 0 + 0.05*(0-0) = 0 = 1 + 0.05*(0-1) = 0.95 = 0 + 0.05*(1-0) = 0.05

W1(baru) = (0.95, 0, 0.05, 0, 0.95, 0.05)

Data Ke-2 : (0, 0, 1, 0, 1, 0) Jarak pada bobot ke – 1

(0 – 0.95)2 + (0 – 0)2 + (1 – 0.05)2 + (0 – 0)2 + (1 – 0.95)2 + (1 – 0.05)2

= 1.345

Jarak Pada bobot ke – 2

( 0 − 0 )2 + ( 0 – 1 ) 2 + ( 1 – 1 ) 2 + ( 0 – 1 ) 2 + ( 1 – 1 ) 2 + ( 0 – 0 )2

= 1.414

Jarak terkecil adalah pada w ke-1 Target data ke-2 adalah 1

Karena target data ke-2 = w ke-1, maka w ke-1 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

(52)

38

= 0.95 + 0.05*(1-0.95) = 0.9525 = 0.05 + 0.05*(0-0.05) = 0.0475 W1(baru) = (0.9025, 0, 0.0975, 0, 0.9525, 0.0475)

Data Ke-3 : (0, 1, 0, 0, 0, 1) Jarak pada bobot ke – 1

(0 – 0.9025)2 + (1 – 0) 2 + (0 – 0.0975) 2 + (0 – 0) 2 + (0 – 0.9525) 2 + (1 –0.0475) 2

= 1.907

Jarak Pada bobot ke – 2

= ( 0 − 0 )2 + ( 1 – 1 ) 2 + ( 0 – 1 ) 2 + ( 0 – 1 ) 2 + ( 0 – 1 ) 2 + ( 1 – 0 ) 2

= 2

Jarak terkecil adalah pada w ke-1 Target data ke-3 adalah 1

Karena target data ke-3 = w ke-1, maka w ke-1 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

= 0.9025 + 0.05*(0-0.9025) = 0.8574 = 0.0000 + 0.05*(0-0.0000) = 0.0500 = 0.0975 + 0.05*(1-0.0975) = 0.0926 = 0.0000 + 0.05*(0-0.0000) = 0.0000 = 0.9525 + 0.05*(1-0.9525) = 0.9049 = 0.0475 + 0.05*(0-0.0475) = 0.0951

W1(baru) = (0.8574, 0.0500, 0.0926, 0.0000, 0.9049, 0.0951) Data Ke-4 : (1, 0, 1, 0, 1, 1)

Jarak pada bobot ke – 1

(1–0.8574)2 + (0–0.0500)2 + (1–0.0926)2 + (0–0.0000) 2 + (1–0.9049) 2 + 1–0.0951 2

= 1.293

Jarak pada bobot ke – 2

= √ (1- 0)2 + (0 – 1)2 + (1 – 1)2 + (0 – 1)2 + (1 – 1)2 + (1 – 0)2 = 2

Jarak terkecil adalah pada w ke-1 Target data ke-4 adalah 1

Karena target data ke-4 = w ke-1, maka w ke-1 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

(53)

= 0.0500+ 0.05*(0-0.0500) = 0.0475 = 0.0926 + 0.05*(1-0.0975) = 0.1380 = 0.0000+ 0.05*(0-0.0000) = 0.0000 = 0.9049 + 0.05*(1-0.9049) = 0.9096 = 0.0951 + 0.05*(0-0.0951) = 0.1404

W1(baru) = (0.8645, 0.0475, 0.1380, 0.0000, 0.9096, 0.1404)

Data Ke-5 : (0, 0, 1, 1, 0, 0) Jarak pada bobot ke – 1

=√(1–0.8645)2 +(0–0.0475)2 +(1–0.1380)2 +(0–0.0000)2 +(1–0.9096)2+(1–0.1404)2 = 1.827

Jarak Pada bobot ke – 2

= √ (0 - 0)2 + (0 – 1)2 + (1 – 1)2 + (1 – 1)2 + (0 – 1)2 + (0 – 0)2 = 1.414

Jarak terkecil adalah pada w ke-2 Target data ke-5 adalah 2

Karena target data ke-5 = w ke-2, maka w ke-2 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

= 0 + 0.05*(1-0) = 0.0000 = 1 + 0.05*(0-1) = 0.9500 = 1 + 0.05*(1-1) = 1.0000 = 1 + 0.05*(0-1) = 1.0000 = 1 + 0.05*(1-1) = 0.9500 = 0 + 0.05*(1-0) = 0.0000

W2(baru) = (0.0000, 0.9500, 1.0000, 1.0000, 0.9500, 0.0000)

Data Ke-6 : (0, 1, 0, 1, 0, 0) Jarak pada bobot ke – 1

=√(1–0.8645)2 +(0–0.0475)2 +(1–0.1380)2 +(0–0.0000)2 +(1–0.9096)2+(1–0.1404)2 = 1.876

Jarak Pada bobot ke – 2

= √ ( 0 - 0 )2 + ( 1 – 0.95 )2 + ( 0 – 1 )2 + ( 1 – 1 )2 + ( 0 – 0.95 )2 + ( 0 – 0 )2 = 1.380

(54)

40

Karena target data ke-6 = w ke-2, maka w ke-2 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

= 0.0000 + 0.05*(0-0.0000) = 0.0000 = 0.9500 + 0.05*(1-0.9500) = 0.9525 = 1.0000 + 0.05*(0-1.0000) = 0.9500 = 1.0000 + 0.05*(1-1.0000) = 1.0000 = 0.9500 + 0.05*(0-0.9500) = 0.9025 = 0.0000 + 0.05*(0-0.0000) = 0.0000

W2(baru) = (0.0000, 0.9525, 0.9500, 1.0000, 0.9025, 0.0000)

Data Ke-7 : (1, 0, 0, 1, 0, 1) Jarak pada bobot ke – 1

=√(1–0.8645)2 +(0–0.0475)2 +(1–0.1380)2 +(0–0.0000)2 +(1–0.9096)2+(1–0.1404)2 = 1.614

Jarak Pada bobot ke – 2

= √ (1 - 0)2 + (0 – 0.9525)2 + (0 – 0.95)2 + (1 – 1)2 + (0 – 0.9025)2 + (0– 1)2 = 2.150

Jarak Terkecil adalah pada w ke-2 Target data ke-7 adalah 2

Karena target data ke-7 ≠ w ke-1, maka w ke-1 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama) )

= 0.8645+ 0.05*(0-0.8645) = 0.8577 = 0.0475 + 0.05*(1-0.0475) = 0.0499 = 0.1380 + 0.05*(0-0.1380) = 0.1449 = 0.0000 + 0.05*(1-0.0000) = -0.050 = 0.9096 + 0.05*(0-0.9096) = 0.9551 = 0.1404 + 0.05*(0-0.1404) = 0.0974

W1(baru) = (0.8577, 0.0499, 0.1449, -0.050, 0.9551, 0.0974)

Data Ke-8 : (0, 1, 1, 1, 1, 1) Jarak pada bobot ke – 1

=√(1–0.8577)2 +(0–0.0499)2 +(1–0.1449)2 +(0+0.050)2 +(1–0.9551)2+(1– 0.0974)2

(55)

Jarak Pada bobot ke – 2

= √ (0 - 0)2 + (1 – 0.9525)2 + (1 – 0.95)2 + (1 – 1)2 + (1 – 0.9025)2 + (1– 0)2 = 1.002

Jarak Terkecil adalah pada w ke-2 Target data ke-8 adalah 2

Karena target data ke-8 ≠ w ke-2, maka w ke-2 baru adalah : Wj(baru) = Wj(lama) + α ( Xi - Wj(lama))

= 0.0000 + 0.05*(0-0.0000) = 0.0000 = 0.9525 + 0.05*(1-0.9525) = 0.9549 = 0.9500 + 0.05*(0-0.9500) = 0.9525 = 1.0000 + 0.05*(1-1.0000) = 1.0000 = 0.9025 + 0.05*(0-0.9025) = 0.9074 = 0.0000 + 0.05*(0-0.0000) = 0.0500

W2(baru) = (0.0000, 0.9549, 0.9525, 1.0000, 0.9074, 0.0500) α = α –0.1 * α = 0.05 – 0.1 * 0.05 = 0.045

Proses ini diteruskan untuk epoch ke-2 sampai dengan epoch ke 100. Setelah mencapai epoch yang ke-100 diperoleh bobot akhir:

W1 = (0.3727 0.2161 0.6347 0.2164 0.7901 0.4254) W1 = (0.0000 0.7969 0.7900 1.0000 0.5869 0.2171)

Maka jika kita mau menstimulasikan inpit (1, 0, 0, 0, 0, 1) maka kita cariterlebih dahulu jarak input tersebut terhadap kedua bobot. Nomor dari bobotdengan jarak terpendek akan menjadi kelasnya.

Jarak pada bobot ke – 1

= √(1–0.3727)2 +(0–0.2161)2 +(1–0.6347)2 +(0-0.2164)2 +(0–0.7901)2+(1– 0.4254)2

=1.3581

Jarak Pada bobot ke – 2

= √(1- 0.0000)2 +(0 – 0.7969)2 +(1 – 0.7900)2+(0 – 1.0000)2 +(0 – 0.5869)2+(1 – 0.2171)2

= 2.0534

(56)

42

3.1.11 Perhitungan dengan Back Propagation

Sebagai contoh jaringan dengan sebuah 3 unit layer tersembunyi dibangun untuk mengenali fungsi logika XOR dengan 2 masukan X1 dan X2. Iterasi untuk menghitung

bobot jaringan untuk pola pertama (X1=1, X2=1 dan t=0) dan learning rate α=0.2.

Gambar 3.14 Jaringan dengan 3 unit hidden layer

Bobot-bobot diberikan nilai acak dengan range -1 sampai dengan 1. Misal bobot dari layer input (Xi) ke layer tersembunyi (Zi) seperti pada Tabel 3.2 dan bobot-bobot dari

layer tersembunyi ke layeroutput seperti pada Tabel 3.3. Langkah 0

Untuk algoritma Backpropagasi Inisialisasi Standard: semua bobot dengan bilangan acak kecil.

Tabel 3.2 Bobot dari layer input (Xi) ke layer tersembunyi (Zi) 1

Y1 Z1

Z2

Z3 1

X1

X2

V10

V20 V30

V11

V31 V21

V12

V32 V22

W10

W11

W12

(57)

Z1 Z2 Z3

X1 0.2 0.3 -0.1

X2 0.3 0.1 -0.1

1 -0.3 0.3 0.3

Tabel 3.3 Bobot-bobot dari layer tersembunyi ke layeroutput

Y Z1 0.5 Z2 -0.3 Z3 -0.4 1 -0.1

Untuk algoritma Backpropagasi Inisialisasi Nguyen Widrow: hitung semua bobot dengan faktor skala Hitung faktor skala (ß) = 0.7(p)1/n

β = = 0,7 3 = 1,21

Jadi bias yang dipakai adalah faktor skala yang merupakan bilangan acak antara -1,21 hingga 1,21

�1 = �112 +�212= 0.22 + 0.32 = 0.36

�2 = �122 +�222= 0.32 + 0.12 = 0.32

�3 = �132 +�232= −0.12 + (−0.1)2 = 0.14

Tabel berikut merupakan bobot yang dipakai sebagai insialisasi dengan rumus:

� =ß (� �) | � |

�11 = 1.21∗0.2

|0.36| = 0.67 �12 =

1.21∗0.3

|0.32| = 1.13 �13 =

1.21∗−0.1

(58)

44

Tabel 3.4 Bobot dari layer input (Xi) ke layer tersembunyi (Zi)

Z1 Z2 Z3

Untuk perhitungan bobot-bobot dari layer tersembunyi ke layer output sama dengan standard yaitu secara acak bilangan yang kecil

Langkah 1

Jika kondisi penghentian belum terpenuhi, lakukan langkah 2 sampai dengan 8

Langkah 2

Untuk setiap pasang data pelatihan, lakukan langkah 3 sampai dengan 8 Fase I: Propagasi Maju

Langkah 3

Tiap unit masukkan menerima sinyal dan meneruskan ke unit tersembunyi

Langkah 4

Hitung semua keluaran di unit tersembunyi (Zj):

(59)

�3= 10+

Hitung semua jaringan di unit keluaran (yk)

_ � = 0+

Fase II : Propagasi Maju

(60)

46

Langkah 7

Hitung factor  unit tersembunyi berdasarkan kesalahan di setiap unit tersembunyi zj (j=1,2,3,…,p)

_ � =  =1

_ �1 =1. 11 = −0,11 . 0,5 = −0,055 _ �2 =1. 12 = −0,11 . (−0,3) = 0,033 _ �3 =1. 13 = −0,11 . (−0,4) = 0,044

Faktor kesalahan  unit tersembunyi j = _netjf’(z_netj)= _net zj (1-zj)

1 = _net1 z1 (1-z1)=(-0.055).0,55.(1-(0,55))=-0,01 2 = _net2 z2 (1-z2)=(0.033).0,67.(1-(0,67))=0,01 3 = _net3 z3 (1-z3)=(0.044).0,52.(1-(0,52))=0,01

Δvji =α jxi

Δv10 =α 1 =0,2*(-0,01)*1 = -0,002

Δv20 =α 2 =0,2*(0,01)*1 =0,002

Δv30 =α 3 =0,2*(0,01)*1 =0,002

Δv11 =α 1x1 =0,2*(-0,01)*1 =-0,002

Δv21 =α 2x1 =0,2*(0,01)*1 =0,002

Δv31 =α 3x1 =0,2*(0,01)*1 =0,002

Δv12 =α 1x2 =0,2*(-0,01)*1 =-0,002

Δv22 =α 2x2 =0,2*(0,01)*1 =0,002

Δv32 =α 3x2 =0,2*(0,01)*1 =0,002 Fase III : Perubahan Bobot

Langkah 8

Perubahan bobot garis yang menuju unit keluaran wkj (baru) = wkj (lama) + Δwkj

(61)

Vji (baru) = vji (lama) + Δvji

Fase I: Propagasi Maju

Langkah 3

Tiap unit masukkan menerima sinyal dan meneruskan ke unit tersembunyi

Langkah 4

Hitung semua keluaran di unit tersembunyi (Zj):

(62)

48

3 = �3 =

1

1 + − _ �3 =

1

1 + − , = 0,52

Langkah 5

Hitung semua jaringan di unit keluaran (yk)

_ � = 0+

=1

�1 = 10+

=1

= 10+ 1 11+ 2 12+ 3 13

=−0,1 + 0,55∗0,5 + 0,67∗ −0,3 + 0,52∗ −0,4 = 0,24

= _ � = 1

1 + − _ � = 1

1 + − , �= 0,44

Fase II : Propagasi Maju

Langkah 6

k=(tk-yk) f’(y_netk)= (tk-yk) yk (1-yk)

1=(t1-y1) f’(y_net1)= (t1-y1) y1 (1-y1)=(0-0,44) * 0,44 * (1-0,44)=-0,11 Δwkj = α k zj

Δw10 = α 1 (1) =0,2 * (-0,11) * (1) =-0,022 Δw11 = α 1 (z1) =0,2 * (-0,11) * (0,55) =-0,01

Δw12 = α 1 (z2) =0,2 * (-0,11) * (0,67) =-0,01 Δw13 = α 1 (z3) =0,2 * (-0,11) * (0,52) =-0,01

Langkah 7

Hitung factor  unit tersembunyi berdasarkan error di setiap unit tersembunyi zj (j=1,2,3,…,p)

_ � =  =1

(63)

Faktor error unit tersembunyi j = _netjf’(z_netj) = _net zj (1-zj)

1 = _net z1 (1-z1) =(-0.055) * 0,55 * (1-(0,55)) =-0,01 2 = _net z2 (1-z2) =(0.033) * 0,67 * (1-(0,67)) =0,01 3 = _net z3 (1-z3) =(0.044) * 0,52 * (1-(0,52)) =0,01

Δvji =α jxi

Δv10 =α 1 =0,2*(-0,01)*1 = -0,002

Δv20 =α 2 =0,2*(0,01)*1 =0,002

Δv30 =α 3 =0,2*(0,01)*1 =0,002

Δv11 =α 1x1 =0,2*(-0,01)*1 =-0,002

Δv21 =α 2x1 =0,2*(0,01)*1 =0,002

Δv31 =α 3x1 =0,2*(0,01)*1 =0,002

Δv12 =α 1x2 =0,2*(-0,01)*1 =-0,002

Δv22 =α 2x2 =0,2*(0,01)*1 =0,002

Δv32 =α 3x2 =0,2*(0,01)*1 =0,002

Fase III : Perubahan Bobot

Langkah 8

Perubahan bobot garis yang menuju unit keluaran wkj (baru) = wkj(lama) + Δwkj

w10 (baru) = w10(lama) + Δw10= -0,1-0,022 =-0,122

w11 (baru) = w11(lama) + Δw11=0,5-0,01 =0,49

w12 (baru) = w12(lama) + Δw12=-0,3-0,01 =0,31

w13 (baru) = w13(lama) + Δw13=-0,4-0,01 =0,41

Vji (baru) = vji(lama) + Δvji

V10 (baru) = v10(lama) + Δv10 =-0,3-0,002 =-0,302

V20 (baru) = v20(lama) + Δv20 =0,3+0,002 =0,302

V30 (baru) = v30(lama) + Δv30 =0,3+0,002 = 0,302

V11 (baru) = v11(lama) + Δv11 =0,2-0,002 =0,198

(64)

50

V31 (baru) = v31(lama) + Δv31 =-0,1+0,002 =-0,098

V12 (baru) = v12(lama) + Δv12 =0,3-0,002 =0,298

V22 (baru) = v22(lama) + Δv22 =0,1+0,002 =0,102

V32 (baru) = v32(lama) + Δv32 =-0,1+0,002 =-0,098

Lanjutkan dengan pola yang lainnya: Pola ke 2 X1=1, X2=0, t=1

Pola ke 3 X1=0, X2=1, t=1 Pola ke 4 X1=0, X2=0, t=0

3.2 Perancangan

3.2.1 Perancangan Aplikasi

Perancangan perangkat lunak pengenalan plat nomor polisi kendaraan bermotor dengan menggunakan metode jaringan syaraf tiruan algoritma Learning Vector Quantization dan Back Propagation adalah berupa rancangan antarmuka (interface) yang terdiri dari form-form sebagai perantara antara sistem dengan User (pengguna).

3.2.2 Perancangan Menu Utama

Rancangan Menu Utama terdiri dari menu Pengenalan, Help, About serta Keluar yang dapat dilihat pada Gambar 3.15.

Gambar 3.15 Rancangan Menu Utama Gambar Latar

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Help

Pengenalan About Keluar

1 2 3 4

(65)

Keterangan:

1. Menu Pengenalan : untuk menjalankan program pengenalan

2. Menu Help : untuk membuka form informasi bantuan aplikasi. 3. Menu About : untuk membuka form informasi keterangan aplikasi 4. Menu Keluar : untuk menutup form Menu Utama

5. PictureBox : untuk menampilkan citra latar

3.2.3 Perancangan Pengenalan Algoritma Backpropagation

Rancangan Pengenalan Algoritma Backpropagation berfungsi untuk pengenalan citra nomor plat yang dapat dilihat pada Gambar 3.16.

Gambar 3.16 Rancangan Pengenalan Algoritma Backpropagation Keterangan:

1. Label berfungsi untuk menampilkan folder tempat file citra mobil 2. Button berfungsi untuk memilih folder citra mobil

3. Button berfungsi untuk menghentikan proses deteksi 1

Load Stop Keluar

Tampilan Citra Mobil

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Folder File xxxxxxxxxxxxxxxxxxxxxxxxxx

Lama (Detik) Hasil Deteksi

9

(66)

52

4. Button berfungsi untuk melanjutkan proses deteksi 5. Button berfungsi untuk keluar dari form

6. Label berfungsi untuk menampilkan plat nomor polisi 7. Label berfungsi untuk menampilkan lama proses deteksi

8. Label berfungsi untuk menampilkan nomor file citra yang diproses 9. PictureBox berfungsi untuk menampilkan mobil yang sedang dideteksi 10.Label berfungsi untuk menampilkan hasil pedeteksian nomor plat

3.2.4 Perancangan Pengenalan Algoritma LVQ

Rancangan Pengenalan Algoritma LVQ berfungsi untuk pengenalan citra nomor plat yang dapat dilihat pada Gambar 3.17.

Gambar 3.17 Rancangan Pengenalan Algoritma LVQ Keterangan:

11.Label berfungsi untuk menampilkan folder tempat file citra mobil 12.Button berfungsi untuk memilih folder citra mobil

13.Button berfungsi untuk menghentikan proses deteksi 1

Load Stop Keluar

Tampilan Citra Mobil

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Folder File xxxxxxxxxxxxxxxxxxxxxxxxxx

Lama (Detik) Hasil Deteksi

9

Gambar

Tabel 2.1Jenis Mode Warna
Tabel 2.2 Bitmap Info Header
Gambar 2.6 Arsitektur Jaringan Learning Vector Quantization (Kusumadewi,2006)
Gambar 2.7 Arsitektur jaringan Backpropagation (Andrijasa, 2010).
+7

Referensi

Dokumen terkait

Pada Peraturan Biro Klasifikasi Indonesia Kapal Kayu 1996, daerah pelayaran dari kapal dan ukuran utama kapal kayu merupakan komponen penting untuk menentukan modulus

maka Indonesia merupakan salah satu pangsa pasar yang bagus dan menggiurkan dalam 5 tahun kedepan untuk merupakan suatu data yang sangat menarik untuk investasi membangun

Pendidikan adalah bukan pendadakan sehingga dalam mendidik tentunya akan ada proses dan tahapan-tahapannya termasuk mengenai metode pendidikan dan penerapan

Sebelum dikemukakan implementasi PAIKEM pada pembelajaran bahasa Indonesia, perlu dikemukakan secara umum implementasi PAIKEM di sekolah. Implementasi PAIKEM di sekolah

32 Tahun 2009 WHQWDQJ ³3HUOLQGXQJDQ GDQ 3HQJHORODDQ /LQJNXQJDQ +LGXS´ DGDODK XSD\D pemerintah dalam hal ini Badan Pengelolaan Lingkungan Hidup (BPLH) untuk memberikan teguran

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

Puji dan syukur kepada Tuhan Yang Maha Esa atas kasih, pernyertaan serta kekuatan yang diberikan-Nya kepada penulis, sehingga dapat menyelesaikan penulisan skripsi kami yang

semester, dipandang perlu menetapkan tentang Hari Efektif, Hari Efektif Fakultatif, dan Hari Libur bagi Satuan Pendidikan di Provinsi Jawa Timur Tahun Pelajaran