98
i TUGAS AKHIR PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS PERINGATAN MENGGUNAKAN EKSTRAKSI CIRI WAVELET HAAR DAN FUNGSI JARAK CHI SQUARE Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Oleh : IGNATIUS AGUNG NUGROHO NIM : 105114019 PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2015 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

Embed Size (px)

Citation preview

Page 1: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

i

TUGAS AKHIR

PENGENALAN SECARA REAL TIME RAMBU LALU

LINTAS PERINGATAN MENGGUNAKAN EKSTRAKSI

CIRI WAVELET HAAR DAN FUNGSI JARAK CHI SQUARE

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Oleh :

IGNATIUS AGUNG NUGROHO

NIM : 105114019

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

ii

FINAL PROJECT

REAL TIME RECOGNITION OF WARNING TRAFFIC

SIGNS USING WAVELET HAAR

FEATURE EXTRACTION AND CHI SQUARE DISTANCE

FUNCTION

Presented As Partial Fulfillment Of The Requirement

To Obtain The Sarjana Teknik Degree

In Electrical Engineering Study Program

Oleh :

IGNATIUS AGUNG NUGROHO

NIM : 105114019

ELECTRICAL ENGINEERING STUDY PROGRAM

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

iii

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

iv

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO:

Karena kesalahan dan kegagalanlah

yang membuatku

belajar dan terus berjuang

Persembahan Skripsi ini kupersembahkan untuk ….

Yesus Kristus dan Bunda Maria yang selalu

menyertai dan memberkati sepanjang hari

Bapak dan Ibu yang selalu menncintai dan

mendoakanku

Kakak dan adik yang memberikan dukungan

dan doa

Serta teman-teman yang selalu membantu dan

menghibur

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

viii

INTISARI

Perkembangan teknologi pada saat ini berkembang cepat, salah satu teknologi yang

saat ini banyak dikembangkan adalah teknologi computer vision.Teknologi computer

vision adalah teknologi yang membuat komputer dapat melihat dan mendapatkan suatu

informasi dari gambar sehingga teknologi ini membuat komputer memiliki kemampuan

seperti mata manusia dalam menangkap informasi visual (human sight). Berdasarkan hal

tersebut maka dibuat suatu program sehingga komputer dapat mengenali rambu-rambu lalu

lintas sehingga nantinya dapat mempermudah pengguna aplikasi untuk mengenali rambu

lalu-lintas.

Sistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time

menggunakan webcam, serta pengolahan citra dan pengenalan pola menggunakan ekstraksi

ciri Wavelet Haarserta fungsi jarak Chi Square. Sistem pengenalan ini akan menggunakan

laptop sebagai tempat memproses sistem, dan akan menggunakan bahasa pemrograman

Matlab serta interface menggunakan GUI yang tersedia dalam matlab.

Hasil dari sistem pengenalan ini yaitu sistem dapat mengenali rambu-rambu lalu

lintas sesuai dengan yang direncanakan. Berdasarkan hasil percobaan, dapat diketahui

batas jarak maksimum dan minimum aplikasi dapat mengenali rambu lalu lintas, serta

batas sudut kemiringan antara webcam dengan rambu.

Kata kunci: Wavelet Haar, jarak Chi Square, Pengenalan rambu-rambu lalu lintas

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

ix

ABSTRACT

The development of technology nowadays develops very quickly and one of the

technologies which is now developed a lot is the technology of computer vision. The

technology of computer vision is a technology that’s makes computers have ability like

human being’s eyes in capturing visual information (human sight). Based on the facts

above, I make a program so that the computer can detect traffic signs. Later, this

technology is able to detect the traffic sign around the vehicles and give information to the

drivers about the traffic sign around.

The recognition of these traffic signs is done at real time by using webcam, the

image processing and the recognition of the patterns use the extraction of characteristic of

Wavelet Haar and the function of the distance Chi Square. The system of this recognition

uses a laptop as the equipment to process the system and use the processing instructions of

Matlab and the interface using GUI which is available in the Matlab.

The result of this recognition system is that the system can recognize the traffic

sign so as planned. Based on the experimental results, it is known limits of the maximum

and minimum range of applications can recognize traffic signs, as well as the limit between

the tilt angle of the webcam with signs.

Key words : Wavelet Haar, Chi Square distance, the recognition of the traffic signs

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

x

KATA PENGANTAR

Syukur dan terima kasih pada Tuhan Yesus Kristus atas semua berkat, perlindungan,

dan pertolongan-Nya sehingga penulis dapat menyelesaikan tugas akhir dengan baik. Tugas

akhir ini dapat diselesaikan tentunya tidak lepas dari dukungan, bantuan, dan bimbingan dari

berbagai pihak. Oleh karena itu, pada kesempatan ini penulis mengucapkan terima kasih

kepada:

1. Tuhan Yesus Kristus, atas berkat pertolongan, dan penyertaanya sehingga penulis

mampu menyelesaikan tugas akhir ini dengan baik.

2. Paulina Heruningsih Prima Rosa, S.si., M.si. selaku Dekan Fakultas Sains dan

Teknologi.

3. Petrus Setyo Prabowo, S.T., M.T. selaku Ketua Program Studi Teknik Elektro

Universitas Sanata Dharma Yogyakarta.

4. Dr. Linggo Sumarno, selaku dosen pembimbing yang dengan sabar membimbing,

member masukkan, serta memotivasi sehigga penulis dapat menyelesaikan tugas akhir

ini.

5. Bapak Petrus Setyo Prabowo, S.T., M.T. dan Bapak Dr. Iswanjono selaku dosen

penguji yang memberikan masukkan, kritik dan saran serta merevisi penulisan tugas

akhir ini.

6. Bapak dan ibu dosen yang telah mengajarkan banyak ilmu yang bermanfaat selama

menempuh pendidikan di Universitas Sanata Dharma.

7. Seluruh laboran dan staff Program Studi Teknik Elektro Fakultas Sains dan Teknologi

Universitas Sanata Dharma Yogyakarta yang telah banyak membantu penulis selama

menempuh pendidikan di Universitas Sanata Dharma.

8. Kedua orang tua penulis telah banyak memberikan dukungan doa, kasih sayang,

perhatian, semangat, serta motivasi sehingga penulis dapat menyelesaikan tugas akhir

ini.

9. Kakak dan adik penulis yang memberikan sindiran namun hal itu yang membuat

penulis termotivasi untuk menyelesaikan tugas akhir ini.

10. Teman-teman seperjuangan Teknik Elektro 2010 yang dalam susah atau senang selalu

mendukung, menyemangati, dan membantu dalam menyelesaikan tugas akhir ini,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xi

khususnya untuk Stevanus Hari yang memberikan dukungan dan motivasi pada saat

penulis mengalami kegagalan.

11. Teman-teman misdinar dan antiokhia gereja Bunda Maria Cirebon yang memberikan

semangat serta menghibur penulis.

12. Semua pihak yang tidak dapat disebutkan satu per satu yang telah membantu dan

mendukung penyelesaian tugas akhir ini.

Penulis menyadari bahwa dalam penulisan tugas akhir ini masih banyak kekurangan, oleh

sebab itu penulis mengharapkan kritik dan saran yang membangun untuk penyempurnaan

tugas akhir ini. Penulis juga berharap tugas akhir ini dapat dimanfaatkan dan

dikembangkan lebih lanjut oleh peneliti lain sehingga tulisan ini dapat lebih bermanfaat.

Yogyakata,…………..

Penulis

Ignatius Agung Nugroho

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xii

DAFTAR ISI

Halaman Sampul (Bahasa Indonesia) ........................................................................................ i

Halaman Sampul (Bahasa Inggris) ........................................................................................... ii

Halaman Persetujuan ............................................................................................................... iii

Halaman Pengesahan ............................................................................................................... iv

Pernyataan Keaslian Karya ....................................................................................................... v

Halaman Persembahan ............................................................................................................. vi

Lembar Persetujuan Publikasi Karya ...................................................................................... vii

Intisari .................................................................................................................................... viii

Abstract .................................................................................................................................... ix

Kata Pengantar .......................................................................................................................... x

Daftar Isi ................................................................................................................................. xii

Daftar Gambar ........................................................................................................................ xv

Daftar Tabel .......................................................................................................................... xvii

BAB I:PENDAHULUAN

1.1. Latar Belakang ....................................................................................................... 1

1.2. Tujuan dan Manfaat ............................................................................................... 2

1.3. Batasan Masalah .................................................................................................... 2

1.4. Metodologi Penelitian ............................................................................................ 3

BAB II: DASAR TEORI

2.1. Rambu Lalu Lintas ................................................................................................. 5

2.2. Pengolahan Citra .................................................................................................... 6

2.2.1. Definisni Citra ..................................................................................................... 6

2.2.2. Ruang Warna RGB ............................................................................................. 8

2.2.3. Citra Grayscale ................................................................................................... 8

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xiii

2.2.4. Cropping ............................................................................................................. 9

2.2.5. Resizing ............................................................................................................. 10

2.3. Pengenalan Pola ................................................................................................... 10

2.4. Operasi Geometri Citra ......................................................................................... 10

2.5. Wavelet ................................................................................................................ 11

2.5.1. Wavelet secara Umum ...................................................................................... 11

2.5.2. Wavelet Haar .................................................................................................... 11

2.6. Konvolusi ............................................................................................................. 13

2.6.1. Konvolusi secara Umum ................................................................................... 13

2.6.2. Konvolusi dengan Ekstensi Sinyal.................................................................... 15

2.7. Downsampling ..................................................................................................... 16

2.8. Fungsi Jarak Chi-Square ...................................................................................... 16

2.9. Templete Matching............................................................................................... 16

2.10. Matlab ................................................................................................................ 17

2.11. WebCam ............................................................................................................ 17

BAB III:PERANCANGAN

3.1. Perancangan SistemHardware ............................................................................. 18

3.1.1. Tripot................................................................................................................. 18

3.1.2. WebCam ............................................................................................................ 19

3.1.3. Laptop / Komputer ............................................................................................ 19

3.14. Gambar Rambu Lalu Lintas ............................................................................... 19

3.2. Perancangan Sistem Software .............................................................................. 20

3.2.1. Proses Pembuatan Database ............................................................................. 21

3.2.2. Pengambilan Citra Rambu ................................................................................ 23

3.2.3. Tahap Preprocessing ........................................................................................ 24

3.2.4. Ekstraksi Ciri .................................................................................................... 31

3.2.5. Fungsi Jarak ...................................................................................................... 33

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xiv

3.2.6. Penentuan Keluaran .......................................................................................... 33

3.3. Gambar Uji........................................................................................................... 34

3.4. Perancangan Tampilan GUI Matlab .................................................................... 34

BAB IV:HASIL DAN PEMBAHASAN

4.1. Langkah-langkah awal untuk menjalankan program rambu peringatan .............. 36

4.2. Penjelasan Program .............................................................................................. 39

4.3. Pengujian dan Analisis Hasil Pengenalan Rambu Peringatan ............................. 49

4.3.1. Pengujian Pengenalan Berdasarkan Variasi Jarak dan Variasi Desimasi ........ 49

4.3.2. Pengujian Pengenalan Berdasarkan Variasi Sudut .......................................... 54

BAB V:KESIMPULAN

5.1. Kesimpulan .......................................................................................................... 64

5.2. Saran .................................................................................................................... 64

DAFTAR PUSTAKA ............................................................................................................. 65

LAMPIRAN ............................................................................................................................ 66

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xv

DAFTAR GAMBAR

Halaman

Gambar 2.1. Contoh gambar rambu peringatan (a) Jembatan Sempit (b) Banyak Tikungan

(c) Tikungan Tajam ke Kiri .............................................................................. 6

Gambar 2.2. Contoh koordinat citra digital ........................................................................... 7

Gambar 2.3. Skema Ruang Warna RGB ............................................................................... 8

Gambar 2.4.Citra skala keabuan ............................................................................................ 9

Gambar2.5.Dekomposisi wavelet satu level berdasarkan algoritma piramid; ai adalah

koefisien rerata; hi, vi, dan di masing-masing adalah koefisien

horisontal,vertikal, dan diagonal .................................................................... 12

Gambar 2.6. Perhitungan konvolusi secara grafis ............................................................... 14

Gambar 2.7. Perhitungan konvolusi secara matriks ............................................................ 14

Gambar 2.8. Perhitungan konvolusi ................................................................. 15

Gambar 3.1. Gambaran umum perancangan sistem ............................................................ 18

Gambar 3.2. Contoh gambar rambu lalu-lintas ................................................................... 19

Gambar 3.3. Blok diagramproses pengenalan rambu .......................................................... 20

Gambar 3.4. Diagram alir proses pengenalan rambu .......................................................... 21

Gambar 3.5. Diagram alir pembuatan database .................................................................. 23

Gambar 3.6. Diagram alir pengambilan citra ...................................................................... 24

Gambar 3.7. Konversi citra rgb ke grayscale (a) citra masukkan (rgb), (b) citra hasil

grayscale ......................................................................................................... 25

Gambar 3.8. Contoh proses cropping; (a)titik koordinat bagian kiri atas; (b) titik koordinat

bagian kanan atas; (c) titik koordinat bagian kiri bawah; (d) hasil cropping . 26

Gambar 3.9. Diagram ali Bounding Box.............................................................................. 27

Gambar 3.10. Proses bounding box (a) Input karakter (b) Hasil potong kiri (c) Putar 90°

serah jarum jam ke 1 (d) Hasil potong kiri (e) Putar 90° serah jarum jam ke 2

(f) Hasil potong kiri (g) Putar 90° serah jarum jam ke 3 (h) Hasil Potong kiri

(i) Putar 90° serah jarum jam ke 4, kembali ke posisi awal ........................... 28

Gambar 3.11. Proses (a) sebelum resizing (b) setelah resizing ........................................... 29

Gambar 3.12. Diagram alir pemrosesan citra ..................................................................... 30

Gambar 3.13. Diagram alir ekstraksi ciri ........................................................................... 31

Gambar 3.14. Diagram alir konvolusi ................................................................................ 32

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xvi

Gambar 3.15. Diagram alir downsampling .......................................................................... 32

Gambar 3.16. Diagram alir tahap fungsi jarak ................................................................... 33

Gambar 3.17. Diagram alir penentu keluaran ..................................................................... 34

