• Tidak ada hasil yang ditemukan

BAB I PENDAHULUAN

1.4. Metodologi Penelitian

Langkah-langkah yang akan dilakukan dalam pengerjaan tugas akhir, yaitu : a. Studi literatur

Studi literatur merupakan hal yang penting, karena dengan studi literatur penulis dapat mengetahui informasi yang diinginkan. Cara yang dilakukan, yaitu dengan mengumpulkan dan mempelajari jurnal-jurnal dan penelitian-penelitian, baik yang berasal dari Universitas Sanata Dharma maupun jurnal dan penelitian dari luar Universitas Sanata Dharma. Studi literatur juga dapat bersumber dari media internet dan media-media lain yang terpercaya. Studi literatur dilakukan untuk mempelajari dan memperdalam ilmu mengenai topik penelitian ini.

b. Perancangan software

Tahap selanjutnya merupakan tahap perancangan pada software dengan bahasa pemrograman Python. Tahap ini bertujuan untuk memberikan gambaran bagaimana sistem nantinya akan bekerja sehingga sesuai dengan yang diharapkan.

Cara yang dapat dilakukan adalah dengan mengetahui dahulu garis besar proses program, kemudian membuat rencana kerangka GUI dan komponen apa saja yang akan dimasukkan ke dalam GUI. Software yang akan dibuat terdiri dari 2 software, yaitu software dengan input gambar (non real time) dan software dengan input video (real time).

c. Pembuatan software

Pembuatan software ini merupakan implementasi dari perancangan yang telah dilakukan sebelumnya. Pembuatan software ini terbagi menjadi 3 bagian, yaitu preprocessing, ekstraksi ciri, dan klasifikasi. Sistem pengenalan rambu lalu lintas peringatan ini bekerja apabila pengguna memasukkan gambar atau video yang sudah diambil sebelumnya menggunakan kamera ponsel pada rambu peringatan di jalan raya. Tahap pertama adalah tahap preprocessing, yaitu dengan mengkonversi citra RGB ke citra HSV. Kemudian dari citra HSV penulis mengambil citra hue, dari citra hue tersebut kemudian dikonversi menjadi citra biner. Tahap selanjutnya adalah proses cropping untuk mengambil bagian yang akan diproses dan menghilangkan bagian yang tidak diinginkan. Setelah tahap preprocessing tahap selanjutnya adalah proses pengenalan rambu-rambu lalu lintas peringatan terdiri dari tahap ekstraksi ciri dan tahap fungsi jarak, dalam tahap ini nantinya akan dibandingkan juga dengan data pada database. Tahap terakhir adalah klasifikasi, yaitu proses penentuan keluaran dan menampilkan hasil pada layar monitor laptop dengan menggunakan klasifikasi k-NN.

d. Pengambilan data

Pengambilan data dilakukan untuk pembuatan data pada database yang nantinya akan dibandingkan dengan data pengujian. Data yang diambil yaitu hasil ekstraksi ciri. Data diambil berdasarkan variasi penelitian yaitu penyekalaan dengan variasi jarak 1m dengan kelipatan 1m hingga rambu tidak dapat dikenali. Kemudian variasi sudut menyerong (melenceng) dengan variasi sudut dimulai dari 0π‘œ kemudian kelipatan 5π‘œ hingga rambu tidak dapat dikenali. Penulis menggunakan variasi translasi 3 titik sebelah kiri. Masing masing variasi dilakukan pada masing-masing rambu. Pengambilan data ini akan dilakukan di 3 lokasi yang berbeda, 1 lokasi untuk database dan 2 lokasi untuk data uji. Selain untuk database, pengambilan data juga dilakukan untuk pengujian kinerja sistem tersebut. Jumlah data untuk database adalah 350 (5 jarak + 15 titik + 15 sudut x 10 rambu) dan jumlah data untuk pengujian sistem berjumlah 700 data (350 x 2 lokasi).

e. Analisa dan kesimpulan

Analisa dilakukan untuk mengetahui potensi keberhasilan program untuk mengenali rambu-rambu lalu lintas peringatan dan mencari variasi penelitian yang terbaik yang menghasilkan tingkat pengenalan rambu yang optimal. Hal ini

diperoleh dengan melihat apakah hasil data uji sudah sesuai dengan data pada database yang telah dibuat. Hasil pengenalan penelitian ini akan dibandingkan dengan hasil penelitian sebelumnya. Kesimpulan dilakukan untuk menyimpulkan analisa atau pembahasan mengenai hasil penelitian..

