membangun prototype aplikasi penghitung pengunjung...

17
MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG BERBASIS COMPUTER VISION DENGAN METODE ABSOLUTE DIFFERENCE NASKAH PUBLIKASI diajukan oleh Suandi 10.11.3602 Kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2013

Upload: hoangxuyen

Post on 23-Apr-2019

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG BERBASIS COMPUTER VISION DENGAN METODE ABSOLUTE DIFFERENCE

NASKAH PUBLIKASI

diajukan oleh

Suandi

10.11.3602

Kepada

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA

YOGYAKARTA 2013

Page 2: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi
Page 3: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

BUILD A PROTOTYPE VISITORS COUNTER APPLICATION BASED ON COMPUTER VISION WITH ABSOLUTE

DIFFERENCE METHOD

MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG BERBASIS COMPUTER VISION DENGAN METODE ABSOLUTE DIFFERENCE

Suandi

Melwin Syafrizal Jurusan Teknik Informatika

STMIK AMIKOM YOGYAKARTA

ABSTRACT

Over the time, public demand for information is increasing, One of the needed information in public areas such as services, retail sales, supermarket and tourist attractions is data the number of visitors, the data are used for various purposes (for marketing research or statistical purposes). Data on the number of visitors is usually obtained with manual counting by officers who guard the entrance, However, because the process is done in a long period of time, can decrease the concentration causing officers prone to counting errors (human error).

This thesis discusses the design problem solution using the sophistication of computer vision technology to overcome those problems.Sensor camera (webcam) mounted on the entrance door, the catch frame is processed through a series of image processing so that it can detect objects passing. The methods used to detect objects is the Absolute Difference.

Optimal accuracy results obtained in testing the application reaches 93.78% through the conditions and limitations defined. Keywords: Number of Visitors, Computer Vision, Absolute Difference

Page 4: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

1

1. Pendahuluan

Seiring dengan perkembangan zaman, maka semakin meningkat pula kebutuhan

seseorang akan informasi. Salah satu informasi yang dibutuhkan ditempat-tempat umum

seperti, ritel penjualan, supermarket dan tempat wisata adalah data jumlah pengunjung,

data tersebut digunakan untuk berbagai keperluan (baik keperluan statistik maupun

penelitian pemasaran). Misalnya pada ritel penjualan, dengan membandingkan antara

data jumlah pengunjung dengan data jumlah transaksi penjuanlan sehingga dapat

diketahui tingkat ketertarikan masyarakat untuk berkunjung ke tempat tersebut serta

persentase pengunjung melakukan pembelian.

Data jumlah pengunjung biasanya didapat dengan penghitungan manual oleh

petugas yang menjaga pintu masuk. Namun, karena proses tersebut dilakukan dalam

jangka waktu yang panjang, dapat menurunkan konsentrasi petugas sehingga

menyebabkan rawan terjadinya kesalahan penghitungan (human error). Dari uraian

diatas penulis mengambil judul untuk penelitian ini “Membangun Prototype Aplikasi

Penghitung Pengunjung Berbasis Computer Vision dengan Metode Absolute

Difference”.

2. Landasan Teori

2.1 Computer Vision

Menurut Idhawati (2011) Computer Vision adalah sebuah cabang ilmu dari

kecerdasan buatan yang menggunakan computer untuk menganalisa gambar dan video

agar dapat mengenali obyek yang diamati sebagaimana yang bisa dilakukan manusia.1

Pada hakikatnya, Computer vision mencoba meniru cara kerja sistem visual

manusia (Human Vision). Manusia melihat objek dengan indera penglihaan (mata), lalu

citra objek diteruskan ke otak untuk diinterpretasi sehingga manusia mengerti objek apa

yang tampak dalam pandangan matanya. Untuk itu, computer vision diharapkan memiliki

kemampuan tingkat tinggi sebagaimana visual manusia.

Computer vision merupakan kombinasi dari pengolahan citra (image processing)

dan pengenalan pola (pattern recognition). Pengolahan citra (image processing)

berhubungan dengan proses transformasi citra atau gambar dan bertujuan untuk

mendapatkan kualitas citra yang lebih baik. Sedangkan pengenalan pola (pattern

recognition) berhubungan dengan proses identifikasi objek pada citra atau interpretasi

citra dan bertujuan untuk mengekstrak informasi yang disampaikan oleh citra.