Gambar 3.18. Sketsa GUI pengenalan rambu lalu lintas .................................................... 35

Gambar 4.1. Icon Matlab R2010a ....................................................................................... 36

Gambar 4.2. Tampilan utama matlab R2010a ..................................................................... 36

Gambar 4.3. Mengganti directory dan menu guide ............................................................. 37

Gambar 4.4. Tampilan GUIDE Quick Start ........................................................................ 37

Gambar 4.5. Tampilan Pengenalan_Rambu ........................................................................ 38

Gambar 4.6. Tampilan GUI Pengenalan Rambu Peringatan secara Real Time .................. 38

Gambar 4.7. Tampilan saat tombol Camera On ditekan ..................................................... 39

Gambar 4.8. Tampilan saat tombol Capture ditekan .......................................................... 40

Gambar 4.9. Tampilan saat popupmenu diklik .................................................................... 41

Gambar 4.10.Tampilan saat tombol start diklik .................................................................. 42

Gambar 4.11.Posisi webcam terhadap gambar rambu ........................................................ 49

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

xvii

DAFTAR TABEL

Halaman

Tabel 3.1. Spesifikasi webcam ............................................................................................ 19

Tabel 3.2. Keterangan GUI ................................................................................................ 35

Tabel 4.1. Mencari nilai parameter untuk bounding box .................................................... 44

Tabel 4.2. Menentukan nilai parameter JKolom ................................................................ 45

Tabel 4.3. Pengujian rambu tikungan ke kiri...................................................................... 50

Tabel 4.4. Pengujian rambu tikungan ke kanan.................................................................. 51

Talel 4.5. Pengujian rambu persimpangan ....................................................................... 52

Tabel 4.6. Citra hasil desimasi ............................................................................................ 53

Tabel 4.7. Pengujian rambu tikungan ke kiri dengan jarak 200 cm ................................... 54

Tabel 4.8. Pengujian rambu tikungan ke kanan dengan jarak 200 cm ............................. 55

Tabel 4.9. Pengujian rambu persimpangan dengan jarak 200 cm ..................................... 56

Tabel 4.10. Pengujian rambu tikungan ke kiri dengan jarak 300 cm ................................ 57

Tabel 4.11. Pengujian rambu tikungan ke kanan dengan jarak 300 cm ............................ 58

Tabel 4.12. Pengujian rambu persimpangan dengan jarak 300 cm ................................... 59

Tabel 4.13. Pengujian rambu tikungan ke kiri dengan jarak 400 cm ................................ 60

Tabel 4.14. Pengujian rambu tikungan ke kanan dengan jarak 400 cm ............................ 61

Tabel 4.15. Pengujian rambu persimpangan dengan jarak 400 cm ................................... 62

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Kemajuan perkembangan teknologi di jaman ini berkembang sangat cepat. Salah

satu teknologi yang banyak dikembangkan yaitu teknologi computer vision. Teknologi

computer vision adalah teknologi yang membuat komputer dapat melihat dan mendapatkan

suatu informasi dari gambar sehingga teknologi ini membuat komputer memiliki

kemampuan seperti mata manusia dalam menangkap informasi visual (human sight).

Berdasarkan teknologi tersebut maka dibuat suatu program sehingga komputer dapat

mengenali lambang rambu-rambu lalu lintas. Gambar yang nantinya akan dilihat yaitu

gambar yang berasal dari gambar rambu – rambu lalu lintas.

Sistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time

menggunakan webcam. Penelitian-penelitian yang telah dibuat berkaitan dengan

pengenalan rambu-rambu lalu lintas, diantaran penelitian yang dilakukan oleh Tri Harsono

[1] tentang Pengenalan Rambu – Rambu Lalu Lintas dengan Menggunakan Filter Warna

dan Kuantisasi Rata – Rata dan penelitian yang dilakukan oleh Deniel Cahyo Prasetyo [2]

tentang Pengenalan Perangkat Elektronika Secara Real Time Menggunakan Webcam

Berbasis Ekstraksi Ciri Discrete Consine Transform.

Teknologi ini bila dikembangkan nantinya dapat mengenali rambu-rambu lalu

lintas yang ada disekitar kendaraan dan memberikan informasi kepada pengemudi

kendaraan tentang rambu-rambu yang ada disekitarnya. Sehingga dapat membantu

pengemudi untuk tetap fokus pada jalan, hal ini dapat pula mengurangi resiko kecelakaan

serta pelanggaran lalu lintas.

Teknologi computer vision ini membutuhkan beberapa perangkat pendukung

seperti webcam yang berfungsi untuk menangkap gambar rambu-rambu lalu lintas, selain

itu dibutuhkan pula komputer / laptop yang berfungsi sebagai tempat untuk mengolah

gambar agar bisa dikenali dan informasinya diberikan pada pengguna. Sistem ini melewati

beberapa proses, diantaranya yaitu proses pengambilan gambar / citra yang dilakukan

menggunakan webcam. Citra yang digunakan berasal dari gambar rambu berukuran 60 cm

x 60 cm. Pengolahan citra dan pengenalan pola menggunakan ekstraksi ciri Wavelet Haar

serta fungsi jarak Chi Square. Setiap gambar dari rambu akan diambil menggunakan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

2

webcam, setelah itu gambar rambu akan dibandingkan dengan database yang telah

disiapkan. Proses pengolahan citra dan pengenalan pola tersebut dilakukan dengan

menggunakan perangkat lunak Matlab, selain itu Matlab juga memiliki sebuah fasilitas

antarmuka (interface) yaitu GUI (Graphical User Interface) sehingga dapat memudahkan

penggunanya dalam pengoperasian sistem. Keluaran dari sistem ini merupakan hasil

perbandingan nilai terkecil antara gambar dari webcam dengan data pada database.

Keluaran sistem ini berupa teks yang akan muncul dalam layar monitor dan suara yang

keluar melalui speaker.

1.2. Tujuan dan Manfaat Penelitian

- Tujuan

Membuat aplikasi untuk mengenali rambu lalu_lintas dengan menggunakan

ekstraksi ciri Wavelet Haar dan fungsi jarak Chi Square.

- Manfaat

1. Membantu pengguna aplikasi untuk mengenali rambu-rambu lalu lintas.

2. Sebagai bahan pembelajaran dalam penerapan image processing.

1.3. Batasan Masalah

Sistem pengenalan rambu-rambu lalu lintas ini terdiri dari perangkat keras

(hardware) dan perangkat lunak (software). Hardware terdiri dari webcam, laptop, fixture,

dan dua buah lampu belajar. Software yang digunakan adalah Matlab, yang digunakan

sebagai tempat untuk proses pengolahan data.

Pada perancangan sistem ini, penulis fokus pada pembuatan software komputer

untuk memproses pengenalan rambu-rambu lalu lintas sedangkan untuk hardware berupa

webcam yang sudah tersedia di pasaran dan fixture yang didesain sendiri. Penulis juga

menetapkan beberapa batasan masalah pada perancangan ini, yaitu sebagai berikut :

1. Masukkan data berasal dari gambar rambu lalu lintas peringatan yang berukuran

60 cm x 60 cm.

2. Pengambilan citra menggunakan webcam.

3. Pemrograman dan tampilan GUI menggunakan Matlab.

4. Variasi citra untuk pengujian akan menggunakan variasi jarak.

5. Variasi desimasi mulai dari desimasi 1 hingga desimasi 3.

6. Variasi sudut kemiringan antara 45° hingga -45°

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

3

7. Pengenalan citra ini menggunakan ekstraksi ciri Wavelet Haar dan fungsi jarak

Chi Square yang diolah menggunakan software Matlab.

8. Sistem pengenalan rambu-rambu lalu lintas yang dibuat bersifat real time.

9. Hasil keluaran berupa teks di layar monitor dan keluaran berupa suara melalui

speaker

1.4. Metode penelitian

Langkah – langkah dalam pengerjaan tugas akhir :

1. Studi Pustaka

Studi pustaka dilakukan dengan cara mengumpulkan serta mempelajari

bahan -bahan referensi berupa buku-buku dan jurnal-jurnal ilmiah yang berasal

dari media internet maupun media-media lain. Bahan referensi yang

dikumpulkan dan dipelajari berkaitan dengan topik yang diambil, seperti bahan

tentang pemograman Matlab, wavelet, fungsi jarak chi square, dan image

processing.

2. Pembuatan subsistem software

Tahap ini merupakan tahap dalam pembuatan program untuk sistem

pengenalan rambu lalu-lintas. Pembuatan program menggunakan software

Matlab.

3. Perancangan subsistem software

Sistem pengenalan rambu lalu lintas ini akan bekerja bila user menekan

push button yang memberikan perintah pada sistem untuk mengambil citra

(capture) menggunakan webcam. Setelah proses capture, proses selanjutnya

adalah proses preprocessing yang terdiri dari tiga tahap yaitu grayscale,

cropping dan resizing. Tahap pertama dari proses preprocessing yaitu citra akan

dikonversi menjadi bentuk grayscale sebelum nantinya citra akan di cropping

agar bagian yang tidak perlu bisa dihilangkan. Tahap selanjutnya yaitu ukuran

citra akan diubah sesuai dengan yang diinginkan, proses ini disebut proses

resizing. Output dari proses preprocessing selanjutnya akan menjadi input dari

proses pengenalan rambu lalu lintas. Proses pengenalan rambu lalu-lintas terdiri

dari tahap ekstraksi ciri dan tahap fungsi jarak dimana pada tahap ini akan

dibandingkan juga dengan data dari database. Kemudian proses selanjutnya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

4

adalah proses penentuan keluaran dan yang terakhir adalah menampilkan hasil

keluaran pada layar monitor.

4. Analisis dan penyimpulan

Analisis data yang pertama dilakukan dengan meneliti pengaruh variasi

desimasi terhadap tingkat pengenalan. Penyimpulan hasil dilakukan untuk

mencari ukuran desimasi yang terbaik yang menghasilkan tingkat pengenalan

yang optimal. Kedua, meneliti pengaruh jarak antara webcam dengan rambu

terhadap tingkat pengenalan. Penyimpulan hasil dilakukan untuk mengetahui

kinerja sistem pengenalan terhadap pengaruh jarak.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

5

BAB II

DASAR TEORI

2.1. Rambu Lalu Lintas

Rambu lalu lintas adalah salah satu perlengkapan jalan yang memuat lambang,

huruf, angka, kalimat, atau perpaduan diantaranya, yang berfungsi untuk memberikan

peringatan, larangan,perintah, dan petunjuk bagi pengguna jalan. Fungsi rambu lalu lintas

akan maksimal jika para pengguna jalan mengenal dan mengetahui arti dan maksud dari

rambu-rambu lalu-lintas yang terpasang di jalan umum [3].

Selain itu agar rambu-rambu mudah dimengerti maka harus dibuat se-efektif

mungkin, dengan beberapa syarat seperti berikut :

1. Memenuhi kebutuhan.

2. Menarik perhatian dan mendapat respek pengguna jalan.

3. Memberikan pesan yang sederhana dan mudah dimengerti pengguna jalan.

4. Menyediakan waktu cukup kepada pengguna jalan dalam memberikan respon.

Beberapa pertimbangan yang harus diperhatikan dalam perencanaan dan

pemasangan rambu agar rambu dapat efektif, yaitu :

1. Keseragaman bentuk dan ukuran rambu

Keseragaman bentuk dan ukuran rambu lalu lintas akan memudahkan pengguna

jalan dalam memahami, mengenal, serta memberikan respon karena dengan bentuk

dan ukuran yang konsisten akan membuat konsistensi persepsi dan respon

pengguna jalan.

2. Desain rambu

Rambu-rambu lalu-lintas harus harus memenuhi standar dalam pembuatanya, yaitu

warna, bentuk, ukuran, dan tingkat retrorefleksi harus menarik perhatian pengguna

jalan agar mudah dipahami dan memberikan waktu yang cukup bagi pengguna

jalan dalam memberikan respon.

3. Lokasi rambu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

6

Lokasi rambu berhubungan dengan pengguna jalan sehingga pengguna jalan dapat

memiliki waktu yang cukup dalam memberikan respon.

4. Operasi rambu

Rambu yang benar pada lokasi yang tepat harus memenuhi kebutuhan lalu lintas

dan diperlukan pelayanan yang konsisten dengan memasang rambu yang sesuai

kebutuhan.

5. Pemeliharaan rambu

Pemeliharaan rambu diperlukan agar rambu tetap berfungsi baik.

Negara Indonesia mengenal ada empat macam rambu, salah satu diantaranya yaitu

rambu peringatan (Gambar 2.1). Rambu peringatan berfungsi untuk memberikan

peringatan kepada pengguna jalan bahwa kemungkinan ada bahaya atau tempat berbahaya

di depan pengguna jalan sehingga harus berhati-hati. Warna dasar rambu peringatan

berwarna kuning dengan lambang atau tulisan berwarna hitam. Seperti contoh gambar

rambu dibawah ini :

(a) (b) (c)

Gambar 2.1. Contoh gambar rambu (a) Tikungan ke Kiri (b) Tikungan ke Kanan

(c) Perimpangan

2.2. Pengolahan Citra

2.2.1. Definisi Citra

Citra adalah representasi (gambaran), kemiripan, atau intensitas pada bidang dua

dimensi, sehingga citra merupakan dimensi spasial atau bidang yang berisi informasi

warna yang tidak terpengaruh waktu. Ditinjau dari sudut pandang matematis, citra

merupakan fungsi menerus (continue) atas intensitas cahaya pada bidang dua dimensi.

Sumber cahaya menerangi objek, objek memantulkan kembali seluruh atau sebagian

berkas cahaya kemudian ditangkap oleh alat optis atau electron optis [4].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

7

Citra dibedakan menjadi dua macam, yaitu citra analog dan citra digital. Citra

analog adalah citra yang berasal dari sinyal analog yang kemudian ditangkap oleh optik.

Sedangkan citra digital merupakan sebuah larik (array) yang terdiri dari nilai real dan

kompleks yang direpresentasikan dengan deret bit tertentu.

Suatu citra juga dapat didefinisikan dengan menggunakan fungsi matriks (2.1),

yaitu f(x,y) berukuran M baris dan N kolom, dengan x dan y adalah koordinat spasial, dan

amplitudo f di titik koordinat (x,y). Citra dapat dikatakan citra digital apabila nilai x,y dan

