Pendekteksi Gerak Melalui Kamera menggunakan OpenCV
Saat ini kebutuhan sistem monitoring di berbagai sektor meningkat dengan pesat. Semakin banyak sistem monitoring diterapkan untuk tujuan peningkatan aspek keamanan dan produktivitas. Penerapan monitoring selalu berdasarkan pada kebutuhan pengawasan secara berkala dan merekam segala aktivitas yang berlangsung di lokasi tersebut dengan harapan ketika terjadi suatu hal kritis/penting, maka dapat segera diketahui dan ditangani.
Sistem monitoring biasanya diterapkan untuk aspek keamanan sebagai contoh pada perbankan, pergudangan, perkantoran, berbagai fasilitas publik seperti bandara, stasiun, hingga digunakan pada rumah tinggal. Sedangkan penerapan sistem monitoring untuk aspek produktivitas sebagai contoh diterapkan pada sektor manufaktur atau industri di mana manajemen dapat memonitor atau memantau aktivitas produksi para pekerja / buruh, mengkontrol instrumentasi proses, instalasi permesinan, dan lain-lain. Dan masih banyak tujuan-tujuan lain yang mendasari penerapan sistem monitoring tersebut.
Oleh karena itu penggunaan kamera pada sistem pengawasan sangat dibutuhkan. Akan tetapi yang menjadi permasalahan adalah kamera yang dipasang selalu merekam meskipun tidak ada gerakan atau kejadian yang terjadi, akibatnya terjadi penggunaan memori yang sia-sia dan salah satu alternatif untuk mengatasi permasalahan ini adalah dengan merancang suatu perangkat lunak yang dapat meningkatkan efisiensi kamera, sehingga kamera hanya akan mendeteksi dan merekam apabila ada gerak atau benda yang bergerak.
COMPUTER VISION
Vision secara bahasa bisa diartikan penglihatan. Vision juga bisa diartikan sebagai suatu proses pengamatan apa yang ada pada dunia nyata melalui panca indra penglihatan manusia. Adapun computer vision adalah suatu pembelajaran menganalisa gambar dan video untuk memperoleh hasil sebagaimana yang bisa dilakukan manusia. Pada dasarnya, 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. Hasil interpretasi ini mungkin digunakan untuk pengambilan keputusan.
PENGOLAHAN CITRA DIGITAL
Secara harafiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat-alat optik, misalnya mata pada manusia, kamera pemindai (scanner) dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam.
Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring) dan sebagainya.
OPENCV (INTEL OPEN SOURCE COMPUTER VISION LIBRARY)
OpenCV merupakan singkatan dari Intel Open Source Computer Vision Library yang sekurang-kurangnya terdiri dari 300 fungsi-fungsi C, bahkan bisa lebih. Software ini gratis, dapat digunakan dalam rangka komersil maupun non komersil, tanpa harus membayar licensi ke intel. OpenCV dapat beroperasi pada komputer berbasis windows ataupun linux.
Beberapa contoh aplikasi dari OpenCV adalah pada Human-Computer Interaction (Interaksi Manusia-Komputer); Object Indentifica tion (Identifikasi Objek), Segmentation (Seg men tasi), dan Recognition (Pengenalan); Face Recognition (Pengenalan Wajah); Gesture Recognition (Pengenalan Gerak Isyarat), Motion Tracking (Penjajakan Gerakan), Ego Motion (Gerakan Ego), dan Motion Understanding (Pemahaman Gerakan); Structure From Motion (Gerakan Dari Struktur); dan Mobile Robotics (Robot-Robot Yang Bergerak).
TEKNIK BACKGROUND SUBTRACTION DAN FRAME DIFFERENCING
Yang dimaksud background adalah sejumlah piksel-piksel gambar yang diam dan tidak bergerak didepan kamera. Model background yang paling sederhana mengasumsikan bahwa seluruh kecerahan piksel background berubah-ubah secara bebas, tergantung pada distribusi normalnya. Karakteristik background dapat dihitung dengan mengakumulasi beberapa jumlah frame sehingga akan menemukan jumlah nilai-nilai piksel dalam lokasi s(x,y) dan jumlah square-square sq(x,y) yang memiliki nilai untuk setiap lokasi piksel. Sedangkan foreground adalah semua objek yang ada selain background dan biasanya foreground ini ada setelah didapatkannya background.
Background subtraction merupakan salah satu tugas penting yang pertama kali di kerjakan pada aplikasi computer vision. Output dari background subtraction biasanya adalah inputan yang akan diproses pada tingkat yang lebih lanjut lagi seperti mentracking objek yang teridentifikasi. Kualitas background subtraction umumnya tergantung pada teknik pemodelan background yang digunakan untuk mengambil background dari suatu layar kamera. Background subtraction biasanya digunakan pada teknik segmentasi objek yang dikehendaki dari suatu layar, dan sering diaplikasikan untuk sistem pengawasan.
Pendekatan ini sangat sensitif terhadap threshold, sehingga threshold dapat digunakan untuk mengatur sensifitas suatu kamera dalam menangkap gambar. Berikut adalah merupakan contoh Background Subtraction.
Sedangkan teknik frame differencing atau perbedaan frame adalah menghitung selisih antara frame yang satu dengan frame yang lainnya, dalam hal ini adalah frame sekarang dikurangi frame sebelumnya sehingga mendapatkan objek yang diinginkan.