1 Hestiningsih, Idhawati . Yudantoro, Raharjo. 2011. Aplikasi Penghitung Jumlah Pengunjung Objek Wisata dengan Webcam. Orbith Vol 7 No. 3

Page 5: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

2

2.2 Citra Digital

Menurut Putra, D (2010) “Citra digital merupakan sebuah larik (array) yang berisi

nilai-nilai real maupun kompleks yang direpresentasikan dengan deretan bit tertentu”.2

Citra digital dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan N

kolom, dengan x dan y adalah koordinat spasial, dan amplitude f di titik koordinat (x,y)

dinamakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Indeks x

bergerak ke kanan dan indeks y bergerak ke bawah.sedangkan Nilai pada suatu irisan

antara baris dan kolom (pada posisi x,y) disebut dengan pixel.

2.3 Video Digital

Video merupakan urutan citra yang berkesinambungan yang bergerak dalam

ruang waktu dan memiliki suatu makna. Video memiliki parameter yang dapat diturunkan

dari parameter sebuat citra yaitu lebar dan tinggi citra yang diukur berdasarkan jumlah

piksel horizontal dan vertical, dan kemudian juga parameter kedalaman citra. Sebuat

video juga memiliki patameter kecepatan berpindah dari satu citra/frame ke frame yang

selanjutnya, biasa kita sebut dengan fps (frames per second)/frame rate.

2.4 Filtering

Filtering merupakan preprosesing pengolahan citra yang digunakan untuk

menghilangkan bagian-bagian yang tidak diperlukan (noise) pada citra untuk proses

selanjutnya, pada proses filtering, nilai pixel baru umumnya dihitung berdasarkan pixel

tetangga” (Darma Putra, 2010).3

Metode filter atau filtering yang terbaik tergantung dengan situasi dari citra dan

jenis derau atau degradasi yang terdapat pada citra. Beberapa jenis filter tersebut adalah

mean filter, median filter dan Gaussian filter. Dimana pada proses paling sederhananya

hasil filtering pada suatu pixel adalah hasil dari rata-rata pixel tersebut dengan pixel

sekitarnya.

2.5 Thresholding

Masalah utama yang ada pada aplikasi yang memakai computer vision adalah

perbedaan sub gambar yang merepresentasikan objek. Operasi yang mudah dilakukan

oleh mata ini sulit dilakukan oleh komputer. Sehingga dalam proses pengelompokan

suatu gambar, biasanya berdasarkan intensitas, warna, dan faktor lainnya. Sehingga

thresholding dapat digunakan untuk memisahkan gambar dari latarnya.

2 Putra, D. 2010. Pengolahan Citra Digital. Andi Offset. Yogyakarta. Hal 9

3 Lbid. Hal 59

Page 6: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

3

Input yang dimasukkan dalam thresholding adalah gambar grayscale. Sedangkan

hasil keluarannya umumnya berbentuk gambar biner yang merepresentasikan hasil dari

segmentasi tersebut.

Pada teknik ini kecerahan warna dari setiap pixel dibandingkan ke dalam sebuah

nilai threshold, dan pixel hasilnya dinyatakan sebagai satu atau dua kategori, putih atau

hitam, tergantung dari apakah nilai pixel aslinya melampaui atau tidak dari nilai threshold-

nya.

2.6 Dilatasi dan Erosi

Operasi dilatasi dilakukan untuk memperbesar ukuran segmen objek dengan

menambah lapisan di sekeliling objek sehingga citra hasil dilatasi cenderung menebal.

Operasi dilatasi akan melakukan proses pengisian data pada citra asal yang memiliki

ukuran lebih kecil dibandingkan kernel. Sedangkan, operasi erosi adalah kebalikan dari

operasi dilatasi. Pada operasi ini, ukuran objek diperkecil dengan mengikis sekeliling

objek sehingga citra hasil cenderung diperkecil menipis. Operasi erosi akan melakukan

pengurangan pada citra asal yang lebih kecil dibandingkan elemen kernel.

Proses erosi yang dilanjutkan dengan proses dilatasi dimana kedua proses

tersebut dilakukan secara berulang didefinisikan sebagai proses opening. Operasi

opening digunakan untuk memutuskan bagian-bagian dari objek yang hanya terhubung