amplitudo f berhingga dan bernilai diskrit. Citra digital dapat ditulis dalam bentuk matrik

sebagai berikut [5] :

( ) [

( ) ( ) ( ) ( ) ( ) ( )

( ) ( ) ( )

] (2.1)

Matriks diatas menyatakan bahwa baris dan kolom merupakan suatu titik pada

citra. Nilai antara baris dan kolom tersebut disebut dengan picture element, image element,

pels, atau piksels. Piksel ini merupakan sekumpulan titik-titik gambar yang

menggambarkan koordinat dan mempunyai intensitas yang dinyatakan dengan bilangan

dan disimbolkan f(x,y), dimana (x,y) merupakan koordinat pada bidang dua dimensi dan

f(x,y) merupakan intensitas cahaya pada titik (x,y), seperti pada Gambar 2.2 [5].

Gambar 2.2. Contoh koordinat citra digital

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

8

2.2.2. Ruang Warna RGB

Ruang warna adalah spesifikasi suatu sistem koordinat yang setiap titik di

dalamnya mempresentasikan sebuah warna. Setiap citra berwarna memiliki ruang warna

yang disesuaikan.Ruang warna biasanya menggunakan tiga komponen dasar yaitu red (R),

green (G), blue (B) dan ketiga komponen tersebut merupakan bagian dari setiap piksel.

Ruang warna RGB dapat digambarkan dalam bentuk kubus seperti pada Gambar 2.3 [6].

Gambar 2.3. Skema Ruang Warna RGB

Setiap warna pokok memiliki intensitas sendiri dengan nilai maksimum 255 atau 28

= 8 bit. Bila dilihat dari Gambar 2.3 titik awal berada pada koordinat (0,0,0) yang

merupakan warna hitam, hal tersebut juga menunjukkan bahwa setiap komponen warna

benilai minimal. Sedangkan untuk komponen warna bernilai maksimal berada pada titik

koordinat (255,255,255) yang menyatakan warna putih. Selain itu bila komponen warna

bernilai maksimal maka sama dengan 24 bit sehingga jumlah warna mencapai 16.777.216.

2.2.3. Citra Grayscale

Citra berwarna terdiri dari 3 layer matrik yaitu R-layer, G-layer, dan B-layer seperti

yang telah dibahas sebelumnya. Sehingga bila citra tersebut akan diproses membutuhkan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

9

proses perhitungan yang panjang karena perhitungan harus diulang sebanyak tiga kali.

Supaya citra dapat diproses oleh komputer dengan mudah maka citra digital harus

memiliki format tertentu, oleh sebab itu hal pertama kali yang dilakukan untuk melakukan

pengolahan citra yaitu dengan cara mengubah citra berwarna menjadi format/bentuk

grayscale atau warna keabuan. Mengubah citra berwarna menjadi citra grayscale dapat

dilakukan dengan cara mengambil rata-rata dari nilai R, G, dan B menggunakan rumus

seperti pada persamaan (2.2) [7]

(2.2)

Dimana :

S : Nilai grayscale

R : Nilai warna Red

G : Nilai warna Green

B : Nilai warna Blue

Citra grayscale merupakan citra digital yang pada setiap pikselnya hanya memiliki

satu nilai kanal. Format citra ini disebut skala keabuan karena pada umumnya warna hitam

digunakan sebagai warna minimal 0 dan warna putih sebagai warna maksimal 255, dimana

warna tengah-tengah antara hitam dan putih adalah abu-abu. Seperti yang ditunjukkan pada

Gambar 2.4.

Gambar 2.4. Citra skala keabuan

2.2.4. Cropping

Salah satu cara lainnya agar pengolahan citra menjadi lebih mudah yaitu dengan

cara cropping. Cara ini menentukkan bagian citra yang dibutuhkan untuk proses

selanjutnya sehingga untuk bagian citra yang tidak dibutuhkan akan dipotong atau

dihilangkan. Sehingga dengan cara cropping akan mendapatkan data yang dibutuhkan dan

mempermudah dalam pengolahan citra selanjutnya.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

10

2.2.5. Resizing

Resizing adalah proses mengubah ukuran resolusi suatu citra secara horizontal

maupun vertikal menjadi lebih besar atau lebih kecil dari ukuran sebelumnya, namun

perubahan itu tidak akan berpengaruh pada tampilan citran karena yang diubah hanya

ukuran piksel citra.

2.3. Pengenalan Pola

Pengenalan pola (pattern recognition) adalah suatu ilmu untuk mengklasifikasikan

atau menggambarkan sesuatu berdasarkan pengukuran kuantitatif fitur (ciri) atau sifat

utama dari suatu obyek [7]. Proses pengenalan pola dapat dilakukan dengan cara

membandingkan antara obyek yang ingin dikenali dengan data-data yang telah disediakan.

Proses pengenalan pola ini bertujuan meniru kemampuan manusia dalam mengenali suatu

obyek atau pola, sehingga dengan menerapkan pengenalan pola ini kepada suatu mesin

maka membuat mesin memiliki kemampuan seperti manusia dalam mengenali suatu obyek

atau pola.

2.4. Operasi Geometri Citra [6]

Operasi geometri adalah proses perubahan hubungan spasial antara setiap piksel

pada sebuah citra. Operasi geometri memetakan kembali piksel citra input dari posisi awal

(x1, y1) ke posisi baru (x2, y2) pada citra output. Proses yang tergolong ke dalam operasi

geometri di antaranya adalah penskalaan dan Affine Transformation.

Metode transformasi Affine dapat digunakan untuk mencari citra hasil penskalaan.

Secara matematis rumus transformasi Affine adalah sebagai berikut.

[ ] [

] (2.5)

Proses penskalaan didapat dengan mengganti nilai A dan B dengan nilai sebagai berikut.

[

] (2.6)

[ ] (2.7)

Dimana :

(x1 , y1) : citra input

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

11

(x2 , y2) : citra output

(Sp , Sl) : variable penskalaan

Sehingga didapatkan rumus pengganti untuk proses penskalaan adalah sebagai berikut.

[ ] [

] [ ] [

] (2.8)

Sehingga:

[ ] [

] [ ] (2.9)

2.5. Wavelet

2.5.1. Wavelet secara Umum

Wavelet merupakan gelombang singkat yang mempunyai kemampuan

mengelompokkan energi citra dan terkonsentrasi pada sekelompok kecil koefisien,

sedangkan kelompok koefisien lainnya hanya mengandung sedikit energi yang dapat

dihilangkan tanpa mengurangi nilai informasi [8]. Sedangkan trasformasi wavelet

merupakan pengubahan sinyal kedalam bentuk berbagai wavelet basis dengan

menggunakan berbagai penyekalaan dan pergeseran, oleh karena itu beberapa skala dan

resolusi dari koefisien wavelet dapat dihitung pada resolusi tinggi berikutnya. Sehingga

dengan adanya sifat multiresolusi pada transformasi wavelet, dimungkinkan untuk

mendekomposisikan suatu sinyal pada skala yang berlainan. Untuk mendapatkan

dekomposisi wavelet suatu citra digunakan algoritma piramid, seperti Gambar 2.5.

Dekomposisi dengan n tingkatan, maka output dari ai akan dijadikan input untuk

dekomposisi tingkat selanjutnya,sehingga menjadi ai+1, hi+1, vi+1, dan di+1.

2.5.2. Wavelet Haar

Wavelet Haar merupakan salah satu tipe wavelet yang paling sederhana yang dapat

diterapkan pada transformasi sinyal 1 dimensidan transformasi pada citra (sinyal 2

dimensi). Transformasi pada citra atau sinyal 2-dimensi dalam mentransformasikan nilai-

nilai pikselnya dapat dilakukan dengan dua cara, yaitu metode dekomposisi standar dan

metode dekomposisi tidak standar [9]. Metode dekomposisi standar dilakukan dengan cara

memisahkan antara baris dan kolom sehingga transformasi wavelet dilakukan dengan 1-

dimensi. Transformasi dilakukan pada baris terlebih dahulu hingga nilai piksel citra yang

diinginkan kemudian dilanjutkan transformasi wavelet 1-dimensi untuk setiap kolomnya.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

12

Sedangkan untuk metode dekomposisi tidak standar, dilakukan dengan cara transformasi

wavelet 1-dimensi untuk baris dan kolom dilakukan bergantian terus hingga mencapai nilai

yang diinginkan.

Wavelet Haar memiliki empat buah filter, yaitu dekomposisi low pass filter dan

high pass filter serta rekonstruksi low pass filter dan high pass filter. Penelitian ini hanya

menggunakan satu filter, yaitu dekomposisi low pass filter. Koefisien wavelet Haar

dekomposisi low pass filter (2.10), yaitu :

, - (2.10)

Gambar 2.5. Dekomposisi wavelet satu level berdasarkan algoritma piramid;

ai adalah koefisien rerata; hi, vi, dan di masing-masing adalah

koefisien horisontal,vertikal, dan diagonal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

13

2.6. Konvolusi

2.6.1. Konvolusi secara Umum [10]

Konvolusi dapat didefinisikan sebagai cara matematik untuk menggabungkan dua

buah sinyal menjadi sinyal dalam bentuk lain. Konvolusi banyak digunakan dalam

pengolahan citra, diantara untuk memperhalus citra (smoothing), menajamkan citra

(crispening), mendeteksi tepi (edge detection). Jika ada dua barisan u dan h maka hasil

konvolusinya (yk), dimana k menunjukkan suku ke-k. Konvolusi dinyatakan dengan

persamaan 2.11.

( )

Contoh, terdapat dua barisan berikut u = [1 2 3 4] dan h = [1 2] yang akan dikonvolusi.

Mencari yk menggunakan persamaan 2.11, sebagai contoh mencari y1.

Penyelesaian secara grafis (Gambar 2.6) :

1. Ambil bayangan cermin dari un (Gambar 2.6.a) terhadap sumbu vertikal yang

melalui titik asal untuk memperoleh u(-n) (Gambar 2.6.b).

2. Geserkan u(-n) ke kanan sejauh suatu jumlah yang sama dengan nilai k dimana

barisan keluaran dihitung, yang menghasilkan u(k-n) (Gambar 2.6.c).

3. Perkalikan barisan u(k-n) dengan baris masukkan hk (Gambar 2.6.d).

4. Jumlahkan nilai-nilai hasil kali barisan (Gambar 2.6.e) untuk memperoleh nilai

konvolusi di k (Gambar 2.6.f).

Selain itu untuk memudahkan dalam perhitungan konvolusi dapat juga

menggunakan cara matriks seperti pada Gambar 2.7. Elemen-elemen matriks ini adalah

hasil kali dari puncak-puncak baris dan kolom yang bersangkutan. Hasil konvolusi dapat

dilihat setelah hasil dari perkalian dua baris tersebut dijumlahkan menurut garis-garis

diagonal yang putus-putus. Sehingga, suku pertama (y0) adalah 1 dan untuk suku kedua

(y1) sama dengan 2 + 2 = 4. Cara yang sama dilakukan untuk mencari suku berikutnya (yk),

setelah semuanya dihitung maka akan memperoleh hasil yk = [1 4 7 10 8].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

14

Gambar 2.6. Perhitungan konvolusi secara grafis

Gambar 2.7. Perhitungan konvolusi secara matriks

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

15

2.6.2. Konvolusi dengan Ekstensi Sinyal

Konvolusi biasa digunakan bila ada sinyal yang memiliki panjang terbatas, dan

juga ujung-ujung sinyalnya diskontinu sehingga dapat menyebabkan distorsi pada ujung-

ujung sinyal. Sehingga dapat dikatakan konvolusi adalah suatu proses untuk

memperpanjang sinyal dengan cara pengulangan sinyal atau yang disebut periodisasi.

Misalnya sinyal input uk = {u(1), u(2), … , u(M)} akan dikonvolusi dengan sinyal lain hk =

{h(1), h(2), … , h(N)}, dimana N adalah bilangan genap, dan M > N, serta m adalah N/2.

Sehingga pengulangan sinyal dengan periodisasi akan menghasilkan sinyal

* ( ) ( ) ( ) ( ) ( ) ( )+ (2.12)

Konvolusi sinyal yang diperpanjang dengan sinyal hk akan menghasilkan

Hasil konvolusi menghasilkan sinyal output dimana panjang M + N-1 lebih besar

daripada panjang uk. Agar sinyal output memiliki panjang yang sama dengan sinyal input,

maka hanya bagian-bagian tertentu saja yang akan dipilih sebagai output. Misalnya, output

konvolusi diatas adalah yk ={y(1), y(2), …, y(L)}, dimana L = M + N-1, maka akan dipilih

bagian-bagian tertentu dari yk adalah [11]

yout(k) = {y(N+1), …,y(N+M)} (2.14)

Sebagai contoh, ada dua baris u = [1 2 3 4] dan h = [1 2] dimana baris u akan

diperpanjang dengan periodisasi (2.12) sehingga menghasilkan = [4 1 2 3 4 1].

Hasil dikonvolusi (2.13) dengan baris h dengan menggunakan cara matriks, seperti

pada Gambar 2.8.

Gambar 2.8. Perhitungan konvolusi

(2.13)

_

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

16

Konvolusi dari menghasilkan yk = [4 9 4 7 10 9 2], setelah itu hasil konvolusi

diambil hanya bagian tertentu saja (2.14) agar panjang output sama dengan panjang input.

Sehingga menghasilkan yout(k) = [4 7 10 9].

2.7. Downsampling

Downsampling adalah proses pengurangan pencuplikan baris atau kolom yang

diambil dari suatu citra atau data dari sinyal input. Downsampling biasa digunakan untuk

proses kompresi data, sehingga data tidak terlalu besar dan menjadi lebih mudah untuk

diolah. Selain itu downsampling juga dibutuhkan untuk melakukan proses dekomposisi

citra menjadi citra pendekatan dan citra detil. Contoh proses downsampling, misal data

input (2.16) akan di-downsampling dengan mempertahankan bagian genap

, - (2.15)

maka data output (2.17) akan menjadi

, - (2.16)

2.8. Fungsi Jarak Chi-Square

Fungsi jarak chi-square berguna untuk menguji hubungan atau pengaruh dua buah

variabel nominal dan mengukur kuatnya hubungan antara variabel yang satu dengan

