Pengembangan Aplikasi Computer Vision un

Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015

29

Pengembangan Aplikasi Computer Vision untuk Pengamanan Kantin
Kejujuran
Abdur Rabi’*), Nachrowie**)
Teknik Elektro, Universitas Merdeka Malang
E-Mail: *arrabik@gmail.com, **rowie_delta@yahoo.com
Abstrak
Kantin Kejujuran adalah istilah untuk kantin makanan dan minuman ringan di area
khusus tanpa penjaga manusia. Kantin Kejujuran umumnya diadakan di sekolahsekolah, dengan maksud membiasakan kejujuran terhadap murid-murid sekolah.
Kebiasaan jujur sejak dini ini diharapkan menjadi benih-benih anti korupsi kelak.
Agar kantin kejujuran dapat tetap eksis bertahan, maka diperlukan upaya
pengkondisian secara sosial maupun teknis. Penelitian ini hanya terfokus pada
pengkondisian secara teknis, yakni dengan mengawal menggunakan Computer Vision
(CV). Tujuan umum penelitian ini adalah mempelajari dan mengembangkan
penggunaan CV pada bagian object counting (menghitung jumlah makanan yang
terjual dan jumlah uang yang seharusnya terbayar) dan object tracking (melacak dan
menandai pembeli yang berlaku curang). Sedangkan tujuan khusus penelitian ini
adalah: (1) Memperbaiki dan mengembangkan penerapan CV dalam mengawal kantin

kejujuran yang telah diteliti sebelumnya, (2) Memperkuat dan memperluas spektrum
anti korupsi melalui bidang ilmu CV serta mengenalkan CV kepada masyarakat luas.
Penelitian ini termasuk penelitian eksperimen yang meliputi penyusunan softwa re CV
dan sedikit perakitan/penyesuaian hardware. Variabel-variabel yang diteliti berupa
intesitas cahaya, posisi kamera terhadap obyek, serta keragaman obyek berupa
makanan dan minuman pada Kantin Kejujuran.
Kata kunci: Computer Vision , Kantin Kejujuran, Object Counting.

1. PENDAHULUAN
Korupsi di Indonesia masih tergolong
tinggi. Menurut laporan Transparency
International tahun 2014, angka indeks
persepsi korupsi (IPK) Indonesia berada pada
urutan 107 dari 175 negara. Di kawasan
Asean Indonesia hanya unggul dari Vietnam,
Timor Leste, Laos, Kamboja, dan Myanmar.
Karena itu perang terhadap korupsi perlu
diperluas,
termasuk
mengupayakan

pencegahannya. Salah satu upaya mencegah
korupsi adalah dengan membiasakan
kejujuran sejak dini pada anak-anak yang
dilakukan melalui pengadaan Kantin
Kejujuran. Agar Kantin Kejujuran dapat
tetap eksis bertahan, maka diperlukan upaya
pengkondisian baik secara sosial maupun
teknis. Dalam penelitian ini hanya terfokus
pada pengkondisian secara teknis, yakni
dengan mengawal menggunakan CV.

ISBN: 979-26-0280-1

2. TINJAUAN PUSTAKA
CV merupakan proses otomasi yang
mengintegrasikan sejumlah proses untuk
persepsi visual seperti pengolahan citra,
klasifikasi, recognition dan pengambilan
keputusan. Penerapan CV umumnya berupa
video surveilance, object counting, dan

object tracking . Penelitian ini tergolong
penerapan CV pada object counting sekaligus
object tracking , yakni menghitung jumlah
makanan yang terjual dan jumlah uang yang
seharusnya terbayar serta melacak orang
(pembeli) pada Kantin Kejujuran yang
berbuat curang.
Object counting adalah proses menghitung obyek-obyek yang tertangkap kamera
secara real time. Beberapa peneliti
menggunakan analisis binary large object
(BLOB) untuk menghitung jumlah orang
yang datang/pergi dari suatu tempat atau
luasan [1]. Sedangkan [2] menggunakan
operasi-operasi morfologi untuk meng-hitung
jumlah kendaraan keluar/masuk area parkir