6

BAB II DASAR TEORI

2.1. Rambu Lalu Lintas

Rambu lalu lintas adalah bagian perlengkapan jalan yang berupa lambang, huruf, angka, kalimat, dan/atau perpaduan yang berfungsi sebagai peringatan, larangan, perintah, atau petunju bagi pengguna jalan [4].

Di Indonesia rambu-rambu lalu lintas terbagi menjadi 4 jenis, yaitu rambu peringatan, rambu perintah, rambu larangan, dan rambu petunjuk. Pada penelitian ini, penulis menggunakan rambu peringatan (Gambar 2.1.). Rambu peringatan adalah sebuah rambu yang digunakan untuk memberi peringatan kemungkinan ada bahaya atau tempat berbahaya di depan pengguna jalan. Warna dasar rambu peringatan adalah berwarna kuning dengan lambing atau tulisan berwarna hitam.

(a) (b) (c) (d) (e)

(f) (g) (h) (i) (j)

Gambar 2.1. Contoh Rambu Peringatan Sesuai Undang-Undang. (a) Banyak Lalu Lintas Pejalan Kaki Anak-anak ; (b) Peringatan (ditegaskan penjelasan jenis peringatan dengan menggunakan papan tambahan, contoh : hati-hati) ; (c) Jembatan, Penyempitan

Bagan Jalinan Jalan Tertentu ; (d) Pintu Perlintasan Sebidang Kereta Api ; (e) Persimpangan Tiga Sisi Kanan ; (f) Persimpangan Tiga Sisi Kiri ; (g) Tikungan ke Kanan ;

(h) Tikungan ke Kiri ; (i) Alat Pemberi Isyarat Lalu Lintas ; (j) Simpang Empat Prioritas [4].

Gambar 2.2. Rambu Peringatan di Jalan Raya

2.2. Pengolahan Citra

Pengolahan citra adalah bidang ilmu yang mempelajari tentang bagaimana suatu citra dibentuk, diolah, dan dianalisis sehingga menghasilkan informasi yang dapat dipahami manusia. Citra yang dimaksud dapat berupa citra diam (gambar) maupun citra bergerak (berasal dari webcam atau video) [5].

2.2.1. Ruang Warna RGB (Red, Green, Blue)

Model warna RGB adalah model warna berdasarkan konsep penambahan kuat cahaya primer yaitu Red, Green, dan Blue [6]. Bila dalam suatu ruang sama sekali tidak ada cahaya, maka ruang tersebut gelap total, tidak ada sinyal gelombang cahaya yang diserap oleh mata kita atau RGB (0,0,0). Apabila di dalam suatu ruangan ada 2 macam cahaya primer (merah dan hijau) atau (merah dan biru) atau (hijau dan biru) maka ruangan tersebut akan berubah warna menjadi kuning, atau magenta atau cyan. Warna yang dibentuk dari 2 kombinasi warna tersebut adalah warna sekunder. Sedangkan untuk warna tersier (abu-abu, putih) terbentuk dari gabungan 3 warna primer.

Gambar 2.3. Representasi Nilai RGB [7]

Pada perhitungan dalam program program komputer model warna direpresentasikan dengan nilai komponennya. Gambar 2.3. menunjukkan koordinat 3D dengan nilai masing

masing komponen terdapat 256 tingkat, nilai intensitas masing-masing warna pokok berbeda, nilai maksimum adalah 255 atau 28 = 8 bit. Bila masing-masing komponen warna bernilai maksimal maka sama dengan 24 bit, sehingga terdapat 16.777.216 warna.

Pembagian ruang warna RGB ditunjukkan pada Gambar 2.4.

a b

c d

Gambar 2.4. (a) Citra RGB ; (b) Komponen Red ; (c) Komponen Green ; (d) Komponen Blue

2.2.2. Hue, Saturation, Value (HSV)

Model warna HSV mendefinisikan warna dalam terminologi Hue, Saturation, dan Value. Hue merupakan warna sebenarnya, seperti merah, violet, dan kuning. Hue digunakan untuk membedakan warna-warna dan menentukan kemerahan (redness), kehijauan (greenness) dan sebagainya dari suatu cahaya. Hue berasosiasi dengan panjang gelombang cahaya. Untuk menentukan kemurnian suatu warna maka digunakan saturation. Saturation bekerja untuk mengindikasikan seberapa banyak warna putih yang akan diberikan pada suatu cahaya. Banyaknya cahaya yang diterima oleh mata manusia tanpa memperdulikan warna dapat disebut value [6].