dengan 1 atau 2 buah titik saja, dan menghilangkan objek yang sangat kecil. Operasi

opening bersifat memperhalus kenampakan citra, menyambung fitur terputus dan

menghilangkan efek pelebaran pada objek.

Kombinasi antara operasi dilatasi dan erosi yang dilakukan secara berurutan

adalah operasi closing. Citra asli didilatasi terlebih dahulu, kemudian hasilnya dierosi.

Ada beberapa kegunaan operasi closing yaitu: (1) menutup atau menghilangkan lubang-

lubang kecil yang ada dalam segmen objek, (2) menggabungkan 2 segmen objek yang

saling berdekatan (menutup sela antara 2 objek yang sangat berdekatan), (3) juga

dilakukan dalam beberapa rangkaian dilatasi-erosi (misalnya 3 kali dilatasi, lalu 3 kali

erosi) apabila ukuran lubang atau jarak objek cukup besar. Operasi closing juga

cenderung akan memperhalus objek pada citra, namun dengan cara menyambung

pecahan-pecahan dan menghilangkan lubang-lubang kecil pada objek.

2.7 Background Substraction (Absolute Difference)

Hal yang paling penting mendasari dari pemantauan real time adalah dengan

mengetahui adanya pergerakan dari objek di dalam sebuah latar. Substraksi latar

mempunyai peranan penting dalam computer vision yaitu dalam hal system pemantauan

atau security. Peranan yang dilakukan dalam substraksi latar adalah mengetahui atau

membedakan bagian latar dan objek yang ada pada sebuah citra. Untuk mengetahui

Page 7: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

4

adanya objek di dalam citra maka hal yang harus dilakukan adalah dengan mempelajari

atau mengetahui model dari latar. Ide dasar dari substraksi latar adalah |framei –

background| > threshold, bila piksel ke i memenuhi persamaan tersebut, maka piksel

tersebut digolongkan kedalam kelompok piksel objek dan selain itu adalah latar.

Hasil dari proses substration ini tidak selamanya bersih, tergantung dari kondisi

objek perekaman maka dari itu dibutuhkan beberapa proses image processing seperti

erosi dan dilatasi untuk membersihkan noise.

2.8 Pustaka OpenCV (Open Computer Vision)

Menurut Bradski & Keahler (2008:1) OpenCV adalah pustaka open source yang

ditunjukan untuk visi computer real time. OpenCV dapat berjalan di berbagai system

operasi seperti Windows, Linux, dan Machintos. OpenCv asli ditulis dalam bahasa C, tapi

sekarang telah diterjemahkan dalam bahasa C++. Ada juga terjemahan dalam bahasa

Phyton, Ruby, Matlab dan bahasa lainnya.4

Contoh aplikasi dari pustaka OpenCV adalah interaksi manusia dan computer,

seperti identifikasi, segmentasi dan mengenalan objek, pengenalan wajah, pengenalan

gerak tubuh, trajeksi pergerakan, gerak ego, pengertian pergerakan, struktur dari

pergerakan, komputasi jarak objek dan robotika.

3. Analisis dan Perancangan Sistem

Analisis sistem adalah penguraian dari suatu sistem secara utuh dengan

membaginya menjadi beberapa bagian komponen dengan maksud untuk

mengidentifikasi dan mengevaluasi permasalahan, ketangguhan, hambatan dan

kebutuhan yang diharapkan sehingga dapat di usulkan untuk pembuatan sistem.

3.1 Arsitekture Sistem Penghitung Jumlah Pengunjung

Secara garis besar, gambaran sistem dari aplikasi penghitung jumlah pengunjung

dapat dilihat pada Gambar 3.1 Pada pintu keluar masuk terdapat kamera webcam.

Webcam berfungsi untuk melakukan mekanisme perekaman frame gambar orang lewat.

Prototipe Penghitung Jumlah Pengunjung berfungsi Mengolah hasil rekaman tersebut

untuk mendeteksi dan menghitung pengunjung.

4 Bradski, Gary. Kaehler, Adrian. 2007. Learning Computer Vision with the OpenCV Library. O'Reilly. United States of America.. Hal 1

Page 8: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

5

Gambar 3.1 Rancangan Sistem Penghitung Jumlah Pengunjung

Penempatan webcam berada di atas pintu, tidak bergerak ke segala arah, hanya

