Pengenalan pola plat nomor kendaraan bermotor dengan menggunakan PCA dan metode propagasi balik.
i
BERMOTOR LENGAN MENGGUNAKAN PCA LAN
METOLE PROPAGASI BALIK
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana
Komputer Program Studi Teknik Informatika
LISUSUN OLEH : Levi Yenni Sinaga
08 5314 091
Jurusan Teknik Informatika
Fakultas Sains dan Teknologi
Universitas Sanata Lharma
Yogyakarta
(2)
ii
RECOGNITION USING PCA ANL BACK
PROPAGATION METHOL
A THESIS
Presented as Partial Fulfillment of the Requirements For the Degree of Sarjana Komputer
In Informatics Engineering Department
By : Levi Yenni Sinaga
08 5314 091
INFORMATICS ENGINEERING STULY PROGRAM
INFORMATICS ENGINEERING LEPARTMENT
FACULTY OF SCIENCE ANL TECHNOLOGY
SANATA LHARMA UNIVERSITY
YOGYAKARTA
2013
(3)
iii SKRIPSI
PENGENALAN POLA PLAT NOMOR KENLARAAN BERMOTOR LENGAN MENGGUNAKAN
PCA LAN METOLE PROPAGASI BALIK
Oleh :
Levi Yenni Sinaga
NIM : 08 5314 091
Telah Disetujui Oleh :
Pembimbing
(4)
iv SKRIPSI
PENGENALAN POLA PLAT NOMOR KENLARAAN BERMOTOR LENGAN MENGGUNAKAN PCA LAN METOLE PROPAGASI BALIK
Yang dipersiapkan dan disusun oleh : Devi Yenni Sinaga
NIM : 08 5314 091
Telah dipertahankan didepan Tim Penguji Pada tanggal 31 Juli 2013 Dan dinyatakan memenuhi syarat.
Susunan Tim Penguji
Tanda tangan Ketua : Dr. M. Linggo Sumarno, M.T. ... Sekretaris : Eko Hari Parmadi, S.Si, M.Kom ... Anggota : Dr. C. Kuntoro Adi, SJ., M.A., M.Sc. ...
Yogyakarta ... Agustus 2013 Fakultas Sains dan Teknologi
Universitas Sanata Dharma Dekan
(5)
v
jika kita takut dengan hujan. Begitu pula jangan mengharapkan kesuksesan jika kita takut dengan kegagalan ”
Yesaya 41:10
Janganlah takut, sebab Aku menyertai engkau, janganlah bimbang, sebab Aku ini Allahmu; Aku akan meneguhkan, bahkan akan menolong
engkau; Aku akan memegang engkau dengan tangan kanan-Ku yang membawa kemenangan.
Kupersembahkan untuk : TuhankuYesus Kristus Kedua Orang Tua saya dan keluarga Sahabat Terkasih saya
(6)
vi
PERNYATAAN KEASLIAN KARYA
Saya menyatakan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya orang lain kecuali telah disebutkan dalam kutipan atau daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 21 Agustus 2013 Penulis
(7)
vii
PEUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKALEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma : Nama : Devi Yenni Sinaga
NIM : 08 5314 091
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :
PENGENALAN POLA PLAT NOMOR KENLARAAN BERMOTOR LENGAN MENGGUNAKAN
PCA LAN METOLE PROPAGASI BALIK
Beserta perangkat yang diberikan (bila ada). Dengan demikian saya memberikan Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas dan mempublikasikan di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataam ini saya buat dengan sebenarnya.
Yogyakarta, 21 Agustus 2013 Penulis,
(8)
viii
Saat ini sistem pengenalan pola plat motor sudah banyak dilakukan di beberapa pusat perbelanjaan, pertokoan, grdung instasi hingga universitas. Salah satu teknologi pada sistem pengenalan pola plat motor tersebut adalah teknologi yang menggunakan preprocessing citra dan jaringan syaraf tiruan. Penelitian ini mengembangkan suatu metode perpaduan antara Principal Component Analysis
(PCA) dan jaringan syaraf tiruan propagasi balik.
Pada penelitian ini, digunakan 180 data pelatihan yang diambil dari 36 karakter untuk 5 jenis sampel. Data pelatihan tersebut kemudian digunakan untuk menguji 30 foto plat nomor. 30 foto plat nomor tersebut diperoleh dari nomor polisi pada Tanda Nomor Kendaraan Bermotor (TNKB) keluaran 2011. Jaringan syaraf tiruan ini menggunakan 2 lapisan tersembunyi dengan jumlah neuron yang berbeda-beda mulai dari 10, 15, 20, dan 25 neuron. Adapun parameter-parameter yang digunakan dalam propagasi balik antara lain : fungsi aktivasi logsig dan
tansig, maksimum epoch adalah 50 000, nilai mean square error(mse) adalah 0,01 dengan menggunakan gradient descent sebagai algoritma pembelajaran, nilai maksimum learning rate adalah 0,01.
Hasil yang diperoleh pada penelitian ini menunjukkan bahwa penggunaan metode kombinasi antara PCA dan propagasi balik menggunakan 1 lapisan tersembunyi memiliki akurasi paling baik. Nilai akurasi yang didapatkan adalah bervariasi dari 44,725% sampai dengan 58,227%.
(9)
ix
ABSTRACT
Nowaday, the license plate pattern recognition system has used in some shopping centers , instantion building and even a university. One of the technology in the system is a technology which is using an image preprocessing and artificial neural network. This research is developing a combination method of principal compnent analysis (PCA) and back propagation artificial neural network. The aims of this research are to know the implementation of back propagation neural network in a license plate pattern recognition system and its accuracy.
This research is using 180 training data which is obtained from 36 characters for 5 kinds of sample. Then the training data is used t to test 30 license plate pictures. The license plate image is taken from the police number in Tanda Nomor Kendaraan Bermotor(TNKB) that is published in 2011. The artificial neural network in this research is using 2 hidden layer with different neuron’s amount start from 10, 15, 20, and 25 neurons. There are some parameter which are used in the back propagation process such as : logsig and tansig transfer function, maximum epoch is 50.000, mean square error(mse) is 0,01 with using gradient descent as the algorithm learning, maximum learning rate is 0,01.
Result of this research shows that the combination method of principal component analysis (PCA) and back propagation artificial neural network using 1 hidden layer is obtaining the best accuracy. The accuracy are variated from 44,725% to 58,227%.
(10)
x
Puji syukur kepada Tuhan Yang Maha Esa yang telah memberikan segala karunia-Nya sehingga penulis dapat menyelesaiakan skripsi dengan judul “Pengenalan Pola Plat Nomor Kendaraan Bermotor dengan Menggunakan PCA dan Metode Propagasi Balik”. Dalam kesempatan ini, penulis ingin menguncapkan terima kasih yang sebesar-besarnya kepada semua pihak yang turut memberikan dukungan, semangat dan bantuan hingga selesainya penyusunan skripsi ini:
1. Tuhan Yesus Kristus yang selalu memberikan hikmat dan memberkati di setiap langkah
2. Dr. C. Kuntoro Adi, SJ., M.A., M.Sc. selaku dosen pembimbing, terima kasih atas segala bimbingan, waktu, kesabaran dan saran dalam mengarahkan dan membimbing penulis dalam menyelesaikan tugas akhir ini.
3. Ibu P.H. Prima Rosa, S.Si., M.Sc. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
4. Ibu Ridowati Gunawan, S.Kom., M.T. selaku kaprodi Teknik Informatika 5. Sri Hartati Wijono, S.Si, M.Kom. selaku pembimbing akademik.
6. Dr. M. Linggo Sumarno, M.T. dan Eko Hari Parmadi, S.Si, M.Kom. selaku dosen penguji atas saran dan kritikan yang telah diberikan.
7. Seluruh staff pengajar Prodi Teknik Informatika Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
(11)
xi
untuk doa, perhatian dan semangat yang selalu diberikan serta dukungan matarial selama perkuliahan.
9. Kepada keluarga Silalahi, Opung, Tulang Lesly dan kakak sepupu saya yang selalu setia memberikan dukungan lewat doa, semangat yang tak henti-hentinya diberikan.
10. Teman-teman seperjuangan (Linardi, Roy Syahputra, Esy, Siska, Petra, Bebet, Ochak, Agnes, Putri, Itha, Surya, Angga, Endro, wulan, Reza, Ade, Tina, herpinto, Ina, Abud, Danang, Yunita Meme) atas semangat, motivasi dan kerelaan waktunya untuk berdiskusi. Good Luck lor us!
11. Sahabat-sahabat Kost Putri Sari Ayu ( Sari Tambunan, Ade Mauryn, Mariana, Melisa, Novie, Rotua, Monik, Jolina, Yoes Tenia, dan Metta) atas semangat, motivasi, dan keceriaan yang selelu diberikan dalam menyelesaikan skripsi ini.
12. Seluruh teman-teman Teknik Informatika angkatan 2008 dan pihak-pihak lain yang tidak dapat disebutkan satu per satu
Penulis menyadari bahwa tugas akhir ini jauh dari sempurna, oleh karna itu kritik dan saran yang sifatnya membangun sangat penulis harapkan. Akhir kata, penulis berharap semoga skripsi ini dapat bermafaat bagi pembaca dan pihak lain yang membutuhkannya.
Yogyakarta, 21 Agustus 2013
(12)
xii
HALAMAN JUDUL ... i
HALAMAN JUDUL (INGGRIS) ... ii
HALAMAN PERSETUJUAN ... iii
HALAMAN PENGESAHAN...iv
PERNYATAAN KEASLIAN KARYA ...vi
PERNYATAAN PERSETUJUAN ... vii
ABSTRAK ... viii
ABSTRACT ... ix
KATA PENGANTAR ... x
DAFTAR ISI ... xii
DAFTAR TABEL ... xvii
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang Masalah... 1
1.2 Rumusan Masalah ... 3
1.3 Tujuan Penelitian ... 4
1.4 Batasan Masalah ... 4
1.5 Luaran Penelitian ... 6
1.6 Manfaat dan Kegunaan Penelitian ... 6
1.7 Sistematika Penulisan ... 6
BAB II LANDASAN TEORI ... 8
2.1 Plat Nomor Kendaraan ... 8
2.2 Pengenalan Pola ... 9
2.3 Pengolahan Citra Digital ... 10
2.3.1 Jenis-Jenis Citra Digital ... 11
2.3.2 Konversi Citra ... 11
2.3.3 Ekstraksi Ciri ... 13
2.4 Jaringan Syaraf ... 17
2.4.1 Jaringan Syaraf Biologi ... 17
(13)
xiii
BAB III ANALISA DAN PERANCANGAN SISTEM ... 33
3.1 Analisa Sistem ... 33
3.2 Analisa klasifikasi dengan JST Propagasi Balik ... 35
3.3 Perancangan Sistem ... 37
3.3.1 Perancangan Propagasi Balik ... 38
3.3.2 Pelatihan (Pembentukan Model atau Training) ... 38
3.3.3 Proses Pengenalan (Pengujian atau Testing) ... 45
3.3.4 Pengujian Hasil Akurasi ... 51
3.4 Perancangan User Interlace ... 51
3.4.1 Desain Use-case ... 51
3.4.2 Desain User Interface Program ... 53
BAB IV IMPLEMENTASI DAN ANALISA SISTEM ... 60
4.1 Implementasi Pelatihan Data ... 60
4.1.1 Implementasi Pemrosesan Awal ... 60
4.1.2 Implementasi Proses pengenalan Plat Motor ... 65
4.2 Impementasi Antar Muka yang Digunakan pada Sistem ... 67
4.2.1 Halaman Depan ... 67
4.2.2 Halaman Normalisasi Citra latih ... 68
4.2.3 Halaman Pelatihan Citra Latih ... 70
4.2.4 Halaman Pengujian Citra ... 73
4.2.5 Halaman Bantuan ... 74
4.3 Analisa Sistem ... 75
4.3.1 Analisa Input Data Pelatihan ... 75
4.3.2 Analisa Pengenalan Gambar Plat Motor Roda Dua ... 77
4.4 Kelebihan dan Kekurangan Sistem ... 118
4.4.1 Kelebihan Sistem ... 118
4.4.2 Kekurangan Sistem ... 118
BAB V ... 119
KESIMPULAN DAN SARAN ... 119
(14)
xiv
DAFTAR PUSTAKA ... 111
(15)
xv
Gambar 2.1 Contoh Plat Nomor... 9
Gambar 2.2 Gambar Sel Saraf Biologi... 18
Gambar 2.3 single layar network... 21
Gambar 2.4 multilayar network... 22
Gambar 2.5 Threshold... 23
Gambar 2.6 Logsig... 23
Gambar 2.7 Identitas... 24
Gambar 2.8 Hard Limit... 24
Gambar 2.9 Symetric hard Limit... 24
Gambar 2.10 Bipolar... 25
Gambar 2.11 Saturating Linear... 25
Gambar 2.12 Symetric Saturaturing Linear... 26
Gambar 2.13 Sigmod Bipolar... 26
Gambar 2.14 Arsitektur Propagasi Balik (JJ Siang, 2005)... 28
Gambar 3.1 Plat Nomor Kendaraan Bermotor... 35
Gambar 3.2 Diagram Sistem Secara Umum... 37
Gambar 3.3 Skema Pelatihan(Pembentukan Propagasi Balik)... 40
Gambar 3.4 Skema Pengujian (Testing Propagasi Balik)... 46
Gambar 3.5 Diagram Use-Case... 52
Gambar 3.6 Tampilan halaman utama... 54
Gambar 3.7 Halaman Proses Normalisasi Citra Latih... 55
Gambar 3.8 Halaman Proses Pelatihan Citra Latih... 56
Gambar 3.9 Halaman Pengujian Citra... 57
Gambar 3.10 Halaman Bantuan... 58
Gambar 3.11 Tampilan antar muka Open File... 59
Gambar 4.1 Halaman Depan... 68
Gambar 4.2 Normalisasi Citra latih... 69
(16)
xvi
Gambar 4.5 Proses Neural Network Training... 72
Gambar 4.6 NN Training Sudah Selesai... 72
Gambar 4.7 Hasil Keluaran NN Training... 73
Gambar 4.8 Halaman Pengujian Citra... 74
Gambar 4.9 Halaman Bantuan... 75
Gambar 4.10 Hasil Normalisasi Jenis Pertama... 77
Gambar 4.11 Hasil Normalisasi Jenis Kedua... 78
Gambar 4.12 Hasil Normalisasi Jenis Ketiga... 78
Gambar 4.13 Hasil Normalisasi Jenis Keempat... 79
Gambar 4.14 Hasil Normalisasi Jenis Kelima... 79
(17)
xvii
Tabel 3.1 Data Training... 34
Tabel 4.1 Pengujian dengan 10Neuron dan 1 Layer... 80
Tabel 4.2 Confusion Matrix dengan 10Neuron dan 1 Layer... 83
Tabel 4.3 Pengujian dengan 15Neuron dan 1 Layer... 85
Tabel 4.4 Confusion Matrix dengan 15Neuron dan 1 Layer... 88
Tabel 4.5 Pengujian dengan 20Neuron dan 1 Layer... 90
Tabel 4.6 Confusion Matrix dengan 20Neuron dan 1 Layer... 93
Tabel 4.7 Pengujian dengan 25Neuron dan 1 Layer... 95
Tabel 4.8 Confusion Matrix dengan 25Neuron dan 1 Layer... 98
Tabel 4.9 Pengujian dengan 15Neuron dan 2 Layer... 100
Tabel 4.10 Confusion Matrix dengan 15Neuron dan 2 Layer... 103
Tabel 4.11 Pengujian dengan 20Neuron dan 2 Layer... 105
Tabel 4.12 Confusion Matrix dengan 20Neuron dan 2 Layer... 108
Tabel 4.13 Pengujian dengan 25Neuron dan 2 Layer... 110
Tabel 4.14 Confusion Matrix dengan 25Neuron dan 2 Layer... 113
Tabel 4.15 Hasil Identifikasi 1 Layer... 115
(18)
1
BAB I PENLAHULUAN
1.1 Latar Belakang Masalah
Nomor polisi kendaraan bermotor merupakan ciri atau tanda pengenal dari suatu kendaraan yang diberikan oleh kepolisian. Setiap kendaraan bermotor 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 plat nomor kendaraan masih banyak yang bersifat manual. Hal ini terlihat dari beberapa pusat perbelanjaan, pertokoan, gedung instansi hingga universitas yang masih menggunakan sistem manual. Semua petugas yang melakukan sistem manual itu menggunakan karcis untuk mencatat nomor kendaraan tersebut. Dengan kinerja petugas parkir yang masih manual, kemungkinan terjadi kesalahan dalam hal pencatatan sangat tinggi. Hal ini juga menjadi salah satu penyebab lamanya pelayanan parkir. Untuk mendapatkan suatu otomatisasi pada sistem pengelolaaan parkir akan dilakukan pencatatan nomor polisi sebagai subsistem dari sistem pengelolaan parkir otomatis dengan pengolahan citra digital. Dengan adanya teknologi pengolahan citra, maka data berupa gambar yang mengandung gambar suatu karakter dapat diambil informasinya dan dikonversikan ke dalam bentuk tulisan/teks.
(19)
Proses pengolahan citra ini memanfaatkan gambar plat nomor yang berdimensi RGB. Lalu dengan begitu plat nomor dapat diubah kedalam warna hitam (background) dan warna putih (tulisan) atau yang sering disebut Black and White. Hasil dari pengolahan citra diwujudkan dalam bentuk kode-kode biner, dan kode-kode ini akan menjadi inputan jaringan syaraf tiruan. Jaringan syaraf tiruan adalah salah satu representasi buatan dari otak manusia yang selalu mencoba untuk mensimulasikan proses pembelajaran pada otak manusia. Istilah buatan digunakan karena jaringan syaraf ini diimplementasikan dengan menggunakan program komputer, yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.
Salah satu algoritma pembelajaran dalam Jaringan Syaraf Tiruan(JST) adalah propagasi balik. Algoritma pembelajaran ini merupakan algoritma pembelajaran yang terawasi di mana input dan outputnya telah diketahui sebelumnya. Pasangan data tersebut juga berfungsi sebagai pemberi informasi yang jelas tentang bagaimana sistem jaringan yang harus dibangun dan dimodifikasi sehingga nantinya diperoleh JST dengan bentuk yang terbaik. Pasangan data ini dipakai untuk melatih bobot-bobot input untuk mencari output
aktual untuk dibandingkan dengan output target awal.
Penelitian yang menggunakan metode Propagasi Balik telah banyak dilakukan dan hasilnya cukup maksimal. Salah satu penelitian telah menemukan tingkat keberhasilan 85% dan keberhasilan sistem dalam mengenali setiap karakter pada plat tergantung pada pola yang telah dipelajari oleh sistem. (Krisman, 2007).
(20)
Penelitian ini melalui proses thresholding, mean lilter, segmentasi dan propagasi balik, sedangkan semua citra yang diproses dengan format file *bmp. Rata-rata sistem pengenalan pola ini sudah bersifat secara otomatisasi yang langsung dapat mengenali plat nomor tersebut. Penelitian selanjutnya telah dilalukan dengan menggunakan metode principal components analysis yang menghasilkan tingkat keberhasilan 82%, dan ini menggunakan plat nomor khusus pada mobil.(Resmana Lim, 2003). Namun kelemahan dari sistem ini apabila pada proses segmentasi terdapat karakter yang saling berhubungan maka akan dapat terektraksi bersama. Hal ini tentu saja dapat menyebabkan proses pengenalan yang salah.
Berdasarkan penelitian yang telah dilakukan oleh peneliti sebelumnya, maka penulis melakukan penelitian mengenai pengenalan pola plat nomor bermotor dengan menggunakan metode metode propagasi balik. Sehingga dengan metode ini diharapkan dapat mengenali dan menganalisa perhitungan dengan tingkat akurasi yang cukup baik yang disertai dengan pembangunan sebuah sistem pengenal pola plat nomor kendaraan bermotor dalam sistem komputer.
1.2 Rumusan Masalah
Penelitian ini akan menyelesaikan masalah sebagai berikut :
1. Bagaimana pendekatan propagasi balik jaringan syaraf tiruan mampu mengenal pola plat nomor kendaraan bermotor secara optimal ?
2. Seberapa akurat metode propagasi balik dalam mengenal pola plat nomor kendaraan bermotor ?
(21)
1.3 Tujuan Penelitian
Membuat rancangan, mengimplementasikan, menganalisa dan mengetahui kelebihan serta kekurangan metode propagasi balik dalam menangani pengenalan pola plat nomor kendaraan bermotor.
1.4 Batasan Masalah
1. Pola nomor kendaraan bermotor yang diteliti adalah pola plat nomor kendaraan bermotor yang menjadi plat khusus Daerah Istimewa Yogyakarta. 2. Plat nomor kendaraan yang akan diteliti jenis plat pribadi atau yang berwarna
hitam dengan karakter yang berwarna putih yang terdapat pada kendaraan bermotor pada roda dua.
3. Plat nomor yang digunakan adalah Tanda Nomor Kendaraan Bermotor (TNKB) keluaran April 2011 yang dikeluarkan Korps Lantas Mabes Polri. 4. Sampel plat yang digunakan berdasarkan :
a. Citra yang diproses adalah citra bertipe JPEG(*.jpg).
b. Pendeteksian gambar plat nomor dibatasi hanya pada gambar berformat RGB dengan ukuran gambar skala maksimal 4000 x 2800 piksel
c. Dimensi setiap karakter setelah disegmentasi berskala 7 x 5 piksel
d. Pengambilan foto plat motor dengan menggunakan filter CPL yang digunakan pada lensa kamera, sehingga pencahayaan yang dihasilkan tidak terlalu terang.
(22)
e. Foto yang akan diolah hanya pada bagian nomor polisinya saja.
f. Foto diambil dari jarak 1,5 sampai 2 meter dari tampak depan dengan kondisi motor tegak.
5. Pengenalan karekter dan angka dibatasi dengan berjumlah 180 yang terdiri 5 jenis karakter dengan masing-masing jenis ada 36 karekter yang memiliki jenis lont sama.
6. Ektraksi leature menggunakan warna hitam-putih, segmentasi dan Principal Component Analysis(PCA).
7. Parameter-parameter yang dilakukan dalam proses propagasi balik antara lain :
a. Fungsi aktivasi adalah Logsig dan Tansig
b. Maksimum epoch yang digunakan adalah 50.000
c. Learning rate yang digunakan dengan nilai maksimum 0,01
d. Nilai Mean Square Error (MSE) yang digunakan adalah 0,01 dan menggunakan gradient descent sebagai algorima pembeljarannya.
e. Kondisi berhenti jika epoch sudah mencapai jumlah epoch maksimal atau MSE sudah mencapai target error
8. Dalam pengembangan Jaringan Syaraf Tiruan menggunakan dua lapisan tersembunyi dengan jumlah neuron mulai dari 10, 15, 20 dan 25 neuron
yang dilakukan masing-masing training.
9. Proses pelatihan dan pengenalan pola dengan menggunakan fungsi yang telah disediakan library MATLAB Version 7.1.0.246 (R14) Service Pack 3.
(23)
1.5 Luaran Penelitian
Luaran dari penelitian ini adalah sistem automatik untuk pengenalan plat nomor kendaraan bermotor dalam mengenali setiap karakter yang ada pada plat nomor teresebut dengan hasil akurasi yang cukup tepat dan kedepannya menjadi dasar untuk sistem parkir yang hasilnya dalam bentuk teks karakter.
1.6 Manfaat dan Kegunaan Penelitian
Manfaat dan kegunaan penelitian ini meliputi :
1. Membantu perkembangan penelitian teknologi informasi di bidang pengenalan pola dan jaringan syaraf tiruan.
2. Membantu peneliti dalam pengenalan plat motor dengan menggunakan roda dua.
1.7 Sistematika Penulisan
BAB I PENLAHULUAN
Berisi latar belakang, rumusan masalah, tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB II LANLASAN TEORI
(24)
BAB III ANALISA LAN PERANCANGAN SISTEM
Bab ini berisi analisa dan gambaran umum mengenai perancangan sistem yang akan dibangun, yaitu sebuah perangkat lunak yang dapat mengenali pola plat nomor kendaraan bermotor dan menerjemahkannya ke dalam sebuah informasi.
BAB IV IMPLEMENTASI SISTEM
Berisi implementasi sistem menggunakan metode propagasi balik.
BAB V ANALISA HASIL LAN PEMBAHASAN
Bab ini berisi analisa hasil dan pembahasan mengenai pengenalan dan pengujian pola plat nomor kendaraan bermotor.
BAB VI KESIMPULAN LAN SARAN
Bab ini berisi kesimpulan dan saran yang diperoleh dari keseluruhan proses pembuatan tugas akhir ini, serta beberapa saran untuk pengembangan sistem lebih lanjut.
(25)
8
BAB II
LANLASAN TEORI
Dalam bab ini menguraikan tentang teori-teori yang digunakan, yaitu tentang plat nomor kendaraan, pengenalan pola dan berdasarkan Jaringan Syaraf Tiruan metode Propagasi Balik dimana ada algoritma serta langkah-langkah untuk proses pengenalannya dengan pelatihan standar propagasi balik.
2.1 Plat Nomor Kendaraan
Plat nomor adalah salah satu jenis identifikasi kendaraan bermotor yang terbuat dari aluminium yang telah terdaftar di kantor Sistem Administrasi Manunggal Satu Atap (SAMSAT). Plat nomor memiliki nomor seri yakni susunan huruf dan angka yang dikhususkan bagi kendaraan tersebut. Plat nomor atau Tanda Nomor Kendaraan Bermotor (TNKB) mempunyai aturan pembuatan yang terdiri dari tulisan dua baris, antara lain,
1. Baris pertama menunjukkan: kode wilayah (huruf), nomor polisi (angka), dan kode/seri akhir wilayah (huruf).
2. Baris kedua menunjukkan bulan dan tahun masa berlaku.
Bahan baku TNKB adalah aluminium dengan ketebalan 1 mm. Ukuran TNKB untuk kendaraan bermotor roda 2 dan roda 3 adalah 250x105 mm, sedangkan untuk kendaraan bermotor roda 4 atau lebih adalah 395x135 mm. Terdapat cetakan garis lurus pembatas lebar 5 mm di antara ruang nomor polisi
(26)
dengan ruang angka masa berlaku. Pada sudut kanan atas dan sudut kiri bawah terdapat tanda khusus (security mark) cetakan lambang Polisi Lalu Lintas; sedangkan pada sisi sebelah kanan dan sisi sebelah kiri ada tanda khusus cetakan "DITLANTAS POLRI" (Direktorat Lalu Lintas Kepolisian RI) yang merupakan hak paten pembuatan TNKB oleh Polri dan TNI.
Dengan pertambahannya kerdaraan Korps Lantas Mabes Polri terhitung mulai April 2011 ini mengganti desain plat nomor kendaraan. Ukurannya lebih panjang 5 centimeter daripada plat nomor sebelumnya. Perubahan ukuran plat dilakukan karena ada penambahan menjadi tiga huruf di belakang nomor, sementara sebelumnya hanya dua huruf. Perubahan ini membuat angka dan huruf pada plat nomor berdesakan, sehingga sulit dibaca. Dengan diperpanjangnya pelat tersebut, jarak antara nomor dan huruf pada pelat lebih luas sehingga mudah terbaca. Gambar dibawah ini merupakan contoh plat nomor yang berdomisili di Jakarta, dapat dilihat pada gambar 2.1 berikut,
Gambar 2.1 Contoh Plat Nomor
2.2 Pengenalan Pola
Pengenalan pola adalah suatu ilmu untuk mengklasifikasikan atau menggambarkan sesuatu berdasarkan pengukuran kuantitatif ciri atau sifat utama
(27)
dari suatu obyek. Sedangkan pola adalah suatu entitas yang terdefinisi dan dapat diidentifikasi serta diberi nama. Pengenalan pola dapat dilakukan sebagai tindakan untuk mengolah data mentah dan membuat suatu aksi berdasar kategori dari pola data tersebut.
Pada dasarnya pengenalan pola terdiri dari 3 langkah utama yaitu pemrosesan awal, ekstraksi fitur dan klasifikasi. Pemrosesan awal merupakan langkah untuk memfokuskan obyek data yang akan dikenali dengan obyek lain yang tidak digunakan. Dalam hal ini pemrosesan awal yang dilakukan terhadap obyek adalah dengan melakukan pengubahan citra digital menjadi citra biner. Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai piksel yaitu hitam dan putih. Citra biner juga dsering disebut citra B&W (Black and Withe) atau citra monokrom. Ekstraksi fitur dilakukan untuk menyerderhanakan data dengan melakukan pengukuran fitur tertentu sehingga informasi dasar dari data tersebut dapat terlihat. Proses berikutnya adalah kalsifikasi yaitu tidakan untuk mengelompokkan data atau fitur menjadi beberapa pola.
2.3 Pengolahan Citra Ligital
Secara umum, pengolahan citra digital menujuk pada pemrosesan gambar 2 dimensi menggunakan komputer. Dalam konteks yang lebih luas, pengolahan citra digital mengacu pada pemrosesan setiap data 2 dimensi. Citra digital merupakan sebuah array yang berisi nilai-nilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu. (Darma Putra, 2010)
(28)
Suatu citra dapat didefinisikan sebagai fungsi l(x,y), berukuran M baris dan N kolom, dengan x dan y adalah koordinat spasial, dan amplitude f di titik koordinat (x,y) dinamakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Apabila nilai x, y dan nilai amplitude l secara keseluruhan berhingga (linite) dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut adalah citra digital.
2.3.1 Jenis-Jenis Citra Ligital
Nilai suatu pixel memiliki nilai dalam rentang tertentu, dari nilai minimum sampai nilai maksimum. Jangkauan yang digunakan berbeda-beda tergantung dari jenis warna yang digunakan. Secara umum jangkauannya adalah 0-255. Citra dengan penggambaran seperti ini digolongkan ke dalam citra integer. Berikut ini adalah jenis-jenis citra berdasarkan nilai pixelnya, yaitu : (Darma Putra, 2010)
1. Citra Biner (Black and White)
Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai
pixel, yaitu hitam dan putih. Nilai yang terkandung dalam citra biner ini hanya memuat 0 atau 1 untuk mewakili nilai setiap pixel.
2. Citra Grayscale
Citra grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada setiap pixelnya, dengan kata lain nilai bagian RED=GREEN=BLUE. Nilai tersebut digunakan untuk menunjukkan tingkat intensitasnya. Warna
(29)
yang dimiliki adalah warna hitam, keabuan, dan putih. Tingkat keabuan pada
grayscale merupakan warna abu dengan berbagai tingkatan dari hitam hingga mendekati putih. Citra grayscale berikut memiliki kedalaman warna 8 bit (256 kombinasi warna keabuan).
3. Citra Warna
Pada citra warna, setiap titik mempunyai warna yang spesifik yang merupakan kombinasi dari 3 warna dasar, yaitu: merah, hijau dan biru. Format citra seperti ini sering disebut sebagai citra RGB (red-green-blue). Setiap warna dasar mempunyai intensitas sendiri dengan nilai maksimum 255 (8 bit), misalnya warna kuning merupakan kombinasi warna merah dan hijau sehingga nilai RGBnya adalah 255 255 0. Dengan demikian setiap titik pada citra warna membutuhkan data 3 byte. Jumlah kombinasi warna yang mungkin untuk format citra ini adalah 224 atau lebih dari 16 juta warna, dengan demikian bias dianggap mencakup semua warna.
2.3.2 Konversi Citra
Dasar dari pengolahan citra adalah pengolahan warna RGB pada posisi tertentu. Bila membaca citra RGB dengan ukuran width x height, akan menghasilkan matriks tiga dimensi dengan jumlah baris adalah height dan jumlah adalah kolom sejumlah tiga keping. Citra grayscale atau citra keabuan adalah citra yang hanya menggunakan warna pada tingkatan warna abu-abu. Warna abu-abu adalah salah satu-satunya warna pada ruang RGB dengan komponen merah, hijau,
(30)
dan biru mempunyai intensitas yang sama. Pada citra beraras keabuan hanya perlu menyatakan nilai intensitas untuk tiap piksel sebagai nilai tunggal, sedangkan pada citra berwarna perlu tiga nilai intensitas untuk setiap pikselnya. Berbeda dengan citra biner, citra grayscale disebut juga dengan citra 8-bit karena memiliki 28(256) kemungkinan nilai pada masing-masing pikselnya. Nilai tersebut dimulai dari nol untuk warna hitam dan 255 untuk warna putih.
Dalam melakukan konversi citra dengan mengubah nilai piksel yang semula mempunyai 3 nilai yaitu R, G, B menjadi satu nilai keabuan atau biner. Untuk operasi konversi citra dengan menggunakan rumus (Darma Putra, 2010):
= + +3
Bisa juga dengan memberi bobot (w) pada RGB dikarenakan mata manusia lebih sensitif pada warna hijau, merah dan biru. Operasi tersebut dengan rumus (Darma Putra, 2010):
= ( ) + ( ) + ( )
2.3.3 Ekstraksi Ciri
Ekstraksi ciri merupakan langkah pemilihan ciri yang ingin diidentifikasi dari citra angka yang menghasilkan ciri-ciri baru dari data mentah dengan menerapkan satu atau lebih transformasi. Pemilihan leature yang baik sulit untuk dilakukan karena sebuah leature yang buruk tidak akan merefleksikan keadaan sebenarnya dari data pemilihan leature yang baik. (Darma Putra, 2010)
(2.1)
(31)
Dalam penelitiana ini menggunakan beberapa metode untuk ekstraksi
leature dalam pengolahan citra yaitu :
1. Black and White
Dengan mengubah represantasi nilai RGB (Red, Green, Blue), sebuah gambar berwarna dapat diubah menjadi gambar yang terdiri dari warna hitam dan putih yang sering disebut B&W(Black and White)
2. Segmentasi
Segmentasi merupakan salah satu tahapan pre-processing yang digunakan untuk memotong suatu teks pada gambar yang diproses menjadi beberapa karakter. Teknik ini untuk membagi suatu citra menjadi beberapa daerah(region) dimana setiap daerah memiliki kemiripan atribut. Tujuan dari segmentasi adalah untuk menyederhanakan atau mengubah penyajian dari suatu gambar menjadi sesuatu yang lebih bermakna dan lebih mudah untuk menganalisanya. Terdapat tiga jenis segmentasi pada suatu objek yakni :
Line Segmentation,Word Segmentation, Character Segmentation, dan
Scaling.
Line Segmentation merupakan suatu pemotongan per baris pada teks dengan menggunakan histogram horizontal dimana local minimal dianggap sebagai garis pembatas antara baris teks. Word segmentation
digunakan untuk mensegmentasi per kata pada baris teks menggunakan histogram vertical dimana jarak spasi dianggap sebagai pemisah kata.
(32)
menggunakan histogram vertical yang dimodifikasi untuk setiap kata. Sedangkan scaling adalah proses menskala gambar karakter tulisan tangan menjadi beberapa piksel (pada bagian inti karakter).
Dalam hal ini, cara kerjanya dari segmentasi terdapat 2 jenis teknik, yaitu (Tria Adhi Wijaya, 2010) :
a. Segmentasi berdasarkan intensitas warna (derajat keabuan). Berasumsi bahwa objek-objek yang akan dipisahkan cenderung memiliki intensitas warna yang berbeda-beda dan masing-masing objek memiliki warna yang hampir seragam. Salah satu teknik segmentasi berdasarkan intensitas warna adalah mean clustering. Pada mean clustering dilakukan pembagian citra denga membagi histogram citra. Kelemahan segmentasi berdasarkan intensitas warna (derajat keabuan) antara lain adalah harus tahu dengan tepat berapa jumlah objek yang ada pada citra serta citra hasil kurang bagus jika pada citra terdapat beberapa objek dengan warna pada masing-masing objeknya bervariasi atau pada setiap objek memiliki warna yang sama.
b. Segmentasi berdasarkan karakteristik. Yaitu mengelompokkan bagian-bagian citra yang memiliki karakteristik yang sama berupa perubahan warna antara titik yang berdekatan, nilai rata-rata dari bagian citra tersebut. Untuk menghitung atau menentukan karakteristik digunakan perhitungan statistik, misalnya varian, standard deviasi, teori probabililitas, transformasi lourier. Salah satu teknik segmentasi
(33)
berdasarkan karakteristik adalah split and merge. Proses tersebut dilakukan secara rekursif karena pada setiap saat dilakukan proses yang sama tetapi dengan data yang selalu berubah
3. Principal Component Analysis (PCA)
Principal Component Analysis (PCA) atau sering disebut teknik pereduksi. Teknik pereduksi ini digunakan untuk memecahkan suatu dimensi menjadi leature yang lebih sedikit dari sebuah citra. Feature yang baru tersebut akan dibentuk melalui kombinasi bobot linear dalam ruang eigen. Citra akan dilatih dengan menggunakan variable yang lebih sedikit , dan ini akan lebih mudah untuk ditangani. Ketika menggunakan metode berdasarkan kenampakan, citra berukuran nxm piksel digambarkan sebagai sebuah vector dalam ruang yang berdimensi nxm (Rnxm). Dalam prakteknya, ruang dimensi nxm ini kadang tidak sesuai dengan piksel yang sudah ditetapkan dalam penelitian ini. Dengan PCA diharapkan mampu dalam memproyeksikan data yang berdimensi tinggi ke dalam subruang yang berdimensi yang lebih rendah. (Alla Krisnadhi, 2003).
Problem dalam PCA dimana menemukan eigenvalue dan eigen vektor. PCA adalah transformasi orthogonal (tegak lurus) dari sistem koordinat dimana dapat mendeskripsikan data. Koodinat dipilih dimana variansi dari data mencapai maksimum yang sering kali sudah cukup menjelaskan struktur dari data aslinya. Jika data dalam dimensi asli sulit untuk dipersentasikan melalui grafik, maka data tersebutkan disederhanakan
(34)
menggunakan data set yang dipersentasikan melalui rumus. Misalkan mempunyai data set yang sudah dicentering ∈ , = 1, . . , , ∑ = 0 dengan kovarian
= ∑ ′
Maka PCA menyelesaikan problem eigenvalue sebagai berikut : =
atau,
− = 0
Persamaan di atas bisa diselesaikan untuk mencari nilai A dengan menyelesaikan
det( − ) = 0
Untuk eigenvalue ≥ 0 dan eigenvector ∈ /{0}, dengan solusi adalah eigenvector dan ≠ 0 adalah eigenvalue yang terletak dalam span
, … . (Budi Santoso, 2007).
2.4 Jaringan Syaraf
2.4.1 Jaringan Syaraf Biologi
Otak manusia berisi berjuta-juta sel syaraf yang bertugas untuk memproses informasi. Tiap-tiap sel bekerja seperti suatu prosesor sederhana.
(2.3)
(2.4)
(2.5)
(35)
Masing-masing sel tersebut saling berinteraksi sehingga mendukung kemampuan kerja manusia.
Gambar 2.2 Gambar Sel Saral Biologi
Gambar 2.3 menunjukkan susunan syaraf pada manusia. Setiap sel syaraf(neuron) akan memiliki satu inti, yang bertugas untuk melakukan pemrosesan informasi.
Neuron pada otak merupakan sistem yang bersifat memperkirakan toleransi kesalahan dalam dua hal. Pertama, otak manusia dapat mengenali sinyal masukan yang berbeda dari yang pernah diterima sebelumnya, contohnya manusia dapat mengenali seseorang yang wajahnya agak berbeda karena sudah lama tidak berjumpa. Kedua, otak manusia tetap mampu bekerja meskipun beberapa neuronnya tidak mampu bekerja dengan baik. Jika sebuah neuron rusak, neuron lain terkadang dapat dilatih untuk menggantikan fungsi sel yang rusak tersebut.
(36)
2.4.2 Jaringan Syaraf Tiruan (JST)
Sebuah jaringan syaraf tiruan merupakan model jaringan neural yang meniru prinsip kerja dari neuron otak manusia (neuron biologis). (Kusumadewi, 2003) JST muncul pertama kali muncul setelah model sederhana dari neuron buatan diperkenalkan oleh McCulloch dan Pitts pada tahun 1943. Model sederhana berdasarkan fungsi neuron biologis yang merupakan dasar unit pensinyalan dari sistem syaraf.
Jaringan syaraf tiruan memiliki beberapa kemampuan seperti yang dimiliki oleh manusia, yaitu :
1. Kemampuan untuk belajar dari pengalaman
2. Kemampuan melakukan perumpamaan (generalization) terhadap input baru dari pengalaman yang dimilikinya.
3. Kemampuan memisahkan (abstraction) karateristik penting dari input yang mengandung data yang tidak penting.
Dengan kemampuan jaringan syaraf tiruan, masalah yang rumit termasuk kurangnya informasi yang tersedian dapat diatasi. Jaringan syaraf tiruan telah dimanfaatkan dalam beberapa bidang pengetahuan seperti pemrosesan sinyal (pengenalan pola, pengenalan suara, dan pengenalan gambar), kompresi, rekonstruksi data, pengumpulan data dan penyederhanaan data.
(37)
2.4.2.1 Model Neuron
Neuron adalah unit proses informasi yang pokok dalam operasi jaringan syaraf tiruan. Model neuron terdiri dari 3 elemen dasar (Simon Haykin, 1994) yaitu:
1. Himpunan unit-unit yang dihubungkan dengan jalur koneksi. Jalur-jalur tersebut mempunyai bobot/kekuatan yang berbeda-beda. Bobot yang mempunyai nilai 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 jaringan yang terbentuk).
2. Suatu unit penjumlah yang akan menjumlahkan input-input sinyal yang sudah dikalikan dengan bobotnya. Misalkan X1, X2, …, Xm adalah unit-unit
input dan Wj1, Wj2, … , Wjm adalah bobot penghubung dari unit-unit tersebut ke unit keluaran Yj , maka unit penjumlah akan memberikan keluaran sebesar
uj = X1 Wj1 + X2Wj2 + … +XmWm.
3. Fungsi aktivasi yang akan menentukan apakah sinyal dari input neuron akan diteruskan ke neuron lain ataukah tidak
2.4.2.2 Arsitektur Jaringan Syaraf Tiruan.
Arsitektur jaringan syaraf tiruan merupakan pengaturan spesifik dan hubungan antar neuron pada lapisan dalam jaringan. Neuron-neuron yang terletak pada lapisan yang sama memiliki sifat dan fungsi aktivasi yang sama.
(38)
Neuron-neuron dalam jaringan syaraf tiruan dikelompokkan dalam lapisan masukan (input layer) merupakan lapisan pertama yang menerima sinyal dari bagian luar jaringan, lapisan tersembunyi (hidden layer) yaitu lapisan yang menerima sinyal dari neuron pada lapisan masukan dan lapisan keluaran (output layer) yaitu lapisan yang mengekstrak ciri dari yang berkaitan atau pola dari sinyal yang diterima.
Beberapa arsitektur jaringan yang sering dipakai dalam jaringan syaraf tiruan antara lain :
1. Jaringan dengan lapisan tunggal (single layer network)
Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot – bobot saling terhubung. Jaringan ini hanya menerima input,
kemudian secara langsung akan mengolahnya mejadi output tanpa harus melalui lapisan tersembunyi. Semua unit input akan dihubungkan dengan setiap unit output.
(39)
2. Jaringan dengan lapisan jamak (multilayer network)
Jaringan dengan banyak lapisan memiliki 1 atau lebih lapisan yang terletak diantara lapisan input dan lapisan output. Pada umumnya, ada lapisan bobot-bobot yang terletak antara 2 lapisan yang bersebelahan. Jaringa dengan banyak lapisan ini dapat menyelesaikan permasalahan yang lebih sulit daripada lapisan dengan lapisan tunggal.
Gambar 2.4 multilayar network
2.4.2.3 Fungsi Aktivasi
Dalam jaringan syaraf tiruan, fungsi aktivasi digunakan untuk menentukan keluaran suatu neuron. Argumen fungsi aktivasi adalahnet masukan (kombinasi linier masukan dan bobotnya). Jika net=∑ , maka fungsi aktivasinya adalah f (net) = f(∑XjWi ) (Jong Jek Siang, 2009).
(40)
Fungsi aktivasi dalam jaringan syaraf tiruan : 1. Fungsi threshold
( ) = 1,0, < 0 ≥ 0
Gambar 2.5 Threshold
Jika fungsi thereshold berharga -1 atau 1 disebut threshold bipolar. 2. Fungsi Log-Sigmod/sigmod biner(Logsig)
( ) =
Nilai fungsi dari sigmod terletak antara 0 dan 1 dan dapat diturunkan menjadi
( ) = ( ) 1 − ( )
Gambar 2.6 Logsig
3. Fungsi Identitas/Linear
( ) =
(2.7)
(2.8)
(2.9)
(41)
Gambar 2.7 Identitas
Fungsi identitas sering digunakan jika diinginkan keluaran jaringan berupa bilangan rill ( bukan hanya pada range (0,1) atau (-1,1)).
4. Fungsi hard Limit (hardlim)
( ) = 0,1, > 0 ≤ 0
Gambar 2.8 Hard Limit
5. Fungsi Symetric Hard Limit (hardlims)
( ) = 1,0, > 0 = 0 −1, < 0
Gambar 2.9 Symetric hard Limit
(2.11)
(42)
6. Fungsi Bipolar (dengan threshold)
( ) = 1,−1, ≥ 0 < 0
Gambar 2.10 Bipolar
7. Fungsi Saturating Linear (satlin)
( ) = + 0,5; 1, − 0,5 ≤ ≤ 0,5 > 0,5 0, ≤ −0,5
Gambar 2.11 Saturating Linear
8. Fungsi Symetric Saturating Linear (satlins)
( ) = , 1, − 1 ≤ ≤ 1 ≥ 1 0, ≤ −1
(2.13)
(2.14)
(43)
Gambar 2.12 Symetric Saturaturing Linear
9. Fungsi Hyperbolic Tangent Sigmod/Sigmod Bipolar (Tansig)
Fungsi sigmod bipolar hampir sama dengan fungsi sigmod biner, hanya saja output dari fungsi ini memiliki range antara 1 sampai -1
( ) = Dengan fungsi turunan menjadi
( ) = [1 + ( )][1 − ( )]
Gambar 2.13 Sigmod Bipolar
(2.16)
(44)
2.4.3 Jaringan Syaraf Tiruan Propagasi Balik (Backpropagation)
Propagasi balik merupakan algoritma pembelajaran yang menggunakan banyak lapisan untuk mengubah bobot-bobot yang terhubung dengan neuron-neuron yang ada lapisan tersembunyinya. Algoritma propagasi balik menggunakan
error output untuk mengubah nilai bobot-bobotnya dalam arah mundur (backward). Untuk mendapatkan error ini, tahap perambatan maju (lorward propagation) harus dikerjakan terlebih dahulu (Kusumadewi, 2003).
2.4.3.1 Arsitektur Propagasi Balik
Propagasi balik memiliki beberapa unit neuron yang ada dalam satu atau lebih layar tersembunyi. Gambar 2.10 adalah arsitektur Propagasi balik dengan n
buah masukan (ditambah sebuah bias), serta m buah unit keluaran. Vji merupakan
bobot garis dari unit masukan Xi ke unit layar tersembunyi Zj (Vj0 merupakan bobot garis yang menghubungkan bias di unit masukan ke unit layar tersembunyi
Zj). Wkj merupakan bobot dari unit layar tersembunyi Zj ke unit keluaran yk (Wk0
(45)
Gambar 2.14 Arsitektur Propagasi Balik (JJ Siang, 2005)
2.4.3.2 Fungsi Aktivasi Propagasi Balik
Fungsi aktivasi pada metode propagasi balik menggunakan sebuah fungsi aktivasi beserta turunan dari fungsi tersebut. Propagasi balik dapat menggunakan fungsi aktivasi sigmoid biner (yang memiliki range (0,1)) maupun sigmoid bipolar
(yang memiliki range (-1,1)) beserta turunan fungsinya. Pemilihan fungsi aktivasi tergantung pada kebutuhan nilai keluaran jaringan yang diharapkan. Bila keluaran jaringan yang diharapkan ada yang bernilai negatif, maka digunakan fungsi
sigmoid bipolar, sebaliknya bila nilai keluaran jaringan yang diharapkan bernilai positif atau sama dengan nol, maka digunakan fungsi sigmoid biner. Selain fungsi
sigmoid fungsi yang bias digunakan dalam metode propagasi balik adalah fungsi linear.
(46)
Fungsi sigmod biner :
( ) = Dengan turunan
( ) = ( )(1 − ( )) Fungsi sigmod bipolar
( ) = Dengan turunan
′( ) = [1 + ( )][1 − ( )]
Fungsi sigmoid memiliki nilai maksimum = 1. Maka untuk pola yang targetnya >1, pola masukan dan keluaran harus terlebih dahulu ditransformasikan sehingga semua polanya memiliki range yang sama seperti fungsi sigmoid yang dipakai. Alternatif lain adalah menggunakan fungsi aktivasi sigmoid hanya pada layar yang bukan layar keluaran. Pada layar keluaran, fungsi aktivasi yang dipakai adalah fungsi identitas : l(x) = x.
2.4.3.3 Laju Pembelajaran (Learning Rate)
Laju belajar merupakan suatu konstanta yang ditentukan pada awal pembelajaran. Laju belajar berfungsi memperbaiki kecepatan komputasi back propagation untuk mencapai target yang diinginkan. Pada tahap pembelajaran propagasi balik, penyesuaian bobot dilakukan berdasarkan nilai kesalahan yang dicapai oleh jaringan dengan tujuan agar suatu saat tercapai konfigurasi bobot
(2.18)
(2.19)
(2.20)
(47)
yang optimal, sehingga respon yang dihasilkan oleh jaringan mendekati suatu kondisi yang diinginkan. Nilai laju pembelajaran yang optimal bergantung pada kasus yang dihadapi.
2.4.3.4 Algoritma Propagasi Balik
Pelatihan propagasi balik meliputi 3 fase. Fase pertama adalah fase maju. Pola masukan dihitung maju mulai dari layar masukan hingga layar keluaran menggunakan fungsi aktivasi yang ditentukan. Fase kedua adalah fase mundur. 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 di layar keluaran fase ketiga adalah modifikasi bobot untuk menurunkan kesalahan yang terjadi. (Kusumadewi, 2003)
Algoritma pelatihan jaringan syaraf tiruan propagasi balik adalah sebagai berikut :
Langkah 0 : Inisialisasi semua bobot dengan bilangan acak kecil
Langkah 1 : Jika kondisi pengehntian belum terpenuhi, lakukan langkah 2-9.
Langkah 2 : Untuk setiap pasang data pelatihan, lakukan langkah 3-8.
Fase I : Propagasi maju
Langkah 3 : Tiap unit masukan menerima sinyal dan meneruskan ke unit tersembunyi diatasnya.
(48)
Langkah 4 : Hitung semua keluaran di unit tersembunyi Zj (j=1,2,3,..p).
= + ∑ ( ) = ( ) =1 + 1
Langkah 5 : Hitung semua keluaran jaringan di unit Yk (k = 1, 2,…m).
= + ∑ ( )
= ( ) =
Fase II : Propagasi mundur
Langkah 6 : Hitung mundur faktor unit keluaran berdasarkan kesalahan di setiap unit keluaran Yk (k = 1, 2,…m).
= ( − ) ( ′ ) = ( − ) (1 − )
merupakan unit kesalahan yang akan dipakai dalam perubahan bobot layar dibawahnya (Langkah 7).
Hitung suku perubahan bobot Wkj (yang akan dipakai nanti untuk merubah bobot
Wkj ) dengan laju percepatan α.
∆ = ; = 1,2, . . , ; = 0,1, ..p
Langkah 7 : Hitung faktor unit tersembunyi berdasarkan kesalahan di setiap untit tersembunyi Zj (j=1,2,3,..p).
= ∑ ( )
(2.22)
(2.23)
(2.24)
(2.25)
(49)
Faktor unit tersembunyi :
= ′( = (1 − )
Hitung suku perubahan bobot Vji ( yang akan dipakai nanti untuk merubah bobot
Vji.
∆ = = 1,2, . . , ; = 0,1, … ,
Fase III : Perubahan bobot
Langkah 8: Hitung semua perubahan bobot
Perubahan bobot garis yang menuju ke unit keluaran :
( ) = ( ) + ∇
Perubahan bobot garis yang menuju ke unit tersembunyi : ( ) = ( ) + ∇
Langkah 9: kondisi perulangan.
Setelah pelatihan selesai dilakukan, jaringan dapat dipakai untuk pengenalan pola. Dalam hal ini hanya propagasi maju (langkah 4 dan 5) saja yang dipakai untuk menentukan keluaran jaringan.
(2.27)
(50)
33
BAB III
ANALISA LAN PERANCANGAN SISTEM
Pada bab ini akan menjelaskan gambaran sistem secara umum untuk mengenali plat nomor kendaraan dengan menggunakan metode Propagasi Balik. Untuk itu, dibutuhkan dua tahap Jaringan Syaraf Tiruan Propagasi Balik dalam pengenalan plat nomor, yaitu:
a. Tahap pelatihan (training) untuk pembentukan model
b. Tahap pengujian (testing) yang sekaligus sebagai pengenalan plat nomor kendaraan.
Bab ini juga akan mendesain rancangan userinterlace dari aplikasi yang akan dibangun serta perangkat keras dan lunak yang digunakan.
3.1 Analisa Sistem
Sistem yang akan dibangun adalah untuk mengenali plat nomor kendaraan bermotor khususnya DIY Yogyakarta dengan menggunakan metode Propagasi Balik. Karakter yang akan dikenali ialah angka 0 sampai 9 dan huruf A sampai Z, dimana pengenalannya dilakukan pada setiap karakter yang ada pada plat nomor kendaraan tersebut.
Input yang akan diproses dengan menggunakan ekstensi *.jpg. Gambar yang di inputkan kemudian dikenali melalui ekstraksi ciri.
(51)
dalam proses training dan testing. Jumlah data yang akan dipergunakan sebagai data training dapat dilihat pada tabel dibawah dan data testing ada 30 foto yang belum mengalami proses ekstrasi ciri.
Tabel 3.1. Data Training
A 5 N 5
B 5 O 5
C 5 P 5
D 5 Q 5
E 5 R 5
F 5 S 5
G 5 T 5
H 5 U 5
I 5 V 5
J 5 W 5
K 5 X 5
L 5 Y 5
M 5 Z 5
0 5 5 5
1 5 6 5
2 5 7 5
3 5 8 5
4 5 9 5
Gambar yang akan di proses merupakan plat nomor kendaraan pribadi yang menpunyai background hitam dan warna setiap karater berwana putih. Gambar dibawah ini merupakan penjelasan bagian-bagian dari sebuah plat nomor dapat dilihat pada gambar 3.1 berikut.
(52)
A B C
D
Gambar 3.1 Plat Nomor Kendaraan Bermotor
Keterangan gambar : A = Nomor kode wilayah B = Nomor urut pendaftaran C = Nomor tanda pengenal D = Tanggal masa berlaku
3.2 Analisa klasifikasi dengan JST Propagasi Balik
Metode klasifikasi dengan JST Propagasi Balik dipilih karena beberapa kelebihan yang dimilikinya, yaitu kemudahannya untuk diimplementasikan, serta kekuatan generalisasinya yang baik sehingga dapat memberika hasil yang akurat dengan sampel di luar sampel yang digunakan untuk pembelajaran.
1. Lapisan tersembunyi
Secara garis besar dalam Jaringan Syaraf Tiruan Propagasi Balik terdiri dari tiga lapisan yaitu lapisan masukan, lapisan tersembunyi dan lapisan keluaran. Namun untuk menghasilkan hasil yang maksimal lapisan tersembunyi dapat dipecah dan dibuat beberapa lapisan baru. Untuk
(53)
penelitian ini menggunakan dua lapisan tersembunyi. Tidak ada teori yang membatasi pada jumlah lapisan jumlah tersembunyi. Namun beberapa pekerjaan telah dilakukan yang menunjukkan bahwa tiga lapisan (dua lapisan tersembunyi ditambah lapisan keluaran) sudah mampu untuk memecahkan masalah dengan hasil yang maksimal. (Jong Jek Siang, 2009). 2. Fungsi aktivasi
Dalam Propagasi Balik, fungsi aktivasi yang dipakai harus memenuhi beberapa syarat yaitu kontinu, terdiferensial dengan mudah dan merupakan fungsi yang tidak turun. Salah satu fungsi yang memenuhi ketiga syarat tersebut yaitu sigmod biner (Logsig) yang memiliki range (0,1) dan sigmod bipolar (Tansig) yang memiliki range (-1,1). (Jong Jek Siang, 2009).
3. Inisialisasi Bobot
Pemilihan bobot awal sangat mempengaruhi jaringan syaraf dalam mencapai nilai minimum terhadap nilai eror, serta cepat tidaknya pelatihan menuju kekonvergenan (menuju satu titik pertemuan). Apabila nilai bobot awal terlalu besar, maka input ke setiap lapisan tersembunyi atau lapisan output
akan jatuh pada daerah fungsi turunan yang akan sangat kecil. Sebaliknya, apabila nilai bobot awal terlalu kecil maka input ke setiap lapisan tersembunyi atau lapisan output akan sangat kecil, yang akan menyebabkan proses pelatihan akan berjalan sangat lambat. Biasanya bobot awal diinisialisasi secara random dengan nilai antara -0,5 sampai 0,5 (atau -1 sampai 1, atau interval yang lain). Jika menggunakan bobot awal secara tetap
(54)
maka hal ini dapat memicu lambatnya proses training. Untuk proses pelatihan ini menggunakan bobot awal secara acak. (Jong Jek Siang, 2009).
3.3 Perancangan Sistem
Perancangan sistem yang menjelaskan urutan proses dalam program. Terdapat proses ekstraksi ciri, proses pembentukan model dengan Propagasi Balik dan analisa hasil.
Kumpulan Huruf A-Z dan 0-9
Ekstrasi Ciri
Propagasi Balik
Model
Foto Plat Nomor
Ekstrasi Ciri
Propagasi Balik
Hasil
Training Testing
Penyusunan Angka dan Huruf kembali
Segmentasi
(55)
3.3.1 Perancangan Propagasi Balik
Tahap ekstraksi menggunakan data gambar yang didalamnya terdapat angka dan huruf sebasgai masukkan dalam metode Propagasi Balik dalam menentukan suatu model pada setiap angka dan huruf. Kemudian mengklasifikasikan sampel-sampel angka dan huruf ke dalam model pola yang sesuai. Dalam proses pengenalan pola plat nomor kendaraan dan pembentukan metode Propagasi Balik ada dua tahap yang dilakukan yaitu tahap pelatihan (training) dan tahap pengujian (testing).
3.3.2 Pelatihan (Pembentukan Model atau Training)
Tahap training akan membentuk model yang mewakili masing-masing angka (0-9) dan huruf (A-Z) yang semuanya dalam bentuk citra RGB . Jadi data sampel yang ada adalah sejumlah 180 buah sampel data yang setiap karakter berisi 5 sampel. kumpulan huruf tersebut didapatkan dengan menggunakan foto langsung dari plat nomor, kemudian dilakukan pemotongan untuk setiap karekter dan angka yang ada di plat tersebut. Dalam pemotongan tersebut menggunakan secara manual dan tanpa menggunakan metode preprocessing untuk citra. Sedangkan untuk mendapatkan jenis sampel yang lain dengan melakukan rotasi ke samping kiri dan kanan dengan kemiringan 50 dan 100. Teknik rotasi ini masih dilakukan secara manual dengan memanfaatkan soltware pengolahan citra. Dengan begitu pembentukan model mencakup perhitungan perameter menggunakan sampel yang diambil dari masing-masing data angka dan huruf yang ada pada plat nomor
(56)
kendaraan bermotor. Pembentukan model ini menggunakan metode Jaringan Syaraf Tiruan Propagasi Balik.
Dalam melakukan pelatihan atau training, setiap karakter mempunyai dimensi foto yang berbeda. Hal ini dipengaruhi dengan telah melakukan rotasi. Jadi setiap karekter tersebut mempunyai dimensi piksel semua dengan kurang lebih 130 x 250 piksel. Jika dalam pemotongan karakter ditemukan karakter yang memenuhi standar dimensi yang sudah ditetapkan, maka katekter tersebut akan disamakan dimensinya sesuai dengan yang sudah ditetapkan dari awal. Untuk menyamakan dimensi dapat dilakukan dengan secara manual yang memanfaatkan
soltware pengolahan citra. Semua kumpulan citra latih tersebut kemudian akan diterapkan dalam sistem, yang proses awal akan dilakukan dengan menggunakan proses preprocessing dan akan akan diproses menggunakan Principal Component Analysis (PCA). PCA adalah teknik reduksi dimensi yang umumnya untuk pemrosesan citra. PCA merupakan sebuah teknik linear yang digunakan untuk memproyeksikan data yang berdimensi tinggi ke dalam subruang yang berdimensi lebih rendah, begitu juga sebaliknya.
Untuk proses pelatihan (Pembentukan model Propagasi Balik) dapat digambarkan dalam sebuah alur skema seperti pada gambar 3.4 berikut ini :
(57)
Gambar 3.3 Skema Pelatihan(Pembentukan Propagasi Balik)
Berikut ini penjelasan masing-masing proses dari skema gambar 3.3 diatas yaitu :
1. Mulai
Untuk memulai proses pelatihan (training) 2. Kumpulan Huruf A-Z dan 0-9
Kumpulan huruf ini berisi 180 jumlah karakter yang terdiri 5 jenis karakter dengan masing-masing jenis ada 36 karakter. setiap karakter
(58)
mempunyai dimensi piksel dengan kurang lebih 130 x 250. Sedangkan setiap karekter dihasilkan dari foto plat motor yang diambil dengan dari jarak 1,5 sampai dengan 2 meter dari arah depan dengan menggunakan kamera digital dengan ukuran dimensi 4000 x 2800 piksel.
3. Konversi ke Grayscale
Proses ini akan menjelaskan tahap awal dalam ekstraksi ciri sebuah gambar. Gambar awal yang digunakan adalah gambar RGB, tetapi gambar tersebut akan diubah ke dalam bentuk graysacle. Hal ini digunakan untuk mempercepat proses-proses selanjutnya. Gambar yang sudah diproses akan mengandung angka 0-255. Selanjutnya dilakukan prosesan binerisasi dengan mengubah grayscale menjadi citra biner. Selanjutnya dilakukan proses
removal noise yang ada pada citra biner yang akan memudahkan proses
labelling citra.
Proses ini dilakukan agar menemukan nilai ambang sehingga citra masukkan dapat dibagi 2 bagian yaitu obyek dan latar berdasarkan nilai ambangnya. Warna hitam digolongkan nilai 1 dan warna putih digolongkan ke dalam karakter dari plat nomor tersebut. Jika seluruh objek pada citra telah berhasil diberikan label maka selanjutnya akan diproses dengan PCA. Untuk mendapatkan hasil grayscale dapat dilakukan dengan memanfaatkan fungsi rgb2gray pada proses Matlab yang sudah ada. Dengan begitu secara
(59)
4. Proses Principal Component Analysis (PCA)
Proses PCA sering dikenal dengan teknik pereduksi yang digunakan untuk memecahkan suatu dimensi menjadi leature yang lebih sedikit. Reduksi dimensi dilakukan agar mempunyai fungsi target dan leature yang tidak relevan dapat dihilangkan, menurunkan varian data dengan menghilangkan data yang tidak perlu dan memperbaiki nilai akurasinya. PCA menggunakan rotasi nilai dari eigen vector yang menguraikan matriks kedalam sebuah score. Dengan adanya score dari matriks tersebut akan ditarik sebuah leature yang mempunyai nilai eigen tertinggi. Dapat diartikan bahwa, satu matriks baru yang akan menjadi hasil reduksi.
Kumpulan Citra latih telah yang ada sejumlah 180 (5 Jenis x36) karakter. Langkah awal yang harus dikerjakan adalah dengan melakukan normalisasi terhadap citra. Citra latih yang sebelumnya telah di
preprocessing dan yang telah disimpan dalam sebuah matriks dilakukan centering atau mengurangi setiap data dengan rata-rata dari setiap atribut yang ada. Dengan ini dapat ditransformasikan data kedalam satu kolom. Dengan hasil tersebut dapat nilai kovarian dapat dilakukan pencarian dengan menggunakan rumus (2.3) dan membuat matriks eigen vector dengan rumus (2.4). Dengan begitu nilai pembeda eigen value dan eigen vector akan diurutkan dengan menggunakan rumus (2.5). Berdasarkan nilai eigen
terbesar akan membentuk principal component (construct) yang telah direduksi ukurannya (extract).
(60)
Dari nilai eigen vector yang telah didapat diharapkan akan mempunyai score tertinggi dan akan digunakan sebagai leature utama dengan dimensi piksel yang maksimal 7 x 5 piksel untuk setiap karakter huruf dan angka. Dengan begitu dimensi yang berisi matriks tersebut dapat digunakan untuk proses JST Propagasi balik.
5. Proses Pelatihan dengan JST
Proses pelatihan ini adalah proses pencarian sampel/model yang nantinya akan digunakan pada proses pengujian pada tahap selanjutnya. Data yang akan diuji ada 180 yang masing-masing karate berjumlah 5 jenis. Ciri-ciri citra adalah piksel-piksel yang memiliki 1 dan 0. Piksel bernilai 1 adalah piksel berwarna hitam atau objek, sebaliknya piksel bernilai 0 adalah piksel berwarna putih. Pada proses ini piksel-piksel yang bernilai 1 dan 0 dicek kembali, apabila piksel tersebut berwarna hitam maka diset tetap dengan nilai 1, sebaliknya jika piksel berwarna putih (0) akan diset dengan nilai 0.
Proses pelatihan dilakukan, terlebih dulu ditentukan parameter yang dibutuhkan. Parameter yang dibutuhkan antara lain mse, max.epoch, learning rate, lapisan tersembunyi, dan fungsi aktivasi. Kemudian perhitungan W(bobot) dan B(bias). Bobot awal akan mempengaruhi apakah jaringan mencapai titik minimum lokal atau global dan seberapa cepat konvergensinya. Bobot yang menghasilkan nilai turunan aktivasi yang kecil sedapat mungkin dihindari karena akan menyebabkan perubahan bobotnya menjadi sangat kecil. Demikian pula nilai bobot awal tidak boleh terlalu
(61)
besar karena nilai turunan fungsi aktivasinya menjadi sangat kecil juga. Oleh karena itu dalam standar Propagasi Balik, bobot dan bias diisi dengan bilangan acak kecil.
Dari foto yang telah melalui preprocessing, foto tersebut akan diolah dengan metode Propagasi Balik yang nantinya akan membentu suatu model. Model-model tersebut mewakili masing-masing angka 0-9 dan huruf A-Z. Setiap karakter model akan menjadi dasar dalam manual testing.
Untuk membentuk suatu model dalam proses training dengan Propagasi Balik meliputi 3 langkah, yaitu : proses leedlorward dari pola masukan, proses backward untuk menghitung eror propagasi balik, dan pembaharuan nilai bobot. Proses leedlorward dibagi menjadi 2 fase, yaitu fase
leedlorward lapisan masukan ke lapisan tersembunyi ke lapisan masukan. Untuk menghitung error aktivasi pada lapisan keluaran, diperlukan fase pembaruan bobot lapisan tersembunyi, dan pembaruan nilai bobot lapisan keluaran diperlukan diperlukan fase pembaruan bobot lapisan keluaran. Lalu fungsi aktivasi yang digunakan antara lain logsig dan tagsig dengan learning rate maksimal 0,01 dan maximum epoch 50000. Nilai – nilai yang digunakan dan parameter yang digunakan diperoleh dari hasil percobaan yang dilakukan seblumnya. Pada akhir proses pembelajaran dilakukan pengujian apakah kondisi berhenti sudah terpenuhi. Kondisi berhenti ini terpenuhi jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan yang terjadi sudah lebih kecil dari batas
(62)
toleransi kesalahan yang ditetapkan. Target error ini sangat dipengaruhi dari nilai bobot dan biasnya. Jika kondisi ini selesai, maka metode Propagasi Balik memiliki mencapai nilai konvergensi ketika tingkat perubahan dari
mse dengan nilai mendekati nilai 0,01 untuk setiap maksimum epoch
(perulangan) yang telah dilakukan. 6. Hasil (model)
Setelah melakukan proses menggunakan Propagasi Balik dapat menemukan sampel/model dari setiap karakter. Model tersebutlah yang nantinya akan digunakan pada bagian proses pengujian.
7. Selesai
Proses pelatihan (training) atau pembentukan model JST Propagasi Balik telah selesai.
3.3.3 Proses Pengenalan (Pengujian atau Testing)
Proses pengenalan pada tahap pengujian (testing) ini sekaligus sebagai proses pengenalan plat nomor kendaraan bermotor untuk mengenali huruf dan angka khusus pada wilayah kota Yogyakarta.
Pada proses pengujian menggunakan sekitar 30 foto plat nomor. Inputan foto yang akan digunakan menggunakan gambar yang berekstensi *jpg yang masih mengandung RGB. Pada awal proses pengujian secara keseleruhan hampir sama dengan pelatihan. Proses diawali dengan melakukan proses segmentasi, dilanjutkan dengan proses PCA, lalu akan memulai proses pengujian dengan
(63)
metode Propagasi Balik dan menyusun kembali setiap karakter yang telah disegmentasi tersebut. Skema dari proses penganalan atau pengujian dapat dilihan pada gambar 3.5 dibawah ini.
Gambar 3.4Skema Pengujian (Testing Propagasi Balik)
(64)
plat nomor dari skema pada gambar 3. 4 diatas yaitu : 1. Mulai
Untuk memulai proses pengenalan (testing). 2. Input Gambar
Input gambar pada tahap pelatihan ini yaitu memasukkan angka berekstensi *jpg sebagai data untuk pelatihan yaitu angka 0-9 dan huruf A-Z. Gambar ini masih berupa citra berisi kumpulan piksel yang memiliki data warna RGB (Red-Green-Blue). Data yang akan diolah pada proses pengujian ada 30 gambar foto. Foto dengan gambar yang berisi motor dengan plat nomor kendaraannya. Gambar motor diambil dari jarak antara 1,5 sampai 2 meter dari motor dengan menggunakan kamera digital dengan ukuran 4000 x 2800 piksel.
3. Konversi ke Grayscale
Proses ini akan menjelaskan tahap awal dalam ekstraksi ciri sebuah gambar. Gambar awal yang digunakan adalah gambar RGB, tetapi gambar tersebut akan diubah ke dalam bentuk graysacle. Hal ini digunakan untuk mempercepat proses-proses selanjutnya. Gambar yang sudah diproses akan mengandung angka 0-255. Selanjutnya dilakukan prosesan binerisasi dengan mengubah grayscale menjadi citra biner. Selanjutnya dilakukan proses
removal noise yang ada pada citra biner yang akan memudahkan proses
labelling citra.
(65)
masukkan dapat dibagi 2 bagian yaitu obyek dan latar berdasarkan nilai ambangnya. Warna hitam digolongkan nilai 1 dan warna putih digolongkan ke dalam karakter dari plat nomor tersebut. Untuk mendapatkan hasil
grayscale dapat dilakukan dengan memanfaatkan fungsi rgb2gray pada
proses Matlab yang sudah ada. Dengan begitu secara otomatis semua isi matriks akan berisi dengan nilai keabu-abuan.
4. Konversi ke Black White
Langkah ini mendeskripsikan proses pengolahan gambar dari
grayscale ke black white. Dibagian ini karakter yang sebelumnya mengadung angka 0-255 akan di ubah ke dalam 0 dan 1. Untuk mendapatkan hasil black white dapat dilakukan dengan memanfaatkan fungsi im2bw pada proses Matlab yang sudah ada. Dengan begitu secara otomatis semua isi matriks akan berisi nilai hitam dan putih saja.
5. Proses Segmentasi
Pada proses pembelajaran karakter, yang harus dilakukan yaitu mengambil per karakter. Angka yang digunakan sebanyak 10 karakter (0-9) dan huruf sebanyak 26 karakter (A-Z), yang masing-masing setiap karakter ada 5 maka jumlah secara keseluruhan ada 180 karakter yang akan dilakukan segmentasi.
Citra plat nomor yang telah diolah dengan proses grayscle, akan menentukan kandidat digit untuk setiap karakter. Namun tahap awal yaitu
(66)
dengan menetukan posisi dari setiap angka dan huruf dengan melakukan proses sesgmentasi dan dilakukan proses pembentukan dimensi pada kandidat digit. Hasil segmentasi tersebut akan disimpan kedalam list. Pada bagian ini apabila terdapat kandidat digit yang saling berhubungan kemungkinan akan dapat terekstraksi bersama.
Dengan begitu untuk mendeteksi tiap barisnya akan dicek setiap barisnya dan setiap kolomnya. Jika jumlah piksel hitam berurutan kurang dari atau lebih dari batasan threshold yang ditentukan maka piksel tersebut akan diubah menjadi putih. (Liliana, 2003).
Dengan proses tersebut dapat dilakukan dengan deteksi kolom yang mengandung warna putih dan semua matriks sama dengan 0 maka ditentukan sebagai batas awal pemotongan. Pendeteksian ini dilakukan terus hingga ditemukan warna hitam dengan semua matriks sama dengan 1. Jika sudah ditemukan warna hitam, maka proses akan mundur satu kolom lagi dan warna putih yang terakhir akan disimpan dengan label nomor satu. Proses pendeteksian selanjutnya dilakukan hal sama sampe proses labeling yang terakhir telah selesai dilakukan. Dan piksel yang mengandung warna hitam akan dihapus dan tidak simpan. Dengan begitu karakter yang telah di labeling akan dilakukan proses selanjutnya.
(67)
6. Perhitungan bw-area
Proses ini akan mendeskripsikan bagaimana suatu daerah yang dianggap tidak perlu dapat di hapus dari citra biner yang semua komponen saling terhubung. Perhituang ini dapat dilakukan jika semua karekter telah disegmentasi dan sudah diberi label. Proses ini dilakukan pada proses sebelumnya. Dengan memafaatkan fungsi bwarea dari Matlab, dapat mempermudah pengerjaan. Kondisi yang akan dibuat jika ada daerah hasil segmentasi yang mempunyai nilai jumlah matriks paling sedikit dibandingkan dengan jumlah matriks yang lainnya, maka matriks tersbut akan dihapus .
7. Proses Principal Component Analysis (PCA)
Proses ini telah dijelaskan pada proses training. 8. Proses Pengujian dengan JST
Pengenalan yang dimaksud yaitu pengenalan angka yang dominan pada model sampel yang sudah dilakukan pada proses training.
9. Hasil Pengujian
Tahap ini menjelaskan bahwa hasil ini merupakan hasil pengujian yang telah melalui tahap-tahap yang telah dijelaskan sebelumnya. Hasil disini masih berupa gambar satuan dari setiap karakter yang ada dalam foto sebelum mengalami segmentasi.
(68)
10. Penyusunan kembali Angka dan Huruf
Proses ini digunakan untuk penyusunan kembali seperti gambar asli. Data yang dipakai adalah data tunggal yang telah diproses dengan menggunakan propagasi balik yang diharapkan dapat dilajutkan untuk proses selanjutnya.
11. Selesai
Proses pengenalan plat nomor telah selesai.
3.3.4 Pengujian Hasil Akurasi
Proses ini akan menunjukkan data yang telah diolah dan akan menghitung proses akurasi atau kesesuaian data. Hasil akhir yang diharapkan dapat sesuai dengan inputan yang berupa gambar RGB yang diolah menjadi gambar hitam-putih (Black and White). Hasil akurasi pada pengenalan ini dapat dihitung dengan akurasi pengenalan angka yaitu : (Prasetyaningtyas, 2010)
= ∑∑ 100% Keterangan :
Σ = Jumlah angka pada diagonal matriks
Σ ℎ = keseluruhan data yang digunakan untuk pengujian
(69)
3.4 Perancangan User Interface
3.4.1 Lesain Use-case
Pengguna pada system ini hanya satu. Fungsi yang dapat dijalankan pengguna pada sistem adalah fungsi memilih dan memasukkan gambar yang akan diolah untuk proses pengenalan pola plat nomor kendaraan bermotor. Use-case
tersebut dapat dilihat pada gambar 3.5 berikut ini.
PENGENALAN POLA PLAT NOMOR KENLARAAN BERMOTOR LENGAN
MENGGUNAKAN PCA LAN METOLE PROPAGASI BALIK
Memilih citra latih
Melakukan proses Pelatihan Citra Latih
Melakukan Proses Pengujian Citra Plat
Motor <<Extends>>
<<Extends>>
User
(70)
3.4.2 Lesain User Interface Program
Pada bagian ini akan menggambarkan secara keseluruhan desain antarmuka. Desain antarmuka dijelaskan sebagai berikut :
3.4.2.1 Tampilan Halaman Utama
Pada tampilan ini akan menggambarkan desain utama pada saat pengguna pertama kali akan menggunakannya. Antarmuka sistem terdiri 4 menu tampilan yaitu menu Normalisasi Citra Latih, Pelatihan Citra Latih, Pengujian Citra dan Bantuan. Pada setiap menu mempunyai fungsinya masing-masing dalam melakukan pengolahan citra tersebut. Detail antarmuka dapat dijelaskan sebagai berikut :
(71)
3.4.2.2 Tampilan Halaman Normalisasi Citra Latih
Pada tampilan ini terdapat 2 panel yaitu panel Ukuran Matriks M x N, dan Jumlah Gambar. Panel ukuran Matrriks digunakan untuk memasukkan inputan jumlah M x N yang digunakan untuk mengolah gambar citra latih. Tombol Baca Gambar tersebut difungsi untuk memasukkan foto yang akan diolah. Proses pengambilan gambar tersebut dapat dilihat pada gambar 3.11. Pada panel Jumlah Gambar adalah proses bagian yang disebut normalisasi dari citra latih. Jumlah gambar yang digunakan untuk satu jenis objek sebanyak 36 karakter. Pada bagian ini gambar akan diolah dari bentuk RGB ke grayscale. Lalu matriks tersebut akan di proses dengan menggunakan metode PCA. Pada bagian ini akan ditunjukan hasil perubahan dari gambar asli ke gambar hasil normalisasinya. Perancangan tampilan Proses normalisasi dapat di lihat pada gambar 3.7 berikut.
(72)
PROSES NORMALISASI CITRA LATIH
Input Jumlah Gambar
....
....
“Jumlah Gambar”
PROSES
“Gambar Citra Latih Asli”
“Gambar Citra Latih Hasil Normalisai”
KEMBALI M
N Matriks M x N Baca Gambar
Gambar 3.7 Halaman Proses Normalisasi Citra Latih
3.4.2.3 Tampilan Halaman Pelatihan Citra Latih
Halaman Pelatihan Citra Latih digunakan untuk melakukan proses penerapan metode propagasi balik. Pada bagian menjelaskan beberapa komponen yang dibutuhkan pada saat proses pelatihan (training). Komponen tersebut antara lain ada Errorthore, epochs, dan jumlah hidden layer-nya yang berada pada bagian panel input. Sedangkan pada panel output-nya terdapat jumlah error yang telah terjadi, waktu yang dbutuhkan dan nilai validasi training yang digunakan. Lalu tombol Proses berfungsi untuk menjalakan proses pelatihannya. Rancangan
(73)
tampilan menu File dapat dilihat pada gambar 3.8 berikut :
Gambar 3.8 Halaman Proses Pelatihan Citra Latih
3.4.2.4 Tampilan Halaman Pengujian Citra
Halaman Pengujian Citra merupakan bagian yang dimana digunakan untuk melakukan proses pengujian (testing). Di halaman ini akan mendeskripsikan gambar setiap proses yang menunjukkan perubahan foto yang diolah. Foto tersebut diawali dengan gambar asli, lalu gambar hasil segmentasi dan yang terakhir hasil
croping setiap karakter dari satu foto. Untuk memilih foto yang akan diuji, gunakan tombol Baca Gambar dan Proses pengambilan gambar tersebut dapat
(74)
dilihat pada gambar 3.11. Jika proses pengujian telah selesai, maka akan keluar hasil akhir dari pengenalan foto tersebut. Hasilnya yang dikeluarkan dalam bentuk teks. Sedangkan tombol Proses Pengujian digunakan untuk menjalankan proses pengujian. Rancangan tampilan halaman Pengujian Citra dapat dilihat pada gambar 3.9 berikut :
Gambar 3.9 Halaman Pengujian Citra
3.4.2.5 Tampilan Halaman Bantuan
Tampilan ini mendeskripsikan bagaimana cara singkat dalam menggunakan sistem ini. Rancangan tampilan halaman Bantuan dapat dilihat pada gambar 3.10 berikut :
(75)
Gambar 3.10 Halaman Bantuan
3.4.2.6 Tampilan Open File
Tampilan ini akan muncul setelah user memilih sub menu Masukkan Gambar. Pada tampilan ini, user dapat mengakses lolder-lolder yang ada pada komputer untuk memilih gambar. Terdapat 2 tombol yaitu Open dan Cancel. Open
berfungsi untuk membuka gambar yang telah dipilih dan Cancel berfungsi untuk membatalkan proses dan kembali ke tampilan sebelumnya. Rancangan tampilan
(76)
(77)
60
BAB IV
IMPLEMENTASI LAN ANALISA SISTEM
Implementasi dan analisis sistem merupakan tahap penulisan tentang penjelasan bentuk antar muka program, pembahasan cara memasukkan data, pembahasan bentuk keluaran dari program dan pembahasan analisis terhadap sistem yang mengimplementasi metode PCA dan Backpropagation. Implementasi dengan menggunakan Matlab 7.10.0(R2010a).
4.1 Implementasi Pelatihan Lata 4.1.1 Implementasi Pemrosesan Awal
Pemrosesan awal berfungsi untuk mengubah citra RGB menjadi
grayscale dan black white. Proses ini dilakukan terhadap seluruh data training. Semua data yang diolah merupakan gambar dengan .JPG, tahap awal ini akan melakukan proses normalisasi dan PCA. Proses ini dilakukan dengan menggunakan sintaks pada Matlab yaitu :
1. Implementasi Normalisasi Lata
Mentranformasikan gambar RGB ke dalam grayscale dengan matriks M X N yang menjadi vektor kolom untuk tiap citra karakter. Untuk proses ektraksi ciri pada pelatihan data, jumlah data training yang digunakan 180 dengan 5 jenis karakter. Diproses tersebut juga membuat inputan matriks dari seriap karakter yang disimpan divariabel B. Lalu dengan
(1)
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before Bantuan is made visible.
function Bantuan_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Bantuan (see VARARGIN) % Choose default command line output for Bantuan
handles.output = hObject; % Update handles structure guidata(hObject, handles);
% UIWAIT makes Bantuan wait for user response (see UIRESUME) % uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = Bantuan_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure
varargout{1} = handles.output;
function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double
% --- Executes during object creation, after setting all properties.
(2)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close(Bantuan);
Citra Latih Jenis Pertama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
(3)
Citra Latih Jenis Kedua
(4)
Citra Latih Jenis Keempat
Citra Latih Jenis Kelima
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
(5)
viii
Saat ini sistem pengenalan pola plat motor sudah banyak dilakukan di beberapa pusat perbelanjaan, pertokoan, grdung instasi hingga universitas. Salah satu teknologi pada sistem pengenalan pola plat motor tersebut adalah teknologi
yang menggunakan preprocessing citra dan jaringan syaraf tiruan. Penelitian ini
mengembangkan suatu metode perpaduan antara Principal Component Analysis
(PCA) dan jaringan syaraf tiruan propagasi balik.
Pada penelitian ini, digunakan 180 data pelatihan yang diambil dari 36 karakter untuk 5 jenis sampel. Data pelatihan tersebut kemudian digunakan untuk menguji 30 foto plat nomor. 30 foto plat nomor tersebut diperoleh dari nomor polisi pada Tanda Nomor Kendaraan Bermotor (TNKB) keluaran 2011. Jaringan syaraf tiruan ini menggunakan 2 lapisan tersembunyi dengan jumlah neuron yang berbeda-beda mulai dari 10, 15, 20, dan 25 neuron. Adapun parameter-parameter
yang digunakan dalam propagasi balik antara lain : fungsi aktivasi logsig dan
tansig, maksimum epoch adalah 50 000, nilai mean square error(mse) adalah
0,01 dengan menggunakan gradient descent sebagai algoritma pembelajaran, nilai maksimum learning rate adalah 0,01.
Hasil yang diperoleh pada penelitian ini menunjukkan bahwa penggunaan metode kombinasi antara PCA dan propagasi balik menggunakan 1 lapisan tersembunyi memiliki akurasi paling baik. Nilai akurasi yang didapatkan adalah bervariasi dari 44,725% sampai dengan 58,227%.
(6)
ix
ABSTRACT
Nowaday, the license plate pattern recognition system has used in some shopping centers , instantion building and even a university. One of the technology in the system is a technology which is using an image preprocessing and artificial neural network. This research is developing a combination method of principal compnent analysis (PCA) and back propagation artificial neural network. The aims of this research are to know the implementation of back propagation neural network in a license plate pattern recognition system and its accuracy.
This research is using 180 training data which is obtained from 36 characters for 5 kinds of sample. Then the training data is used t to test 30 license plate pictures. The license plate image is taken from the police number in Tanda Nomor Kendaraan Bermotor(TNKB) that is published in 2011. The artificial neural network in this research is using 2 hidden layer with different neuron’s amount start from 10, 15, 20, and 25 neurons. There are some parameter which are used in the back propagation process such as : logsig and tansig transfer function, maximum epoch is 50.000, mean square error(mse) is 0,01 with using gradient descent as the algorithm learning, maximum learning rate is 0,01.
Result of this research shows that the combination method of principal component analysis (PCA) and back propagation artificial neural network using 1 hidden layer is obtaining the best accuracy. The accuracy are variated from 44,725% to 58,227%.