• Tidak ada hasil yang ditemukan

DETEKSI PENGENDARA SEPEDA MOTOR MENGGUNAKAN DEEP CONVOLUTIONAL NEURAL NETWORKS

N/A
N/A
Protected

Academic year: 2022

Membagikan "DETEKSI PENGENDARA SEPEDA MOTOR MENGGUNAKAN DEEP CONVOLUTIONAL NEURAL NETWORKS"

Copied!
8
0
0

Teks penuh

(1)

MENGGUNAKAN DEEP CONVOLUTIONAL NEURAL NETWORKS

Stephen Ekaputra Limantoro

1)

, Yosi Kristian

2)

, Devi Dwi Purwanto

3)

1

stephenekaputra@gmail.com,

2

yosi@stts.edu,

3

devi@stts.edu

1. PENDAHULUAN

Teknologi saat ini banyak digunakan di mana saja. Salah satunya adalah penggunaan kamera dash cam di dalam mobil. Tetapi, kamera dash cam tersebut hanya bekerja untuk merekam saja. Oleh karena itu, kamera dashcam perlu diberi kecerdasan agar dapat mengklasifikasi objek yang direkamnya.

Jumlah kendaraan bermotor yang terdaftar di Indonesia adalah 84 juta di tahun 2013 menurut Badan Pusat Statistik Indonesia [1]. Dengan jumlah kendaraan sebanyak itu, pemerintah mengalami kesulitan untuk mengawasi kendaraan bermotor yang melanggar sehingga teknologi diperlukan untuk membantu pemerintah. Klasifikasi pengendara sepeda motor bukan hal yang sederhana karena memiliki fitur yang variatif dan kompleks. Klasifikasi pengendara sepeda motor sukar dilakukan dengan deteksi tepi atau perbedaan warna saja karena ada banyak objek, seperti pohon, jalan, mobil, dan sebagainya. Salah satu metode yang diterapkan oleh AlexNet [2] dalam klasifikasi objek dengan fitur yang kompleks adalah convolutional neural networks.

ABSTRAK

Jumlah motor di Indonesia mencapai 84 juta di tahun 2013 sehingga menjadi sulit bagi pemerintah untuk mengawasi kendaraan bermotor yang melanggar. Teknologi visi komputer diperlukan untuk mendeteksi keberadaan pengendara sepeda motor. Sebelum melakukan proses deteksi, proses klasifikasi perlu dilakukan. Proses klasifikasi pengendara sepeda motor sukar dilakukan karena memiliki fitur yang kompleks. Salah satu metode yang digunakan oleh penelitian sebelumnya adalah mengesktraksi fitur yang kompleks menggunakan convolutional neural networks (CNN). Hasil penggunaan CNN dari penelitian AlexNet memenangi kontes ILSVRC 2010 dan 2012. Oleh karena itu, convolutional neural networks digunakan untuk mengatasi masalah fitur yang kompleks. Tujuan dari penelitian ini adalah memahami arsitektur CNN dengan hasil yang terbaik. Pada penelitian ini, dash cam digunakan untuk merekam video di jalan raya Surabaya pada siang hari atau cuaca cerah dengan resolusi 1080 HD. Video dengan warna RGB diekstrak menjadi beberapa citra dan diberi label. Lalu, data citra dilatih dengan convolutional neural networks menghasilkan bobot. Eksperimen yang dilakukan adalah membagi arsitektur CNN menjadi tiga, yaitu kecil, sedang, dan besar. Lalu, arsitektur CNN tersebut saling dibandingkan. Pada hasil eksperimen, arsitektur CNN besar memiliki akurasi yang tertinggi sebesar 93% dan f1-score sebesar 94,9%. Arsitektur CNN yang kompleks dan besar cenderung memiliki peforma yang lebih baik.

Keywords: Detection, Convolutional Neural Networks, Motorcycles.