mengarah ke suatu obyek yang akan diamati yaitu vertikal ke bawah terhadap ruas pintu.

Jadi webcam digunakan untuk mendapatkan data masukan aplikasi penghitung yaitu

video atau citra bergerak yang dihasilkan dari perekaman menggunakan webcam pada

saat sistem dijalankan, kemudian data video digunakan oleh aplikasi untuk melakukan

proses deteksi gerak pada pintu keluar masuk untuk menentukan jumlah pengunjung

yang masuk maupun keluar.

3.2 Analisis kebutuhan sistem

Analisis kebutuhan sistem merupakan langkah untuk mengidentifikasi kebutuhan-

kebutuhan baik alat maupun bahan yang akan digunakan untuk membantu dan

mendukung proses pembuatan suatu sistem. Analisis ini juga berguna untuk

pengembangan sistem baru yang diusulkan untuk menyelesaikan masalah di sistem

lama yang direalisasikan.

3.2.1 Analisis Kebutuhan Fungsional

Pembangunan prototipe aplikasi penghitung jumlah pengunjung berbasis computer

vision ini diharapkan memenuhi beberapa kebutuhan fungsional, antara lain :

a. Mendeteksi & Tracking objek (pengunjung)

b. Menganalisa arus objek (pengunjung) yang keluar maupun memasuki ruangan

c. Menampilkan hasil penghitungan pengujung secara real time

d. Membuat laporan hasil perhitungan jumlah pengunjung

e. Laporan hasil penghitungan pengunjung di-update setiap jam

Page 9: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

6

3.2.2 Analisis Kebutuhan Non-Fungsional

Analisi Kebutuhan Non-Fungsional dilakukan untuk mengetahui kebutuhan sistem.

Spesifikasi kebutuhan meliputi kebutuhan perangkat keras (hardware) dan kebutuhan

perangkat lunak (software).

3.2.2.1 Kebutuhan Perangkat Keras

Pada penelitian ini memerlukan beberapa peralatan yang akan digunakan. Alat-

alat yang digunakan adalah sebagai berikut :

a. Notebook Toshiba Satelite L510

b. Intel Pentiuml Core i3 (2,13 GHz)

c. Memory 2 Gb DDR3.

d. Monitor 14,1”

e. USB 2.0 Repeater / Extension

f. Harddisk 160 Gb

g. Logitech Webcam c270h

3.2.2.2 Kebutuhan Perangkat Lunak

Perangkat lunak yang digunakan dalam implementasi perangkat yang dibuat

adalah sebagai berikut :

a. Linux Slackware 14.0

b. OpenCV library

c. Logitech Webcam 1.10.1113.0 Software (ENU)

3.2.3 Kebutuhan Informasi

Informasi yang dibutuhkan adalah berupa file video pengunjung yang diambil

dalam beberapa kondisi (tempat), yaitu sumber video di pintu masuk Citra Mart, sumber

video di basement 5 Stmik Amikom Yogyakarta dan sumber video jalan antara gedung 4

dan 5 Stmik Amikom Yogyakarta. Semua sumber video diambil dalam sudut pandang

vertikal ke bawah. Hal ini di maksudkan agar dapat memisahkan objek (pengunjung)

yang berdempetan sehingga tidak ada objek yang tertutup oleh objek lainnya.

3.3 Perancangan Sistem

Perancangan sistem secara umum dilakukan dengan maksud untuk memberikan

gambaran umum tentang sistem yang baru atau sistem yang akan diusulkan. Rancangan

ini mengidentifikasi komponen – komponen sistem informasi yang dirancang. Melalui

perancangan sistem ini juga akan sangat membantu pada saat proses pengembangan

terutama penulisan program, dari segi waktu akan menjadi lebih efisien. Selain itu dari

Page 10: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

7

perancangan sistem prototipe aplikasi ini diharapkan dapat membantu untuk kepentingan

pengembangan kedepannya.

3.3.1 Gambaran Umum Sistem

Gambar 1.1 Gambaran Umum Rancangan Program

Penjelasan mengenai gambar rancangan umum program adalah sebagai berikut.

1. Pengambilan Source Video

Pengambilan source video dapat dilakukan dalam 2 cara. Yaitu, secara real time

dan mengambil source video yang sudah direkam terlebih dahulu dan mengambil