30

Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015


terbuka. Peneliti lain menggunakan fitur
ukuran obyek dan histogram warna untuk
mendeteksi dan menghitung obyek [4].
Object tracking merupakan proses
mengikuti posisi (melacak) suatu objek.
Beberapa peneliti menggunakan paremeter
histogram arah dan warna untuk mengunci
obyek [5]. Peneliti lainnya menggunakan
parameter warna untuk mengunci target yang
akan dilacak [6].
Penerapan CV pada Kantin Kejujuran
pernah diteliti oleh [3] dan [7]. Pada [3],
obyek yang dihitung dalam formasi
bertumpuk. Jumlah obyek ditaksir dari fiturfitur tinggi tumpukan, luas, serta sudut arah
titik berat terhadap bidang horizontal. Pada
[7], obyek yang dihitung dalam formasi
berserakan, bercampur, dan terpisah. Ciri
pembeda pada [7] berupa fitur rasio panjang
sumbu maksimum terhadap panjang sumbu
minimum. Penelitian [3] dan [7] hanya

menangani 3 jenis obyek serta belum
membahas intensitas cahaya dan posisi
benda/kamera.

3. METODE PENELITIAN
Penelitian ini termasuk penelitian
eksperimental
dan
dilaksanakan
di
Laboratorium Komputer Dan Informatika
Jurusan Teknik Elektro Unmer Malang.
Sistem yang dibuat dan dirakit berupa
software CV dan hardware yang terdiri dari
tempat dan pencacah koin, kamera webcam
beserta penyangga yang dapat diatur jarak
dan sudutnya,
serta papan tempat
meletakkan obyek makanan/ minuman
(Gambar 1).

8
6
9

Tempat
koin

Gambar 1. Gambaran Umum Sistem Pengawalan
Kantin Kejujuran Berbasis CV.

Software CV yang dikembangkan akan
mendeteksi
keberadaan
orang/pembeli,
menghitung perubahan jumlah obyek
makanan/minuman, serta perubahan jumlah
koin setiap kali mendeteksi keberadaan
orang/pembeli pada Kantin Kejujuran serta

ISBN: 979-26-0280-1


merekam pembeli yang berlaku curang.
Gambar 2 menunjukkan kerangka kerja dari
software yang akan dikembangkan.
Akuisisi citra

Perbaikan Citra

Perekaman Pembeli
Yang Berlaku Curang

Deteksi
BLOB

Object Counting &
Tracking

Gambar 2. Kerangka Kerja Software CV yang
dikembangkan


Akuisisi citra dilakukan dengan peralatan
webcam yang dipasang tepat mengawasi area
tempat menjual aneka makanan. Hasil
akuisisi berupa rangkaian matriks 3 dimensi
sebagai representasi frame-frame citra.
Perbaikan citra dilakukan dengan operasi
background subtraction
[1] sehingga
diperoleh citra obyek yang terpisah dengan
citra latar. Deteksi binary large object
(BLOB) dilakukan dengan memeriksa citra
BLOB untuk mencari setiap obyek
(makanan/minuman, dan nilai angka pada
pencacah koin).
Object counting dan tracking dilakukan
untuk
menghitung
jumlah
makanan/
minuman yang terambil serta nilai uang yang