The number of motorcycles in Indonesia reaches 84 million in 2013, making it difficult for the government to monitor motor vehicles in violation. Computer vision technology is needed to detect the presence of motorcyclists. Before performing the detection process, the classification process needs to be done. The process of classifying motorcyclists is difficult because it has a complex feature. One method used by previous research is to extract complex features using convolutional neural networks (CNN). The results of CNN use from the AlexNet research won the ILSVRC 2010 and 2012 contests. Therefore, convolutional neural networks are used to solve complex feature problems. The purpose of this research is to understand CNN architecture with the best result. In this study, dash cam is used to record video on Surabaya highway during the day or sunny weather with 1080 HD resolution. Videos with RGB colors are extracted into multiple imagery and labeled. Then, image data trained with convolutional neural networks produces weight. The experiment is to divide the CNN architecture into three, ie small, medium, and large. Then, the CNN architecture is comparable to each other. In the experimental results, the large CNN architecture has the highest accuracy of 93% and f1-score of 94.9%. Complex and large CNN architectures tend to have better performance.

Kata kunci : Deteksi, Convolutional Neural Networks, Sepeda Motor.

ABSTRACT

Teknologi Informasi, Sekolah Tinggi Teknik Surabaya

Jl. Ngagel Jaya Tengah 73-77, Surabaya, Jawa Timur, Indonesia

(2)

Blok Diagram

Convolutional Neural Networks [3]

Gambar 1.1

CNN merupakan modifikasi dari Neural Networks yang mengandung bobot dan beberapa lapisan. CNN didesain untuk mengenali citra yang berpiksel. Pada Gambar 1.1, arsitektur CNN klasik yang biasa digunakan oleh Lecun dalam deep learning adalah lapisan konvolusi, fungsi aktivasi (relu), dan max pooling [4]. Relu adalah fungsi aktivasi yang berfungsi mengaktifkan dan menonaktifkan neuron. CNN menggunakan relu untuk mempercepat proses latihan [5]. Relu memiliki kecepatan 6 kali dibandingkan neuron tanh sehingga baik digunakan untuk mencegah overfitting. Nilai hasil konvolusi yang dibawah 0 diubah menjadi 0. Max pooling mengubah input menjadi output dengan cara memilih angka piksel terbesar terhadap piksel tetangganya tergantung dari ukuran filter [5]. Lapisan fully connected menghubungkan semua neuron dalam 1 lapisan dengan semua neuron di lapisan lainnya [5]. Prinsip dari lapisan ini sama dengan Multi Layer Perceptron (MLP).

Dalam arsitektur CNN, lapisan fully connected terletak di bagian akhir arsitektur.

Dalam [2], hasil dari penelitian AlexNet memenangi kompetisi ILSVRC 2010 dan 2012 dengan error rate terendah yaitu 15.3%. Klasifikasi yang dilakukan menggunakan 1,2 juta data citra yang beresolusi tinggi dengan 1000 kelas yang berbeda. Dalam proses pelatihan, stochastic gradient descent digunakan dengan parameter ukuran batch (128), learning rate (0,01), momentum (0,9), dan decay (0,0005). Arsitektur CNN terdiri dari 5 lapisan konvolusi, 5 relu, 2 lapisan max pooling, dan 3 lapisan fully-connected.

Pada penelitian [6], klasifikasi terhadap kecacatan rel kereta api dilakukan menggunakan CNN dengan 22408 dataset grayscale diambil dari rekaman kamera di atas rel kereta. Proses pelatihan menggunakan 40 iterasi dengan parameter learning rate 0,01 dan decay 0,0001 untuk menghindari overfitting. Dua hasil percobaan dilaporkan dalam penelitian ini. Jaringan dilatih untuk mengklasifikan data menjadi 6 kelas, antara lain normal, weld, light squat, moderate squat, severe squat, dan joint. Lalu, konfusi matriks terhadap 6 kelas tersebut dibandingkan dengan 3 model arsitektur, yaitu kecil, sedang, dan besar. Dari hasil perbandingan tersebut, 6 kelas dipersempit menjadi 3 kelas, yaitu normal, weld, dan joint agar lebih efisien. Setalah itu, komparasi akurasi 3 kelas tersebut saling dibandingkan dengan 2 fungsi aktivasi, yaitu tanh dan relu. Hasil dari penelitian ini adalah peforma penggunaan relu lebih baik dibandingkan dengan tanh dan model arsitektur CNN besar memiliki peforma yang paling baik.