source video secara real time dari webcam yang sudah terinstall pada area

perhitungan, webcam diletakkan menghadap vertikal ke bawah, dari sudut pandang

Page 11: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

8

ini jarak antar objek terlihat dengan jelas, sehingga tidak ada objek yang menutupi

objek lainnya.

2. Penetapan Background

Penetapan Background sebagai latar dimaksudkan karena pemrosesan tidak

menggunakan algoritma pengenalan objek, maka dari itu objek didapatkan dengan

mensubstraksi latar dengan frame terbaru.

3. Pengambilan Gambar

Pengambilan gambar dilakukan dengan mengambil frame terbaru dari sumber

video.

4. Pemisahan Objek dengan latar

Pemisahan objek dengan latar dilakukan dengan menggunakan metode Absolute

Difference untuk mendeteksi motion, metode Absolute Difference membandingkan

nilai pixel frame pada background dengan pixel frame terbaru. Nilai pixel yang

dihasilkan dari proses Absolute Difference kemudian diubah ke dalam format

grayscale, untuk selanjutnya diubah lagi ke dalam bentuk biner dengan teknik

threshold. Bentuk biner tersebut sering disebut dengan blob, blob mewakili objek

yang dideteksi. Untuk mengurangi noise yang dihasilkan dari proses ini, maka

dilakukan beberapa proses filtering dan morphologi.

5. Tracking Objek (Blob)

Pendeteksian blob dilakukan secara terus-menerus, jika pada frame selanjutnya

terdapat perpindahan posisi blob di area pixel yang masih bertetanggaan dengan

blob sebelumnya maka blob tersebut dinyatakan sebuah objek yang sama.

6. Perhitungan

Menghitung jumlah objek yang telah masuk ke area atau melewati batasan yang

sudah ditentukan terlebih dahulu. Hasil perhitungan secara realtime langsung dapat

dilihat secara real time.

Perancanga perhitungan menggunakan 3 garis horizontal

Page 12: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

9

3.3.2 Use Case Diagram

Gambar 3.1 Use Case Diagram

Pada diagram (Gambar 3.14) terlihat ada 2 aktifitas pengguna yang dapat

dilakukan pada sistem. Pertama adalah memilih sumber video, pengguna dapat memilih

device webcam yang akan digunakan untuk menghitung jumlah pengunjung secara real

time atau menggunakan data video berformat AVI yang sudah direkam terlebih dahulu.

Setelah sumber video didapatkan sistem akan melakukan proses pengolahan citra

secara otomatis, diantaranya Absolute Difference dan blob detection untuk mensubstrasi

latar sehingga dapat diketahui objek (pengunjung) yang bergerak, tracking untuk

mengikuti arah pergerakan objek dan counting untuk menghitung jumlah objek yang telah

masuk ke area atau melewati batasan yang sudah ditentukan terlebih dahulu, sehingga

pengguna dapat melihat laporan hasil dari proses perhitungan tersebut secara real time

(selama program berjalan) maupun secara manual (setelah program telah diakhiri).

3.3.3 Perancangan Activity Diagram

Diagram activity berfokus kepada aktifitas – aktifitas yang terjadi yang terkait dalam

suatu proses tunggal. Jadi dengan kata lain diagram ini menunjukkan bagaimana

aktifitas–aktifitas tersebut bergantung satu sama lain. Gambar 3.15 berikut menunjukkan

diagram activity dari prototipe aplikasi penghitung jumlah pengunjung berbasis computer

vision yang akan dibangun.

Pada diagram terlihat ketika pengguna telah memilih sumber video dari device

video secara real time atau dari video yang sudah direkam maka selanjutnya dari sisi

aplikasi melakukan proses-proses pengolahan citra seperti yang sudah dijelaskan pada

Page 13: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

10

landasan teori. Setelah proses perhitungan dalam suatu objek (pengunjung) yang

terdeteksi selesai maka program akan menampilkan hasil perhitungannya secara real

time.

Gambar 3.2 Activity Diagram

4. Hasil Penelitian Dan Pembahasan

Prototipe dibangun dalam bahasa C++ dan menggunakan fungsi-fungsi library

OpenCV sebagai dasar pengolahan citra. Prototipe merupakan program classic yang

dipanggil menggunakan terminal (console), program ini mempunyai 4 jendela yang

