Pengenalan secara real time rambu larangan pada lalu lintas mennggunakan Discrete Consine Transform dan jarak Canberra.
Keselamatan menjadi hal utama bagi pengguna lalu lintas. Sehingga untuk ketertiban dan keamanan saat berkendaraan, rambu larangan lalu lintas menjadi hal yang wajib dipatuhi oleh semua pengguna jalan raya. Dengan seiring berkembangnya kemajuan teknologi, Salah satu hasil perkembangan teknologi tersebut adalah teknologi pengolahan citra. Salah satu bidang aplikasi adalah sistem berbasis citra yang digunakan untuk mengenali rambu larangan lalu lintas. Dengan mengenali tanda rambu larangan lalu lintas diharapkan kendaraan bisa memberikan informasi kepada pengemudi mengenai rambu yang ada disekitarnya, sehingga dapat mengurangi pelanggaran lalu lintas yang tidak disengaja. Sistem ini nantinya dapat memberitahukan kepada pengguna jalan raya sehingga pengguna dapat paham tentang rambu larangan lalu lintas.
Sistem pengenalan rambu larangan lalu lintas secara real time yang dibuat adalah pengenalan secara real time rambu larangan pada lalu lintas menggunakan Discrete Cosine Transform dan jarak Canberra. Prinsip kerja dari sistem ini adalah input berupa rambu larangan lalu lintas diubah ke grayscale, kemudian dipotong (cropping) gambar sesuai dengan bounding box serta mengubah ukuran karakter menjadi 64x64 piksel (resizing). Karakter yang di resizing kemudian diekstraksi menggunakan Discrete Cosine Transfor
(DCT) dan perhitungan menggunakan K-Nearest Neighbor (K-NN) untuk pencocokan data uji dengan database dilakukan dengan menggunakan jarak Canberra. Database berjumlah 190 karakter, terdiri dari 5 variasi rotasi. Hasil dari penhitungan jarak yang dilakukan, menunjukan hasil pengenalan karakter yang terdapat pada rambu larangan lalu lintas. Hasil pengenalan ditampilkan dalam bentuk teks.
Hasil dari penelitian ini adalah dengan menggunakan variasi rotasi -5° dengan k=3 telah menhasilkan tingkat pengenalan karakter hingga 100 persen. Variasi skala 90%, 100% dan 105% dengan k=1 dan k=3 mampu menghasilkan tingkat pengenalan karakter hingga 97,36 persen. Semakin kecil ukuran window maka hasil tingkat pengenalan akan semakin rendah. Semakin besar ukuran window maka hasil tingkat pengenalan akan semakin tinggi.
Kata kunci: Rambu Larangan Lalu Lintas, Discrete Cosine Transform dua Dimensi(DCT- 2 D), Real Time, K-Nearest Neigbor (K-NN), Jarak Canberra
(2)
Safety was the main thing for the user traffic. So as to public order and security when drive, restriction sign traffic become a thing that must be obeyed by all users of the highway. With the expansion of the technology as progress, one of the results the development of the technology is a technology image processing. One of the field of the application of a system based on image is used to identify traffic restriction sign. To meet a sign traffic restriction sign expected vehicles can provide information to the driver on existing signs to be around, so as to diminish an unintentional traffic offences. This is going to system can tell road users raya so users of restriction sign can be informed about traffic.
Traffic sign in real time recognition system will be createn on this final project is real time recognition of prohibition traffic sign using discrete consine transform and canberra distance. The principle of this system, the input in the from of the image of a Traffic sign converted into grayscale then cut (cropping) according to the bounding box and centering as well as change the size of character into a size 64x64 pixel (resizing). The character resizing has been centering then extracted using Discrete Cosine Transform (DCT) and using calculation K-Nearest Neighbor (K-NN) with the database using canberra distance. The database amounted to 190 characters, consists of 5 variation rotation. The result of the calculation of distance, shows the result recognition of characters in Traffic sign. The result recognition are displayed in text form.
The result of the research is to use variation rotatin -5° with k=3 has produced up to character recognition rate of 100 percent. Variation scale 90%, 100% and 105% with k=1 and k=3 has produced up to character recognition rate of 97,36 percent. The small size of the window results of recognition the low level. The big size of the window results of recognition the high level.
Key Word: Traffic Signs, Discrete Cosine Transform Two Deminsion (DCT-2 D), Real Time, K-Nearest Neigbor (K-NN), Canberra Distance
(3)
i
TUGAS AKHIR
PENGENALAN SECARA REAL TIME RAMBU
LARANGAN PADA LALU LINTAS MENGGUNAKAN
DISCRETE CONSINE TRANSFORM DAN JARAK
CANBERRA
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Serjana Teknik
Program Studi Teknik Elektro
Oleh :
AUGUSTO SOARES DOS SANTOS NIM : 105114028
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
(4)
ii
FINAL PROJECT
REAL TIME RECOGNITION OF PROHIBITION
TRAFFIC SIGN USINGDISCRETE CONSINE
TRANSFORM AND CANBERRA DISTANCE
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik
Degree
In Electrical Engineering Study Program
AUGUSTO SOARES DOS SANTOS NIM : 105114028
ELECTRICAL ENGINEERING STUDY PROGRAM
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
(5)
iii
HALAMAN PERSETUJUAN
TUGAS AKHIR
PENGENALAN SECARA REAL TIME RAMBU
LARANGAN PADA LALU LINTAS MENGGUNAKAN
DISCRETE CONSINE TRANSFORM DAN JARAK
CANBERRA
REAL TIME RECOGNITION OF PROHIBITION
TRAFFIC SIGN USING DISCRETE CONSINE
TRANSFORM AND CANBERRA DISTANCE
Pembimbing
(6)
iv
HALAMAN PENGESAHAN
TUGAS AKHIR
PENGENALAN SECARA REAL TIME RAMBU
LARANGAN PADA LALU LINTAS MENGGUNAKAN
DISCRETE CONSINE TRANSFORM DAN JARAK
CANBERRA
(REAL TIME RECOGNITION OF PROHIBITION
TRAFFIC SIGN USING DISCRETE CONSINE
(7)
v
PERYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 8 Januari 2015
(8)
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO:
“Sukses
tidak diukur dari posisi yang dicapai seseorang dalam
hidup,
Tapi dari kesulitan-kesulitan yang berhasil
Diatasi ketika berusaha meraih
sukses”
Karya tulis ini kupersembahkan kepada:
Tuhan Yesus Kristus dan Bunda Maria
Pembimbingku yang amat berarti di hidupku,
Papa dan mama tercinta,
Saudara-saudaraku yang tercinta,
Teman-teman seperjuanganku,
Seorang yang tercinta(LurdesSoaresGusmao),
(9)
vii
LEMBAR PERNYATAN PERSETUJUAN PUBLIKASI
KARYA ILMIAH UNTUK KEPENTINGAN
AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma: Nama : Augusto Soares Dos Santos
Nomor Mahasiswa : 105114028
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul:
PENGENALAN SECARA
REAL TIME
RAMBU LARANGAN
PADA LALU LINTAS MENGGUNAKAN
DISCRETE CONSINE
TRANSFORM
DAN JARAK
CANBERRA
Beserta perangkat yang diperlukan (bila ada) dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas dan mempublikasikannya pada media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama masih mencamtunkan nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya.
Yogyakarta, 8 Januari 2015
(10)
viii
INTISARI
Keselamatan menjadi hal utama bagi pengguna lalu lintas. Sehingga untuk ketertiban dan keamanan saat berkendaraan, rambu larangan lalu lintas menjadi hal yang wajib dipatuhi oleh semua pengguna jalan raya. Dengan seiring berkembangnya kemajuan teknologi, Salah satu hasil perkembangan teknologi tersebut adalah teknologi pengolahan citra. Salah satu bidang aplikasi adalah sistem berbasis citra yang digunakan untuk mengenali rambu larangan lalu lintas.Dengan mengenali tanda rambu larangan lalu lintas diharapkan kendaraan bisa memberikan informasi kepada pengemudi mengenai rambu yang ada disekitarnya, sehingga dapat mengurangi pelanggaran lalu lintas yang tidak disengaja. Sistem ini nantinya dapat memberitahukan kepada pengguna jalan raya sehingga pengguna dapat paham tentang rambu larangan lalu lintas.
Sistem pengenalan rambu larangan lalu lintas secara real time yang dibuat adalah pengenalan secara real time rambu larangan pada lalu lintas menggunakan Discrete Cosine Transform dan jarak Canberra. Prinsip kerja dari sistem ini adalah input berupa rambu larangan lalu lintas diubah ke grayscale, kemudian dipotong (cropping) gambar sesuai dengan bounding box serta mengubah ukuran karakter menjadi 64x64 piksel (resizing). Karakter yang di resizing kemudian diekstraksi menggunakan Discrete Cosine Transfor
(DCT) dan perhitungan menggunakan K-Nearest Neighbor (K-NN) untuk pencocokan data uji dengan database dilakukan dengan menggunakan jarak Canberra. Database berjumlah 190 karakter, terdiri dari 5 variasi rotasi. Hasil dari penhitungan jarak yang dilakukan, menunjukan hasil pengenalan karakter yang terdapat pada rambu larangan lalu lintas. Hasil pengenalan ditampilkan dalam bentuk teks.
Hasil dari penelitian ini adalah dengan menggunakan variasi rotasi -5° dengan k=3 telah menhasilkan tingkat pengenalan karakter hingga 100 persen. Variasi skala 90%, 100% dan 105% dengan k=1 dan k=3 mampu menghasilkan tingkat pengenalan karakter hingga 97,36 persen. Semakin kecil ukuran window maka hasil tingkat pengenalan akan semakin rendah. Semakin besar ukuran window maka hasil tingkat pengenalan akan semakin tinggi.
Kata kunci: Rambu Larangan Lalu Lintas, Discrete Cosine Transform dua Dimensi(DCT- 2 D), Real Time, K-Nearest Neigbor (K-NN), Jarak Canberra
(11)
ix
ABSTRACT
Safety was the main thing for the user traffic. So as to public order and security when drive, restriction sign traffic become a thing that must be obeyed by all users of the highway. With the expansion of the technology as progress, one of the results the development of the technology is a technology image processing. One of the field of the application of a system based on image is used to identify traffic restriction sign. To meet a sign traffic restriction sign expected vehicles can provide information to the driver on existing signs to be around, so as to diminish an unintentional traffic offences. This is going to system can tell road users raya so users of restriction sign can be informed about traffic.
Traffic sign in real time recognition system will be createn on this final project is real time recognition of prohibition traffic sign using discrete consine transform and canberra distance. The principle of this system, the input in the from of the image of a Traffic sign converted into grayscale then cut (cropping) according to the bounding box and centering as well as change the size of character into a size 64x64 pixel (resizing). The character resizing has been centering then extracted using Discrete Cosine Transform (DCT) and using calculation K-Nearest Neighbor (K-NN) with the database using canberra distance. The database amounted to 190 characters, consists of 5 variation rotation. The result of the calculation of distance, shows the result recognition of characters in Traffic sign. The result recognition are displayed in text form.
The result of the research is to use variation rotatin -5° with k=3 has produced up to character recognition rate of 100 percent. Variation scale 90%, 100% and 105% with k=1 and k=3 has produced up to character recognition rate of 97,36 percent. The small size of the window results of recognition the low level. The big size of the window results of recognition the high level.
Key Word: Traffic Signs, Discrete Cosine Transform Two Deminsion (DCT-2 D), Real Time, K-Nearest Neigbor (K-NN), Canberra Distance
(12)
x
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus karena telah memberi rahmat-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan baik. Laporan tugas akhir ini disusun sebagai salah satu syarat memperoleh gelar sarjana.
Selama pembuatan tugas akhir ini penulis menyadari bahwa ada begitu banyak pihak yang telah memberikan bantuan baik bantuan materi, moral maupum dukungan.
Oleh karena itu penulis ingin mengucapkan terimakasih kepada:
1. Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta. 2. Bapak Petrus Setyo Prabowo, S.T.,M.T., Ketua program studi Teknik Elektro
Universitas Sanata Dharma Yogyakarta.
3. Bapak Martanto, S.T,.M.T., selaku dosen pembimbing akademik yang telah mendampingi dan membimbing penulis salama perkuliahan.
4. Bapak Dr. Linggo Sumarno, selaku dosen pembimbing yang dengan penuh pergertian, sabar dan ketulusan hati memberi bimbingan, kritik, saran, serta motivasi dalam penulisan tugas akhir ini.
5. Bapak Martanto, S.T.,M.T. dan Bapak Pius Yozy Merucahyo, S.T.,M.T. dosen penguji yang telah bersedia memberi masukan, bimbingan dan saran dalam memperbaiki tugas akhir ini.
6. Bapak atau Ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh pendidikan di program stidi Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma.
7. Kedua orang tuaku (Juliao Soares Da Conceicao Tavares dan Augusta Soares Pereira), atas kasih sayang, dukungan, motivasi dan doa yang tiada henti selama menempuh pendidikan di Universitas Sanata Dharma.
8. Kakak-kakak dan adik-adik kutercinta yang selalu mendukung dan mendoakan saya, sehingga dapat menyelesaikan tugas belajar dengan baik.
9. Kekasihku tercinta ”Lurdes Soares Gusmao” untuk senyuman, doa, semangat, saran dan kritik, perhatian, dan pengertian yang diberikan.
10. Teman-teman seperjuangan angkatan 2010 teknik elektro yang selalu mendukung dan menyemangati saya dalam menyelesaikan Tugas akhir ini.
(13)
xi
11. Staff dan petugas Laboratorium Teknik Elektro yang telah membantu banyak hal untuk kelancaran tugas-tugas perkuliahan.
12. Staff Sekretariat Teknik Elekro yang telah membantu dalam hal administrasi. 13. Semua pihak yang tidak disebutkan satu persatu atas semua dukungan yang telah
diberikan dalam penyelesaian tugas akhir ini.
Penulis menyadari bahwa dalam penyusunan tugas akhir ini masih mengalami kesulitan dan tidak lepas dari kesalahan. Oleh kerena itu, penulis mengharapkan masukan, kritik dan saran yang membangun agar skripsi ini menjadi lebih baik. Semoga skripsi ini dapat bermanfaat sebagaimana mestinya.
Penulis
(14)
xii
DAFTAR ISI
HALAMAN JUDUL (BAHASA INDONESIA) ... i
HALAMAN JUDUL (BAHASA INGGRIS) ... ii
HALAMAN PERSETUJUAN ... iii
HALAMAN PENGESAHAN ...iv
LEMBAR PENYATAAN KEASLIAN KARYA ... v
HALAMAN PERSEMBAHAN DAN MOTO HIDUP ...vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIK ... vii
INTISARI ... viii
ABSTRACT ...ix
KATA PENGANTAR ... x
DAFTAR ISI ... xii
DAFTAR GAMBAR ... xv
DAFTAR TABLE ... xvii
BAB I PENDAHULUAN
1.1 Latar Belakang ... 11.2 Tujuan dan Manfaat ... 2
1.3 Batasan Masalah ... 2
1.4 Metodologi Penelitian ... 3
BAB II DASAR TEORI
2.1 Pengetian Rambu Larangan Lalu Lintas ... 52.2 Pengolahan Citra ... 5
(15)
xiii
2.2.2 Model Sistem Ruang arna RBG ... 6
2.2.3 Preprocessing Citra ... 7
2.2.4 Citra Grayscale ... 7
2.2.5 Cropping ... 8
2.2.6 Citra Resizing ... 8
2.3 Discrete Cosine Transform Dua Demensi(DCT 2 D) ... 9
2.4 Window Ekstrasi Ciri ... 10
2.5 Jarak Canberra ... 11
2.6 Templete Matching ... 11
2.7 Metode K-Nearest Neighbor (K-NN) ... 11
2.8 Matlab ... 12
2.9 Webcam... 13
BAB III PERANCANGAN PENELITIAN
3.1 Perancangan Sistem Pengenalan Rambu Larangan Lalu Lintas ... 153.1.1 Lampu ... 16
3.1.2 Kamera Webcam ... 16
3.1.3 Fixture ... 16
3.1.4 Gambar Rambu Larangan Lalu Lintas ... 17
3.2 Database Rambu Larangan Lalu Lintas... 17
3.3 Proses Untuk Pengenalan Rambu Larangan Lalu Lintas ... 18
3.3.1 Citra Rambu Larangan Lalu Lintas ... 19
3.3.2 Proses Preprocessing ... 20
3.3.3 Proses Pengenalan ... 23
3.4 Proses Gambar Uji... 32
3.5 Perancangan GUI ... 32
BAB IV HASIL DAN PEMBAHASAN
4.1 Pengujian dan Tampilan Pengenalan secara Real Time Rambu Larangan Pada Lalu Lintas Menggunakan Discrete Consine Transform dan Jarak Canberra ... 354.2 Penentuan Hasil Pengujian program Pengenalan Citra Terhadap Tingkat Pengenalan Citra Rambu Larangan Lalu Lintas ... 50
(16)
xiv
4.2.1 Pengujian Parameter Pengaturan Untuk Pengenalan Rambu Larangan
Lalu Lintas Secara Real Time ... 50
4.3 Pengujian Nilai Parameter ... 57
BAB V KESIMPULAN DAN SARAN
5.1. Kesimpulan ... 585.2. Saran ... 58
Daftar Pustaka... 59
(17)
xv
DAFTAR GAMBAR
2.1 Rambu larangan lalu lintas yang diambil dari poster ... 5
2.2 Koordinat citra digital ... 5
2.3 Skema warna RGB dalam kubus... 6
2.4 Citra warna RGB ... 7
2.5 Citra Grayscale ... 7
2.6 Window Ekstraksi Ciri ... 10
2.7 Ilustrasi K- Nearest Neighbor (K-NN) dengan k=11 ... 12
2.8 Webcam Logitech HD C310 ... 13
3.1 Gambaran Umum Perancangan Sistem ... 15
3.2 Diagram Alir Pembuatan Database ... 17
3.3 Blok Diagram Proses Pengenalan Rambu Larangan Lalu Lintas ... 18
3.4 Diagram Alir Proses Perekam dan Pemgambilan Citra ... 19
3.5 Diagram Alir Proses Preprocessing ... 21
3.6 Diagram Alir Proses Ekstraksi Ciri ... 23
3.7 Diagram Alir Fungsi Jarak ... 24
3.8 Diagram Alir Penentuan Keluaran ... 24
3.9 Tampilan Awal Jendela Program ... 33
4.1 Icon Matlab R2010a ... 35
4.2 Tampilan Awal Matlab R2010a ... 36
4.3 Tampilan Jendela Utama Pengenalan ... 36
4.4 Tampilan Utama Jendela Pengenalan Rambu larangan Lalu Lintas ... 37
4.5 Tampilan Tombol ON ... 38
4.6 Tampilan Dari Tombol Capture... 40
4.7 Tampilan Proses Cropping dan Resizing ... 41
4.8 Hasil Ttransformasi Dari DCT ... 42
4.9 Tampilan Setelah menekan Pombol Pengenalan ... 49
4.10 Pengaruh K-NNTerhadap Tingkat Pengenalan Untuk Variasi Rotasi ... 54
(18)
xvi
DAFTAR TABEL
2.1 Jenis-Jenis Transformasi Affine ... 8
3.1 Spesifikasi Webcam Logitech C310 ... 16
3.2 Listing Tampilan Output Hasil Pengenalan ... 25
3.3 Keterangan Proses Utama Tampilan Program ... 33
4.1 Citra Ukuran Window ... 44
4.2 Tingkat Pengenalan Dengan k=1 ... 51
4.3 Tingkat Pengenalan Dengan k=3 ... 52
4.4 Tingkat Pengenalan Dengan k=5 ... 52
4.5 Tingkat Pengenalan Dengan k=7 ... 53
4.6 Pengaruh K-Nearest Neighbor (K-NN) Terhadap Tingkat Pengenalan ... 53
4.7 Tingkat Pengenalan Dengan k=1 ... 54
4.8 Tingkat Pengenalan Dengan k=3 ... 55
4.9 Tingkat Pengenalan Dengan k=5 ... 55
4.10 Tingkat Pengenalan Dengan k=7 ... 56
(19)
1
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Keselamatan menjadi hal utama bagi pengguna lalu lintas. Sehingga untuk ketertiban dan keamanan saat berkendaraan, rambu larangan lalu lintas menjadi hal yang wajib dipatuhi oleh semua pengguna jalanraya.
Dengan seiring berkembangnya kemajuan teknologi, salah satu hasil perkembangan teknologi tersebut adalah teknologi pengolahan citra. Banyak sekali aplikasi pada dunia elektronika dengan menggunakan teknologi pengolahan citra seperti dalam system keamanan, robotika dan masih banyak lagi. Salah satu bidang aplikasi adalah system berbasis citra yang digunakan untuk mengenali rambu larangan lalu lintas. Dengan muncul ide yang berkembang tentang sistem auto-pilot, dimana kendaraan dapat mengenali rambu larangan lalu lintas dengan membuat sistem peringatan rambu larangan lalu lintas pada kendaraan tersebut. Dengan mengenali tanda rambu larangan lalu lintas diharapkan kendaraan biasa memberikan informasi kepada pengemudi mengenali rambu yang ada disekitarnya, sehingga dapat mengurangi pelanggaran lalu lintas yang tidak disengaja.
Berdasarkan pernyataan diatas, penulis ingin membuat sebuah sistem yang dapat membantu pengguna jalan raya dapat mengenali rambu larangan lalu lintas dengan cara yang lebih mudah. Sistem ini nantinya dapat memberitahukan kepada pengguna jalan raya sehingga pengguna dapat paham tentang rambu larangan lalu lintas. Dalam penelitian ini penulis menemukan penelitian sebelum yang berkaitan dengan pengenalan suatu rambu lalu lintas, pernah diteliti oleh Supriadi [1] pada tahun 2011 tentang pengenalan objek berupa simbol rambu lalu lintas secara real time dengan algoritma Backpropagation pada jaringan syaraf tiruan menggunakan webcam sebagai perangkat keras pengambil citra simbol rambu lalu lintas yang diujikan secara real time.
Sistem yang akan dibuat untuk pengenalan secara real time rambu larangan lalu lintas menggunakan Discrete Cosine Transform (DCT) dan jarak Canberra. Sistem ini juga dapat meniru kemampuan mata manusia untuk mengenali objek berupa rambu larangan lalu lintas. Sistem ini akan secara otomatis membandingkan objek berupa macam-macam rambu larangan lalu lintas dengan gambar yang telah di capture oleh user melalui
(20)
larangan lalu lintas diproses dahulu melalui preprocessing. Setelah itu kemudian di proses menggunakan metode Discrete Cosine Transform (DCT) untuk kemudian digunakan sebagai database. Karakter yang telah di capture dibandingkan dengan database dengan menggunakan jarak Canberra dan hasil perbandingan yang terkecil merupakan objek yang telah di capture. Semua proses tersebut menggunakan software matlab 7.10.0a. baik dalam pemrogramannya maupun visualisasi pengambilan gambar dan hasil keluaran adalah dalam bentuk teks pada layar monitor. Salah satu fasilitas Matlab yang tersedia adalah
Graphical User Interface (GUI) yang dapat digunakan untuk membuat suatu antarmuka yang nantinya dapat mempermudah pengguna dalam pemakaian sistem yang akan dibuat.
1.2.
Tujuan dan Manfaat
Tujuan dari penulisan tugas akhir ini adalah untuk menghasilkan sebuah system yang dapat mengenali berbagai macam rambu larangan lalu lintas secara real time
menggunakan Discrete Cosine Transform (DCT) dan jarak Canberra. Rambu larangan lalu lintas yang digunakan untuk dikenali dengan ukuran 3 cm ×3 cm dengan ukuran citra 64×64 piksel yang berasal dari poster (lihat lampiran satu).
Manfaat dari penelitian ini adalah penelitian awal yang untuk membuat alat yang dapat mempermudah para penguna jalan raya untuk mengenali rambu larangan lalu lintas secara mudah dan dapat member infomasi pada penguna jalan raya.
1.3.
Batasan Masalah
Sistem pengenalan rambu larangan lalu lintas secara real time menggunakan
Discrete Cosine Transform (DCT) dan jarak Canberra terdiri dari hardware dan software.
Hardware berupa lampu, webcam dan fixture. Software yang digunakan adalah Matlab. Matlab digunakan untuk mengatur seluruh proses pengolahan data yang dicuplik oleh webcam. Pada perancangan sistem ini, penulis fokus pada pembuatan software untuk memproses pengenalan rambu larangan pada lalu lintas secara real time menggunakan
Discrete Cosine Transform (DCT) dan jarak Canberra sedangkan untuk hardware berupa lampu, webcam dengan merek Logitech C310 dan fixture. Penulis menetapkan beberapa batasan masalah pada perancangan ini, yaitu sebagai berikut :
a. Pengenalan rambu larangan pada lalu lintas jenis cetak dengan ukuran 3 cm ×3 cm dan gambar rambu diambil dari poster. Lihat lampiran dua.
(21)
b. Masukkan berupa gambar rambu larangan lalu lintas dari semua gambar, dan dapat dilihat pada lampiran dua gambar rambu larangan lalu lintas.
c. Gambar rambu larangan lalu lintas yang akan digunakan bersih dan tidak gelap serta dengan mempunyai variasi rotasi (-5°,-10°, 0°, 5°,10°) untuk mensimulasikan kamera yang terputar dan variasi skala (90%, 95%, 100% ,105%, 110%) untuk mensimulasikan kamera yang naik turun. Lihat lampiran dua.
d. Pada fixture sudah disediakan tempat untuk meletakkan gambar dari rambu larangan lalu lintas.
e. Ukuran citra rambu larangan lalu lintas 64×64 piksel dengan format data. JPG. f. Ukuran window DCT yang digunakan ukuran 2×2, 3×3, 4×4, 5×5, 6×6, 7×7,
8×8, 9×9, dan 10×10.
g. Posisi peletakan gambar rambu larangan lalu lintas, yaitu dengan cara menempelkan gambar dari rambu larangan lalu lintas pada kertas HVS.
h. Jarak antara lampu dengan rambu larangan lalu lintas ± 40 cm.
i. Jarak pengambilan gambar rambu larangan pada lalu lintas dengan webcam dengan jarak ± 12 cm.
j. Jumlah gambar yang dipakai terdiri dari 38 rambu larangan lalu lintas. k. Pengambilan citra menggunakan webcam logitech C310.
l. Lampu yang digunakan adalah lampu philips 5 watt dengan 350 lumen.
m. Rambu larangan lalu lintas ini dibuat dengan menggunakan software pemrograman Matlab 7.10.0a.
n. Pengenalan yang dilakukan hanya dapat mengenali 38 rambu larangan lalu lintas dan selain dari 38 citra rambu larangan lalu lintas akan dikenali secara salah.
o. Dengan keluaran berupa teks yang akan ditampilkan di layar monitor.
1.4.
Metodologi Penelitian
Langkah-langkah yang dilakukan dalam pengerjaan tugas akhir ini adalah sebagai berikut:
a. Studi pustaka
Melakukan studi pustaka yaitu untuk membaca dan mempelajari buku-buku dan jurnal ilmiah mengenai pengenalan suatu objek serta informasi dari website, pemograman Matlab, image processing, Discrete Cosine Transform, jarak
(22)
b. Perancangan subsistem software dan hardware
Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan berbagai faktor-faktor permasalahan dan kebutuhan-kebutuhan yang ditentukan.
c. Proses pengambilan data
Sistem akan bekerja ketika user akan meletakan gambar rambu larangan lalu lintas di depan webcam dengan menekan tombol push button yang ditampilkan dalam tampilan visual yang di sediakan dalam software. Kemudian system akan mengolah data yang diterima dari webcam dan mulai menampilkan proses menampilkan berupa video (record) sampai user memberikan perintah untuk pengambilan gambar (capture). Kemudian, user memberikan interupsi untuk memulai pengenalan. Setelah selesai, Matlab akan melakukan proses pengolahan gambar rambu larangan pada lalu lintas yang sudah di capture oleh webcam dan akan ditampilkan berupa teks pada layar monitor.
d. Analisa
Analisa yang pertama dilakukan dengan menyelidiki pengaruh variasi
window ekstraksi ciri (jumlah koefisien DCT) dan desimasi terhadap tingkat pengenalan. Hasil penyimpulan dilakukan dengan cara mencari variasi hasil (jumlah koefisien DCT) yang menghasilkan tingkat pengenalan program mengenali rambu larangan lalu lintas dengan yang terbaik dan optimal. Kedua, menyelidiki pengaruh perskalaan dan rotasi terhadap tingkat pengenalan. Penyimpulan hasil dilakukan dengan mengetahui kinerja system pengenalan terhadap pengaruh skala dan rotasi.
(23)
5
BAB II
DASAR TEORI
2.1.
Pengertian Rambu Rarangan Lalu Lintas
Rambu larangan lalu lintas merupakan rambu yang digunakan untuk menyatakn perintah yang wajib dilakukan oleh penguna jalan.Rambu ini berisi larangan yang tidak boleh dilakukan oleh penguna jalan. Rambu ini dirancang dengan latar putih dan warna lambing merah atau hitam. Seperti pada empat gambar di bawah dan gambar yang komplit dilihat pada lampiran satu:
Gambar 2.1. Rambu Larangan Lalu Lintas Diambil Dari Poster Lihat Lampiran
2.2.
Pengolahan Citra
2.2.1.
Definisi Citra [2]
Citra (image) adalah gambar pada bidang dua dimensi. Ditinjau dari sudut pandang sistematis, citra merupakan fungsi continue dari intensitas cahaya pada bidang dua dimensi. Koordinat di bawah adalah dari citra digital.
(24)
Keterangan:
M = Banyak piksel per baris ( panjang) N = Banyak piksel per kolom ( lebar) b = Banyak atau besar bit pada suatu citra
Ada dua jenis citra yaitu : citra diam dan citra bergerak. Citra diam adalah citra tunggal yang tidak bergerak, sedangkan citra bergerak adalah rangkaian citra diam yang ditampilkan secara sekuensial. Citra digital merupakan citra yang tersusun dalam bentuk raster (grid atau kisi). Setiap kotak (tile) yang terbentuk disebut piksel (picture element) dan memiliki koordinat (x,y). Sumbu x (horizontal) : kolom (column), sample sedangkan sumbu y (vertikal) : baris (row,line). Setiap piksel memiliki nilai yang menunjukkan intensitas keabuan pada piksel tersebut. Piksel adalah istilah yang digunakan secara luas untuk menyatakan elemen citra digital.
2.2.2.
Model Sistem Ruang Warna RGB[2]
Dalam model RGB, setiap warna memperlihatkan komponen spectral primary red,
green dan blue. Model ini didasarkan pada sistem koordinat kartesian. Sub space warna yang dicari adalah kubus yang ditunjukkan pada Gambar 2.3. Nilai RGB pada tiga sudut adalah cyan, magenta dan yellow. Perbedaan warna dalam model ini adalah titik yang berada di dalam kubus dan didefinisikan oleh penyebarannya dari faktor origin.
Gambar 2.3. Skema Warna RGB Dalam Kubus
Jumlah bit yang digunakan untuk mempresentasikan setiap piksel dalam space
RGB disebut pixel dept, jumlah bit dalam citra RGB dimana setiap citra red, green dan
(25)
full color sering digunakan untuk menyatakan citra berwarna RGB 24 bit. Total jumlah warna dalam citra 24 bit adalah (224 ) = 16.777.216.
Gambar 2.4. Citra Warna RGB
2.2.3.
Preprocessing Citra
Proses preprocessing citra dilakukan untuk mendapatkan citra yang kualitas lebih baik dari pada citra sebelumnya dengan cara memanipulasi parameter-parameter citra, sehingga menghasilkan bentuk yang lebih cocok terhadap nilai-nilai piksel citra tersebut untuk proses selanjutnya.
2.2.4.
Citra Grayscale [2][3]
Citra grayscale adalah citra berwarna yang menggunakan tingkatan warna abu-abu (gray). Proses awal yang dilakukan dalam image processing adalah mengubah citra berwarna menjadi citra grayscale. Citra RGB diubah ke dalam grayscale dapat dilakukan dengan menggunakan rumus :
= �= 0.2989 x R + 0.5870 x G + 0.1140 x B (2.1) Citra grayscale berbeda dengan citra biner, citra biner terdiri dari 2 warna yaitu hitam dan putih. Citra hitam putih mempunyai nilai kuantisasi derajat keabuan sampai tingkatan ke 256 artinya mempunyai skala abu dari 0 sampai 255.
(26)
Citra membutuhkan 1 byte (8 bit) untuk setiap piksel memberikan (28= 256 ) intensitas keabuan.
2.2.5.
Cropping[4]
Cropping citra merupakan salah satu langkah dalam pengolahan citra yang dilakukan untuk memotong satu bagian dari citra tertentu untuk memperoleh bagian yang diinginkan untuk diolah. Hal ini dilakukan untuk mendapatkan data yang tepat sehingga memudahkan dalam proses pengolahan data. Cropping yang digunakan secara Automatic Cropping
2.2.6.
Citra Resizing[5]
Rezising citra adalah mengubah besar kecilnya ukuran citra dalam piksel. Tampilan citra tidak ada yang berubah hanya ukuran piksel dan matriksnya yang dirubah.
Transformasi geometris disebut rubber-sheet transformation karena dapat ditampilkan seperti pencetakan citra pada lembaran karet dan men-streching lembaran ini menurut jumlah aturan yang sudah didefinisikan.
Transformasi Affine Dua Dimensi
Metode transformasi affine dua dimensi dapat menggabungkan proses dasar seperti rotasi dan skala ke dalam satu proses untuk mendapatkan citra output yang diinginkan. Dalam resizing menggunakan tipe scalling. Matriks affine dua dimensi dengan menggunakan tipe scalling diperlihatkan pada tabel 2.1.
(27)
Persamaan transformasi affine dua dimesi untuk skala: x ' = sx.x
y ' = sy.y (2.2)
Persamaan matriks untuk skala:
(2.3)
2.3.
Discrete Cosine Transform Dua Dimensi (DCT 2 D) [6]
Discrete Cosine Transformdua dimensi adalah Tranformasi Fourier Discrit yang dikenakan pada fungsi dua dimensidengan hanya mengambil bagian cosinus dari eksponensial imaginer, yang didefinisikan sebagai berikut :
, = 2
−1 =0
−1 =0
, cos 2 + 1 �
2 cos
2 + 1 �
2 (2.4)
Dimana :
, = 1 2 (2.5) Untuk:
, = 0 Dan :
, = 1 (2.6)
Keterangan:
a. F (m,n) adalah titik koordinat dari matriks yang telah mengalami transformasi
Discrete Cosine Transform dua dimensi. b. M dan N adalah banyak kolom dan baris.
c. Cm dan Cn adalah himpunan hasil yang nilainya ditentukan dari nilai koefisien m dan n.
d. Fxy adalah nilai piksel dari matriks pada titik (x,y). 1 . 1 0 0 0 0 0 0 1 ' ' y x s s y x y x
(28)
Rumus Discrete Cosine Transform dua dimensi (DCT 2 D) diatas sering juga disebut sebagai Forward Discrete Cosine Transform (F DCT). Discrete Cosine Transform
dua dimensi (DCT 2 D) dapat dihitung dengan menerapkan transformasi (1 D) secara terpisah pada baris dan kolomnya, sehingga dapat dikatakan bahwa Discrete Cosine Transform dua dimensi (DCT 2 D) separable dalam dua dimensi.
2.4.
Window Ekstrasi Ciri [7]
Window digunakan untuk mengambilan hasil Discrete CosineTransform (DCT).
Window ini ada pada sisi kiri atas. Seperti dilihat pada gambar 2.6.dibawah :
Gambar 2.6.Window Ekstraksi Ciri
Keterangan:
a. Window 1x1 koefisien = 1 b. Window2x2 koefisien = 4 c. Window3x3 koefisien = 9
.
.
.
1x1
2x2
3x3
(29)
2.5.
Jarak Canberra[8]
Jarak Canberra adalah fungsi yang digunakan untuk mencari jarak d antara vector � dan � dimana n merupakan panjang dimension dalam ruang vector. Dapat dilihat pada
persamaan berikut ini:
, = �− �
�+ � �=1
(2.7)
Dimana :
= ( 1, 2 … ) dan = 1, 2 … (2.8)
Keterangan :
1. �dan �adalah dua vector yang jaraknya akan dihitung. 2. N menyatakan panjang vector.
2.6.
Templete Matching[9]
Tamplate matching adalah salah satu teknik dalam pengolahan citra digital yang berfungsi untuk mencocokan tiap-tiap bagian dari suatu citra dengan citra yang menjadi
template (acuan). Teknik ini banyak digunakan dalam bidang industri sebagai bagian dari
quality control. Metode tamplate matching adalah salah satu metode terapan dari teknik konvolusi, metode ini sering digunakan untuk mengidintifikasi citra karakter huruf, angka, sidik jari (fingerprint) dan aplikasi-aplikasi pencocokan citra lainya. Secara umum teknik konvolusi didefinisikan sebagai suatu cara untuk mengkombinasikan dua buah deret angka yang menghasilkan deret angka ke tiga.
2.7.
Metode K-Nearest Neighbor (K-NN) [10]
Algoritma K-Nearest Neighbor adalah sebuah metode untuk melakukan klasifikasi terhadap obyek berdasarkan data pembelajaran yang jaraknya paling dekat dengan obyek tersebut. Dari gambar yang diberi vector x dan ukuran jarak; maka
1. Dari vector N, mengenditifikasi K-Nearest Neighbor (K-NN),yanglepas dari label kelas. K adalah yang dipilih untuk menjadi dua kelas bermasalah, dan secara umum tidak menjadi kelipatan dari jumlah kelasM.
(30)
2. Dari sample k, mengenditifikasi untuk jumlah vector, ki, yang termasuk dalam kelaswi, i= 1,2,…,M. tentunya ��1 =�
3. Penetapan x untuk kelas wi dengan maksimal jumlah sampel dari ki.
Ilustrasi di bawah merupakan K-Nearest Neighbor (K-NN)untuk kasus k = 11.
Gambar 2.7. Ilustrasi K-Nearest Neighbor (K-NN) Dengan k=11
2.8.
Matlab[12]
Studi pengenalan gambar rambu larangan lalu lintas ini membutuhkan sebuah alat bantu untuk menghitung data matematis yang kompleks. Matlab adalah sebuah bahasa dengan kemampuan tinggi untuk komputasi teknis. Matlab menggabungkan komputasi, visualisasi, dan pemrograman dalam satu kesatuan yang mudah digunakan di mana masalah dan penyelesaiannya diekspresikan dalam notasi matematik yang sudah dikenal.
Matlab adalah sistem interaktif yang mempunyai basis data array yang berkaitan dengan formulasi matriks dan vector. Dalam perkembangannya, Matlab mampu mengintegrasikan beberapa software matriks sebelumnya dalam satu software untuk komputasi matriks. Sistem matlab terdiri atas lima bagian utama :
a. Development Environment
Kumpulan semua alat-alat dan fasilitas untuk membantu kita dalam menggunakan fungsi dan file Matlab. Bagian ini memuat desktop, command window, command history, editor and debugger dan browser untuk melihat help,
workspace, files.
b. The Matlab Mathematical Function Library
(31)
sum, sine, cosine sampai fungsi lebih rumit seperti invers matriks, nilai Eigen, fungsi Bessel dan fast Fourier transform.
c. The matlab language
Bahasa matriks atau array level tinggi dengan control flow, fungsi, struktur data, input atau output, dan fitur object programming lainnya.
d. Graphics Matlab
Fasilitas untuk menampilkan vector dan matriks sebagai grafik. Fasilitas ini mencakup visualisasi data dua atau tiga dimensi, pemrosesan citra (image), animasi, dan grafik animasi.
e. The Matlab Application Program Interface (API)
Paket ini memungkinkan kita menulis bahasa C dan Fortran yang berinteraksi dengan Matlab.
2.9.
Webcam[13]
Webcam atau web kamera adalah sebuah kamera video digital kecil yang dihubungkan ke computer atau laptop melalui port USB. Gambar webcam dapat dilihat pada gambar 2.8.
Gambar 2.8.Webcam Logitech HD C310
Sebuah web kamera yang sederhana terdiri dari sebuah lensa standar, dipasang di sebuah papan sirkuit untuk menangkap sinyal gambar, casing (cover), termasuk casing
depan dan casing samping untuk menutupi lensa standar dan memiliki sebuah lubang lensa di casing depan yang berguna untuk memasukkan gambar, kabel support, yang dibuat dari bahan yang fleksibel, salah satu ujungnya dihubungkan dengan papan sirkuit dan ujung satu lagi memiliki connector, kabel ini dikontrol untuk menyesuaikan ketinggian, arah dan
(32)
sudut pandang web kamera. Sebuah web kamera biasanya dilengkapi dengan software,
software ini mengambil gambar dari kamera digital secara terus menerus ataupun dalam interval waktu tertentu dan menyiarkannya melalui koneksi internet.
(33)
15
BAB III
PERANCANGAN
3.1.
Perancangan Sistem Pengenalan Rambu Larangan Lalu Lintas
Perancangan sistem yang akan dibuat adalah sistem yang dapat mengenali citra rambu larangan pada lalu lintas menggunakan webcam. Gambar 3.1 menunjukan gambaran umum keseluruhan sistem.
Gambar 3.1. Gambaran Umum Perancangan Sistem
Sistem pengenalan karakter gambar terdiri dari perangkat keras dan perangkat lunak yang ada pada komputer. Perangkat keras yang digunakan adalah gambar rambu larangan lalu lintas, fixture, komputer, lampu, webcam dan perangkat lunak menggunakan pemrograman matlab 7.10.0a. Pengambilan citra menggunakan webcam yang dihubungkan dengan komputer yang berfungsi sebagai user interface untuk proses pengenalan. Software
laptop yang akan dibuat dalam bentuk user interface dengan GUI yang akan berperan sebagai pusat yang berfungsi untuk mengatur semua proses pengenalan rambu larangan lalu lintas menggunakan webcam, seperti pencuplikan gambar dan mengenali gambar yang sudah tercuplik.
(34)
3.1.1.
Lampu
Lampu berfungsi untuk menerangkan rambu larangan lalu lintas yang akan diambil kamera webcam. Lampu yang dipakai dalam pengenalan citra ini adalah lampu dengan merek LED philips 5 watt, 350 lumen, cool daylight 6500k dan energy saving adalah 85%.
3.1.2.
Kamera Webcam
Webcam yang digunakan untuk melakukan pengambilan citra gambar rambu larangan lalu lintas ini adalah webcam dengan merk Logitech C310. Spesifikasi dari
webcam bisa dilihat pada table 3.1.
Table 3.1. Spesifikasi Webcam Logitech C310
Logitech webcam C310
High defenition(HD) video HD 720p
Photo quality 5 MP
Video quality Good
Lens technology Standard Focus type Always focused
Build in mic Single
Auto lingt correction Premium 360 degree full motion rotation
3.1.3.
Fixture
Fixture yang digunakan dalam pengenalan rambu larangan lalu lintas merupakan sebuah kayu yang sebagai tempat dudukan webcam dan rambu larangan lalu lintas, fixture
tersebut dibuat dari kayu. Proses pengambilan posisi rambu larangan lalu lintas harus tegak lurus dengan webcam agar hasil citra yang semetrik. Dalam proses pengambilan yang dilakukan jarak antara kamera webcam dengan rambu larangan lalu lintas ±12 cm. Hasil pemgambilan yang terdekat dan tidak kabur adalah ± 12 cm. Jarak antara lampu dengan tempat duduk rambu larangan lalu lintas adalah ± 40 cm. Dengan jarak ini penerang lampu lebih baik dan gambar rambu lebih kelihatan bagus.
(35)
3.1.4.
Gambar Rambu LaranganLalu Lintas
Pada pengenalan yang akan dilakukan, rambu-rambu larangan lalu lintas yang akan digunakan sesuai dengan rambu-rambu larangan lalu lintas yang sering digunakan pada umumnya oleh para penguna jalan raya. Rambu larangan lalu lintas yang dipilih untuk melakukan pengenalan terdiri dari semua rambu larangan lalu lintas yang ada. Tabel 3.2. merupakan rambu larangan lalu lintas yang akan digunakan untuk proses pengenalan dan dapat lihat pada lampiran II.
3.2.
Database Rambu Larangan Lalu Lintas
Proses pengenalan rambu larangan lalu lintas dilihat pada Gambar 3.3. merupakan digram alir dari sistem yang berada pada database.
Mulai
Selesai
Discrete Cosine Transform
Database rambu larangan lalu lintas Capture gambar rambu
larangan lalu lintas
Preprocessing: Proses grayscale,
cropping, resizing
Gambar 3.2. Diagram alir pembuatan database
Dalam proses pengenalan pada rambu larangan lalu lintas harus dibutuhkan
database dari rambu larangan lalu lintas yang akan digunakan sebagai acuan untuk proses pengenalan. Rambu larangan lalu lintas yang digunakan untuk pengenalan merupakan
(36)
rambu yang dipakai dalam penguna jalan raya. Pada pengenalan kamera webcam akan menggunakan fokus normal yang artinya adalah pengaturan default yang sudah terpasang pada kamera webcam. Database yang digunakan dalam pengenalan citra terdiri dari 10 set
database yaitu 5 untuk variasi rotasi dan 5 untuk variasi skala. Skala digunakan untuk sebagai proses pengujian. Gambar rambu larangan lalu lintas yang digunakan ada beberapa bentuk ukuran gambar yaitu variasi rotasi (-10°, -5°, 0°, 5°, 10°) dan variasi skala (90%, 95%, 100%, 105%, 110%). Proses pembuatan database rambu larangan lalu lintas harus melalui proses dari input citra rambu larangan lalu lintas, preprocessing dan Discrete Cosine Transform Dua Dimensi (DCT 2 D).
3.3.
Proses Untuk Pengenalan Rambu Larangan Lalu Lintas
Proses pengenalan rambu larangan lalu lintas terdiri dari empat tahap yaitu pemgambilan citra, preprocessing, pengenalan dan keluaran. Proses yang akan dilakukan dimana citra masukan berupa rambu larangan pada lalu lintas. Proses kerja sistem pengenalan rambu larangan lalu lintas sebagai berikut:
Konversi ke
grayscale
Cropping
Gambar
keluaran
Resizing
64x64 pixel
(DCT)
Perhitungan
jarak
Canberra
Database citra
rambu
larangan lalu
lintas
Gambar citra
rambu larangan
lalu lintas
Proses pengambilan
citra
--- Proses preprocessing --- --- Proses pengenalan citra --- Keluaran citra
Gambar 3.3.Blok diagram proses pengenalan rambu rarangan lalu lintas.
Citra rambu larangan lalu lintas akan dikonversi dalam bentuk grayscale atau warna keabuan. Citra yang grayscale akan di cropping. Setelah di cropping, kemudian akan di resizing sesuai dengan ukuran yang diinginkan. Pada proses pengenalan, citra
(37)
transformasi yang digunakan adalah Discrete Cosine Transform Dua Dimensi (DCT 2 D), untuk mengambil bagian yang akan digunakan citra tersebut. Proses selanjutnya adalah melakukan penghitungan jarak dari hasil ekstraksi ciri data uji dengan hasil ekstraksi ciri dari database menggunakan jarak Canberra. Jarak minimum yang diperoleh akan dijadikan sebagai penentuan hasil keluaran. Hasil keluaran adalah dalam bentuk teks.
3.3.1.
Citra rambu Larangan Lalu Lintas
Pengambilan citra dilakukan menggunakan webcam dan digunakan lampu sebagai cahaya untuk penerang rambu larangan lalu lintas supaya gambar tetap fokus dan terang dengan jarak ± 12 cm. Pada jarak tersebutlah dihasilkan gambar yang fokus. Webcam
terhubung ke komputer dan gambar yang di capture oleh webcam akan disimpan dalam format JPG. Citra masukan berupa rambu larangan lalu lintas.Posisi webcam tetap dan tegak lurus dengan rambu larangan lalu lintas.
Mulai
Gambar masukan citra gambar rambu
larangan lalu lintas
Kamera wabcam di on
Proses pengambilan citra
Citra keluaran gambar rambu larangan lalu lintas
Selesai
Gambar 3.4. Diagram alir proses perekam dan pengambilan citra
Proses pemgambilan citra yang dilakukan melalui beberapa tahap seperti yang ditunjukkan pada gambar 3.5. Proses perekam dan pengambilan citra diatas dapat dijelakan
(38)
bahwa pada saat user menekan tombol kamera ON maka webcam akan di ON atau terkoneksi dengan program. Setelah kamera ON maka rambu larangan lalu lintas disiapkan pada tempat yang telah disediakan untuk melakukan proses pengambilan citra. Kemudian untuk mengambil citra rambu larangan lalu lintas maka user dapat menekan tombol
capture. Pengambilan citra, menginisialisasi webcam terlebih dahulu di dalam program dengan fungsi imaqhwinfo. Fungsi imaqhwinfo bertujuan untuk mengetahui nama adaptor dalam webcam tersebut.
Imaqhwinfo('winvideo',1)
DefaultFormat: 'RGB24_1280x720'
DeviceFileSupported: 0
DeviceName: 'Logitech HD Webcam C310'
DeviceID: 1
ObjectConstructor: 'videoinput('winvideo', 1)'
Kemudian diinisialisasi sesuai nama adaptornya yaitu „winvideo‟ dan resolusi kamera yang digunakan yaitu 1280×720. Resolusi 1270×720 digunakan karena memang spesifikasi yang terdapat pada adaptor webcam. Perintah program untuk mengambil gambar adalah sebagai berikut :
Imaqhwinfo;
dev_info = imaqhwinfo('winvideo');
vidobj = videoinput('winvideo',1,'RGB24_1280x720'); preview(vidobj);
pause
gambar = getsnapshot(vidobj); stop(vidobj)
delete(vidobj) imshow(gambar)
3.3.2.
Proses Preprocessing
Proses preprocessing terdiri dari tiga tahap penting yaitu konversi citra ke dalam
(39)
yang akan melakukan ekstraksi ciri supaya dapat dilanjutkan ke proses selanjutnya. Dapat dilihat pada lampiran.
a) Tahap Pertama Grayscale
Tahap pertama adalah grayscale bertujuan untuk mengubah citra dari rambu larangan lalu lintas yang telah di capture untuk menjadi citra keabuan. Contoh perintah program sebagai berikut:
I=imread('gbr 1.Berhenti.jpg'); gbr= double(rgb2gray(I));
J=(gbr/255);
Imshow(J);axis on
Pada proses preprocessing dapat dibuat diagram alur program pemrosesan citra dapat dilihat pada gambar 3.5.
Mulai
Grayscale
Proses masukan citra rambu larangan
lalu lintas
Keluaran citra rambu larangan lalu lintas
Selesai
Cropping Automatic
diinisialisasi dengan bbox
Resizing
(40)
b) Tahap Kedua Cropping
Cropping adalah suatu proses untuk memotong citra pada bagian tertentu atau yang tidak diperlukan sehingga didapatkan hasil yang diinginkan untuk mempermudah data yang akan diolah. Perintah program cropping yang digunakan adalah cropping automatic
dimana bagian kiri, kanan, atas dan bawah gambar rambu diberi garis hitam yang tebal. Perintah program matlab adalah bboxg. Bagian rambu larangan lalu lintas yang terdapat garis batas berwarna putih yang mengelilingi rambu larangan lalu lintas. Garis batas yang memgelilingi rambu larangan lalu lintas tersebut tidak digunakan dalam proses pengenalan rambu larangan lalu lintas sehingga harus dihilangkan. Contoh perintah program sebagai berikut:
r2 =1-J;
r3=bboxg(r2);
imshow(r3);axis on
c) Tahap Ketiga Resizing
Tahap ketiga adalah resizing bertujuan untuk mengubah ukuran dari citra yang
cropping menjadi citra yang akan diproses sehingga memeliki ukuran yang sama. Proses
resizing dilakukan agar citra yang akan diekstrak mempunyai ukuran piksel yang sama dengan ukurang dengan aturan dari Discrete Cosine Transform Dua Dimensi (DCT 2 D), yaitu 64 × 64 piksel. Contoh perintah program sebagai berikut:
r4 = imresize(r3,[64,64]); Imshow(r4);axis on
Dalam hal ini dilakukan karena Discrete Cosine Transform Dua Dimensi (DCT 2 D) hanya bisa dilakukan dengan citra yang mempunyai ukuran 64×64 piksel yang di dapatkan dari penelitian sebelumnya [16].
3.3.3.
Proses Pengenalan
Proses pengenalan rambu larangan lalu lintas terdiri dari tiga bagian yaitu ekstraksi ciri, fungsi jarak dan penentuan keluaran.
(41)
a) Ekstraksi Ciri
Ekstraksi ciri merupakan tahap untuk pemgambilan ciri pada suatu citra. Ekstrasi ciri diperoleh menggunakan Discrete Cosine Transform Dua Dimensi (DCT 2 D) yang bertujuan untuk memgambil dan membagi citra ke dalam blok-bolk kecil dengan ukuran tetap yang kemudian akan mengubah dari domain spasial ke domain frekuensi atau domain
Discrete Cosine Transform (DCT) dan membentuk ukuran window. Untuk mengentahui nilai ukuran dari window tersebut, maka proses yang dilakukan adalah window ekstraksi ciri dengan cara melakukan evaluasi dari tiap ukuran window dengan koefisien DCT dari 4, 9, 16, 25, 36, 49, 64, 81, dan 100. Nilai koefisien yang terbaik adalah nilai ekstraksi ciri yang diperoleh. Hasil ekstraksi ciri dapat dilihat pada lampiran.Diagram alur dapat dilihat pada gambar 3.6.
Mulai
Selesai
Masukan citra rambu larangan lalu lintas
Ekstraksi ciri Discrete Cosine Transform 2 D
Keluaran hasil masukan ekstraksi
ciri
Menghitung nilai obsolut Discrete Cosine Transform 2 D
Windowing
Gambar 3.6. Diagram alir proses ekstraksi ciri
b) Fungsi Jarak
Proses fungsi jarak adalah membandingkan rambu larangan lalu lintas yang di capture dari kamera dengan gambar database. Hasil perbandingan dari rambu larangan lalu
(42)
lintas yang di capture dengan gambar database adalah jarak yang kemudian akan digunakan sebagai proses selanjutnya. Proses perhitungan jarak yang digunakan adalah jarak Canberra. Diagram alur program dapat dilihat pada gambar 3.7.
c) Penentuan Keluaran
Proses penentuan keluaran merupakan proses yang terakhir dalam proses pengenalan rambu larangan lalu lintas. Hasil pengenalan rambu larangan lalu lintas akan ditentukan berdasarkan jarak minimum yang sudah diperoleh setelah perhitungan jarak dan fungsi jarak. Diagram alur dapat dilihat pada gambar 3.8.
Mulai
Selesai
Hasil masukan ekstraksi
ciri dengan hasil masukan
ekstraksi ciri dari database
Perhitungan jarak : Hasil data masukan
ekstraksi ciri dengan hasil ekstraksi ciri dari
database
Keluaran hasil
perhitungan jarak
Mulai
Selesai
Masukan hasil
perhitungan jarak
Penginisialisasi dengan nama : 38
citra rambu larangana lalu lintas
Output teks
k-Nearest Neighbor
(
k
-NN)
Gambar 3.7.Diagram alir fungsi jarak Gambar 3.8. Diagram alir penentuan keluaran
Pada proses pengenalan citra, tampilan output hasil pengenalan dapat dilihat pada table 3.2. rambu larangan lalu lintas yang digunakan untuk pengenalan citra sesuai dengan rambu larangan larangan yang di ambil dari poster dapat dilihat pada lampiran satu.
(43)
Tabel 3.2. Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 1
Berhenti
Gambar 2
Prioritas atas lalu lintas dari depan
Gambar 3
Beri kesempatan
Gambar 4
Prioritas bagi lalu lintas dari depan (beda warna)
Gambar 5
Dilarang beriringan kurang dari jarak yang ditentukan
(44)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 6
Dilarang membunyikan isyarat suara
Gambar 7
Dilarang mendahului kendaraan lain
Gambar 8
Pejalan kaki dilarang masuk
Gambar 9
Kendaraan bermotor dengan roda empat atau lebih dilarang masuk
Gambar 10
Kendaraan bermotor dengan roda tiga dilarang masuk
(45)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 11
Sepeda dilarang masuk
Gambar 12
Becak dan kereta roda tiga dilarang masuk
Gambar 13
Dilarang masuk
Gambar 14
Gerobak dorong dilarang masuk
Gambar 15
Traktor dengan kereta temple dilarang masuk
(46)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 16
Mesin kerja dilarang masuk
Gambar 17
Mobil gerobak dilarang masuk
Gambar 18
Dilarang membelok ke kanan
Gambar 19
Semua kendaraan bermotor dilarang masuk
Gambar 20
(47)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 21
Dilarang membelok ke kiri
Gambar 22
Oto bus dilarang masuk
Gambar 23
Ditutup untuk semua kendaraan dari kedua arah
Gambar 24
Semua kendaraan tidak bermotor dilarang masuk
Gambar 25
(48)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 26
Sepeda motor dilarang masuk
Gambar 27
Dilarang membalik
Gambar 28
Mobil gerobak dengan kereta gandengan dilarang masuk
Gambar 29
Silang datar dengan satu jalur rel
Gambar 30
(49)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 31
Kendaraan bermotor panjang dan muatan melebihi batas dilaran masuk
Gambar 32
Kendaraan yang seluruh tingginya termasuk muatan melebihi ukuran yang
ditentukan dilarang masuk
Gambar 33
Kendaraan tidak bermotor yang seluruh panjang termasuk muatan melebihi ukuran
dilarang masuk
Gambar 34
Kendaraan yang bobot dan muatan melebihi tonase yang ditentukan dilarang
masuk
Gambar 35
Kendaraan yang seluruh lebar termasuk muatan melebihi ukuran yang ditentukan
(50)
Tabel 3.2. (Lanjutan) Tampilan Output Hasil Pengenalan
Gambar Output hasil pengenalan
Gambar 36
Perintah berhenti
Gambar 37
Batas kecepatan maksimal yang ditentukan
Gambar 38
Kendaraan yang bobot pada satu sumbu melebihi tonase yang ditentukan dilarang
masuk
3.4.
Proses Gambar Uji
Gambar uji yang diambil setelah user menekan tombol capture. Hasil capture
diambil dengan posisi rambu larangan lalu lintas yang sudah diatur secara fix dan cahaya yang tingkat intensitasnya di sesuai. Proses yang berlangsung meliputi input citra rambu larangan lalu lintas, preprocessing dan Discrete Cosine Transform (DCT). Hasil proses tersebut disimpan dan kemudian diproses kembali untuk mendapatkan hasil pengenalan rambu larangan lalu lintas.
3.5.
Perancangan GUI
Gambar 3.9. merupakan tampilan GUI sistem pembacaan gambar rambu larangan lalu lintas yang akan dibuat. Tampilan antarmuka pada perancangan ini menggunakan GUI
(51)
Matlab. Tampilan ini digunakan untuk mempermudah dalam menggunakan sistem yang dibuat.
Gambar 3.9. Tampilan Awal Jendela Program
Tabel 3.3. Keterangan Proses Utama Tampilan Program
Nama bagian
Deskripsi
Tombol ON Tombol ON digunakan untuk menaktifkan kamera
webcam
Tombol capture Tombol capture digunakan untuk mengambilan citra dari rambu larangan lalu lintas
Tombol proses Tombol proses digunakan untuk melakukan proses
cropping dan resizing citra rambu larangan lalu lintas Tombol ekstraksi ciri Tombol ekstraksi ciri digunakan untuk proses ekstraksi
ciri pada citra rambu larangan lalu lintas
Tombol pop-up menu Tombol pop-up menu digunakan untuk memilih ukuran window yang akan digunakan
Axes 1 pada panel 1 video webcam
Berfungsi untuk menampilkan citra rambu larangan lalu lintas yang akan capture dengan menggunakan
webcam
Axes 2 pada panel 2
preprocessing
Berfungsi untuk menampilkan citra hasil rambu larangan lalu lintas yang cropping
Axes 3 pada panel 2
preprocessing
Berfungsi untuk menampilkan citra hasil rambu larangan lalu lintas yang resizing
Axes 4 pada panel 3 hasil ekstraksi ciri
Berfungsi untuk menampilkan citra hasil ekstraksi ciri dari rambu larangan lalu lintas
(52)
Tabel 3.3. (Lanjutan) Keterangan Proses Utama Tampilan Program
Nama bagian
Deskripsi
Axes 5 pada panel 4 hasil ukuran window
Berfungsi untuk menampilkan hasil dari ukuran
window
Panel 6 tampilan hasil output
Berfungsi untuk menampilkan hasil keluaran citra yang akan ditampilkan dalam bentuk teks
Tombol reset Tombol reset digunakan untuk me-reset ulang program pengenalan citra rambu larangan lalu lintas untuk melakukan pengenalan baru
Tombol selesai Tombol selesai digunakan untuk keluar dari sistem pengenalan citra rambu larangan lalu lintas
(53)
35
BAB IV
HASIL DAN PEMBAHASAN
Dalam bab ini akan dilakukan tentang analisi dan pembahasan mengenai hasil pengujian sistem program yang telah dirancang. Pada uji coba yang dilakukan pada penulisan ini untuk mengetahui apakah sistem bekerja dengan baik atau tidak. Pada pengujian akan diperoleh hasil pengujian berupa data-data. Pengujian yang dilakukan menggunakan 38 gambar rambu larangan lalu lintas.
4.1.
Pengujian dan Tampilan Program Pengenalan Secara Real Time
Rambu Larangan Pada Lalu Lintas Menggunakan DCT dan Jarak
Canberra
Pengujian dan tampilan program menggunakan perangkat keras dan perangkat lunak sebagai berikut:
a. Processor : AMD E2-2000 APU with Radeon™ HD Graphics 1,75 GHz b. RAM: 4.00 GB
c. Matlab : 7.10.0a
Dalam tampilan antarmuka program “PENGENALAN SECRATA REAL TIME
RAMBU LARANGAN LALU LINTAS” terdapat 7 push button, 1 pop up menu, 5 axes, 1
edit text, dan 4 static text. Masing-masing dari bagian membentuk suatu kesatuan yang
akan digunakan untuk program “PENGENALAN SECRATA REAL TIME RAMBU
LARANGAN LALU LINTAS”.
Langkah-langkah untuk menjalankan program pengenalan seperti di bawah ini: a. Mengklik dua kali pada icon Matlab pada layar desktop dengan gambar icon seperti
pada gambar 4.1.
(54)
b. Setelah klip icon Matlab, akan tampli tampilan utama softwer Matlab seperti gambar 4.2.
Gambar 4.2. Tampilan Awal Matlab R2010a
c. Muncul tampilan awal, kemudian mengantikan current directory sesuai dengan
directory dimana program yang akan dipakai disimpan, setelah itu ketik guide
kamera pada command window maka akan muncul tampilan jendela utama program pengenalan seperti pada gambar 4.3. Klik run untuk menjalankan program.
Gambar 4.3. Tampilan Jendela Utama Pengenalan
d. Setelah klik run, akan muncul tampil tampilan GUI pengenalan rambu larangan lalu lintas seperti pada gambar 4.4.
Director y Guide
(55)
Gambar 4.4.Tampilan Utama Jendela Pengenalan Rambu Larangan Lalu Lintas
e. Selanjutnya, memilih dan tekan tamboluntuk tampilan sesuai dengan fungsi dari bagiannya masing-masing.
1. Tombol ON, berfungsi untuk menampilkan videowebcam. 2. Tombol capture, berfungsi untuk mencuplikan gambar dari video.
3. Tombol proses, berfungsi untuk menjalan perintah program cropping dan
resizing.
4. Tombol ekstraksi ciri, berfungsi untuk menampilkan hasil tranformasi DCT. 5. Tombol pop-up menu, berfungsi untuk menampilkan ukuran window.
6. Tombol pengenalan, berfungsi untuk menampilkan hasil keluaran yang berupa teks.
7. Tombol reset, berfungsi untuk me-reset ulang jika user ingin melakukan pengenalan baru.
8. Tombol selesai, berfungsi untuk keluar dari proses pengenalan.
Berikut adalah cara untuk menampilkan program utama pengenalan rambu larangan lalu lintas sebagai berikut:
1. Langkah pertama user menekan tombol ON untuk mengaktifkan video webcam, untuk mencuplikan gambar dari video yang akan digunakan untuk proses selanjutnya, tombol ON menjalankan program sebagai berikut :
1 2
8
3 4
7
5
(56)
Setelah menekan tombol ON, video citra yang dicuplikan seperti pada, axes 1 dapat dilihat pada gambar 4.5.
Gambar 4.5. Tampilan Tombol ON
Program di atas adalah program untuk menaktifkan webcam. Perintah imaqhwinfo
adalah program untuk menampilkan informasi yang disimpankan oleh webcam dan informasi yang ditampil akan diinisialisasi dalam program. Proses ini bertujuan untuk agar
webcam dengan softwere Matlab bisa berkomunikasi. Informasi yang akan ditampilkan oleh program adalah webcam, adaptor camera, jenis warna, port dan resolusi piksel.
Perintah preview adalah program untuk menampilkan video saat video ON dengan inisialisasi yang telah digunakan.
imaqhwinfo;
info = imaqhwinfo('winvideo');
vidobj =videoinput('winvideo',1,'RGB24_1280x720'); vidRes = get(vidobj,'VideoResolution');
imWidh = 1280; imHeight = 720;
nBands = get(vidobj,'NumberOfBands');
hImage=image(zeros(imHeight,imWidh,nBands),
'parent',handles.axes1);
(57)
2. Langkah kedua tekan tombol capture untuk mencuplikan gambar yang telah direkam dan tombol capture digunakan untuk menjalankan program seperti berikut:
Program pada tombol capture hampir sama dengan program pada tombol ON tapi pada tombol capture menambahkan program grayscale yang akan berfungsi untuk menjadikan gambar yang capture berupa menjadi keabu-abuan. Program getsnapshot adalah untuk dicuplikan citra pada saat webcam keadaan kamera webcam ON. Gambar yang dicuplikan dijalankan dengan menggunakan handles dan tampilan pada axes 1.
Handles adalah sebuah inisialisasi yang digunakan untuk dapat dipanggil dalam file figure maupum file m. Gambar 4.6 merupakan tampilan dari warna keabu-abuan, proses ini yang akan digunakan untuk program selanjutnya.
imaqhwinfo;
vidobj =videoinput('winvideo',1,'RGB24_1280x720'); vidobj.FramesPerTrigger = 1;
vidobj.ReturnedColorspace = 'grayscale'; triggerconfig(vidobj,'manual');
vidRes = get(vidobj,'VideoResolution'); imWidh = 1280;
imHeight = 720;
nBands = get(vidobj,'NumberOfBands');
hImage=image(zeros(imHeight,imWidh,nBands),
'parent',handles.axes1);
start(vidobj); pause(1);
Image = getsnapshot(vidobj); trigger(vidobj);
stop(vidobj) delete(vidobj) axes(handles.axes1); imshow(Image);
axison
handles.Image=Image; guidata(hObject,handles);
(58)
Gambar 4.6. Tampilan Dari Tombol Capture
3. Langkah ketiga tekan tombol proses untuk menjalankan proses pengenalan yang sudah capture. Pada tombol proses terdapat program cropping dan resizing.
Sebelum di cropping dan resizing hasil yang di capture dinormalisasikan dengan cara membagi hasil dari capture dengan 255 (nilai maksimun dari citra grayscale). Hasil citra yang telah dicuplikan adalah citra grayscale yang nilai dari 0 sampai dengan 255.
Pada proses cropping menggunakan perintah program bbox untuk memotong gambar yang tidak dibutuhkan untuk pengenalan. Cropping yang dilakukan secara
automatic dengan cara pada gambar rambu diberi garis hitam tebal. Program cropping
adalah sebagai berikut:
r=double(handles.Image); r1=r/255;
r2 =1-r1; r3=bboxg(r2);
j=('Cropping');
set(handles.text1,'string',j); axes(handles.axes2);
imshow(r3); axison
(59)
Program imresize adalah untuk melakukan ukuran resizing yang akan digunakan dan pada proses resizing citra ini ukuran yang digunakan disesuaikan dengan ukuran dari DCT. Jika ukuran dari DCT 64x64, maka ukuran resizing adalah 64x64. Gambar di bawah adalah hasil pencuplikan dari proses cropping dan resizing yang di tampilkan pada axes 2
dan axes 3 seperti pada gambar 4.7.
Gambar 4.7. Tampilan Proses Cropping dan Resizing
Hasil resizing yang diperoleh akan digunakan untuk proses selanjutnya. Program yang digunakan untuk proses resizing ini sebagai berikut:
4. Langkah keempat tekan tombol ekstraksi ciri untuk menampilkan hasil DCT dari gambar yang sudah di capture. Perintah program di bawah adalah perintah untuk menjalankan proses ekstraksi ciri. Citra masukan sebelum ekstraksi ciri adalah hasil dari preprocessing dari hasil resizing.
r4=handles.r3;
r5=imresize(r4,[64,64]);
k=('Resizing');
set(handles.text2,'string',k);
axes(handles.axes3); imshow(r5);
axison
handles.r5=r5;
(60)
Hasil dari proses resizing dengan berikan variabel handles.r5, seperti yang ditampilkan pada axes 4. Hasil dari DCT disesuaikan dengan hasil dengan hasil dari
resizing. Dari hasil resizing akan ditransformasikan dengan menggunakan DCT 2 D yang diberi nama r7. Hasil transformasiakan ditampilkan dengan menggunakan handles.axes
seperti pada axes 4. Selanjutnya dengan menbuka hasil r7 untuk ditampilkan. Kemudian hasil ekstraksi ciri ditampilkan dengan menggunakan imshow dan terlebih dahulu di inisialisasikan dengan menggunakan handles.axes dapat dilihat pada gambar 4.8.
Gambar 4.8. Hasil Transformasi Dari DCT
5. Langkah kelima tekan pada pop-up menu adalah untuk menampilkan ukuran window
yang akan digunakan.
r6=double(handles.r5); r7=abs(dct2(r6)); r7(1,1)=0;
l=('Hasil Transformasi DCT');
set(handles.text3,'string',l); axes(handles.axes4);
imshow(r7/max(r7(:))); handles.r7=r7;
axison
(61)
Perintah program di atas adalah proses untuk pemelihan atau megeluarkan
database yang akan digunakan untuk membandingkan dengan salah satu citra masukan rambu larangan lalu lintas menggunakan perhitungan jarak.
case 2
w=2;
loadx64ciri2a;
case 3
w=3;
loadx64ciri3a;
case 4
w=4;
loadx64ciri4a;
case 5
w=5;
loadx64ciri5a;
case 6
w=6;
loadx64ciri6a;
case 7
w=7;
loadx64ciri7a;
case 8
w=8;
loadx64ciri8a;
case 9
w=9;
loadx64ciri9a;
case 10
w=10;
loadx64ciri10a;
end
handles.w=w; handles.z=z;
r7=handles.r7; r8=r7(1:w,1:w);
m=('Hasil window');
(62)
(Lanjutan) program
Proses penguluaran database pembanding disesuaikan dengan variasi dari pop-up menu yang telah ditentukan atau dipilih oleh user. Perintah program diatas merupakan perintah program untuk tampilan ukuran window. Kemudian bagian kiri atas dari hasil DCT akan diambil sebagian ekstraksi ciri sebagai ukuran window. Proses ambil sebagian kiri atas dari hasil DCT ketika user menekan tombol pop-up menu. Ukuran window yang digunakan adalah 2x2, 3x3, 4x4,5x5,6x6,7x7,8x8, 9x9 dan 10x10. Dengan semakin besar ukuran window maka semakin kecil tampilan ekstraksi cirri. Tampilan di bawah merupakan ukuran window yang dapat dilihat pada tabel 4.1.
Tabel 4.1. Citra Ukuran Window
UkuranWindow Hasil Window
Window=2x2
Window=3x3 axes(handles.axes5);
imshow(r8/max(r8(:)));
axison
r9=r8(:); handles.t=r9;
(63)
Tabel 4.1. (Lanjutan) Citra UkuranWindow
UkuranWindow Hasil Window
Window =4x4
Window =5x5
Window =6x6
(64)
Tabel 4.1. (Lanjutan) Citra UkuranWindow
Ukuran Window Hasil Window
Window =8x8
Window =9x9
Window =10x10
6. Langkah keenam tekan tombol pengenalan untuk mengetahui hasil rambu larangan lalu lintas yang melalui tahap capture, preprocessing dan ekstraksi ciri dan hasil tersebut berupa dalam bentuk teks.
Perintah program di atas adalah proses untuk menhitung jarak masukan dengan citra dari database. Perhitungan pembanding menggunakan jarak Canberra sebagai pembanding citra masukan dengan database. Perintah program perhitungan jarak (g) seperti diatas. Proses selanjutnya adalah nilai dari perhitungan jarak (g) tersebut dimasukan ke dalam metode pembandingan yaitu metode K-Nearest Neighbour (K-NN), dimana
for n=1:190
g(n)=jarakc(y,z(:,n));
(65)
metode K-Nearest Neighbor (K-NN) akan membandingkan citra masukan database
dengan 38 citra rambu larangan lalu lintas dan membuat kelas yang akan dipilih. Perintah program K-Nearest Neighbor (K-NN) sebagai berikut:
g;
k=3; % k pada knn
m=5; % Jumlah sampel per kelas
[x1,x2]=sort(g,'ascend'); % x urut naik (fungsi jarak)
kn=x2(1:k); % Pilih k nearest neighbour
hk=ceil(kn/m); % Penentuan kelas-kelas yang terpilih
x3=mode(hk); % Pilih kelas yang paling sering muncul
r10={'gbr 1. Berhenti';
'gbr 2. Prioritas atas lalu lintas dari depan';
'gbr 3. Beri kesempatan';
'gbr 4. Prioritas bagi lalu lintas dari depan';
'gbr 5. Dilarang beriringan kurang dari jarak yang
ditentukan';
'gbr 6. Dilarang membunyikan isyarat suara';
'gbr 7. Dilarang mendahului kendaraan lain';
'gbr 8. Pejalan kaki dilarang masuk';
'gbr 9. Kendaraan bermotor dengan roda empat atau
lebih dilarang masuk';
'gbr 10. Kendaraan bermotor dengan roda tiga
dilarang masuk';
'gbr 11. Sepeda dilarang masuk';
'gbr 12. Becak dan kereta roda tiga dilarang
masuk';
'gbr 13. Dilarang masuk';
'gbr 14. Gerobak dorong dilarang masuk';
'gbr 15. Troktor dengan kereta temple dilarang
masuk';
'gbr 16. Mesin kerja dilarang masuk';
'gbr 17. Mobil gerobak dilarang masuk';
'gbr 18. Dilarang membelok ke kanan';
'gbr 19. Semua kendaraan bermotor dilarang masuk';
'gbr 20. Dilarang parkir';
'gbr 21. Dilarang membelok ke kiri';
(66)
(Lanjutan Program)
Perintah program di atas adalah inisialiasi keluaran teks dari 38 rambu larangan lalu lintas.
Variabel r10 adalah inisialisasi 38 rambu larangan lalu lintas. Nilai yang paling minimum akan dipanggil sesuai dengan nama yang telah diinisialisasi. Kemudian nilai
'gbr 23. Ditutup untuk semua kendaraan dari kedua arah';
'gbr 24. Semua kendaraan tidak bermotor dilarang
masuk';
'gbr 25. Perintah berhenti';
'gbr 26. Sepeda motor dilarang masuk';
'gbr 27. Dilarang membalik';
'gbr 28. Mobil gerobak dengan kereta gandengan dilarang masuk'
'gbr 29. Silang datar dengan satu jalur rel';
'gbr 30. Gerobak dan dokar dilarang masuk';
'gbr 31. Kendaraan bermotor panjang dan muatan
melebihi batas dilaran masuk';
'gbr 32. Kendaraan yang seluruh tingginya termasuk muatan melebihi ukuran yang ditentukan dilarang
masuk';
'gbr 33. Kendaraan tidak bermotor yang seluruh panjang termasuk muatan melebihi ukuran dilarang
masuk';
'gbr 34. Kendaraan yang bobot dan muatan melebihi
tonase yang ditentukan dilarang masuk';
'gbr 35. Kendaraan yang seluruh lebar termasuk muatan melebihi ukuran yang ditentukan dilarang
masuk';
'gbr 36. Dilarang berhenti';
'gbr 37. Batas kecepatan maksimal yang
ditentukan';
'gbr 38. Kendaraan yang bobot pada satu sumbu
melebihi tonase yang ditentukan dilarang masuk'};
% Penentuan keluaran nilai minimum
r11=r10(x3);
(67)
yang paling minimum akan ditampilkan ke dalam file figure dengan menggunakan perintah
set. Berikut perintah program mencari nilai paling minimum. Perintah program di atas adalah mencari nilai paling minimum dari 38 nilai rambu larangan lalu lintas yang telah diinisialisasi. Tampilan hasil pengenalan salah satu citra rambu larangan lalu lintas setelah mengklik tombol pengenalan pada GUI. Dari hasil pengujian, tombol-tombol sudah bekerja dengan baik dapat dilihat pada gambar 4.9.
Gambar 4.9. Tampilan Setelah Menekan Tombol Pengenalan
7. Langkah ketujuh tekan tombol reset untuk melakukan pengenalan baru. Perintah program pengenalan reset sebagai berikut:
8. Langkah kedelapan tekan tombol selesai apabila pengguna ingin keluar dari program pengenalan rambu larangan lalu lintas. Perintah program pada tombol selesai sebagai berikut:
Pengujian program pengenalan secara real time rambu larangan pada lalu lintas menggunakan discrete consine transform dan jarak Canberra, tombol yang ada pada tampilan utama program dapat bekerja sesuai dengan perancangan yang dibuat dalam bab sebelumnya. Listing program utama keseluruhan terlampir pada lampiran III(L5).
delete(figure(camera)); figure(camera);
(68)
4.2.
Penentuan Hasil Pengujian Program Pengenalan Citra Terhadap
Tingkat Pengenalan Citra Rambu Larangan Lalu Lintas
Penentuan hasil nilai parameter dilakukan setelah melakukan pengujian pada program pengenalan citra rambu larangan lalu lintas. Pada program pengenalan rambu larangan lalu lintas ini ada satu proses yang akan dilakukan untuk pengujian program adalah sebagai berikut: Proses pertama pengujian secara real time yaitu melakukan pengujian parameter pengenalan rambu larangan pada lalu lintas dengan ukuran window
dan K-Nearest Neighbor (K-NN) dimana nilai K-Nearest Neighbor (K-NN) adalah dengan kelas k=1, k=3, k=5 dan k=7 yang akan digunakan dalam proses pengenalan rambu larangan lalu lintas. Dalam pengujian secara real time pengguna menggunakan data masukan yang meliputi variasi rotasi -10o, -5o, 0o, 5o, 10o dan variasi skala 90%, 95%, 100%, 105%, 110%. Variasi skala tidak dimasukan dalam database untuk proses pengujian yang akan membandingkan dengan nilai rotasi dalam database. Pengujian secara real time
dilakukan dengan data masukan secara langsung menggunakan potongan gambar rambu larangan lalu lintas jenis cetak, ketika pengguna meletakkan potongan tersebut di fixture
saat itu juga webcam akan mengambil gambar potongan yang kemudian dari hasil webcam
akan tertampil menjadi keluaran dari proses pengenalan citra. Proses pengujian parameter ini bertujuan untuk mencari nilai dari setiap parameter yang akan menghasilkan tingkat pengenalan yang terbaik.
4.2.1.
Pengujian Parameter Pengenalan Rambu larangan Lalu Lintas
Secara Real Time
Pengujian yang dilakukan dengan cara data masukan secara langsung menggunakan potongan gambar rambu larangan lalu lintas, webcam akan mengambil gambar potongan yang kemudian dari hasil webcam akan ditamplikan hasil keluaran. Percobaan ini untuk melihat sebesar tingkat pengenalan yang dapat dikenali dari setiap parameter pengenalan yang digunakan. Langkah-langkah percobaan yang dilakukan:
1. Melakukan proses capturing citra rambu larangan lalu lintas dari gambar 1 sampai dengan 38 sebanyak satu kali untuk semua percobaan dengan nilai K-Nearest Neighbor (K-NN) yang bervariasi.
(1)
Gambar Grafik Hasil Tingkat Pengenalan Untuk Variasi Rotasi
a. Grafik Untuk k=1
b. Grafik Untuk k=3
0 10 20 30 40 50 60 70 80 90 100
Variasi Rotasi
Ukuran Window Resizing 64x64
dengan k=1
-10 -5 0 5 10 rata-rata
0 10 20 30 40 50 60 70 80 90 100
Variasi Rotasi
Ukuran Window Resizing 64x64
dengaan k=3
-10 -5 0 5 10 Rata-rata
(2)
c. Grafik Untuk k=5
d. Grafik Untuk k=7
0 10 20 30 40 50 60 70 80 90 100
Variasi Rotasi
Ukuran Window Resizing 64x64
dengan k=5
-10 -5 0 5 10 Rata-rata
0 10 20 30 40 50 60 70 80 90
100 Variasi
Rotasi
Ukuran Window Resizing 64x64
dengan k=7
-10 -5 0 5 10 Rata-rata
(3)
a. Grafik Untuk k=1
b. Grafik Untuk k=3
0 10 20 30 40 50 60 70 80 90
100 Variasi
Skala
Ukuran Window Resizing 64 x 64
dengan k=1
90 95 100 105 110 rata-rata
0 10 20 30 40 50 60 70 80 90
100 Variasi
Skala
Ukuran Window Resizing 64 x64
dengan k=3
90 95 100 105 110 rata-rata
(4)
c. Grafik Untuk k=5
d. Grafik Untuk k=7
0 10 20 30 40 50 60 70 80 90 100
Variasi Skala
Ukuran Window Resizing 64 x 64
dengan k=5
90 95 100 105 110 rata-rata
0 10 20 30 40 50 60 70 80 90
100 Variasi
Skala
Ukuran Window Resizing 64 x 64
dengan k=7
90 95 100 105 110 rata-rata
(5)
Hasil pengenalan dari proses Presprocessing
a. Proses capture
b. Proses grayscale
c. Proses cropping
(6)
e. Proses ekstraksi ciri DCT
f. Hasil tampilan ukuran window
2x2 3x3 4x4
5x5 6x6 7x7