Gambar 2.5. Reperesentasi 3D silindris HSV [8]

Pada Gambar 2.5. merupakan gambar distribusi warna dalam ruang silinder 3D-HSV.

Semua warna yang terletak di pinggir silinder merupakan warna dengan nilai saturasi 100%

(tidak mengandung cahaya putih) atau merupakan warna utama, sedangkan semakin ke dalam warna akan semakin menuju putih (tingkat saturasi 0%). Semakin ke bawah warna akan semakin gelap, semakin ke atas warna akan semakin cerah.

Gambar 2.6. Pembagian Level HSV [9]

Pada Gambar 2.6. menunjukkan bahwa hue memiliki rentang derajat nilai 0-360 dengan pembagian warna seperti pada Gambar 2.6. dalam penelitian ini yang digunakan adalah citra hue , sedangkan untuk saturation memiliki rentang presentase 0-100 dengan 0 warna akan menjadi gelap dan 100 warna akan semakin cerah. Untuk value atau kecerahan rentang presentase 0-100, semakin tinggi presentase kecerahan maka cahaya putih akan semakin nampak. Pembagian warna HSV ditunjukkan pada Gambar 2.7. Citra HSV akan digunakan dalam pengujian, citra HSV diubah menjadi citra biner untuk mendapatkan hasil ekstraksi ciri masing – masing rambu. Citra hue merupakan citra yang digunakan ketika sistem sudah berjalan, sedangkan untuk saturation dan value tidak digunakan.

a b

c d

Gambar 2.7. (a) Citra HSV ; (b) Komponen Hue ; (c) Komponen Saturation ; (d) Komponen Value

Untuk mendapatkan nilai H, S, V berdasarkan warna R, G, B terdapat beberapa cara, yaitu [8]:

𝐻 = tan (⁑ 3(πΊβˆ’π΅)

(π‘…βˆ’πΊ)+(π‘…βˆ’π΅)) (2.1)

𝑆 = 1 βˆ’min⁑(𝑅,𝐺,𝐡)

𝑉

𝑉 = ⁑𝑅+𝐺+𝐡

3

Persamaan 2.1. merupakan cara perhitungan pertama untuk mencari nilai Hue, Saturation, dan Value.

Pada persamaan 2.1. membuat hue tidak terdefinisi apabila S bernilai 0. Oleh karena itu perlu dilakukan normalisasi terhadap R, G, B seperti pada Persamaan 2.2. berikut:

π‘Ÿ = 𝑅

(𝑅 + 𝐺 + 𝐡); 𝑔 = 𝐺

(𝑅 + 𝐺 + 𝐡); 𝑏 = 𝐡 (𝑅 + 𝐺 + 𝐡)

(2.2)

Berdasarkan nilai normalisasi dengan Persamaan 2.2, maka dapat dihitung untuk memeperoleh nilai H, S, V seperti pada Persamaan 2.3. berikut:

𝑉 = max(π‘Ÿ, 𝑔, 𝑏) (2.3)