terbayar oleh seorang pembeli. Pada Kantin
Kejujuran, posisi obyek makanan umumnya
dalam formasi berjejer, saling berhimpit
ganda, triple, kuartet, hingga berhimpit 20.
Untuk itu digunakan pendekatan Artificial
Neural Network (ANN) untuk pengenalan
aneka formasi BLOB dari obyek makanan
yang akan dihitung. Pada tahap pelatihan
ANN, Input adalah fitur-fitur yang diperoleh
dari BLOB beserta kondisi saat akuisisi citra
yakni tingkat intensitas cahaya dan posisi
(jarak dan sudut) obyek terhadap kamera.
Sedangkan target dari ANN adalah jumlah
item dalam BLOB. Untuk setiap jenis obyek
makanan yang akan dihitung, disiapkan
masing-masing seperangkat ANN
yang
dilatihkan supaya dapat mengenali aneka
formasi BLOB. Penghitungan jumlah uang
dilakukan dengan alat pencacah koin yang

dapat membedakan jenis koin Rp 1000 dan
Rp 500 (kuningan maupun almunium).
Perekaman pembeli yang (diduga kuat)
berlaku curang dilakukan setelah menghitung
nilai uang yang baru saja bertambah
dibandingkan dengan jumlah obyek makanan
yang berkurang. Jika nilai uang kurang dari
yang seharusnya, maka beberapa frame dari

31

Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015

citra yang diperoleh dari webcam lain
(dipasang dalam posisi menghadap wajah
pembeli) akan direkam.

4. HASIL DAN PEMBAHASAN
4.1 Akuisisi Citra
Untuk meningkatkan banyaknya jenis

obyek yang dapat dikenali, dihitung, dan
diawasi maka telah dibuat fasilitas yang
memungkinkan area masing-masing obyek
dapat dipartisi secara dinamis, dengn cara
cropping untuk masing-masing obyek.
Tampilan form untuk partisi dinamis ini
dinyatakan seperti gambar 3 berikut:

Gambar 5. Form Tampilan Perbaikan Citra

Dan Deteksi BLOB

4.3 Data Dan Object Counting
Untuk mengenali dan menghitung obyek
berupa makanan/minuman yang dijual pada
Kantin Kejujuran maka telah dikumpulkan
data yang dideskripsikan dalam tabel 1
berikut:
Tabel 1. Deskripsi Data Variabel
Yang Digunakan

Gambar 3. Form Tampilan Untuk Partisi
Dinamis Masing-masing Obyek
4.2 Perbaikan Citra dan Deteksi BLOB
Terdapat 2 proses yang dilakukan
dalam perbaikan citra, yakni: 1) Konversi
dari citra RGB menjadi citra biner kemudian
2) Operasi morfologi. Konversi menjadi citra
biner dilakukan untuk membedakan antara
obyek dan latar. Operasi morfologi dilakukan
untuk menghilangkan bingkai serta noise
berupa obyek berukuran kecil.

Gambar 4. Konversi menjadi citra biner
Pada gambar 4, terlihat adanya bingkai
di kanan atas dari citra biner, serta bintikbintik kecil disekitar obyek. Untuk itu
dilakukan operasi morfologi penghilangan
bingkai serta penghapusan obyek berukuran
luas kurang dari 81 pixel.
Tampilan form untuk perbaikan citra
dan deteksi BLOB dinyatakan seperti pada
gambar 5 berikut:

ISBN: 979-26-0280-1

No
Keterangan
1 Cara konversi menjadi citra biner
(bersifat katagori)
2 Jumlah item dalam suatu BLOB
(pengamatan mata langsung)
3 Jarak horizontal kamera-meja
4 Jarak vertikal kamera-meja
5 Sudut arah kamera terhadap garis
vertikal
6 Intensitas cahaya
7 Luas BLOB
8 Jarak titik pusat BLOB terhadap
bingkai kiri
9 Jarak titik pusat BLOB terhadap
bingkai atas
10 Lebar bounding box yang
melingkupi BLOB
11 Tinggi bounding box yang
melingkupi BLOB
12 Panjang sumbu mayor BLOB
13 Panjang sumbu minor BLOB
14 Nilai eksentrisitas BLOB
15 Sudut garis berat BLOB terhadap
garis horizontal
16 Nilai soliditasitas BLOB
17 Nilai Ekstensitas BLOB
18 Keliling BLOB