variabel nominal lainnya. Berikut ini rumus fungsi jarak chi-square [12]:

∑( )

( )

Dimana:

d = output jarak Chi-Square

P = input dari hasil ekstraksi ciri

Q = data dari database

n = banyaknya data

2.9. Template Matching [13]

Templete matching merupakan salah satu pendekatan yang paling sederhana dan

paling awal untuk pengenalan pola. Matching adalah operasi generik pada pengenalan pola

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

17

yang digunakan untuk menentukan kemiripan antara entitas (titik, kurva, atau bentuk) dari

jenis yang sama. Biasanya sampel (template) pada template matching berbentuk 2D, yang

nantinya akan dicocokan dengan sampel yang telah disimpan dengan cara memperhatikan

rotasi dan skalanya. Pengukuran kesamaan antara sampel masukkan dengan sampel

disimpan dapat dicari korelasinya dengan optimal berdasarkan percobaan yang dilakukan.

2.10. Matlab [14]

Matlab adalah sebuah bahas pemrograman dengan kemampuan unjuk kerja tinggi

untuk komputasi teknis, yang mengintegrasikan komputasi, visualisasi, dan pemrograman

di dalam lingkungan yang mudah penggunaannya dalam memecahkan persoalan dengan

solusinya yang dinyatakan dengan notasi matematik. Penggunaan Matlab, yaitu :

1. Matematika dan komputasi

2. Pengembangan algoritma

3. Pemodelan, simulasi dan pembuatan ‘prototipe’

4. Analisis data, eksplorasi dan visualisasi

5. Grafik untuk sains dan teknik

6. Pengembangan aplikasi, termasuk pembuatan antarmuka grafis untuk pengguna

(Graphical User Interface).

Matlab mempermudah untuk menyelesaikan masalah komputasi, tertutama yang

menyangkut matriks dan vektor karena matlab menggunakan elemen data dengan dasarnya

adalah array yang tidak membutuhkan dimensi. Beberapa toolbox yang tersedia meliputi

bidang : pengolahan sinyal, system kendali, jaringan saraf, logika ‘fuzzy’, wavelet, simulasi

dan lain sebagainya.

2.11. WebCam

Webcam merupakan singkatan dari web camera, yang berfungsi sebagai alat untuk

merekam atau mengambil gambar secara real time. Webcam akan dihubungkan ke

perangkat seperti komputer melalui port USB, setelah webcam dan komputer terhubung

maka gambar yang ditangkap/direkam dapat diolah dan diproses oleh komputer sehingga

gambar tersebut dapat dikenali. Webcam yang digunakan yaitu webcam Logitech C170

yang memiliki kemampuan 5.0 megapiksels, resolusi gambar Lite-HD 1024 x 768, serta

autofocus.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

18

BAB III

PERANCANGAN PENELITIAN

Bab ini akan membahas tentang langkah-langkah perancangan dalam pembuatan

sistem pengenalan rambu-rambu lalu lintas. Pembahasan di bab ini meliputi diagram blok,

data masukkan serta perancangan antar muka yang akan digunakan.

Sistem pengenalan rambu-rambu lalu lintas terdiri dari hardware dan software.

Bagian software yaitu, program pengenalan rambu, database, serta interface GUI yang

semuanya diproses menggunakan Matlab. Sedangkan untuk bagian hardware terdiri dari

fixture, webcam, laptop/komputer, dan gambar rambu lalu lintas peringatan.

Gambar 3.1. Gambaran umum perancangan sistem

3.1 Perancangan Sistem Hardware

3.1.1. Tripot

Tripot merupakan alat bantu yang berfungsi sebagai tempat untuk meletakan

webcam sehingga mudah untuk dipindah-pindah dan webcam tetap stabil sehingga pada

saat pengambilan gambar tidak goyang. Gambar rambu lalu lintas nantinya diletakan

sejajar denganwebcam dengan jarak yang bervariasi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

19

3.1.2. Webcam

Sistem pengenalan rambu lalu-lintas ini menggunakan webcam sebagai perangkat

untuk mengambil citra rambu. Merk webcam yang digunakan adalah Logitech seri C 170

dengan spesifikasi sebagai berikut :

Tabel 3.1. Spesifikasi webcam

Photo quality 5 Megapixel

Video quality VGA

Focus type Always focused

Built-in mic Yes

Auto light correction -

3.1.3. Laptop / Komputer

Laptop / komputer berfungsi sebagai tempat memproses program pengenalan

rambu lalu lintas menggunakan Matlab serta sebagai tempat membandingkan antara

database yang telah disimpan dengan gambar yang diambil dari webcam.

3.1.4. Gambar Rambu Lalu Lintas

Gambar rambu lalu lintas berasal dari poster yang berukuran 600 mm x 600 mm

per rambu. Rambu yang digunakan adalah rambu peringatan yang berwarna kuning yang

berjumlah 3 rambu (Gambar 3.2.).

Gambar 3.2. Contoh gambar rambu lalu-lintas

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

20

3.2 Perancangan Sistem Software

Perancangan sistem software pengenalan rambu lalu-lintas terdapat beberapa proses

yang harus dijalankan, yaitu proses pengambilan citra rambu, preprocessing, ekstraksi ciri,

fungsi jarak, dan penentukeluaran. Gambar 3.3. merupakan blok diagram proses

pengenalan rambu secara software.

Gambar 3.3.Blok diagramproses pengenalan rambu

Citra masukkan rambu lalu lintas berasal dari gambar poster yang di-capture oleh

webcam. Hasil capture lalu dikonversi menjadi warna keabuan(grayscale) sebelum citra

hasil capture tersebut dipotong (cropping) sebesar citra rambu sehingga bagian gambar

yang tidak dibutuhkan bisa dihilangkan. Tahap selanjutnya ukuran piksel dari citra rambu

disesuaikan dengan ukuran yang diinginkan, tahap ini dinamakan tahap resizing. Ukuran

piksel yang diharapkan yaitu 64 x 64. Hasil keluaran dari resizing ini kemudian menjadi

masukkan untuk proses berikutnya yaitu proses pengenalan.

Proses pengenalan terdiri dari dua tahap yaitu ekstraksi ciri dan fungsi jarak.

Ekstraksi ciri adalah tahap pengambilan ciri pada suatu citra sedangkan fungsi jarak adalah

tahap dimana citra hasil ekstraksi ciriakan dibandingkan dengan citra database. Sistem

pengenalan rambu lalu lintas ini menggunakan ekstraksi ciriWavelet Haar serta

menggunakan fungsi jarak Chi Square.Jarak paling minimum yang diperoleh dari hasil

perbandingan antara database dengan ekstraksi ciri dijadikan penentu hasil keluaran

sistem. Hasil keluaran sistem berupa teks dan suara. Diagram alir proses pengenalan rambu

dapat dilihat pada Gambar 3.4.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

21

Gambar 3.4. Diagram alir proses pengenalan rambu

3.2.1. Proses Pembuatan Database

Tahap awal proses pengenalan rambu lalu lintas diperlukan adanya database rambu

terlebih dahulu sebagai acuan dalam menentukan output pengenalan. Pembuatan database

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

22

membutuhkan 3 gambar rambu yang disimpan di dalam satu folder. Terdapat 3 set

database yang berasal dari jumlah desimasi (1, 2, 3) yang telah ditentukan. Proses

pembuatan database hampir sama dengan proses pembuatan software pengenalan rambu

lalu lintas, yaitu dengan melalui tahap input citra, preprocessing, dan ekstraksi ciri.

Proses pertama yaitu pengambilan citra rambu lalu lintas sebanyak 3 gambar,

kemudian citra diproses melalui proses preprocessing yang meliputi proses grayscale,

cropping, bounding box dan resizing. Setelah proses preprocessing selesai, tahap

selanjutnya yaitu ekstraksi ciri menggunakan metode wavelet haar. Proses pembuatan

database dapat dilihat pada diagram alir Gambar 3.5.

Gambar 3.5. Diagram alir pembuatan database

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

23

3.2.2. Pengambilan Citra Rambu

Tahap pengambilan citra rambu adalah proses mengambil gambar (capture) rambu

lalu lintas menggunakan webcam yang diletakan sejajar dengan gambar rambu lalu-lintas

dengan jarak dan sudut yang bervariasi. Webcam akan dihubungkan ke perangkat laptop /

komputer menggunakan sambungan USB 2.0 sehingga gambar yang telah di-capture dapat

dikirimkan dan diterima oleh laptop / komputer yang kemudian diolah menggunakan

Matlab.

Sebelum melakukan pengambilan citra rambu, webcam harus di-inisialisai terlebih

dahulu oleh Matlab dengan cara membuat suatu fungsi di dalam Matlab. Perintah

‘winvideo’berfungsi untuk meng-inisialisasi webcam agar dapat dikenali oleh Matlab.

Selanjutnya menggunakan perintah ‘getsnapshoot’ untuk mengambil citra, seperti

yang diperlihatkan diagram alir pada Gambar 3.6.

Gambar 3.6. Diagram alir pengambilan citra

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

24

Tahap pengambilan citra rambu menggunakan webcam merupakan tahap awal dari

sistem pengenalan rambu lalu-lintas. Input citra dari tahap ini berasal dari gambar rambu

lalu-lintas berukuran 60 cm x 60 cm. Proses pertama tahap ini adalah menyalakan webcam

dengan menggunakan fungsi ‘vidobj’, sedangkan untuk inisialisasi webcam

menggunakan fungsi ‘winvideo’ yang sudah tersedia pada Matlab. Setelah webcam

menyala, proses selanjutnya adalah pengambilan citra (capture) rambu lalu-lintas

menggunakan fungsi ‘getsnapshoot’. Citra hasil capture akan dijadikan input untuk

tahap selanjutnya yaitu tahap preprocessing. Contoh program untuk mengambil citra

rambu dapat dilihat dibawah ini.

vidobj = videoinput('winvideo',1,'YUY2_640x480');

preview(vidobj);

pause

frame = getsnapshot(vidobj);

stop(vidobj)

delete(vidobj)

gambar=yuy2torgb(frame);

imshow(gambar)

3.2.3. Tahap Preprocessing

Tahap preprocessing merupakan tahap kedua dari sistem pengenalan rambu lalu-

lintas, yang mana tahap ini berfungsi untuk mengolah citra agar mempermudah pengolahan

citra ke tahap selanjutnya yaitu tahap ekstraksi ciri. Tahap preprocessing terdiri dari empat

proses yaitu proses grayscale, proses cropping, proses bounding box dan proses resizing.

- Proses grayscale

Proses ini bertujuan untuk mengubah citra menjadi berwarna keabuan sehingga

dapan memudahkan dalam proses selanjutnya yaitu ekstraksi ciri. Proses ini

menggunakan perintah yang sudah tersedia di Matlab yaitu perintah rgb2gray.

Perintah rgb2gray merupakan perintah untuk mengubah format gambar rgb

menjadi grayscale. Contoh programrgb2gray dapat dilihat dibawah ini dan citra

grayscale bisa dilihat pada Gambar 3.7.

X=imread('filename');

X1=double(rgb2gray(X));

X2=X1/255;

imshow(X2)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

25

(a) (b)

Gambar 3.7. konversi citra rgb ke grayscale

(a) citra masukkan (rgb), (b) citra hasil grayscale

- Proses cropping

Proses ini merupakan proses untuk mendapatkan data yang diinginkan dengan cara

memotong bagian tertentu dari suatu citra sehingga memudahkan dalam

pengolahan data untuk proses selanjutnya. Matlab telah menyediakan suatu

perintah untuk cropping, yaitu imcrop (‘variabel’,[x y Δx

Δy]).Kolom pertama dan kedua yaitu x dan y merupakan koordinat pada sumbu x

dan y kiri atas. Kolom ketiga yaitu Δx merupakan selisih antara sumbu x kanan atas

dengan sumbu x kiri atas. Sedangkan kolom ketiga yaitu Δy merupakan selisih

antara sumbu y kiri bawah dengan sumbu y kiri atas. Seperti yang diperlihatkan

pada contoh program dibawah ini, dimana X2 merupakan variabel dari output

grayscale sedangkan untuk nilai-nilai dari x, y, Δx, dan Δy didapat dari nilai

koordinat seperti yang ditampilkan pada Gambar 3.8.

X3=imcrop(X2,[200 100 400 400]);

imshow(X3)

Nilai x dan y dapat dilihat pada sumbu koordinat yang diperlihatkan pada Gambar

3.8. bagian (a), dimana terlihat sumbu x dan y berada pada sumbu koordinat

200,100. Nilai Δx didapat dari selisih sumbu x bagian kanan (Gambar b) dengan

sumbu x bagian kiri (Gambar a) sehingga Δx = 600 – 200 = 400. Nilai Δy didapat

dari selisih sumbu y bagian kiri bawah (Gambar c) dengan sumbu y bagian kiri atas

(Gambar a), sehingga didapat Δy = 500 – 100 = 400. Setelah nilai-nilai x, y, Δx, dan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

26

Δy didapat, program dapat dijalankan dan hasilnya seperti yang terlihat pada

gambar d serta variabel diganti menjadi X3 untuk menjadi variabel masukkan ke

tahap selanjutnya yaitu tahap resizing.

(a) (b)

(d) (c)

Gambar 3.8. Contoh proses cropping; (a) titik koordinat bagian kiri atas; (b) titik koordinat

bagian kanan atas; (c) titik koordinat bagian kiri bawah; (d) hasil cropping

- Proses Bounding Box

Hasil dari proses cropping, kemudian dipotong sesuai dengan bounding box.

Tujuan dari proses ini, agar mendapatkan gambar rambu yang pas sehingga

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

27

memudahkan dalam proses pengenalan. Diagram alir dari proses bounding box

dapat dilihat pada gambar 3.9.

Gambar 3.9. Diagram alir bounding box

Proses bounding box adalah proses dimana citra masukkan akan di cropping sesuai

dengan bounding box-nya. Cropping dilakukan dengan cara memotong matrik citra

masukkan yang nilainya kurang dari nilai parameter yang sudah ditentukan. Proses

cropping dilakukan dengan cara memotong tiap sisi secara bergantian, pertama kali

yaitu sisi sebelah kiri di cropping setelah di-cropping citra diputar sejauh 90° dan

kemudian citra sisi sebelah kiri di-cropping kembali. Proses ini dilakukan terus