mempunyai tujuan masing-masing, latar background merupakan frame latar sebagai

acuan untuk dibandingkan pada proses selanjutnya, current frame merupakan frame

yang sedang berjalan saat ini, background substraction (blob detection) merupakan hasil

substraksi objek dari hasil perbandingan antara background dengan current frame dan

result merupakan hasil tracking objek beserta perhitungan pengunjung.

Page 14: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

11

Pengambilan source video dilakukan dengan 2 cara, cara yang pertama yaitu

dengan menggunakan webcam dan cara yang kedua menggunakan file video berformat

AVI yang telah direkam sebelumnya.

Untuk mengeksekusi program harus menggunakan beberapa parameter yang telah

ditetapkan.

1. Sumber Video menggunakan webcam

./amkCount –device [nomor device] –o [nama file laporan]

2. Sumber video menggunakan file

./amkCount –video [nama video] –o [nama file laporan]

Gambar 4.1 Proses Tracking Objek

4.1 Laporan Perhitungan

Laporan Perhitungan bisa didapatkan dengan melihat layar result seperti gambar

4.6 yang menampilkan hasil perhitungan secara real time selama sistem berjalan, juga

dapat secara non-real time dengan melihat file laporan berformat file text (*.txt) yang

akan dibuat secara otomatis ketika sistem dijalankan. Keuntungan menggunakan Hasil

laporan file text adalah hasil perhitungan dapat disimpan untuk kepentingan selanjutnya,

Laporan ini menampilkan informasi waktu dan tanggal ketikan program dijalankan dan

Page 15: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

12

dihentikan. Hasil Laporan ini juga akan diupdate setiap Jam sehingga dapat menganalisa

jumlah pengunjung setiap jamnya.

Berikut contoh hasil file report :

This program is made by Suandi ([email protected]) Hasil Perhitungan --------------------------------------------- --------------------------------------------- Hasil Perhitungan Akhir --------------------------------------------- Waktu Mulai : Wed May 8 11:00:37 2013 Waktu Selesai : Wed May 8 11:12:43 2013 Jumlah Orang Masuk : 18 Jumlah Orang Keluar : 17 Jumlah Orang Sekarang : 1 Jumlah Orang terdeteksi : 35

Gambar 4.5 Proses Perhitungan

4.2 Uji Coba Sistem

Pada subbab ini akan dilakukan pembahasan mengenai pengujian yang telah

dilakukan perangkat lunak. Uji coba dilakukan menggunakan 5 sample video yang

diambil dari kondisi yang berbeda. Berikut adalah tipe sample video yang digunakan.

Pengujian pertama dilakukan dengan membandingkan ketinggian kamera

terhadap akurasi pengukuran yang dilakukan oleh sistem. Pengujian dilakukan dengan

menggunakan 3 buah video dalam kondisi ramai yang memiliki ketinggian kamera yang

berbeda-beda. Data hasil pengujian dapat dilihat pada tabel 4.1 dan Gambar 4.6.

Tabel 4. 1 Pengujian Akurasi Sistem Terhadap Ketinggian Kamera

No Tipe

Video

Ketinggian

kamera

Jumlah

Objek

yang

terhitung

Masuk

Jumlah

Objek

yang

terhitung

Keluar

Tingkat

Kebenaran

Objek

Masuk

Tingkat

Kebenaran

Objek

Keluar

Rata –rata

Tingkat

Kebenaran

1 Video 1 4.5 57 39 77.03% 76,47% 76.75%

2 Video 3 3 43 53 97.73% 89,83% 93.78%

3 Video 5 2.5 41 58 79.41% 92,06% 85.73%

Page 16: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

13

Pengujian kedua dilakukan dengan membandingkan kondisi jalan terhadap

akurasi pengukuran yang dilakukan oleh sistem. Pengujian dilakukan dengan

memperhatikan kondisi jalan ketika lengang dan ketika ramai pada sample memiliki

ketinggian dan tempat yang sama, Video 1 dan 2 diambil dalam ketinggian 4.5 meter

tetapi kondisi yang berbeda, begitu juga video 3 dan 4 diambil dalam ketinggian 3 meter

tetapi dalam kondisi yang berbeda. Data hasil pengujian dapat dilihat pada tabel 4.2 dan

Gambar 4.7.