Satuan Notasi
Bin
buah

item

cm
Dx
cm
Dy
derajat Sudut
Lux
pixel
pixel

Lux
Luas
Px

pixel

Py

pixel

KotX

pixel

KotY

pixel
pixel
derajat

SMayor
SMinor
Eksen
Arah

pixel

Solid
Exten
Kll

Beberapa contoh hasil pengumpulan
data untuk pelatihan object counting yang
diperoleh dari citra tangkapan webcam
antara lain seperti berikut:
4.3.1 Data Obyek 1.
Obyek 1 adalah jenis makanan berupa
jajanan wafer merk “Ob1” yang terlihat pada
gambar 6 berikut:

32

Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015

Tabel 3. Sebagian Data (Variabel 1, 2, 6
hingga 9, serta 15 dan 16) Dari Citra Pada
Gambar 7

Gambar 6. Citra Wafer merk “Ob1” dalam
Formasi Lajur Kiri 1-2-3-4 Kanan 1-2-3-4
Citra pada gambar 6 di atas diambil
pada jarak horizontal kamera-meja (Dx) 135
cm, jarak vertikal kamera-meja (Dy) 115 cm,
sudut arah kamera terhadap garis vertikal
(Sudut) 650, Intensitas cahaya 400 Lux.
Terdapat 8 BLOB pada citra sebelah kanan
dari gambar 6. BLOB di lajur kiri berisi
jumlah item berturut-turut 1, 2, 3, dan 4.
Sebagian data yang diperoleh dari formasi
obyek pada gambar 6 di atas dinyatakan
dalam tabel 2 berikut:
Tabel 2. Sebagian Data (Variabel 1
hingga 9) Dari Citra Pada Gambar 6

Label item Dx Dy Sudut Lux Luas Px
1
1
135 115 65 400 1169 87
2
2
135 115 65 400 1732 99
3
3
135 115 65 400 2134 111
4
4
135 115 65 400 2444 127
5
1
135 115 65 400 1137 192
6
2
135 115 65 400 1791 196
7
3
135 115 65 400 2198 200
8
4
135 115 65 400 2489 208

Py
138
111
80
45
135
113
82
46

Agar sistem dapat mengenali dan
menghitung jumlah obyek wa fer merk “Ob1”
maka diperlukan data-data pelatihan berbagai
formasi BLOB dan jumlahnya.

(a)

(b)

Gambar 7. Citra Wafer merk “Ob1” Dalam
Formasi Tunggal (a) dan Terpisah (b)
Kondisi sistem pada saat akuisisi citra
untuk gambar 7 adalah sama dengan kondisi
gambar 6, kecuali intensitas cahayanya hanya
150 Lux.

Label item Lux
1
1
150
2
1
150
3
1
150
4
1
150
5
1
150
6
1
150
7
1
150
8
1
150
9
1
150
10
1
150
11
1
150
12
1
150
13
1
150
14
1
150

Luas
1110
717
902
813
1166
948
919
1019
865
815
798
1047
880
1110

Px
97
117
126
132
129
140
177
166
203
207
209
198
220
97

Py
144
97
62
47
31
149
95
96
148
63
47
32
148
95

Arah
67,2
-33,7
-2,0
-1,4
-1,8
69,6
-40,6
-38,1
69,3
-1,4
0,1
-1,1
76,8
-42,0

Solid
0,87
0,89
0,81
0,87
0,91
0,82
0,82
0,84
0,86
0,91
0,86
0,86
0,83
0,84

4.3.2 Data Obyek 2.
Obyek 2 adalah jenis makanan merk
“Ob2” yang terlihat pada gambar 8 berikut:

(a)

(b)

Gambar 8. Citra Keju Stick merk “Ob2”
Formasi Berjejer (a) Tunggal ; (b) Terpisah