Dalam paper ini, metode menggunakan convolutional neural networks untuk mengklasifikasikan pengendara sepeda motor diharapkan mampu mencapai akurasi minimal 70%. Batasan dalam penelitian ini adalah dash cam ditempelkan pada dashboard mobil lalu pengambilan data gambar pengendara sepeda motor dilakukan pada saat posisi sepeda motor menghadap lurus ke depan

searah dengan mobil penulis dan diambil pada siang hari/cuaca cerah.

2. METODE PENELITIAN

Dalam penggunaan metode penelitian ini, penulis juga menjelaskan hal-hal terkait dengan proses penelitiannya dalam bentuk blok diagram. Blok diagram dibagi menjadi 3 bagian, yaitu proses awal, pelatihan, dan pengujian. Bahasa pemrograman yang digunakan adalah Python dengan menggunakan library keras dan opencv untuk Windows dan pelatihan menggunakan CPU. Blok diagram klasifikasi pengendara sepeda motor dapat dilihat pada Gambar 2.1.

(3)

Pembagian Dataset Klasifikasi Pengendara Sepeda Motor

Data Citra Pengendara Sepeda Motor dan Bukan Pengendara Sepeda Motor

Parameter

Pada tahap pelatihan, data dilatih untuk menghasilkan bobot [7]. Proses pelatihan menggunakan stochastic gradient descent untuk meminimalkan error dengan memperbarui nilai bobot [8]. Formula untuk memperbarui nilai bobot ω dapat dilihat pada formula (1) [2].

υi+1∶= 0.9. υi − 0.0005. ε. ωi − ε. 〈∂L

∂ω〉Di (1)

ωi+1∶= ωi+ υi+1

Dari formula (1), i adalah angka indeks, υ adalah momentum, ε adalah learning rate, dan 〈∂ω∂LDi adalah turunan untuk memperbarui bobot ω terhadap iterasi yang ke-i yang dievaluasi pada ωi. Beberapa parameter yang digunakan dalam proses pelatihan adalah ukuran batch (32), learning rate (0,01), decay (5x10-4), dan momentum (0,9). Nilai parameter yang digunakan pada penelitian ini mengikuti sebagian besar nilai parameter dari penelitian AlexNet di mana decay berfungsi untuk menurunkan nilai error [2].

Setelah proses pelatihan selesai, pengujian dilakukan untuk mengevaluasi hasil peforma model pelatihan CNN. Pada tahap ini, 20% dari data digunakan sebagai data pengujian dan 80% dari data digunakan sebagai data pelatihan dan data validasi.

Gambar 2.2 Dataset

Dataset diambil dari sebuah video beresolusi 1080 HD yang ditempelkan di dashboard mobil yang menghadap ke depan. Video diambil pada siang hari atau cuaca cerah sehingga gambar yang diambil lebih mudah untuk diproses. Dataset yang digunakan berjumlah 1000 dan dibagi menjadi 3 bagian, yaitu 600 untuk data pelatihan, 200 untuk data validasi, dan 200 untuk data pengujian. Dataset pelatihan dan validasi terdiri dari 400 citra pengendara sepeda motor dan 400 citra bukan pengendara sepeda motor. Pengambilan data dilakukan dengan cara cropping citra dari frame video yang sudah diekstrak. Pembagian dataset klasifikasi pengendara sepeda motor dapat dilihat pada Gambar 2.2. Data citra bukan pengendara sepeda motor diambil dari semua objek yang ada di jalan raya, antara lain pohon, langit, mobil, jalan, rumah, sepeda, dan sebagainya.

Ukuran dari dataset yang berskala 1:2 diubah menjadi ukuran 200x400 piksel dengan format warna RGB. Contoh data pengendara sepeda motor dan bukan sepeda motor dengan ukuran 200x400 piksel dapat dilihat pada Gambar 2.3.

Gambar 2.3

(4)

