Perancangan Aplikasi Keamanan Pendeteksi Gerakan dengan ...
Transcript of Perancangan Aplikasi Keamanan Pendeteksi Gerakan dengan ...
1
1. Pendahuluan
Keamanan adalah keadaan bebas dari bahaya, tentu hal ini menjadi sangat penting seiring
banyaknya tindakan kejahatan dan pencurian yang terjadi dalam masyarakat, dalam hal ini
adalah Dealer Honda Abadi Motor Salatiga. Jika sebuah sistem keamanan mengalami kegagalan
maka diperlukan sebuah mekanisme yang dapat memonitor sebuah tindak kejahatan sehingga
dapat dijadikan sebagai bahan evaluasi. Teknologi deteksi gerakan menggunakan metode
perubahan piksel merupakan alternatif untuk melengkapi sistem keamanan lama dimana
memperkerjakan satpam dan dapat menghasilkan bahan evaluasi secara real time.
Sedang maraknya curanmor di kota Salatiga, dimana angka pencurian kendaraan bermotor
terutama sepeda motor sedang sering terjadi dan hal ini cukup meresahkan berbagai golongan
masyarakat. Oleh karena alasan ini makin banyak orang atau perusahaan yang ingin
meningkatkan sistem keamanan pada rumah atau perusahaan antara lain dengan menggunakan
menggunakan satpam atau hewan yang dapat menjaga rumah atau tempat kerja yang sedang
ditinggalkan atau dapat juga menggunakan teknologi modern seperti contohnya menggunakan
kamera pengawas seperti contohnya CCTV.
Dealer Honda Abadi Motor adalah salah satu dealer motor Honda yang berada di kota
Salatiga. Dimana penjualan produk mereka cukup banyak dan dealer inipun tergolong dealer
motor yang besar. Abadi Motor sendiri mempunyai kantor pusat yang berada di kota Ambarawa
dan sudah berdiri sejak tahun 2005 yang lalu, dan dealer motor yang bertempatkan di kota
Salatiga ini adalah salah satu dealer cabang yang dimiliki oleh dealer Abadi Motor Ambarawa.
Untuk menyikapi masalah kejahatan berupa pencurian sepeda motor yang sedang marak, dealer
yang masih memperkerjakankan satpam untuk menjaga keamanan dealer ini ingin meningkatkan
sistem keamanan pada dealer Honda Abadi Motor. Serta untuk menyikapi kelalaian satpam yang
sempat menyebabkan dealer ini pernah mengalami penerobosan oleh pencuri dan mengakibatkan
hilangnya satu unit motor pada dealer ini. Untuk alasan tersebut, maka dealer Honda Abadi
Motor Salatiga ingin membangun sistem keamanan yang lebih modern yaitu menggunakan
kamera pengawas.
Seiring dengan perkembangan teknologi, dibangunlah sistem keamanan berbasiskan sistem
kendali elektronika atau terotomatisasi. Sistem keamanan yang populer adalah menggunakan
kamera pengawas. Kamera pengawas yang sering digunakan adalah jenis CCTV. Namun dalam
pemasangannya membutuhkan perangkat keras tambahan yang dipasang pada komputer selain
dari kamera itu sendiri, yaitu DVR card atau TV Tuner. Disamping itu, jenis komputer yang
dibutuhkan adalah komputer dengan spesifikasi tinggi. Webcam dapat digunakan sebagai
alternatif karena harganya relatif terjangkau dan efektivitasnya sangat tergantung pada perangkat
lunak yang mengendalikannya sehingga menjadi lebih fleksibel.
2. Kajian Pustaka
Berbagai penelitian dan percobaan telah dilakukan oleh beberapa pengembang sebagai
berikut: 1) Perusahaan pengembangan perangkat lunak berbasis di Mesir bernama Link
Development dipimpin A.Kirillov. Penelitiannya menggunakan kamera web berbasis IP (Internet
Protocol) untuk ditempatkan sebagai pengawas secara real time, 2) Pengembang Guy Watson
(direktur FlashGuru LTD) menggunakan API dari produsen perangkat lunak terkenal Adobe
untuk mengontrol kamera sebagai pendeteksi gerakan [1], 3) Pengembang bernama T Amin
menggunakan algoritma perbandingan sederhana untuk mendeteksi gerakan, 4) Pengembang
2
Eric Rudolph (Microsoft) menggunakan DirectShow yang merupakan salah satu komponen
Microsoft DirectX yang terintegrasi pada sistem operasi komputer berbasis Microsoft Windows
untuk mengakses kamera web, 5) Dikembangkan kamera dengan pendeteksi gerakan
menggunakan PIR (Passive Infra Red).
Penelitian sebelumnya yang berhubungan dengan penelitian yang akan ditulis adalah
penelitian dengan judul “Penerapan Kamera Web Sebagai Pendeteksi Gerakan dengan Antar
Muka Directshow” [2], pada penelitian ini dibuat aplikasi pendeteksi gerakan menggunakan
kamera web untuk melakukan streaming tetapi tidak memberikan notifikasi ke administrator
secara realtime. Penerapan kamera web sebagai pendeteksi gerakan dalam pengembangan suatu
sistem sudah cukup banyak digunakan. Seperti pada penelitian sebelumnya yang berjudul
“Pendeteksi Gerak Berbasis Kamera Menggunakan OpenCV pada ruangan” [3]. Pada penelitian
pendeteksi gerakan berbasis kamera ini lebih efektif karena hanya merekam ketika terjadi
gerakan saja dan tidak merekam sepanjang waktu.
Setelah mengkaji beberapa penelitian tersebut, dapat ditarik keunggulan masing-masing
penelitian untuk membentuk sebuah penelitian baru dengan membuat sebuah aplikasi deteksi
gerakan dengan menggunakan webcam dimana webcam digunakan untuk melakukan monitoring
dan memberikan notifikasi ke admin secara realtime untuk mengirimkan adanya perubahan
piksel secara spesifik pada jendela atau window yang sudah disediakan. Diharapkan
pembangunan aplikasi dapat memberikan solusi metode pengamanan yang lebih efektif, cepat,
tepat serta membutuhkan biaya yang murah, sehingga dapat lebih berperan dalam meningkatkan
keamanan pada dealer Honda Abadi Motor Salatiga.
Suatu gambar yang ada di dalam komputer sesungguhnya adalah kumpulan dari ribuan
titik yang sangat kecil dan tiap-tiap titik tersebut memiliki warna tertentu. Titik-titik itulah yang
disebut piksel. Setiap piksel mempunyai satu warna dan bergabung dengan piksel-piksel lainnya
sehingga membentuk suatu pola dan menghasilkan gambar. Jumlah piksel per daerahnya disebut
dengan resolusi. Resolusi itulah yang menentukan kualitas dari gambar. Jika suatu gambar
diperbesar, maka resolusi gambar akan menjadi kecil dan gambar menjadi tidak tajam. Semakin
tinggi resolusi gambar, maka akan semakin tinggi kemampuan perbesarannya. Piksel yang
membentuk suatu gambar memiliki warna-warna tertentu. Jumlah warna yang dimiliki suatu
gambar disebut intensitas. Intensitas gambar mempunyai beberapa jenis istilah yaitu 256 warna,
high color, 16 juta warna (true color), gradasi abu-abu (grayscale), dan hitam-pitih (black and
white). Semakin banyak jumlah warna dalam suatu gambar maka akan semakin bagus. Jumlah
warna maksimum dari gambar dapat dilihat dari jenis (ekstensi) file. File gambar berekstensi .jpg
memiliki jumlah warna maksimum 16 juta warna, file gambar berekstensi .gif memiliki jumlah
warna maksimum 265 warna [4].
Pengertian deteksi gerakan secara sederhana dapat dilakukan dengan mencari beda antara
dua buah citra yang berurutan pada hasil pencitraan menggunakan kamera video digital. Ada
berbagai macam metode untuk membandingkan dua buah gambar, antara lain metode object
tracking, metode perubahan piksel, metode frame differences dan masih banyak lagi. Metode
object tracking adalah metode yang dapat digunakan untuk memprediksi perubahan pada scene
antara dua frame video atau lebih. Tracking object harus mampu mendeteksi hanya obyek yang
bergerak dan memfilter noise, pergerakan kamera yang kecil, dan gerakan-gerakan lain yang
tidak signifikan. Kemudian metode frame differences, pembandingan dilakukan dengan
melakukan komputasi dan pembandingan antara sebuah gambar dengan gambar lain.
pembandingan dilakukan terhadap nilai piksel yang dihasilkan dari proses komputasi komponen
3
warna gambar. Selanjutnya dilakukan oprasi untuk mengkomparasi antar piksel kedua gambar
tersebut. Metode yang sederhana dan prosesnya tidak terlalu berat yaitu dengan mencari nilai
perbedaan piksel tertinggi dan membandingkannya dengan suatu nilai batas. Jika nilai perbedaan
lebih tinggi dari nilai batas maka disimpulkan terdapat perbedaan pada kedua gambar tersebut.
Jika terdapat dua buah gambar, gambar satu dan gambar dua masing-masing merupakan nilai
piksel gambar acuan dan gambar yang akan dibandingkan, sehingga mendapatkan nilai
perbedaan piksel tertinggi, dan nilai batas yang telah ditetapkan, maka jika nilai batas lebih besar
dari beda piksel berarti terdapat perbedaan pada kedua gambar. Nilai batas digunakan untuk
mentoleransi nilai perbedaan yang dianggap terlalu kecil.
Deteksi keberadaan secara sederhana dapat dilakukan dengan mencari perubahan posisi
antara dua buah citra yang berurutan yang diperoleh dari hasil pencitraan dengan menggunakan
webcam. Dalam penelitian ini ada metode operasi perhitungan yang digunakan untuk mendeteksi
adanya suatu gerakan, yaitu operasi perubahan posisi piksel putih (255). Operasi perbandingan
antara dua buah citra, dimana kedua buah citra tersebut memiliki objek yang sama (latar
belakang atau background dari citra tersebut sama). Bila terdapat perubahan posisi piksel putih
(255) maka dapat disimpulkan adanya gerakan [5].
3. Metode Perancangan
Metode yang digunakan dalam perancangan ini adalah metode perancangan sistem dengan
menggunakan model Prototype. Prototype merupakan model perancangan sistem dimana
kebutuhan diubah menjadi sistem yang bekerja (Working System) yang diperbaiki secara terus
menerus sesuai dengan kebutuhan dari kerjasama antara analis dengan pengguna (user).
Gambar 1. Metode Prototyping [6]
Tahap Pertama yaitu Listen to customer dilakukan untuk mengetahui kebutuhan
pengguna. Proses pencarian kebutuhan difokuskan pada proses penggalian informasi tentang
kebutuhan sistem keamanan pada dealer Honda Abadi Motor Salatiga untuk mengetahui sifat
dari program yang akan dibuat. Adapun proses penggalian informasi dilakukan dengan cara
melakukan pengumpulan data-data motor yang akan dijadikan pusat objek yang ingin diamankan
serta melakukan wawancara kepada supervisor serta karyawan pada dealer tersebut, untuk
melakukan analisa kebutuhan yang dikembangkan berdasarkan permintaan pengguna sistem.
4
Pencarian kebutuhan tentang teknologi dilakukan dengan melakukan pencarian literatur maupun
informasi lainnya dengan menfaatkan media internet.
Tahap Kedua yaitu Build / revise mockup berupa Perancangan, dilakukan untuk
mengubah kebutuhan-kebutuhan yang telah diperoleh pada proses sebelumnya ke bentuk
rancangan antarmuka pengguna. Hasil dari tahap ini berupa tampilan yang dapat diujicobakan ke
pengguna sampai pengguna merasa cocok [6]. Prototype yang dihasilkan selanjutnya diuji dan
apabila sudah sesuai dengan kebutuhan awal, maka prototype tersebut diimplementasikan. Pada
tahap ini logika pemrograman sudah dikerjakan agar berjalan sesuai dengan rancangan
antarmuka. Program sudah langsung diimplementasikan menggunakan Visual Basic 6 sebagai
bahasa pemrograman dinamis dan menggunakan metode perubahan piksel untuk melakukan
deteksi gerakan.
Tahap Ketiga yaitu Customer test drives mockup berupa Evaluasi, dilakukan implementasi
dan proses instalasi aplikasi kepada pengguna untuk diujicobakan. Pada tahapan ini pengguna
melakukan tinjauan sebagai perbaikan selanjutnya (kembali ke proses 1). Supervisor dan
karyawan melakukan pengujian sehingga mendapatkan masukan perbaikan. Dengan melakukan
pengujian tersebut, supervisor dan karyawan dapat mengetahui apakah program berjalan dengan
baik atau tidak.
setting parameter
connect to camera
recieve email
user
keluar dari sistem
Gambar 2 Usecase Diagram Sistem
Pada Gambar 2 merupakan usecase diagram dari aplikasi pendeteksi gerakan. Pada
usecase tersebut dijelaskan bahwa user dapat melakukan beberapa kegiatan di antaranya adalah
melakukan pengaturan parameter. Setting parameter ini digunakan untuk mengatur sesensitif apa
aplikasi ini dalam mendeteksi gerakan dari sebuah obyek yang sudah ditentukan sebelumnya.
Yang selanjutnya adalah connect to camera, pada fitur ini user dapat mengkoneksikan aplikasi
ke webcam yang sudah tersedia. Yang berikutnya adalah recieve email, yaitu user dapat
5
menerima email yang berisikan notifikasi pada saat aplikasi mendeteksi adanya gerakan, dsn
yang terakhir adalah keluar dari sistem.
mulai
membuka
aplikasi
menekan tombol
"connect to camera"
mengatur
window
menekan
tombol "set"
menerima email
selesai
terjadi gerakan
menampilkan
obyek
memonitor
obyek
kirim email
ya
kamera standby
tidak
webcamsistemuser
Gambar 3 Activity Diagram Aplikasi Pendeteksi Gerakan
Gambar 3 merupakan activity diagram aplikasi pendeteksi gerakan yang berada pada
Dealer Honda Abadi Motor Salatiga. Urutan tahapannya adalah user membuka aplikasi ini
dimana kamera sudah disiapkan pada tempat yang telah ditentukan. Kemudian user memilih
tombol “connect to camera” pada aplikasi. Setelah aplikasi dijalankan maka kamera akan siap
atau pada posisi standby. Kemudian proses berikutnya adalah mengatur window dimana di
dalam window tersebut difokuskan ke obyek yang akan diamati dan memilih tombol “set”.
Setelah memilih tombol “set” ini aplikasi akan mulai memonitor obyek yang sudah diatur. Proses
monitoring ini akan berlangsung sampai nanti pengguna atau user menghentikan aplikasi ini.
Jika pada saat merekam, kamera tidak menangkap adanya pergerakan pada obyek yang telah
difokuskan sebelumnya tadi, maka kamera akan tetap merekam sampai aplikasi ini dihentikan.
Namun jika pada saat posisi merekam dan kamera mendeteksi adanya pergerakan maka kamera
akan langsung mengirimkan notifikasi ke email yang telah ditentukan sebelumnya dimana isi
email tersebut adalah pemberitahuan bahwa telah terjadi perubahan pada objek yang telah
diamati oleh webcam tersebut.
Metode yang digunakan pada proses pendeteksi gerakan adalah menggunakan metode
perubahan piksel. Deteksi keberadaan secara sederhana dapat dilakukan dengan mencari
6
perubahan posisi antara dua buah citra yang berurutan yang diperoleh dari hasil pencitraan
dengan menggunakan webcam. Dalam penelitian ini ada metode operasi perhitungan yang
digunakan untuk mendeteksi adanya suatu gerakan, yaitu operasi perubahan posisi piksel putih
(255). Operasi perbandingan antara dua buah citra, dimana kedua buah citra tersebut memiliki
objek yang sama (latar belakang/background dari citra tersebut sama). Bila terdapat perubahan
posisi piksel putih (255) maka dapat disimpulkan adanya gerakan. Kelebihan metode ini adalah
proses deteksinya lebih detail karena menggunakan perubahan piksel. Jadi, jika ada pergerakan
kecilpun akan terlihat oleh aplikasi dan pada saat itu juga aplikasi langsung mengirimkan
notifikasi ke email.
4. Implementasi dan Pengujian Sistem
Halaman ini merupakan halaman awal yang akan dilihat oleh user ketika user akan
mengakses aplikasi pada pertama kali. Dimana tampilan awal pertama kali yang akan muncul
adalah tampilan menu awal aplikasi tersebut, seperti terlihat pada Gambar 4.
Gambar 4 Tampilan Awal Aplikasi.
7
Gambar 5 Tampilan Saat Tombol “Connect to Camera” Dipilih.
Pada Gambar 5 dapat dilihat tampilan pada halaman yang akan muncul saat button
“Connect to Camera” adalah pada window kosong akan terkoneksi ke kamera web yang sudah
tersambungkan ke PC atau Laptop. Pada window ini akan ditampilkan apa yang ditangkap
kamera dan ditampilkan pada window tersebut. Setelah user memilih button “connect to
Camera” maka window ini akan menampilkan apa yang ditangkap oleh kamera tersebut. Di
dalam halaman ini dapat dilakukan pengaturan dalam besar kecil window yang akan difokuskan
pada objek yang ingin diamati. Seperti pada contoh menggunakan replika mobil ferarri merah
yang dapat dilihat pada Gambar 6.
Gambar 6 Halaman Mengatur Window Sesuai Besar Objek.
8
Pada Gambar 6 dapat dilihat tampilan pengaturan besar kecil window yang akan
difokuskan pada objek yang ingin diamati. Pada aplikasi ini telah disediakan fungsi untuk
mengatur parameter yang akan digunakan, di antaranya adalah Intens, Tolerance, Real Peek,
Limit for Email serta alamat email yang disediakan untuk pengiriman notifikasi beserta
pengaturan secara manual untuk email yang akan dikirim notifikasinya. Tampilan saat
melakukan pengaturan Intens, Tolerance, Real Peek, Limit for Email ditunjukkan pada Gambar
7.
Gambar 7 Tampilan Pengaturan Parameter Intens, Tolerance, Real Peek dan Limit for Email.
Parameter intens berfungsi untuk mengatur ketelitian dari pengenalan piksel dari objek
yang akan diamati. Semakin kecil parameter yang diisikan maka akan semakin detil pula aplikasi
akan mengenali piksel dari obyek dan begitu pula sebaliknya. Parameter tolerance berfungsi
untuk mengatur toleransi dari perubahan piksel yang telah berubah dari posisi semula. Semakin
besar parameter yang diisikan maka akan semakin rendah pula kemampuan aplikasi untuk
mentoleransi perpindahan piksel pada obyek dan begitu pula sebaliknya. Parameter real peak
berfungsi untuk mengatur pada titik mana aplikasi akan mengirimkan notifikasi ke email yang
telah diatur. Parameter limit for email berfungsi untuk mengatur seberapa banyak notifikasi
email yang akan dikirimkan. Semakin banyak parameter yang diisikan akan semakin banyak
pula email yang akan dikirimkan ke email user yang sudah diatur sebelumnya dan begitu pula
sebaliknya. Yang terakhir adalah field untuk mengisikan alamat email yang nantinya akan
dikirimkan notifikasi pada saat aplikasi mendeteksi adanya gerakan.
9
Tabel 1 tabel pengisian parameter
No Intense Tolerance Real Peak Limit For Email Hasil
1 1 6 0 30 Error
2 2 7 0 30 Error
3 3 8 0 30 Error
4 4 9 0 30 Error
5 5 10 0 30 Error
6 6 11 0 30 Error
7 7 12 0 30 Error
8 8 13 0 30 Error
9 9 14 0 30 Error
10 10 15 0 30 Error
11 11 16 0 30 Error
12 12 17 0 30 Working
13 13 18 0 30 Working
14 14 19 0 30 Working
15 15 20 0 30 Working
16 16 21 0 30 Working
17 17 22 0 30 Working
18 18 23 0 30 Working
19 19 24 0 30 not working
20 20 25 0 30 not working
21 21 26 0 30 not working
22 22 27 0 30 not working
23 23 28 0 30 not working
24 24 29 0 30 not working
25 25 30 0 30 not working
Tabel 1 merupakan tabel yang berisikan contoh-contoh pengisian parameter yang
bervariasi. Bisa dilihat pada Tabel 1 bahwa jika diisikan parameter antara 12-18 pada intense dan
17-23 pada tolerance. maka aplikasi dapat berjalan dimana aplikasi dapat mendeteksi adanya
gerakan dengan baik tanpa ada error program. Jika diisikan parameter antara 1-11 pada intense
dan 6-16 pada tolerance, maka aplikasi tidak berjalan atau error dimana aplikasi tidak mampu
menjalankan sistem. Dan jika diisikan parameter antara 19-25 pada intense dan 24-30 pada
tolerance, maka aplikasi dapat berjalan tetapi sistem tidak dapat mendeteksi adanya gerakan
dengan baik. Pada Gambar 8 adalah tampilan saat program menangkap adanya perpindahan
objek yang telah difokuskan sebelumnya.
10
Gambar 8 Aplikasi Mendeteksi Adanya Pergerakan
Gambar 9 Notifikasi Email User.
Notifikasi email yang telah dikirim oleh aplikasi dapat dilihat pada Gambar 8.
Sesaat setelah aplikasi mendeteksi adanya gerakan, maka saat itu juga aplikasi mengirimkan
notifikasi ke email. Pada Gambar 9 dapat dilihat notifikasi email yang berhasil dikirim dari
aplikasi pendeteksi gerakan menggunakan webcam. Dimana notifikasi tersebut berupa text yang
menunjukkan bahwa adanya perubahan piksel obyek dari pada saat pertama dimonitor.
11
5. Simpulan
Sesuai dengan hasil implementasi, hasil deteksi gerakan sesuai dengan parameter yang
telah diatur pada intens: 15, tolerance: 20, real peek: 0, dan limit for email: 30 dapat dihasilkan
hasil yang terbaik. Dimana aplikasi dapat mengirimkan notifikasi email dengan lancar. Dapat
disimpulkan bahwa webcam dapat dimanfaatkan sebagai pengganti kamera CCTV dimana dalam
implementasinya mudah, cepat dan relatif murah. Dengan menggunakan aplikasi ini keunggulan
yang didapat adalah tidak memerlukan kapasitas memori yang besar dalam pengaplikasiannya
dan realtime. Kelemahan yang ditemukan adalah gambar atau resolusi yang ditampilkan kurang
jelas karena hanya menggunakan kamera web (webcam) sederhana. Aplikasi ini dapat berjalan
atau kompatibel di sistem operasi windows.
Saran berdasarkan proses penelitian adalah dalam pengembangan berikutnya, notifikasi
mungkin dapat menggunakan tampilan screenshot pada objek yang dideteksi pergerakannya agar
lebih memaksimalkan alert yang akan diterima oleh user. Karena webcam tidak bergerak ke
segala arah dan hanya mengarah pada suatu objek yang akan diamati, akan lebih bagus dan
aplikatif apabila aplikasi webcam ini menggunakan motor stepper sehingga dapat mengikuti
kemana arah perpindahan objek.
6. Pustaka
[1] Watson, Guy., Webcam Motion Detection: Using the BitmapData API in Flash 8, Adobe
Developer Connection Article, 2005.
[2] Santoso Yonatan, Penerapan Kamera Web Sebagai Pendeteksi Gerakan dengan Antar Muka
Directshow, 2009, http://journal.ui.ac.id/technology/article/view.
[3] Dwi Kurniawan, 2010, Pendeteksi Gerak Berbasis Kamera Menggunakan OpenCV pada
ruangan, http://fki.ums.ac.id/komuniti/wp-content/uploads/2012/01.
[4] www.tatawarna.com. Diakses pada 15 desember 2013.
[5] Santoso, 2009, http://repository.gunadarma.ac.id/bitstream/. Diakses pada tanggal 5 Januari
2014
[6] Pressman, Roger. S,1997, Software Engineering: A Practional Approach, 4th, McGrawHill