Kondisi sistem pada saat akuisisi data
untuk gambar 8 adalah sama dengan
kondisi gambar 7, kecuali intensitas
cahayanya hanya 50 Lux. Sebagian data
disajikan dalam tabel 4 berikut:
Tabel 4. Sebagian Data (Variabel 1, 2, 6
hingga 9, serta 15 dan 18) Dari Citra Pada
Gambar 8
Label item Lux
1
1
50
2
1
50
3
1
50
4
1
50
5
1
50
6
1
50
7
1
50
8
1
50
9
1
50
10
1
50
11
1
50
12
1
50
13
1
50
14
1
50

Luas
831
760
774
727
637
580
641
721
778
591
666
735
555
786

Px
285
288
288
293
297
299
299
392
392
391
390
392
391
398

Py
126
112
99
85
69
53
40
86
115
55
70
102
42
129

Arah
-1,2
0,4
-1,4
-1,8
-0,2
-1,2
-0,4
-2,1
-1,8
-0,8
-1,7
-3,0
-1,2
-1,9

Kll
215,1
201,9
202,5
201,0
187,8
178,5
178,3
201,1
205,7
184,5
191,9
198,5
174,4
207,1

Selain formasi tunggal, diperlukan juga
data obyek dengan formasi ganda, triple,
kuartet, hingga formasi 20 berhimpit. Citra
serta untuk formasi kuartet diperlihatkan
pada gambar 9.

ISBN: 979-26-0280-1

Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015

33

untuk obyek 1 disajikan dalam gambar 11
berikut:

Gambar 9. Citra Keju Stick merk “Ob2”
Dalam Formasi Berjejer kuartet
Kondisi sistem pada saat akuisisi data
untuk gambar 9 adalah sama dengan kondisi
gambar 8. Sebagian data disajikan dalam
tabel 5 berikut:
Tabel 5. Sebagian Data (Variabel 1, 2, 8,
9, 10, serta 16, 17, dan 18) Dari Citra Pada
Gambar 9
Label item Luas
1
4
2850
2
4
2338
3
4
2161
4
4
2276
5
4
2020

Px
290
292
295
394
391

Py
114
79
47
81
49

Solid
0,91
0,91
0,92
0,91
0,91

Exten
0,84
0,86
0,87
0,76
0,82

Kll
267,3
244,6
228,8
241,7
226,8

Demikianlah data setiap jenis obyek
makanan/ minuman yang akan dihitung dan
diawasi diperoleh dari fitur-fitur yang
terdapat dalam citra obyek tersebut, serta
variabel-variabel fisik lain (tidak diperoleh
dari citra) seperti variabel 1 hingga 6 dari
data yang digunakan.
4.4 Object Counting Dengan ANN
Pendekatan
ANN
dipilih
untuk
pengenalan dan penghitungan jumlah obyek
karena bersifat adaptive serta tidak
mensyaratkan asumsi-asumsi yang ketat
(dibanding pendekatan regresi). Arsitektur
ANN yang digunakan adalah jaringan
feedforward dengan jumlah neuron pada
hidden layer sebanyak 41 sebagaimana
disajikan dalam gambar 10 berikut:

Gambar 11. Hubungan Antara Target Dan
Output Setelah Pelatihan ANN Untuk Obyek
1.
Nilai korelasi pada gambar 11 adalah
0,9999 atau R2 = 0,9998. Artinya setelah
dilatih, ANN dapat menjelaskan/mengenali
aneka formasi BLOB dari citra Obyek 1
(yang representasikan oleh input 17 variabel)
sebesar 99,98 %.
Sedangkan hubungan antara target dan
output untuk obyek 2, disajikan dalam
gambar 12 berikut:

Gambar 10. Arsitektur ANN Yang
Digunakan
Pada gambar 10, bagian input adalah
semua variabel (ada 17 variabel) selain
item. ANN dilatih agar bagian output sama
dengan item (sebagai target).
Pada tahap pelatihan,
digunakan
berturut-turut 784 dan 297 data dari aneka
formasi obyek 1 dan obyek 2. Kesesuain
output ANN terhadap target setelah pelatihan