𝑆 = {

0, π‘—π‘–π‘˜π‘Žβ‘π‘‰ = 0 1 βˆ’min(π‘Ÿ, 𝑔, 𝑏)

𝑉 , 𝑉 > 0

𝐻 =

{

0, π‘—π‘–π‘˜π‘Žβ‘π‘† = 0 60(𝑔 βˆ’ 𝑏)

(𝑠)(𝑣) , π‘—π‘–π‘˜π‘Žβ‘π‘‰ = π‘Ÿ 60 [2 + 𝑏 βˆ’ π‘Ÿ

(𝑠)(𝑣)] , π‘—π‘–π‘˜π‘Žβ‘π‘‰ = 𝑔 60 [4 + π‘Ÿ βˆ’ 𝑔

(𝑠)(𝑣)] , π‘—π‘–π‘˜π‘Žβ‘π‘‰ = 𝑏 𝐻 = 𝐻 + 360

2.2.3. Citra Biner

Citra biner (binary image) adalah citra yang hanya mempunyai dua nilai derajat keabuan, yaitu hitam dan putih. Meskipun saat ini citra berwarna lebih disukai karena memberi kesan yang lebih kaya daripada citra biner, namun tidak membuat citra biner mati.

Pada aplikasinya, cita biner masih tetap dibutuhkan [10].

Proses segmentasi citra untuk menghasilkan citra biner dengan cara membedakan antara objek yang akan digunakan dengan latar belakangnya. Pada penelitian ini citra yang dikenali hanya satu objek. Citra yang dijadikan objek adalah citra yang berwarna kuning seperti level warna hue pada Gambar 2.6.

Operasi citra biner diawali dengan menambah saturation dan brightness pada citra yang didapat. Kemudian lakukan konversi citra RGB ke citra HSV. Pada Python nilai biner 1 direalisasikan dengan warna putih dan nilai biner 0 direalisasikan dengan nilai biner hitam.

Penulis menggunakan Gaussian Blur untuk mengurangi noise pada citra sehingga objek yang akan digunakan tidak terganggu dengan adanya noise. Contoh citra biner dapat ditampilkan pada Gambar 2.8.

Gambar 2.8. Contoh Citra Biner

2.2.4. Cropping

Cropping merupakan cara agar pengolahan citra menjadi lebih mudah. Cara ini menentukan objek yang akan digunakan untuk pengolahan citra, sedangkan objek yang lain yang tidak dibutuhkan akan dipotong atau dihilangkan sehingga tidak menganggu proses pengolahan citra. Pada penelitian ini, penulis menggunakan objek yang terbesar sebagai objek penelitian, sehingga objek-objek kecil atau noise yang ada di sekitarnya akan hilang atau terpotong, hal ini akan mempermudah pengenalan citra selanjutnya. Contoh cropping ditampilkan pada Gambar 2.9.

Gambar 2.9. Contoh Cropping

2.3. Operasi Morfologi

Operasi morfologi adalah operasi yang dilakukan pada citra biner (hitam-putih) untuk mengubah struktur suatu objek yang terkandung dalam suatu citra sehingga objek tersebut dapat dideteksi [11].

2.3.1. Operasi Dilasi dan Erosi

Operasi dilasi dan erosi merupakan salah satu contoh operasi morfologi dalam pengolahan citra digital. Operasi dilasi digunakan untuk melakukan pelebaran pada struktur

piksel objek. Operasi erosi digunakan untuk memperkecil stuktur piksel objek [11]. Contoh operasi morfologi ditampilkan pada Gambar 2.10.

a b

Gambar 2.10. (a) Hasil Operasi Dilasi ; (b) Hasil Operasi Erosi

2.4. Pengurangan Derau (Noise)

Noise atau derau adalah gangguan atau kecacatan pada suatu citra sehingga mengakibatkan informasi pada citra tersebut hilang [12]. Pada penelitian ini penulis menggunakan metode Gaussian Filter dan Median Filter untuk pengurangan derau.

Gaussian filter digunakan untuk menghilangkan derau yang muncul pada saat konversi BGR ke HSV ditunjukkan pada Gambar 2.7.(a), gambar yang telah dikonversi memiliki (noise) berupa titik – titik hitam kecil yang akan menganggu pada saat proses ekstraksi ciri. Derau disekitar objek dihilangkan supaya warna kuning pada objek terlihat lebih jelas sehingga mudah dikenali. Gaussian Filter digunakan ketika tampilan citra masih utuh (Gambar 2.11.).

Median filter digunakan ketika objek yang akan dideteksi sudah dipotong dan dalam bentuk gambar biner (Gambar 2.9.).

Gambar 2.11. Hasil Gaussian Filter

2.5. Bounding Box

Bounding box merupakan kotak pembatas yang berfungsi sebagai titik acuan objek yang akan diteliti [13]. Pada penelitian ini bounding box hanya digunakan pada pengenalan dengan input berupa video. Contoh bounding box ditampilkan pada Gambar 2.12.

Gambar 2.12. Bounding box

2.6. Momen Spasial dan Momen Pusat

Area, posisi, orientasi, dan parameter terdefinisi lainnya pada suatu objek dapat digambarkan dengan momen. Momen spasial orde (m, n) dapat didefinisikan seperti Persamaan 2.4. [11].

𝑀𝑖𝑗⁑ = ⁑ βˆ‘ βˆ‘ π‘₯𝑖𝑦𝑖

𝑁 𝑦=1

𝐼⁑(π‘₯, 𝑦)

𝑀 𝑋=1

(2.4)

Keterangan :

𝑖, 𝑗 = 0, 1, 2,.., dengan 𝑖⁑𝑗 menyatakan orde momen 𝑀 = jumlah kolom pada citra

𝑁 = jumlah baris pada citra 𝑋 = ordinat piksel

𝑦 = absis piksel

𝐼⁑(π‘₯, 𝑦) = intensitas piksel pada posisi (π‘₯, 𝑦)

Momen pusat adalah momen spasial yang dihitung relatif terhadap pusat massa. Jika pusat massa adalah (π‘₯,Μ… ⁑ 𝑦̅), momen pusat ditulis seperti Persamaan 2.5.

μ𝑖𝑗 = ⁑⁑ βˆ‘ βˆ‘ (π‘₯ βˆ’ ⁑ π‘₯Μ…)𝑖⁑(𝑦 βˆ’ ⁑ 𝑦̅)𝑗𝐼(π‘₯, 𝑦)

Momen pada Persamaan 2.5. bersifat invariant (tidak terpengaruh) terhadap translasi.

Dalam hal ini, π‘₯Μ… dan 𝑦̅ diperoleh melalui Persamaan 2.6.

π‘₯Μ… = ⁑𝑀10

𝑀00, 𝑦̅ = ⁑𝑀01 𝑀00

(2.6)

Normalisasi perlu dilakukan agar tidak terpengaruh tidak hanya terhadap translasi, namun juga terhadap penyekalaan serta rotasi. Momen pusat ternormalisasi dapat dilakukan dengan Persamaan 2.7.

ŋ𝑖𝑗 = β‘πœ‡π‘π‘ž

πœ‡00𝑦, 𝑦 = ⁑𝑖+𝑗+2

2 (2.7)

Contoh citra biner untuk perhitungan manual seperti pada Gambar 2.13.

Gambar 2.13. Contoh Citra Untuk Perhitungan Manual

Pertama kali dilakukan perhitungan untuk mendapatkan nilai⁑π‘₯,Μ… ⁑ 𝑦̅ seperti Persamaan 2.6.

𝑋̅ =𝑀10

𝑀00 = β‘βˆ‘π‘₯1𝑦0(𝐼(π‘₯, 𝑦) > 0)

βˆ‘π‘₯0𝑦0(𝐼(π‘₯, 𝑦) > 0)=βˆ‘π‘₯1𝑦0(𝐼(π‘₯, 𝑦) > 0)

βˆ‘π‘₯0𝑦0(𝐼(π‘₯, 𝑦) > 0)

Tabel 2.1. Perhitungan Pusat Masa (𝑋̅)

X Y X1 Y0 X0 Y0 X1Y0 X0Y0 βˆ‘π‘‹1π‘Œ0

Tabel 2.1. (lanjutan) Perhitungan Pusat Masa (𝑋̅)

Tabel 2.2. Perhitungan Pusat Masa (π‘ŒΜ…)

X Y X0 Y1 X0 Y0 X0Y1 X0Y0 βˆ‘π‘‹0π‘Œ1

Langkah selanjutnya menghitung momen pusat seperti pada Persamaan 2.5.

πœ‡20=βˆ‘(π‘₯βˆ’π‘₯Μ…)𝑖(π‘¦βˆ’π‘¦Μ…)𝑗(𝐼(π‘₯,𝑦)>0)

= βˆ‘(π‘₯ βˆ’ π‘₯Μ…)2(𝑦 βˆ’ 𝑦̅)0

Tabel 2.3. Perhitungan Momen Pusat

Tabel 2.4. Hasil Momen Pusat

πœ‡20 πœ‡02 πœ‡11 πœ‡30 πœ‡03 πœ‡12 πœ‡21

40 20 0 0 0 0 0

Setelah mendapatkan nilai momen pusat kemudian dilakukan perhitungan momen pusat ternormalisasi seperti pada Persamaan 2.7.

Tabel 2.5. Perhitungan Momen Pusat Ternormalisasi p/i q/j

Masing – masing rambu memiliki nilai ektstraksi ciri yang berbeda dan akan digunakan dalam sistem pengenalan. Hasil momen pusat ternormalisasi ditunjukkan Tabel 2.6.

Tabel 2.6. Hasil Momen Pusat Ternormalisasi

Ε‹20 Ε‹02 Ε‹11 Ε‹30 Ε‹03 Ε‹12 Ε‹21

0,15625 0,178125 0 0 0 0 0

2.7. Log Scale

Hasil perhitungan momen spasial dan momen pusat terkadang memiliki rentang nilai yang cukup jauh pada masing-masing nilai [14]. Log scale digunakan untuk mengurangi rentang pada hasil perhitungan momen spasial dan momen pusat. Log scale pada momen spasial dan momen pusat dapat ditunjukkan pada Persamaan 2.8.

Hi = - sign(I) log|I| (2.8)

Keterangan: I merupakan nilai ekstraksi ciri momen spasial dan momen pusat

Tabel 2.7. menunjukkan salah satu contoh hasil perhitungan momen spasial dan momen pusat dengan rentang jarak yang cukup jauh.

Tabel 2.7. Contoh Hasil Perhitungan Tanpa Log Scale

Ε‹20 Ε‹02 Ε‹11 Ε‹30 Ε‹03 Ε‹12 Ε‹21

3,55.10-6 0,19.10-14 2,06.10-20 3,29.10-10 6,46.10-2 1,11.10-8 1,91.10-5

Setelah diketahui ketujuh nilai dari momen spasial dan momen pusat kemudian dilakukan perhitungan log scale seperti pada Persamaan 2.8.

Tabel 2.8. Contoh Hasil Perhitungan dengan Log Scale

Ε‹20 Ε‹02 Ε‹11 Ε‹30 Ε‹03 Ε‹12 Ε‹21

5,449 14,721 19,686 9,482 1,189 7,954 4,718

2.8. Template Matching

Template matching adalah sebuah teknik dalam pengolahan citra untuk menemukan bagian-bagian kecil dari gambar yang cocok dengan template gambar. Metode template machine merupakan salah satu metode yang digunakan untuk menjelaskan bagaimana otak kita mengenali kembali bentuk-bentuk atau pola-pola [15]. Template matching dalam penelitian ini yaitu fungsi jarak kosinus. Fungsi jarak kosinus merupakan sebuah fungsi yan digunakan untuk mencari hasil pengenalan, jarak yang terdekat dengan database menjadi hasil pengenalan dari sistem tersebut.

2.8.1. Fungsi Jarak Kosinus

Fungsi jarak kosinus digunakan untuk menghitung nilai jarak antara nilai data uji dengan nilai database. Perhitungan fungsi jarak kosinus ditunjukkan pada Persamaan 2.9.

π·πΆπ‘œπ‘  = 1 βˆ’ βˆ‘π‘‘π‘–=1𝑃𝑖𝑄𝑖

βˆšβˆ‘π‘‘π‘–=1𝑃𝑖2βˆšβˆ‘π‘‘π‘–=1𝑄𝑖2

(2.9)

Dimana:

d = banyaknya data P = input data uji Q = data dari database

Perhitungan fungsi jarak kosinus digunakan untuk menentukan keluaran akhir program. Berikut adalah contoh perhitungan manual untuk fungsi jarak kosinus.

P = [10 5]

Q1 =[3 2]

Q2 = [7 8]

Q3 = [1 1]

Q4 = [4 6]

Q5 = [1 3]

Q6 = [9 5]

Berdasarkan Persamaan 2.9. dapat dilakukan perhitungan sebagai berikut.

P.Q = (10.3) + (5.2) = 40

‖𝑃‖ = √102 + 52 = 11,18

‖𝑄‖ = √32+ 22 = 3,60

Nilai diatas dapat menghasilkan jarak kosinus

π·π‘π‘œπ‘  = 1 βˆ’ 𝑃. 𝑄

‖𝑃‖⁑‖𝑄‖= 1 βˆ’ 40

(11,18)(3,60)= 0,00616

Berdasarkan Nilai vektor P yang sama dan mengganti nilai Q seperti pada Tabel 2.9., maka dihasilkan nilai jarak kosinus sebagai berikut.

Tabel 2.9. Hasil Perhitungan Jarak Kosinus

Q1 Q2 P.Q ‖𝑃‖ ‖𝑄‖ π·π‘π‘œπ‘ 

2.9. k-Nearest Neighbour

k-Nearest neighbour atau K-NN adalah sebuah metode klasifikasi terhadap objek berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek penelitian atau biasa disebut tetangga terdekat [16].

Cara kerja k-NN sebagai berikut:

1. Hasil fungsi jarak kosinus yang telah didapat dengan Persamaan 2.9, diurutkan dari nilai terkecil hingga terbesar.

2. Menentukan nilai K (jumlah tetangga terdekat) yang ingin dicari.

3. Kelas dipilih dengan kemunculan terbanyak.

4. Hasil klasifikasi dikeluarkan dan ditampilkan

Berdasarkan Tabel 2.9. penggunaan fungsi jarak kosinus dan k-NN sebagai berikut.

1. Mengurutkan nilai jarak kosinus dari terkecil hingga terbesar seperti pada Tabel 2.10.

Tabel 2.10. Urutan Jarak Kosinus D5 0,00036 0,00616 0,04845 0,05028 0,13159 0,29236

2. Mengambil sebanyak k (k = 3) yang memiliki tingkat kemiripan paling tinggi dengan P seperti pada Tabel 2.11.

Tabel 2.11. Pengambilan Nilai Sebanyak k = 3

D5 (Kelas 1) D4 (Kelas 1) D6 (Kelas 1)

0,00036 0,00616 0,04845

Nilai k yang akan diambil harus bernilai ganjil. Bila k = 5, maka nilai yang paling tinggi tingkat kemiripannya dengan P sebanyak 5 buah nilai yang akan diambil dan digunakan seperti pada Tabel 2.12.

Tabel 2.12. Pengambilan Nilai Sebanyak k = 5 D5

(Kelas 1)

D4 (Kelas 1)

D6 (Kelas 1)

D2 (Kelas 2)

D1 (Kelas 2) 0,00036 0,00616 0,04845 0,05028 0,13159 3. Untuk mengetahui klasifikasi yang akan digunakan dapat diketahui dengan cara

memilih kemunculan kelas yang paling banyak. Tabel 2.11. dengan k = 3, semua berisi kelas 1. Hal ini menunjukkan bahwa P masuk dalam kelas 1.

Pada Tabel 2.12. dengan k = 5, kelas 1 diwakili oleh D5, D4, dan D6, sedangkan kelas 2 diwakili D2 dan D1. Hal ini menunjukkan bahwa P masuk dalam kelas 1.

Bila terdapat dua nilai atau lebih yang memiliki nilai sama, maka keluaran yang akan digunakan adalah nilai yang paling tertinggi pada urutan pertama.

22

BAB III

RANCANGAN PENELITIAN

Bab III ini akan membahas mengenai rancangan penelitian yang meliputi langkah langkah perancangan yang akan dilakukan dan blok diagram kerja sistem.

3.1. Perancangan Sistem

Perancangan sistem yang akan dibuat adalah sebuah sistem yang dapat mengenali rambu lalu lintas peringatan menggunakan kamera ponsel. Gambar 3.1. menunjukkan perancangan sistem secara umum.

Gambar 3.1. Perancangan Sistem

Berdasarkan Gambar 3.1., kamera ponsel digunakan untuk proses pengambilan image dan video yang akan digunakan untuk penelitian. Gambar dan video yang telah didapat akan melalui beberapa tahap pemrosesan. Tahap pertama yaitu tahap preprocessing yaitu proses mengubah citra RGB menjadi citra biner menggunakan segementasi HSV. Proses segmentasi yang dilakukan adalah dengan mengambil warna kuning pada rambu, karena nantinya yang akan digunakan untuk pemrosesan selanjutnya adalah citra yang berwarna kuning. Setelah mendapatkan citra biner kemudian tahap selanjutnya adalah proses ekstraksi ciri dengan menggunakan momen spasial dan momen pusat. Hasil dari ekstraksi ciri kemudian diproses dengan template matching menggunakan fungsi jarak kosinus dan hasilnya akan dibandingkan dengan data pada database. Klasifikasi hasil dari jarak kosinus menggunakan klasifikasi k-NN, sehingga akan memberikan keluaran berupa teks di layar laptop.

Tahapan tersebut merupakan gambaran secara umum mengenai penelitian rambu peringatan. Gambaran penelitian secara rinci akan dibahas pada proses kerja sistem. Program yang akan digunakan dalam penelitian rambu peringatan adalah Python.

3.2. Proses Kerja Sistem

Sebelum menampilkan hasil keluaran yang berupa teks, penelitian pengenalan rambu lalu lintas peringatan harus melalui beberapa tahap. Penelitian diawali tahap preprocessing, kemudian ekstraksi ciri momen spasial dan momen pusat, jarak kosinus, dan klasifikasi k-NN. Proses kerja sistem input gambar ditampilkan pada Gambar 3.2 dan proses kerja sistem input video ditampilkan pada Gambar 3.3.

Gambar 3.2. Diagram Blok Kerja Sistem Input Gambar Mulai

Input : Gambar

Rambu Peringatan

Preprocessing

Ekstraksi Ciri : Momen Spasial dan Momen Pusat

Klasifikasi : Perhitungan Jarak Kosinus dan KNN

Perhitungan Log Scale

Output : hasil pengenalan berupa teks

Selesai

Gambar 3.2. merupakan diagram blok kerja sistem input gambar. Sistem ini mendapat input berupa gambar. Input yang telah dibaca oleh sistem kemudian dilakukan proses preprocessing untuk mendapatkan citra biner. Image biner yang dihasilkan akan dihitung menggunakan momen spasial dan momen pusat untuk mendapatkan nilai ekstraksi ciri. Nilai ekstraksi ciri yang telah didapat kemudian dilakukan perhitungan log scale untuk mengurangi rentang nilai yang cukup jauh. Hasil perhitungan log scale dan data pada database dihitung jaraknya menggunakan jarak kosinus, jarak yang paling kecil dicari untuk menentukan hasil keluaran.

Gambar 3.3. Diagram Blok Kerja Sistem Input Video Mulai

Input : Video Rambu Peringatan

Deteksi Rambu Peringatan

Rambu Peringatan Terdeteksi?

Ya Tidak

Preprocessing

Ekstraksi Ciri : Momen Spasial dan Momen Pusat

A

Gambar 3.3. (lanjutan) Diagram Blok Kerja Sistem Input Video

Proses kerja sistem dengan input video secara garis besar sama dengan input gambar.

Perbedaan antara input video dan gambar terletak pada pendeteksian rambu peringatan. Jika dalam sebuah video terdeteksi rambu peringatan, maka sistem akan melanjutkan prosesnya dan rambu tersebut dapat dikenali. Jika dalam sebuah video tidak terdeteksi rambu peringatan maka sistem akan melakukan pengulangan untuk mencari rambu peringatan dalam video.

3.2.1. Input Data

Rambu lalu lintas peringatan yang ada di jalan raya akan menjadi input data dalam penelitian ini. Pengambilan gambar dan video rambu peringatan dilakukan dengan menggunakan kamera ponsel. Pengambilan gambar dan video dilakukan dengan variasi jarak, translasi, dan sudut yang berbeda untuk setiap rambunya. Hal ini digunakan untuk menunjukkan kualitas kinerja pengenalan dengan ekstraksi ciri momen spasial dan momen pusat. Proses input data ditampilkan pada Gambar 3.4. dan 3.5.

Menghitung Log Scale

Klasifikasi : Perhitungan Jarak Kosinus dan KNN

A

Output : hasil pengenalan

berupa bounding box

dengan label nama rambu

Selesai

Gambar 3.4. Diagram Blok Input Data Gambar

Gambar 3.5. Diagram Blok Input Data Video

Gambar 3.4. dan Gambar 3.5. merupakan diagram blok input data gambar dan video.

Masukan sistem ini berasal dari rambu lalu lintas peringatan yang ada di pinggir jalan raya.

Rambu peringatan tersebut kemudian ditangkap (capture) dan direkam menggunakan kamera ponsel dan disimpan di laptop. Gambar dan video yang telah disimpan akan digunakan sebagai masukan sistem pengenalan rambu lalu lintas peringatan.

Mulai

3.2.2. Preprocessing

Tahap preprocessing terdiri dari beberapa tahapan mulai dari konversi BGR ke HSV, kemudian segmentasi warna HSV untuk mendapatkan citra biner (warna kuning), kemudian dilakukan dilasi dan erosi untuk memperjelas citra, dan cropping. Metode Gaussian Filter dan Median Filter digunakan untuk mengurangi noise pada objek. Ekualisasi histogram dan saturasi digunakan untuk meningkatkan atau menurunkan kecerahan pada objek, sehingga objek dapat terlihat jelas dan dapat dideteksi. Secara garis besar tahap ini akan ditampilkan pada Gambar 3.6. dan 3.7.

Gambar 3.6. Diagram Blok Preprocessing (Input Gambar) Mulai

Input : Gambar Rambu Lalu

Lintas Peringatan Ekualisasi Histogram dan

Saturasi

Gaussian Filter

Konversi BGR ke HSV

Segmentasi HSV

Dilasi dan Erosi

D

D

Cropping

Median Filter

Output : Gambar Biner

Selesai

Gambar 3.7. Diagram Blok Preprocessing (Input Video) Mulai

Input : Video Rambu Lalu

Lintas Peringatan

Deteksi Rambu Peringatan

Rambu Peringatan Terdeteksi?

Konversi BGR ke HSV

Segmentasi HSV Gaussian Filter

Output : Video Biner

Selesai

Tidak

Ya

Rambu Peringatan

Rambu Peringatan

Dokumen terkait