Tabel 4.2 Pengujian Akurasi Sistem Terhadap Kondisi Kepadatan

No Ketinggian Tipe

Video

Kondisi Jumlah

Objek

yang

terhitung

Masuk

Jumlah

Objek

yang

terhitung

Keluar

Tingkat

Kebenaran

Objek yang

Masuk

Tingkat

Kebenaran

Objek yang

Keluar

Rata –rata

Tingkat

Kebenaran

1 4.5 m Video 1 Ramai 57 39 77.03% 76,47% 76.75%

Video 2 Senggang 21 5 91.30% 71.43 81.36%

2 3 m Video 3 Ramai 43 53 97.73% 89,83% 93.78%

Video 4 Senggang 15 17 93.75% 93.75% 93.75%

5. Kesimpulan

Kesimpulan yang dapat diambil adalah sebagai berikut :

1. Sistem penghitung jumlah pengunjung yang dirancang berhasil mendeteksi

jumlah pengunjung dengan akurasi yang berbeda pada tiap ketinggian kamera.

Hasil akurasi optimal yang didapatkan yakni pada ketinggian kamera 3 meter

dengan tingkat akurasi mencapai 93.78%.

2. Pemilihan latar sangat berpengaruh pada tingkat akurasi pendeteksian. Latar

yang sama dengan atribut objek (pengunjung) akan mengurangi tingkat akurasi.

3. Perbedaan arus pengunjung dapat dilakukan dengan menggunakan 3 garis

vertikal (garis tengah, garis batas atas, garis batas bawah) untuk mengetahui

posisi awal dan akhir pengunjung.

4. Perbedaan kondisi trafik pengunjung antara senggang dan ramai dapat

membuat perbedaan akurasi sebesar 0.03% - 4.61%, sehingga bisa dikatakan

kondisi trafik tidak begitu mempengaruhi sistem.

Page 17: MEMBANGUN PROTOTYPE APLIKASI PENGHITUNG PENGUNJUNG ...repository.amikom.ac.id/files/Publikasi_10.11.3602.pdf · membaginya menjadi beberapa bagian komponen dengan maksud untuk mengidentifikasi

14

DAFTAR PUSTAKA

Bradski, Gary. Kaehler, Adrian. 2007. Learning Computer Vision with the OpenCV Library. O'Reilly. United States of America.

Dwi Irianto, Kurniawan. Ariyanto, Gunawan. Ary P, Dedi. 2009. Motion Detection Using

OpenCV with Background Substraction and Frame Differencing Technique, http://publikasiilmiah.ums.ac.id/bitstream/handle/123456789/1855/11.%Paper_E-020.pdf, diakses tanggal 8 Februari 2013.

Hestiningsih, Idhawati . Yudantoro, Tri Raharjo. 2011. Aplikasi Penghitung Jumlah

Pengunjung Objek Wisata dengan Webcam, www.polines.ac.id/orbith/files/7-3-2011%20Hal%20422-428.pdf, diakses tanggal 3 Februari 2013

Irianto, Kurniawan dkk. 2009. Motion Detection Using OpenCV with Background

Substraction and Frame Differencing Technique. Dipresentasikan pada Simposium Nasional RAPI VIII. Surakarta : UNS

Lefloch, Demien. 2007. Real-Time People Counting system using Video Camera,

www.colorlab.no/content/download/21981/216266/file/Damien_Lefloch_Master_thesis.pdf, diakses tanggal 8 Februari 2013.

Nilamsari, Enggar. 2010. Penghitung Jumlah Orang Lewat dengan Metode Normalized

Sum-Squared Differences(NSSD), www.digilib.its.ac.id/public/ITS-Undergraduate-9302-Paper.pdf, diakses tanggal 3 Februari 2013.

Prasetya, Deddy. 2011. Aplikasi Penghitung Jumlah Orang Lewat menggunakan Metode

Normalized Sum Squared Differences(NSSD), www.eprints.upnjatim.ac.id/1805/1/file_1.pdf, diakses tanggal 3 Februari 2013.

Putra, Darma. 2010. Pengolahan Citra Digital. Andi Offset. Yogyakarta R Tan dkk, Traffic Video Segmentation Using Adaptive-K Gaussian Mixture Model,

Institute of Image Processing and Pattern Recognition, Shanghai Jiao Tong University, China. Hal 127