Arsitektur Kecil Sedang Besar Lapisan Conv 1, Relu @8 filter

5 x 5

@16 filter 3 x 3

@32 filter 3 x 3

Max Pooling 1 3 x 3 2 x 2 2 x 2

Lapisan Conv 2, Relu @8 filter 5 x 5

@16 filter 3 x 3

@32 filter 3 x 3

Max Pooling 2 3 x 3 2 x 2 2 x 2

Lapisan Conv 3, Relu - @16 filter

3 x 3

@32 filter 3 x 3

Max Pooling 3 - 2 x 2 2 x 2

Fully Connected 1 64 parameter 128 parameter 256 parameter

Dropout 1 0.5 0.5 0.5

Full Connected 2 16 parameter 32 parameter 64 parameter

Dropout 2 0.5 0.5 0.5

Full Connected 3, Softmax

2 parameter 2 parameter 2 parameter

Tabel 2.1. Pembagian Arsitektur CNN Arsitektur Convolutional Neural Networks

Eksperimen yang dilakukan sama dengan yang dilakukan penelitian [6] yaitu membagi arsitektur CNN menjadi 3 bagian, antara lain arsitektur kecil, arsitektur sedang, dan arsitektur besar. Lalu, hasil akurasi dibandingkan antara satu arsitektur CNN dengan arsitektur CNN yang lain. Proses pelatihan menggunakan 40 iterasi atau epoch. Pembagian arsitektur CNN dapat dilihat pada Tabel 2.1.

Total Parameter 443.674 2.270.402 9.080.194

Pada Tabel 2.1, semua arsitektur CNN memiliki 3 lapisan konvolusi (dengan tambahan relu dan max pooling), 3 lapisan fully connected (FC), 2 lapisan dropout, dan softmax sebagai penggolong/pengkategori. Relu digunakan dalam arsitektur ini mengingat peforma relu lebih baik dibandingkan dengan fungsi aktivasi tanh [6]. Dropout perlu digunakan agar hasil dari pelatihan tidak overfitting [2]. Banyaknya jumlah parameter ditentukan dari banyaknya neuron pada lapisan full connected dan jumlah filter pada lapisan konvolusi sehingga total neuron yang terbanyak dihasilkan oleh arsitektur CNN besar.

Pada arsitektur CNN kecil, lapisan konvolusi 3 dan max pooling 3 dikosongkan agar menjadi sederhana. Arsitektur CNN kecil menggunakan 8 jumlah filter dengan ukuran 5x5 dan ukuran max pooling 3x3 di lapisan hidden pertama sampai lapisan hidden yang kedua. Arsitektur CNN sedang menggunakan 16 jumlah filter dengan ukuran 3x3 dan ukuran max pooling 2x2 di lapisan hidden pertama sampai lapisan hidden yang ketiga. Arsitektur CNN sedang menggunakan 32 jumlah filter dengan ukuran 3x3 dan ukuran max pooling 2x2 di lapisan hidden pertama sampai lapisan hidden yang ketiga. Pembandingan arsitektur CNN di atas memiliki pola jumlah filter dua kali lipat dari arsitektur CNN yang lebih kecil dan ukuran filter serta max pooling yang berbeda antara arsitektur CNN kecil dan arsitektur CNN yang lainnya untuk percobaan yang mengikuti pola arsitektur CNN Babuska et al [6]. Visualisasi arsitektur CNN kecil dapat dilihat pada Gambar 2.4.

(5)

3. HASIL DAN PEMBAHASAN

(i) (ii) (iii)

Peforma Akurasi Validasi Terbaik Arsitektur CNN

Hasil percobaan menggunakan tiga model arsitektur CNN menghasilkan akurasi untuk mengetahui peforma dari bobot yang sudah diperbarui selama 40 epoch. Hasil percobaan selama 40 epoch divisualisasikan pada Gambar 3.1.

Gambar 3.1

(i) Peforma Arsitektur CNN Besar (ii) Peforma Arsitektur CNN Sedang (iii) Peforma Arsitektur CNN Kecil