menerus hingga semua sisi citra di-cropping semua, seperti pada contoh Gambar

3.10

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

28

Gambar Masukkan Gambar Hasil Potong Kiri

(a) (b)

Putar 90°

(c)

(d)

Putar 90°

(e)

(f)

Putar 90°

(g) (h)

Putar 90°(kembali pada posisi awal)

(i)

Gambar 3.10 Proses bounding box (a) Input karakter (b) Hasil potong kiri (c) Putar

90° searah jarum jam ke 1 (d) Hasil potong kiri (e) Putar 90° searah jarum jam ke 2

(f) Hasil potong kiri (g) Putar 90° searah jarum jam ke 3 (h) Hasil Potong kiri (i)

Putar 90° searah jarum jam ke 4, kembali ke posisi awal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

29

- Proses resizing

Proses ini berfungsi untuk mengubah ukuran citra agar semua citra hasil cropping

memiliki ukuran yang samasehingga lebih memudahkan dalam proses

selanjutnya.Ukuran yang digunakan adalah 64 x 64, ukuran citra ini berasal dari

penelitian sebelumnya. Gambar 3.11. memperlihatkan perbandingan antara gambar

hasil cropping sebelum dan sesudah di resizing.

(a)

(b)

Gambar 3.11. Proses(a) sebelumresizing (b) setelahresizing

Proses resizing dapat dilakukan dengan menggunakan contoh program di bawah ini

dengan menggunakan syntax imresize, dimana X3 merupakan variabel input dari

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

30

hasil cropping sedangkan nilai 64 merupakan besaran pikselyang diharapkan yaitu

64 x 64 dan variabel X3 merupakan variabel untuk output/hasil dari resizing.

X4=imresize(X3,[64,64]);

imshow(X4)

Gambar 3.12. Diagram alir pemrosesan citra

Diagram alir pada Gambar 3.12 memperlihatkan tahap preprocessing yang diawali

dari input hasil capture kamera/webcam. Hasil capture yang berbentuk RGB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

31

dikonversikan kedalam bentuk grayscale agar memudahkan dalam mengolah

gambar. Citra yang telah menjadi bentuk grayscale kemudian di cropping dan di

resizing agar citra hasil keluaran dari tahap preprocessing ini memiliki ukuran yang

sama sehingga memudahkan pada saat melakukan ekstraksi cirri.

3.2.4. Ekstraksi Ciri

Ekstraksi ciri merupakan proses pengolah data dari data yang banyak kemudian di

ekstrak menjadi data yang lebih sedikit. Hal ini bertujuan untuk memudahkan mengolah

data dan membuat data lebih efisien karena dari data yang sedikit itu sudah bisa mewakili

data sebelumnya yang banyak. Proses pengenalan rambu lalu-lintas ini menggunakan

ekstraksi ciri wavelet Haar yang memiliki 4 macam filter, namun yang digunakan hanya

decomposition low-pass filter karena yang ingin dicari hanya bentuk dasar dari citra.

Ekstraksi ciri terdiri dari dua tahap, yaitu konvolusi dan downsampling seperti yang

diperlihatkan diagram alir pada Gambar 3.13. Output ekstraksi ciri tergantung pada

banyaknya jumlah desimasi (N) yang nantinya akan ditentukan oleh user, sehingga proses

konvolusi dan downsampling diulang sejumlah desimasi (N). Desimasi yang disediakan

ada 3, yaitu 32 x 32, 16 x16, dan 8 x 8.

Gambar 3.13. Diagram alir ekstraksi ciri

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

32

Tahap konvolusi merupakan tahap untuk melakukan filtering, menggunakan

decomposition low pass filter Wavelet Haar. Namun karena Wavelet Haar merupakan low

pass filter 1 dimensi sedangkan citra merupakan 2 dimensi sehingga diperlukan adanya 2

kali proses konvolusi yaitu konvolusi baris dan konvolusi kolom yang dikerjakan secara

bergantian, seperti yang diperlihatkan pada Gambar 3.14. Sedangkan tahap downsampling

merupakan tahap menghilangkan baris dan kolom ganjil dan menjaga baris dan kolom

genap, seperti diagram alir pada Gambar 3.15.

Gambar 3.14. Diagram alir konvolusi

Gambar 3.15. Diagram alir downsampling

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

33

3.2.5. Fungsi Jarak

Tahap berikutnya setelah citra di ekstraksi ciri yaitu tahap fungsi jarak. Tahap ini

berfungsi untuk membandingkan output dari ekstraksi ciri dengan gambar rambu yang

berada di database. Fungsi jarak yang digunakan adalah fungsi jarak Chi Square. Tahap ini

mencari jarak minimum antara hasil ekstraksi ciri dengan database yang nantinya

digunakan sebagai penentu keluaran. Jarak minimum didapatkan dengan menggunakan

rumus pada persamaan 2.17. Pi merupakan nilai dari ekstraksi ciri citra masukkan

sedangkan Qi merupakan nilai dari ekstraksi citra database. Proses ini dapat dilihat dari

diagram alir Gambar 3.16.

Gambar 3.16. Diagram alir tahap fungsi jarak

3.2.6. Penentuan Keluaran

Setelah tahap perhitungan oleh fungsi jarak, maka hasil pengenalan rambu

ditentukan berdasarkan jarak minimum yang diperoleh dari hasil perbandingan antara

output dari ekstraksi ciri dengan database, menggunakan fungsi jarak Chi Square.

Sehingga proses ini merupakan subproses akhir dari proses pengenalan rambu.Output dari

sistem pengenalan rambu lalu lintas ini ada dua jenis, yaitu output berupa text dan output

berupa sound.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

34

Gambar 3.17. Diagram alir penentu keluaran

3.3 Gambar Uji

Gambar uji diambil setelah user menekan tombol “Capture” yang kemudian

webcam akan mengambil gambar rambu lalu lintas yang diletakan sejajar dengan gambar

rambu, selain itu tingkat intensitas cahaya sesuai dengan intensitas cahaya di ruang Lab.

TTL. Hasil capture lalu diteruskan ke proses selanjutnya yaitu preprocessing dan ekstraksi

ciriWavelet Haar. Outputakan disimpan dan nantinya akan diproses kembali sehingga

menghasilkan pengenalan citra rambu lalu lintas.

3.4 Perancangan Tampilan GUI Matlab

Sistem pengenalan rambu lalu lintas ini membutuhkan interface yang memudahkan

user untuk mengoperasikannya. Interface ini menggunakan Graphical User Interface

(GUI) pada software Matlab. Sketsa interface GUI sistem pengenalan rambu lalu lintas

dapat dilihat pada Gambar 3.18.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

35

Gambar 3.18. Sketsa GUI pengenalan rambu lalu lintas

Tabel 3.2. Keterangan GUI

Nama Bagian Deskripsi

Tombol Camera On Untuk mengaktifkan webcam

Tombol Capture Untuk mengambil gambar/citra

Axes 1 pada panel Camera Untuk menampilkan citra secara live dari webcamdan citra hasil

capture

Axes 2 pada panel Proses

Pengenalan Rambu Untuk menampilkan citra hasil grayscale

Axes 3 pada panel Proses

Pengenalan Rambu Untuk menampilkan citra hasil cropping

Axes 4 pada panel Proses

Pengenalan Rambu Untuk menampilkan citra hasil resizing

Axes 5 pada panel Ekstraksi

Ciri Untuk menampilkan citra hasil ekstraksi ciri

Axes 6 pada panel Output

Text Untuk menampilkan hasil akhir berupa teks

Pop Menu Untuk tempat user memilih variasi desimasi

Tombol Start Untuk memulai proses pengenalan rambu lalu-lintas

Tombol Reset Untuk mengulangi proses pengenalan dari awal

Tombol Exit Untuk keluar mengakhiri proses dan keluar dari Interface

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

36

BAB IV

HASIL DAN PEMBAHASAN

Bab ini membahas mengenai pengujian sitem program software yang telah dirancang,

selain itu pada bab ini juga akan membahas interface serta penjelasan penggunaan sistem.

Pengujian ini bertujuan untuk mengetahui sistem yang telah dirancang dan dibuat dapat

bekerja dengan baik sesuai dengan yang diharapkan. Pengujian sistem pengenalan rambu lalu-

lintas peringatan ini menggunakan 3 buah rambu asli berukuran 60 cm x 60 cm.

4.1. Langkah-langkah awal untuk menjalankan program pengenalan

rambu peringatan

a. Membuka software Matlab, dengan cara klik kiri dua kali gambar icon matlab seperti

pada gambar 4.1. Setelah itu akan muncul tampilan utama matlab seperti pada gambar

4.2.

Gambar 4.1. Icon Matlab R2010a

Gambar 4.2. Tampilan utama matlab R2010a

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

37

b. Setelah muncul tampilan utama dari matlab, langkah selanjutnya untuk menjalankan

program pengenalan yaitu dengan mengganti Current Folder dengan Directory tempat

program pengenalan ini disimpan (Gambar 4.3). Setelah itu klik menu guidedan akan

muncul tampilan GUIDE Quick Start seperti pada Gambar 4.4. atau bisa juga langsung

mengetik guide pada command window untuk membuka tampilan GUIDE Quick Start.

Kemudian pilih nama file program yang akan dijalankan untuk membuka interface dari

program tersebut.

Gambar 4.3.Mengganti directory dan menu guide

Gambar 4.4. Tampilan GUIDE Quick Start

c. Tentukan file GUI yang akan dijalankan, setelah itu klik open maka akan muncul

tampilan untuk meng-edit GUIpengenalan_rambu yang akan dijalankan seperti pada

Gambar 4.5, kemudian klik run untuk menjalankan program.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

38

Gambar 4.5. Tampilan Pengenalan_Rambu

d. Setelah meng-klik run, maka akan muncul tampilan GUI pengenalan_rambu seperti

pada Gambar 4.6.

Gambar 4.6. Tampilan GUI Pengenalan Rambu Peringatan secara Real Time

Keterangan Gambar 4.6. :

1. Tombol pushbutton 1 adalah tombol Camera On yang berfungsi untuk

menyalakan/mengaktifkan webcam.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

39

2. Tombol pushbutton 2 adalah tombol Capture yang berfungsi untuk mengambil

gambar dari webcam.

3. Tombol pushbutton 3 adalah tombol Start yang berfungsi untuk memulai proses

pengenalan rambu.

4. Tombol pushbutton 4 adalah tombol Reset yang berfungsi untuk me-reset sistem

apabila user melakukan kesalahan atau akan melakukan pengenalan yang lain.

5. Tombol pushbutton 5 adalah tombol Close yang berfungsi untuk keluar dari

program.

6. Tombol popupmenu berfungsi untuk memilih desimasi yang diharapkan oleh user.

4.2. Penjelasan Program

a. Tombol Camera On

Gambar 4.7. Tampilan saat tombol Camera On ditekan

Tombol Camera On menjalankan program berikut :

imaqhwinfo;

info = imaqhwinfo('winvideo');

dev_info = imaqhwinfo('winvideo',1);

vidobj=videoinput('winvideo',1,'YUY2_640X480');

vidobj.FramesPerTrigger = 1;

triggerconfig(vidobj, 'manual');

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

40

vidRes = get(vidobj, 'VideoResolution');

imWidth = 640;

imHeight = 480;

nBands = get(vidobj, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth,

nBands),'parent',handles.axes1)

preview(vidobj, hImage)

Perintah program imaqhwinfo adalah perintah program untuk meng-inisialisasikan

antara webcam dengan software matlab, selain itu perintah ini juga untuk mengetahui

informasi dari webcam tentang nama device dan format warna hasil dari webcam misal

RGB, YUY, dll. Perintah program preview untuk menampilkan video yang akan

ditampilkan pada axes1.

b. Tombol Capture

Gambar 4.8. Tampilan saat tombol Capture ditekan

Tombol Capture menjalankan program berikut :

start(vidobj);

pause(1);

trigger(vidobj);

stoppreview(vidobj);

capt1=getdata(vidobj);

gambar=yuy2torgb1(capt1);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

41

handles.a=gambar;

guidata(hObject,handles)

Perintah program getdata adalah perintah untuk meng-capture gambar saat video dari

wabcam sedang dalam keadaan on. Hasil dari capture wabcam memiliki format

gambar YUY sehingga diubah terlebih dahulu ke format gambar RGB dengan cara

menggunakan fungsi yuy2torgb. Agar hasil capture bisa dipanggil dan digunakan

diprogram lain maka diinisialisasikan menggunakan “handles”.

c. Popupmenu

Gambar 4.9. tampilan saat popupmenu diklik

- Popupmenu merupakan bagian untuk user memilih variasi desimasi yang diinginkan,

pada bagian popupmenu ini terdiri dari 4 pilihan variasi desimasi yaitu desimasi1,2,dan

3. Popupmenu menjalankan program berikut :

indeks=get(handles.popupmenu1,'Value');

switch indeks

case 2

des=1;

case 3

des=2;

case 4

des=3;

end

handles.des=des;

guidata(hObject,handles);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

42

Program di atas tertulis des=1 maksudnya adalah desimasi akan dilakukan sebanyak 1

kali, untuk penjelasan desimasi dapat dilihat pada bab III. Desimasi diinisialisasikan

dengan nama “des”, agar nilai variasi desimasi ini dapat dipanggil diprogram lain

maka diubah menjadi “handles.des”.

d. Tombol Start

Gambar 4.10. Tampilan saat tombol start diklik

Proses pada tombol start ini terdiri dari beberapa bagian program yang digabungkan,

program-program tersebut yaitu program grayscale, program cropping, program

resizing, program ekstraksi jarak, program fungsi jarak dan program keluaran.

- Program grayscale

Program ini berfungsi untuk mengubah gambar yang telah di-capture menjadi

berwarna keabu-abuan.

%PROSES GRAYSCALE

x=handles.a;

axes(handles.axes2);

x1=double(rgb2gray(x));

x2=x1/255;

imshow(x2)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

43

Perintah double pada program diatas berfungsi untuk mengubah nilai pada gambar

grayscale karena nilainya masih unsigninteger, sedangkan nilai hasil akhir dibagi 255

sebagai normalisasi agar nilai maksimalnya 1.

- Program cropping

Program ini berfungsi untuk memotong gambar sehingga bagian yang tidak di

