menghitung jumlah kendaraan dari file video (avi

14
MENGHITUNG JUMLAH KENDARAAN DARI FILE VIDEO (AVI) Bagus Priambodo Fakultas Ilmu Komputer, Universitas Mercu Buana, Indonesia Email : [email protected] Abstrak Dalam penelitian ini, dikembangkan aplikasi untuk menghitung kendaraan yang melewati loket pembayaran jalan tol secara otomatis dari hasil rekaman video (AVI). Pengembangan aplikasi ini menggunakan alat bantu software Visual C++ 6.0. Dari hasil implementasi dan ujicoba, dapat disimpulkan bahwa aplikasi ini dapat berfungsi sebagaimana mestinya. Hanya saja keberhasilan system penghitungan ini sangat bergantung pada dua parameter yaitu pertama parameter batas toleransi selisih nilai antara pixel frame dengan pixel frame patokan dan kedua adalah parameter batas maximum jumlah pixel yang melewati batas toleransi. Diharapkan aplikasi ini dapat menjadi pemicu pengembangan aplikasi pencacah kendaraan secara real time dan cerdas, artinya dapat menentukan parameter dengan otomatis Kata kunci : C++, Pengenalan Pola, Pengolahan Citra, Video I. PENDAHULUAN PT. JASAMARGA (Persero) adalah BUMN yang bertugas mengelola jaringan jalan tol di Indonesia dan memelihara seluruh ruas jalan tol agar selalu berfungsi sebagaimana mestinya. Ada beberapa layanan yang diberikan kepada publik yang berhubungan dengan jalan tol, diantaranya adalah: a. layanan transaksi, seperti layanan berlangganan tol. b. layanan lalu-lintas, seperti penderekan, ambulan dan patroli. c. layanan pemeliharaan jalan tol.

Upload: mercubuana

Post on 13-May-2023

1 views

Category:

Documents


0 download

TRANSCRIPT

MENGHITUNG JUMLAH KENDARAAN DARI FILE VIDEO (AVI)

Bagus Priambodo

Fakultas Ilmu Komputer, Universitas Mercu Buana, Indonesia

Email : [email protected]

Abstrak Dalam penelitian ini, dikembangkan aplikasi untuk menghitung kendaraan yang

melewati loket pembayaran jalan tol secara otomatis dari hasil rekaman video

(AVI). Pengembangan aplikasi ini menggunakan alat bantu software Visual C++

6.0. Dari hasil implementasi dan ujicoba, dapat disimpulkan bahwa aplikasi ini

dapat berfungsi sebagaimana mestinya. Hanya saja keberhasilan system

penghitungan ini sangat bergantung pada dua parameter yaitu pertama

parameter batas toleransi selisih nilai antara pixel frame dengan pixel frame

patokan dan kedua adalah parameter batas maximum jumlah pixel yang

melewati batas toleransi. Diharapkan aplikasi ini dapat menjadi pemicu

pengembangan aplikasi pencacah kendaraan secara real time dan cerdas,

artinya dapat menentukan parameter dengan otomatis

Kata kunci : C++, Pengenalan Pola, Pengolahan Citra, Video

I. PENDAHULUAN

PT. JASAMARGA (Persero) adalah BUMN yang bertugas mengelola jaringan

jalan tol di Indonesia dan memelihara seluruh ruas jalan tol agar selalu

berfungsi sebagaimana mestinya. Ada beberapa layanan yang diberikan

kepada publik yang berhubungan dengan jalan tol, diantaranya adalah:

a. layanan transaksi, seperti layanan berlangganan tol.

b. layanan lalu-lintas, seperti penderekan, ambulan dan patroli.

c. layanan pemeliharaan jalan tol.

Namun, selain layanan-layanan yang diberikan kepada publik, PT.

JASAMARGA sebagai suatu perusahaan juga tidak lepas dalam hal kegiatan

manajerial yang sifatnya internal. Ada masalah internal yang harus di kelola

salah satunya adalah penghitungan jumlah kendaraan yang melewati loket

pembayaran jalan tol. Pada dasarnya, bila prosedur dan pekerjaan dijalankan

sebagaimana mestinya, jumlah kendaraan yang melewati loket dapat tercatat

sebagaimana mestinya. Namun, seringkali di lapangan terjadi ketidaksesuaian

antara jumlah kendaraan yang lewat dengan yang tercatat di loket. Salah satu

usaha yang telah dilakukan oleh PT. JASAMARGA adalah merekam kendaraan

yang melewati loket pembayaran dengan menggunakan kamera yang

diletakkan pada fixed position (yang telah ditetapkan posisinya), dan

menghitung secara manual dengan melihat hasil rekaman kamera tersebut.

Namun, keterlibatan manusia dalam sistem penghitungan manual seperti ini

ternyata tidak memberikan hasil seperti yang diharapkan. Faktor human error,

itulah yang menyebabkan hasil penghitungan kendaraan lewat dengan yang

tercatat di loket pembayaran tidak sama.

Untuk itu pada penelitian ini, dikembangkan satu cara untuk mengatasi masalah

tersebut diatas dengan membuat sebuah program atau aplikasi menghitung

jumlah kendaraan lewat secara otomatis dari file video hasil rekaman di loket

pembayaran jalan tol.

II. METODE

Computer vision terdiri dari teknik-teknik untuk mengestimasi ciri-ciri obyek di

dalam citra, pengukuran ciri yang berkaitan dengan geometri obyek, dan

menginterpretasi informasi geometri tersebut. Persamaan berikut penting untuk

diingat dalam bidang computer vision.

Vision = Geometry + Measurement + Interpretation

Proses-proses di dalam computer vision dapat dibagi menjadi tiga aktivitas,

yaitu :

1. Memperoleh atau mengakuisisi citra digital.

2. Melakukan teknik komputasi untuk memproses atau memodifikasi

data citra (operasi-operasi pengolahan citra).

3. Menganalisis dan menginterpretasi citra dan menggunakan hasil

pemrosesan untuk tujuan tertentu, misalnya memandu robot,

mengontrol peralatan, memantau proses manufaktur, dan lain-lain.

Bitmap adalah array bit dua dimensi yang berisi data yang berhubungan

dengan pixel dari sebuah citra atau image (untuk selanjutnya citra akan disebut

image). Ketika gambar dari dunia nyata di tangkap dalam bentuk bitmap,

gambar tersebut akan di pecah menjadi grid dan pixel. Nilai dari masing-masing

pixel dalam bitmap menunjukan rata-rata warna dari gambar. Monochrome

bitmap memerlukan hanya satu bit per pixel, gray shade atau bitmap berwarna

membutuhkan perkalian bits per pixel.

Device independent bitmap (DIB) diperkenalkan di Windows 3.0 untuk

memberikan format berkas image yang sangat diperlukan dan cocok untuk

pertukaran. Sebagaimana diketahui, format berkas image lain seperti .GIF atau

.JPEG, lebih banyak dikenal dan digunakan. Ini dikarenakan format .GIF dan

.JPEG telah dikompresi sehingga berukuran kecil dan secara signifikan dapat

mengurangi waktu pengunduhan. Kebanyakan DIB selalu tak dikompresi. Ini

merupakan keuntungan yang besar. Tidak seperti berkas .GIF dan .JPEG, DIB

secara langsung didukung fungsi Windows API.

Model yang dirancang adalah mengolah masukan frame(DIB) dari AVI yang

telah dipecah, kemudian dilakukan visualisasi proses sistem, dan keluaran

ditampilkan ke user. Dalam menjelaskan sistem yang dirancang, diberikan alur

data sistem dalam bentuk diagram Flow chart dan diagram aliran data, yang

akan lebih dirinci ke dalam level diagram berikutnya.

Perancangan Sistem dengan Flow Chart

Gambar 2.1 Flow Chart Sistem Keseluruhan

Diagram Konteks Perancangan dimulai dengan pembuatan diagram konteks, berupa

penggambaran sistem dari penerapan algoritma penghitungan secara garis

besar.

isiArrayAwal() bKetemu = false

bAwal = true

If !stop

isiArrayNext() jmlPixelBeda = hitungSelisihPixel()

If jml Pixel Beda > = max pixel beda

bKetemu = true jmlMobil++

Tidak

If !bketemu

If bAwal

Ya bKetemu = false

Tidak

Ya

bKetemu = true bAwal = false

Ya

Tidak

Pengguna Sistem Penghitungan

AVI

Jumlah Kendaraan

Gambar 2.2 Diagram Konteks

Diagram Aliran Data Dari diagram Konteks diturunkan Diagram Aliran Data(DAD) Level 0 untuk

penjabaran sistem penghitungan kendaraan.

Gambar 3.4 Diagram Aliran Data Level 0

Gambar 2.3

Kamus Data

• AVI merupakan masukan untuk proses sistem adalah file Audio Video 24 bit.

• State A merupakan hasil perubahan bentuk masukkan dari AVI menjadi

bitmap

• State B merupakan hasil perubahan bentuk state setelah nilai RGB dari

pixel diambil ditaruh dalam tiga buah array awal dan tiga buah array Next.

• State C merupakan hasil penghitungan selisih antara tiga buah array next

dan tiga buah array awal di dapatkan Jumlah selisih warna.

• Angka (Jumlah kendaraan) merupakan hasil penghitungan berupa total

jumlah kendaraan yang berhasil dihitung oleh sistem.

Spesifikasi Proses Sistem menerapkan beberapa proses yang saling berhubungan sehingga akan

membentuk suatu sistem utuh yang diharapkan.

Pengguna

0.1 Fungsi Pecah

AVI

0.2 Fungsi Isi

Array

0.3 Fungsi Beda

0.4 Fungsi

Count Car

AVI

State A

State B

State C

Angka (Jumlah Kendaraan)

Proses pecah AVI menjadi frame-frame bitmap (DIB)

Nomor

Proses

0.1

Masukkan AVI

Keluaran state A

Logika File AVI dipecah menjadi Frame-frame

bitmap (DIB)

Proses isi Array dari nilai RGB bitmap

Nomor

Proses 0.2

Masukkan State A

Keluaran State B

Bitmap diambil Nilai RGB dari

Pixelnya Logika

Lalu nilai RGBnya di masukkan

dalam Array

Proses Fungsi Beda Pixel

Nomor

Proses 0.3

Masukkan State B

Keluaran State C

Masing-masing Nilai dari Array Awal (Patokan) – Array Next

Logika Lalu selisihnya dibandingkan apabila > toleransi maka stace

C (Jumlah Beda) ditambah 1

Proses hitung kendaraan (count car)

Nomor

Proses 0.4

Masukkan State C

Keluaran Angka (Jumlah Kendaraan)

Bandingkan Jumlah Beda frame sekarang dan frame

sebelumnya

Jika masih sama besar atau dalam batas toleransi maka

tidak ada

kendaraan yg lewat

Jika sebelumnya telah terjadi lonjakan nilai atau berada

diluar toleransi maka

perhatikan jika jml Beda mendekati 0 berarti kendaraan

telah lewat

Logika

Kemudian jumlah kendaraan ditambah 1

III. HASIL DAN PEMBAHASAN

Untuk meninjau kinerja atau keberhasilan program dalam menghitung

kendaraan, diambil beberapa potongan frame awal beserta nilai-nilainya.

Uji Kinerja Penghitungan Kendaraan

• Setelah area ditentukan dan penghitungan dimulai akan tampak tampilan

sebagai berikut:

Gambar 2.4 Frame pertama

Perhatikan maximum beda pixel yang dijadikan patokan adalah 600

artinya area awal dan area berikut akan dianggap berbeda jika nilai pixel

beda lebih dari 600. Terlihat semua nilai masih 0.

• Setelah beberapa kali menekan tombol > mulai terlihat ada kendaraan

mendekat pada Area II Berikut, Nilai Pixel Beda pun berubah

Gambar 2.5 Frame ke dua

Nilai Pixel Beda Area(II) berubah menjadi 516 namun masih di bawah

batas ambang toleransi, batas ambang atau Max BedaPixel adalah 600

(lihat pada Gambar 2.5 diatas).

Nilai Pixel Beda Area(I) terlihat masih 0, dan memang tidak terlihat

kendaraan disana.

• Kemudian menekan tombol > lagi, untuk menuju ke frame berikutnya,

perhatikan perubahan yang terjadi.

Gambar 2.6 Frame ke tiga

Pada Area I Berikut terlihat mulai ada kendaraan yang memasuki area, dan

nilai Pixel Beda Area (I) berubah menjadi 282, masih di bawah toleransi.

Jumlah mobil pada Area I masih terlihat 0.

Pada Area II Berikut terlihat kendaraan sudah memasuki area, nilai Pixel

Beda Area (II) melonjak menjadi 3131, artinya frame benar-benar berbeda

dan sudah jauh dari batas ambang (max beda pixel hanya 600).

Jumlah mobil pada area II masih terlihat 0

• Kemudian menekan tombol > kembali untuk menuju ke frame

berikutnya.

Gambar 2.7 Frame ke empat

Pada Area I Berikut terlihat mobil telah memasuki Area I dan nilai Pixel

Beda Area I berubah drastis menjadi 982. Artinya frame awal telah berbeda

dengan frame sekarang karena telah di atas batas toleransi (600). Jumlah

mobil pada Area I masih telihat 0.

Pada Area II Berikut terlihat mobil mulai menjauhi Area II dan nilai Pixel

Beda area II telah turun dari sebelumnya 3131 menjadi 473. Nilai sekarang

sudah berada di bawah toleransi, artinya frame awal dan sekarang dapat

dikatakan sama, sehingga Jumlah mobil Area II bertambah.

Jumlah mobil Area II berubah menjadi 1.

• Tekan tombol >, untuk menuju ke frame berikutnya.

Gambar 2.8 Frame ke lima

Pada Area I Berikut terlihat mobil telah memasuki Area I dan nilai Pixel

Beda Area I berubah drastis menjadi 982. Artinya frame awal telah berbeda

dengan frame sekarang karena telah di atas batas toleransi (600). Jumlah

mobil pada Area I masih telihat 0. Pada Area II Berikut terlihat mobil mulai

menjauhi Area II dan nilai Pixel Beda Area II telah turun dari sebelumnya

3131 menjadi 473. Nilai sekarang sudah berada di bawah toleransi, artinya

frame awal dan sekarang dapat dikatakan sama, sehingga Jumlah mobil

Area II bertambah. Jumlah mobil Area II berubah menjadi 1.

• Kemudian Tekan tombol > lagi untuk menuju ke frame berikutnya

Gambar 2.9 Frame ke enam

Pada Area I Berikut terlihat mobil telah menjauhi Area I dan nilai Pixel Beda

Area I turun menjadi 323. Artinya frame di bawah batas toleransi, sehingga

frame awal dapat dikatakan sama atau kembali ke awal sehingga Jumlah

mobil Area I bertambah. Terlihat jumlah mobil pada Area I sekarang adalah

1.

Pada Area II Berikut terlihat mobil sudah tidak ada dalam area dan nilai

Pixel Beda Area II telah turun kembali menjadi 0, frame sakarang sama

dengan frame awal

Jumlah mobil Area II sekarang adalah 1 (tidak berubah)

• Tekan tombol >, untuk menuju ke frame berikutnya

Gambar 2.10 Frame ke tujuh

Pada Area I Berikut terlihat mobil sudah tidak ada dalam area dan nilai Pixel

Beda Area I telah turun kembali menjadi 0, frame sakarang sama dengan

frame awal.

Jumlah mobil Area I sekarang adalah 1 (tidak berubah)

Pada Area II Berikut terlihat belum ada mobil yang mendekati area II dan

nilai Pixel Beda area II masih 0, frame sakarang sama dengan frame awal

Jumlah mobil Area II sekarang adalah 1 (tidak berubah)

Hasil Kinerja

Dari hasil uji coba beberapa frame, yaitu dari frame awal hingga ada

kendaraan memasuki area dan kendaraan menjauhi area. Terlihat bahwa

sistem mampu membedakan frame awal dan frame berikutnya. Sehingga dapat

dihitung jumlah kendaraan yang melewati area yang telah ditentukan. Namun

penempatan atau pengambilan area yang baik sangat menentukan keakuratan

dari sistem. Juga pemberian batas toleransi yang tepat sangat mempengaruhi

keakuratan dari sistem.

IV. KESIMPULAN Berdasarkan hasil penelitian, dapat disimpulkan bahwa:

1. Sistem dapat menghitung jumlah kendaraan yang melewati loket

pembayaran jalan tol. Berdasarkan hasil rekaman video yang diperoleh

melalui kamera yang telah ditetapkan posisinya, yaitu di atas loket

2. Sistem masih tergantung pada dua buah parameter untuk penghitungan

kendaraan, antara lain :

Parameter batas toleransi selisih nilai antara pixel frame dengan pixel

frame patokan.

Parameter batas maximum jumlah pixel yang melewati batas toleransi.

3. Secara umum sistem ini telah dapat menghitung jumlah kendaraan secara

otomatis.

Kedepan sebaiknya pengembangan sistem mampu menentukan parameter-

parameter toleransi secara otomatis.

V. DAFTAR PUSTAKA

1. Petzold, Charles (1998), Programming Windows, 5th Edition. Microsoft

Press; November 11, 1998; 1479 pages..

2. Darma Putra Sodikin (2010), Pengolahan Citra Digital, Andi Publisher