Pada Gambar 3.1, garis bewarna biru adalah loss atau tingkat error, sedangkan garis bewarna orange adalah akurasi. Nilai akurasi validasi arsitektur CNN besar, sedang, dan kecil pada epoch yang ke- 40 adalah masing-masing 95%, 93,75%, dan 95%. Tingkat error arsitektur CNN besar, sedang, dan kecil pada epoch yang ke-40 adalah masing-masing 1,92%, 5,63%, dan 11,6%. Peforma arsitektur CNN besar dan sedang lebih stabil dibandingkan dengan peforma arsitektur CNN kecil baik pada peforma akurasi dan tingkat error. Hal tersebut dapat dilihat pada epoch yang ke-4, ke-12, dan ke-28 dari arsitektur CNN kecil mengalami penurunan akurasi yang drastis. Peforma akurasi validasi dan tingkat error pada epoch yang ke-40 dapat disimpulkan bahwa nilai akurasi validasi tertinggi dan tingkat error terendah dihasilkan oleh arsitektur CNN besar.

Gambar 3.2

Pada Gambar 3.2, setiap epoch dalam proses pelatihan menyimpan hasil akurasi validasi yang terbaik dalam bentuk bobot dengan format file h5. Hasil akurasi validasi yang terbaik ada di dalam kotak bewarna biru. Model arsitektur CNN besar memiliki nilai akurasi validasi yang terbaik pada epoch ke-23 sebesar 96,25% dan tingkat error sebesar 10,35%. Model arsitektur CNN sedang memiliki nilai akurasi validasi yang terbaik pada epoch ke-35 sebesar 95,6% dan tingkat error sebesar 10,1%. Model arsitektur CNN kecil memiliki nilai akurasi validasi yang terbaik pada epoch ke-30 sebesar 95,6% dan tingkat error sebesar 22,5%. Bobot yang ada di kotak biru digunakan untuk menguji data pengujian yang berjumlah 200. Data pengujian terdiri dari 100 data citra pengendara sepeda motor dan 100 data citra bukan pengendara sepeda motor.

(6)

Arsitektur CNN

TP FN FP TN Precision Recall F1-Score Akurasi

Besar 92 8 6 94 0.939 0.958 0.949 0.93

Sedang 92 8 8 92 0.92 0.92 0.92 0.92

Hasil Pengujian Bobot Arsitektur CNN Besar terhadap Data Testing

Klasifikasi menggunakan Convolutional Neural Networks mampu menangani fitur yang kompleks seperti pengendara sepeda motor dan bukan pengendara sepeda motor. Nilai akurasi validasi arsitektur CNN besar, sedang, dan kecil pada epoch ke-40 adalah masing-masing 95%, 93,75%, dan 95%

dengan tingkat error masing-masing 1,92%, 5,63%, dan 11,6%. Nilai akurasi validasi arsitektur CNN besar, sedang, dan kecil terhadap peforma terbaik adalah masing-masing 96,25%, 95,6%, dan 95,6%.

Peforma arsitektur CNN besar dan sedang lebih stabil dibandingkan dengan peforma arsitektur CNN kecil.

Pada tahap pengujian, nilai akurasi dan f1-score diperoleh untuk mengevaluasi bobot yang sudah dilatih. Nilai akurasi dan f1-score tertinggi diperoleh dari model arsitektur CNN besar dengan nilai sebesar masing-masing 94,9% dan 93%. Dengan kata lain, arsitektur CNN yang lebih besar memiliki hasil akurasi yang lebih baik daripada arsitektur yang lebih kecil.

Saran untuk pengembangan penelitian selanjutnya adalah menambahkan jumlah sampel data citra pengendara sepeda motor, memodifikasi arsitektur CNN menjadi lebih kompleks sampai menghasilkan nilai akurasi yang lebih baik, dan menggunakan warna selain RGB.

Tabel 3.1 Hasil Pengujian Bobot Arsitektur CNN

Pengujian terhadap bobot arsitektur CNN besar, sedang, dan kecil menghasilkan nilai True Positive (TP), False Negative (FN), False Positive (FP), True Negative (TN), precision, recall, f1-score, dan akurasi dapat dilihat pada Tabel 3.1