perlukan dapat dihilangkan.

%PROSES CROPPING axes(handles.axes3); x3=1-x2;

x4=imcrop(x3,[150 100 350 350]);

x6=imrotate(x4,45,'bilinear'); x7=ceil(x6-0.80); x8=bbox(x6,x7);

x10=imrotate(x8,-45,'bilinear'); imshow(x10) axis on

Sebelum dilakukan cropping hasil dari grayscale dibalik terlebih dahulu, yang

berwarna gelap (bernilai 0) diubah menjadi berwarna terang (bernilai >0) dengan cara

seperti list program “x3”, hal ini dilakukan untuk mempermudah dalam tahap

automatic cropping. Tahap selanjutnya melakukan manual cropping dengan cara

menentukan titik cropping berdasarkan gambar rambu yang berjarak 3 meter, hal ini

dilakukan agar lebih memudahkan dalam tahap automatic cropping. Perintah

“imrotate” yaitu berfungsi untuk merotasi gambar sebanyak 45° agar gambar rambu

menjadi berbentuk kotak, hal ini dilakukan agar mempermudah dalam pemotongan

automatic cropping. Hasil dari “imrotate” dikurangi 0,80 agar nilai-nilai yang masih

dibawah 0,80 dibuat menjadi 0 sehingga perbedaan antara gelap dan terang makin

terlihat. Penentuan nilai 0,80 berasal dari hasil percobaan seperti pada table 4.1.

Sedangkan perintah “ceil” yaitu berfungsi sebagai pembulatan angka ke atas, sebagai

contoh nilai 0,3 dibulatkan menjadi 1 dan nilai -0,9 dibulatkan menjadi 0.Tahap

selanjutnya adalah tahap automatic cropping yaitu dengan cara menggunakan fungsi

“bbox” atau bounding box seperti yang sudah dijelaskan pada bab III Dibawah ini

merupakan program bounding box namun untuk program lengkapnya dapat dilihat

pada lampiran.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

44

Tabel 4.1. Mencari nilai parameter untuk bounding box

Nilai Hasil Gambar

0,25

0,50

0,75

0,95

function [out1,out2]=cutleft(in1,in2)

%out1 (gray) , out2 (biner)

out1=in1;

out2=in2;

JKolom=sum(in2);

KolomTakNol=find(JKolom >60);

if sum(KolomTakNol)>=1;

out1(:,1:KolomTakNol(1)-1)=[];

out2(:,1:KolomTakNol(1)-1)=[];

end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

45

Program diatas adalah bagian dari program boundingbox yang berfungsi sebagai batas

penentu titik potong untuk automatic cropping. List program “JKolom” berfungsi

untuk menjumlahkan nilai pada tiap kolom,pada gambar yang berwarna putih bernilai

1 sedangkan berwarna gelap bernilai 0. List program “KolomTakNol” berfungsi untuk

memotong kolom yang nilainya kurang dari nilai parameter yang sudah ditentukan,

untuk nilai parameter “JKolom>60” didapat dari hasil percobaan seperti pada table

4.2.Hasil dari “bbox” selanjutnya dirotasi kembali menggunakan “imrotate” sehingga

posisi rambu kembali ke posisi awal.

Tabel 4.2. Menentukan nilai parameter JKolom

Nilai Hasil Gambar

JKolom > 20

JKolom > 60

JKolom > 150

JKolom > 190

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

46

- Program resizing

Program ini berfungsi untuk menyesuaikan ukuran gambar dari hasil cropping

sehingga memiliki ukuran piksel yang sama.

%PROSES RESIZING

axes(handles.axes4); x11=imresize(x10,[64 64]); imshow(x11) axis on

Program diatas menggunakan perintah “imresize” yang berfungsi untuk mengubah

ukuran dari citra, baik itu untuk memperbesar atau pun memperkecil ukuran citra.

Program resizing ini membuat ukuran citra menjadi 64 x 64 piksel.

- Program ekstraksi ciri

Program ini berfungsi untuk proses pengolahan data dari data yang banyak diekstrak

menjadi data yang lebih sedikit namun dari data yang sedikit tersebut sudah bisa

mewakili data sebelumnya yang banyak.

% EKSTRAKSI CIRI

axes(handles.axes5);

x12=xcwav2(x11,des);

mx12=max(x12(:));

nx12=x12/mx12;

x13=x12(:);

imshow(nx12)

axis on

x13=x13+1;

z=z+1;

Fungsi program “xcwav2” adalah untuk memanggil fungsi ekstraksi ciri, yang mana di

dalam fungsi ekstraksi ciri menggunakan ekstraksi ciri wavelet haar. Input dari

program ekstraksi ciri berasal dari hasil proses resizing yang berasal dari citra input

dan “des” adalah nilai desimasi hasil pilihanuser daripop-upmenu. Sedangkan list

program “nx12” berfungsi untuk normalisasi agar gambar bisa ditampilkan pada axes

5. List program “x13” berfungsi untuk membuat data yang terdiri dari beberapa kolom

menjadi hanya satu kolom, contoh data 32x32 diubah menjadi 1x1024 Output dari

fungsi “xcwav2” adalah x12, yang merupakan hasil dari ekstraksi ciri wavelet haar.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

47

- Program fungsi jarak

Program ini berfungsi untuk membandingkan antara hasil dari ekstraksi ciri dengan

database yang telah disediakan, yang nantinya nilai terkecil akan dijadikan output dari

sistem pengenalan rambu ini.

% FUNGSI JARAK

for n=1:8

r(n)=jarak(x13,z(:,n));

end minr=min(r)

b1=find(minr==r); b2=ceil(b1/2);

Perintah program jarak adalah untuk memanggil fungsi jarak chi square yang akan

membandingkan antara hasil dari output ekstraksi ciri yaitu x13 dengan hasil dari

database yaitu z. Sedangkan b1 merupakan hasil pencarian nilai terkecil dari hasil

perhitungan jarak, yang nantinya akan dicari letak nilai terkecil tersebut menggunakan

list program pada b2.

- Program keluaran

Program ini berfungsi untuk menampilkan hasil pengenalan berupa teks/tulisan dan

suara.

% KELUARAN TEXT