ISBN: 979-26-0280-1

Gambar 12. Hubungan Antara Target Dan
Output Setelah Pelatihan ANN Untuk Obyek
2.
Nilai korelasi pada gambar 12 adalah
0,99957 atau R2 = 0,9991. Artinya setelah
dilatih, ANN dapat menjelaskan/mengenali
aneka formasi BLOB dari citra Obyek 2

34

Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015

(yang representasikan oleh input 17 variabel)
sebesar 99,91 %.
Pendekatan ANN yang digunakan dalam
object counting terhadap obyek-obyek
lainnya adalah sama dengan yang telah
dijabarkan seperti halnya pada obyek1 dan
obyek 2 tadi.

5. KESIMPULAN
Banyaknya jenis obyek makanan yang
ditangani maupun jumlah masing-masing
obyek
telah
dapat
diatasi
dengan
menyediakan fasilitas cropping
untuk
penetapan area suatu jenis obyek secara
dinamis.
Fitur-fitur yang terdapat dalam citra
beserta variabel kondisi saat akuisisi citra
telah digunakan sebagai input dari
pendekatan ANN dalam object counting .
Dengan menggunakan arsitektur ANN
feedforward serta 41 neuron pada hidden
layer , telah ditunjukkan bahwa output ANN
adalah relatif sama dengan target ANN
sebagaimana pada gambar 11 dan gambar 12.
Akurasi dan kehandalan CV dalam
mengawal Kantin Kejujuran memerlukan
banyak data dari obyek aneka jenis
makanan/minuman serta aneka formasi
untuk pelatihan ANN agar sistem semakin
mengenal berbagai kondisi saat melakukan
object counting.

6. DAFTAR PUSTAKA
[1] Mezei Sergiu And Adrian Sergiu
Darabant, A Computer Vision Approach
To Object Tracking And Counting,
STUDIA UNIV. BABES BOLYAI,
INFORMATICA, Volume LV, Number
3, 2010.

ISBN: 979-26-0280-1

[2] Rabi’
Abdur,
Proptotype
Sistem
Penghitung Jumlah Kendaraan Di Area
Parkir Terbuka Dengan Operasi
Morfologi Citra, Jurnal Penelitian Dan
Pengabdian Masyarakat Edisi Ilmu-ilmu
Eksakta, Vol. XXI No. 2, LPPM Unmer
Malang, 2010.
[3] Rabi’, Abdur, Proptotype Pengawalan
Kantin Kejujuran Berbasis Computer
Vision ,
Jurnal
Penelitian
Dan
Pengabdian Masyarakat Edisi Ilmu-ilmu
Eksakta, Vol XXII No. 2, LPPM Unmer
Malang, 2011.
[4] Yam Kin-Yi, Wan-Chi Siu1, Ngai-Fong
Law, Chok-Ki Chan, Effective bidirectional people flow counting for real
time
surveillance
system,
IEEE
International Conference on Consumer
Electronic (ICCE), Chiang Mai, 2011.
[5] Maggio, E, F. Smeraldi and A. Cavallaro,
Adaptive Multifeature Tracking in a
Particle Filtering Framework, IEEE
Transactions on Circuits and Systems
for Video Technology, vol. 17, No. 10,
pp. 1348-1359, October 2007.
[6] Kurnia, Rahmadi, Penjejak Target Benda
Pada Gerakan Linier Berdasarkan
Warna, Prosiding Seminar Nasional
Aplikasi Teknologi Informasi (SNATI),
Yogyakarta, 20 Juni 2009.
[7] Wirdasa, MA. Rancang Bangun Sistem
Pengawalan Kantin Kejujuran Berbasis
Computer Vision , Tugas Akhir S1
Jurusan Teknik Elektro Universitas
Merdeka
Malang,
2012,
Tidak
dipublikasikan.