Gambar 3.3

Kecil 95 5 12 88 0.888 0.95 0.917 0.915

Dari Tabel 3.1, hasil pengujian membuktikan bahwa nilai f1-score dan akurasi dari arsitektur CNN besar merupakan yang tertinggi, yaitu masing-masing sebesar 94,9% dan 93%. Contoh cuplikan hasil pengujian bobot arsitektur CNN besar dapat dilihat pada Gambar 3.3. Gambar yang berada di dalam kotak biru merupakan hasil TP, sedangkan gambar yang berada di dalam kotak biru muda merupakan hasil prediksi yang TN. Gambar yang berada di dalam kotak merah merupakan hasil FN dan gambar yang berada di dalam kotak kuning merupakan hasil prediksi yang FP.

4. PENUTUP

KESIMPULAN DAN SARAN

(7)

5. DAFTAR PUSTAKA

[1] B. P. Statistik, “Perkembangan Jumlah Kendaraan Bermotor Menurut Jenis tahun 1987-2013,”

2014. [Online]. Available: https://www.bps.go.id/linkTabelStatis/View/id/1413.

[2] A. Krizhevsky, I. Sutskever, and G. E. Hinton, “ImageNet Classification with Deep Convolutional Neural Networks,” 2012, pp. 1–9.

[3] A. Karpathy, “CS231n Convolutional Neural Networks for Visual Recognition.” [Online].

Available: http://cs231n.github.io/convolutional-networks/.

[4] Y. LeCun et al., “Backpropagation Applied to Handwritten Zip Code Recognition,” 1989, p. Vol.

1, no. 4, pp. 541–551.

[5] D. Molin, “Pedestrian Detection Using Convolutional Neural Networks,” Linkoping University, 2015.

[6] R. Babuska and B. De Schutter, “Deep Convolutional Neural Networks for Detection of Rail Surface Defects,” 2016, pp. 2584–2589.

[7] F.-F. Li, A. Karpathy, and J. Johnson, “Backpropagation and Neural Networks,” 2016. [Online].

Available: http://cs231n.stanford.edu/slides/2016/winter1516_lecture4.pdf.

[8] Y. Lecun, L. Bottou, G. B. Orr, and K.-R. Muller, “Efficient BackProp,” in Neural Networks:

Tricks of the trade, 1998.

(8)

<< Halaman ini sengaja dikosongkan >>

Referensi

Dokumen terkait

Kegiatan dan pelaksanaan proyek terdiri dari bermacam proses dan prosedur yang harus diselenggarakan bersama antara pihak kontraktor, konsultan dan stakeholder

Global governance merupakan tatanan politik yang berkembang sebagai respon terhadap globalisasi atau, lebih khusus lagi, merupakan mekanisme atau sarana institusional bagi

Hasil pendugaan model logit untuk faktor-faktor yang memengaruhi kesejahteraan nasabah yang telah melakukan pembiayaan di BMT menunjukkan tiga variabel yang

Barang Milik/Kekayaan Negara Di Lingkungan Departemen Pendidikan Nasional 7. Surat Keputusan Rektor No. 075/SK/2005 Tanggal 30 Mei 2005 Tentang Pemberhentian dan

Pendampingan Kepatuhan Hukum bertujuan agar warga masyarakat dapat memahami dan berperilaku sesuai dengan norma; hukum dan memiliki dokumen pribadi yang harus

4 Jampel Wacana Buku pegangan Majalah Surat kabar Kaset Mampu mengungkap-kan pikiran, perasaan dan keinginan secara lisan dalam bercerita tentang pengalaman, menyampai-kan

Berdasarkan uraian tersebut di atas jelaslah bahwa banyak faktor yang mendukung minat usaha seorang wirausahawan, sehingga dalam mengembangkan suatu usaha seorang

• Keamanan pada Webserver dapat ditingkatkan dengan pengawasan yang rutin, sehingga ketika ada serangan atau penyusupan dapat diantisipasi dengan cepat, seperti yang telah