z2={'Tikungan ke Kiri','Tikungan ke

Kanan','Persimpangan'};

y1=z2(b2)

set(handles.edit1,'string',y1);

Program diatas adalah program untuk menampilkan hasil pengenalan berupa tulisan.

Variabel z2 adalah inisialisasi 3 buah kata, nantinya nilai minimal akan dipanggil

sesuai nama inisialisasi dan kemudian ditampilkan pada edit_text_1 menggunakan

peritah set.

% KELUARAN SUARA

if (b2==1);

y=wavread('Tikungan ke Kiri.wav');

sound(y,50000)

elseif (b2==2);

y=wavread('Tikungan ke Kanan.wav');

sound(y,50000)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

48

elseif (b2==3);

y=wavread('Persimpangan.wav');

sound(y,50000)

end

Program diatas adalah program untuk menampilkan hasil pengenalan berupa suara.

Suara berasal dari hasil rekaman yang disimpan didalam folder yang sama dengan

program GUI pengenalan rambu kemudian suara akan dipanggil menggunakan

perintah “wavread”.

e. Tombol Reset

Tombol “Reset” berfungsi untuk mengulang program dari awal apabila user

melakukan kesalahan atau terjadi error pada saat proses pengenalan. Program pada

tombol “reset” adalah sebagai berikut :

axes(handles.axes1)

plot(0);

axes(handles.axes2)

plot(0);

axes(handles.axes3)

plot(0);

axes(handles.axes4)

plot(0);

axes(handles.axes5)

plot(0);

set(handles.popupmenu2,'Value',1);

set(handles.edit1,'string','');

f. Tombol Close

Tombol “Close” berfungsi untuk mengakhiri dan keluar dari program atau tampilan

GUI pengenalan rambu peringatan. Program pada tombol “Close” adalah sebagai

berikut :

delete(figure(Pengenalan_Rambu));

Berdasarkan dari hasil pengujian tombol pada GUI pengenalan rambu peringatan dapat

ditarik kesimpulan bahwa program sudah berjalan dengan baik dan dapat bekerja sesuai

dengan perancangan pada bab III.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

49

4.3. Pengujian dan Analisis Hasil Pengenalan Rambu Peringatan

Pengujian program pengenalan rambu ini bertujuan untuk melihat seberapa besar

tingkat pengenalan terhadap citra masukkan. Pengujian program pengenalan rambu dilakukan

dengan 2 tahap. Tahap pertama adalah pengujian untuk melihat jarak minimum dan

maksimum antara citra masukan dengan webcam dengan menggunakan variasi desimasi 1,2,

dan 3 sehingga rambu dapat dikenali. Tahap kedua adalah pengujian untuk melihat

kemampuan pengenalan dengan menggunakan variasi sudut kemiringan antara rambu dengan

webcam.

4.3.1. Pengujian Pengenalan Berdasarkan Variasi Jarak dan Variasi Desimasi

Percobaan variasi jarak bertujuan untuk melihat batas jarak terdekat dan batas terjauh

antara rambu dengan webcam. Percobaan variasi desimasi bertujuan untuk melihat pengaruh

desimasi terhadap tingkat pengenalan. Pengujian ini dilakukan dengan beberapa beberapa

langkah, yaitu :

1. Melakukan capturing citra pada 3 buah gambar rambu peringatan, yaitu rambu

tikungan ke kiri, rambu tikungan ke kanan dan rambu persimpangan.

2. Capturing dilakukan dengan jarak dari paling dekat dengan rambu hingga jarak terjauh

dari rambu dengan rentang tiap jarak sebesar 20 cm hingga tidak dapat dikenali. Posisi

webcam tegak lurus terhadap gambar rambu seperti pada Gambar 4.11.

Gambar 4.11. Posisi webcam terhadap gambar rambu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

50

3. Percobaan variasi desimasi dilakukan dengan menggunakan desimasi (32x32),

desimasi 2 (16x16), dan desimasi 3 (8x8).

4. Percobaan dilakukan sebanyak 5 kali untuk setiap gambar rambu.

Tabel 4.3. Pengujian rambu tikungan ke kiri

Jarak (cm)

Desimasi 1 Desimasi 2 Desimasi 3 Tingkat

Percobaan Percobaan Percobaan Pengenalan

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

40 0%

50 100%

60 100%

80 100%

100 100%

200 100%

300 100%

400 100%

500 100%

520 100%

540 100%

560 100%

580 60%

600 0%

620 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.3 merupakan sebagian hasil pengujian pengenalan rambu

tikungan ke kiri berdasarkan variasi jarak dan variasi desimasi, sedangkan untuk hasil lebih

lengkap dapat dilihat pada lampiran. Hasil pengujian variasi jarak memperlihatkan bahwa

untuk rambu tikungan ke kiri jarak terdekat atau jarak minimum antara webcam dengan rambu

adalah 50 cm, karena pada jarak dibawah 50 cm gambar bagian dalam rambu sudah terpotong

sehingga rambu tidak dapat dikenali. Sedangkan jarak terjauh atau jarak maksimum antara

webcam dengan rambu adalah 560 cm, pada jarak 580 cm beberapa percobaan rambu sudah

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

51

mulai tidak dikenali. Jarak 600 cm rambu sudah tidak dapat dikenali karena ukuran rambu

sudah terlalu kecil sehingga pada bagian cropping terjadi kesalahan yang menyebabkan rambu

dikenali dengan tidak benar. Hasil pengujian variasi desimasi memperlihatkan bahwa pada

percobaan desimasi tidak mempengaruhi hasil pengenalan, bila rambu sudah dikenali maka

menggunakan desimasi 1, desimasi 2, maupun desimasi 3 hasilnya akan tetap sama . Sebagai

contoh seperti pada jarak 580 cm percobaan 2 dan 3 rambu tidak dikenali maka pada desimasi

1, 2, dan 3 tidak dikenali.

Tabel 4.4. Pengujian rambu tikungan ke kanan

Jarak (cm)

Desimasi 1 Desimasi 2 Desimasi 3 Tingkat

Percobaan Percobaan Percobaan Pengenalan

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

40 0%

50 100%

60 100%

80 100%

100 100%

200 100%

300 100%

400 100%

500 100%

520 100%

540 100%

560 100%

580 80%

600 0%

620 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.4 merupakan sebagian hasil pengujian pengenalan rambu

tikungan ke kanan berdasarkan variasi jarak dan variasi desimasi, sedangkan untuk hasil lebih

lengkap dapat dilihat pada lampiran. Hasil pengujian variasi jarak memperlihatkan bahwa

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

52

untuk rambu tikungan ke kanan jarak terdekat atau jarak minimum antara webcam dengan

rambu adalah 50 cm, karena pada jarak dibawah 50 cm gambar bagian dalam rambu sudah

terpotong sehingga rambu tidak dapat dikenali. Sedangkan jarak terjauh atau jarak maksimum

antara webcam dengan rambu adalah 560 cm, pada jarak 580 cm beberapa percobaan rambu

sudah mulai tidak dikenali. Jarak 600 cm rambu sudah tidak dapat dikenali karena ukuran

rambu sudah terlalu kecil sehingga pada bagian cropping terjadi kesalahan yang menyebabkan

rambu dikenali dengan tidak benar. Hasil pengujian variasi desimasi memperlihatkan bahwa

pada percobaan desimasi tidak mempengaruhi hasil pengenalan, bila rambu sudah dikenali

maka menggunakan desimasi 1, desimasi 2, maupun desimasi 3 hasilnya akan tetap sama .

Sebagai contoh seperti pada jarak 580 cm percobaan 1 rambu tidak dikenali maka pada

desimasi 1, 2, dan 3 tidak dikenali.

Tabel 4.5. Pengujian rambu persimpangan

Jarak (cm)

Desimasi 1 Desimasi 2 Desimasi 3 Tingkat

Percobaan Percobaan Percobaan Pengenalan

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

40 0%

50 100%

60 100%

80 100%

100 100%

200 100%

300 100%

400 100%

500 100%

520 100%

540 100%

560 100%

580 100%

600 0%

620 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

53

Hasil pengujian pada Tabel 4.5 merupakan sebagian hasil pengujian pengenalan rambu

tikungan ke kanan berdasarkan variasi jarak dan variasi desimasi, sedangkan untuk hasil lebih

lengkap dapat dilihat pada lampiran. Hasil pengujian variasi jarak memperlihatkan bahwa

untuk rambu tikungan ke kanan jarak terdekat atau jarak minimum antara webcam dengan

rambu adalah 50 cm, karena pada jarak dibawah 50 cm gambar bagian dalam rambu sudah

terpotong sehingga rambu tidak dikenali dengan tidak benar. Sedangkan jarak terjauh atau

jarak maksimum antara webcam dengan rambu adalah 560 cm, pada jarak 580 cm beberapa

percobaan rambu sudah mulai tidak dikenali. Jarak 600 cm rambu sudah tidak dapat dikenali

karena ukuran rambu sudah terlalu kecil sehingga pada bagian cropping terjadi kesalahan yang

menyebabkan rambu tidak dikenali. Hasil pengujian variasi desimasi memperlihatkan bahwa

pada percobaan desimasi tidak mempengaruhi hasil pengenalan, bila rambu sudah dikenali

maka menggunakan desimasi 1, desimasi 2, maupun desimasi 3 hasilnya akan tetap sama.

Tabel 4.6. Citra hasil desimasi

Desimasi Rambu 1 Rambu 2 Rambu 3

1

2

3

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

54

Tabel 4.6 merupakan contoh citra hasil desimasi dimana semakin besar nilai desimasi

maka gambar makin tidak terlihat jelas, hal itu disebabkan karena semakin besar nilai desimasi

maka semakin kecil piksel pada gambar. Terlihat pada contoh tabel diatas, desimasi 1

memiliki piksel 32 x 32, desimasi 2 memiliki piksel 16 x 16, dan desimasi 3 memiliki piksel 8

x 8. Namun keuntungan menggunakan desimasi adalah semakin besar desimasi maka data

yang diolah akan semakin sedikit.

4.3.2. Pengujian Pengenalan Berdasarkan Variasi Sudut

Percobaan ini bertujuan untuk melihat kemampuan program untuk mengenali rambu

walaupun posisi rambu dengan webcam tidak tegak lurus. Percobaan ini dilakukan dengan

beberapa ketentuan, yaitu :

1. Percobaan dilakukan dengan menggunakan dua jarak yang berbeda antara webcam

dengan gambar rambu, yaitu jarak 200 cm dan jarak 300 cm.

2. Posisi webcam tetap sedangkan posisi rambu diubah-ubah sudutnya, mulai dari 45°

hingga -45° dengan rentang tiap perubahan sudut sebesar 5°.

3. Percobaan dilakukan sebanyak 5 kali untuk setiap gambar rambu.

Tabel 4.7. Pengujian rambu tikungan ke kiri dengan jarak 200 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 100%

30° 100%

25° 100%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

55

Tabel 4.7. (Lanjutan) Pengujian rambu tikungan ke kiri dengan jarak 200 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-15° 100%

-20° 100%

-25° 100%

-30° 100%

-35° 100%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.7 merupakan hasil pengujian variasi sudut pada rambu

tikungan kekiri dengan webcam dan gambar rambu berjarak 200 cm. Tabel diatas

memperlihatkan bahwa rambu dapat dikenali mulai dari sudut -35° hingga sudut 35°, selain

diantara sudut tersebut rambu dikenali dengan tidak benar.

Tabel 4.8. Pengujian rambu tikungan ke kanan dengan jarak 200 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 100%

35° 100%

30° 100%

25° 100%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

56

Tabel 4.8. (Lanjutan) Pengujian rambu tikungan ke kanan dengan jarak 200 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-20° 100%

-25° 100%

-30° 100%

-35° 100%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.8 merupakan hasil pengujian variasi sudut pada rambu

tikungan ke kanan dengan webcam dan gambar rambu berjarak 200 cm. Tabel diatas

memperlihatkan bahwa rambu dapat dikenali mulai dari sudut -35° hingga sudut 40°, selain

diantara sudut tersebut rambu dikenali dengan tidak benar.

Tabel 4.9. Pengujian rambu persimpangan dengan jarak 200 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 100%

40° 100%

35° 100%

30° 100%

25° 100%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

57

Tabel 4.9. (Lanjutan) Pengujian rambu persimpangan dengan jarak 200 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-25° 100%

-30° 100%

-35° 100%

-40° 100%

-45° 100%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.9 merupakan hasil pengujian variasi sudut pada rambu

tikungan ke kanan dengan webcam dan gambar rambu berjarak 200 cm. Tabel diatas

memperlihatkan bahwa rambu dapat dikenali mulai dari sudut -45° hingga sudut 45°.

Tabel 4.10. Pengujian rambu tikungan ke kiri dengan jarak 300 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 0%

30° 60%

25° 100%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 100%

-25° 80%

-30° 0%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

58

Tabel 4.10. (Lanjutan) Pengujian rambu tikungan ke kiri dengan jarak 300 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-35° 0%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.10 merupakan hasil pengujian variasi sudut pada rambu

tikungan kekiri dengan webcam dan gambar rambu berjarak 300 cm. Tabel diatas

memperlihatkan bahwa pada sudut -25° dan sudut 30° dari 5 kali percobaan terdapat rambu

yang dikenali dengan tidak benar sehingga tingkat pengenalan dibawah 95% sehingga rambu

dapat dikenali mulai dari sudut -20° hingga sudut 25°.

Tabel 4.11. Pengujian rambu tikungan ke kanan dengan jarak 300 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 0%

30° 0%

25° 40%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 100%

-25° 100%

-30° 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

59

Tabel 4.11. (Lanjutan) Pengujian rambu tikungan ke kanan dengan jarak 300 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-35° 60%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.11 merupakan hasil pengujian variasi sudut pada rambu

tikungan ke kanan dengan webcam dan gambar rambu berjarak 300 cm. Tabel diatas

memperlihatkan bahwa pada sudut -35° dan sudut 25° dari 5 kali percobaan terdapat rambu

yang dikenali dengan tidak benar sehingga tingkat pengenalan dibawah 95% sehingga rambu

dapat dikenali mulai dari sudut -30° hingga sudut 20°.

Tabel 4.12. Pengujian rambu persimpangan dengan jarak 300 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 60%

30° 60%

25° 100%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 100%

-25° 100%

-30° 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

60

Tabel 4.12. (Lanjutan) Pengujian rambu persimpangan dengan jarak 300 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-35° 0%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.12 merupakan hasil pengujian variasi sudut pada rambu

persimpangan dengan webcam dan gambar rambu berjarak 300 cm. Tabel diatas

memperlihatkan bahwa pada sudut 30° dan -35° dari 5 kali percobaan terdapat rambu yang

dikenali dengan tidak benar sehingga tingkat pengenalan dibawah 95% sehingga rambu dapat

dikenali mulai dari sudut -30° hingga sudut 25°.

Tabel 4.13. Pengujian rambu tikungan ke kiri dengan jarak 400 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 0%

30° 0%

25° 0%

20° 40%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 0%

-25° 0%

-30° 0%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

61

Tabel 4.13. (Lanjutan) Pengujian rambu tikungan ke kiri dengan jarak 400 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-35° 0%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.13 merupakan hasil pengujian variasi sudut pada rambu

tikungan ke kiri dengan webcam dan gambar rambu berjarak 400 cm. Tabel diatas

memperlihatkan bahwa pada sudut 20° dan -20° dari 5 kali percobaan terdapat rambu yang

dikenali dengan tidak benar sehingga tingkat pengenalan dibawah 95% sehingga rambu dapat

dikenali mulai dari sudut -15° hingga sudut 15°.

Tabel 4.14. Pengujian rambu tikungan ke kanan dengan jarak 400 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 0%

30° 0%

25° 0%

20° 0%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 100%

-25° 20%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

62

Tabel 4.14. (Lanjutan) Pengujian rambu tikungan ke kanan dengan jarak 400 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-30° 0%

-35° 0%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.14 merupakan hasil pengujian variasi sudut pada rambu

tikungan ke kanan dengan webcam dan gambar rambu berjarak 400 cm. Tabel diatas

memperlihatkan bahwa pada sudut 20° dan -25° dari 5 kali percobaan terdapat rambu yang

dikenali dengan tidak benar sehingga tingkat pengenalan dibawah 95% sehingga rambu dapat

dikenali mulai dari sudut -20° hingga sudut 15°.

Tabel 4.15. Pengujian rambu persimpangan dengan jarak 400 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

45° 0%

40° 0%

35° 0%

30° 0%

25° 80%

20° 100%

15° 100%

10° 100%

5° 100%

0 100%

-5° 100%

-10° 100%

-15° 100%

-20° 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

63

Tabel 4.15. (Lanjutan) Pengujian rambu persimpangan dengan jarak 400 cm

Sudut Percobaan Tingkat

1 2 3 4 5 Pengenalan

-25° 100%

-30° 0%

-35° 0%

-40° 0%

-45° 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

Hasil pengujian pada Tabel 4.15 merupakan hasil pengujian variasi sudut pada rambu

persimpangan dengan webcam dan gambar rambu berjarak 400 cm. Tabel diatas

memperlihatkan bahwa pada sudut 25° dan -30° dari 5 kali percobaan terdapat rambu yang

dikenali dengan tidak benar sehingga tingkat pengenalan dibawah 95% sehingga rambu dapat

dikenali mulai dari sudut -25° hingga sudut 20°.

Hasil-hasil percobaan pengenalan rambu berdasarkan variasi sudut memperlihatkan

bahwa kemampuan pengenalan tidak bisa hingga sudut -45° maupun sudut 45°, hal ini

disebabkan karena pada bagian cropping atau lebih tepatnya pada bagian bounding box terjadi

kesalahan dalam pemotongan sehingga menyebabkan kesalahan pada saat pengenalan.

Kesalahan pemotongan pada bounding box disebabkan karena adanya batasan nilai

pemotongan seperti yang sudah dijelaskan pada bab 3 dan pembahasan program diatas.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

64

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Berdasarkan penelitian yang telah dilakukan mulai dari tahap perancangan sistem,

implementasi, pengujian sistem, hasil pengujian, dan pembahasan, maka dapat diambil

beberapa kesimpulan sebagai berikut :

1. Jarak minimun antara rambu dengan webcam adalah 50 cm sedangkan jarak

maksimum antara rambu dengan webcam adalah 560 cm.

2. Variasi sudut dapat mempengaruhi tingkat pengenalan, dari percobaan jarak rambu

dengan webcam sejauh 200 cm didapat hasil rambu dikenali antara sudut -35°

hingga 35°, dari percobaan jarak rambu dengan webcam sejauh 300 cm didapat

hasil rambu dikenali antara sudut -20° hingga 20°, dan percobaan jarak rambu

dengan webcam sejauh 300 cm didapat hasil rambu dikenali antara sudut -15°

hingga 15°. Semakin jauh jarak webcam dengan rambu maka semakin kecil pula

sudut kemiringan antara rambu dengan webcam.

5.2. Saran

Saran yang dapat diberikan untuk mengembangkan aplikasi ini adalah :

1. Mencoba menggunakan rambu lain seperti rambu larangan dan rambu perintah.

2. Menggunakan object detection pada bagian preprocessing agar rambu dapat

dikenali walaupun webcam bergerak.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

64

DAFTAR PUSTAKA

[1] Harsono, Tri, 2005 Pengenalan Gambar Rambu-Rambu Lalu-Lintas dengan

Menggunakan Filter Warna dan Kuantisasi Rata-Rata, Surabaya, Institut

Teknologi Sepuluh November Surabaya.

[2] Cahyo, Deniel P., Pengenalan Perangkat Elektronika Secara Real Time

Menggunakan Webcam Berbasis Ekstraksi Ciri Discrete Consine Transform.

[3] Affandi, Faisal, Rambu Lalu Lintas Jalan di Indonesia.

[4] Munir, Rinaldi, 2004, Pengolahan Citra Digital dengan Pendekatan Algoritmik,

Informatika, Bandung.

[5] Putra, Dharma, 2010, Pengolahan Citra Digital, Yogyakarta, Andi Offset.

[6] Prasetyo, E., 2011, Pengolahan Citra Digital dan Aplikasinya Menggunakan

Matlab. Yogyakarta, Andi Offset.

[7] Basuki, Achmad. Palandi, F., Jozua & Fatchrochman, 2005, Pengolahan Citra

Menggunakan Visual Basic, Graha Ilmu, Yogyakarta.

[8] Sydney, Burus C., A.G.Remesg, G.Haito, 1998, Introduction Wavelet and Wavelet

Transform, Prentice-Hall International, Inc.

[9] Sutarno, 2010, Analisis Perbandingan Transformasi Wavelet pada Pengenalan

Citra Wajah, Fakultas Ilmu Komputer, Universitas Sriwijaya.

[10] Gabel, Robet A., 1996, Sinyal dan Sistem Linear, 3rd

ed, Erlangga, Jakarta.

[11] Sumarno, Linggo, 2013, Segmentasi Kata Tulisan Tangan Menggunakan Jendela

Blackman, SNATI, 10th

, hal J-30 – J-35.

[12] Gavin D.G., Oswald W.W., Wahl, E.R., dan Williams J.W., A Statistical Approach

to Evaluating Distance Metrics and Analog Assignments for Pollen Records,

Quaternary Research 60, hal 356-367, 2003

[13] Anil K. Jain, Robert P.W. Duin, dan Jianchang Mao, 2000, Statistical Pattern

Recognition: A Review, IEEE Transaction On Pattern Analysis and Machine

Intelligence, vol 22.

[14] Wijaya, Marvin Ch., dan Prijono, A., 2.007, Pengolahan Citra Digital

Menggunakan MATLAB, Bandung, Informatika Bandung.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L1

LAMPIRAN

List Program Utama

function varargout = Pengenalan_Rambu(varargin)

%PENGENALAN_RAMBU M-file for Pengenalan_Rambu.fig

% PENGENALAN_RAMBU, by itself, creates a new PENGENALAN_RAMBU or raises the

existing

% singleton*.

%

% H = PENGENALAN_RAMBU returns the handle to a new PENGENALAN_RAMBU or the

handle to

% the existing singleton*.

%

% PENGENALAN_RAMBU('Property','Value',...) creates a new PENGENALAN_RAMBU using

the

% given property value pairs. Unrecognized properties are passed via

% varargin to Pengenalan_Rambu_OpeningFcn. This calling syntax produces a

% warning when there is an existing singleton*.

%

% PENGENALAN_RAMBU('CALLBACK') and

PENGENALAN_RAMBU('CALLBACK',hObject,...) call the

% local function named CALLBACK in PENGENALAN_RAMBU.M with the given input

% arguments.

%

% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one

% instance to run (singleton)".

%

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Pengenalan_Rambu

% Last Modified by GUIDE v2.5 09-Oct-2014 17:16:16

% Begin initialization code - DO NOT EDIT

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...

'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @Pengenalan_Rambu_OpeningFcn, ...

'gui_OutputFcn', @Pengenalan_Rambu_OutputFcn, ...

'gui_LayoutFcn', [], ...

'gui_Callback', []);

