Sistem Hitung Kendaraan Berdasarkan Jenis Menggunakan Metode Background Subtraction
on
JITTER- Jurnal Ilmiah Teknologi dan Komputer Vol. 1, No. 2 Desember 2020
Sistem Hitung Kendaraan Berdasarkan Jenis Menggunakan Metode Background Subtraction
Laurensius Adi Kurniawana1, I Putu Agung Bayupatia2, Kadek Suar Wibawaa3 aProgram Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana Bukit Jimbaran, Bali, Indonesia, Telp. (0361) 701806
e-mail: 1[email protected], 2[email protected], 3[email protected]
Abstrak
Perhitungan jumlah kendaraan menjadi pekerjaan yang memerlukan konsentrasi dan waktu seiring dengan bertambahnya jumlah kendaraan yang beredar. Perhitungan kendaraan secara manual oleh manusia dalam jangka waktu lama dapat menimbulkan kesalahan perhitungan dikarenakan fokus manusia dapat berkurang apabila melakukan suatu hal dalam waktu yang lama. Diperlukan sistem hitung kendaraan yang bekerja secara otomatis untuk membantu manusia dalam menghitung jumlah kendaraan. Penelitian ini menawarkan sistem yang dapat menghitung jumlah kendaraan berdasarkan jenis secara otomatis menggunakan Metode Background Subtraction. Klasifikasi kendaraan dibagi menjadi 3 yaitu sepeda motor, mobil, dan bus. Klasifikasi kendaraan ditentukan dari keliling Region of Interest dimana keliling dalam satuan pixel. Pengujian yang dilakukan pada 3 video data uji menghasilkan perhitungan yang akurat pada data uji video 1, tetapi pada pengujian video 2 dan video 3 menunjukkan adanya perbedaan jumlah antara hasil perhitungan manual dan perhitungan sistem pada kendaraan sepeda motor. Kesalahan perhitungan jumlah sepeda motor terjadi dikarenakan objek sepeda motor memiliki ukuran kecil dan cenderung berwarna gelap sama seperti warna jalan sehingga tidak terdeteksi sebagai objek kendaraan karena dianggap sebagai background.
Kata kunci: Hitung kendaraan, Background Subtraction, Operasi morfologi
Abstract
Counting the number of vehicles becomes a job that requires concentration and time as the number of vehicles increases. Manually counting vehicles by humans for a long period of time can cause calculation errors because human focus can be decreased if do something for a long time. A vehicle counting system is needed to works automatically to assist humans in counting the number of vehicles. This research offers a system that can calculate the number of vehicles based on type automatically using the Background Subtraction Method. The classification of vehicles is divided into 3, namely motorbikes, cars, and buses. The vehicle classification is determined from the circumference of the Region of Interest where the circumference is in pixels. Tests carried out on 3 video test data resulted in accurate counting on video 1, but on video 2 and video 3 testing showed a difference in the amount between manual counting and system counting results on the motorbike. The error counting the number of motorbikes occurs because the object of the motorbike is small and tends to be the same dark color as the road color so that it is not detected as a vehicle object because it is considered as the background.
Keywords : Vehicle counting, Background Subtraction, Morphology operation
Penggunaan kendaraan berkembang pesat dewasa ini terutama di kota-kota dengan kesibukan yang tinggi, meningkatnya mobilitas masyarakat menjadi salah satu faktor yang mempengaruhi peningkatan jumlah kendaraan yang beredar. Menurut data dari Badan Pusat Statistik perkembangan jumlah kendaraan bermotor di Indonesia dari tahun ke tahun semakin bertambah, data terakhir yang diterbitkan pada tahun 2018 menunjukkan jumlah kendaraan bermotor yang terdiri dari mobil penumpang, bis, mobil barang, dan sepeda motor mencapai 146 juta kendaraan [1].
Peningkatan jumlah kendaraan menimbulkan permasalahan baru seperti kekurangan lahan parkir, kemacetan, dan meningkatnya resiko kecelakaan [2]. Analisis kepadatan kendaraan di lokasi strategis seperti persimpangan jalan, tempat parkir umum, dan ruas jalan yang ramai dapat dilakukan dengan mengamati dan menghitung jumlah kendaraan setiap harinya. Proses pengamatan dan perhitungan kendaraan secara manual oleh manusia dalam jangka waktu lama dapat menimbulkan kesalahan perhitungan dikarenakan fokus manusia dapat berkurang apabila melakukan suatu hal dalam waktu yang lama. Dibutuhkan sistem yang dapat membantu untuk mengawasi dan menghitung kendaraan secara otomatis pada video yang diambil dari kamera CCTV.
Sistem pengenalan sekaligus menghitung kendaraan secara otomatis merupakan tantangan dalam bidang pengolahan citra. Seiring dengan perkembangan teknologi Computer Vision muncul metode-metode baru yang dapat dimanfaatkan untuk mendeteksi objek pada video seperti Metode Background Subtraction yang mendeteksi objek dengan cara memisahkan objek bergerak dari latar belakang statis dan Metode Haar like features yang diperkenalkan oleh Viola dan Jones [3]
Penelitian terkait sistem hitung kendaraan pernah dilakukan dengan memanfaatkan Metode Haar like features [4], proses training dilakukan menggunakan citra objek mobil dan citra negatif yaitu citra yang tidak terdapat mobil di dalamnya seperti jalan tanpa mobil, pepohonan dan tiang lampu penerangan jalan. Objek kendaraan yang terdeteksi saat proses pengenalan ditandai dengan persegi di sekitar objek. Penelitian lain [5] melakukan klasifikasi kendaraan dengan mengekstraksi dua fitur yaitu panjang kendaraan dalam gambar spasial waktu yang sesuai dan korelasi yang dihitung dari matriks tingkat keabuan dari gambar kendaraan di dalam bounding box. Klasifikasi kendaraan dibagi menjadi tiga kategori yaitu kendaraan kecil (mobil), kendaraan sedang (van) dan kendaraan besar (bus dan truk).
Penelitian ini menawarkan sistem yang dapat menghitung jumlah kendaraan berdasarkan jenis secara otomatis menggunakan Metode Background Subtraction. Klasifikasi kendaraan dibagi menjadi 3 yaitu sepeda motor, mobil, dan bus. Hasil perhitungan dapat digunakan sebagai data analisis untuk memperkirakan perluasan jalan, penambahan area parkir, dan rekayasa lalu lintas.
Tahapan yang dilakukan dalam penelitian ini dilakukan dalam enam tahap seperti dijabarkan melalui diagram alir yang dapat dilihat pada Gambar 1.
Gambar 1 menampilkan tahapan penelitian yang dilakukan, penelitian dimulai dengan mendefinisikan masalah berupa cara menghitung kendaraan secara otomatis sesuai 3 jenis kendaraan yaitu sepeda motor, mobil, dan bus. Setelah masalah terdefinisi, dilanjutkan dengan
melakukan studi literatur yang berkaitan dengan pengenalan dan perhitungan kendaraan. Tahap kedua dilakukan pengumpulan data berupa video data uji yang digunakan untuk melakukan uji coba sistem. Tahap ketiga yaitu melakukan analisis metode-metode yang dapat digunakan dalam penelitian, dilanjutkan dengan merancang sistem menggunakan metode yang dipilih yaitu Metode Background Subtraction. Tahap keempat dilakukan uji coba sistem untuk mengetahui tingkat akurasi dan keberhasilan sistem dalam menghitung kendaraan pada video data uji. Setelah tahap uji coba sistem, dilakukan evaluasi hasil uji coba berupa perhitungan akurasi sistem dalam menghitung kendaraan pada video sesuai jenis yang sudah ditentukan. Tahap terakhir yaitu mengambil kesimpulan dan memberi saran terhadap penelitian yang dilakukan.
Penelitian ini menerapkan beberapa proses yang dilakukan untuk menghasilkan output yang diinginkan, proses yang dilakukan dalam penelitian ditampilkan dalam bentuk diagram alir pada Gambar 2.
Gambar 2. Diagram Alir Sistem
Gambar 2 merupakan diagram alir sistem yang menampilkan proses-proses yang dilakukan sistem untuk dapat menghitung kendaraan. Proses dimulai dengan membaca input file video yang dipilih, lalu dilakukan proses ekstraksi fitur dengan Metode Background Subtraction menggunakan Subtractor MOG 2 pada tiap frame dalam video. Proses dilanjutkan dengan melakukan operasi morfologi opening dan closing untuk menghilangkan noise menggunakan library dari OpenCV. Ketika kendaraan terdeteksi maka dibuat Region of Interest (ROI) di sekitar objek kendaraan dengan bentuk persegi atau persegi panjang. Setelah ROI kendaraan terbentuk maka keliling ROI kendaraan akan dihitung saat kendaraan melewati garis deteksi untuk mengetahui klasifikasi kendaraan. Klasifikasi kendaraan dibagi menjadi tiga yaitu sepeda motor, mobil dan truk/bus. Klasifikasi ditentukan dari keliling ROI yang dihitung pada proses sebelumnya dimana keliling dalam satuan pixel. Proses dilakukan berulang selama frame video masih ada, jika frame video sudah habis maka proses dihentikan dan program selesai.
OpenCV (Open Source Computer Vision) adalah library dari fungsi pemrograman untuk computer vision. Computer Vision adalah salah satu cabang dari bidang ilmu pengolahan citra (Image Processing) yang memungkinkan komputer dapat melihat seperti manusia, dengan
kemampuan tersebut computer vision dapat dikembangkan untuk berbagai tujuan yang lebih luas seperti pengenalan wajah dan object tracking [6].
OpenCV menggunakan lisensi BSD, sehingga OpenCV baik untuk penggunaan akademis maupun komersial [7]. OpenCV ditulis dalam bahasa pemrograman C dan C++ serta dapat berjalan pada sistem operasi Linux, Windows dan Mac OS dengan berbagai bahasa pemrograman yang didukung salah satunya adalah Python. OpenCV dibuat dengan fokus pada aplikasi realtime untuk berbagai kebutuhan dengan lebih dari 500 fungsi [8].
-
3.2 Background Subtraction
Background subtraction adalah salah satu langkah preprocessing dalam aplikasi Computer Vision. Background subtraction merupakan metode untuk memisahkan latar depan atau foreground yang terdapat objek bergerak dari latar belakang atau background gambar. Hasil ekstraksi berupa objek pada foreground digunakan untuk proses lebih lanjut seperti object recognition dan object tracking.
Background Subtractor MOG2 (Mixture of Gaussians 2) merupakan pengembangan dari algoritma background subtraction yang sudah ada sebelumnya seperti algoritma MOG dan GMG. Salah satu fitur penting dari algoritma background subtractor MOG2 adalah pemilihan jumlah distribusi gaussian yang tepat untuk setiap piksel sehingga MOG2 menghasilkan representasi kompleksitas warna yang lebih baik di setiap frame. Algoritma MOG2 memiliki fitur untuk mendeteksi bayangan, jika fitur ini diaktifkan akan mengurangi kecepatan proses [9].
(a)
(b)
Gambar 3. (a) Frame Asli (b) Frame Hasil MOG2
Gambar 3 (a) merupakan salah satu frame pada video dan (b) merupakan hasil penerapan algoritma MOG2 pada frame tersebut. Dapat dilihat pada Gambar 3 (b) bayangan dari objek kendaraan ditandai dengan warna abu-abu, masking pada objek kendaraan tetap dilakukan sama seperti pada algoritma MOG. Posisi objek bergerak ditentukan dengan membandingkan intensitas piksel frame yang sedang diproses dengan beberapa frame sebelumnya [10]. Objek ditandai dengan masking sesuai bentuk objek dan latar belakang statis atau tidak bergerak dianggap sebagai background.
Operasi morfologi adalah teknik pengolahan citra berdasarkan bentuk segmen citra untuk memperbaiki hasil segmentasi citra. Operasi morfologi dapat diaplikasikan pada citra biner dan citra grayscale.
Dilasi adalah teknik untuk memperbesar segmentasi objek (citra biner) dengan menambah lapisan disekeliling objek dengan mengubah nilai piksel 0 disekitar objek menjadi bernilai 1. Dilasi dapat menggabungkan segmentasi objek yang bertetangga menjadi satu segmentasi objek apabila objek yang bertetangga jaraknya berdekatan [11].
Erosi atau pengikisan adalah kebalikan dari dilasi, erosi merupakan teknik yang bertujuan untuk memperkecil atau mengikis tepi segmentasi objek. Erosi bekerja dengan mengubah nilai
piksel 1 yang bertetangga dengan nilai piksel 0 menjadi bernilai piksel 0, hal ini berdampak pada hilangnya tepi objek segmentasi [11].
-
3.3.3 Opening
Opening adalah gabungan proses erosi lalu dilanjutkan dengan dilasi. Operasi morfologi opening dimulai dengan melakukan erosi pada citra kemudian hasil tersebut kembali dilakukan dilasi. Opening dapat digunakan untuk menghilangkan objek-objek kecil dan kurus serta dapat membuat tepi citra lebih halus [12].
-
3.3.4 Closing
Closing merupakan kebalikan dari operasi opening, dimana citra terlebih dahulu dilakukan dilasi yang kemudian dilanjutkan dengan erosi. Operasi closing bertujuan untuk mengisi lubang kecil pada objek dan menggabungkan objek yang berdekatan [12].
Hasil dan Pembahasan menjelaskan hasil pengujian sistem hitung kendaraan berdasarkan jenis pada video data uji. Video data uji terdiri dari 3 video yang direkam dengan posisi menghadap ke jalan pada letak yang lebih tinggi, salah satu frame dalam video data uji ditampilkan pada Gambar 4.
-
Gambar 4. Salah Satu Frame Video Data Uji
Gambar 4 menampilkan salah satu frame dalam video data uji yang menggambarkan posisi peletakan kamera saat proses merekam video. Video direkam pada posisi tersebut karena pergerakan objek kendaraan dapat terlihat dengan jelas sehingga proses background subtraction dapat bekerja lebih maksimal.
Gambar 5. Ekstraksi fitur dengan Metode Background Subtraction MOG 2
Gambar 5 menampilkan hasil ekstraksi fitur pada salah satu frame dalam video data uji, proses ekstraksi fitur dilakukan secara berulang pada tiap frame video. Objek bergerak ditandai dengan masking sesuai bentuk objek dan bayangan objek terdeteksi ditandai dengan warna abu-abu. Masih terdapat noise disekitar objek yang terdeteksi sehingga perlu dilakukan operasi morfologi untuk memperbaiki hasil segmentasi citra.
-
Gambar 6. Operasi morfologi Opening dan Closing
Gambar 6 menampilkan hasil operasi morfologi berupa opening dan closing pada frame hasil ekstraksi fitur. Noise dan bayangan yang ada pada hasil ekstraksi fitur dihilangkan pada proses ini. Operasi opening lebih dulu dilakukan untuk menghilangkan noise lalu dilakukan operasi closing untuk menggabungkan objek yang berdekatan.
Gambar 7. Region of Interest Objek Terdeteksi
Hasil operasi morfologi digunakan untuk membentuk Region of Interest (ROI) di sekitar objek yang terdeteksi seperti ditampilkan pada Gambar 7. Klasifikasi kendaraan ditentukan dari keliling ROI, maka dilakukan perhitungan keliling ROI kendaraan saat kendaraan melewati garis deteksi (garis biru) dimana keliling dalam satuan pixel.
Tabel 1. Hasil Pengujian
Klasifikasi |
Hasil Hitung Video 1 |
Hasil Hitung Video 2 |
Hasil Hitung Video 3 | |||
Manual |
Sistem |
Manual |
Sistem |
Manual |
Sistem | |
Sepeda Motor |
16 |
16 |
2 |
4 |
31 |
28 |
Mobil |
10 |
10 |
30 |
30 |
2 |
2 |
Bus |
1 |
1 |
4 |
4 |
0 |
0 |
Hasil pengujian 3 video data uji ditampilkan pada Tabel 1 dengan kelas kendaraan sebanyak 3 kelas yaitu sepeda motor, mobil, dan bus. Pengujian dilakukan dengan menghitung jenis kendaraan secara manual dan menggunakan sistem untuk dapat membandingkan jumlah kendaraan sebenarnya dan hasil perhitungan sistem.
Gambar 8. Grafik Hasil Pengujian
Gambar 8 menampilkan grafik hasil pengujian yang dilakukan. Hasil pengujian pada video 1 menunjukkan jumlah kendaraan hasil perhitungan manual dan perhitungan sistem menghasilkan jumlah yang sama disetiap kelas kendaraan. Hal ini menandakan perhitungan kendaraan menggunakan sistem mampu menghasilkan perhitungan yang akurat pada data uji video 1. Pengujian pada video 2 dan video 3 menunjukkan adanya perbedaan jumlah antara hasil perhitungan manual dan perhitungan sistem pada jenis kendaraan sepeda motor. Perhitungan manual pada video 2 menghasilkan jumlah sepeda motor 2 tetapi perhitungan sistem menghasilkan jumlah sepeda motor 4. Pada video 3 perhitungan manual menghasilkan jumlah sepeda motor 31 tetapi perhitungan sistem menghasilkan jumlah sepeda motor 28. Kesalahan perhitungan pada jenis kendaraan sepeda motor terjadi dikarenakan objek sepeda motor memiliki ukuran kecil sehingga dapat terpisah menjadi 2 ROI ataupun tidak dianggap objek karena sepeda motor berwarna gelap sama seperti warna jalan sehingga dianggap sebagai background.
Sistem perhitungan kendaraan secara otomatis mengambil peran penting di era otomatisasi untuk membantu manusia mengawasi dan menghitung kendaraan secara otomatis pada input video. Penelitian ini melakukan penghitungan jumlah kendaraan pada 3 jenis kendaraan yaitu sepeda motor, mobil, dan bus. Klasifikasi kendaraan ditentukan dari keliling ROI dimana keliling dalam satuan pixel. Metode Background Subtraction MOG2 digunakan untuk melakukan ekstraksi fitur pada input video sehingga objek kendaraan dan background dapat dipisahkan lalu operasi morfologi opening dan closing dilakukan pada tiap frame hasil ekstraksi fitur untuk menghilangkan noise. Pengujian yang dilakukan pada 3 video data uji menghasilkan perhitungan yang akurat pada data uji video 1, tetapi pada pengujian video 2 dan video 3 menunjukkan adanya perbedaan jumlah antara hasil perhitungan manual dan perhitungan sistem pada jenis kendaraan sepeda motor. Kesalahan perhitungan jumlah sepeda motor terjadi dikarenakan objek sepeda motor memiliki ukuran kecil dan cenderung berwarna gelap sama seperti warna jalan sehingga tidak terdeteksi sebagai objek kendaraan karena dianggap sebagai background.
Daftar Pustaka
-
[1] BPS, “Perkembangan Jumlah Kendaraan Bermotor Menurut Jenis, 1949-2018,” 2018.
[Online]. Available: https://www.bps.go.id/linkTableDinamis/view/id/1133. [Accessed: 05-Mar-2020].
-
[2] M. A. Manzoor, Y. Morgan, and A. Bais, “Real-Time Vehicle Make and Model
Recognition System,” Mach. Learn. Knowl. Extr., vol. 1, no. 2, pp. 611–629, 2019.
-
[3] P. Viola and M. Jones, “Rapid object detection using a boosted cascade of simple
features,” in Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. CVPR 2001, 2001, vol. 1, pp. I-511-I–518.
-
[4] S. Choudhury, S. P. Chattopadhyay, and T. K. Hazra, “Vehicle detection and counting using haar feature-based classifier,” 2017 8th Ind. Autom. Electromechanical Eng. Conf. IEMECON 2017, pp. 106–109, 2017.
-
[5] S. Kamkar and R. Safabakhsh, “Vehicle detection, counting and classification in various conditions,” IET Intell. Transp. Syst., vol. 10, no. 6, pp. 406–413, 2016.
-
[6] I. P. P. Andika, I. P. A. Bayupati, and N. K. A. Wirdiani, “Rancang Bangun Aplikasi
Pendeteksi Tipe Dan Nilai Resistor Berbasis Android,” Lontar Komput. J. Ilm. Teknol. Inf., vol. 6, no. 1, pp. 61–72, 2015.
-
[7] A. Andrew, J. L. Buliali, and A. Y. Wijaya, “Deteksi Kecepatan Kendaraan Berjalan di Jalan Menggunakan OpenCV,” J. Tek. ITS, vol. 6, no. 2, pp. 366–371, 2018.
-
[8] G. R. Bradski and A. Kaehler, Learning OpenCV - computer vision with the OpenCV library: software that sees. 2008.
-
[9] L. M. and A. Cunha, “A Comparison between Background Modelling Methods for Vehicle
Segmentation in Highway Traffic Videos L. A. Marcomini, A. L. Cunha,” Preprint, 2018.
-
[10] C. Kim, J. Lee, T. Han, and Y. M. Kim, “A hybrid framework combining background subtraction and deep neural networks for rapid person detection,” J. Big Data, vol. 5, no. 1, 2018.
-
[11] A. Susanto, “Matematika Citra Digital Untuk Ekstraksi Area Plat Nomor,” J. Pseudocode, vol. VI, no. 1, pp. 49–57, 2019.
-
[12] D. Sundararajan, “Morphological Image Processing,” in Digital Image Processing: A Signal Processing and Algorithmic Approach, Singapore: Springer Singapore, 2017, pp. 217–256.
Discussion and feedback