if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L2

gui_mainfcn(gui_State, varargin{:});

end

% End initialization code - DO NOT EDIT

% --- Executes just before Pengenalan_Rambu is made visible.

function Pengenalan_Rambu_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 unrecognized PropertyName/PropertyValue pairs from the

% command line (see VARARGIN)

% Choose default command line output for Pengenalan_Rambu

handles.output = hObject;

% Update handles structure

guidata(hObject, handles);

% UIWAIT makes Pengenalan_Rambu wait for user response (see UIRESUME)

% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.

function varargout = Pengenalan_Rambu_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;

% --- Executes on button press in camera.

function camera_Callback(hObject, eventdata, handles)

% hObject handle to camera (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

imaqhwinfo;

info = imaqhwinfo('winvideo');

dev_info = imaqhwinfo('winvideo',1);

vidobj=videoinput('winvideo',1,'YUY2_640X480');

vidobj.FramesPerTrigger = 1;

triggerconfig(vidobj, 'manual');

vidRes = get(vidobj, 'VideoResolution');

imWidth = 640;

imHeight = 480;

nBands = get(vidobj, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes1)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L3

preview(vidobj, hImage)

% --- Executes on button press in capture.

function capture_Callback(hObject, eventdata, handles)

% hObject handle to capture (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

imaqhwinfo;

info = imaqhwinfo('winvideo');

dev_info = imaqhwinfo('winvideo',1);

vidobj=videoinput('winvideo',1,'YUY2_640X480');

vidobj.FramesPerTrigger = 1 ;

triggerconfig(vidobj, 'manual');

vidRes = get(vidobj, 'VideoResolution');

imWidth = 640;

imHeight = 480;

nBands = get(vidobj, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes1);

start(vidobj);

pause(1);

trigger(vidobj);

stoppreview(vidobj);

capt1=getdata(vidobj);

gambar=yuy2torgb(capt1);

handles.a=gambar;

guidata(hObject,handles)

axes(handles.axes1);

imshow(gambar)

axes(handles.axes6)

simbol=imread('images1.jpg');

imshow(simbol)

% --- Executes on button press in start.

function start_Callback(hObject, eventdata, handles)

% hObject handle to start (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

% DATABASE

des=handles.des

if (des==1)

load dB1r64d1

elseif (des==2)

load dB1r64d2

elseif (des==3)

load dB1r64d3

elseif (des==4)

load dB1r64d4

elseif (des==5)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L4

load dB1r64d5

elseif (des==6)

load dB1r64d6

end

%PROSES GRAYSCALE

x=handles.a;

axes(handles.axes2);

x1=double(rgb2gray(x));

x2=x1/255;

imshow(x2)

axis on

%PROSES CROPPING

axes(handles.axes3);

x3=1-x2; %membuat warna gambar menjadi terbalik

x5=imcrop(x3,[150 100 350 350]);

x6=imrotate(x5,45,'bilinear');

x7=ceil(x6-0.80);

x8=bbox(x6,x7);

x10=imrotate(x8,-45,'bilinear');

imshow(x10)

axis on

%PROSES RESIZING

axes(handles.axes4);

x11=imresize(x10,[64 64]);

imshow(x11)

axis on

% EKSTRAKSI CIRI

axes(handles.axes5);

x12=xcwav2(x11,des);

mx12=max(x12(:));

nx12=x12/mx12;

x13=x12(:);

imshow(nx12)

axis on

x13=x13+1; %nilai offset=1

z=z+1;

% FUNGSI JARAK

for n=1:8

r(n)=jarak(x13,z(:,n))

end

minr=min(r)

b1=find(minr==r);

b2=ceil(b1/2);

% KELUARAN TEXT

z2={'Tikungan ke Kiri','Tikungan ke Kanan','Persimpangan','Hati-Hati'};

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L5

y1=z2(b2)

set(handles.edit1,'string',y1);

% KELUARAN SUARA

axes(handles.axes6)

simbol1=imread('images.jpg');

imshow(simbol1)

if (b2==1);

y=wavread('Tikungan ke Kiri.wav');

sound(y,50000)

elseif (b2==2);

y=wavread('Tikungan ke Kanan.wav');

sound(y,50000)

elseif (b2==3);

y=wavread('Persimpangan.wav');

sound(y,50000)

elseif (b2==3);

y=wavread('Hati-Hati.wav');

sound(y,50000)

end

% ========================================

% --- Executes on button press in reset.

function reset_Callback(hObject, eventdata, handles)

% hObject handle to reset (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

axes(handles.axes1)

plot(0);

axes(handles.axes2)

plot(0);

axes(handles.axes3)

plot(0);

axes(handles.axes4)

plot(0);

axes(handles.axes5)

plot(0);

axes(handles.axes6)

plot(0);

set(handles.popupmenu1,'Value',1);

set(handles.edit1,'string','');

set(handles.text9,'string','');

% --- Executes on button press in close.

function close_Callback(hObject, eventdata, handles)

% hObject handle to close (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

close

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L6

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.

function edit1_CreateFcn(hObject, eventdata, handles)

% 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 selection change in popupmenu1.

function popupmenu1_Callback(hObject, eventdata, handles)

% hObject handle to popupmenu1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

indeks=get(handles.popupmenu1,'Value');

switch indeks

case 2

des=1;

case 3

des=2;

case 4

des=3;

case 5

des=4;

case 6

des=5;

case 7

des=6;

end

handles.des=des;

guidata(hObject,handles);

% Hints: contents = cellstr(get(hObject,'String')) returns popupmenu1 contents as cell array

% contents{get(hObject,'Value')} returns selected item from popupmenu1

% --- Executes during object creation, after setting all properties.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L7

function popupmenu1_CreateFcn(hObject, eventdata, handles)

% hObject handle to popupmenu1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles empty - handles not created until after all CreateFcns called

% Hint: popupmenu 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

List Program YUY2toRGB

function newdata = yuy2torgb(data) % Konversi YUY2 ke RGB % http://www.mathworks.com/matlabcentral/newsreader/view_thread/263490 % Access date: 11 June 2014

Y = single(data(:,:,1)); U = single(data(:,:,2)); V = single(data(:,:,3));

C = Y-16; D = U-128; E = V-128;

R = uint8((298*C+409*E+128)/256); G = uint8((298*C-100*D-208*E+128)/256); B = uint8((298*C+516*D+128)/256);

newdata = uint8(zeros(size(data))); newdata(:,:,1)=R; newdata(:,:,2)=G; newdata(:,:,3)=B;

List Program DBXCWAV (Database)

function dbxcwav clear all z=[]; z=prosesxc(1,[64 64]); save dB1r64d1 z ; z=[]; z=prosesxc(2,[64 64]); save dB1r64d2 z ; z=[]; z=prosesxc(3,[64 64]); save dB1r64d3 z ; z=[]; z=prosesxc(4,[64 64]); save dB1r64d4 z ; z=[]; z=prosesxc(5,[65 64]); save dB1r64d5 z ; z=[]; z=prosesxc(6,[65 64]); save dB1r64d6 z ; z=[]; %z=prosesxc(6,[64 128]); save dB1r64d6 z ;

clear all % =============================================== % Internal Function

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L8

% =============================================== function z=prosesxc(des,rz) z=[]; x=imread('Ram1.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y]; x=imread('Ram1a.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y];

x=imread('Ram2.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y]; x=imread('Ram2a.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y];

x=imread('Ram3.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y]; x=imread('Ram3a.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y];

x=imread('Ram4.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y]; x=imread('Ram4a.jpg'); x=prepro(x,rz); y=xcwav2(x,des); y=y(:); z=[z y];

% =============================================== function x9=prepro(x0,rz) % Preprocessing % ------------- % Konversi rgb ke gray x1=double(rgb2gray(x0)); x2=x1/255; x3=1-x2;

%Cropping

x5=imrotate(x3,45,'bilinear'); x6=ceil(x5-0.80); x7=bbox(x5,x6); x8=imrotate(x7,-45,'bilinear');

% Resizing x9=imresize(x8,rz); %x10=ceil(x9);

List Program BBOX

function img4=bbox(img2a,img2b) %img2a:gray; img2b:biner % ========================================================= % Potong kata sesuai bounding box-nya % ========================================================= [img3a,img3b]=cutleft(img2a,img2b); % Putar 90 cw dan potong kiri img3a=fliplr(img3a'); img3b=fliplr(img3b'); x=img3a; x1=img3b; [img3a,img3b]=cutleft(img3a,img3b); % Putar 90 cw dan potong kiri img3a=fliplr(img3a'); img3b=fliplr(img3b'); x2=img3a; x3=img3b; [img3a,img3b]=cutleft(img3a, img3b); % Putar 90 cw dan potong kiri img3a=fliplr(img3a');

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L9

img3b=fliplr(img3b'); x4=img3a; x5=img3b; [img3a,img3b]=cutleft(img3a,img3b); % Putar 90 cw img4=fliplr(img3b'); x6=img4;

function [out1,out2]=cutleft(in1,in2) %out1 (gray) , out2 (biner) % Subrutin untuk memotong kolom kiri yang kosong out1=in1; out2=in2; JKolom=sum(in2); KolomTakNol=find(JKolom >60); if sum(KolomTakNol)>=1; out1(:,1:KolomTakNol(1)-1)=[]; out2(:,1:KolomTakNol(1)-1)=[]; end

List Program XCWAV2 (Ekstraksi Ciri)

function x3=xcwav2(x0,m) % Ekstraksi ciri wavelet 2D untuk citra

for k=1:m x1=convx2(x0); x2=downsampling(x1); x0=x2; end x3=x0;

% ======================================== % Internal function % ======================================== function y=convx2(x) % Proses konvolusi 2D

LPF=[0.7071 0.7071]; % Haar wavelet LO_D [b,k]=size(x);

% Konvolusi baris for m=1:b x0=x(m,:); x(m,:)=convx(x0,LPF); end

%Konvolusi kolom for m=1:k x0=x(:,m); x(:,m)=convx(x0',LPF)'; end y=x;

% ========================================

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L10

function y = convx(x,LPF) % Proses konvolusi dengan ekstensi sinyal % Catatan: Jumlah koef. LPF harus genap

lx = length(x); lf = length(LPF);

% Ekstensi sinyal batas=lf/2; kiri=x(lx-batas+1:lx); kanan=x(1:batas); x=[kiri x kanan];

% Konvolusi y=conv(x,LPF);

% Keluarkan yang perlu awal=lf+1; akhir=awal+lx-1; y=y(awal:akhir);

% ======================================== function y=downsampling(x) % Proses downsampling yang mempertahankan % koefisien genap

[b,k]=size(x); % downsampling baris m=1:2:b; x(m,:)=[];

% downsampling kolom m=1:2:k; x(:,m)=[]; y=x;

% ========================================

List Program Jarak

function z=jarak(x,y) % Hitung jarak z=sum(((x-y).^2)./(x+y));

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L11

1. Proses Preprocessing

Citra Masukkan Diubah kedalam bentuk grayscale

Cita hasil cropping Membalik antara warna gelap dan

terang

Citra hasil bounding box Citra hasil resizing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L12

2. Proses Konvolusi dan Downsampling

Citra hasil resizing Citra hasil konvolusi

Citra hasil konvolusi baris Citra hasil downsampling baris

Citra hasil konvolusi kolom Citra hasil downsampling kolom

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L13

3. Proses Ekstraksi Ciri

Hasil Resizing Hasil setelah di-konvolusi

Hasil ekstraksi ciri Hasil setelah downsampling

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L14

Pengujian Jarak Maksimum dan Minimum

Rambu Tikungan ke Kiri

Jarak (cm)

Desimasi 1 Desimasi 2 Desimasi 3 Tingkat

Percobaan Percobaan Percobaan Pengenalan

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

40 0%

50 100%

60 100%

80 100%

100 100%

120 100%

140 100%

160 100%

180 100%

200 100%

220 100%

240 100%

260 100%

280 100%

300 100%

320 100%

340 100%

360 100%

380 100%

400 100%

420 100%

440 100%

460 100%

480 100%

500 100%

520 100%

540 100%

560 100%

580 60%

600 0%

620 0%

Ket : : rambu dikenali dengan tidak benar ; : rambu dikenali dengan benar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L15

Rambu Tikungan ke Kanan

Jarak (cm)

Desimasi 1 Desimasi 2 Desimasi 3 Tingkat

Percobaan Percobaan Percobaan Pengenalan

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

40 0%

50 100%

60 100%

80 100%

100 100%

120 100%

140 100%

160 100%

180 100%

200 100%

220 100%

240 100%

260 100%

280 100%

300 100%

320 100%

340 100%

360 100%

380 100%

400 100%

420 100%

440 100%

460 100%

480 100%

500 100%

520 100%

540 100%

560 100%

580 80%

600 0%

620 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: PENGENALAN SECARA REAL TIME RAMBU LALU LINTAS … fileSistem pengenalan rambu-rambu lalu lintas ini dilakukan secara real time ... laptop sebagai tempat memproses sistem, dan akan

L16

Rambu Persimpangan

Jarak (cm)

Desimasi 1 Desimasi 2 Desimasi 3 Tingkat

Percobaan Percobaan Percobaan Pengenalan

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

40 0%

50 100%

60 100%

80 100%

100 100%

120 100%

140 100%

160 100%

180 100%

200 100%

220 100%

240 100%

260 100%

280 100%

300 100%

320 100%

340 100%

360 100%

380 100%

400 100%

420 100%

440 100%

460 100%

480 100%

500 100%

520 100%

540 100%

560 100%

580 100%

600 0%

620 0%

Ket : : rambu dikenali dengan tidak benar

: rambu dikenali dengan benar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI